From 3aece818910947b60c9c7e62374350fd01bff118 Mon Sep 17 00:00:00 2001 From: Andrew Pareles Date: Wed, 6 Nov 2024 23:18:45 -0800 Subject: [PATCH] move void files around --- package-lock.json | 657 +- package.json | 4 +- .../src/extension => misc}/DiffProvider.ts | 6 +- .../browser/{void/build => misc}/build.js | 0 .../{void/src/extension => misc}/extension.ts | 4 +- .../package.json => misc/oldpackage.json} | 0 .../{void/src/webviews => misc}/styles.css | 0 .../browser/{void => misc}/tailwind.config.js | 0 .../{void => sidebar}/.vscode/extensions.json | 0 .../{void => sidebar}/.vscode/launch.json | 0 .../{void => sidebar}/.vscode/settings.json | 0 .../{void => sidebar}/.vscode/tasks.json | 0 .../src/webviews => }/sidebar/Sidebar.tsx | 12 +- .../src/webviews => }/sidebar/SidebarChat.tsx | 8 +- .../webviews => }/sidebar/SidebarSettings.tsx | 2 +- .../sidebar/SidebarThreadSelector.tsx | 4 +- .../SidebarWebviewProvider.ts | 2 +- .../common => sidebar}/contextForConfig.tsx | 0 .../common => sidebar}/contextForProps.tsx | 0 .../common => sidebar}/contextForThreads.tsx | 0 .../contrib/void/browser/sidebar/index.tsx | 7 + .../sidebar/markdown/BlockCode.tsx | 0 .../sidebar/markdown/MarkdownRender.tsx | 2 +- .../src/webviews/common => util}/posthog.ts | 3 +- .../src/common => util}/sendLLMMessage.ts | 0 .../{void/src/common => util}/shared_types.ts | 0 .../src/common => util}/systemPrompts.ts | 0 .../contrib/void/browser/void/.eslintrc | 56 - .../contrib/void/browser/void/.gitignore | 5 - .../void/browser/void/.vscode-test.mjs | 5 - .../contrib/void/browser/void/.vscodeignore | 11 - .../contrib/void/browser/void/README.md | 11 - .../void/browser/void/package-lock.json | 9068 ----------------- .../void/src/extension/applyDiffLazily.ts | 181 - .../void/browser/void/src/extension/ctrlK.ts | 101 - .../extensionLib/readFileContentOfUri.ts | 14 - .../extensionLib/updateWebviewHTML.ts | 46 - .../browser/void/src/extension/findDiffs.ts | 132 - .../providers/CtrlKWebviewProvider.ts | 41 - .../browser/void/src/test/extension.test.ts | 15 - .../void/src/webviews/common/getVscodeApi.ts | 94 - .../void/src/webviews/common/mount.tsx | 66 - .../browser/void/src/webviews/ctrlk/CtrlK.tsx | 27 - .../browser/void/src/webviews/ctrlk/index.tsx | 7 - .../void/src/webviews/diffline/DiffLine.tsx | 29 - .../void/src/webviews/diffline/index.tsx | 7 - .../void/src/webviews/sidebar/index.tsx | 7 - .../contrib/void/browser/void/tsconfig.json | 31 - .../{voidViewPane.tsx => voidViewPane.ts} | 15 +- void-imports/README.txt | 1 + void-imports/build-to-be-built.ts | 3 - void-imports/compile-to-be-built.ts | 26 - void-imports/index.ts | 15 +- 53 files changed, 554 insertions(+), 10171 deletions(-) rename src/vs/workbench/contrib/void/browser/{void/src/extension => misc}/DiffProvider.ts (98%) rename src/vs/workbench/contrib/void/browser/{void/build => misc}/build.js (100%) rename src/vs/workbench/contrib/void/browser/{void/src/extension => misc}/extension.ts (98%) rename src/vs/workbench/contrib/void/browser/{void/package.json => misc/oldpackage.json} (100%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews => misc}/styles.css (100%) rename src/vs/workbench/contrib/void/browser/{void => misc}/tailwind.config.js (100%) rename src/vs/workbench/contrib/void/browser/{void => sidebar}/.vscode/extensions.json (100%) rename src/vs/workbench/contrib/void/browser/{void => sidebar}/.vscode/launch.json (100%) rename src/vs/workbench/contrib/void/browser/{void => sidebar}/.vscode/settings.json (100%) rename src/vs/workbench/contrib/void/browser/{void => sidebar}/.vscode/tasks.json (100%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews => }/sidebar/Sidebar.tsx (72%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews => }/sidebar/SidebarChat.tsx (97%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews => }/sidebar/SidebarSettings.tsx (99%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews => }/sidebar/SidebarThreadSelector.tsx (96%) rename src/vs/workbench/contrib/void/browser/{void/src/extension/providers => sidebar}/SidebarWebviewProvider.ts (92%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews/common => sidebar}/contextForConfig.tsx (100%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews/common => sidebar}/contextForProps.tsx (100%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews/common => sidebar}/contextForThreads.tsx (100%) create mode 100644 src/vs/workbench/contrib/void/browser/sidebar/index.tsx rename src/vs/workbench/contrib/void/browser/{void/src/webviews => }/sidebar/markdown/BlockCode.tsx (100%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews => }/sidebar/markdown/MarkdownRender.tsx (98%) rename src/vs/workbench/contrib/void/browser/{void/src/webviews/common => util}/posthog.ts (92%) rename src/vs/workbench/contrib/void/browser/{void/src/common => util}/sendLLMMessage.ts (100%) rename src/vs/workbench/contrib/void/browser/{void/src/common => util}/shared_types.ts (100%) rename src/vs/workbench/contrib/void/browser/{void/src/common => util}/systemPrompts.ts (100%) delete mode 100644 src/vs/workbench/contrib/void/browser/void/.eslintrc delete mode 100644 src/vs/workbench/contrib/void/browser/void/.gitignore delete mode 100644 src/vs/workbench/contrib/void/browser/void/.vscode-test.mjs delete mode 100644 src/vs/workbench/contrib/void/browser/void/.vscodeignore delete mode 100644 src/vs/workbench/contrib/void/browser/void/README.md delete mode 100644 src/vs/workbench/contrib/void/browser/void/package-lock.json delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/extension/applyDiffLazily.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/extension/ctrlK.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/extension/extensionLib/readFileContentOfUri.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/extension/extensionLib/updateWebviewHTML.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/extension/findDiffs.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/extension/providers/CtrlKWebviewProvider.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/test/extension.test.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/webviews/common/getVscodeApi.ts delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/webviews/common/mount.tsx delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/CtrlK.tsx delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/index.tsx delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/DiffLine.tsx delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/index.tsx delete mode 100644 src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/index.tsx delete mode 100644 src/vs/workbench/contrib/void/browser/void/tsconfig.json rename src/vs/workbench/contrib/void/browser/{voidViewPane.tsx => voidViewPane.ts} (87%) create mode 100644 void-imports/README.txt delete mode 100644 void-imports/build-to-be-built.ts delete mode 100644 void-imports/compile-to-be-built.ts diff --git a/package-lock.json b/package-lock.json index 16df50db..2b9a985b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -158,11 +158,11 @@ "source-map-support": "^0.3.2", "style-loader": "^3.3.2", "ts-loader": "^9.4.2", - "ts-node": "^10.9.1", "tsec": "0.2.7", "tslib": "^2.6.3", "tsup": "^8.3.5", - "typescript": "^5.7.0-dev.20240903", + "tsx": "^4.19.2", + "typescript": "^5.6.3", "util": "^0.12.4", "webpack": "^5.94.0", "webpack-cli": "^5.1.4", @@ -974,28 +974,6 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, "node_modules/@csstools/selector-specificity": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.0.1.tgz", @@ -2762,30 +2740,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", - "dev": true - }, "node_modules/@types/cacheable-request": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", @@ -4349,15 +4303,6 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/agent-base": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", @@ -4589,12 +4534,6 @@ "node": ">=14" } }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -6274,12 +6213,6 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "dev": true }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -8902,6 +8835,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-tsconfig": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.1.tgz", + "integrity": "sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, "node_modules/get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", @@ -13768,12 +13714,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, "node_modules/make-iterator": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", @@ -17729,6 +17669,16 @@ "node": ">= 0.6" } }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, "node_modules/resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", @@ -20230,58 +20180,6 @@ "code-block-writer": "^12.0.0" } }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", - "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", - "dev": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/ts-node/node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/tsec": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/tsec/-/tsec-0.2.7.tgz", @@ -20516,6 +20414,489 @@ "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==", "dev": true }, + "node_modules/tsx": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.2.tgz", + "integrity": "sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "~0.23.0", + "get-tsconfig": "^4.7.5" + }, + "bin": { + "tsx": "dist/cli.mjs" + }, + "engines": { + "node": ">=18.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + } + }, + "node_modules/tsx/node_modules/@esbuild/aix-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz", + "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz", + "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz", + "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/android-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz", + "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz", + "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/darwin-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz", + "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz", + "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/freebsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz", + "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz", + "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz", + "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz", + "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-loong64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz", + "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-mips64el": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz", + "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-ppc64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz", + "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-riscv64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz", + "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-s390x": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz", + "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/linux-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz", + "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/netbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz", + "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz", + "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/openbsd-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz", + "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/sunos-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz", + "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-arm64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz", + "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-ia32": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz", + "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/@esbuild/win32-x64": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz", + "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/tsx/node_modules/esbuild": { + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz", + "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.23.1", + "@esbuild/android-arm": "0.23.1", + "@esbuild/android-arm64": "0.23.1", + "@esbuild/android-x64": "0.23.1", + "@esbuild/darwin-arm64": "0.23.1", + "@esbuild/darwin-x64": "0.23.1", + "@esbuild/freebsd-arm64": "0.23.1", + "@esbuild/freebsd-x64": "0.23.1", + "@esbuild/linux-arm": "0.23.1", + "@esbuild/linux-arm64": "0.23.1", + "@esbuild/linux-ia32": "0.23.1", + "@esbuild/linux-loong64": "0.23.1", + "@esbuild/linux-mips64el": "0.23.1", + "@esbuild/linux-ppc64": "0.23.1", + "@esbuild/linux-riscv64": "0.23.1", + "@esbuild/linux-s390x": "0.23.1", + "@esbuild/linux-x64": "0.23.1", + "@esbuild/netbsd-x64": "0.23.1", + "@esbuild/openbsd-arm64": "0.23.1", + "@esbuild/openbsd-x64": "0.23.1", + "@esbuild/sunos-x64": "0.23.1", + "@esbuild/win32-arm64": "0.23.1", + "@esbuild/win32-ia32": "0.23.1", + "@esbuild/win32-x64": "0.23.1" + } + }, + "node_modules/tsx/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/tunnel": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", @@ -20672,10 +21053,11 @@ "dev": true }, "node_modules/typescript": { - "version": "5.7.0-dev.20240903", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.0-dev.20240903.tgz", - "integrity": "sha512-XTUc5uVwBbLlT0v3FqTx9sDN1MLQnT5mwSC3JefCrcKT6Zv+rPcQE7HLKM9IsrNiM1tiaQvamJTgVH0S+UMH2A==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -20967,12 +21349,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, "node_modules/v8-inspect-profiler": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/v8-inspect-profiler/-/v8-inspect-profiler-0.1.1.tgz", @@ -21870,15 +22246,6 @@ "node": ">= 4.0.0" } }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index bf0142cb..c8759228 100644 --- a/package.json +++ b/package.json @@ -220,11 +220,11 @@ "source-map-support": "^0.3.2", "style-loader": "^3.3.2", "ts-loader": "^9.4.2", - "ts-node": "^10.9.1", "tsec": "0.2.7", "tslib": "^2.6.3", "tsup": "^8.3.5", - "typescript": "^5.7.0-dev.20240903", + "tsx": "^4.19.2", + "typescript": "^5.6.3", "util": "^0.12.4", "webpack": "^5.94.0", "webpack-cli": "^5.1.4", diff --git a/src/vs/workbench/contrib/void/browser/void/src/extension/DiffProvider.ts b/src/vs/workbench/contrib/void/browser/misc/DiffProvider.ts similarity index 98% rename from src/vs/workbench/contrib/void/browser/void/src/extension/DiffProvider.ts rename to src/vs/workbench/contrib/void/browser/misc/DiffProvider.ts index 853a544f..032b0892 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/extension/DiffProvider.ts +++ b/src/vs/workbench/contrib/void/browser/misc/DiffProvider.ts @@ -1,11 +1,11 @@ import * as vscode from 'vscode'; -import { findDiffs } from './findDiffs'; +import { findDiffs } from './src/extension/findDiffs'; import { throttle } from 'lodash'; import { DiffArea, BaseDiff, Diff } from '../common/shared_types'; -import { readFileContentOfUri } from './extensionLib/readFileContentOfUri'; +import { readFileContentOfUri } from './src/extension/extensionLib/readFileContentOfUri'; import { AbortRef, sendLLMMessage } from '../common/sendLLMMessage'; import { writeFileWithDiffInstructions } from '../common/systemPrompts'; -import { VoidConfig } from '../webviews/common/contextForConfig'; +import { VoidConfig } from './src/webviews/common/contextForConfig'; const THROTTLE_TIME = 100 diff --git a/src/vs/workbench/contrib/void/browser/void/build/build.js b/src/vs/workbench/contrib/void/browser/misc/build.js similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/build/build.js rename to src/vs/workbench/contrib/void/browser/misc/build.js diff --git a/src/vs/workbench/contrib/void/browser/void/src/extension/extension.ts b/src/vs/workbench/contrib/void/browser/misc/extension.ts similarity index 98% rename from src/vs/workbench/contrib/void/browser/void/src/extension/extension.ts rename to src/vs/workbench/contrib/void/browser/misc/extension.ts index ef975b67..fb8b46f9 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/extension/extension.ts +++ b/src/vs/workbench/contrib/void/browser/misc/extension.ts @@ -4,9 +4,9 @@ import { v4 as uuidv4 } from 'uuid' import { AbortRef } from '../common/sendLLMMessage'; import { MessageToSidebar, MessageFromSidebar, DiffArea, ChatThreads } from '../common/shared_types'; import { getVoidConfigFromPartial } from '../webviews/common/contextForConfig'; -import { DiffProvider } from './DiffProvider'; +import { DiffProvider } from '../../DiffProvider'; import { readFileContentOfUri } from './extensionLib/readFileContentOfUri'; -import { SidebarWebviewProvider } from './providers/SidebarWebviewProvider'; +import { SidebarWebviewProvider } from '../sidebar/SidebarWebviewProvider'; import { CtrlKWebviewProvider } from './providers/CtrlKWebviewProvider'; const roundRangeToLines = (selection: vscode.Selection) => { diff --git a/src/vs/workbench/contrib/void/browser/void/package.json b/src/vs/workbench/contrib/void/browser/misc/oldpackage.json similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/package.json rename to src/vs/workbench/contrib/void/browser/misc/oldpackage.json diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/styles.css b/src/vs/workbench/contrib/void/browser/misc/styles.css similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/styles.css rename to src/vs/workbench/contrib/void/browser/misc/styles.css diff --git a/src/vs/workbench/contrib/void/browser/void/tailwind.config.js b/src/vs/workbench/contrib/void/browser/misc/tailwind.config.js similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/tailwind.config.js rename to src/vs/workbench/contrib/void/browser/misc/tailwind.config.js diff --git a/src/vs/workbench/contrib/void/browser/void/.vscode/extensions.json b/src/vs/workbench/contrib/void/browser/sidebar/.vscode/extensions.json similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/.vscode/extensions.json rename to src/vs/workbench/contrib/void/browser/sidebar/.vscode/extensions.json diff --git a/src/vs/workbench/contrib/void/browser/void/.vscode/launch.json b/src/vs/workbench/contrib/void/browser/sidebar/.vscode/launch.json similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/.vscode/launch.json rename to src/vs/workbench/contrib/void/browser/sidebar/.vscode/launch.json diff --git a/src/vs/workbench/contrib/void/browser/void/.vscode/settings.json b/src/vs/workbench/contrib/void/browser/sidebar/.vscode/settings.json similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/.vscode/settings.json rename to src/vs/workbench/contrib/void/browser/sidebar/.vscode/settings.json diff --git a/src/vs/workbench/contrib/void/browser/void/.vscode/tasks.json b/src/vs/workbench/contrib/void/browser/sidebar/.vscode/tasks.json similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/.vscode/tasks.json rename to src/vs/workbench/contrib/void/browser/sidebar/.vscode/tasks.json diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/Sidebar.tsx b/src/vs/workbench/contrib/void/browser/sidebar/Sidebar.tsx similarity index 72% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/Sidebar.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/Sidebar.tsx index 70bf1c3b..b04548de 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/Sidebar.tsx +++ b/src/vs/workbench/contrib/void/browser/sidebar/Sidebar.tsx @@ -1,11 +1,7 @@ -import React, { useState, useEffect, useRef, useCallback, FormEvent } from "react" -import { CodeSelection, ChatMessage, MessageToSidebar } from "../../common/shared_types" -import { awaitVSCodeResponse, getVSCodeAPI, onMessageFromVSCode, useOnVSCodeMessage } from "../common/getVscodeApi" - -import { SidebarThreadSelector } from "./SidebarThreadSelector"; -import { SidebarChat } from "./SidebarChat"; -import { SidebarSettings } from "./SidebarSettings"; -import { identifyUser } from "../common/posthog"; +import React, { useState, useRef } from '../void-imports/react.js' +import { SidebarThreadSelector } from './SidebarThreadSelector.js'; +import { SidebarChat } from './SidebarChat.js'; +import { SidebarSettings } from './SidebarSettings.js'; const Sidebar = () => { diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarChat.tsx b/src/vs/workbench/contrib/void/browser/sidebar/SidebarChat.tsx similarity index 97% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarChat.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/SidebarChat.tsx index 81591fa4..746b51e6 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarChat.tsx +++ b/src/vs/workbench/contrib/void/browser/sidebar/SidebarChat.tsx @@ -6,11 +6,11 @@ import MarkdownRender from "./markdown/MarkdownRender"; import BlockCode from "./markdown/BlockCode"; import { File, ChatMessage, CodeSelection } from "../../common/shared_types"; import * as vscode from 'vscode' -import { awaitVSCodeResponse, getVSCodeAPI, onMessageFromVSCode, useOnVSCodeMessage } from "../common/getVscodeApi"; -import { useThreads } from "../common/contextForThreads"; +import { awaitVSCodeResponse, getVSCodeAPI, onMessageFromVSCode, useOnVSCodeMessage } from "../util/getVscodeApi"; +import { useThreads } from "../util/contextForThreads"; import { sendLLMMessage } from "../../common/sendLLMMessage"; -import { useVoidConfig } from "../common/contextForConfig"; -import { captureEvent } from "../common/posthog"; +import { useVoidConfig } from "../util/contextForConfig"; +import { captureEvent } from "../util/posthog"; import { generateDiffInstructions } from "../../common/systemPrompts"; diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarSettings.tsx b/src/vs/workbench/contrib/void/browser/sidebar/SidebarSettings.tsx similarity index 99% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarSettings.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/SidebarSettings.tsx index f144fd11..48ff3eab 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarSettings.tsx +++ b/src/vs/workbench/contrib/void/browser/sidebar/SidebarSettings.tsx @@ -1,5 +1,5 @@ import React, { useState } from "react"; -import { configFields, useVoidConfig, VoidConfigField } from "../common/contextForConfig"; +import { configFields, useVoidConfig, VoidConfigField } from "../util/contextForConfig"; const SettingOfFieldAndParam = ({ field, param }: { field: VoidConfigField, param: string }) => { diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarThreadSelector.tsx b/src/vs/workbench/contrib/void/browser/sidebar/SidebarThreadSelector.tsx similarity index 96% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarThreadSelector.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/SidebarThreadSelector.tsx index 3d785d1b..aa09456c 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/SidebarThreadSelector.tsx +++ b/src/vs/workbench/contrib/void/browser/sidebar/SidebarThreadSelector.tsx @@ -1,5 +1,5 @@ import React from "react"; -import { ThreadsProvider, useThreads } from "../common/contextForThreads"; +import { ThreadsProvider, useThreads } from "../util/contextForThreads"; const truncate = (s: string) => { @@ -76,4 +76,4 @@ export const SidebarThreadSelector = ({ onClose }: { onClose: () => void }) => { ) -} \ No newline at end of file +} diff --git a/src/vs/workbench/contrib/void/browser/void/src/extension/providers/SidebarWebviewProvider.ts b/src/vs/workbench/contrib/void/browser/sidebar/SidebarWebviewProvider.ts similarity index 92% rename from src/vs/workbench/contrib/void/browser/void/src/extension/providers/SidebarWebviewProvider.ts rename to src/vs/workbench/contrib/void/browser/sidebar/SidebarWebviewProvider.ts index 0ca1d895..08191944 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/extension/providers/SidebarWebviewProvider.ts +++ b/src/vs/workbench/contrib/void/browser/sidebar/SidebarWebviewProvider.ts @@ -1,7 +1,7 @@ // renders the code from `src/sidebar` import * as vscode from 'vscode'; -import { updateWebviewHTML as _updateWebviewHTML } from '../extensionLib/updateWebviewHTML'; +import { updateWebviewHTML as _updateWebviewHTML } from './src/extension/extensionLib/updateWebviewHTML'; export class SidebarWebviewProvider implements vscode.WebviewViewProvider { public static readonly viewId = 'void.viewnumberone'; diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/contextForConfig.tsx b/src/vs/workbench/contrib/void/browser/sidebar/contextForConfig.tsx similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/common/contextForConfig.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/contextForConfig.tsx diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/contextForProps.tsx b/src/vs/workbench/contrib/void/browser/sidebar/contextForProps.tsx similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/common/contextForProps.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/contextForProps.tsx diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/contextForThreads.tsx b/src/vs/workbench/contrib/void/browser/sidebar/contextForThreads.tsx similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/common/contextForThreads.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/contextForThreads.tsx diff --git a/src/vs/workbench/contrib/void/browser/sidebar/index.tsx b/src/vs/workbench/contrib/void/browser/sidebar/index.tsx new file mode 100644 index 00000000..966a0a77 --- /dev/null +++ b/src/vs/workbench/contrib/void/browser/sidebar/index.tsx @@ -0,0 +1,7 @@ +// import React from "react" +// import Sidebar from "./Sidebar" +// import { mount } from "../util/mount" + +// this is the entry point that mounts the sidebar +mount() + diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/markdown/BlockCode.tsx b/src/vs/workbench/contrib/void/browser/sidebar/markdown/BlockCode.tsx similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/markdown/BlockCode.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/markdown/BlockCode.tsx diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/markdown/MarkdownRender.tsx b/src/vs/workbench/contrib/void/browser/sidebar/markdown/MarkdownRender.tsx similarity index 98% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/markdown/MarkdownRender.tsx rename to src/vs/workbench/contrib/void/browser/sidebar/markdown/MarkdownRender.tsx index cbdb82d1..91480087 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/markdown/MarkdownRender.tsx +++ b/src/vs/workbench/contrib/void/browser/sidebar/markdown/MarkdownRender.tsx @@ -1,7 +1,7 @@ import React, { JSX, useCallback, useEffect, useState } from "react" import { marked, MarkedToken, Token, TokensList } from "marked" import BlockCode from "./BlockCode" -import { getVSCodeAPI } from "../../common/getVscodeApi" +import { getVSCodeAPI } from "../../util/getVscodeApi" enum CopyButtonState { diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/posthog.ts b/src/vs/workbench/contrib/void/browser/util/posthog.ts similarity index 92% rename from src/vs/workbench/contrib/void/browser/void/src/webviews/common/posthog.ts rename to src/vs/workbench/contrib/void/browser/util/posthog.ts index 72e95ccc..cccf2010 100644 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/posthog.ts +++ b/src/vs/workbench/contrib/void/browser/util/posthog.ts @@ -1,5 +1,4 @@ -import posthog from 'posthog-js' - +import posthog from '../void-imports/posthog-js.js' export const identifyUser = (id: string) => { posthog.identify(id) diff --git a/src/vs/workbench/contrib/void/browser/void/src/common/sendLLMMessage.ts b/src/vs/workbench/contrib/void/browser/util/sendLLMMessage.ts similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/common/sendLLMMessage.ts rename to src/vs/workbench/contrib/void/browser/util/sendLLMMessage.ts diff --git a/src/vs/workbench/contrib/void/browser/void/src/common/shared_types.ts b/src/vs/workbench/contrib/void/browser/util/shared_types.ts similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/common/shared_types.ts rename to src/vs/workbench/contrib/void/browser/util/shared_types.ts diff --git a/src/vs/workbench/contrib/void/browser/void/src/common/systemPrompts.ts b/src/vs/workbench/contrib/void/browser/util/systemPrompts.ts similarity index 100% rename from src/vs/workbench/contrib/void/browser/void/src/common/systemPrompts.ts rename to src/vs/workbench/contrib/void/browser/util/systemPrompts.ts diff --git a/src/vs/workbench/contrib/void/browser/void/.eslintrc b/src/vs/workbench/contrib/void/browser/void/.eslintrc deleted file mode 100644 index f47a9afd..00000000 --- a/src/vs/workbench/contrib/void/browser/void/.eslintrc +++ /dev/null @@ -1,56 +0,0 @@ -{ - "root": true, - "parser": "@typescript-eslint/parser", - "parserOptions": { - "ecmaVersion": 6, - "sourceType": "module", - "ecmaFeatures": { - "jsx": true - } - }, - "plugins": [ - "@typescript-eslint", - "react", - "react-hooks" - ], - "extends": [ - "eslint:recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended" - ], - "rules": { - "@typescript-eslint/naming-convention": [ - "warn", - { - "selector": "import", - "format": [ - "camelCase", - "PascalCase" - ] - } - ], - "curly": "off", - "eqeqeq": "warn", - "no-empty": "off", - "no-throw-literal": "warn", - "semi": "off", - "no-unused-vars": "off", - "react-hooks/exhaustive-deps": "warn" - }, - "ignorePatterns": [ - "out", - "dist", - "**/*.d.ts" - ], - "settings": { - "react": { - "version": "detect" - } - }, - "env": { - "browser": true, // enable browser globals linting (window, document, console, etc) - "es6": true, // enable ES6 linting - "node": true, // enable Node linting (things like Buffer which is used in file reading, etc) - "mocha": true // enable Mocha linting - } -} \ No newline at end of file diff --git a/src/vs/workbench/contrib/void/browser/void/.gitignore b/src/vs/workbench/contrib/void/browser/void/.gitignore deleted file mode 100644 index 0b60dfa1..00000000 --- a/src/vs/workbench/contrib/void/browser/void/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -out -dist -node_modules -.vscode-test/ -*.vsix diff --git a/src/vs/workbench/contrib/void/browser/void/.vscode-test.mjs b/src/vs/workbench/contrib/void/browser/void/.vscode-test.mjs deleted file mode 100644 index b62ba25f..00000000 --- a/src/vs/workbench/contrib/void/browser/void/.vscode-test.mjs +++ /dev/null @@ -1,5 +0,0 @@ -import { defineConfig } from '@vscode/test-cli'; - -export default defineConfig({ - files: 'out/test/**/*.test.js', -}); diff --git a/src/vs/workbench/contrib/void/browser/void/.vscodeignore b/src/vs/workbench/contrib/void/browser/void/.vscodeignore deleted file mode 100644 index 72aa0fe2..00000000 --- a/src/vs/workbench/contrib/void/browser/void/.vscodeignore +++ /dev/null @@ -1,11 +0,0 @@ -.vscode/** -.vscode-test/** -src/** -.gitignore -.yarnrc -vsc-extension-quickstart.md -**/tsconfig.json -**/.eslintrc.json -**/*.map -**/*.ts -**/.vscode-test.* diff --git a/src/vs/workbench/contrib/void/browser/void/README.md b/src/vs/workbench/contrib/void/browser/void/README.md deleted file mode 100644 index d455ba30..00000000 --- a/src/vs/workbench/contrib/void/browser/void/README.md +++ /dev/null @@ -1,11 +0,0 @@ -Please see the `CONTRIBUTING.md` for information on how to contribute :)! - - -Here's an overview on how the extension works: - -- The extension mounts in `extension.ts`. - -- The Sidebar's HTML (everything in `sidebar/`) is built in React, and it's rendered by mounting a ` - - `; - - webview.html = webviewHTML - - webview.options = { - enableScripts: true, - localResourceRoots: [extensionUri] - }; -} diff --git a/src/vs/workbench/contrib/void/browser/void/src/extension/findDiffs.ts b/src/vs/workbench/contrib/void/browser/void/src/extension/findDiffs.ts deleted file mode 100644 index 02d073a7..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/extension/findDiffs.ts +++ /dev/null @@ -1,132 +0,0 @@ - -import { Range } from 'vscode'; -import { diffLines, Change } from 'diff'; -import { BaseDiff } from '../common/shared_types'; - - - -// class Range { -// range: any; -// constructor(startLine, startCol, endLine, endCol) { -// const range = { -// startLine, -// startCol, -// endLine, -// endCol, -// }; -// this.range = range; -// } -// } - - - -// Andrew diff algo: -export type SuggestedEdit = { - // start/end of current file - newRange: Range; - - // start/end of original file - originalRange: Range; - type: 'insertion' | 'deletion' | 'edit', - originalContent: string, // original content (originalfile[originalStart...originalEnd]) - newContent: string, -} - -export function findDiffs(oldStr: string, newStr: string) { - // an ordered list of every original line, line added to the new file, and line removed from the old file (order is unambiguous, think about it) - const lineByLineChanges: Change[] = diffLines(oldStr, newStr); - lineByLineChanges.push({ value: '' }) // add a dummy so we flush any streaks we haven't yet at the very end (!line.added && !line.removed) - - let oldFileLineNum: number = 0; - let newFileLineNum: number = 0; - - let streakStartInNewFile: number | undefined = undefined - let streakStartInOldFile: number | undefined = undefined - - let oldStrLines = oldStr.split('\n') - let newStrLines = newStr.split('\n') - - const replacements: BaseDiff[] = [] - for (let line of lineByLineChanges) { - - // no change on this line - if (!line.added && !line.removed) { - - // do nothing - - // if we were on a streak of +s and -s, end it - if (streakStartInNewFile !== undefined) { - let type: 'edit' | 'insertion' | 'deletion' = 'edit' - - let startLine = streakStartInNewFile - let endLine = newFileLineNum - 1 // don't include current line, the edit was up to this line but not including it - let startCol = 0 - let endCol = Number.MAX_SAFE_INTEGER - - let originalStartLine = streakStartInOldFile! - let originalEndLine = oldFileLineNum - 1 // don't include current line, the edit was up to this line but not including it - let originalStartCol = 0 - let originalEndCol = Number.MAX_SAFE_INTEGER - - let newContent = newStrLines.slice(startLine, endLine + 1).join('\n') - let originalContent = oldStrLines.slice(originalStartLine, originalEndLine + 1).join('\n') - - // if the range is empty, mark it as a deletion / insertion (both won't be true at once) - // DELETION - if (endLine === startLine - 1) { - type = 'deletion' - endLine = startLine - startCol = 0 - endCol = 0 - newContent += '\n' - } - - // INSERTION - else if (originalEndLine === originalStartLine - 1) { - type = 'insertion' - originalEndLine = originalStartLine - originalStartCol = 0 - originalEndCol = 0 - } - - const replacement: BaseDiff = { - type, - range: new Range(startLine, startCol, endLine, endCol), - code: newContent, - originalRange: new Range(originalStartLine, originalStartCol, originalEndLine, originalEndCol), - originalCode: originalContent, - } - - replacements.push(replacement) - - streakStartInNewFile = undefined - streakStartInOldFile = undefined - } - oldFileLineNum += line.count ?? 0; - newFileLineNum += line.count ?? 0; - } - - // line was removed from old file - else if (line.removed) { - // if we weren't on a streak, start one on this current line num - if (streakStartInNewFile === undefined) { - streakStartInNewFile = newFileLineNum - streakStartInOldFile = oldFileLineNum - } - oldFileLineNum += line.count ?? 0 // we processed the line so add 1 - } - - // line was added to new file - else if (line.added) { - // if we weren't on a streak, start one on this current line num - if (streakStartInNewFile === undefined) { - streakStartInNewFile = newFileLineNum - streakStartInOldFile = oldFileLineNum - } - newFileLineNum += line.count ?? 0; // we processed the line so add 1 - } - } // end for - - console.debug('Replacements', replacements) - return replacements -} diff --git a/src/vs/workbench/contrib/void/browser/void/src/extension/providers/CtrlKWebviewProvider.ts b/src/vs/workbench/contrib/void/browser/void/src/extension/providers/CtrlKWebviewProvider.ts deleted file mode 100644 index a8e2c881..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/extension/providers/CtrlKWebviewProvider.ts +++ /dev/null @@ -1,41 +0,0 @@ -// renders the code from `src/sidebar` - -import * as vscode from 'vscode'; -import { updateWebviewHTML as _updateWebviewHTML, updateWebviewHTML } from '../extensionLib/updateWebviewHTML'; - - -export class CtrlKWebviewProvider { - - private readonly _extensionUri: vscode.Uri - - private _idPool = 0 - - - - constructor(context: vscode.ExtensionContext) { - this._extensionUri = context.extensionUri - } - - onPressCtrlK() { - - // // TODO if currently selecting a ctrl k element, just focus it and do nothing - - - // const inset = vscode.window.createWebviewTextEditorInset(editor, line, height); - - - // const newCtrlKId = this._idPool++ - // updateWebviewHTML(inset.webview, this._extensionUri, { jsOutLocation: 'dist/webviews/ctrlk/index.js', cssOutLocation: 'dist/webviews/styles.css' }, - // { id: newCtrlKId } - // ) - - // ctrlKWebviewProvider.webview.then(webview => webview.postMessage({ type: 'ctrl+k', selection: { selectionStr, selectionRange, filePath } } satisfies MessageToSidebar)); - - - } - - onDisposeCtrlK() { - - } - -} diff --git a/src/vs/workbench/contrib/void/browser/void/src/test/extension.test.ts b/src/vs/workbench/contrib/void/browser/void/src/test/extension.test.ts deleted file mode 100644 index 4ca0ab41..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/test/extension.test.ts +++ /dev/null @@ -1,15 +0,0 @@ -import * as assert from 'assert'; - -// You can import and use all API from the 'vscode' module -// as well as import your extension to test it -import * as vscode from 'vscode'; -// import * as myExtension from '../../extension'; - -suite('Extension Test Suite', () => { - vscode.window.showInformationMessage('Start all tests.'); - - test('Sample test', () => { - assert.strictEqual(-1, [1, 2, 3].indexOf(5)); - assert.strictEqual(-1, [1, 2, 3].indexOf(0)); - }); -}); diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/getVscodeApi.ts b/src/vs/workbench/contrib/void/browser/void/src/webviews/common/getVscodeApi.ts deleted file mode 100644 index cf9d53ea..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/getVscodeApi.ts +++ /dev/null @@ -1,94 +0,0 @@ -import { useEffect } from "react"; -import { MessageFromSidebar, MessageToSidebar, } from "../../common/shared_types"; -import { v4 as uuidv4 } from 'uuid'; - - -type Command = MessageToSidebar['type'] - -// messageType -> res[] -const onetimeCallbacks: { [C in Command]: ((res: any) => void)[] } = { - "ctrl+l": [], - "ctrl+k": [], - "files": [], - "partialVoidConfig": [], - "startNewThread": [], - "allThreads": [], - "toggleThreadSelector": [], - "toggleSettings": [], - "deviceId": [], -} - -// messageType -> id -> res -const callbacks: { [C in Command]: { [id: string]: ((res: any) => void) } } = { - "ctrl+l": {}, - "ctrl+k": {}, - "files": {}, - "partialVoidConfig": {}, - "startNewThread": {}, - "allThreads": {}, - "toggleThreadSelector": {}, - "toggleSettings": {}, - "deviceId": {} -} - - -// use this function to await responses -export const awaitVSCodeResponse = (c: C) => { - let result: Promise = new Promise((res, rej) => { - onetimeCallbacks[c].push(res) - }) - return result -} - - -// use this function to add a listener to a certain type of message -export const useOnVSCodeMessage = (messageType: C, fn: (e: MessageToSidebar & { type: C }) => void) => { - useEffect(() => { - const mType = messageType - const callbackId: string = uuidv4(); - // @ts-ignore - callbacks[mType][callbackId] = fn; - return () => { delete callbacks[mType][callbackId] } - }, [messageType, fn]) -} - - - -// this function gets called whenever sidebar receives a message - it should only mount once -export const onMessageFromVSCode = (m: MessageToSidebar) => { - // resolve all promises for this message type - for (let res of onetimeCallbacks[m.type]) { - res(m) - onetimeCallbacks[m.type].splice(0) // clear the array - } - // call the listener for this message type - for (let res of Object.values(callbacks[m.type])) { - res(m) - } -} - - - -type AcquireVsCodeApiType = () => { - postMessage(message: MessageFromSidebar): void; - // setState(state: any): void; // getState and setState are made obsolete by us using { retainContextWhenHidden: true } - // getState(): any; -}; - -// VS Code exposes the function acquireVsCodeApi() to us, this variable makes sure it only gets called once -let vsCodeApi: ReturnType | undefined; - -export function getVSCodeAPI(): ReturnType { - if (vsCodeApi) - return vsCodeApi; - - try { - // @ts-expect-error - // eslint-disable-next-line no-undef - vsCodeApi = acquireVsCodeApi(); - return vsCodeApi!; - } catch (error) { - console.error('Failed to acquire VS Code API:', error); - throw new Error('This script must be run in a VS Code webview context'); - } -} diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/mount.tsx b/src/vs/workbench/contrib/void/browser/void/src/webviews/common/mount.tsx deleted file mode 100644 index a07b46b7..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/common/mount.tsx +++ /dev/null @@ -1,66 +0,0 @@ -import React, { useEffect } from "react"; -import * as ReactDOM from "react-dom/client" -import { MessageToSidebar } from "../../common/shared_types"; -import { getVSCodeAPI, awaitVSCodeResponse, onMessageFromVSCode } from "./getVscodeApi"; -import { initPosthog, identifyUser } from "./posthog"; -import { ThreadsProvider } from "./contextForThreads"; -import { ConfigProvider } from "./contextForConfig"; -import { PropsProvider } from "./contextForProps"; - -const ListenersAndTracking = () => { - // initialize posthog - useEffect(() => { - initPosthog() - }, []) - - // when we get the deviceid, identify the user - useEffect(() => { - getVSCodeAPI().postMessage({ type: 'getDeviceId' }); - awaitVSCodeResponse('deviceId').then((m => { - identifyUser(m.deviceId) - })) - }, []) - - // Receive messages from the VSCode extension - useEffect(() => { - const listener = (event: MessageEvent) => { - const m = event.data as MessageToSidebar; - onMessageFromVSCode(m) - } - window.addEventListener('message', listener); - return () => window.removeEventListener('message', listener) - }, []) - - return null -} - - - - -export const mount = (children: React.ReactNode) => { - - if (typeof document === "undefined") { - console.error("index.tsx error: document was undefined") - return - } - - // mount the sidebar on the id="root" element - const rootElement = document.getElementById("root")! - // console.log("Void root Element:", rootElement) - - const content = (<> - - - - - - {children} - - - - ) - - const root = ReactDOM.createRoot(rootElement) - root.render(content); - -} diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/CtrlK.tsx b/src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/CtrlK.tsx deleted file mode 100644 index ac167005..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/CtrlK.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import React, { useState } from 'react'; -import { useOnVSCodeMessage } from '../common/getVscodeApi'; - - -export const CtrlK = () => { - - const [x, sx] = useState('abc') - - useOnVSCodeMessage('ctrl+k', () => { - console.log('Ctrl+K pressed') - sx('Pressed ctrl+k') - }) - - // const inset = vscode.window.createWebviewTextEditorInset(editor, 10, 10, {}) - // inset.webview.html = ` - // - // Hello World! - // - // `; - - return <> -
- {x} -
- -}; - diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/index.tsx b/src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/index.tsx deleted file mode 100644 index 9141b713..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/ctrlk/index.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import React from "react" -import { mount } from "../common/mount" -import { CtrlK } from "./CtrlK" - -// this is the entry point that mounts ctrlk -mount() - diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/DiffLine.tsx b/src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/DiffLine.tsx deleted file mode 100644 index 6fbe8b6c..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/DiffLine.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import React, { useState } from 'react'; -import { useOnVSCodeMessage } from '../common/getVscodeApi'; -import { useVoidProps } from '../common/contextForProps'; - - -type props = { - text: string -} - -export const DiffLine = () => { - - const props = useVoidProps() - - console.log('props!', props) - - if (!props) { - return null - } - - // eslint-disable-next-line react/prop-types - const text = props.text - - return <> -
- {text} -
- -}; - diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/index.tsx b/src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/index.tsx deleted file mode 100644 index dc9a59b9..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/diffline/index.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import React from "react" -import { mount } from "../common/mount" -import { DiffLine } from "./DiffLine" - -// this is the entry point that mounts diffline -mount() - diff --git a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/index.tsx b/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/index.tsx deleted file mode 100644 index 775de304..00000000 --- a/src/vs/workbench/contrib/void/browser/void/src/webviews/sidebar/index.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import React from "react" -import Sidebar from "./Sidebar" -import { mount } from "../common/mount" - -// this is the entry point that mounts the sidebar -mount() - diff --git a/src/vs/workbench/contrib/void/browser/void/tsconfig.json b/src/vs/workbench/contrib/void/browser/void/tsconfig.json deleted file mode 100644 index 0eac21ec..00000000 --- a/src/vs/workbench/contrib/void/browser/void/tsconfig.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "include": [ - "src/**/*", - "../../src/vscode-dts/vscode.d.ts", - ], - "exclude": [ - "node_modules" - ], - "compilerOptions": { - "jsx": "react", - "module": "Node16", - "target": "ES6", - "outDir": "out", - "types": [ - "node", - "mocha", - ], - "lib": [ - "dom", - "es6", - "dom.iterable", - ], - "sourceMap": true, - "rootDir": "src", - "strict": true, /* enable all strict type-checking options */ - /* Additional Checks */ - // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ - // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ - // "noUnusedParameters": true, /* Report errors on unused parameters. */ - } -} diff --git a/src/vs/workbench/contrib/void/browser/voidViewPane.tsx b/src/vs/workbench/contrib/void/browser/voidViewPane.ts similarity index 87% rename from src/vs/workbench/contrib/void/browser/voidViewPane.tsx rename to src/vs/workbench/contrib/void/browser/voidViewPane.ts index f1ffaf98..1bbf86e1 100644 --- a/src/vs/workbench/contrib/void/browser/voidViewPane.tsx +++ b/src/vs/workbench/contrib/void/browser/voidViewPane.ts @@ -1,5 +1,6 @@ +import * as dom from '../../../../base/browser/dom.js'; import { ViewPane } from '../../../browser/parts/views/viewPane.js'; @@ -15,8 +16,8 @@ import { ViewPane } from '../../../browser/parts/views/viewPane.js'; // import { IViewDescriptorService } from 'vs/workbench/common/views'; // import { IHoverService } from 'vs/platform/hover/browser/hover'; -import React from './void-imports/react.js' -import { render } from './void-imports/react-dom.js' +// import { useState } from './void-imports/react.js'; +// const x = useState(); export class VoidViewPane extends ViewPane { @@ -41,14 +42,10 @@ export class VoidViewPane extends ViewPane { protected override renderBody(parent: HTMLElement): void { super.renderBody(parent); + const container = dom.append(parent, dom.$('.search-view')); + container.textContent = 'Hello Void!'; - const x = <> - - - - - - render() + console.log('Void container', container); } diff --git a/void-imports/README.txt b/void-imports/README.txt new file mode 100644 index 00000000..818e920f --- /dev/null +++ b/void-imports/README.txt @@ -0,0 +1 @@ +Use the command 'tsx' to run the main file here \ No newline at end of file diff --git a/void-imports/build-to-be-built.ts b/void-imports/build-to-be-built.ts deleted file mode 100644 index dc1b25a4..00000000 --- a/void-imports/build-to-be-built.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as path from 'path' -import * as fs from 'fs' - diff --git a/void-imports/compile-to-be-built.ts b/void-imports/compile-to-be-built.ts deleted file mode 100644 index 7f1eaf61..00000000 --- a/void-imports/compile-to-be-built.ts +++ /dev/null @@ -1,26 +0,0 @@ -import * as esbuild from 'esbuild' -import * as path from 'path' - -// import tsup from 'tsup' // Void added tsup as a dependency -// import * as path from 'path' - - -// export const compileFiles = async (imports: string[], src_folder: string, outDir: string) => { -// const fileEntries = imports.map((importName) => path.join(src_folder, `${importName}.ts`)) -// await tsup.build({ -// entry: fileEntries, -// format: ['cjs'], -// sourcemap: false, -// bundle: true, -// clean: true, -// // minify: true, // no need to minify since it all gets bundled later -// outDir: path.join(outDir), -// dts: false, -// noExternal: [/.*/], // This bundles everything -// platform: 'browser', // Important for browser compatibility -// target: 'es2020', -// banner: { -// js: '/* eslint-disable */' -// } -// }) -// } diff --git a/void-imports/index.ts b/void-imports/index.ts index 60251842..b8f97c95 100755 --- a/void-imports/index.ts +++ b/void-imports/index.ts @@ -1,14 +1,13 @@ import * as fs from 'fs' import * as path from 'path' -import tsup from 'tsup' // Void added tsup as a dependency +import * as tsup from 'tsup' - -const buildFiles = (imports, to_be_built_folder) => { - // create a file with name importName that imports importName and immediately re-exports it +const buildFiles = (imports: string[], to_be_built_folder: string) => { for (const importName of imports) { const content = `\ -export * from '${importName}' -` +export * from '${importName}'; +`; + const dir = path.dirname(importName); const file = path.basename(importName); @@ -23,8 +22,7 @@ export * from '${importName}' - -const compileFiles = async (imports, to_be_built_folder, outDir) => { +const compileFiles = async (imports: string[], to_be_built_folder: string, outDir: string) => { const fileEntries = imports.map((importName) => path.join(to_be_built_folder, `${importName}.ts`)) await tsup.build({ entry: fileEntries, @@ -38,6 +36,7 @@ const compileFiles = async (imports, to_be_built_folder, outDir) => { noExternal: [/.*/], // This bundles everything platform: 'browser', // Important for browser compatibility target: 'es2020', + outExtension: () => ({ js: '.js' }) }) }