diff --git a/core/package.json b/core/package.json index 01c2cc3a93..564696910f 100644 --- a/core/package.json +++ b/core/package.json @@ -40,15 +40,21 @@ "build": "rollup -c rollup.config.ts" }, "devDependencies": { + "@npmcli/arborist": "^9.0.0", "@rollup/plugin-replace": "^5.0.5", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/node": "^22.10.0", "@types/pacote": "^11.1.8", + "@types/request": "^2.48.12", + "electron": "33.2.1", "eslint": "8.57.0", "eslint-plugin-jest": "^27.9.0", "jest": "^29.7.0", "jest-junit": "^16.0.0", "jest-runner": "^29.7.0", + "pacote": "^21.0.0", + "request": "^2.88.2", + "request-progress": "^3.0.0", "rimraf": "^3.0.2", "rollup": "^2.38.5", "rollup-plugin-commonjs": "^9.1.8", diff --git a/core/rollup.config.ts b/core/rollup.config.ts index 1d96df3582..32e2d570f9 100644 --- a/core/rollup.config.ts +++ b/core/rollup.config.ts @@ -23,7 +23,10 @@ export default [ // Allow json resolution json(), // Compile TypeScript files - typescript({ useTsconfigDeclarationDir: true}), + typescript({ + useTsconfigDeclarationDir: true, + exclude: ['**/*.test.ts', 'src/node/**'], + }), // Allow bundling cjs modules (unlike webpack, rollup doesn't understand cjs) // commonjs(), // Allow node_modules resolution, so you can use 'external' to control @@ -44,7 +47,9 @@ export default [ }, { input: `src/node/index.ts`, - output: [{ file: 'dist/node/index.cjs.js', format: 'cjs', sourcemap: true }], + output: [ + { file: 'dist/node/index.cjs.js', format: 'cjs', sourcemap: true }, + ], // Indicate here external modules you don't wanna include in your bundle (i.e.: 'lodash') external: [ 'fs/promises', @@ -70,7 +75,10 @@ export default [ // Allow json resolution json(), // Compile TypeScript files - typescript({ useTsconfigDeclarationDir: true}), + typescript({ + useTsconfigDeclarationDir: true, + exclude: ['**/*.test.ts', 'src/browser/**'], + }), // Allow bundling cjs modules (unlike webpack, rollup doesn't understand cjs) commonjs(), // Allow node_modules resolution, so you can use 'external' to control @@ -82,4 +90,4 @@ export default [ sourceMaps(), ], }, -] \ No newline at end of file +] diff --git a/core/src/node/api/processors/app.test.ts b/core/src/node/api/processors/app.test.ts index f09c6cb6b3..f0e45af741 100644 --- a/core/src/node/api/processors/app.test.ts +++ b/core/src/node/api/processors/app.test.ts @@ -4,16 +4,6 @@ jest.mock('../../helper', () => ({ })) import { App } from './app' -it('should call stopServer', () => { - const app = new App() - const stopServerMock = jest.fn().mockResolvedValue('Server stopped') - jest.mock('@janhq/server', () => ({ - stopServer: stopServerMock, - })) - app.stopServer() - expect(stopServerMock).toHaveBeenCalled() -}) - it('should correctly retrieve basename', () => { const app = new App() const result = app.baseName('/path/to/file.txt') @@ -23,7 +13,8 @@ it('should correctly retrieve basename', () => { it('should correctly identify subdirectories', () => { const app = new App() const basePath = process.platform === 'win32' ? 'C:\\path\\to' : '/path/to' - const subPath = process.platform === 'win32' ? 'C:\\path\\to\\subdir' : '/path/to/subdir' + const subPath = + process.platform === 'win32' ? 'C:\\path\\to\\subdir' : '/path/to/subdir' const result = app.isSubdirectory(basePath, subPath) expect(result).toBe(true) }) @@ -31,7 +22,8 @@ it('should correctly identify subdirectories', () => { it('should correctly join multiple paths', () => { const app = new App() const result = app.joinPath(['path', 'to', 'file']) - const expectedPath = process.platform === 'win32' ? 'path\\to\\file' : 'path/to/file' + const expectedPath = + process.platform === 'win32' ? 'path\\to\\file' : 'path/to/file' expect(result).toBe(expectedPath) }) @@ -52,5 +44,7 @@ it('should retrieve the directory name from a file path (Unix/Windows)', async ( it('should retrieve the directory name when using file protocol', async () => { const app = new App() const path = 'file:/models/file.txt' - expect(await app.dirName(path)).toBe(process.platform === 'win32' ? 'app\\models' : 'app/models') + expect(await app.dirName(path)).toBe( + process.platform === 'win32' ? 'app\\models' : 'app/models' + ) }) diff --git a/core/tsconfig.json b/core/tsconfig.json index cdfaedbbff..2ca2391461 100644 --- a/core/tsconfig.json +++ b/core/tsconfig.json @@ -13,7 +13,8 @@ "declarationDir": "dist/types", "outDir": "dist/lib", "importHelpers": true, + "types": ["jest", "node"] }, "include": ["src"], - "exclude": ["**/*.test.ts"] -} \ No newline at end of file + "exclude": ["*.test.ts"] +} diff --git a/extensions/yarn.lock b/extensions/yarn.lock index 7b5d2988ad..52ff278e54 100644 --- a/extensions/yarn.lock +++ b/extensions/yarn.lock @@ -606,151 +606,151 @@ __metadata: "@janhq/core@file:../../core::locator=%40janhq%2Fassistant-extension%40workspace%3Aassistant-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Fassistant-extension%40workspace%3Aassistant-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Fassistant-extension%40workspace%3Aassistant-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Fconversational-extension%40workspace%3Aconversational-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Fconversational-extension%40workspace%3Aconversational-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Fconversational-extension%40workspace%3Aconversational-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-anthropic-extension%40workspace%3Ainference-anthropic-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-anthropic-extension%40workspace%3Ainference-anthropic-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-anthropic-extension%40workspace%3Ainference-anthropic-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-cohere-extension%40workspace%3Ainference-cohere-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-cohere-extension%40workspace%3Ainference-cohere-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-cohere-extension%40workspace%3Ainference-cohere-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-cortex-extension%40workspace%3Ainference-cortex-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-cortex-extension%40workspace%3Ainference-cortex-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-cortex-extension%40workspace%3Ainference-cortex-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-groq-extension%40workspace%3Ainference-groq-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-groq-extension%40workspace%3Ainference-groq-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-groq-extension%40workspace%3Ainference-groq-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-martian-extension%40workspace%3Ainference-martian-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-martian-extension%40workspace%3Ainference-martian-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-martian-extension%40workspace%3Ainference-martian-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-mistral-extension%40workspace%3Ainference-mistral-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-mistral-extension%40workspace%3Ainference-mistral-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-mistral-extension%40workspace%3Ainference-mistral-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-nvidia-extension%40workspace%3Ainference-nvidia-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-nvidia-extension%40workspace%3Ainference-nvidia-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-nvidia-extension%40workspace%3Ainference-nvidia-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-openai-extension%40workspace%3Ainference-openai-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-openai-extension%40workspace%3Ainference-openai-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-openai-extension%40workspace%3Ainference-openai-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-openrouter-extension%40workspace%3Ainference-openrouter-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-openrouter-extension%40workspace%3Ainference-openrouter-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-openrouter-extension%40workspace%3Ainference-openrouter-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Finference-triton-trt-llm-extension%40workspace%3Ainference-triton-trtllm-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Finference-triton-trt-llm-extension%40workspace%3Ainference-triton-trtllm-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Finference-triton-trt-llm-extension%40workspace%3Ainference-triton-trtllm-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Fmodel-extension%40workspace%3Amodel-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Fmodel-extension%40workspace%3Amodel-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Fmodel-extension%40workspace%3Amodel-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Fmonitoring-extension%40workspace%3Amonitoring-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Fmonitoring-extension%40workspace%3Amonitoring-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Fmonitoring-extension%40workspace%3Amonitoring-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard "@janhq/core@file:../../core::locator=%40janhq%2Ftensorrt-llm-extension%40workspace%3Atensorrt-llm-extension": version: 0.1.10 - resolution: "@janhq/core@file:../../core#../../core::hash=439325&locator=%40janhq%2Ftensorrt-llm-extension%40workspace%3Atensorrt-llm-extension" + resolution: "@janhq/core@file:../../core#../../core::hash=c9eb84&locator=%40janhq%2Ftensorrt-llm-extension%40workspace%3Atensorrt-llm-extension" dependencies: rxjs: "npm:^7.8.1" ulidx: "npm:^2.3.0" - checksum: 10c0/5814fccb8dd7a90788caad0b03bf14eed9efac06fa26061449b30fa2db37b9f3265de5aff6a24d0da8788f6dde15b11eae338c026b2b5c9073695b565524a200 + checksum: 10c0/60b6477bcd5ec8dc1db6b520dc09c2fe37e06a48e84e4b89693f9a02d2de29dc9315d1d42d8456ab93d914f5911460782dabe229993fb2ac234f992049c8887b languageName: node linkType: hard diff --git a/joi/package.json b/joi/package.json index 1d83a08a18..f54df1a257 100644 --- a/joi/package.json +++ b/joi/package.json @@ -1,8 +1,7 @@ { "name": "@janhq/joi", "version": "0.0.0", - "main": "dist/cjs/index.js", - "module": "dist/esm/index.js", + "main": "dist/esm/index.js", "types": "dist/index.d.ts", "description": "A collection of UI component", "files": [ @@ -55,11 +54,14 @@ "@testing-library/user-event": "^14.5.2", "@types/jest": "^29.5.12", "@types/react": "^18.3.12", + "@types/react-dom": "^19", "class-variance-authority": "^0.7.0", "jest-environment-jsdom": "^29.7.0", "jest-transform-css": "^6.0.1", "prettier": "^3.0.3", "prettier-plugin-tailwindcss": "^0.5.6", + "react": "^19.0.0", + "react-dom": "^19.0.0", "rimraf": "^6.0.1", "rollup": "4.12.0", "rollup-plugin-bundle-size": "1.0.3", diff --git a/joi/rollup.config.mjs b/joi/rollup.config.mjs index 6840ffaf59..e372bd1c88 100644 --- a/joi/rollup.config.mjs +++ b/joi/rollup.config.mjs @@ -23,13 +23,6 @@ export default [ output: [ { file: packageJson.main, - format: 'cjs', - sourcemap: false, - exports: 'named', - name: packageJson.name, - }, - { - file: packageJson.module, format: 'es', exports: 'named', sourcemap: false, @@ -56,7 +49,13 @@ export default [ tsconfig: './tsconfig.json', typescript: typescriptEngine, sourceMap: false, - exclude: ['docs', 'dist', 'node_modules/**'], + exclude: [ + 'docs', + 'dist', + 'node_modules/**', + '**/*.test.ts', + '**/*.test.tsx', + ], }), terser(), sass(), @@ -78,4 +77,4 @@ export default [ bundleSize(), ], }, -] \ No newline at end of file +] diff --git a/joi/tsconfig.json b/joi/tsconfig.json index 25e2ee66fb..4aed01c501 100644 --- a/joi/tsconfig.json +++ b/joi/tsconfig.json @@ -13,5 +13,5 @@ "esModuleInterop": true }, "include": ["src/**/*"], - "exclude": ["node_modules"] + "exclude": ["node_modules", "*.test.ts"] } diff --git a/web/containers/CopyInstruction/index.test.tsx b/web/containers/CopyInstruction/index.test.tsx index 2f00e4e37c..957decec74 100644 --- a/web/containers/CopyInstruction/index.test.tsx +++ b/web/containers/CopyInstruction/index.test.tsx @@ -6,6 +6,7 @@ import CopyOverInstruction from './index' // Mock the `useAtom` hook from jotai jest.mock('jotai', () => ({ useAtom: jest.fn(), + atom: jest.fn(), })) describe('CopyOverInstruction', () => { diff --git a/web/containers/CopyInstruction/index.tsx b/web/containers/CopyInstruction/index.tsx index 227e0b240d..4ce00507d9 100644 --- a/web/containers/CopyInstruction/index.tsx +++ b/web/containers/CopyInstruction/index.tsx @@ -2,14 +2,8 @@ import { ChangeEvent, useCallback } from 'react' import { Switch } from '@janhq/joi' import { useAtom } from 'jotai' -import { atomWithStorage } from 'jotai/utils' -const COPY_OVER_INSTRUCTION_ENABLED = 'copy_over_instruction_enabled' - -export const copyOverInstructionEnabledAtom = atomWithStorage( - COPY_OVER_INSTRUCTION_ENABLED, - false -) +import { copyOverInstructionEnabledAtom } from '@/helpers/atoms/App.atom' const CopyOverInstruction: React.FC = () => { const [copyOverInstructionEnabled, setCopyOverInstructionEnabled] = useAtom( diff --git a/web/containers/Layout/BottomPanel/SystemMonitor/SystemMonitor.test.tsx b/web/containers/Layout/BottomPanel/SystemMonitor/SystemMonitor.test.tsx index dce55b5957..2eba5edbb1 100644 --- a/web/containers/Layout/BottomPanel/SystemMonitor/SystemMonitor.test.tsx +++ b/web/containers/Layout/BottomPanel/SystemMonitor/SystemMonitor.test.tsx @@ -1,3 +1,6 @@ +/** + * @jest-environment jsdom + */ import '@testing-library/jest-dom' import React from 'react' import { render, screen, waitFor } from '@testing-library/react' diff --git a/web/helpers/atoms/App.atom.ts b/web/helpers/atoms/App.atom.ts index bd1e4f7aae..7321fd9b41 100644 --- a/web/helpers/atoms/App.atom.ts +++ b/web/helpers/atoms/App.atom.ts @@ -23,3 +23,10 @@ export const showRightPanelAtom = atomWithStorage( export const showSystemMonitorPanelAtom = atom(false) export const appDownloadProgressAtom = atom(-1) export const updateVersionErrorAtom = atom(undefined) + +const COPY_OVER_INSTRUCTION_ENABLED = 'copy_over_instruction_enabled' + +export const copyOverInstructionEnabledAtom = atomWithStorage( + COPY_OVER_INSTRUCTION_ENABLED, + false +) diff --git a/web/hooks/useCreateNewThread.ts b/web/hooks/useCreateNewThread.ts index c4c77d0a4f..1463fa8a4d 100644 --- a/web/hooks/useCreateNewThread.ts +++ b/web/hooks/useCreateNewThread.ts @@ -14,7 +14,6 @@ import { atom, useAtom, useAtomValue, useSetAtom } from 'jotai' import { useDebouncedCallback } from 'use-debounce' -import { copyOverInstructionEnabledAtom } from '@/containers/CopyInstruction' import { fileUploadAtom } from '@/containers/Providers/Jotai' import { toaster } from '@/containers/Toast' @@ -27,6 +26,7 @@ import useRecommendedModel from './useRecommendedModel' import useSetActiveThread from './useSetActiveThread' import { extensionManager } from '@/extension' +import { copyOverInstructionEnabledAtom } from '@/helpers/atoms/App.atom' import { experimentalFeatureEnabledAtom } from '@/helpers/atoms/AppConfig.atom' import { activeAssistantAtom } from '@/helpers/atoms/Assistant.atom' diff --git a/web/hooks/useDeleteThread.test.ts b/web/hooks/useDeleteThread.test.ts index 50b0c7511b..eb15d8df91 100644 --- a/web/hooks/useDeleteThread.test.ts +++ b/web/hooks/useDeleteThread.test.ts @@ -1,3 +1,7 @@ +/** + * @jest-environment jsdom + */ + import { renderHook, act } from '@testing-library/react' import { useAtom, useAtomValue, useSetAtom } from 'jotai' import useDeleteThread from './useDeleteThread' diff --git a/web/jest.config.js b/web/jest.config.js index 27e8d0bda3..96bfb2356d 100644 --- a/web/jest.config.js +++ b/web/jest.config.js @@ -18,6 +18,9 @@ const config = { 'rehype-katex': '/mock/empty-mock.tsx', 'rehype-raw': '/mock/empty-mock.tsx', 'remark-math': '/mock/empty-mock.tsx', + '^react$': '/node_modules/react', + '^react/jsx-runtime$': '/node_modules/react/jsx-runtime', + '^react-dom$': '/node_modules/react-dom', }, // Add more setup options before each test is run // setupFilesAfterEnv: ['/jest.setup.ts'], diff --git a/web/package.json b/web/package.json index 8ff54eb2b8..421cf76c6f 100644 --- a/web/package.json +++ b/web/package.json @@ -60,7 +60,10 @@ }, "devDependencies": { "@next/eslint-plugin-next": "^14.0.1", + "@testing-library/dom": "^10.4.0", + "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^16.0.1", + "@testing-library/user-event": "^14.5.2", "@types/jest": "^29.5.12", "@types/lodash": "^4.14.200", "@types/node": "20.8.10", diff --git a/yarn.lock b/yarn.lock index 0257f4ec78..cae1f6eefb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1602,15 +1602,21 @@ __metadata: version: 0.0.0-use.local resolution: "@janhq/core@workspace:core" dependencies: + "@npmcli/arborist": "npm:^9.0.0" "@rollup/plugin-replace": "npm:^5.0.5" - "@types/jest": "npm:^29.5.12" + "@types/jest": "npm:^29.5.14" "@types/node": "npm:^22.10.0" "@types/pacote": "npm:^11.1.8" + "@types/request": "npm:^2.48.12" + electron: "npm:33.2.1" eslint: "npm:8.57.0" eslint-plugin-jest: "npm:^27.9.0" jest: "npm:^29.7.0" jest-junit: "npm:^16.0.0" jest-runner: "npm:^29.7.0" + pacote: "npm:^21.0.0" + request: "npm:^2.88.2" + request-progress: "npm:^3.0.0" rimraf: "npm:^3.0.2" rollup: "npm:^2.38.5" rollup-plugin-commonjs: "npm:^9.1.8" @@ -1653,6 +1659,7 @@ __metadata: "@testing-library/user-event": "npm:^14.5.2" "@types/jest": "npm:^29.5.12" "@types/react": "npm:^18.3.12" + "@types/react-dom": "npm:^19" autoprefixer: "npm:10.4.16" class-variance-authority: "npm:^0.7.0" jest: "npm:^29.7.0" @@ -1660,6 +1667,8 @@ __metadata: jest-transform-css: "npm:^6.0.1" prettier: "npm:^3.0.3" prettier-plugin-tailwindcss: "npm:^0.5.6" + react: "npm:^19.0.0" + react-dom: "npm:^19.0.0" rimraf: "npm:^6.0.1" rollup: "npm:4.12.0" rollup-plugin-bundle-size: "npm:1.0.3" @@ -1727,7 +1736,10 @@ __metadata: "@next/eslint-plugin-next": "npm:^14.0.1" "@radix-ui/react-icons": "npm:^1.3.2" "@tanstack/react-virtual": "npm:^3.10.9" + "@testing-library/dom": "npm:^10.4.0" + "@testing-library/jest-dom": "npm:^6.6.3" "@testing-library/react": "npm:^16.0.1" + "@testing-library/user-event": "npm:^14.5.2" "@types/jest": "npm:^29.5.12" "@types/lodash": "npm:^4.14.200" "@types/node": "npm:20.8.10" @@ -2814,6 +2826,50 @@ __metadata: languageName: node linkType: hard +"@npmcli/arborist@npm:^9.0.0": + version: 9.0.0 + resolution: "@npmcli/arborist@npm:9.0.0" + dependencies: + "@isaacs/string-locale-compare": "npm:^1.1.0" + "@npmcli/fs": "npm:^4.0.0" + "@npmcli/installed-package-contents": "npm:^3.0.0" + "@npmcli/map-workspaces": "npm:^4.0.1" + "@npmcli/metavuln-calculator": "npm:^9.0.0" + "@npmcli/name-from-folder": "npm:^3.0.0" + "@npmcli/node-gyp": "npm:^4.0.0" + "@npmcli/package-json": "npm:^6.0.1" + "@npmcli/query": "npm:^4.0.0" + "@npmcli/redact": "npm:^3.0.0" + "@npmcli/run-script": "npm:^9.0.1" + bin-links: "npm:^5.0.0" + cacache: "npm:^19.0.1" + common-ancestor-path: "npm:^1.0.1" + hosted-git-info: "npm:^8.0.0" + json-stringify-nice: "npm:^1.1.4" + lru-cache: "npm:^10.2.2" + minimatch: "npm:^9.0.4" + nopt: "npm:^8.0.0" + npm-install-checks: "npm:^7.1.0" + npm-package-arg: "npm:^12.0.0" + npm-pick-manifest: "npm:^10.0.0" + npm-registry-fetch: "npm:^18.0.1" + pacote: "npm:^21.0.0" + parse-conflict-json: "npm:^4.0.0" + proc-log: "npm:^5.0.0" + proggy: "npm:^3.0.0" + promise-all-reject-late: "npm:^1.0.0" + promise-call-limit: "npm:^3.0.1" + read-package-json-fast: "npm:^4.0.0" + semver: "npm:^7.3.7" + ssri: "npm:^12.0.0" + treeverse: "npm:^3.0.0" + walk-up-path: "npm:^4.0.0" + bin: + arborist: bin/index.js + checksum: 10c0/7b92bce447b81de647f601537e257c5f05789efff393d8115e7db81b900bc5f60ccd73b2807eb674cd9fd69d192c08e9f9a7ef25d27bb976dbfd6f9861f896fd + languageName: node + linkType: hard + "@npmcli/fs@npm:^3.1.0, @npmcli/fs@npm:^3.1.1": version: 3.1.1 resolution: "@npmcli/fs@npm:3.1.1" @@ -2849,6 +2905,23 @@ __metadata: languageName: node linkType: hard +"@npmcli/git@npm:^6.0.0": + version: 6.0.1 + resolution: "@npmcli/git@npm:6.0.1" + dependencies: + "@npmcli/promise-spawn": "npm:^8.0.0" + ini: "npm:^5.0.0" + lru-cache: "npm:^10.0.1" + npm-pick-manifest: "npm:^10.0.0" + proc-log: "npm:^5.0.0" + promise-inflight: "npm:^1.0.1" + promise-retry: "npm:^2.0.1" + semver: "npm:^7.3.5" + which: "npm:^5.0.0" + checksum: 10c0/00ab508fd860b4b9001d9a16a847c2544f0450efc1225cd85c18ddba3de9f6d328719ab28088e21ec445f585b8b79d0da1fb28afd3f64f3e7c86e1b5dad3a5a8 + languageName: node + linkType: hard + "@npmcli/installed-package-contents@npm:^2.0.1, @npmcli/installed-package-contents@npm:^2.1.0": version: 2.1.0 resolution: "@npmcli/installed-package-contents@npm:2.1.0" @@ -2861,6 +2934,18 @@ __metadata: languageName: node linkType: hard +"@npmcli/installed-package-contents@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/installed-package-contents@npm:3.0.0" + dependencies: + npm-bundled: "npm:^4.0.0" + npm-normalize-package-bin: "npm:^4.0.0" + bin: + installed-package-contents: bin/index.js + checksum: 10c0/8bb361251cd13b91ae2d04bfcc59b52ffb8cd475d074259c143b3c29a0c4c0ae90d76cfb2cab00ff61cc76bd0c38591b530ce1bdbbc8a61d60ddc6c9ecbf169b + languageName: node + linkType: hard + "@npmcli/map-workspaces@npm:^3.0.2": version: 3.0.6 resolution: "@npmcli/map-workspaces@npm:3.0.6" @@ -2873,6 +2958,18 @@ __metadata: languageName: node linkType: hard +"@npmcli/map-workspaces@npm:^4.0.1": + version: 4.0.2 + resolution: "@npmcli/map-workspaces@npm:4.0.2" + dependencies: + "@npmcli/name-from-folder": "npm:^3.0.0" + "@npmcli/package-json": "npm:^6.0.0" + glob: "npm:^10.2.2" + minimatch: "npm:^9.0.0" + checksum: 10c0/26af5e5271c52d0986228583218fa04fcea2e0e1052f0c50f5c7941bbfb7be487cc98c2e6732f0a3f515f6d9228d7dc04414f0471f40a33b748e2b4cbb350b86 + languageName: node + linkType: hard + "@npmcli/metavuln-calculator@npm:^7.1.1": version: 7.1.1 resolution: "@npmcli/metavuln-calculator@npm:7.1.1" @@ -2886,6 +2983,19 @@ __metadata: languageName: node linkType: hard +"@npmcli/metavuln-calculator@npm:^9.0.0": + version: 9.0.0 + resolution: "@npmcli/metavuln-calculator@npm:9.0.0" + dependencies: + cacache: "npm:^19.0.0" + json-parse-even-better-errors: "npm:^4.0.0" + pacote: "npm:^21.0.0" + proc-log: "npm:^5.0.0" + semver: "npm:^7.3.5" + checksum: 10c0/6ff58d73ea97bfb32e62ce3c3131a79db0d594f7920006ac86352562ac792d4f697610b7c2a6699de3b6cc7b82734f852ad8db60d9d0cdc0d3b9bdb8af5e436e + languageName: node + linkType: hard + "@npmcli/name-from-folder@npm:^2.0.0": version: 2.0.0 resolution: "@npmcli/name-from-folder@npm:2.0.0" @@ -2893,6 +3003,13 @@ __metadata: languageName: node linkType: hard +"@npmcli/name-from-folder@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/name-from-folder@npm:3.0.0" + checksum: 10c0/d6a508c5b4920fb28c752718b906b36fc2374873eba804668afdac8b3c322e8b97a5f1a74f3448d847c615a10828446821d90caf7cdf603d424a9f40f3a733df + languageName: node + linkType: hard + "@npmcli/node-gyp@npm:^3.0.0": version: 3.0.0 resolution: "@npmcli/node-gyp@npm:3.0.0" @@ -2900,6 +3017,13 @@ __metadata: languageName: node linkType: hard +"@npmcli/node-gyp@npm:^4.0.0": + version: 4.0.0 + resolution: "@npmcli/node-gyp@npm:4.0.0" + checksum: 10c0/58422c2ce0693f519135dd32b5c5bcbb441823f08f9294d5ec19d9a22925ba1a5ec04a1b96f606f2ab09a5f5db56e704f6e201a485198ce9d11fb6b2705e6e79 + languageName: node + linkType: hard + "@npmcli/package-json@npm:^5.0.0, @npmcli/package-json@npm:^5.1.0": version: 5.2.1 resolution: "@npmcli/package-json@npm:5.2.1" @@ -2915,6 +3039,21 @@ __metadata: languageName: node linkType: hard +"@npmcli/package-json@npm:^6.0.0, @npmcli/package-json@npm:^6.0.1": + version: 6.1.0 + resolution: "@npmcli/package-json@npm:6.1.0" + dependencies: + "@npmcli/git": "npm:^6.0.0" + glob: "npm:^10.2.2" + hosted-git-info: "npm:^8.0.0" + json-parse-even-better-errors: "npm:^4.0.0" + normalize-package-data: "npm:^7.0.0" + proc-log: "npm:^5.0.0" + semver: "npm:^7.5.3" + checksum: 10c0/95cc97f2382084e71a33d2739f0b1e659e32a8449d134d4264ecc2b5ada548069122d95887fe692373e2703b7a296a17e7296a4ce955dfa80c6ce3e00b5fab53 + languageName: node + linkType: hard + "@npmcli/promise-spawn@npm:^7.0.0": version: 7.0.2 resolution: "@npmcli/promise-spawn@npm:7.0.2" @@ -2924,6 +3063,15 @@ __metadata: languageName: node linkType: hard +"@npmcli/promise-spawn@npm:^8.0.0": + version: 8.0.2 + resolution: "@npmcli/promise-spawn@npm:8.0.2" + dependencies: + which: "npm:^5.0.0" + checksum: 10c0/fe987dece7b843d9353d4d38982336ab3beabc2dd3c135862a4ba2921aae55b0d334891fe44c6cbbee20626259e54478bf498ad8d380c14c53732b489ae14f40 + languageName: node + linkType: hard + "@npmcli/query@npm:^3.1.0": version: 3.1.0 resolution: "@npmcli/query@npm:3.1.0" @@ -2933,6 +3081,15 @@ __metadata: languageName: node linkType: hard +"@npmcli/query@npm:^4.0.0": + version: 4.0.0 + resolution: "@npmcli/query@npm:4.0.0" + dependencies: + postcss-selector-parser: "npm:^6.1.2" + checksum: 10c0/e4022e7b13e1bbe0b76e0402630244543faf97aa35a10498bba09ca5dbc765786d7666f0b94ecce1588a4c420aca9933cfce0e90f2b3142c1dbec8cc50bca1bc + languageName: node + linkType: hard + "@npmcli/redact@npm:^1.1.0": version: 1.1.0 resolution: "@npmcli/redact@npm:1.1.0" @@ -2947,6 +3104,13 @@ __metadata: languageName: node linkType: hard +"@npmcli/redact@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/redact@npm:3.0.0" + checksum: 10c0/34823f0d6a3301b310921b9f849f3c9814339bb9cde9555ddd1d51167c51e8b08ca40160eeb86b54041779805502e51251e0fbe0702fb7ab10173901e5d1d28c + languageName: node + linkType: hard + "@npmcli/run-script@npm:^7.0.0": version: 7.0.4 resolution: "@npmcli/run-script@npm:7.0.4" @@ -2974,6 +3138,20 @@ __metadata: languageName: node linkType: hard +"@npmcli/run-script@npm:^9.0.0, @npmcli/run-script@npm:^9.0.1": + version: 9.0.2 + resolution: "@npmcli/run-script@npm:9.0.2" + dependencies: + "@npmcli/node-gyp": "npm:^4.0.0" + "@npmcli/package-json": "npm:^6.0.0" + "@npmcli/promise-spawn": "npm:^8.0.0" + node-gyp: "npm:^11.0.0" + proc-log: "npm:^5.0.0" + which: "npm:^5.0.0" + checksum: 10c0/d2e7763c45a07bad064ecb1ab53fb797a6cb1d125bf3e95bfd164e4886e8539e4714afd04bcf4f13570e8a4b1297a040fa7ecc44732276e11d42ca8244c70662 + languageName: node + linkType: hard + "@parcel/watcher-android-arm64@npm:2.5.0": version: 2.5.0 resolution: "@parcel/watcher-android-arm64@npm:2.5.0" @@ -4059,6 +4237,15 @@ __metadata: languageName: node linkType: hard +"@sigstore/bundle@npm:^3.0.0": + version: 3.0.0 + resolution: "@sigstore/bundle@npm:3.0.0" + dependencies: + "@sigstore/protobuf-specs": "npm:^0.3.2" + checksum: 10c0/9a077d390970b1de5f60f7d870f856b26073d8775d4ffe827db4c0195d25e0eadcc0854f6ee76a92be070b289a3386bf0cf02ab30df100c7cf029d01312d7417 + languageName: node + linkType: hard + "@sigstore/core@npm:^1.0.0, @sigstore/core@npm:^1.1.0": version: 1.1.0 resolution: "@sigstore/core@npm:1.1.0" @@ -4066,6 +4253,13 @@ __metadata: languageName: node linkType: hard +"@sigstore/core@npm:^2.0.0": + version: 2.0.0 + resolution: "@sigstore/core@npm:2.0.0" + checksum: 10c0/bb7e668aedcda68312d2ff7c986fd0ba29057ca4dfbaef516c997b0799cd8858b2fc8017a7946fd2e43f237920adbcaa7455097a0a02909ed86cad9f98d592d4 + languageName: node + linkType: hard + "@sigstore/protobuf-specs@npm:^0.3.2": version: 0.3.2 resolution: "@sigstore/protobuf-specs@npm:0.3.2" @@ -4087,6 +4281,20 @@ __metadata: languageName: node linkType: hard +"@sigstore/sign@npm:^3.0.0": + version: 3.0.0 + resolution: "@sigstore/sign@npm:3.0.0" + dependencies: + "@sigstore/bundle": "npm:^3.0.0" + "@sigstore/core": "npm:^2.0.0" + "@sigstore/protobuf-specs": "npm:^0.3.2" + make-fetch-happen: "npm:^14.0.1" + proc-log: "npm:^5.0.0" + promise-retry: "npm:^2.0.1" + checksum: 10c0/0d82d84de9dc522389c0eece113f9ead7ea49155daf231ee7477b9c6affc095254e9351fbbfc6dd97d01bae6e42edb6078f2f4d6b194cd08ce5775ce70cfbe44 + languageName: node + linkType: hard + "@sigstore/tuf@npm:^2.3.4": version: 2.3.4 resolution: "@sigstore/tuf@npm:2.3.4" @@ -4097,6 +4305,16 @@ __metadata: languageName: node linkType: hard +"@sigstore/tuf@npm:^3.0.0": + version: 3.0.0 + resolution: "@sigstore/tuf@npm:3.0.0" + dependencies: + "@sigstore/protobuf-specs": "npm:^0.3.2" + tuf-js: "npm:^3.0.1" + checksum: 10c0/1e0a1e69f1e2763bb3dd007211412bdab0e66926d4fb16a0b9c38a7b30edc3e8b7a541f82c9c77d24862398b5fe6312d478982237cac81b59dc8e0cea665813c + languageName: node + linkType: hard + "@sigstore/verify@npm:^1.2.1": version: 1.2.1 resolution: "@sigstore/verify@npm:1.2.1" @@ -4108,6 +4326,17 @@ __metadata: languageName: node linkType: hard +"@sigstore/verify@npm:^2.0.0": + version: 2.0.0 + resolution: "@sigstore/verify@npm:2.0.0" + dependencies: + "@sigstore/bundle": "npm:^3.0.0" + "@sigstore/core": "npm:^2.0.0" + "@sigstore/protobuf-specs": "npm:^0.3.2" + checksum: 10c0/9964d8577dcd7d0bbfb62de0a93f1d7e24a011640940d868fc0112ba776e238ccef7b8d4e1870257fb1bcf28d7bf4cc437ee5919353620da21a95355daceb00b + languageName: node + linkType: hard + "@sinclair/typebox@npm:^0.27.8": version: 0.27.8 resolution: "@sinclair/typebox@npm:0.27.8" @@ -4781,7 +5010,7 @@ __metadata: languageName: node linkType: hard -"@testing-library/dom@npm:10.4.0": +"@testing-library/dom@npm:10.4.0, @testing-library/dom@npm:^10.4.0": version: 10.4.0 resolution: "@testing-library/dom@npm:10.4.0" dependencies: @@ -4797,7 +5026,7 @@ __metadata: languageName: node linkType: hard -"@testing-library/jest-dom@npm:^6.5.0": +"@testing-library/jest-dom@npm:^6.5.0, @testing-library/jest-dom@npm:^6.6.3": version: 6.6.3 resolution: "@testing-library/jest-dom@npm:6.6.3" dependencies: @@ -4886,6 +5115,16 @@ __metadata: languageName: node linkType: hard +"@tufjs/models@npm:3.0.1": + version: 3.0.1 + resolution: "@tufjs/models@npm:3.0.1" + dependencies: + "@tufjs/canonical-json": "npm:2.0.0" + minimatch: "npm:^9.0.5" + checksum: 10c0/0b2022589139102edf28f7fdcd094407fc98ac25bf530ebcf538dd63152baea9b6144b713c8dfc4f6b7580adeff706ab6ecc5f9716c4b816e58a04419abb1926 + languageName: node + linkType: hard + "@types/aria-query@npm:^5.0.1": version: 5.0.4 resolution: "@types/aria-query@npm:5.0.4" @@ -5098,7 +5337,7 @@ __metadata: languageName: node linkType: hard -"@types/jest@npm:^29.5.12": +"@types/jest@npm:^29.5.12, @types/jest@npm:^29.5.14": version: 29.5.14 resolution: "@types/jest@npm:29.5.14" dependencies: @@ -5309,6 +5548,15 @@ __metadata: languageName: node linkType: hard +"@types/react-dom@npm:^19": + version: 19.0.2 + resolution: "@types/react-dom@npm:19.0.2" + peerDependencies: + "@types/react": ^19.0.0 + checksum: 10c0/3d0c7b78dbe8df64ea769f30af990a5950173a8321c745fe11094d765423f7964c3519dca6e7cd36b4be6521c8efc690bdd3b79b327b229dd1e9d5a8bad677dd + languageName: node + linkType: hard + "@types/react-icons@npm:^3.0.0": version: 3.0.0 resolution: "@types/react-icons@npm:3.0.0" @@ -6665,6 +6913,19 @@ __metadata: languageName: node linkType: hard +"bin-links@npm:^5.0.0": + version: 5.0.0 + resolution: "bin-links@npm:5.0.0" + dependencies: + cmd-shim: "npm:^7.0.0" + npm-normalize-package-bin: "npm:^4.0.0" + proc-log: "npm:^5.0.0" + read-cmd-shim: "npm:^5.0.0" + write-file-atomic: "npm:^6.0.0" + checksum: 10c0/7ef087164b13df1810bf087146880a5d43d7d0beb95c51ec0664224f9371e1ca0de70c813306de6de173fb1a3fd0ca49e636ba80c951a70ce6bd7cbf48daf075 + languageName: node + linkType: hard + "binary-extensions@npm:^1.0.0": version: 1.13.1 resolution: "binary-extensions@npm:1.13.1" @@ -6950,7 +7211,7 @@ __metadata: languageName: node linkType: hard -"cacache@npm:^19.0.1": +"cacache@npm:^19.0.0, cacache@npm:^19.0.1": version: 19.0.1 resolution: "cacache@npm:19.0.1" dependencies: @@ -7359,6 +7620,13 @@ __metadata: languageName: node linkType: hard +"cmd-shim@npm:^7.0.0": + version: 7.0.0 + resolution: "cmd-shim@npm:7.0.0" + checksum: 10c0/f2a14eccea9d29ac39f5182b416af60b2d4ad13ef96c541580175a394c63192aeaa53a3edfc73c7f988685574623465304b80c417dde4049d6ad7370a78dc792 + languageName: node + linkType: hard + "co@npm:^4.6.0": version: 4.6.0 resolution: "co@npm:4.6.0" @@ -7977,7 +8245,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.7": +"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.6, debug@npm:^4.3.7": version: 4.4.0 resolution: "debug@npm:4.4.0" dependencies: @@ -8564,6 +8832,19 @@ __metadata: languageName: node linkType: hard +"electron@npm:33.2.1": + version: 33.2.1 + resolution: "electron@npm:33.2.1" + dependencies: + "@electron/get": "npm:^2.0.0" + "@types/node": "npm:^20.9.0" + extract-zip: "npm:^2.0.1" + bin: + electron: cli.js + checksum: 10c0/25111ab9b48bf95a24b916292c8d4f4d05309b12823d5e942636f377a8033c9c47d466f686895bfe4619b80d222470a439d9b0227516740c8e19fa14991b880b + languageName: node + linkType: hard + "emittery@npm:^0.13.1": version: 0.13.1 resolution: "emittery@npm:0.13.1" @@ -10822,6 +11103,15 @@ __metadata: languageName: node linkType: hard +"hosted-git-info@npm:^8.0.0": + version: 8.0.2 + resolution: "hosted-git-info@npm:8.0.2" + dependencies: + lru-cache: "npm:^10.0.1" + checksum: 10c0/e64f6c1b6db625869934b35c4959aacc365799d9cb1856e0224b5557ee5ecfe224bb8aa850479179a8f3968063ea0f92b8fbb67fe009d46859431dcde7fdc36d + languageName: node + linkType: hard + "html-encoding-sniffer@npm:^3.0.0": version: 3.0.0 resolution: "html-encoding-sniffer@npm:3.0.0" @@ -10994,6 +11284,15 @@ __metadata: languageName: node linkType: hard +"ignore-walk@npm:^7.0.0": + version: 7.0.0 + resolution: "ignore-walk@npm:7.0.0" + dependencies: + minimatch: "npm:^9.0.0" + checksum: 10c0/3754bcde369a53a92c1d0835ea93feb6c5b2934984d3f5a8f9dd962d13ac33ee3a9e930901a89b5d46fc061870639d983f497186afdfe3484e135f2ad89f5577 + languageName: node + linkType: hard + "ignore@npm:^5.1.1, ignore@npm:^5.2.0, ignore@npm:^5.2.4": version: 5.3.2 resolution: "ignore@npm:5.3.2" @@ -11116,6 +11415,13 @@ __metadata: languageName: node linkType: hard +"ini@npm:^5.0.0": + version: 5.0.0 + resolution: "ini@npm:5.0.0" + checksum: 10c0/657491ce766cbb4b335ab221ee8f72b9654d9f0e35c32fe5ff2eb7ab8c5ce72237ff6456555b50cde88e6507a719a70e28e327b450782b4fc20c90326ec8c1a8 + languageName: node + linkType: hard + "inline-style-parser@npm:0.2.4": version: 0.2.4 resolution: "inline-style-parser@npm:0.2.4" @@ -12685,6 +12991,13 @@ __metadata: languageName: node linkType: hard +"json-parse-even-better-errors@npm:^4.0.0": + version: 4.0.0 + resolution: "json-parse-even-better-errors@npm:4.0.0" + checksum: 10c0/84cd9304a97e8fb2af3937bf53acb91c026aeb859703c332684e688ea60db27fc2242aa532a84e1883fdcbe1e5c1fb57c2bef38e312021aa1cd300defc63cf16 + languageName: node + linkType: hard + "json-schema-ref-resolver@npm:^1.0.1": version: 1.0.1 resolution: "json-schema-ref-resolver@npm:1.0.1" @@ -13289,7 +13602,7 @@ __metadata: languageName: node linkType: hard -"make-fetch-happen@npm:^14.0.3": +"make-fetch-happen@npm:^14.0.0, make-fetch-happen@npm:^14.0.1, make-fetch-happen@npm:^14.0.3": version: 14.0.3 resolution: "make-fetch-happen@npm:14.0.3" dependencies: @@ -13989,7 +14302,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.0, minimatch@npm:^9.0.1, minimatch@npm:^9.0.4": +"minimatch@npm:^9.0.0, minimatch@npm:^9.0.1, minimatch@npm:^9.0.4, minimatch@npm:^9.0.5": version: 9.0.5 resolution: "minimatch@npm:9.0.5" dependencies: @@ -14469,7 +14782,7 @@ __metadata: languageName: node linkType: hard -"node-gyp@npm:latest": +"node-gyp@npm:^11.0.0, node-gyp@npm:latest": version: 11.0.0 resolution: "node-gyp@npm:11.0.0" dependencies: @@ -14536,6 +14849,17 @@ __metadata: languageName: node linkType: hard +"normalize-package-data@npm:^7.0.0": + version: 7.0.0 + resolution: "normalize-package-data@npm:7.0.0" + dependencies: + hosted-git-info: "npm:^8.0.0" + semver: "npm:^7.3.5" + validate-npm-package-license: "npm:^3.0.4" + checksum: 10c0/d492cbc4cdd92e99cba517b08cec6adf40ff37f2e97ecf4484ccb2da1ef5bd81c6dfbd8b434d3bdc749df639492ecdc71f4a61de1a8b99fe97fdf4faac13e7f1 + languageName: node + linkType: hard + "normalize-path@npm:^2.0.0, normalize-path@npm:^2.0.1": version: 2.1.1 resolution: "normalize-path@npm:2.1.1" @@ -14575,6 +14899,15 @@ __metadata: languageName: node linkType: hard +"npm-bundled@npm:^4.0.0": + version: 4.0.0 + resolution: "npm-bundled@npm:4.0.0" + dependencies: + npm-normalize-package-bin: "npm:^4.0.0" + checksum: 10c0/e6e20caefbc6a41138d3767ec998f6a2cf55f33371c119417a556ff6052390a2ffeb3b465a74aea127fb211ddfcb7db776620faf12b64e48e60e332b25b5b8a0 + languageName: node + linkType: hard + "npm-install-checks@npm:^6.0.0, npm-install-checks@npm:^6.2.0": version: 6.3.0 resolution: "npm-install-checks@npm:6.3.0" @@ -14584,6 +14917,15 @@ __metadata: languageName: node linkType: hard +"npm-install-checks@npm:^7.1.0": + version: 7.1.1 + resolution: "npm-install-checks@npm:7.1.1" + dependencies: + semver: "npm:^7.1.1" + checksum: 10c0/3cfd705ef3f70add31a32b4a5462d16e0f06d9df636072483fb43c854414a1cc128f496e84a8d9c12c1f1820307b7a3c275643589c564dac3c870eb636f8eea4 + languageName: node + linkType: hard + "npm-normalize-package-bin@npm:^3.0.0": version: 3.0.1 resolution: "npm-normalize-package-bin@npm:3.0.1" @@ -14591,6 +14933,13 @@ __metadata: languageName: node linkType: hard +"npm-normalize-package-bin@npm:^4.0.0": + version: 4.0.0 + resolution: "npm-normalize-package-bin@npm:4.0.0" + checksum: 10c0/1fa546fcae8eaab61ef9b9ec237b6c795008da50e1883eae030e9e38bb04ffa32c5aabcef9a0400eae3dc1f91809bcfa85e437ce80d677c69b419d1d9cacf0ab + languageName: node + linkType: hard + "npm-package-arg@npm:^11.0.0, npm-package-arg@npm:^11.0.2": version: 11.0.3 resolution: "npm-package-arg@npm:11.0.3" @@ -14603,6 +14952,27 @@ __metadata: languageName: node linkType: hard +"npm-package-arg@npm:^12.0.0": + version: 12.0.1 + resolution: "npm-package-arg@npm:12.0.1" + dependencies: + hosted-git-info: "npm:^8.0.0" + proc-log: "npm:^5.0.0" + semver: "npm:^7.3.5" + validate-npm-package-name: "npm:^6.0.0" + checksum: 10c0/e7cafb0952541858abe63dfa2fd7b45f1626e310c0b60d6266fafe20c1b5b76388913c3f39390820bee9eac035705639dc62adbcf14748536f867c4d06bbf209 + languageName: node + linkType: hard + +"npm-packlist@npm:^10.0.0": + version: 10.0.0 + resolution: "npm-packlist@npm:10.0.0" + dependencies: + ignore-walk: "npm:^7.0.0" + checksum: 10c0/be8cb82c4f9b6fdfba2e3379c538949d3ea7aeb303436db013aaccd8ad1ff49d9f894d7fa4684f9d3016b7944dcc3f0bfc8c3d10c535fa7cd29314a8aad4b80f + languageName: node + linkType: hard + "npm-packlist@npm:^8.0.0": version: 8.0.2 resolution: "npm-packlist@npm:8.0.2" @@ -14612,6 +14982,18 @@ __metadata: languageName: node linkType: hard +"npm-pick-manifest@npm:^10.0.0": + version: 10.0.0 + resolution: "npm-pick-manifest@npm:10.0.0" + dependencies: + npm-install-checks: "npm:^7.1.0" + npm-normalize-package-bin: "npm:^4.0.0" + npm-package-arg: "npm:^12.0.0" + semver: "npm:^7.3.5" + checksum: 10c0/946e791f6164a04dbc3340749cd7521d4d1f60accb2d0ca901375314b8425c8a12b34b4b70e2850462cc898fba5fa8d1f283221bf788a1d37276f06a85c4562a + languageName: node + linkType: hard + "npm-pick-manifest@npm:^9.0.0, npm-pick-manifest@npm:^9.0.1": version: 9.1.0 resolution: "npm-pick-manifest@npm:9.1.0" @@ -14656,6 +15038,22 @@ __metadata: languageName: node linkType: hard +"npm-registry-fetch@npm:^18.0.0, npm-registry-fetch@npm:^18.0.1": + version: 18.0.2 + resolution: "npm-registry-fetch@npm:18.0.2" + dependencies: + "@npmcli/redact": "npm:^3.0.0" + jsonparse: "npm:^1.3.1" + make-fetch-happen: "npm:^14.0.0" + minipass: "npm:^7.0.2" + minipass-fetch: "npm:^4.0.0" + minizlib: "npm:^3.0.1" + npm-package-arg: "npm:^12.0.0" + proc-log: "npm:^5.0.0" + checksum: 10c0/43e02befb393f67d5014d690a96d55f0b5f837a3eb9a79b17738ff0e3a1f081968480f2f280d1ad77a088ebd88c196793d929b0e4d24a8389a324dfd4006bc39 + languageName: node + linkType: hard + "npm-run-path@npm:^2.0.0": version: 2.0.2 resolution: "npm-run-path@npm:2.0.2" @@ -15065,6 +15463,33 @@ __metadata: languageName: node linkType: hard +"pacote@npm:^21.0.0": + version: 21.0.0 + resolution: "pacote@npm:21.0.0" + dependencies: + "@npmcli/git": "npm:^6.0.0" + "@npmcli/installed-package-contents": "npm:^3.0.0" + "@npmcli/package-json": "npm:^6.0.0" + "@npmcli/promise-spawn": "npm:^8.0.0" + "@npmcli/run-script": "npm:^9.0.0" + cacache: "npm:^19.0.0" + fs-minipass: "npm:^3.0.0" + minipass: "npm:^7.0.2" + npm-package-arg: "npm:^12.0.0" + npm-packlist: "npm:^10.0.0" + npm-pick-manifest: "npm:^10.0.0" + npm-registry-fetch: "npm:^18.0.0" + proc-log: "npm:^5.0.0" + promise-retry: "npm:^2.0.1" + sigstore: "npm:^3.0.0" + ssri: "npm:^12.0.0" + tar: "npm:^6.1.11" + bin: + pacote: bin/index.js + checksum: 10c0/406eabb2185f87526f07b2b7540a96c91f07c8782f9d1651ef022844f021922ee1507161c43dd16616ab3f15a2d13a1bfe217bfd79731020c725373c4e713022 + languageName: node + linkType: hard + "pako@npm:^1.0.11, pako@npm:~1.0.2": version: 1.0.11 resolution: "pako@npm:1.0.11" @@ -15116,6 +15541,17 @@ __metadata: languageName: node linkType: hard +"parse-conflict-json@npm:^4.0.0": + version: 4.0.0 + resolution: "parse-conflict-json@npm:4.0.0" + dependencies: + json-parse-even-better-errors: "npm:^4.0.0" + just-diff: "npm:^6.0.0" + just-diff-apply: "npm:^5.2.0" + checksum: 10c0/5e027cdb6c93a283e32e406e829c1d5b30bfb344ab93dd5a0b8fe983f26dab05dd4d8cba3b3106259f32cbea722f383eda2c8132da3a4a9846803d2bdb004feb + languageName: node + linkType: hard + "parse-entities@npm:^4.0.0": version: 4.0.2 resolution: "parse-entities@npm:4.0.2" @@ -16153,6 +16589,13 @@ __metadata: languageName: node linkType: hard +"proggy@npm:^3.0.0": + version: 3.0.0 + resolution: "proggy@npm:3.0.0" + checksum: 10c0/b4265664405e780edf7a164b2424bb59fc7bd3ab917365c88c6540e5f3bedcbbfb1a534da9c6a4a5570f374a41ef6942e9a4e862dc3ea744798b6c7be63e4351 + languageName: node + linkType: hard + "progress@npm:^2.0.3": version: 2.0.3 resolution: "progress@npm:2.0.3" @@ -16352,6 +16795,17 @@ __metadata: languageName: node linkType: hard +"react-dom@npm:^19.0.0": + version: 19.0.0 + resolution: "react-dom@npm:19.0.0" + dependencies: + scheduler: "npm:^0.25.0" + peerDependencies: + react: ^19.0.0 + checksum: 10c0/a36ce7ab507b237ae2759c984cdaad4af4096d8199fb65b3815c16825e5cfeb7293da790a3fc2184b52bfba7ba3ff31c058c01947aff6fd1a3701632aabaa6a9 + languageName: node + linkType: hard + "react-dropzone@npm:14.2.3": version: 14.2.3 resolution: "react-dropzone@npm:14.2.3" @@ -16509,6 +16963,13 @@ __metadata: languageName: node linkType: hard +"react@npm:^19.0.0": + version: 19.0.0 + resolution: "react@npm:19.0.0" + checksum: 10c0/9cad8f103e8e3a16d15cb18a0d8115d8bd9f9e1ce3420310aea381eb42aa0a4f812cf047bb5441349257a05fba8a291515691e3cb51267279b2d2c3253f38471 + languageName: node + linkType: hard + "read-cache@npm:^1.0.0": version: 1.0.0 resolution: "read-cache@npm:1.0.0" @@ -16525,6 +16986,13 @@ __metadata: languageName: node linkType: hard +"read-cmd-shim@npm:^5.0.0": + version: 5.0.0 + resolution: "read-cmd-shim@npm:5.0.0" + checksum: 10c0/5688aea2742d928575a1dd87ee0ce691f57b344935fe87d6460067951e7a3bb3677501513316785e1e9ea43b0bb1635eacba3b00b81ad158f9b23512f1de26d2 + languageName: node + linkType: hard + "read-config-file@npm:6.3.2": version: 6.3.2 resolution: "read-config-file@npm:6.3.2" @@ -16549,6 +17017,16 @@ __metadata: languageName: node linkType: hard +"read-package-json-fast@npm:^4.0.0": + version: 4.0.0 + resolution: "read-package-json-fast@npm:4.0.0" + dependencies: + json-parse-even-better-errors: "npm:^4.0.0" + npm-normalize-package-bin: "npm:^4.0.0" + checksum: 10c0/8a03509ae8e852f1abc4b109c1be571dd90ac9ea65d55433b2fe287e409113441a9b00df698288fe48aa786c1a2550569d47b5ab01ed83ada073d691d5aff582 + languageName: node + linkType: hard + "read-package-json@npm:^7.0.0": version: 7.0.1 resolution: "read-package-json@npm:7.0.1" @@ -17475,6 +17953,13 @@ __metadata: languageName: node linkType: hard +"scheduler@npm:^0.25.0": + version: 0.25.0 + resolution: "scheduler@npm:0.25.0" + checksum: 10c0/a4bb1da406b613ce72c1299db43759526058fdcc413999c3c3e0db8956df7633acf395cb20eb2303b6a65d658d66b6585d344460abaee8080b4aa931f10eaafe + languageName: node + linkType: hard + "scroll-into-view-if-needed@npm:^3.1.0": version: 3.1.0 resolution: "scroll-into-view-if-needed@npm:3.1.0" @@ -17717,6 +18202,20 @@ __metadata: languageName: node linkType: hard +"sigstore@npm:^3.0.0": + version: 3.0.0 + resolution: "sigstore@npm:3.0.0" + dependencies: + "@sigstore/bundle": "npm:^3.0.0" + "@sigstore/core": "npm:^2.0.0" + "@sigstore/protobuf-specs": "npm:^0.3.2" + "@sigstore/sign": "npm:^3.0.0" + "@sigstore/tuf": "npm:^3.0.0" + "@sigstore/verify": "npm:^2.0.0" + checksum: 10c0/9f9fa8419d07cb4ebb4fbe324e8a68023f851827629a4906d2ffa59b51f17551f514d80aa541c2d2b9918340a1c42cfda2e1ba0ac65a2f9768e8437c520beecd + languageName: node + linkType: hard + "simple-update-notifier@npm:2.0.0": version: 2.0.0 resolution: "simple-update-notifier@npm:2.0.0" @@ -19019,6 +19518,17 @@ __metadata: languageName: node linkType: hard +"tuf-js@npm:^3.0.1": + version: 3.0.1 + resolution: "tuf-js@npm:3.0.1" + dependencies: + "@tufjs/models": "npm:3.0.1" + debug: "npm:^4.3.6" + make-fetch-happen: "npm:^14.0.1" + checksum: 10c0/4214dd6bb1ec8a6cadbc5690e5a8556de0306f0e95022e54fc7c0ff9dbcc229ab379fd4b048511387f9c0023ea8f8c35acd8f7313f6cbc94a1b8af8b289f62ad + languageName: node + linkType: hard + "tunnel-agent@npm:^0.6.0": version: 0.6.0 resolution: "tunnel-agent@npm:0.6.0" @@ -19555,6 +20065,13 @@ __metadata: languageName: node linkType: hard +"validate-npm-package-name@npm:^6.0.0": + version: 6.0.0 + resolution: "validate-npm-package-name@npm:6.0.0" + checksum: 10c0/35d1896d90a4f00291cfc17077b553910d45018b3562841acc6471731794eeebe39b409f678e8c1fee8ef1786e087cac8dea19abdd43649c30fd0b9c752afa2f + languageName: node + linkType: hard + "verror@npm:1.10.0": version: 1.10.0 resolution: "verror@npm:1.10.0" @@ -19638,6 +20155,13 @@ __metadata: languageName: node linkType: hard +"walk-up-path@npm:^4.0.0": + version: 4.0.0 + resolution: "walk-up-path@npm:4.0.0" + checksum: 10c0/fabe344f91387d1d41df230af962ef18bf703dd4178006d55cd6412caacd187b54440002d4d53a982d4f7f0455567dcffb6d3884533c8b2268928eca3ebd8a19 + languageName: node + linkType: hard + "walker@npm:^1.0.8": version: 1.0.8 resolution: "walker@npm:1.0.8" @@ -19892,6 +20416,16 @@ __metadata: languageName: node linkType: hard +"write-file-atomic@npm:^6.0.0": + version: 6.0.0 + resolution: "write-file-atomic@npm:6.0.0" + dependencies: + imurmurhash: "npm:^0.1.4" + signal-exit: "npm:^4.0.1" + checksum: 10c0/ae2f1c27474758a9aca92037df6c1dd9cb94c4e4983451210bd686bfe341f142662f6aa5913095e572ab037df66b1bfe661ed4ce4c0369ed0e8219e28e141786 + languageName: node + linkType: hard + "ws@npm:^8.11.0, ws@npm:^8.16.0": version: 8.18.0 resolution: "ws@npm:8.18.0"