From 3fccbfd7b263c8fbd18d3af4261af8a2418682a0 Mon Sep 17 00:00:00 2001 From: Greg Date: Thu, 13 Feb 2025 12:21:36 +0100 Subject: [PATCH 01/38] Init react --- demo-react/.gitignore | 24 + demo-react/README.md | 50 ++ demo-react/eslint.config.js | 28 + demo-react/index.html | 13 + demo-react/package.json | 29 + demo-react/public/vite.svg | 1 + demo-react/src/App.css | 42 + demo-react/src/App.tsx | 35 + demo-react/src/assets/react.svg | 1 + demo-react/src/index.css | 68 ++ demo-react/src/main.tsx | 10 + demo-react/src/vite-env.d.ts | 1 + demo-react/tsconfig.app.json | 26 + demo-react/tsconfig.json | 7 + demo-react/tsconfig.node.json | 24 + demo-react/vite.config.ts | 7 + package.json | 3 +- yarn.lock | 1345 ++++++++++++++++++++++++++++++- 18 files changed, 1703 insertions(+), 11 deletions(-) create mode 100644 demo-react/.gitignore create mode 100644 demo-react/README.md create mode 100644 demo-react/eslint.config.js create mode 100644 demo-react/index.html create mode 100644 demo-react/package.json create mode 100644 demo-react/public/vite.svg create mode 100644 demo-react/src/App.css create mode 100644 demo-react/src/App.tsx create mode 100644 demo-react/src/assets/react.svg create mode 100644 demo-react/src/index.css create mode 100644 demo-react/src/main.tsx create mode 100644 demo-react/src/vite-env.d.ts create mode 100644 demo-react/tsconfig.app.json create mode 100644 demo-react/tsconfig.json create mode 100644 demo-react/tsconfig.node.json create mode 100644 demo-react/vite.config.ts diff --git a/demo-react/.gitignore b/demo-react/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/demo-react/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/demo-react/README.md b/demo-react/README.md new file mode 100644 index 0000000..74872fd --- /dev/null +++ b/demo-react/README.md @@ -0,0 +1,50 @@ +# React + TypeScript + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh + +## Expanding the ESLint configuration + +If you are developing a production application, we recommend updating the configuration to enable type aware lint rules: + +- Configure the top-level `parserOptions` property like this: + +```js +export default tseslint.config({ + languageOptions: { + // other options... + parserOptions: { + project: ['./tsconfig.node.json', './tsconfig.app.json'], + tsconfigRootDir: import.meta.dirname, + }, + }, +}) +``` + +- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked` +- Optionally add `...tseslint.configs.stylisticTypeChecked` +- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config: + +```js +// eslint.config.js +import react from 'eslint-plugin-react' + +export default tseslint.config({ + // Set the react version + settings: { react: { version: '18.3' } }, + plugins: { + // Add the react plugin + react, + }, + rules: { + // other rules... + // Enable its recommended rules + ...react.configs.recommended.rules, + ...react.configs['jsx-runtime'].rules, + }, +}) +``` diff --git a/demo-react/eslint.config.js b/demo-react/eslint.config.js new file mode 100644 index 0000000..092408a --- /dev/null +++ b/demo-react/eslint.config.js @@ -0,0 +1,28 @@ +import js from '@eslint/js' +import globals from 'globals' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' +import tseslint from 'typescript-eslint' + +export default tseslint.config( + { ignores: ['dist'] }, + { + extends: [js.configs.recommended, ...tseslint.configs.recommended], + files: ['**/*.{ts,tsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + }, + plugins: { + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...reactHooks.configs.recommended.rules, + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + }, +) diff --git a/demo-react/index.html b/demo-react/index.html new file mode 100644 index 0000000..e4b78ea --- /dev/null +++ b/demo-react/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + TS + + +
+ + + diff --git a/demo-react/package.json b/demo-react/package.json new file mode 100644 index 0000000..74285fb --- /dev/null +++ b/demo-react/package.json @@ -0,0 +1,29 @@ +{ + "name": "demo-react", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc -b && vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "react": "^19.0.0", + "react-dom": "^19.0.0" + }, + "devDependencies": { + "@eslint/js": "^9.19.0", + "@types/react": "^19.0.8", + "@types/react-dom": "^19.0.3", + "@vitejs/plugin-react": "^4.3.4", + "eslint": "^9.19.0", + "eslint-plugin-react-hooks": "^5.0.0", + "eslint-plugin-react-refresh": "^0.4.18", + "globals": "^15.14.0", + "typescript": "~5.7.2", + "typescript-eslint": "^8.22.0", + "vite": "^6.1.0" + } +} diff --git a/demo-react/public/vite.svg b/demo-react/public/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/demo-react/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demo-react/src/App.css b/demo-react/src/App.css new file mode 100644 index 0000000..b9d355d --- /dev/null +++ b/demo-react/src/App.css @@ -0,0 +1,42 @@ +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx new file mode 100644 index 0000000..3d7ded3 --- /dev/null +++ b/demo-react/src/App.tsx @@ -0,0 +1,35 @@ +import { useState } from 'react' +import reactLogo from './assets/react.svg' +import viteLogo from '/vite.svg' +import './App.css' + +function App() { + const [count, setCount] = useState(0) + + return ( + <> +
+ + Vite logo + + + React logo + +
+

Vite + React

+
+ +

+ Edit src/App.tsx and save to test HMR +

+
+

+ Click on the Vite and React logos to learn more +

+ + ) +} + +export default App diff --git a/demo-react/src/assets/react.svg b/demo-react/src/assets/react.svg new file mode 100644 index 0000000..6c87de9 --- /dev/null +++ b/demo-react/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demo-react/src/index.css b/demo-react/src/index.css new file mode 100644 index 0000000..6119ad9 --- /dev/null +++ b/demo-react/src/index.css @@ -0,0 +1,68 @@ +:root { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/demo-react/src/main.tsx b/demo-react/src/main.tsx new file mode 100644 index 0000000..bef5202 --- /dev/null +++ b/demo-react/src/main.tsx @@ -0,0 +1,10 @@ +import { StrictMode } from 'react' +import { createRoot } from 'react-dom/client' +import './index.css' +import App from './App.tsx' + +createRoot(document.getElementById('root')!).render( + + + , +) diff --git a/demo-react/src/vite-env.d.ts b/demo-react/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/demo-react/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/demo-react/tsconfig.app.json b/demo-react/tsconfig.app.json new file mode 100644 index 0000000..358ca9b --- /dev/null +++ b/demo-react/tsconfig.app.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["src"] +} diff --git a/demo-react/tsconfig.json b/demo-react/tsconfig.json new file mode 100644 index 0000000..1ffef60 --- /dev/null +++ b/demo-react/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/demo-react/tsconfig.node.json b/demo-react/tsconfig.node.json new file mode 100644 index 0000000..db0becc --- /dev/null +++ b/demo-react/tsconfig.node.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2022", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/demo-react/vite.config.ts b/demo-react/vite.config.ts new file mode 100644 index 0000000..8b0f57b --- /dev/null +++ b/demo-react/vite.config.ts @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [react()], +}) diff --git a/package.json b/package.json index b5c3080..65f9cd1 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,8 @@ "author": "QuantStack", "workspaces": [ "packages/*", - "demo" + "demo", + "demo-react" ], "scripts": { "build": "lerna run build", diff --git a/yarn.lock b/yarn.lock index e045db5..e7aa0a2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,7 +5,17 @@ __metadata: version: 6 cacheKey: 8 -"@babel/code-frame@npm:^7.0.0": +"@ampproject/remapping@npm:^2.2.0": + version: 2.3.0 + resolution: "@ampproject/remapping@npm:2.3.0" + dependencies: + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.24 + checksum: d3ad7b89d973df059c4e8e6d7c972cbeb1bb2f18f002a3bd04ae0707da214cb06cc06929b65aa2313b9347463df2914772298bae8b1d7973f246bb3f2ab3e8f0 + languageName: node + linkType: hard + +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.26.2": version: 7.26.2 resolution: "@babel/code-frame@npm:7.26.2" dependencies: @@ -16,6 +26,100 @@ __metadata: languageName: node linkType: hard +"@babel/compat-data@npm:^7.26.5": + version: 7.26.8 + resolution: "@babel/compat-data@npm:7.26.8" + checksum: 1bb04c6860c8c9555b933cb9c3caf5ef1dac331a37a351efb67956fc679f695d487aea76e792dd43823702c1300f7906f2a298e50b4a8d7ec199ada9c340c365 + languageName: node + linkType: hard + +"@babel/core@npm:^7.26.0": + version: 7.26.8 + resolution: "@babel/core@npm:7.26.8" + dependencies: + "@ampproject/remapping": ^2.2.0 + "@babel/code-frame": ^7.26.2 + "@babel/generator": ^7.26.8 + "@babel/helper-compilation-targets": ^7.26.5 + "@babel/helper-module-transforms": ^7.26.0 + "@babel/helpers": ^7.26.7 + "@babel/parser": ^7.26.8 + "@babel/template": ^7.26.8 + "@babel/traverse": ^7.26.8 + "@babel/types": ^7.26.8 + "@types/gensync": ^1.0.0 + convert-source-map: ^2.0.0 + debug: ^4.1.0 + gensync: ^1.0.0-beta.2 + json5: ^2.2.3 + semver: ^6.3.1 + checksum: 9d83fb7ad33467fc5ed841d24158d01b7c486ad399d7988232ab9edc6d9f92cd4d60b598ca717aeeb136feb48f7e289c247663c6a28e85dee92a39b2e97cc2e1 + languageName: node + linkType: hard + +"@babel/generator@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/generator@npm:7.26.8" + dependencies: + "@babel/parser": ^7.26.8 + "@babel/types": ^7.26.8 + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.25 + jsesc: ^3.0.2 + checksum: 15ef65699a556f1c75edba52109e65a597a3e16da2faf117d617e67b667983d5e3cd11399a1d6ff9ff1b0029f8e7c9513975884704b6c2d13bba3d780456823d + languageName: node + linkType: hard + +"@babel/helper-compilation-targets@npm:^7.26.5": + version: 7.26.5 + resolution: "@babel/helper-compilation-targets@npm:7.26.5" + dependencies: + "@babel/compat-data": ^7.26.5 + "@babel/helper-validator-option": ^7.25.9 + browserslist: ^4.24.0 + lru-cache: ^5.1.1 + semver: ^6.3.1 + checksum: 6bc0107613bf1d4d21913606e8e517194e5099a24db2a8374568e56ef4626e8140f9b8f8a4aabc35479f5904459a0aead2a91ee0dc63aae110ccbc2bc4b4fda1 + languageName: node + linkType: hard + +"@babel/helper-module-imports@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-module-imports@npm:7.25.9" + dependencies: + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 1b411ce4ca825422ef7065dffae7d8acef52023e51ad096351e3e2c05837e9bf9fca2af9ca7f28dc26d596a588863d0fedd40711a88e350b736c619a80e704e6 + languageName: node + linkType: hard + +"@babel/helper-module-transforms@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/helper-module-transforms@npm:7.26.0" + dependencies: + "@babel/helper-module-imports": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + "@babel/traverse": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 942eee3adf2b387443c247a2c190c17c4fd45ba92a23087abab4c804f40541790d51ad5277e4b5b1ed8d5ba5b62de73857446b7742f835c18ebd350384e63917 + languageName: node + linkType: hard + +"@babel/helper-plugin-utils@npm:^7.25.9": + version: 7.26.5 + resolution: "@babel/helper-plugin-utils@npm:7.26.5" + checksum: 4771fbb1711c624c62d12deabc2ed7435a6e6994b6ce09d5ede1bc1bf19be59c3775461a1e693bdd596af865685e87bb2abc778f62ceadc1b2095a8e2aa74180 + languageName: node + linkType: hard + +"@babel/helper-string-parser@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-string-parser@npm:7.25.9" + checksum: 6435ee0849e101681c1849868278b5aee82686ba2c1e27280e5e8aca6233af6810d39f8e4e693d2f2a44a3728a6ccfd66f72d71826a94105b86b731697cdfa99 + languageName: node + linkType: hard + "@babel/helper-validator-identifier@npm:^7.25.9": version: 7.25.9 resolution: "@babel/helper-validator-identifier@npm:7.25.9" @@ -23,6 +127,92 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-option@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-option@npm:7.25.9" + checksum: 9491b2755948ebbdd68f87da907283698e663b5af2d2b1b02a2765761974b1120d5d8d49e9175b167f16f72748ffceec8c9cf62acfbee73f4904507b246e2b3d + languageName: node + linkType: hard + +"@babel/helpers@npm:^7.26.7": + version: 7.26.7 + resolution: "@babel/helpers@npm:7.26.7" + dependencies: + "@babel/template": ^7.25.9 + "@babel/types": ^7.26.7 + checksum: 1c93604c7fd6dbd7aa6f3eb2f9fa56369f9ad02bac8b3afb902de6cd4264beb443cc8589bede3790ca28d7477d4c07801fe6f4943f9833ac5956b72708bbd7ac + languageName: node + linkType: hard + +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/parser@npm:7.26.8" + dependencies: + "@babel/types": ^7.26.8 + bin: + parser: ./bin/babel-parser.js + checksum: 2ede62d2451eaf37f524f2048ca41994466c81bda1f5acec36fbd8931fe77bf365e2b2060972735165e40aec305e04af76dd4d8fa895bc08a250215b32356577 + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx-self@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 41c833cd7f91b1432710f91b1325706e57979b2e8da44e83d86312c78bbe96cd9ef778b4e79e4e17ab25fa32c72b909f2be7f28e876779ede28e27506c41f4ae + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx-source@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a3e0e5672e344e9d01fb20b504fe29a84918eaa70cec512c4d4b1b035f72803261257343d8e93673365b72c371f35cf34bb0d129720bf178a4c87812c8b9c662 + languageName: node + linkType: hard + +"@babel/template@npm:^7.25.9, @babel/template@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/template@npm:7.26.8" + dependencies: + "@babel/code-frame": ^7.26.2 + "@babel/parser": ^7.26.8 + "@babel/types": ^7.26.8 + checksum: dfa79b33d49b89b2466a660bf299a545dd5fd6680fbf9828d2deca9bd826eb861041a9f5a25a4a0dddf6e4905e6fafac18a6885bf2aeecac6f39407a221e630f + languageName: node + linkType: hard + +"@babel/traverse@npm:^7.25.9, @babel/traverse@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/traverse@npm:7.26.8" + dependencies: + "@babel/code-frame": ^7.26.2 + "@babel/generator": ^7.26.8 + "@babel/parser": ^7.26.8 + "@babel/template": ^7.26.8 + "@babel/types": ^7.26.8 + debug: ^4.3.1 + globals: ^11.1.0 + checksum: f8b2f4d9945932ac6b0a359c322628327514a3e1d356555923dc143f3376d3e01f8f7a56cccb717223fa7420426e077809701175b717d946c622d826a6df7c60 + languageName: node + linkType: hard + +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.7, @babel/types@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/types@npm:7.26.8" + dependencies: + "@babel/helper-string-parser": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + checksum: 8f0f3bac37cc93d4658df460dc24156c6f1466abca63ef111c9f03128df6c247c672ed89e779ababb41250627c78d8bfcfba616eecb01b6e4ddcfd8ded718996 + languageName: node + linkType: hard + "@codemirror/state@npm:^6.4.1": version: 6.4.1 resolution: "@codemirror/state@npm:6.4.1" @@ -107,6 +297,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/aix-ppc64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/aix-ppc64@npm:0.24.2" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/android-arm64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/android-arm64@npm:0.24.0" @@ -114,6 +311,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/android-arm64@npm:0.24.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/android-arm@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/android-arm@npm:0.24.0" @@ -121,6 +325,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-arm@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/android-arm@npm:0.24.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + "@esbuild/android-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/android-x64@npm:0.24.0" @@ -128,6 +339,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/android-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/android-x64@npm:0.24.2" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + "@esbuild/darwin-arm64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/darwin-arm64@npm:0.24.0" @@ -135,6 +353,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-arm64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/darwin-arm64@npm:0.24.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/darwin-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/darwin-x64@npm:0.24.0" @@ -142,6 +367,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/darwin-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/darwin-x64@npm:0.24.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@esbuild/freebsd-arm64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/freebsd-arm64@npm:0.24.0" @@ -149,6 +381,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-arm64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/freebsd-arm64@npm:0.24.2" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/freebsd-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/freebsd-x64@npm:0.24.0" @@ -156,6 +395,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/freebsd-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/freebsd-x64@npm:0.24.2" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/linux-arm64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-arm64@npm:0.24.0" @@ -163,6 +409,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-arm64@npm:0.24.2" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/linux-arm@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-arm@npm:0.24.0" @@ -170,6 +423,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-arm@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-arm@npm:0.24.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@esbuild/linux-ia32@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-ia32@npm:0.24.0" @@ -177,6 +437,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ia32@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-ia32@npm:0.24.2" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/linux-loong64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-loong64@npm:0.24.0" @@ -184,6 +451,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-loong64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-loong64@npm:0.24.2" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + "@esbuild/linux-mips64el@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-mips64el@npm:0.24.0" @@ -191,6 +465,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-mips64el@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-mips64el@npm:0.24.2" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + "@esbuild/linux-ppc64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-ppc64@npm:0.24.0" @@ -198,6 +479,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-ppc64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-ppc64@npm:0.24.2" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/linux-riscv64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-riscv64@npm:0.24.0" @@ -205,6 +493,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-riscv64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-riscv64@npm:0.24.2" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + "@esbuild/linux-s390x@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-s390x@npm:0.24.0" @@ -212,6 +507,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-s390x@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-s390x@npm:0.24.2" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + "@esbuild/linux-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/linux-x64@npm:0.24.0" @@ -219,6 +521,20 @@ __metadata: languageName: node linkType: hard +"@esbuild/linux-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/linux-x64@npm:0.24.2" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/netbsd-arm64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/netbsd-arm64@npm:0.24.2" + conditions: os=netbsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/netbsd-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/netbsd-x64@npm:0.24.0" @@ -226,6 +542,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/netbsd-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/netbsd-x64@npm:0.24.2" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/openbsd-arm64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/openbsd-arm64@npm:0.24.0" @@ -233,6 +556,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/openbsd-arm64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/openbsd-arm64@npm:0.24.2" + conditions: os=openbsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/openbsd-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/openbsd-x64@npm:0.24.0" @@ -240,6 +570,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/openbsd-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/openbsd-x64@npm:0.24.2" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + "@esbuild/sunos-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/sunos-x64@npm:0.24.0" @@ -247,6 +584,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/sunos-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/sunos-x64@npm:0.24.2" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + "@esbuild/win32-arm64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/win32-arm64@npm:0.24.0" @@ -254,6 +598,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-arm64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/win32-arm64@npm:0.24.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/win32-ia32@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/win32-ia32@npm:0.24.0" @@ -261,6 +612,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-ia32@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/win32-ia32@npm:0.24.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@esbuild/win32-x64@npm:0.24.0": version: 0.24.0 resolution: "@esbuild/win32-x64@npm:0.24.0" @@ -268,6 +626,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/win32-x64@npm:0.24.2": + version: 0.24.2 + resolution: "@esbuild/win32-x64@npm:0.24.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": version: 4.4.1 resolution: "@eslint-community/eslint-utils@npm:4.4.1" @@ -279,13 +644,42 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": +"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.12.1, @eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": version: 4.12.1 resolution: "@eslint-community/regexpp@npm:4.12.1" checksum: 0d628680e204bc316d545b4993d3658427ca404ae646ce541fcc65306b8c712c340e5e573e30fb9f85f4855c0c5f6dca9868931f2fcced06417fbe1a0c6cd2d6 languageName: node linkType: hard +"@eslint/config-array@npm:^0.19.0": + version: 0.19.2 + resolution: "@eslint/config-array@npm:0.19.2" + dependencies: + "@eslint/object-schema": ^2.1.6 + debug: ^4.3.1 + minimatch: ^3.1.2 + checksum: 1c707e04fc2951079b32d2cb1c939ce25e863cd1329c1bd363a285b2a5caaaf88b97ddbf354cc46d1334097dc749f79b0fae33151dc2dfb9a60ba14288c65b39 + languageName: node + linkType: hard + +"@eslint/core@npm:^0.10.0": + version: 0.10.0 + resolution: "@eslint/core@npm:0.10.0" + dependencies: + "@types/json-schema": ^7.0.15 + checksum: 851fa099b3fef00e7ff8ece14523aff0822d3e1b47b047ab0a0d898e80c1362a22aa8b7778727231c383246932ecb63de79b4448ec1e500901c578580b087573 + languageName: node + linkType: hard + +"@eslint/core@npm:^0.11.0": + version: 0.11.0 + resolution: "@eslint/core@npm:0.11.0" + dependencies: + "@types/json-schema": ^7.0.15 + checksum: 9038b006bdb6a1a5b942e45d217598aaaec86cc97f8e891964e5220bc5514015981152cc999ea4196ee66d1f6ca5b3f8e8de404d5d8890d50142aee9e15495d1 + languageName: node + linkType: hard + "@eslint/eslintrc@npm:^2.1.4": version: 2.1.4 resolution: "@eslint/eslintrc@npm:2.1.4" @@ -303,6 +697,23 @@ __metadata: languageName: node linkType: hard +"@eslint/eslintrc@npm:^3.2.0": + version: 3.2.0 + resolution: "@eslint/eslintrc@npm:3.2.0" + dependencies: + ajv: ^6.12.4 + debug: ^4.3.2 + espree: ^10.0.1 + globals: ^14.0.0 + ignore: ^5.2.0 + import-fresh: ^3.2.1 + js-yaml: ^4.1.0 + minimatch: ^3.1.2 + strip-json-comments: ^3.1.1 + checksum: c898e4d12f4c9a79a61ee3c91e38eea5627a04e021cb749191e8537445858bfe32f810eca0cb2dc9902b8ad8b65ca07ef7221dc4bad52afe60cbbf50ec56c236 + languageName: node + linkType: hard + "@eslint/js@npm:8.57.1": version: 8.57.1 resolution: "@eslint/js@npm:8.57.1" @@ -310,6 +721,30 @@ __metadata: languageName: node linkType: hard +"@eslint/js@npm:9.20.0, @eslint/js@npm:^9.19.0": + version: 9.20.0 + resolution: "@eslint/js@npm:9.20.0" + checksum: e49dcbcea1a7892222988ba410b3f1e2b756177558f3f11fa3627682c3aca7585f8124c128711035e176daf56f82b4af47dc5655ca7a825057451607e42e5d13 + languageName: node + linkType: hard + +"@eslint/object-schema@npm:^2.1.6": + version: 2.1.6 + resolution: "@eslint/object-schema@npm:2.1.6" + checksum: e32e565319f6544d36d3fa69a3e163120722d12d666d1a4525c9a6f02e9b54c29d9b1f03139e25d7e759e08dda8da433590bc23c09db8d511162157ef1b86a4c + languageName: node + linkType: hard + +"@eslint/plugin-kit@npm:^0.2.5": + version: 0.2.5 + resolution: "@eslint/plugin-kit@npm:0.2.5" + dependencies: + "@eslint/core": ^0.10.0 + levn: ^0.4.1 + checksum: 423db33e67ff16f6db71bf8bfc8d5b0c2c4fe6f2209131e5886a573bf994bfc72ab4f825068d6521f186247731d4c9d48eb42a5e5ce389c6faa275752c0e9459 + languageName: node + linkType: hard + "@fortawesome/fontawesome-free@npm:^5.12.0": version: 5.15.4 resolution: "@fortawesome/fontawesome-free@npm:5.15.4" @@ -317,6 +752,23 @@ __metadata: languageName: node linkType: hard +"@humanfs/core@npm:^0.19.1": + version: 0.19.1 + resolution: "@humanfs/core@npm:0.19.1" + checksum: 611e0545146f55ddfdd5c20239cfb7911f9d0e28258787c4fc1a1f6214250830c9367aaaeace0096ed90b6739bee1e9c52ad5ba8adaf74ab8b449119303babfe + languageName: node + linkType: hard + +"@humanfs/node@npm:^0.16.6": + version: 0.16.6 + resolution: "@humanfs/node@npm:0.16.6" + dependencies: + "@humanfs/core": ^0.19.1 + "@humanwhocodes/retry": ^0.3.0 + checksum: f9cb52bb235f8b9c6fcff43a7e500669a38f8d6ce26593404a9b56365a1644e0ed60c720dc65ff6a696b1f85f3563ab055bb554ec8674f2559085ba840e47710 + languageName: node + linkType: hard + "@humanwhocodes/config-array@npm:^0.13.0": version: 0.13.0 resolution: "@humanwhocodes/config-array@npm:0.13.0" @@ -342,6 +794,20 @@ __metadata: languageName: node linkType: hard +"@humanwhocodes/retry@npm:^0.3.0": + version: 0.3.1 + resolution: "@humanwhocodes/retry@npm:0.3.1" + checksum: 7e5517bb51dbea3e02ab6cacef59a8f4b0ca023fc4b0b8cbc40de0ad29f46edd50b897c6e7fba79366a0217e3f48e2da8975056f6c35cfe19d9cc48f1d03c1dd + languageName: node + linkType: hard + +"@humanwhocodes/retry@npm:^0.4.1": + version: 0.4.1 + resolution: "@humanwhocodes/retry@npm:0.4.1" + checksum: f11167c28e8266faba470fd273cbaafe2827523492bc18c5623015adb7ed66f46b2e542e3d756fed9ca614300249267814220c2f5f03a59e07fdfa64fc14ad52 + languageName: node + linkType: hard + "@hutson/parse-repository-url@npm:^3.0.0": version: 3.0.2 resolution: "@hutson/parse-repository-url@npm:3.0.2" @@ -1621,6 +2087,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.34.6" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + "@rollup/rollup-android-arm64@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-android-arm64@npm:4.28.0" @@ -1628,6 +2101,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm64@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-android-arm64@npm:4.34.6" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-darwin-arm64@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-darwin-arm64@npm:4.28.0" @@ -1635,6 +2115,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-darwin-arm64@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-darwin-arm64@npm:4.34.6" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-darwin-x64@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-darwin-x64@npm:4.28.0" @@ -1642,6 +2129,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-darwin-x64@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-darwin-x64@npm:4.34.6" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@rollup/rollup-freebsd-arm64@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-freebsd-arm64@npm:4.28.0" @@ -1649,6 +2143,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-freebsd-arm64@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.34.6" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-freebsd-x64@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-freebsd-x64@npm:4.28.0" @@ -1656,6 +2157,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-freebsd-x64@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-freebsd-x64@npm:4.34.6" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + "@rollup/rollup-linux-arm-gnueabihf@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.28.0" @@ -1663,6 +2171,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm-gnueabihf@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.6" + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-arm-musleabihf@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.28.0" @@ -1670,6 +2185,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm-musleabihf@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.34.6" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + "@rollup/rollup-linux-arm64-gnu@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.28.0" @@ -1677,6 +2199,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm64-gnu@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.34.6" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-arm64-musl@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-arm64-musl@npm:4.28.0" @@ -1684,6 +2213,20 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm64-musl@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.34.6" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-loongarch64-gnu@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.34.6" + conditions: os=linux & cpu=loong64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-powerpc64le-gnu@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.28.0" @@ -1691,6 +2234,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.6" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-riscv64-gnu@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.28.0" @@ -1698,6 +2248,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-riscv64-gnu@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.34.6" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-s390x-gnu@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.28.0" @@ -1705,6 +2262,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-s390x-gnu@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.34.6" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-x64-gnu@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-x64-gnu@npm:4.28.0" @@ -1712,6 +2276,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-x64-gnu@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.34.6" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-x64-musl@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-linux-x64-musl@npm:4.28.0" @@ -1719,6 +2290,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-x64-musl@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.34.6" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + "@rollup/rollup-win32-arm64-msvc@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.28.0" @@ -1726,6 +2304,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-arm64-msvc@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.34.6" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-win32-ia32-msvc@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.28.0" @@ -1733,6 +2318,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-ia32-msvc@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.34.6" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@rollup/rollup-win32-x64-msvc@npm:4.28.0": version: 4.28.0 resolution: "@rollup/rollup-win32-x64-msvc@npm:4.28.0" @@ -1740,6 +2332,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-x64-msvc@npm:4.34.6": + version: 4.34.6 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.34.6" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@sigstore/bundle@npm:^2.3.2": version: 2.3.2 resolution: "@sigstore/bundle@npm:2.3.2" @@ -1831,6 +2430,47 @@ __metadata: languageName: node linkType: hard +"@types/babel__core@npm:^7.20.5": + version: 7.20.5 + resolution: "@types/babel__core@npm:7.20.5" + dependencies: + "@babel/parser": ^7.20.7 + "@babel/types": ^7.20.7 + "@types/babel__generator": "*" + "@types/babel__template": "*" + "@types/babel__traverse": "*" + checksum: a3226f7930b635ee7a5e72c8d51a357e799d19cbf9d445710fa39ab13804f79ab1a54b72ea7d8e504659c7dfc50675db974b526142c754398d7413aa4bc30845 + languageName: node + linkType: hard + +"@types/babel__generator@npm:*": + version: 7.6.8 + resolution: "@types/babel__generator@npm:7.6.8" + dependencies: + "@babel/types": ^7.0.0 + checksum: 5b332ea336a2efffbdeedb92b6781949b73498606ddd4205462f7d96dafd45ff3618770b41de04c4881e333dd84388bfb8afbdf6f2764cbd98be550d85c6bb48 + languageName: node + linkType: hard + +"@types/babel__template@npm:*": + version: 7.4.4 + resolution: "@types/babel__template@npm:7.4.4" + dependencies: + "@babel/parser": ^7.1.0 + "@babel/types": ^7.0.0 + checksum: d7a02d2a9b67e822694d8e6a7ddb8f2b71a1d6962dfd266554d2513eefbb205b33ca71a0d163b1caea3981ccf849211f9964d8bd0727124d18ace45aa6c9ae29 + languageName: node + linkType: hard + +"@types/babel__traverse@npm:*": + version: 7.20.6 + resolution: "@types/babel__traverse@npm:7.20.6" + dependencies: + "@babel/types": ^7.20.7 + checksum: 2bdc65eb62232c2d5c1086adeb0c31e7980e6fd7e50a3483b4a724a1a1029c84d9cb59749cf8de612f9afa2bc14c85b8f50e64e21f8a4398fa77eb9059a4283c + languageName: node + linkType: hard + "@types/create-react-class@npm:*": version: 15.6.8 resolution: "@types/create-react-class@npm:15.6.8" @@ -1868,7 +2508,14 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": +"@types/gensync@npm:^1.0.0": + version: 1.0.4 + resolution: "@types/gensync@npm:1.0.4" + checksum: 99c3aa0d3f1198973c7e51bea5947b815f3338ce89ce09a39ac8abb41cd844c5b95189da254ea45e50a395fe25fd215664d8ca76c5438814963597afb01f686e + languageName: node + linkType: hard + +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.15, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 @@ -1922,6 +2569,15 @@ __metadata: languageName: node linkType: hard +"@types/react-dom@npm:^19.0.3": + version: 19.0.3 + resolution: "@types/react-dom@npm:19.0.3" + peerDependencies: + "@types/react": ^19.0.0 + checksum: a253931fc3a41a74ef99a7380fa3fa02b94ddd1addba9fc0aea39c90ce3dfb22d60fbac292669de224b1ffb23836cde3cc78c2425f0c77593435b6368a9fd2ed + languageName: node + linkType: hard + "@types/react@npm:*, @types/react@npm:^18.0.26": version: 18.3.13 resolution: "@types/react@npm:18.3.13" @@ -1932,6 +2588,15 @@ __metadata: languageName: node linkType: hard +"@types/react@npm:^19.0.8": + version: 19.0.8 + resolution: "@types/react@npm:19.0.8" + dependencies: + csstype: ^3.0.2 + checksum: 80dd2e7fa4b3e0ea2d883c21317563f4af1c4d90a6250c8bcbc052079304dc3335369267026004ed5d7cac09c7b0026e02e71ae5cca3150643507e353219fe47 + languageName: node + linkType: hard + "@types/semver@npm:^7.5.0": version: 7.5.8 resolution: "@types/semver@npm:7.5.8" @@ -1957,6 +2622,27 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/eslint-plugin@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.24.0" + dependencies: + "@eslint-community/regexpp": ^4.10.0 + "@typescript-eslint/scope-manager": 8.24.0 + "@typescript-eslint/type-utils": 8.24.0 + "@typescript-eslint/utils": 8.24.0 + "@typescript-eslint/visitor-keys": 8.24.0 + graphemer: ^1.4.0 + ignore: ^5.3.1 + natural-compare: ^1.4.0 + ts-api-utils: ^2.0.1 + peerDependencies: + "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.8.0" + checksum: 761440236a38d51825ac22ab84fc2d054b307a1f2b7ad308bd12da2420f6d5844fdc4f44c0cd9dd30087ca2c7ecfca90b75744f119a1049b2e66533598a51900 + languageName: node + linkType: hard + "@typescript-eslint/eslint-plugin@npm:^6.1.0": version: 6.21.0 resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" @@ -1982,6 +2668,22 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/parser@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/parser@npm:8.24.0" + dependencies: + "@typescript-eslint/scope-manager": 8.24.0 + "@typescript-eslint/types": 8.24.0 + "@typescript-eslint/typescript-estree": 8.24.0 + "@typescript-eslint/visitor-keys": 8.24.0 + debug: ^4.3.4 + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.8.0" + checksum: e9f53b152baaae042df3ca6faa55279d8219e03234688b96516bbe617ecb6fa037f137fb5b37417a5e7e67e388fc7d89c0333767b493c5f591f8e99bce9039d6 + languageName: node + linkType: hard + "@typescript-eslint/parser@npm:^6.1.0": version: 6.21.0 resolution: "@typescript-eslint/parser@npm:6.21.0" @@ -2010,6 +2712,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/scope-manager@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/scope-manager@npm:8.24.0" + dependencies: + "@typescript-eslint/types": 8.24.0 + "@typescript-eslint/visitor-keys": 8.24.0 + checksum: 1b24d972847458dd4b031e66006c534ae176d60806d3265f0d2a5686bdc3dec9c0353ea94373a855eaf7e9306304eef939781eda1a9b826633c835bceb0fce10 + languageName: node + linkType: hard + "@typescript-eslint/type-utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/type-utils@npm:6.21.0" @@ -2027,6 +2739,21 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/type-utils@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/type-utils@npm:8.24.0" + dependencies: + "@typescript-eslint/typescript-estree": 8.24.0 + "@typescript-eslint/utils": 8.24.0 + debug: ^4.3.4 + ts-api-utils: ^2.0.1 + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.8.0" + checksum: 81322b0ebc0c7ce1396732497403c3c0f18b8d5f74b697d9288becfd414ac3bf8f7886191f82ef32772ce60a382c793142870a17364f013f9344b1cf24fd6a65 + languageName: node + linkType: hard + "@typescript-eslint/types@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/types@npm:6.21.0" @@ -2034,6 +2761,13 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/types@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/types@npm:8.24.0" + checksum: 31548119787c7429107a0061f5c82a2ae2b29905fbb5e867f621cea0c00fbe35b3c5ee5961936127d11226461e2248b09c8467959c8c387caa72f15d21293814 + languageName: node + linkType: hard + "@typescript-eslint/typescript-estree@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" @@ -2053,6 +2787,24 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/typescript-estree@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.24.0" + dependencies: + "@typescript-eslint/types": 8.24.0 + "@typescript-eslint/visitor-keys": 8.24.0 + debug: ^4.3.4 + fast-glob: ^3.3.2 + is-glob: ^4.0.3 + minimatch: ^9.0.4 + semver: ^7.6.0 + ts-api-utils: ^2.0.1 + peerDependencies: + typescript: ">=4.8.4 <5.8.0" + checksum: 7415a35edc898f25443b9bbb8ec100cff54f8eafe6379348213e8958aa593981298252730b912da2a99c24e4784f23b4e32c6f56420857975bcb076e13467e00 + languageName: node + linkType: hard + "@typescript-eslint/utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/utils@npm:6.21.0" @@ -2070,6 +2822,21 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/utils@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/utils@npm:8.24.0" + dependencies: + "@eslint-community/eslint-utils": ^4.4.0 + "@typescript-eslint/scope-manager": 8.24.0 + "@typescript-eslint/types": 8.24.0 + "@typescript-eslint/typescript-estree": 8.24.0 + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.8.0" + checksum: de2897d1d2d878b86289d039a4f2b57c8f6ef88b1b48946697ca6422b10041a78f989cfa09b9b73106963bf1ed12a5081e14c3cfb6bb1b537fc8cd2b726ab73e + languageName: node + linkType: hard + "@typescript-eslint/visitor-keys@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" @@ -2080,6 +2847,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/visitor-keys@npm:8.24.0": + version: 8.24.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.24.0" + dependencies: + "@typescript-eslint/types": 8.24.0 + eslint-visitor-keys: ^4.2.0 + checksum: c07ef21d5de644ca34802f95dc742cde75422210d80456e1e9d6f4a6cee21a1332af3bc90e62f2ca4f9e929eec9f0a25fda2043f2bdeb0acd3feab206f2a73af + languageName: node + linkType: hard + "@ungap/structured-clone@npm:^1.2.0": version: 1.2.0 resolution: "@ungap/structured-clone@npm:1.2.0" @@ -2087,6 +2864,21 @@ __metadata: languageName: node linkType: hard +"@vitejs/plugin-react@npm:^4.3.4": + version: 4.3.4 + resolution: "@vitejs/plugin-react@npm:4.3.4" + dependencies: + "@babel/core": ^7.26.0 + "@babel/plugin-transform-react-jsx-self": ^7.25.9 + "@babel/plugin-transform-react-jsx-source": ^7.25.9 + "@types/babel__core": ^7.20.5 + react-refresh: ^0.14.2 + peerDependencies: + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 + checksum: d417f40d9259a1d5193152f7d9fee081d5bf41cbeef9662ae1123ccc1e26aa4b6b04bc82ebb8c4fbfde9516a746fb3af7da19fdd449819c30f0631daaa10a44b + languageName: node + linkType: hard + "@webassemblyjs/ast@npm:1.14.1, @webassemblyjs/ast@npm:^1.14.1": version: 1.14.1 resolution: "@webassemblyjs/ast@npm:1.14.1" @@ -3274,6 +4066,13 @@ __metadata: languageName: node linkType: hard +"convert-source-map@npm:^2.0.0": + version: 2.0.0 + resolution: "convert-source-map@npm:2.0.0" + checksum: 63ae9933be5a2b8d4509daca5124e20c14d023c820258e484e32dc324d34c2754e71297c94a05784064ad27615037ef677e3f0c00469fb55f409d2bb21261035 + languageName: node + linkType: hard + "core-util-is@npm:~1.0.0": version: 1.0.3 resolution: "core-util-is@npm:1.0.3" @@ -3328,7 +4127,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3, cross-spawn@npm:^7.0.6": version: 7.0.6 resolution: "cross-spawn@npm:7.0.6" dependencies: @@ -3473,6 +4272,18 @@ __metadata: languageName: node linkType: hard +"debug@npm:^4.1.0": + version: 4.4.0 + resolution: "debug@npm:4.4.0" + dependencies: + ms: ^2.1.3 + peerDependenciesMeta: + supports-color: + optional: true + checksum: fb42df878dd0e22816fc56e1fdca9da73caa85212fbe40c868b1295a6878f9101ae684f4eeef516c13acfc700f5ea07f1136954f43d4cd2d477a811144136479 + languageName: node + linkType: hard + "decamelize-keys@npm:^1.1.0": version: 1.1.1 resolution: "decamelize-keys@npm:1.1.1" @@ -3568,6 +4379,26 @@ __metadata: languageName: node linkType: hard +"demo-react@workspace:demo-react": + version: 0.0.0-use.local + resolution: "demo-react@workspace:demo-react" + dependencies: + "@eslint/js": ^9.19.0 + "@types/react": ^19.0.8 + "@types/react-dom": ^19.0.3 + "@vitejs/plugin-react": ^4.3.4 + eslint: ^9.19.0 + eslint-plugin-react-hooks: ^5.0.0 + eslint-plugin-react-refresh: ^0.4.18 + globals: ^15.14.0 + react: ^19.0.0 + react-dom: ^19.0.0 + typescript: ~5.7.2 + typescript-eslint: ^8.22.0 + vite: ^6.1.0 + languageName: unknown + linkType: soft + "deprecation@npm:^2.0.0": version: 2.3.1 resolution: "deprecation@npm:2.3.1" @@ -4007,7 +4838,93 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: dd386d92a05c7eb03078480522cdd8b40c434777b5f08487c27971d30933ecaae3f08bd221958dd8f9c66214915cdc85f844283ca9bdbf8ee703d889ae526edd + checksum: dd386d92a05c7eb03078480522cdd8b40c434777b5f08487c27971d30933ecaae3f08bd221958dd8f9c66214915cdc85f844283ca9bdbf8ee703d889ae526edd + languageName: node + linkType: hard + +"esbuild@npm:^0.24.2": + version: 0.24.2 + resolution: "esbuild@npm:0.24.2" + dependencies: + "@esbuild/aix-ppc64": 0.24.2 + "@esbuild/android-arm": 0.24.2 + "@esbuild/android-arm64": 0.24.2 + "@esbuild/android-x64": 0.24.2 + "@esbuild/darwin-arm64": 0.24.2 + "@esbuild/darwin-x64": 0.24.2 + "@esbuild/freebsd-arm64": 0.24.2 + "@esbuild/freebsd-x64": 0.24.2 + "@esbuild/linux-arm": 0.24.2 + "@esbuild/linux-arm64": 0.24.2 + "@esbuild/linux-ia32": 0.24.2 + "@esbuild/linux-loong64": 0.24.2 + "@esbuild/linux-mips64el": 0.24.2 + "@esbuild/linux-ppc64": 0.24.2 + "@esbuild/linux-riscv64": 0.24.2 + "@esbuild/linux-s390x": 0.24.2 + "@esbuild/linux-x64": 0.24.2 + "@esbuild/netbsd-arm64": 0.24.2 + "@esbuild/netbsd-x64": 0.24.2 + "@esbuild/openbsd-arm64": 0.24.2 + "@esbuild/openbsd-x64": 0.24.2 + "@esbuild/sunos-x64": 0.24.2 + "@esbuild/win32-arm64": 0.24.2 + "@esbuild/win32-ia32": 0.24.2 + "@esbuild/win32-x64": 0.24.2 + dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-arm64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-arm64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: e2303f8331887e31330b5a972fb9640ad93dfc5af76cb2156faa9eaa32bac5c403244096cbdafc45622829913e63664dfd88410987e3468df4354492f908a094 languageName: node linkType: hard @@ -4063,6 +4980,24 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-react-hooks@npm:^5.0.0": + version: 5.1.0 + resolution: "eslint-plugin-react-hooks@npm:5.1.0" + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 + checksum: 14d2692214ea15b19ef330a9abf51cb8c1586339d9e758ebd61b182be68dd772af56462b04e4b9d2be923d72f46db61e8d32fcf37c248b04949c0b02f5bfb3c0 + languageName: node + linkType: hard + +"eslint-plugin-react-refresh@npm:^0.4.18": + version: 0.4.19 + resolution: "eslint-plugin-react-refresh@npm:0.4.19" + peerDependencies: + eslint: ">=8.40" + checksum: b676d7d5a149329d4eb7359711d1efa553e3b83f4070e8ae03121ba26bd051b7e3d70d89fa847e97abdc91319066c443ac72d86976d3844012e72e32dad9e883 + languageName: node + linkType: hard + "eslint-scope@npm:5.1.1": version: 5.1.1 resolution: "eslint-scope@npm:5.1.1" @@ -4083,6 +5018,16 @@ __metadata: languageName: node linkType: hard +"eslint-scope@npm:^8.2.0": + version: 8.2.0 + resolution: "eslint-scope@npm:8.2.0" + dependencies: + esrecurse: ^4.3.0 + estraverse: ^5.2.0 + checksum: 750eff4672ca2bf274ec0d1bbeae08aadd53c1907d5c6aff5564d8e047a5f49afa8ae6eee333cab637fd3ebcab2141659d8f2f040f6fdc982b0f61f8bf03136f + languageName: node + linkType: hard + "eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" @@ -4090,6 +5035,13 @@ __metadata: languageName: node linkType: hard +"eslint-visitor-keys@npm:^4.2.0": + version: 4.2.0 + resolution: "eslint-visitor-keys@npm:4.2.0" + checksum: 779c604672b570bb4da84cef32f6abb085ac78379779c1122d7879eade8bb38ae715645324597cf23232d03cef06032c9844d25c73625bc282a5bfd30247e5b5 + languageName: node + linkType: hard + "eslint@npm:^8.36.0": version: 8.57.1 resolution: "eslint@npm:8.57.1" @@ -4138,6 +5090,66 @@ __metadata: languageName: node linkType: hard +"eslint@npm:^9.19.0": + version: 9.20.1 + resolution: "eslint@npm:9.20.1" + dependencies: + "@eslint-community/eslint-utils": ^4.2.0 + "@eslint-community/regexpp": ^4.12.1 + "@eslint/config-array": ^0.19.0 + "@eslint/core": ^0.11.0 + "@eslint/eslintrc": ^3.2.0 + "@eslint/js": 9.20.0 + "@eslint/plugin-kit": ^0.2.5 + "@humanfs/node": ^0.16.6 + "@humanwhocodes/module-importer": ^1.0.1 + "@humanwhocodes/retry": ^0.4.1 + "@types/estree": ^1.0.6 + "@types/json-schema": ^7.0.15 + ajv: ^6.12.4 + chalk: ^4.0.0 + cross-spawn: ^7.0.6 + debug: ^4.3.2 + escape-string-regexp: ^4.0.0 + eslint-scope: ^8.2.0 + eslint-visitor-keys: ^4.2.0 + espree: ^10.3.0 + esquery: ^1.5.0 + esutils: ^2.0.2 + fast-deep-equal: ^3.1.3 + file-entry-cache: ^8.0.0 + find-up: ^5.0.0 + glob-parent: ^6.0.2 + ignore: ^5.2.0 + imurmurhash: ^0.1.4 + is-glob: ^4.0.0 + json-stable-stringify-without-jsonify: ^1.0.1 + lodash.merge: ^4.6.2 + minimatch: ^3.1.2 + natural-compare: ^1.4.0 + optionator: ^0.9.3 + peerDependencies: + jiti: "*" + peerDependenciesMeta: + jiti: + optional: true + bin: + eslint: bin/eslint.js + checksum: 561d24faa8438ef8a9bfbbde3de60f1d1b91171cd1c910b4581b8c8fb6e2e97fc42685fba66fefb3577b95237f05ae4e752afa24943a114d488448fed47eaa03 + languageName: node + linkType: hard + +"espree@npm:^10.0.1, espree@npm:^10.3.0": + version: 10.3.0 + resolution: "espree@npm:10.3.0" + dependencies: + acorn: ^8.14.0 + acorn-jsx: ^5.3.2 + eslint-visitor-keys: ^4.2.0 + checksum: 63e8030ff5a98cea7f8b3e3a1487c998665e28d674af08b9b3100ed991670eb3cbb0e308c4548c79e03762753838fbe530c783f17309450d6b47a889fee72bef + languageName: node + linkType: hard + "espree@npm:^9.6.0, espree@npm:^9.6.1": version: 9.6.1 resolution: "espree@npm:9.6.1" @@ -4159,7 +5171,7 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.2": +"esquery@npm:^1.4.2, esquery@npm:^1.5.0": version: 1.6.0 resolution: "esquery@npm:1.6.0" dependencies: @@ -4281,6 +5293,19 @@ __metadata: languageName: node linkType: hard +"fast-glob@npm:^3.3.2": + version: 3.3.3 + resolution: "fast-glob@npm:3.3.3" + dependencies: + "@nodelib/fs.stat": ^2.0.2 + "@nodelib/fs.walk": ^1.2.3 + glob-parent: ^5.1.2 + merge2: ^1.3.0 + micromatch: ^4.0.8 + checksum: 0704d7b85c0305fd2cef37777337dfa26230fdd072dce9fb5c82a4b03156f3ffb8ed3e636033e65d45d2a5805a4e475825369a27404c0307f2db0c8eb3366fbd + languageName: node + linkType: hard + "fast-json-stable-stringify@npm:^2.0.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" @@ -4345,6 +5370,15 @@ __metadata: languageName: node linkType: hard +"file-entry-cache@npm:^8.0.0": + version: 8.0.0 + resolution: "file-entry-cache@npm:8.0.0" + dependencies: + flat-cache: ^4.0.0 + checksum: f67802d3334809048c69b3d458f672e1b6d26daefda701761c81f203b80149c35dea04d78ea4238969dd617678e530876722a0634c43031a0957f10cc3ed190f + languageName: node + linkType: hard + "filelist@npm:^1.0.4": version: 1.0.4 resolution: "filelist@npm:1.0.4" @@ -4410,6 +5444,16 @@ __metadata: languageName: node linkType: hard +"flat-cache@npm:^4.0.0": + version: 4.0.1 + resolution: "flat-cache@npm:4.0.1" + dependencies: + flatted: ^3.2.9 + keyv: ^4.5.4 + checksum: 899fc86bf6df093547d76e7bfaeb900824b869d7d457d02e9b8aae24836f0a99fbad79328cfd6415ee8908f180699bf259dc7614f793447cb14f707caf5996f6 + languageName: node + linkType: hard + "flat@npm:^5.0.2": version: 5.0.2 resolution: "flat@npm:5.0.2" @@ -4581,6 +5625,13 @@ __metadata: languageName: node linkType: hard +"gensync@npm:^1.0.0-beta.2": + version: 1.0.0-beta.2 + resolution: "gensync@npm:1.0.0-beta.2" + checksum: a7437e58c6be12aa6c90f7730eac7fa9833dc78872b4ad2963d2031b00a3367a93f98aec75f9aaac7220848e4026d67a8655e870b24f20a543d103c0d65952ec + languageName: node + linkType: hard + "get-caller-file@npm:^2.0.5": version: 2.0.5 resolution: "get-caller-file@npm:2.0.5" @@ -4811,6 +5862,13 @@ __metadata: languageName: node linkType: hard +"globals@npm:^11.1.0": + version: 11.12.0 + resolution: "globals@npm:11.12.0" + checksum: 67051a45eca3db904aee189dfc7cd53c20c7d881679c93f6146ddd4c9f4ab2268e68a919df740d39c71f4445d2b38ee360fc234428baea1dbdfe68bbcb46979e + languageName: node + linkType: hard + "globals@npm:^13.19.0": version: 13.24.0 resolution: "globals@npm:13.24.0" @@ -4820,6 +5878,20 @@ __metadata: languageName: node linkType: hard +"globals@npm:^14.0.0": + version: 14.0.0 + resolution: "globals@npm:14.0.0" + checksum: 534b8216736a5425737f59f6e6a5c7f386254560c9f41d24a9227d60ee3ad4a9e82c5b85def0e212e9d92162f83a92544be4c7fd4c902cb913736c10e08237ac + languageName: node + linkType: hard + +"globals@npm:^15.14.0": + version: 15.15.0 + resolution: "globals@npm:15.15.0" + checksum: a2a92199a112db00562a2f85eeef2a7e3943e171f7f7d9b17dfa9231e35fd612588f3c199d1509ab1757273467e413b08c80424cf6e399e96acdaf93deb3ee88 + languageName: node + linkType: hard + "globalthis@npm:^1.0.4": version: 1.0.4 resolution: "globalthis@npm:1.0.4" @@ -5089,7 +6161,7 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.0.4, ignore@npm:^5.2.0, ignore@npm:^5.2.4": +"ignore@npm:^5.0.4, ignore@npm:^5.2.0, ignore@npm:^5.2.4, ignore@npm:^5.3.1": version: 5.3.2 resolution: "ignore@npm:5.3.2" checksum: 2acfd32a573260ea522ea0bfeff880af426d68f6831f973129e2ba7363f422923cf53aab62f8369cbf4667c7b25b6f8a3761b34ecdb284ea18e87a5262a865be @@ -5745,6 +6817,15 @@ __metadata: languageName: node linkType: hard +"jsesc@npm:^3.0.2": + version: 3.1.0 + resolution: "jsesc@npm:3.1.0" + bin: + jsesc: bin/jsesc + checksum: 19c94095ea026725540c0d29da33ab03144f6bcf2d4159e4833d534976e99e0c09c38cefa9a575279a51fc36b31166f8d6d05c9fe2645d5f15851d690b41f17f + languageName: node + linkType: hard + "json-buffer@npm:3.0.1": version: 3.0.1 resolution: "json-buffer@npm:3.0.1" @@ -5945,7 +7026,7 @@ __metadata: languageName: node linkType: hard -"keyv@npm:^4.5.3": +"keyv@npm:^4.5.3, keyv@npm:^4.5.4": version: 4.5.4 resolution: "keyv@npm:4.5.4" dependencies: @@ -6275,6 +7356,15 @@ __metadata: languageName: node linkType: hard +"lru-cache@npm:^5.1.1": + version: 5.1.1 + resolution: "lru-cache@npm:5.1.1" + dependencies: + yallist: ^3.0.2 + checksum: c154ae1cbb0c2206d1501a0e94df349653c92c8cbb25236d7e85190bcaf4567a03ac6eb43166fabfa36fd35623694da7233e88d9601fbf411a9a481d85dbd2cb + languageName: node + linkType: hard + "lru-cache@npm:^6.0.0": version: 6.0.0 resolution: "lru-cache@npm:6.0.0" @@ -6439,7 +7529,7 @@ __metadata: languageName: node linkType: hard -"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5": +"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": version: 4.0.8 resolution: "micromatch@npm:4.0.8" dependencies: @@ -6747,7 +7837,7 @@ __metadata: languageName: node linkType: hard -"nanoid@npm:^3.3.7": +"nanoid@npm:^3.3.7, nanoid@npm:^3.3.8": version: 3.3.8 resolution: "nanoid@npm:3.3.8" bin: @@ -7732,6 +8822,17 @@ __metadata: languageName: node linkType: hard +"postcss@npm:^8.5.1": + version: 8.5.2 + resolution: "postcss@npm:8.5.2" + dependencies: + nanoid: ^3.3.8 + picocolors: ^1.1.1 + source-map-js: ^1.2.1 + checksum: 5097c458ce792d38bb93cb245f8603804b48087540b9d0e42d612f6d0bd7add4b47848cb9bc2a5ee388f70e45a1546fa7471b84697ab95aa8206aa3989fea611 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -7924,6 +9025,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: ^0.25.0 + peerDependencies: + react: ^19.0.0 + checksum: 009cc6e575263a0d1906f9dd4aa6532d2d3d0d71e4c2b7777c8fe4de585fa06b5b77cdc2e0fbaa2f3a4a5e5d3305c189ba152153f358ee7da4d9d9ba5d3a8975 + languageName: node + linkType: hard + "react-is@npm:^16.13.1": version: 16.13.1 resolution: "react-is@npm:16.13.1" @@ -7938,6 +9050,13 @@ __metadata: languageName: node linkType: hard +"react-refresh@npm:^0.14.2": + version: 0.14.2 + resolution: "react-refresh@npm:0.14.2" + checksum: d80db4bd40a36dab79010dc8aa317a5b931f960c0d83c4f3b81f0552cbcf7f29e115b84bb7908ec6a1eb67720fff7023084eff73ece8a7ddc694882478464382 + languageName: node + linkType: hard + "react@npm:>=17.0.0 <19.0.0, react@npm:^18.2.0": version: 18.3.1 resolution: "react@npm:18.3.1" @@ -7947,6 +9066,13 @@ __metadata: languageName: node linkType: hard +"react@npm:^19.0.0": + version: 19.0.0 + resolution: "react@npm:19.0.0" + checksum: 86de15d85b2465feb40297a90319c325cb07cf27191a361d47bcfe8c6126c973d660125aa67b8f4cbbe39f15a2f32efd0c814e98196d8e5b68c567ba40a399c6 + languageName: node + linkType: hard + "read-cmd-shim@npm:4.0.0, read-cmd-shim@npm:^4.0.0": version: 4.0.0 resolution: "read-cmd-shim@npm:4.0.0" @@ -8318,6 +9444,78 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.30.1": + version: 4.34.6 + resolution: "rollup@npm:4.34.6" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.34.6 + "@rollup/rollup-android-arm64": 4.34.6 + "@rollup/rollup-darwin-arm64": 4.34.6 + "@rollup/rollup-darwin-x64": 4.34.6 + "@rollup/rollup-freebsd-arm64": 4.34.6 + "@rollup/rollup-freebsd-x64": 4.34.6 + "@rollup/rollup-linux-arm-gnueabihf": 4.34.6 + "@rollup/rollup-linux-arm-musleabihf": 4.34.6 + "@rollup/rollup-linux-arm64-gnu": 4.34.6 + "@rollup/rollup-linux-arm64-musl": 4.34.6 + "@rollup/rollup-linux-loongarch64-gnu": 4.34.6 + "@rollup/rollup-linux-powerpc64le-gnu": 4.34.6 + "@rollup/rollup-linux-riscv64-gnu": 4.34.6 + "@rollup/rollup-linux-s390x-gnu": 4.34.6 + "@rollup/rollup-linux-x64-gnu": 4.34.6 + "@rollup/rollup-linux-x64-musl": 4.34.6 + "@rollup/rollup-win32-arm64-msvc": 4.34.6 + "@rollup/rollup-win32-ia32-msvc": 4.34.6 + "@rollup/rollup-win32-x64-msvc": 4.34.6 + "@types/estree": 1.0.6 + fsevents: ~2.3.2 + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-freebsd-arm64": + optional: true + "@rollup/rollup-freebsd-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm-musleabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-loongarch64-gnu": + optional: true + "@rollup/rollup-linux-powerpc64le-gnu": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-s390x-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: e31e6a6de50931591b78a310a52d9700ad8ff39f19ebea8e6d496d68596948fcaba6aa4d380bff2be50b198ac678efaa64d9b9963299fb02885f8c863341cc05 + languageName: node + linkType: hard + "run-async@npm:^2.4.0": version: 2.4.1 resolution: "run-async@npm:2.4.1" @@ -8410,6 +9608,13 @@ __metadata: languageName: node linkType: hard +"scheduler@npm:^0.25.0": + version: 0.25.0 + resolution: "scheduler@npm:0.25.0" + checksum: b7bb9fddbf743e521e9aaa5198a03ae823f5e104ebee0cb9ec625392bb7da0baa1c28ab29cee4b1e407a94e76acc6eee91eeb749614f91f853efda2613531566 + languageName: node + linkType: hard + "schema-utils@npm:^2.7.0": version: 2.7.1 resolution: "schema-utils@npm:2.7.1" @@ -8453,6 +9658,15 @@ __metadata: languageName: node linkType: hard +"semver@npm:^6.3.1": + version: 6.3.1 + resolution: "semver@npm:6.3.1" + bin: + semver: bin/semver.js + checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2 + languageName: node + linkType: hard + "semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": version: 7.6.3 resolution: "semver@npm:7.6.3" @@ -8462,6 +9676,15 @@ __metadata: languageName: node linkType: hard +"semver@npm:^7.6.0": + version: 7.7.1 + resolution: "semver@npm:7.7.1" + bin: + semver: bin/semver.js + checksum: 586b825d36874007c9382d9e1ad8f93888d8670040add24a28e06a910aeebd673a2eb9e3bf169c6679d9245e66efb9057e0852e70d9daa6c27372aab1dda7104 + languageName: node + linkType: hard + "serialize-javascript@npm:^6.0.1": version: 6.0.2 resolution: "serialize-javascript@npm:6.0.2" @@ -9339,6 +10562,15 @@ __metadata: languageName: node linkType: hard +"ts-api-utils@npm:^2.0.1": + version: 2.0.1 + resolution: "ts-api-utils@npm:2.0.1" + peerDependencies: + typescript: ">=4.8.4" + checksum: ca31f4dc3c0d69691599de2955b41879c27cb91257f2a468bbb444d3f09982a5f717a941fcebd3aaa092b778710647a0be1c2b1dd75cf6c82ceffc3bf4c7d27d + languageName: node + linkType: hard + "tsconfig-paths@npm:^4.1.2": version: 4.2.0 resolution: "tsconfig-paths@npm:4.2.0" @@ -9493,6 +10725,20 @@ __metadata: languageName: node linkType: hard +"typescript-eslint@npm:^8.22.0": + version: 8.24.0 + resolution: "typescript-eslint@npm:8.24.0" + dependencies: + "@typescript-eslint/eslint-plugin": 8.24.0 + "@typescript-eslint/parser": 8.24.0 + "@typescript-eslint/utils": 8.24.0 + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.8.0" + checksum: 96587b657e0f73e2bdbf0cde504e7a020511be21785397fddff74fb00795c3e36d79b72d5df091430db4b18aefe1e507998d9f456d070b1b7ea86c3da2273bec + languageName: node + linkType: hard + "typescript@npm:>=3 < 6": version: 5.7.2 resolution: "typescript@npm:5.7.2" @@ -9523,6 +10769,16 @@ __metadata: languageName: node linkType: hard +"typescript@npm:~5.7.2": + version: 5.7.3 + resolution: "typescript@npm:5.7.3" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 6c38b1e989918e576f0307e6ee013522ea480dfce5f3ca85c9b2d8adb1edeffd37f4f30cd68de0c38a44563d12ba922bdb7e36aa2dac9c51de5d561e6e9a2e9c + languageName: node + linkType: hard + "typescript@patch:typescript@>=3 < 6#~builtin": version: 5.7.2 resolution: "typescript@patch:typescript@npm%3A5.7.2#~builtin::version=5.7.2&hash=85af82" @@ -9553,6 +10809,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@~5.7.2#~builtin": + version: 5.7.3 + resolution: "typescript@patch:typescript@npm%3A5.7.3#~builtin::version=5.7.3&hash=85af82" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 633cd749d6cd7bc842c6b6245847173bba99742a60776fae3c0fbcc0d1733cd51a733995e5f4dadd8afb0e64e57d3c7dbbeae953a072ee303940eca69e22f311 + languageName: node + linkType: hard + "typestyle@npm:^2.0.4": version: 2.4.0 resolution: "typestyle@npm:2.4.0" @@ -9806,6 +11072,58 @@ __metadata: languageName: node linkType: hard +"vite@npm:^6.1.0": + version: 6.1.0 + resolution: "vite@npm:6.1.0" + dependencies: + esbuild: ^0.24.2 + fsevents: ~2.3.3 + postcss: ^8.5.1 + rollup: ^4.30.1 + peerDependencies: + "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: ">=1.21.0" + less: "*" + lightningcss: ^1.21.0 + sass: "*" + sass-embedded: "*" + stylus: "*" + sugarss: "*" + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + "@types/node": + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + bin: + vite: bin/vite.js + checksum: ed0b5385546d0dafe7bd91e94679aa4ca9064d29a8fd8cb8f9baea388fc049504a83cecd9bae41d19ae025b8b4fd621f1ec6c41255e9bf8c872fd9fa94b9cd42 + languageName: node + linkType: hard + "walk-up-path@npm:^3.0.1": version: 3.0.1 resolution: "walk-up-path@npm:3.0.1" @@ -10241,6 +11559,13 @@ __metadata: languageName: node linkType: hard +"yallist@npm:^3.0.2": + version: 3.1.1 + resolution: "yallist@npm:3.1.1" + checksum: 48f7bb00dc19fc635a13a39fe547f527b10c9290e7b3e836b9a8f1ca04d4d342e85714416b3c2ab74949c9c66f9cebb0473e6bc353b79035356103b47641285d + languageName: node + linkType: hard + "yallist@npm:^4.0.0": version: 4.0.0 resolution: "yallist@npm:4.0.0" From d0032f5f4016146ed5166396ac9154b0c5103bc6 Mon Sep 17 00:00:00 2001 From: Greg Date: Thu, 13 Feb 2025 15:03:25 +0100 Subject: [PATCH 02/38] wip --- .gitignore | 2 + demo-react/.gitignore | 2 +- demo-react/jupyter_server_config.py | 15 ++ demo-react/package.json | 15 +- demo-react/src/App.tsx | 88 ++++++--- demo-react/src/Instructions.tsx | 193 ++++++++++++++++++ demo-react/src/JupyterIframe.tsx | 13 ++ demo-react/src/ListCommands.tsx | 50 +++++ demo-react/src/index.css | 290 +++++++++++++++++++++++----- demo-react/tsconfig.app.json | 4 +- demo-react/tsconfig.node.json | 4 +- yarn.lock | 1 + 12 files changed, 593 insertions(+), 84 deletions(-) create mode 100644 demo-react/jupyter_server_config.py create mode 100644 demo-react/src/Instructions.tsx create mode 100644 demo-react/src/JupyterIframe.tsx create mode 100644 demo-react/src/ListCommands.tsx diff --git a/.gitignore b/.gitignore index 8fc864f..21c11fd 100644 --- a/.gitignore +++ b/.gitignore @@ -137,3 +137,5 @@ Untitled*.ipynb # Pixi environments .pixi + +.vscode/* diff --git a/demo-react/.gitignore b/demo-react/.gitignore index a547bf3..54f07af 100644 --- a/demo-react/.gitignore +++ b/demo-react/.gitignore @@ -21,4 +21,4 @@ dist-ssr *.ntvs* *.njsproj *.sln -*.sw? +*.sw? \ No newline at end of file diff --git a/demo-react/jupyter_server_config.py b/demo-react/jupyter_server_config.py new file mode 100644 index 0000000..414d82b --- /dev/null +++ b/demo-react/jupyter_server_config.py @@ -0,0 +1,15 @@ +# do not open JupyterLab in a browser after starting +c.ServerApp.open_browser = False + +# disable the token for easier testing in an IFrame +c.ServerApp.token = "" + +# Allow embedding JupyterLab in an IFrame from a specific host +c.ServerApp.tornado_settings = { + "headers": { + "Content-Security-Policy": "frame-ancestors 'self' http://localhost:8080 http://127.0.0.1:8080" + } +} +c.ServerApp.allow_origin = "http://localhost:8080" + +c.ServerApp.disable_check_xsrf = True diff --git a/demo-react/package.json b/demo-react/package.json index 74285fb..9147aa7 100644 --- a/demo-react/package.json +++ b/demo-react/package.json @@ -4,12 +4,19 @@ "version": "0.0.0", "type": "module", "scripts": { - "dev": "vite", - "build": "tsc -b && vite build", - "lint": "eslint .", - "preview": "vite preview" + "dev": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite", + "build": "tsc && VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite build --base=./", + "build:ghpages": "tsc && VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite build --base=./", + "build:lite": "jlpm clean:lite && jupyter lite build --contents ../README.md --contents ./example.ipynb --lite-dir ./config --output-dir ./public/lite", + "clean:lite": "rm -rf public/lite", + "preview": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite preview", + "start:lab": "jupyter lab --config jupyter_server_config.py", + "start:lite": "jlpm dev", + "start:local": "VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite --port 8080", + "lint": "eslint ." }, "dependencies": { + "jupyter-iframe-commands-host": "^0.1.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index 3d7ded3..0760270 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -1,35 +1,71 @@ -import { useState } from 'react' -import reactLogo from './assets/react.svg' -import viteLogo from '/vite.svg' -import './App.css' +import { createBridge } from 'jupyter-iframe-commands-host'; +import { useEffect, useState } from 'react'; +import Instructions from './Instructions'; +import JupyterIframe from './JupyterIframe'; +import ListCommands from './ListCommands'; function App() { - const [count, setCount] = useState(0) + const commandBridge = createBridge({ iframeId: 'jupyterlab' }); + + const [commands, setCommands] = useState([]); + + useEffect(() => { + const fetchCommands = async () => { + const commands = await commandBridge.listCommands(); + commands.sort(); + + console.log('commands', commands); + + setCommands(commands); + }; + + fetchCommands(); + }, []); return ( <> - -

Vite + React

-
- -

- Edit src/App.tsx and save to test HMR -

+
+ {/* */} +

{import.meta.env.VITE_TITLE} Demo

+
+ + {/* */} + +
+ + +
+
+
+
+ + + +
+
-

- Click on the Vite and React logos to learn more -

+ - ) + ); } -export default App +export default App; diff --git a/demo-react/src/Instructions.tsx b/demo-react/src/Instructions.tsx new file mode 100644 index 0000000..0dd5ef8 --- /dev/null +++ b/demo-react/src/Instructions.tsx @@ -0,0 +1,193 @@ +import { useRef } from 'react'; +import './App.css'; + +interface IInstructionProps { + commandBridge: any; +} + +const Instructions = ({ commandBridge }: IInstructionProps) => { + const dialogRef = useRef(null); + const submitButtonRef = useRef(null); + + const submitCommand = async (command: string, args: string | undefined) => { + try { + await commandBridge.execute(command, args ? JSON.parse(args) : {}); + } catch (e) { + // document.getElementById('error-dialog').innerHTML = `${e}`; + // errorDialog.showModal(); + } + }; + const handleSubmit = async (e: any) => { + if (dialogRef.current && submitButtonRef.current) { + e.preventDefault(); + const select = document.getElementById( + 'command-select' + ) as HTMLSelectElement; + let command = select?.value; + + if (command) { + let args; + if (command.includes('Light') || command.includes('Dark')) { + args = `{"theme": "${command}"}`; + command = 'apputils:change-theme'; + } + await submitCommand(command, args); + } + dialogRef.current.close(); + } + }; + + const handleOpenDialog = () => { + if (dialogRef.current) { + dialogRef.current.showModal(); + } + }; + + const handleCloseDialog = () => { + if (dialogRef.current) { + dialogRef.current.close(); + } + }; + + return ( +
+ + + +
+
+

Instructions

+

+ To use this demo simply enter a command in the command input and + any arguments for that command in the args input. +

+

+ Click the{' '} + + List Available Commands + {' '} + button to see a list of available commands. +

+
+

+ Some commands are listed here for convenience: +

+
+
    +
  • application:toggle-left-area
  • +
  • apputils:activate-command-palette
  • +
  • apputils:display-shortcuts
  • +
  • notebook:create-new
  • +
+
+

+ And some with arguments: +

+
+
    +
  • + Command:{' '} + apputils:change-theme +
  • +
  • + Args:{' '} + {JSON.stringify({ theme: 'JupyterLab Light' })} +
  • +
    +
  • + Command:{' '} + apputils:change-theme +
  • +
  • + Args:{' '} + {JSON.stringify({ theme: 'JupyterLab Dark' })} +
  • +
+
+
+

+ For even more convenience you can also select a command from the + dropdown: +

+ +
+
+ + +
+
+
+ Check the{' '} + + README + {' '} + for more detailed instructions. +
+
+
+ ); +}; + +export default Instructions; diff --git a/demo-react/src/JupyterIframe.tsx b/demo-react/src/JupyterIframe.tsx new file mode 100644 index 0000000..a1dc269 --- /dev/null +++ b/demo-react/src/JupyterIframe.tsx @@ -0,0 +1,13 @@ +const JupyterIframe = () => { + return ( + + ); +}; + +export default JupyterIframe; diff --git a/demo-react/src/ListCommands.tsx b/demo-react/src/ListCommands.tsx new file mode 100644 index 0000000..167ec04 --- /dev/null +++ b/demo-react/src/ListCommands.tsx @@ -0,0 +1,50 @@ +// import { createBridge } from 'jupyter-iframe-commands-host'; +import { useRef } from 'react'; + +interface IListCommandsProps { + commands: string[]; +} + +const ListCommands = ({ commands }: IListCommandsProps) => { + const dialogRef = useRef(null); + + const handleOpenDialog = async () => { + if (dialogRef.current) { + dialogRef.current.showModal(); + } + }; + + const handleCloseDialog = () => { + if (dialogRef.current) { + dialogRef.current.close(); + } + }; + + return ( +
+ + + +

Available Commands

+
+ {commands.map(command => { + return
{command}
; + })} +
+
+ +
+
+
+ ); +}; + +export default ListCommands; diff --git a/demo-react/src/index.css b/demo-react/src/index.css index 6119ad9..73ca349 100644 --- a/demo-react/src/index.css +++ b/demo-react/src/index.css @@ -1,68 +1,260 @@ :root { - font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; - line-height: 1.5; - font-weight: 400; + --primary-color: #3498db; + --primary-hover: #2980b9; + --background-color: #f8f9fa; + --text-color: #2c3e50; + --border-color: #e0e0e0; +} - color-scheme: light dark; - color: rgba(255, 255, 255, 0.87); - background-color: #242424; +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, + 'Helvetica Neue', Arial, sans-serif; + color: var(--text-color); + background-color: var(--background-color); + display: flex; + flex-direction: column; +} - font-synthesis: none; - text-rendering: optimizeLegibility; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; +.demo-top { + display: flex; + flex-direction: column; + align-items: center; + padding: 1.5rem; + background-color: white; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } -a { - font-weight: 500; - color: #646cff; - text-decoration: inherit; +h1 { + margin: 0 0 1.5rem 0; + color: var(--text-color); + font-size: 2rem; + font-weight: 600; } -a:hover { - color: #535bf2; + +.input-area { + display: flex; + flex-direction: column; + gap: 1rem; + width: 100%; + max-width: 800px; } -body { - margin: 0; +#commands { display: flex; - place-items: center; - min-width: 320px; - min-height: 100vh; + gap: 1rem; + width: 100%; + flex-wrap: wrap; } -h1 { - font-size: 3.2em; - line-height: 1.1; +input[type='text'] { + flex: 1; + min-width: 200px; + padding: 0.75rem 1rem; + border: 1px solid var(--border-color); + border-radius: 6px; + font-size: 1rem; + transition: + border-color 0.2s, + box-shadow 0.2s; +} + +input[type='text']:focus { + outline: none; + border-color: var(--primary-color); + box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); +} + +.button-row { + display: flex; + gap: 1rem; + margin-bottom: 1.5rem; + justify-content: center; +} + +.button-row button { + padding: 0.5rem 1rem; + border: none; + border-radius: 4px; + cursor: pointer; + font-size: 1rem; + display: inline-flex; + align-items: center; + gap: 0.5rem; + color: inherit; } button { - border-radius: 8px; - border: 1px solid transparent; - padding: 0.6em 1.2em; - font-size: 1em; + padding: 0.75rem 1.5rem; + background-color: var(--primary-color); + color: white; + border: none; + border-radius: 6px; + font-size: 1rem; font-weight: 500; - font-family: inherit; - background-color: #1a1a1a; cursor: pointer; - transition: border-color 0.25s; + transition: + background-color 0.2s, + transform 0.1s; } + button:hover { - border-color: #646cff; -} -button:focus, -button:focus-visible { - outline: 4px auto -webkit-focus-ring-color; -} - -@media (prefers-color-scheme: light) { - :root { - color: #213547; - background-color: #ffffff; - } - a:hover { - color: #747bff; - } - button { - background-color: #f9f9f9; - } + background-color: var(--primary-hover); +} + +button:active { + transform: translateY(1px); +} + +#list-commands { + background-color: transparent; + color: var(--primary-color); + border: 1px solid var(--primary-color); +} + +#list-commands:hover { + background-color: rgba(52, 152, 219, 0.1); +} + +#instructions { + background-color: transparent; + color: var(--primary-color); + border: 1px solid var(--primary-color); +} + +#instructions:hover { + background-color: rgba(52, 152, 219, 0.1); +} + +/* Dialog styles */ +dialog { + padding: 2rem; + max-width: 600px; + border: none; + border-radius: 12px; + box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); + background: white; +} + +dialog::backdrop { + background: rgba(0, 0, 0, 0.6); + backdrop-filter: blur(2px); +} + +dialog form { + display: flex; + flex-direction: column; + gap: 1.5rem; +} + +dialog select { + width: 100%; + padding: 0.75rem; + border: 1px solid var(--border-color); + border-radius: 6px; + font-size: 1rem; + background-color: white; +} + +dialog select:focus { + outline: none; + border-color: var(--primary-color); + box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); +} + +dialog button[value='cancel'], +dialog button[value='close'] { + background-color: transparent; + color: var(--text-color); + border: 1px solid var(--border-color); + align-items: right; +} + +dialog button[value='cancel']:hover, +dialog button[value='close']:hover { + background-color: rgba(0, 0, 0, 0.05); +} + +.dialog-buttons { + display: flex; + justify-content: flex-end; + gap: 0.5rem; + margin-top: 1rem; +} + +#commands-list { + max-height: 300px; + overflow-y: auto; + padding: 0.5rem; + margin: -0.5rem 0; + font-family: monospace; +} + +#commands-list div { + padding: 0.25rem 0; +} + +/* Responsive iframe */ +#jupyterlab { + width: calc(100% - 0.5vw); + height: calc(100vh - 200px); + border: none; + border-radius: 8px; + margin-top: 0.25vw; + background-color: white; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); + align-self: center; +} + +.mode-toggle { + display: flex; + gap: 0; + align-items: center; + border-radius: 6px; + background-color: #f0f0f0; + border: 1px solid #e0e0e0; +} + +.mode-toggle label { + display: flex; + height: 100%; + align-items: center; + gap: 0.5rem; + cursor: pointer; + padding: 4px 12px; + border-radius: 4px; + transition: + background-color 0.2s, + color 0.2s; +} + +.mode-toggle label:hover { + background-color: #e4e4e4; +} + +.mode-toggle input[type='radio'] { + position: absolute; + opacity: 0; + width: 0; + height: 0; +} + +.mode-toggle input[type='radio']:checked + span { + color: white; +} + +.mode-toggle input[type='radio']:focus + span { + outline: 2px solid #3498db; + outline-offset: 2px; +} + +.mode-toggle label:has(input[type='radio']:checked) { + background-color: #3498db; + color: white; +} + +.mode-toggle span { + font-size: 0.9rem; + font-weight: 500; + user-select: none; } diff --git a/demo-react/tsconfig.app.json b/demo-react/tsconfig.app.json index 358ca9b..c2d501f 100644 --- a/demo-react/tsconfig.app.json +++ b/demo-react/tsconfig.app.json @@ -1,5 +1,6 @@ { "compilerOptions": { + "incremental": true, "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", "target": "ES2020", "useDefineForClassFields": true, @@ -19,8 +20,7 @@ "strict": true, "noUnusedLocals": true, "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true, - "noUncheckedSideEffectImports": true + "noFallthroughCasesInSwitch": true }, "include": ["src"] } diff --git a/demo-react/tsconfig.node.json b/demo-react/tsconfig.node.json index db0becc..a464d80 100644 --- a/demo-react/tsconfig.node.json +++ b/demo-react/tsconfig.node.json @@ -1,5 +1,6 @@ { "compilerOptions": { + "incremental": true, "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", "target": "ES2022", "lib": ["ES2023"], @@ -17,8 +18,7 @@ "strict": true, "noUnusedLocals": true, "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true, - "noUncheckedSideEffectImports": true + "noFallthroughCasesInSwitch": true }, "include": ["vite.config.ts"] } diff --git a/yarn.lock b/yarn.lock index e7aa0a2..2861b75 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4391,6 +4391,7 @@ __metadata: eslint-plugin-react-hooks: ^5.0.0 eslint-plugin-react-refresh: ^0.4.18 globals: ^15.14.0 + jupyter-iframe-commands-host: ^0.1.0 react: ^19.0.0 react-dom: ^19.0.0 typescript: ~5.7.2 From c937de6b4c18d56c59d34716975f2489877a6e89 Mon Sep 17 00:00:00 2001 From: Greg Date: Thu, 13 Feb 2025 17:07:36 +0100 Subject: [PATCH 03/38] wip --- .gitignore | 1 + demo-react/example.ipynb | 73 +++++++++++++++++++++++++++++++++ demo-react/src/App.tsx | 51 ++++++++++++----------- demo-react/src/Instructions.tsx | 41 +----------------- demo-react/src/ModeSelect.tsx | 64 +++++++++++++++++++++++++++++ packages/extension/src/index.ts | 11 +++++ 6 files changed, 178 insertions(+), 63 deletions(-) create mode 100644 demo-react/example.ipynb create mode 100644 demo-react/src/ModeSelect.tsx diff --git a/.gitignore b/.gitignore index 21c11fd..120798a 100644 --- a/.gitignore +++ b/.gitignore @@ -126,6 +126,7 @@ dmypy.json # lite build for demo demo/public/lite +demo-react/public/lite .jupyterlite.doit.db # nx cache files diff --git a/demo-react/example.ipynb b/demo-react/example.ipynb new file mode 100644 index 0000000..8f7e275 --- /dev/null +++ b/demo-react/example.ipynb @@ -0,0 +1,73 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example Notebook\n", + "\n", + "This is a simple example notebook that demonstrates basic Python functionality." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Create a simple list of numbers\n", + "numbers = list(range(1, 6))\n", + "print(f\"Numbers: {numbers}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Calculate the sum and average\n", + "total = sum(numbers)\n", + "average = total / len(numbers)\n", + "\n", + "print(f\"Sum: {total}\")\n", + "print(f\"Average: {average}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Create a simple multiplication table\n", + "n = 5\n", + "for i in range(1, n + 1):\n", + " for j in range(1, n + 1):\n", + " print(f\"{i * j:3}\", end=\" \")\n", + " print()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.8" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index 0760270..3bef269 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -3,46 +3,49 @@ import { useEffect, useState } from 'react'; import Instructions from './Instructions'; import JupyterIframe from './JupyterIframe'; import ListCommands from './ListCommands'; +import ModeToggle from './ModeSelect'; function App() { - const commandBridge = createBridge({ iframeId: 'jupyterlab' }); - const [commands, setCommands] = useState([]); + const [commandBridge, setCommandBridge] = useState(); useEffect(() => { - const fetchCommands = async () => { - const commands = await commandBridge.listCommands(); - commands.sort(); - - console.log('commands', commands); - - setCommands(commands); + window.onmessage = e => { + if (e.data === 'extension-loaded') { + // alert('got message'); + fetchCommands(); + } }; - fetchCommands(); + /** + * This works in lite but not lab + */ + // window.document.addEventListener('myCustomEvent', handleEvent, false); + // function handleEvent(e: any) { + // console.log(e.detail); // outputs: {foo: 'bar'} + // fetchCommands(); + // } }, []); + const fetchCommands = async () => { + const commandBridge = createBridge({ iframeId: 'jupyterlab' }); + const commands = await commandBridge.listCommands(); + commands.sort(); + + console.log('commands', commands); + setCommandBridge(commandBridge); + setCommands(commands); + }; + return ( <>
{/* */}

{import.meta.env.VITE_TITLE} Demo

- - {/* */} + -
- - -
+
diff --git a/demo-react/src/Instructions.tsx b/demo-react/src/Instructions.tsx index 0dd5ef8..46ea352 100644 --- a/demo-react/src/Instructions.tsx +++ b/demo-react/src/Instructions.tsx @@ -1,41 +1,8 @@ import { useRef } from 'react'; import './App.css'; -interface IInstructionProps { - commandBridge: any; -} - -const Instructions = ({ commandBridge }: IInstructionProps) => { +const Instructions = () => { const dialogRef = useRef(null); - const submitButtonRef = useRef(null); - - const submitCommand = async (command: string, args: string | undefined) => { - try { - await commandBridge.execute(command, args ? JSON.parse(args) : {}); - } catch (e) { - // document.getElementById('error-dialog').innerHTML = `${e}`; - // errorDialog.showModal(); - } - }; - const handleSubmit = async (e: any) => { - if (dialogRef.current && submitButtonRef.current) { - e.preventDefault(); - const select = document.getElementById( - 'command-select' - ) as HTMLSelectElement; - let command = select?.value; - - if (command) { - let args; - if (command.includes('Light') || command.includes('Dark')) { - args = `{"theme": "${command}"}`; - command = 'apputils:change-theme'; - } - await submitCommand(command, args); - } - dialogRef.current.close(); - } - }; const handleOpenDialog = () => { if (dialogRef.current) { @@ -164,11 +131,7 @@ const Instructions = ({ commandBridge }: IInstructionProps) => { -
diff --git a/demo-react/src/ModeSelect.tsx b/demo-react/src/ModeSelect.tsx new file mode 100644 index 0000000..f5b550e --- /dev/null +++ b/demo-react/src/ModeSelect.tsx @@ -0,0 +1,64 @@ +import { useEffect, useState } from 'react'; + +const ModeToggle = () => { + const [mode, setMode] = useState('lab'); + + useEffect(() => { + const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; + + if (!iframe) { + return; + } + + // Update iframe source when mode changes + const isNotebookView = mode === 'notebook'; + let currentUrl = new URL(iframe.src); + const isLite = currentUrl.pathname.includes('lite'); + + if (isLite) { + currentUrl = new URL( + `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'lab'}` + ); + } else { + currentUrl.pathname = isNotebookView + ? '/notebooks/example.ipynb' + : '/lab'; + currentUrl.search = ''; + } + + iframe.src = currentUrl.toString(); + }, [mode]); + + const handleModeChange = (e: any) => { + setMode(e.target.value); + }; + + return ( +
+
+ + +
+
+ ); +}; + +export default ModeToggle; diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index b6b149e..de0b1d0 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -54,6 +54,17 @@ const plugin: JupyterFrontEndPlugin = { const endpoint = windowEndpoint(self.parent); expose(api, endpoint); + + //TODO temp + console.log('window.top', window.top); + window.parent?.postMessage('extension-loaded', 'http://localhost:8080/'); + + /** + * Works in lite but not lab + */ + // const data = { foo: 'bar' }; + // const event = new CustomEvent('myCustomEvent', { detail: data }); + // window.parent.document.dispatchEvent(event); } }; From 1ec20f00b2c35f73d649b9c4f68b470a6ae5636b Mon Sep 17 00:00:00 2001 From: Greg Date: Fri, 14 Feb 2025 10:11:06 +0100 Subject: [PATCH 04/38] wip --- demo-react/src/App.tsx | 102 ++++++++++-------- demo-react/src/components/Error.tsx | 32 ++++++ demo-react/src/components/InputArea.tsx | 48 +++++++++ .../src/{ => components}/Instructions.tsx | 56 +++++++--- .../src/{ => components}/JupyterIframe.tsx | 0 .../src/{ => components}/ListCommands.tsx | 2 +- .../src/{ => components}/ModeSelect.tsx | 0 7 files changed, 180 insertions(+), 60 deletions(-) create mode 100644 demo-react/src/components/Error.tsx create mode 100644 demo-react/src/components/InputArea.tsx rename demo-react/src/{ => components}/Instructions.tsx (79%) rename demo-react/src/{ => components}/JupyterIframe.tsx (100%) rename demo-react/src/{ => components}/ListCommands.tsx (95%) rename demo-react/src/{ => components}/ModeSelect.tsx (100%) diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index 3bef269..ad8dc4d 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -1,72 +1,86 @@ import { createBridge } from 'jupyter-iframe-commands-host'; -import { useEffect, useState } from 'react'; -import Instructions from './Instructions'; -import JupyterIframe from './JupyterIframe'; -import ListCommands from './ListCommands'; -import ModeToggle from './ModeSelect'; +import { useRef, useState } from 'react'; +import ErrorDialog from './components/Error'; +import InputArea from './components/InputArea'; +import Instructions from './components/Instructions'; +import JupyterIframe from './components/JupyterIframe'; +import ListCommands from './components/ListCommands'; +import ModeToggle from './components/ModeSelect'; function App() { const [commands, setCommands] = useState([]); const [commandBridge, setCommandBridge] = useState(); + const [errorMessage, setErrorMessage] = useState(''); + const dialogRef = useRef(null); - useEffect(() => { - window.onmessage = e => { - if (e.data === 'extension-loaded') { - // alert('got message'); - fetchCommands(); - } - }; + // useEffect(() => { + // window.onmessage = e => { + // if (e.data === 'extension-loaded') { + // fetchCommands(); + // } + // }; - /** - * This works in lite but not lab - */ - // window.document.addEventListener('myCustomEvent', handleEvent, false); - // function handleEvent(e: any) { - // console.log(e.detail); // outputs: {foo: 'bar'} - // fetchCommands(); - // } - }, []); + // /** + // * This works in lite but not lab + // */ + // // window.document.addEventListener('myCustomEvent', handleEvent, false); + // // function handleEvent(e: any) { + // // console.log(e.detail); // outputs: {foo: 'bar'} + // // fetchCommands(); + // // } + // }, []); - const fetchCommands = async () => { + async function init() { const commandBridge = createBridge({ iframeId: 'jupyterlab' }); const commands = await commandBridge.listCommands(); commands.sort(); + commandBridge.execute( + 'apputils:change-theme', + JSON.parse('{"theme":"JupyterLab Light"}') + ); console.log('commands', commands); - setCommandBridge(commandBridge); - setCommands(commands); + // causes TypeError: rawValue.apply is not a function + // setCommandBridge(commandBridge); + // setCommands(commands); + } + + // const fetchCommands = async () => { + // const commandBridge = createBridge({ iframeId: 'jupyterlab' }); + // const commands = await commandBridge.listCommands(); + // commands.sort(); + + // console.log('commands', commands); + // setCommandBridge(commandBridge); + // setCommands(commands); + // }; + + const submitCommand = async (command: string, args: string) => { + console.log('command', command); + console.log('args', args); + + try { + // await commandBridge.execute(command, args ? JSON.parse(args) : {}); + } catch (e: any) { + setErrorMessage(e instanceof Error ? e.message : String(e)); + dialogRef.current?.showModal(); + } }; return ( <>
- {/* */} +

{import.meta.env.VITE_TITLE} Demo

- +
-
- - - - - -
+
+ ); } diff --git a/demo-react/src/components/Error.tsx b/demo-react/src/components/Error.tsx new file mode 100644 index 0000000..5be4682 --- /dev/null +++ b/demo-react/src/components/Error.tsx @@ -0,0 +1,32 @@ +import { forwardRef, useImperativeHandle, useRef } from 'react'; + +interface IErrorProps { + message: string; +} + +const ErrorDialog = forwardRef(({ message }: IErrorProps, ref) => { + const dialogRef = useRef(null); + + useImperativeHandle(ref, () => ({ + showModal: () => dialogRef.current?.showModal(), + close: () => dialogRef.current?.close() + })); + + return ( + +
+

âš  Error

+
+ {message} +
+
+ +
+
+
+ ); +}); + +export default ErrorDialog; diff --git a/demo-react/src/components/InputArea.tsx b/demo-react/src/components/InputArea.tsx new file mode 100644 index 0000000..8daa676 --- /dev/null +++ b/demo-react/src/components/InputArea.tsx @@ -0,0 +1,48 @@ +import { FormEvent, useState } from 'react'; + +interface InputAreaProps { + submitCommand: (command: string, args: string) => void; +} + +const InputArea = ({ submitCommand }: InputAreaProps) => { + const [command, setCommand] = useState(''); + const [args, setArgs] = useState(''); + + const cumFart = async (e: FormEvent) => { + e.preventDefault(); + + // Single quotes cause an error + submitCommand(command, args.replace(/'/g, '"')); + }; + + return ( +
+
+ { + setCommand(e.target.value); + }} + required + /> + { + setArgs(e.target.value); + }} + /> + +
+
+ ); +}; + +export default InputArea; diff --git a/demo-react/src/Instructions.tsx b/demo-react/src/components/Instructions.tsx similarity index 79% rename from demo-react/src/Instructions.tsx rename to demo-react/src/components/Instructions.tsx index 46ea352..1726474 100644 --- a/demo-react/src/Instructions.tsx +++ b/demo-react/src/components/Instructions.tsx @@ -1,19 +1,29 @@ -import { useRef } from 'react'; -import './App.css'; +import { FormEvent, useRef, useState } from 'react'; -const Instructions = () => { +interface IIinstructionProps { + submitCommand: (command: string, args: string) => void; +} + +const Instructions = ({ submitCommand }: IIinstructionProps) => { const dialogRef = useRef(null); - const handleOpenDialog = () => { - if (dialogRef.current) { - dialogRef.current.showModal(); - } - }; + const [selectValue, setSelectValue] = useState(''); - const handleCloseDialog = () => { - if (dialogRef.current) { - dialogRef.current.close(); + const handleSubmit = (e: FormEvent) => { + e.preventDefault(); + + if (selectValue) { + let args = ''; + let select = ''; + if (selectValue.includes('Light') || selectValue.includes('Dark')) { + args = `{"theme": "${selectValue}"}`; + select = 'apputils:change-theme'; + } else { + select = selectValue; + } + submitCommand(select, args); } + dialogRef.current?.close(); }; return ( @@ -21,7 +31,9 @@ const Instructions = () => { @@ -110,7 +122,12 @@ const Instructions = () => { For even more convenience you can also select a command from the dropdown:

- { + setSelectValue(e.target.value); + }} + >
- -
diff --git a/demo-react/src/JupyterIframe.tsx b/demo-react/src/components/JupyterIframe.tsx similarity index 100% rename from demo-react/src/JupyterIframe.tsx rename to demo-react/src/components/JupyterIframe.tsx diff --git a/demo-react/src/ListCommands.tsx b/demo-react/src/components/ListCommands.tsx similarity index 95% rename from demo-react/src/ListCommands.tsx rename to demo-react/src/components/ListCommands.tsx index 167ec04..cb7ee45 100644 --- a/demo-react/src/ListCommands.tsx +++ b/demo-react/src/components/ListCommands.tsx @@ -34,7 +34,7 @@ const ListCommands = ({ commands }: IListCommandsProps) => {

Available Commands

{commands.map(command => { - return
{command}
; + return
{command}
; })}
diff --git a/demo-react/src/ModeSelect.tsx b/demo-react/src/components/ModeSelect.tsx similarity index 100% rename from demo-react/src/ModeSelect.tsx rename to demo-react/src/components/ModeSelect.tsx From 55c3435974c91f38ff4f7f4ce2b3f862737d6b64 Mon Sep 17 00:00:00 2001 From: Greg Date: Fri, 14 Feb 2025 13:47:13 +0100 Subject: [PATCH 05/38] Save --- demo-react/src/App.tsx | 89 ++++++++++++++++++++++-------------------- 1 file changed, 46 insertions(+), 43 deletions(-) diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index ad8dc4d..8d7420a 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -1,5 +1,5 @@ -import { createBridge } from 'jupyter-iframe-commands-host'; -import { useRef, useState } from 'react'; +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; +import { useCallback, useRef, useState } from 'react'; import ErrorDialog from './components/Error'; import InputArea from './components/InputArea'; import Instructions from './components/Instructions'; @@ -9,58 +9,61 @@ import ModeToggle from './components/ModeSelect'; function App() { const [commands, setCommands] = useState([]); - const [commandBridge, setCommandBridge] = useState(); const [errorMessage, setErrorMessage] = useState(''); + const [isBridgeReady, setIsBridgeReady] = useState(false); + const dialogRef = useRef(null); + const iframeRef = useRef(null); + const bridgeRef = useRef(null); - // useEffect(() => { - // window.onmessage = e => { - // if (e.data === 'extension-loaded') { - // fetchCommands(); - // } - // }; + let bridge: any; - // /** - // * This works in lite but not lab - // */ - // // window.document.addEventListener('myCustomEvent', handleEvent, false); - // // function handleEvent(e: any) { - // // console.log(e.detail); // outputs: {foo: 'bar'} - // // fetchCommands(); - // // } - // }, []); + console.log('check'); - async function init() { - const commandBridge = createBridge({ iframeId: 'jupyterlab' }); - const commands = await commandBridge.listCommands(); - commands.sort(); + const getBridge = useCallback(() => { + //@ts-expect-error w + return iframeRef.current?.getBridge(); + }, []); - commandBridge.execute( - 'apputils:change-theme', - JSON.parse('{"theme":"JupyterLab Light"}') - ); - console.log('commands', commands); - // causes TypeError: rawValue.apply is not a function - // setCommandBridge(commandBridge); - // setCommands(commands); - } + // useEffect(() => { + // if (!isBridgeReady) { + // return; + // } - // const fetchCommands = async () => { - // const commandBridge = createBridge({ iframeId: 'jupyterlab' }); - // const commands = await commandBridge.listCommands(); - // commands.sort(); + // //@ts-expect-error we + // bridge = iframeRef.current?.getBridge(); + // bridgeRef.current = bridge; - // console.log('commands', commands); - // setCommandBridge(commandBridge); - // setCommands(commands); - // }; + // // bridge.execute( + // // 'apputils:change-theme', + // // JSON.parse('{"theme":"JupyterLab Dark"}') + // // ); + // const getCommands = async () => { + // const cl = await bridge.listCommands(); + // setCommands(cl); + // }; + // getCommands(); + + // // ! causes TypeError: rawValue.apply is not a function + // // setCommandBridge(commandBridge); + // }, [isBridgeReady]); + + const listComms = async () => { + // example of using method directly instead of with bridge + const commands = await getBridge().listCommands(); + setCommands(commands ?? []); + console.log('listComms', commands); + }; const submitCommand = async (command: string, args: string) => { console.log('command', command); console.log('args', args); + bridge = getBridge(); + + console.log('bridge', bridge); try { - // await commandBridge.execute(command, args ? JSON.parse(args) : {}); + bridge.execute(command, args ? JSON.parse(args) : {}); } catch (e: any) { setErrorMessage(e instanceof Error ? e.message : String(e)); dialogRef.current?.showModal(); @@ -70,16 +73,16 @@ function App() { return ( <>
- +

{import.meta.env.VITE_TITLE} Demo

- +
- + ); From 19787894652f1371b7f3acb416555947af8fa232 Mon Sep 17 00:00:00 2001 From: Greg Date: Fri, 14 Feb 2025 14:30:13 +0100 Subject: [PATCH 06/38] Good spot --- demo-react/src/App.tsx | 41 +++++++-------------- demo-react/src/components/InputArea.tsx | 11 ++++-- demo-react/src/components/JupyterIframe.tsx | 38 ++++++++++++++++++- demo-react/src/components/ListCommands.tsx | 22 +++++++++-- 4 files changed, 75 insertions(+), 37 deletions(-) diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index 8d7420a..bd3a691 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -1,4 +1,3 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import { useCallback, useRef, useState } from 'react'; import ErrorDialog from './components/Error'; import InputArea from './components/InputArea'; @@ -14,43 +13,25 @@ function App() { const dialogRef = useRef(null); const iframeRef = useRef(null); - const bridgeRef = useRef(null); let bridge: any; console.log('check'); const getBridge = useCallback(() => { + console.log( + 'iframeRef.current?.getBridge()', + //@ts-expect-error w + iframeRef.current?.getBridge() + ); //@ts-expect-error w return iframeRef.current?.getBridge(); - }, []); - - // useEffect(() => { - // if (!isBridgeReady) { - // return; - // } - - // //@ts-expect-error we - // bridge = iframeRef.current?.getBridge(); - // bridgeRef.current = bridge; - - // // bridge.execute( - // // 'apputils:change-theme', - // // JSON.parse('{"theme":"JupyterLab Dark"}') - // // ); - // const getCommands = async () => { - // const cl = await bridge.listCommands(); - // setCommands(cl); - // }; - // getCommands(); - - // // ! causes TypeError: rawValue.apply is not a function - // // setCommandBridge(commandBridge); - // }, [isBridgeReady]); + }, [isBridgeReady]); const listComms = async () => { // example of using method directly instead of with bridge - const commands = await getBridge().listCommands(); + //@ts-expect-error wewe + const commands = await iframeRef.current?.listCommands(); setCommands(commands ?? []); console.log('listComms', commands); }; @@ -77,7 +58,11 @@ function App() {

{import.meta.env.VITE_TITLE} Demo

- +
diff --git a/demo-react/src/components/InputArea.tsx b/demo-react/src/components/InputArea.tsx index 8daa676..e66e7f0 100644 --- a/demo-react/src/components/InputArea.tsx +++ b/demo-react/src/components/InputArea.tsx @@ -5,13 +5,14 @@ interface InputAreaProps { } const InputArea = ({ submitCommand }: InputAreaProps) => { - const [command, setCommand] = useState(''); - const [args, setArgs] = useState(''); + const [command, setCommand] = useState('apputils:change-theme'); + const [args, setArgs] = useState('{"theme":"JupyterLab Light"}'); - const cumFart = async (e: FormEvent) => { + const submit = async (e: FormEvent) => { e.preventDefault(); // Single quotes cause an error + console.log('args', args); submitCommand(command, args.replace(/'/g, '"')); }; @@ -27,6 +28,7 @@ const InputArea = ({ submitCommand }: InputAreaProps) => { setCommand(e.target.value); }} required + value={command} /> { onChange={e => { setArgs(e.target.value); }} + value={args} /> - diff --git a/demo-react/src/components/JupyterIframe.tsx b/demo-react/src/components/JupyterIframe.tsx index a1dc269..1d8d106 100644 --- a/demo-react/src/components/JupyterIframe.tsx +++ b/demo-react/src/components/JupyterIframe.tsx @@ -1,6 +1,40 @@ -const JupyterIframe = () => { +import { createBridge } from 'jupyter-iframe-commands-host'; +import { forwardRef, useEffect, useImperativeHandle, useRef } from 'react'; + +interface IProps { + onBridgeReady: any; +} +const JupyterIframe = forwardRef(({ onBridgeReady }: IProps, ref) => { + const iframeRef = useRef(null); + const bridgeRef = useRef(null); + + useEffect(() => { + // ! This works in lite but not lab + // window.document.addEventListener('myCustomEvent', handleEvent, false); + // function handleEvent(e: any) { + // console.log(e.detail); // outputs: {foo: 'bar'} + // fetchCommands(); + // } + + // ! Works in both but idk + window.onmessage = async e => { + if (e.data === 'extension-loaded') { + // alert('loaded'); + + bridgeRef.current = createBridge({ iframeId: 'jupyterlab' }); + onBridgeReady(true); + } + }; + }, []); + + useImperativeHandle(ref, () => ({ + getBridge: () => bridgeRef.current, + listCommands: async () => await bridgeRef.current.listCommands() + })); + return ( ); -}; +}); export default JupyterIframe; diff --git a/demo-react/src/components/ListCommands.tsx b/demo-react/src/components/ListCommands.tsx index cb7ee45..502e9d9 100644 --- a/demo-react/src/components/ListCommands.tsx +++ b/demo-react/src/components/ListCommands.tsx @@ -1,14 +1,30 @@ // import { createBridge } from 'jupyter-iframe-commands-host'; -import { useRef } from 'react'; +import { useRef, useState } from 'react'; interface IListCommandsProps { commands: string[]; + bridge?: any; + getCommands: () => void; } -const ListCommands = ({ commands }: IListCommandsProps) => { +const ListCommands = ({ + commands, + bridge, + getCommands +}: IListCommandsProps) => { const dialogRef = useRef(null); + const [comms, setComms] = useState([]); + console.log('bridge in list', bridge()?.listCommands()); + + console.log('commands prom', commands); + const handleOpenDialog = async () => { + const fromBridge = await bridge().listCommands(); + setComms(fromBridge); + + const dd = await getCommands(); + console.log('dd', dd); if (dialogRef.current) { dialogRef.current.showModal(); } @@ -33,7 +49,7 @@ const ListCommands = ({ commands }: IListCommandsProps) => {

Available Commands

- {commands.map(command => { + {comms.map(command => { return
{command}
; })}
From e8401c687bb21d487b04c8f9c37889fa750a51e6 Mon Sep 17 00:00:00 2001 From: Greg Date: Fri, 14 Feb 2025 15:51:37 +0100 Subject: [PATCH 07/38] Good? --- demo-react/src/App.tsx | 34 ++++----------------- demo-react/src/components/InputArea.tsx | 1 - demo-react/src/components/JupyterIframe.tsx | 7 +++-- demo-react/src/components/ListCommands.tsx | 27 ++++++++-------- demo-react/src/components/ModeSelect.tsx | 4 +-- packages/extension/src/index.ts | 5 ++- packages/extension/src/interface.ts | 2 +- 7 files changed, 29 insertions(+), 51 deletions(-) diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index bd3a691..b81fff4 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -1,3 +1,4 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import { useCallback, useRef, useState } from 'react'; import ErrorDialog from './components/Error'; import InputArea from './components/InputArea'; @@ -7,42 +8,20 @@ import ListCommands from './components/ListCommands'; import ModeToggle from './components/ModeSelect'; function App() { - const [commands, setCommands] = useState([]); const [errorMessage, setErrorMessage] = useState(''); const [isBridgeReady, setIsBridgeReady] = useState(false); const dialogRef = useRef(null); const iframeRef = useRef(null); - let bridge: any; - - console.log('check'); - - const getBridge = useCallback(() => { - console.log( - 'iframeRef.current?.getBridge()', - //@ts-expect-error w - iframeRef.current?.getBridge() - ); - //@ts-expect-error w + const getBridge = useCallback((): ICommandBridgeRemote => { + //@ts-expect-error wip return iframeRef.current?.getBridge(); }, [isBridgeReady]); - const listComms = async () => { - // example of using method directly instead of with bridge - //@ts-expect-error wewe - const commands = await iframeRef.current?.listCommands(); - setCommands(commands ?? []); - console.log('listComms', commands); - }; - const submitCommand = async (command: string, args: string) => { - console.log('command', command); - console.log('args', args); - - bridge = getBridge(); + const bridge = getBridge(); - console.log('bridge', bridge); try { bridge.execute(command, args ? JSON.parse(args) : {}); } catch (e: any) { @@ -54,14 +33,13 @@ function App() { return ( <>
-

{import.meta.env.VITE_TITLE} Demo

diff --git a/demo-react/src/components/InputArea.tsx b/demo-react/src/components/InputArea.tsx index e66e7f0..76ec6a6 100644 --- a/demo-react/src/components/InputArea.tsx +++ b/demo-react/src/components/InputArea.tsx @@ -12,7 +12,6 @@ const InputArea = ({ submitCommand }: InputAreaProps) => { e.preventDefault(); // Single quotes cause an error - console.log('args', args); submitCommand(command, args.replace(/'/g, '"')); }; diff --git a/demo-react/src/components/JupyterIframe.tsx b/demo-react/src/components/JupyterIframe.tsx index 1d8d106..00bbb00 100644 --- a/demo-react/src/components/JupyterIframe.tsx +++ b/demo-react/src/components/JupyterIframe.tsx @@ -1,12 +1,13 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import { createBridge } from 'jupyter-iframe-commands-host'; import { forwardRef, useEffect, useImperativeHandle, useRef } from 'react'; interface IProps { - onBridgeReady: any; + onBridgeReady: (value: boolean) => void; } const JupyterIframe = forwardRef(({ onBridgeReady }: IProps, ref) => { const iframeRef = useRef(null); - const bridgeRef = useRef(null); + const bridgeRef = useRef(null); useEffect(() => { // ! This works in lite but not lab @@ -29,7 +30,7 @@ const JupyterIframe = forwardRef(({ onBridgeReady }: IProps, ref) => { useImperativeHandle(ref, () => ({ getBridge: () => bridgeRef.current, - listCommands: async () => await bridgeRef.current.listCommands() + listCommands: async () => await bridgeRef.current?.listCommands() })); return ( diff --git a/demo-react/src/components/ListCommands.tsx b/demo-react/src/components/ListCommands.tsx index 502e9d9..57a0508 100644 --- a/demo-react/src/components/ListCommands.tsx +++ b/demo-react/src/components/ListCommands.tsx @@ -1,33 +1,34 @@ // import { createBridge } from 'jupyter-iframe-commands-host'; +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import { useRef, useState } from 'react'; interface IListCommandsProps { - commands: string[]; - bridge?: any; - getCommands: () => void; + bridge: () => ICommandBridgeRemote; + apiFunction: () => Promise; + apiResult: Promise; } const ListCommands = ({ - commands, bridge, - getCommands + apiFunction, + apiResult }: IListCommandsProps) => { const dialogRef = useRef(null); - const [comms, setComms] = useState([]); - console.log('bridge in list', bridge()?.listCommands()); - - console.log('commands prom', commands); + const [commands, setCommands] = useState([]); const handleOpenDialog = async () => { + console.log('apiResult', apiResult); const fromBridge = await bridge().listCommands(); - setComms(fromBridge); + console.log('fromBridge', fromBridge); - const dd = await getCommands(); - console.log('dd', dd); + const fromFunction = await apiFunction(); + console.log('fromFunction', fromFunction); if (dialogRef.current) { dialogRef.current.showModal(); } + + setCommands(fromFunction); }; const handleCloseDialog = () => { @@ -49,7 +50,7 @@ const ListCommands = ({

Available Commands

- {comms.map(command => { + {commands.map(command => { return
{command}
; })}
diff --git a/demo-react/src/components/ModeSelect.tsx b/demo-react/src/components/ModeSelect.tsx index f5b550e..1872016 100644 --- a/demo-react/src/components/ModeSelect.tsx +++ b/demo-react/src/components/ModeSelect.tsx @@ -1,4 +1,4 @@ -import { useEffect, useState } from 'react'; +import { ChangeEvent, useEffect, useState } from 'react'; const ModeToggle = () => { const [mode, setMode] = useState('lab'); @@ -29,7 +29,7 @@ const ModeToggle = () => { iframe.src = currentUrl.toString(); }, [mode]); - const handleModeChange = (e: any) => { + const handleModeChange = (e: ChangeEvent) => { setMode(e.target.value); }; diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index de0b1d0..3e6eddf 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -47,8 +47,8 @@ const plugin: JupyterFrontEndPlugin = { async execute(command: string, args: ReadonlyPartialJSONObject) { await commands.execute(command, args); }, - listCommands() { - return commands.listCommands(); + async listCommands() { + return await commands.listCommands(); } }; @@ -56,7 +56,6 @@ const plugin: JupyterFrontEndPlugin = { expose(api, endpoint); //TODO temp - console.log('window.top', window.top); window.parent?.postMessage('extension-loaded', 'http://localhost:8080/'); /** diff --git a/packages/extension/src/interface.ts b/packages/extension/src/interface.ts index 0053af9..a9acf4b 100644 --- a/packages/extension/src/interface.ts +++ b/packages/extension/src/interface.ts @@ -19,5 +19,5 @@ export interface ICommandBridgeRemote { * * @returns An array of strings representing the names of all available commands. */ - listCommands(): string[]; + listCommands(): Promise; } From c2f1414f1750d61124f39094dcf02d9d69d147e6 Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 17 Feb 2025 10:22:17 +0100 Subject: [PATCH 08/38] Fix ModeToggle for lite --- demo-react/src/App.tsx | 2 +- .../src/components/{ModeSelect.tsx => ModeToggle.tsx} | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) rename demo-react/src/components/{ModeSelect.tsx => ModeToggle.tsx} (89%) diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index b81fff4..a6a3379 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -5,7 +5,7 @@ import InputArea from './components/InputArea'; import Instructions from './components/Instructions'; import JupyterIframe from './components/JupyterIframe'; import ListCommands from './components/ListCommands'; -import ModeToggle from './components/ModeSelect'; +import ModeToggle from './components/ModeToggle'; function App() { const [errorMessage, setErrorMessage] = useState(''); diff --git a/demo-react/src/components/ModeSelect.tsx b/demo-react/src/components/ModeToggle.tsx similarity index 89% rename from demo-react/src/components/ModeSelect.tsx rename to demo-react/src/components/ModeToggle.tsx index 1872016..35f0536 100644 --- a/demo-react/src/components/ModeSelect.tsx +++ b/demo-react/src/components/ModeToggle.tsx @@ -12,13 +12,11 @@ const ModeToggle = () => { // Update iframe source when mode changes const isNotebookView = mode === 'notebook'; - let currentUrl = new URL(iframe.src); + let currentUrl: any = new URL(iframe.src); const isLite = currentUrl.pathname.includes('lite'); if (isLite) { - currentUrl = new URL( - `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'lab'}` - ); + currentUrl = `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'index.html'}`; } else { currentUrl.pathname = isNotebookView ? '/notebooks/example.ipynb' From 1ae1153aa8e709f951f32b54cbea30a76556ec93 Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 17 Feb 2025 11:29:00 +0100 Subject: [PATCH 09/38] Change targetOrigin --- packages/extension/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index 3e6eddf..5408061 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -55,8 +55,8 @@ const plugin: JupyterFrontEndPlugin = { const endpoint = windowEndpoint(self.parent); expose(api, endpoint); - //TODO temp - window.parent?.postMessage('extension-loaded', 'http://localhost:8080/'); + //TODO targetOrigin should be host page + window.parent?.postMessage('extension-loaded', '*'); /** * Works in lite but not lab From 14c9fba9e755314aafb13816170544a7e75c19a1 Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 17 Feb 2025 13:20:04 +0100 Subject: [PATCH 10/38] Get css from host page into Jupyter --- demo-react/src/components/JupyterIframe.tsx | 36 +++++++++++++++------ demo-react/src/index.css | 14 ++++++++ packages/extension/src/index.ts | 16 +++++---- 3 files changed, 50 insertions(+), 16 deletions(-) diff --git a/demo-react/src/components/JupyterIframe.tsx b/demo-react/src/components/JupyterIframe.tsx index 00bbb00..e89693f 100644 --- a/demo-react/src/components/JupyterIframe.tsx +++ b/demo-react/src/components/JupyterIframe.tsx @@ -5,25 +5,41 @@ import { forwardRef, useEffect, useImperativeHandle, useRef } from 'react'; interface IProps { onBridgeReady: (value: boolean) => void; } + const JupyterIframe = forwardRef(({ onBridgeReady }: IProps, ref) => { const iframeRef = useRef(null); const bridgeRef = useRef(null); useEffect(() => { - // ! This works in lite but not lab - // window.document.addEventListener('myCustomEvent', handleEvent, false); - // function handleEvent(e: any) { - // console.log(e.detail); // outputs: {foo: 'bar'} - // fetchCommands(); - // } - - // ! Works in both but idk + // from MDN + const getAllCss = [...document.styleSheets] + .map(styleSheet => { + try { + return [...styleSheet.cssRules].map(rule => rule.cssText).join(''); + } catch (e) { + console.log( + 'Access to stylesheet %s is denied. Ignoring…', + styleSheet.href + ); + } + }) + .filter(Boolean) + .join('\n'); + window.onmessage = async e => { if (e.data === 'extension-loaded') { - // alert('loaded'); - bridgeRef.current = createBridge({ iframeId: 'jupyterlab' }); onBridgeReady(true); + + // Example of getting style from host page + iframeRef.current?.contentWindow?.postMessage( + { + // To differentiate from comlink messages + type: 'CSS', + style: getAllCss + }, + import.meta.env.VITE_DEMO_SRC + ); } }; }, []); diff --git a/demo-react/src/index.css b/demo-react/src/index.css index 73ca349..e9d2979 100644 --- a/demo-react/src/index.css +++ b/demo-react/src/index.css @@ -258,3 +258,17 @@ dialog button[value='close']:hover { font-weight: 500; user-select: none; } + +.lm-TabBar-tabLabel { + background-color: #2980b9; + font-size: 125px; +} + +.jp-Launcher-body, +.jp-WindowedPanel-outer { + background-color: rgb(110, 49, 49) !important; +} + +.jp-MarkdownOutput { + background-color: rebeccapurple; +} diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index 5408061..6acc9a6 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -58,12 +58,16 @@ const plugin: JupyterFrontEndPlugin = { //TODO targetOrigin should be host page window.parent?.postMessage('extension-loaded', '*'); - /** - * Works in lite but not lab - */ - // const data = { foo: 'bar' }; - // const event = new CustomEvent('myCustomEvent', { detail: data }); - // window.parent.document.dispatchEvent(event); + // Add host css to Jupyter + window.onmessage = e => { + console.log('e', e); + if (e.data.type === 'CSS') { + const styleTag = document.createElement('style'); + styleTag.id = 'searchText'; + styleTag.innerText = e.data.style; + document.head.appendChild(styleTag); + } + }; } }; From 27e9e325e87713732698020121aee9d83e7a9fcd Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 17 Feb 2025 13:20:37 +0100 Subject: [PATCH 11/38] Pass iframe source as prop --- demo-react/src/App.tsx | 6 +- demo-react/src/components/JupyterIframe.tsx | 101 ++++++++++---------- packages/extension/src/index.ts | 1 - 3 files changed, 57 insertions(+), 51 deletions(-) diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index a6a3379..5954bb1 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -45,7 +45,11 @@ function App() {
- + ); diff --git a/demo-react/src/components/JupyterIframe.tsx b/demo-react/src/components/JupyterIframe.tsx index e89693f..cef3441 100644 --- a/demo-react/src/components/JupyterIframe.tsx +++ b/demo-react/src/components/JupyterIframe.tsx @@ -3,62 +3,65 @@ import { createBridge } from 'jupyter-iframe-commands-host'; import { forwardRef, useEffect, useImperativeHandle, useRef } from 'react'; interface IProps { + iframeSrc: string; onBridgeReady: (value: boolean) => void; } -const JupyterIframe = forwardRef(({ onBridgeReady }: IProps, ref) => { - const iframeRef = useRef(null); - const bridgeRef = useRef(null); +const JupyterIframe = forwardRef( + ({ iframeSrc, onBridgeReady }: IProps, ref) => { + const iframeRef = useRef(null); + const bridgeRef = useRef(null); - useEffect(() => { - // from MDN - const getAllCss = [...document.styleSheets] - .map(styleSheet => { - try { - return [...styleSheet.cssRules].map(rule => rule.cssText).join(''); - } catch (e) { - console.log( - 'Access to stylesheet %s is denied. Ignoring…', - styleSheet.href - ); - } - }) - .filter(Boolean) - .join('\n'); + useEffect(() => { + // from MDN + const getAllCss = [...document.styleSheets] + .map(styleSheet => { + try { + return [...styleSheet.cssRules].map(rule => rule.cssText).join(''); + } catch (e) { + console.log( + 'Access to stylesheet %s is denied. Ignoring…', + styleSheet.href + ); + } + }) + .filter(Boolean) + .join('\n'); - window.onmessage = async e => { - if (e.data === 'extension-loaded') { - bridgeRef.current = createBridge({ iframeId: 'jupyterlab' }); - onBridgeReady(true); + window.onmessage = async e => { + if (e.data === 'extension-loaded') { + bridgeRef.current = createBridge({ iframeId: 'jupyterlab' }); + onBridgeReady(true); - // Example of getting style from host page - iframeRef.current?.contentWindow?.postMessage( - { - // To differentiate from comlink messages - type: 'CSS', - style: getAllCss - }, - import.meta.env.VITE_DEMO_SRC - ); - } - }; - }, []); + // Example of getting style from host page + iframeRef.current?.contentWindow?.postMessage( + { + // To differentiate from comlink messages + type: 'CSS', + style: getAllCss + }, + iframeSrc + ); + } + }; + }, []); - useImperativeHandle(ref, () => ({ - getBridge: () => bridgeRef.current, - listCommands: async () => await bridgeRef.current?.listCommands() - })); + useImperativeHandle(ref, () => ({ + getBridge: () => bridgeRef.current, + listCommands: async () => await bridgeRef.current?.listCommands() + })); - return ( - - ); -}); + return ( + + ); + } +); export default JupyterIframe; diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index 6acc9a6..ed41749 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -60,7 +60,6 @@ const plugin: JupyterFrontEndPlugin = { // Add host css to Jupyter window.onmessage = e => { - console.log('e', e); if (e.data.type === 'CSS') { const styleTag = document.createElement('style'); styleTag.id = 'searchText'; From c32421170eeddb50385303f9ae4a72bd7ea815ea Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 17 Feb 2025 13:27:59 +0100 Subject: [PATCH 12/38] Remove example prop --- demo-react/src/App.tsx | 1 - demo-react/src/components/ListCommands.tsx | 8 +------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/demo-react/src/App.tsx b/demo-react/src/App.tsx index 5954bb1..f602e72 100644 --- a/demo-react/src/App.tsx +++ b/demo-react/src/App.tsx @@ -39,7 +39,6 @@ function App() {
diff --git a/demo-react/src/components/ListCommands.tsx b/demo-react/src/components/ListCommands.tsx index 57a0508..c453f2c 100644 --- a/demo-react/src/components/ListCommands.tsx +++ b/demo-react/src/components/ListCommands.tsx @@ -5,20 +5,14 @@ import { useRef, useState } from 'react'; interface IListCommandsProps { bridge: () => ICommandBridgeRemote; apiFunction: () => Promise; - apiResult: Promise; } -const ListCommands = ({ - bridge, - apiFunction, - apiResult -}: IListCommandsProps) => { +const ListCommands = ({ bridge, apiFunction }: IListCommandsProps) => { const dialogRef = useRef(null); const [commands, setCommands] = useState([]); const handleOpenDialog = async () => { - console.log('apiResult', apiResult); const fromBridge = await bridge().listCommands(); console.log('fromBridge', fromBridge); From 6037be5fc30cdf0797ec9fab3117008122e69a52 Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 17 Feb 2025 15:02:17 +0100 Subject: [PATCH 13/38] lint --- demo-react/README.md | 18 +- demo-react/eslint.config.js | 28 -- demo-react/package.json | 2 - demo-react/src/components/InputArea.tsx | 4 +- demo-react/src/main.tsx | 12 +- demo-react/vite.config.ts | 8 +- yarn.lock | 372 +----------------------- 7 files changed, 29 insertions(+), 415 deletions(-) delete mode 100644 demo-react/eslint.config.js diff --git a/demo-react/README.md b/demo-react/README.md index 74872fd..fe47ff5 100644 --- a/demo-react/README.md +++ b/demo-react/README.md @@ -19,10 +19,10 @@ export default tseslint.config({ // other options... parserOptions: { project: ['./tsconfig.node.json', './tsconfig.app.json'], - tsconfigRootDir: import.meta.dirname, - }, - }, -}) + tsconfigRootDir: import.meta.dirname + } + } +}); ``` - Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked` @@ -31,20 +31,20 @@ export default tseslint.config({ ```js // eslint.config.js -import react from 'eslint-plugin-react' +import react from 'eslint-plugin-react'; export default tseslint.config({ // Set the react version settings: { react: { version: '18.3' } }, plugins: { // Add the react plugin - react, + react }, rules: { // other rules... // Enable its recommended rules ...react.configs.recommended.rules, - ...react.configs['jsx-runtime'].rules, - }, -}) + ...react.configs['jsx-runtime'].rules + } +}); ``` diff --git a/demo-react/eslint.config.js b/demo-react/eslint.config.js deleted file mode 100644 index 092408a..0000000 --- a/demo-react/eslint.config.js +++ /dev/null @@ -1,28 +0,0 @@ -import js from '@eslint/js' -import globals from 'globals' -import reactHooks from 'eslint-plugin-react-hooks' -import reactRefresh from 'eslint-plugin-react-refresh' -import tseslint from 'typescript-eslint' - -export default tseslint.config( - { ignores: ['dist'] }, - { - extends: [js.configs.recommended, ...tseslint.configs.recommended], - files: ['**/*.{ts,tsx}'], - languageOptions: { - ecmaVersion: 2020, - globals: globals.browser, - }, - plugins: { - 'react-hooks': reactHooks, - 'react-refresh': reactRefresh, - }, - rules: { - ...reactHooks.configs.recommended.rules, - 'react-refresh/only-export-components': [ - 'warn', - { allowConstantExport: true }, - ], - }, - }, -) diff --git a/demo-react/package.json b/demo-react/package.json index 9147aa7..1372542 100644 --- a/demo-react/package.json +++ b/demo-react/package.json @@ -25,12 +25,10 @@ "@types/react": "^19.0.8", "@types/react-dom": "^19.0.3", "@vitejs/plugin-react": "^4.3.4", - "eslint": "^9.19.0", "eslint-plugin-react-hooks": "^5.0.0", "eslint-plugin-react-refresh": "^0.4.18", "globals": "^15.14.0", "typescript": "~5.7.2", - "typescript-eslint": "^8.22.0", "vite": "^6.1.0" } } diff --git a/demo-react/src/components/InputArea.tsx b/demo-react/src/components/InputArea.tsx index 76ec6a6..d812bd9 100644 --- a/demo-react/src/components/InputArea.tsx +++ b/demo-react/src/components/InputArea.tsx @@ -1,10 +1,10 @@ import { FormEvent, useState } from 'react'; -interface InputAreaProps { +interface IInputAreaProps { submitCommand: (command: string, args: string) => void; } -const InputArea = ({ submitCommand }: InputAreaProps) => { +const InputArea = ({ submitCommand }: IInputAreaProps) => { const [command, setCommand] = useState('apputils:change-theme'); const [args, setArgs] = useState('{"theme":"JupyterLab Light"}'); diff --git a/demo-react/src/main.tsx b/demo-react/src/main.tsx index bef5202..df655ea 100644 --- a/demo-react/src/main.tsx +++ b/demo-react/src/main.tsx @@ -1,10 +1,10 @@ -import { StrictMode } from 'react' -import { createRoot } from 'react-dom/client' -import './index.css' -import App from './App.tsx' +import { StrictMode } from 'react'; +import { createRoot } from 'react-dom/client'; +import './index.css'; +import App from './App.tsx'; createRoot(document.getElementById('root')!).render( - , -) + +); diff --git a/demo-react/vite.config.ts b/demo-react/vite.config.ts index 8b0f57b..4ae1e57 100644 --- a/demo-react/vite.config.ts +++ b/demo-react/vite.config.ts @@ -1,7 +1,7 @@ -import { defineConfig } from 'vite' -import react from '@vitejs/plugin-react' +import { defineConfig } from 'vite'; +import react from '@vitejs/plugin-react'; // https://vite.dev/config/ export default defineConfig({ - plugins: [react()], -}) + plugins: [react()] +}); diff --git a/yarn.lock b/yarn.lock index 2861b75..c5be23c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -644,42 +644,13 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.12.1, @eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": +"@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": version: 4.12.1 resolution: "@eslint-community/regexpp@npm:4.12.1" checksum: 0d628680e204bc316d545b4993d3658427ca404ae646ce541fcc65306b8c712c340e5e573e30fb9f85f4855c0c5f6dca9868931f2fcced06417fbe1a0c6cd2d6 languageName: node linkType: hard -"@eslint/config-array@npm:^0.19.0": - version: 0.19.2 - resolution: "@eslint/config-array@npm:0.19.2" - dependencies: - "@eslint/object-schema": ^2.1.6 - debug: ^4.3.1 - minimatch: ^3.1.2 - checksum: 1c707e04fc2951079b32d2cb1c939ce25e863cd1329c1bd363a285b2a5caaaf88b97ddbf354cc46d1334097dc749f79b0fae33151dc2dfb9a60ba14288c65b39 - languageName: node - linkType: hard - -"@eslint/core@npm:^0.10.0": - version: 0.10.0 - resolution: "@eslint/core@npm:0.10.0" - dependencies: - "@types/json-schema": ^7.0.15 - checksum: 851fa099b3fef00e7ff8ece14523aff0822d3e1b47b047ab0a0d898e80c1362a22aa8b7778727231c383246932ecb63de79b4448ec1e500901c578580b087573 - languageName: node - linkType: hard - -"@eslint/core@npm:^0.11.0": - version: 0.11.0 - resolution: "@eslint/core@npm:0.11.0" - dependencies: - "@types/json-schema": ^7.0.15 - checksum: 9038b006bdb6a1a5b942e45d217598aaaec86cc97f8e891964e5220bc5514015981152cc999ea4196ee66d1f6ca5b3f8e8de404d5d8890d50142aee9e15495d1 - languageName: node - linkType: hard - "@eslint/eslintrc@npm:^2.1.4": version: 2.1.4 resolution: "@eslint/eslintrc@npm:2.1.4" @@ -697,23 +668,6 @@ __metadata: languageName: node linkType: hard -"@eslint/eslintrc@npm:^3.2.0": - version: 3.2.0 - resolution: "@eslint/eslintrc@npm:3.2.0" - dependencies: - ajv: ^6.12.4 - debug: ^4.3.2 - espree: ^10.0.1 - globals: ^14.0.0 - ignore: ^5.2.0 - import-fresh: ^3.2.1 - js-yaml: ^4.1.0 - minimatch: ^3.1.2 - strip-json-comments: ^3.1.1 - checksum: c898e4d12f4c9a79a61ee3c91e38eea5627a04e021cb749191e8537445858bfe32f810eca0cb2dc9902b8ad8b65ca07ef7221dc4bad52afe60cbbf50ec56c236 - languageName: node - linkType: hard - "@eslint/js@npm:8.57.1": version: 8.57.1 resolution: "@eslint/js@npm:8.57.1" @@ -721,30 +675,13 @@ __metadata: languageName: node linkType: hard -"@eslint/js@npm:9.20.0, @eslint/js@npm:^9.19.0": +"@eslint/js@npm:^9.19.0": version: 9.20.0 resolution: "@eslint/js@npm:9.20.0" checksum: e49dcbcea1a7892222988ba410b3f1e2b756177558f3f11fa3627682c3aca7585f8124c128711035e176daf56f82b4af47dc5655ca7a825057451607e42e5d13 languageName: node linkType: hard -"@eslint/object-schema@npm:^2.1.6": - version: 2.1.6 - resolution: "@eslint/object-schema@npm:2.1.6" - checksum: e32e565319f6544d36d3fa69a3e163120722d12d666d1a4525c9a6f02e9b54c29d9b1f03139e25d7e759e08dda8da433590bc23c09db8d511162157ef1b86a4c - languageName: node - linkType: hard - -"@eslint/plugin-kit@npm:^0.2.5": - version: 0.2.5 - resolution: "@eslint/plugin-kit@npm:0.2.5" - dependencies: - "@eslint/core": ^0.10.0 - levn: ^0.4.1 - checksum: 423db33e67ff16f6db71bf8bfc8d5b0c2c4fe6f2209131e5886a573bf994bfc72ab4f825068d6521f186247731d4c9d48eb42a5e5ce389c6faa275752c0e9459 - languageName: node - linkType: hard - "@fortawesome/fontawesome-free@npm:^5.12.0": version: 5.15.4 resolution: "@fortawesome/fontawesome-free@npm:5.15.4" @@ -752,23 +689,6 @@ __metadata: languageName: node linkType: hard -"@humanfs/core@npm:^0.19.1": - version: 0.19.1 - resolution: "@humanfs/core@npm:0.19.1" - checksum: 611e0545146f55ddfdd5c20239cfb7911f9d0e28258787c4fc1a1f6214250830c9367aaaeace0096ed90b6739bee1e9c52ad5ba8adaf74ab8b449119303babfe - languageName: node - linkType: hard - -"@humanfs/node@npm:^0.16.6": - version: 0.16.6 - resolution: "@humanfs/node@npm:0.16.6" - dependencies: - "@humanfs/core": ^0.19.1 - "@humanwhocodes/retry": ^0.3.0 - checksum: f9cb52bb235f8b9c6fcff43a7e500669a38f8d6ce26593404a9b56365a1644e0ed60c720dc65ff6a696b1f85f3563ab055bb554ec8674f2559085ba840e47710 - languageName: node - linkType: hard - "@humanwhocodes/config-array@npm:^0.13.0": version: 0.13.0 resolution: "@humanwhocodes/config-array@npm:0.13.0" @@ -794,20 +714,6 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/retry@npm:^0.3.0": - version: 0.3.1 - resolution: "@humanwhocodes/retry@npm:0.3.1" - checksum: 7e5517bb51dbea3e02ab6cacef59a8f4b0ca023fc4b0b8cbc40de0ad29f46edd50b897c6e7fba79366a0217e3f48e2da8975056f6c35cfe19d9cc48f1d03c1dd - languageName: node - linkType: hard - -"@humanwhocodes/retry@npm:^0.4.1": - version: 0.4.1 - resolution: "@humanwhocodes/retry@npm:0.4.1" - checksum: f11167c28e8266faba470fd273cbaafe2827523492bc18c5623015adb7ed66f46b2e542e3d756fed9ca614300249267814220c2f5f03a59e07fdfa64fc14ad52 - languageName: node - linkType: hard - "@hutson/parse-repository-url@npm:^3.0.0": version: 3.0.2 resolution: "@hutson/parse-repository-url@npm:3.0.2" @@ -2515,7 +2421,7 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.15, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 @@ -2622,27 +2528,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/eslint-plugin@npm:8.24.0" - dependencies: - "@eslint-community/regexpp": ^4.10.0 - "@typescript-eslint/scope-manager": 8.24.0 - "@typescript-eslint/type-utils": 8.24.0 - "@typescript-eslint/utils": 8.24.0 - "@typescript-eslint/visitor-keys": 8.24.0 - graphemer: ^1.4.0 - ignore: ^5.3.1 - natural-compare: ^1.4.0 - ts-api-utils: ^2.0.1 - peerDependencies: - "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 - eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 761440236a38d51825ac22ab84fc2d054b307a1f2b7ad308bd12da2420f6d5844fdc4f44c0cd9dd30087ca2c7ecfca90b75744f119a1049b2e66533598a51900 - languageName: node - linkType: hard - "@typescript-eslint/eslint-plugin@npm:^6.1.0": version: 6.21.0 resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" @@ -2668,22 +2553,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/parser@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/parser@npm:8.24.0" - dependencies: - "@typescript-eslint/scope-manager": 8.24.0 - "@typescript-eslint/types": 8.24.0 - "@typescript-eslint/typescript-estree": 8.24.0 - "@typescript-eslint/visitor-keys": 8.24.0 - debug: ^4.3.4 - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: e9f53b152baaae042df3ca6faa55279d8219e03234688b96516bbe617ecb6fa037f137fb5b37417a5e7e67e388fc7d89c0333767b493c5f591f8e99bce9039d6 - languageName: node - linkType: hard - "@typescript-eslint/parser@npm:^6.1.0": version: 6.21.0 resolution: "@typescript-eslint/parser@npm:6.21.0" @@ -2712,16 +2581,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/scope-manager@npm:8.24.0" - dependencies: - "@typescript-eslint/types": 8.24.0 - "@typescript-eslint/visitor-keys": 8.24.0 - checksum: 1b24d972847458dd4b031e66006c534ae176d60806d3265f0d2a5686bdc3dec9c0353ea94373a855eaf7e9306304eef939781eda1a9b826633c835bceb0fce10 - languageName: node - linkType: hard - "@typescript-eslint/type-utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/type-utils@npm:6.21.0" @@ -2739,21 +2598,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/type-utils@npm:8.24.0" - dependencies: - "@typescript-eslint/typescript-estree": 8.24.0 - "@typescript-eslint/utils": 8.24.0 - debug: ^4.3.4 - ts-api-utils: ^2.0.1 - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 81322b0ebc0c7ce1396732497403c3c0f18b8d5f74b697d9288becfd414ac3bf8f7886191f82ef32772ce60a382c793142870a17364f013f9344b1cf24fd6a65 - languageName: node - linkType: hard - "@typescript-eslint/types@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/types@npm:6.21.0" @@ -2761,13 +2605,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/types@npm:8.24.0" - checksum: 31548119787c7429107a0061f5c82a2ae2b29905fbb5e867f621cea0c00fbe35b3c5ee5961936127d11226461e2248b09c8467959c8c387caa72f15d21293814 - languageName: node - linkType: hard - "@typescript-eslint/typescript-estree@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" @@ -2787,24 +2624,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/typescript-estree@npm:8.24.0" - dependencies: - "@typescript-eslint/types": 8.24.0 - "@typescript-eslint/visitor-keys": 8.24.0 - debug: ^4.3.4 - fast-glob: ^3.3.2 - is-glob: ^4.0.3 - minimatch: ^9.0.4 - semver: ^7.6.0 - ts-api-utils: ^2.0.1 - peerDependencies: - typescript: ">=4.8.4 <5.8.0" - checksum: 7415a35edc898f25443b9bbb8ec100cff54f8eafe6379348213e8958aa593981298252730b912da2a99c24e4784f23b4e32c6f56420857975bcb076e13467e00 - languageName: node - linkType: hard - "@typescript-eslint/utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/utils@npm:6.21.0" @@ -2822,21 +2641,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/utils@npm:8.24.0" - dependencies: - "@eslint-community/eslint-utils": ^4.4.0 - "@typescript-eslint/scope-manager": 8.24.0 - "@typescript-eslint/types": 8.24.0 - "@typescript-eslint/typescript-estree": 8.24.0 - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: de2897d1d2d878b86289d039a4f2b57c8f6ef88b1b48946697ca6422b10041a78f989cfa09b9b73106963bf1ed12a5081e14c3cfb6bb1b537fc8cd2b726ab73e - languageName: node - linkType: hard - "@typescript-eslint/visitor-keys@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" @@ -2847,16 +2651,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:8.24.0": - version: 8.24.0 - resolution: "@typescript-eslint/visitor-keys@npm:8.24.0" - dependencies: - "@typescript-eslint/types": 8.24.0 - eslint-visitor-keys: ^4.2.0 - checksum: c07ef21d5de644ca34802f95dc742cde75422210d80456e1e9d6f4a6cee21a1332af3bc90e62f2ca4f9e929eec9f0a25fda2043f2bdeb0acd3feab206f2a73af - languageName: node - linkType: hard - "@ungap/structured-clone@npm:^1.2.0": version: 1.2.0 resolution: "@ungap/structured-clone@npm:1.2.0" @@ -4127,7 +3921,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3, cross-spawn@npm:^7.0.6": +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": version: 7.0.6 resolution: "cross-spawn@npm:7.0.6" dependencies: @@ -4387,7 +4181,6 @@ __metadata: "@types/react": ^19.0.8 "@types/react-dom": ^19.0.3 "@vitejs/plugin-react": ^4.3.4 - eslint: ^9.19.0 eslint-plugin-react-hooks: ^5.0.0 eslint-plugin-react-refresh: ^0.4.18 globals: ^15.14.0 @@ -4395,7 +4188,6 @@ __metadata: react: ^19.0.0 react-dom: ^19.0.0 typescript: ~5.7.2 - typescript-eslint: ^8.22.0 vite: ^6.1.0 languageName: unknown linkType: soft @@ -5019,16 +4811,6 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^8.2.0": - version: 8.2.0 - resolution: "eslint-scope@npm:8.2.0" - dependencies: - esrecurse: ^4.3.0 - estraverse: ^5.2.0 - checksum: 750eff4672ca2bf274ec0d1bbeae08aadd53c1907d5c6aff5564d8e047a5f49afa8ae6eee333cab637fd3ebcab2141659d8f2f040f6fdc982b0f61f8bf03136f - languageName: node - linkType: hard - "eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" @@ -5036,13 +4818,6 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^4.2.0": - version: 4.2.0 - resolution: "eslint-visitor-keys@npm:4.2.0" - checksum: 779c604672b570bb4da84cef32f6abb085ac78379779c1122d7879eade8bb38ae715645324597cf23232d03cef06032c9844d25c73625bc282a5bfd30247e5b5 - languageName: node - linkType: hard - "eslint@npm:^8.36.0": version: 8.57.1 resolution: "eslint@npm:8.57.1" @@ -5091,66 +4866,6 @@ __metadata: languageName: node linkType: hard -"eslint@npm:^9.19.0": - version: 9.20.1 - resolution: "eslint@npm:9.20.1" - dependencies: - "@eslint-community/eslint-utils": ^4.2.0 - "@eslint-community/regexpp": ^4.12.1 - "@eslint/config-array": ^0.19.0 - "@eslint/core": ^0.11.0 - "@eslint/eslintrc": ^3.2.0 - "@eslint/js": 9.20.0 - "@eslint/plugin-kit": ^0.2.5 - "@humanfs/node": ^0.16.6 - "@humanwhocodes/module-importer": ^1.0.1 - "@humanwhocodes/retry": ^0.4.1 - "@types/estree": ^1.0.6 - "@types/json-schema": ^7.0.15 - ajv: ^6.12.4 - chalk: ^4.0.0 - cross-spawn: ^7.0.6 - debug: ^4.3.2 - escape-string-regexp: ^4.0.0 - eslint-scope: ^8.2.0 - eslint-visitor-keys: ^4.2.0 - espree: ^10.3.0 - esquery: ^1.5.0 - esutils: ^2.0.2 - fast-deep-equal: ^3.1.3 - file-entry-cache: ^8.0.0 - find-up: ^5.0.0 - glob-parent: ^6.0.2 - ignore: ^5.2.0 - imurmurhash: ^0.1.4 - is-glob: ^4.0.0 - json-stable-stringify-without-jsonify: ^1.0.1 - lodash.merge: ^4.6.2 - minimatch: ^3.1.2 - natural-compare: ^1.4.0 - optionator: ^0.9.3 - peerDependencies: - jiti: "*" - peerDependenciesMeta: - jiti: - optional: true - bin: - eslint: bin/eslint.js - checksum: 561d24faa8438ef8a9bfbbde3de60f1d1b91171cd1c910b4581b8c8fb6e2e97fc42685fba66fefb3577b95237f05ae4e752afa24943a114d488448fed47eaa03 - languageName: node - linkType: hard - -"espree@npm:^10.0.1, espree@npm:^10.3.0": - version: 10.3.0 - resolution: "espree@npm:10.3.0" - dependencies: - acorn: ^8.14.0 - acorn-jsx: ^5.3.2 - eslint-visitor-keys: ^4.2.0 - checksum: 63e8030ff5a98cea7f8b3e3a1487c998665e28d674af08b9b3100ed991670eb3cbb0e308c4548c79e03762753838fbe530c783f17309450d6b47a889fee72bef - languageName: node - linkType: hard - "espree@npm:^9.6.0, espree@npm:^9.6.1": version: 9.6.1 resolution: "espree@npm:9.6.1" @@ -5172,7 +4887,7 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.2, esquery@npm:^1.5.0": +"esquery@npm:^1.4.2": version: 1.6.0 resolution: "esquery@npm:1.6.0" dependencies: @@ -5294,19 +5009,6 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.3.2": - version: 3.3.3 - resolution: "fast-glob@npm:3.3.3" - dependencies: - "@nodelib/fs.stat": ^2.0.2 - "@nodelib/fs.walk": ^1.2.3 - glob-parent: ^5.1.2 - merge2: ^1.3.0 - micromatch: ^4.0.8 - checksum: 0704d7b85c0305fd2cef37777337dfa26230fdd072dce9fb5c82a4b03156f3ffb8ed3e636033e65d45d2a5805a4e475825369a27404c0307f2db0c8eb3366fbd - languageName: node - linkType: hard - "fast-json-stable-stringify@npm:^2.0.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" @@ -5371,15 +5073,6 @@ __metadata: languageName: node linkType: hard -"file-entry-cache@npm:^8.0.0": - version: 8.0.0 - resolution: "file-entry-cache@npm:8.0.0" - dependencies: - flat-cache: ^4.0.0 - checksum: f67802d3334809048c69b3d458f672e1b6d26daefda701761c81f203b80149c35dea04d78ea4238969dd617678e530876722a0634c43031a0957f10cc3ed190f - languageName: node - linkType: hard - "filelist@npm:^1.0.4": version: 1.0.4 resolution: "filelist@npm:1.0.4" @@ -5445,16 +5138,6 @@ __metadata: languageName: node linkType: hard -"flat-cache@npm:^4.0.0": - version: 4.0.1 - resolution: "flat-cache@npm:4.0.1" - dependencies: - flatted: ^3.2.9 - keyv: ^4.5.4 - checksum: 899fc86bf6df093547d76e7bfaeb900824b869d7d457d02e9b8aae24836f0a99fbad79328cfd6415ee8908f180699bf259dc7614f793447cb14f707caf5996f6 - languageName: node - linkType: hard - "flat@npm:^5.0.2": version: 5.0.2 resolution: "flat@npm:5.0.2" @@ -5879,13 +5562,6 @@ __metadata: languageName: node linkType: hard -"globals@npm:^14.0.0": - version: 14.0.0 - resolution: "globals@npm:14.0.0" - checksum: 534b8216736a5425737f59f6e6a5c7f386254560c9f41d24a9227d60ee3ad4a9e82c5b85def0e212e9d92162f83a92544be4c7fd4c902cb913736c10e08237ac - languageName: node - linkType: hard - "globals@npm:^15.14.0": version: 15.15.0 resolution: "globals@npm:15.15.0" @@ -6162,7 +5838,7 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.0.4, ignore@npm:^5.2.0, ignore@npm:^5.2.4, ignore@npm:^5.3.1": +"ignore@npm:^5.0.4, ignore@npm:^5.2.0, ignore@npm:^5.2.4": version: 5.3.2 resolution: "ignore@npm:5.3.2" checksum: 2acfd32a573260ea522ea0bfeff880af426d68f6831f973129e2ba7363f422923cf53aab62f8369cbf4667c7b25b6f8a3761b34ecdb284ea18e87a5262a865be @@ -7027,7 +6703,7 @@ __metadata: languageName: node linkType: hard -"keyv@npm:^4.5.3, keyv@npm:^4.5.4": +"keyv@npm:^4.5.3": version: 4.5.4 resolution: "keyv@npm:4.5.4" dependencies: @@ -7530,7 +7206,7 @@ __metadata: languageName: node linkType: hard -"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": +"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5": version: 4.0.8 resolution: "micromatch@npm:4.0.8" dependencies: @@ -9677,15 +9353,6 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.6.0": - version: 7.7.1 - resolution: "semver@npm:7.7.1" - bin: - semver: bin/semver.js - checksum: 586b825d36874007c9382d9e1ad8f93888d8670040add24a28e06a910aeebd673a2eb9e3bf169c6679d9245e66efb9057e0852e70d9daa6c27372aab1dda7104 - languageName: node - linkType: hard - "serialize-javascript@npm:^6.0.1": version: 6.0.2 resolution: "serialize-javascript@npm:6.0.2" @@ -10563,15 +10230,6 @@ __metadata: languageName: node linkType: hard -"ts-api-utils@npm:^2.0.1": - version: 2.0.1 - resolution: "ts-api-utils@npm:2.0.1" - peerDependencies: - typescript: ">=4.8.4" - checksum: ca31f4dc3c0d69691599de2955b41879c27cb91257f2a468bbb444d3f09982a5f717a941fcebd3aaa092b778710647a0be1c2b1dd75cf6c82ceffc3bf4c7d27d - languageName: node - linkType: hard - "tsconfig-paths@npm:^4.1.2": version: 4.2.0 resolution: "tsconfig-paths@npm:4.2.0" @@ -10726,20 +10384,6 @@ __metadata: languageName: node linkType: hard -"typescript-eslint@npm:^8.22.0": - version: 8.24.0 - resolution: "typescript-eslint@npm:8.24.0" - dependencies: - "@typescript-eslint/eslint-plugin": 8.24.0 - "@typescript-eslint/parser": 8.24.0 - "@typescript-eslint/utils": 8.24.0 - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: ">=4.8.4 <5.8.0" - checksum: 96587b657e0f73e2bdbf0cde504e7a020511be21785397fddff74fb00795c3e36d79b72d5df091430db4b18aefe1e507998d9f456d070b1b7ea86c3da2273bec - languageName: node - linkType: hard - "typescript@npm:>=3 < 6": version: 5.7.2 resolution: "typescript@npm:5.7.2" From 52579217077923e2912fd735ebd06fb83d4e7a77 Mon Sep 17 00:00:00 2001 From: Greg Date: Fri, 28 Feb 2025 19:01:49 +0100 Subject: [PATCH 14/38] Bring in other repo --- demo-react/index.html | 13 - demo-react/jupyter_server_config.py | 15 - demo-react/package.json | 34 - demo-react/src/components/JupyterIframe.tsx | 67 - demo-react/src/vite-env.d.ts | 1 - demo-react/tsconfig.json | 7 - {demo-react => demo}/.gitignore | 0 {demo-react => demo}/README.md | 0 demo/config/cell-toolbar.json | 29 + demo/example.ipynb | 2 +- .../example.ipynb => demo/example2.ipynb | 6 +- demo/icons/arrowDown.svg | 3 + demo/icons/clipboard.svg | 3 + demo/icons/code.svg | 3 + demo/icons/indicator.svg | 4 + demo/icons/keyboard.svg | 3 + demo/icons/markdown.svg | 3 + demo/icons/play.svg | 3 + demo/icons/plus.svg | 3 + demo/icons/redo.svg | 4 + demo/icons/save.svg | 3 + demo/icons/undo.svg | 3 + demo/index.html | 59 +- demo/package.json | 22 +- {demo-react => demo}/public/vite.svg | 0 demo/soma.ipynb | 627 ++ {demo-react => demo}/src/App.css | 0 {demo-react => demo}/src/App.tsx | 20 +- {demo-react => demo}/src/assets/react.svg | 0 demo/src/components/CssLoader.tsx | 37 + {demo-react => demo}/src/components/Error.tsx | 6 +- .../components/FileMenuBar/AddCellButton.tsx | 51 + .../FileMenuBar/AvailableCommands.tsx | 93 + .../components/FileMenuBar/FileMenuBar.tsx | 72 + .../src/components/FileMenuBar/KernelInfo.tsx | 63 + .../FileMenuBar/PopoverListItem.tsx | 30 + demo/src/components/FileMenuBar/RunButton.tsx | 78 + .../components/FileMenuBar/fileMenuBar.css | 690 +++ .../FileMenuBar/useGetJupyterInfo.ts | 12 + demo/src/components/FileMenuBar/usePopover.ts | 28 + .../src/components/InputArea.tsx | 6 +- .../src/components/Instructions.tsx | 3 + demo/src/components/JupyterIframe.tsx | 68 + .../src/components/ListCommands.tsx | 8 +- .../src/components/ModeToggle.tsx | 6 +- demo/src/components/NoteBookBrowser.tsx | 68 + {demo-react => demo}/src/index.css | 69 +- demo/src/jupyter.css | 297 + demo/src/main.js | 159 - {demo-react => demo}/src/main.tsx | 3 +- demo/src/style.css | 260 - {demo-react => demo}/tsconfig.app.json | 0 demo/tsconfig.json | 26 +- {demo-react => demo}/tsconfig.node.json | 0 {demo-react => demo}/vite.config.ts | 0 packages/css-extension/.copier-answers.yml | 14 + .../css-extension/.github/workflows/build.yml | 153 + .../.github/workflows/check-release.yml | 30 + .../.github/workflows/enforce-label.yml | 13 + .../.github/workflows/prep-release.yml | 48 + .../.github/workflows/publish-release.yml | 58 + .../workflows/update-integration-tests.yml | 89 + packages/css-extension/.gitignore | 125 + packages/css-extension/.prettierignore | 6 + packages/css-extension/.yarnrc.yml | 1 + packages/css-extension/CHANGELOG.md | 5 + packages/css-extension/LICENSE | 29 + packages/css-extension/README.md | 97 + packages/css-extension/RELEASE.md | 80 + packages/css-extension/babel.config.js | 1 + packages/css-extension/install.json | 5 + packages/css-extension/jest.config.js | 28 + .../jupyter_css_loader/__init__.py | 16 + packages/css-extension/package.json | 191 + packages/css-extension/pyproject.toml | 77 + packages/css-extension/setup.py | 1 + .../src/__tests__/jupyter_css_loader.spec.ts | 9 + packages/css-extension/src/index.ts | 30 + packages/css-extension/style/base.css | 5 + packages/css-extension/style/index.css | 1 + packages/css-extension/style/index.js | 1 + packages/css-extension/tsconfig.json | 25 + packages/css-extension/tsconfig.test.json | 3 + packages/css-extension/ui-tests/README.md | 167 + .../ui-tests/jupyter_server_test_config.py | 12 + packages/css-extension/ui-tests/package.json | 15 + .../ui-tests/playwright.config.js | 14 + .../ui-tests/tests/jupyter_css_loader.spec.ts | 21 + packages/css-extension/ui-tests/yarn.lock | 0 packages/extension/src/index.ts | 32 +- packages/host/src/index.ts | 64 +- tsconfig.json | 3 +- yarn.lock | 5124 ++++++++++++++--- 93 files changed, 8321 insertions(+), 1342 deletions(-) delete mode 100644 demo-react/index.html delete mode 100644 demo-react/jupyter_server_config.py delete mode 100644 demo-react/package.json delete mode 100644 demo-react/src/components/JupyterIframe.tsx delete mode 100644 demo-react/src/vite-env.d.ts delete mode 100644 demo-react/tsconfig.json rename {demo-react => demo}/.gitignore (100%) rename {demo-react => demo}/README.md (100%) create mode 100644 demo/config/cell-toolbar.json rename demo-react/example.ipynb => demo/example2.ipynb (92%) create mode 100644 demo/icons/arrowDown.svg create mode 100644 demo/icons/clipboard.svg create mode 100644 demo/icons/code.svg create mode 100644 demo/icons/indicator.svg create mode 100644 demo/icons/keyboard.svg create mode 100644 demo/icons/markdown.svg create mode 100644 demo/icons/play.svg create mode 100644 demo/icons/plus.svg create mode 100644 demo/icons/redo.svg create mode 100644 demo/icons/save.svg create mode 100644 demo/icons/undo.svg rename {demo-react => demo}/public/vite.svg (100%) create mode 100644 demo/soma.ipynb rename {demo-react => demo}/src/App.css (100%) rename {demo-react => demo}/src/App.tsx (74%) rename {demo-react => demo}/src/assets/react.svg (100%) create mode 100644 demo/src/components/CssLoader.tsx rename {demo-react => demo}/src/components/Error.tsx (83%) create mode 100644 demo/src/components/FileMenuBar/AddCellButton.tsx create mode 100644 demo/src/components/FileMenuBar/AvailableCommands.tsx create mode 100644 demo/src/components/FileMenuBar/FileMenuBar.tsx create mode 100644 demo/src/components/FileMenuBar/KernelInfo.tsx create mode 100644 demo/src/components/FileMenuBar/PopoverListItem.tsx create mode 100644 demo/src/components/FileMenuBar/RunButton.tsx create mode 100644 demo/src/components/FileMenuBar/fileMenuBar.css create mode 100644 demo/src/components/FileMenuBar/useGetJupyterInfo.ts create mode 100644 demo/src/components/FileMenuBar/usePopover.ts rename {demo-react => demo}/src/components/InputArea.tsx (85%) rename {demo-react => demo}/src/components/Instructions.tsx (98%) create mode 100644 demo/src/components/JupyterIframe.tsx rename {demo-react => demo}/src/components/ListCommands.tsx (90%) rename {demo-react => demo}/src/components/ModeToggle.tsx (90%) create mode 100644 demo/src/components/NoteBookBrowser.tsx rename {demo-react => demo}/src/index.css (81%) create mode 100644 demo/src/jupyter.css delete mode 100644 demo/src/main.js rename {demo-react => demo}/src/main.tsx (90%) delete mode 100644 demo/src/style.css rename {demo-react => demo}/tsconfig.app.json (100%) rename {demo-react => demo}/tsconfig.node.json (100%) rename {demo-react => demo}/vite.config.ts (100%) create mode 100644 packages/css-extension/.copier-answers.yml create mode 100644 packages/css-extension/.github/workflows/build.yml create mode 100644 packages/css-extension/.github/workflows/check-release.yml create mode 100644 packages/css-extension/.github/workflows/enforce-label.yml create mode 100644 packages/css-extension/.github/workflows/prep-release.yml create mode 100644 packages/css-extension/.github/workflows/publish-release.yml create mode 100644 packages/css-extension/.github/workflows/update-integration-tests.yml create mode 100644 packages/css-extension/.gitignore create mode 100644 packages/css-extension/.prettierignore create mode 100644 packages/css-extension/.yarnrc.yml create mode 100644 packages/css-extension/CHANGELOG.md create mode 100644 packages/css-extension/LICENSE create mode 100644 packages/css-extension/README.md create mode 100644 packages/css-extension/RELEASE.md create mode 100644 packages/css-extension/babel.config.js create mode 100644 packages/css-extension/install.json create mode 100644 packages/css-extension/jest.config.js create mode 100644 packages/css-extension/jupyter_css_loader/__init__.py create mode 100644 packages/css-extension/package.json create mode 100644 packages/css-extension/pyproject.toml create mode 100644 packages/css-extension/setup.py create mode 100644 packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts create mode 100644 packages/css-extension/src/index.ts create mode 100644 packages/css-extension/style/base.css create mode 100644 packages/css-extension/style/index.css create mode 100644 packages/css-extension/style/index.js create mode 100644 packages/css-extension/tsconfig.json create mode 100644 packages/css-extension/tsconfig.test.json create mode 100644 packages/css-extension/ui-tests/README.md create mode 100644 packages/css-extension/ui-tests/jupyter_server_test_config.py create mode 100644 packages/css-extension/ui-tests/package.json create mode 100644 packages/css-extension/ui-tests/playwright.config.js create mode 100644 packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts create mode 100644 packages/css-extension/ui-tests/yarn.lock diff --git a/demo-react/index.html b/demo-react/index.html deleted file mode 100644 index e4b78ea..0000000 --- a/demo-react/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - Vite + React + TS - - -
- - - diff --git a/demo-react/jupyter_server_config.py b/demo-react/jupyter_server_config.py deleted file mode 100644 index 414d82b..0000000 --- a/demo-react/jupyter_server_config.py +++ /dev/null @@ -1,15 +0,0 @@ -# do not open JupyterLab in a browser after starting -c.ServerApp.open_browser = False - -# disable the token for easier testing in an IFrame -c.ServerApp.token = "" - -# Allow embedding JupyterLab in an IFrame from a specific host -c.ServerApp.tornado_settings = { - "headers": { - "Content-Security-Policy": "frame-ancestors 'self' http://localhost:8080 http://127.0.0.1:8080" - } -} -c.ServerApp.allow_origin = "http://localhost:8080" - -c.ServerApp.disable_check_xsrf = True diff --git a/demo-react/package.json b/demo-react/package.json deleted file mode 100644 index 1372542..0000000 --- a/demo-react/package.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "demo-react", - "private": true, - "version": "0.0.0", - "type": "module", - "scripts": { - "dev": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite", - "build": "tsc && VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite build --base=./", - "build:ghpages": "tsc && VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite build --base=./", - "build:lite": "jlpm clean:lite && jupyter lite build --contents ../README.md --contents ./example.ipynb --lite-dir ./config --output-dir ./public/lite", - "clean:lite": "rm -rf public/lite", - "preview": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite preview", - "start:lab": "jupyter lab --config jupyter_server_config.py", - "start:lite": "jlpm dev", - "start:local": "VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite --port 8080", - "lint": "eslint ." - }, - "dependencies": { - "jupyter-iframe-commands-host": "^0.1.0", - "react": "^19.0.0", - "react-dom": "^19.0.0" - }, - "devDependencies": { - "@eslint/js": "^9.19.0", - "@types/react": "^19.0.8", - "@types/react-dom": "^19.0.3", - "@vitejs/plugin-react": "^4.3.4", - "eslint-plugin-react-hooks": "^5.0.0", - "eslint-plugin-react-refresh": "^0.4.18", - "globals": "^15.14.0", - "typescript": "~5.7.2", - "vite": "^6.1.0" - } -} diff --git a/demo-react/src/components/JupyterIframe.tsx b/demo-react/src/components/JupyterIframe.tsx deleted file mode 100644 index cef3441..0000000 --- a/demo-react/src/components/JupyterIframe.tsx +++ /dev/null @@ -1,67 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { createBridge } from 'jupyter-iframe-commands-host'; -import { forwardRef, useEffect, useImperativeHandle, useRef } from 'react'; - -interface IProps { - iframeSrc: string; - onBridgeReady: (value: boolean) => void; -} - -const JupyterIframe = forwardRef( - ({ iframeSrc, onBridgeReady }: IProps, ref) => { - const iframeRef = useRef(null); - const bridgeRef = useRef(null); - - useEffect(() => { - // from MDN - const getAllCss = [...document.styleSheets] - .map(styleSheet => { - try { - return [...styleSheet.cssRules].map(rule => rule.cssText).join(''); - } catch (e) { - console.log( - 'Access to stylesheet %s is denied. Ignoring…', - styleSheet.href - ); - } - }) - .filter(Boolean) - .join('\n'); - - window.onmessage = async e => { - if (e.data === 'extension-loaded') { - bridgeRef.current = createBridge({ iframeId: 'jupyterlab' }); - onBridgeReady(true); - - // Example of getting style from host page - iframeRef.current?.contentWindow?.postMessage( - { - // To differentiate from comlink messages - type: 'CSS', - style: getAllCss - }, - iframeSrc - ); - } - }; - }, []); - - useImperativeHandle(ref, () => ({ - getBridge: () => bridgeRef.current, - listCommands: async () => await bridgeRef.current?.listCommands() - })); - - return ( - - ); - } -); - -export default JupyterIframe; diff --git a/demo-react/src/vite-env.d.ts b/demo-react/src/vite-env.d.ts deleted file mode 100644 index 11f02fe..0000000 --- a/demo-react/src/vite-env.d.ts +++ /dev/null @@ -1 +0,0 @@ -/// diff --git a/demo-react/tsconfig.json b/demo-react/tsconfig.json deleted file mode 100644 index 1ffef60..0000000 --- a/demo-react/tsconfig.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "files": [], - "references": [ - { "path": "./tsconfig.app.json" }, - { "path": "./tsconfig.node.json" } - ] -} diff --git a/demo-react/.gitignore b/demo/.gitignore similarity index 100% rename from demo-react/.gitignore rename to demo/.gitignore diff --git a/demo-react/README.md b/demo/README.md similarity index 100% rename from demo-react/README.md rename to demo/README.md diff --git a/demo/config/cell-toolbar.json b/demo/config/cell-toolbar.json new file mode 100644 index 0000000..44debbe --- /dev/null +++ b/demo/config/cell-toolbar.json @@ -0,0 +1,29 @@ +{ + "showToolbar": true, + "toolbar": [ + { + "name": "run-cell", + "command": "notebook:run-cell", + "icon": "ui-components:run", + "rank": 1 + }, + { + "name": "copy-cell", + "command": "notebook:copy-to-clipboard", + "icon": "ui-components:copy", + "rank": 2 + }, + { + "name": "duplicate-cell", + "command": "notebook:duplicate-below", + "rank": 3 + }, + + { + "name": "delete-cell", + "command": "notebook:delete-cell", + "icon": "ui-components:delete", + "rank": 4 + } + ] +} diff --git a/demo/example.ipynb b/demo/example.ipynb index 8f7e275..78bae89 100644 --- a/demo/example.ipynb +++ b/demo/example.ipynb @@ -16,7 +16,7 @@ "outputs": [], "source": [ "# Create a simple list of numbers\n", - "numbers = list(range(1, 6))\n", + "numbers = list(range(1, 7))\n", "print(f\"Numbers: {numbers}\")" ] }, diff --git a/demo-react/example.ipynb b/demo/example2.ipynb similarity index 92% rename from demo-react/example.ipynb rename to demo/example2.ipynb index 8f7e275..aee135c 100644 --- a/demo-react/example.ipynb +++ b/demo/example2.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Example Notebook\n", + "# This is a different Example Notebook\n", "\n", "This is a simple example notebook that demonstrates basic Python functionality." ] @@ -16,7 +16,7 @@ "outputs": [], "source": [ "# Create a simple list of numbers\n", - "numbers = list(range(1, 6))\n", + "numbers = list(range(1, 7))\n", "print(f\"Numbers: {numbers}\")" ] }, @@ -65,7 +65,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.8" + "version": "3.12.9" } }, "nbformat": 4, diff --git a/demo/icons/arrowDown.svg b/demo/icons/arrowDown.svg new file mode 100644 index 0000000..9d48dd4 --- /dev/null +++ b/demo/icons/arrowDown.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/clipboard.svg b/demo/icons/clipboard.svg new file mode 100644 index 0000000..b20cbe2 --- /dev/null +++ b/demo/icons/clipboard.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/code.svg b/demo/icons/code.svg new file mode 100644 index 0000000..7191ce4 --- /dev/null +++ b/demo/icons/code.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/indicator.svg b/demo/icons/indicator.svg new file mode 100644 index 0000000..0681628 --- /dev/null +++ b/demo/icons/indicator.svg @@ -0,0 +1,4 @@ + + + + diff --git a/demo/icons/keyboard.svg b/demo/icons/keyboard.svg new file mode 100644 index 0000000..88eaaab --- /dev/null +++ b/demo/icons/keyboard.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/markdown.svg b/demo/icons/markdown.svg new file mode 100644 index 0000000..26d7158 --- /dev/null +++ b/demo/icons/markdown.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/play.svg b/demo/icons/play.svg new file mode 100644 index 0000000..34ffc4b --- /dev/null +++ b/demo/icons/play.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/plus.svg b/demo/icons/plus.svg new file mode 100644 index 0000000..d64f209 --- /dev/null +++ b/demo/icons/plus.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/redo.svg b/demo/icons/redo.svg new file mode 100644 index 0000000..a92fd3a --- /dev/null +++ b/demo/icons/redo.svg @@ -0,0 +1,4 @@ + + + + diff --git a/demo/icons/save.svg b/demo/icons/save.svg new file mode 100644 index 0000000..5d31d11 --- /dev/null +++ b/demo/icons/save.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/icons/undo.svg b/demo/icons/undo.svg new file mode 100644 index 0000000..43753ff --- /dev/null +++ b/demo/icons/undo.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/index.html b/demo/index.html index da97418..e4b78ea 100644 --- a/demo/index.html +++ b/demo/index.html @@ -1,64 +1,13 @@ - + - - - Jupyter IFrame Commands Demo - + Vite + React + TS -
-

%VITE_TITLE% Demo

-
- - -
- - -
-
-
-
- - - -
-
-
- - +
+ diff --git a/demo/package.json b/demo/package.json index 67028c0..1372542 100644 --- a/demo/package.json +++ b/demo/package.json @@ -1,7 +1,7 @@ { - "name": "jupyter-iframe-commands-demo", + "name": "demo-react", "private": true, - "version": "0.1.0", + "version": "0.0.0", "type": "module", "scripts": { "dev": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite", @@ -12,13 +12,23 @@ "preview": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite preview", "start:lab": "jupyter lab --config jupyter_server_config.py", "start:lite": "jlpm dev", - "start:local": "VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite --port 8080" + "start:local": "VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite --port 8080", + "lint": "eslint ." }, "dependencies": { - "jupyter-iframe-commands-host": "^0.1.0" + "jupyter-iframe-commands-host": "^0.1.0", + "react": "^19.0.0", + "react-dom": "^19.0.0" }, "devDependencies": { - "typescript": "~5.6.2", - "vite": "^6.0.1" + "@eslint/js": "^9.19.0", + "@types/react": "^19.0.8", + "@types/react-dom": "^19.0.3", + "@vitejs/plugin-react": "^4.3.4", + "eslint-plugin-react-hooks": "^5.0.0", + "eslint-plugin-react-refresh": "^0.4.18", + "globals": "^15.14.0", + "typescript": "~5.7.2", + "vite": "^6.1.0" } } diff --git a/demo-react/public/vite.svg b/demo/public/vite.svg similarity index 100% rename from demo-react/public/vite.svg rename to demo/public/vite.svg diff --git a/demo/soma.ipynb b/demo/soma.ipynb new file mode 100644 index 0000000..c28312d --- /dev/null +++ b/demo/soma.ipynb @@ -0,0 +1,627 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "0", + "metadata": {}, + "source": [ + "# TileDB-SOMA ML Webinar: Cell Similarity Search\n", + "\n", + "In this tutorial, you will use [TileDB-Vector-Search](https://cloud.tiledb.com/academy/structure/ai-ml/vector-search/) to perform cell similarity search using:\n", + "- [CZI CELLxGENE Census](https://chanzuckerberg.github.io/cellxgene-census) (74 million human reference cells)\n", + "- [scVI embeddings](https://www.nature.com/articles/s41592-018-0229-2)\n", + "\n", + "You can use cell similarity search for:\n", + "\n", + "- Sample reference mapping:\n", + " - Automatic cell annotation based on retrieved similar cells (e.g. cell_type) to bootstrap the analysis of a new sample.\n", + "\n", + "- Interactive analysis:\n", + " - For cells of interest, interactively explore similar cells from the reference dataset, applying structured restricts.\n", + "\n", + "**Contents**\n", + "* [Setup](#setup)\n", + "* [Indexing](#indexing)\n", + "* [Similarity Search](#similarity-search)\n", + "* [Sample reference mapping](#sample-reference-mapping)\n", + "* [Cell interactive analysis](#cell-interactive-analysis)\n", + "\n", + "\n", + "## Setup \n", + "\n", + "Import libraries and setup URIs." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "1", + "metadata": {}, + "outputs": [], + "source": [ + "import warnings\n", + "\n", + "import numpy as np\n", + "import pandas as pd\n", + "import scanpy as sc\n", + "import tiledb.cloud\n", + "from tiledb.vector_search.object_api import object_index\n", + "\n", + "warnings.filterwarnings(\"ignore\")\n", + "\n", + "index_uri = \"tiledb://TileDB-Inc/cell-census-2024-07-01-scvi-index\"\n", + "\n", + "# Set region and no_sign_request for S3\n", + "config = tiledb.cloud.Config().dict()\n", + "config[\"vfs.s3.region\"] = \"us-west-2\"\n", + "config[\"vfs.s3.no_sign_request\"] = \"true\"" + ] + }, + { + "cell_type": "markdown", + "id": "2", + "metadata": {}, + "source": [ + "## Indexing \n", + "\n", + "You can index the Census in TileDB using distributed execution for both embedding generation and vector indexing. \n", + "\n", + "![Census embedding generation](data:image/png;base64,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AgoooICBTP8GFFBAAQUUUEABBRRQQAEFFFBAAQUUUKDqBQxkVv0pcgcVUEABBRRQQAEFFFBAAQUUUEABBRRQwEBmM/4Gxo8fH958880wefLkZiztIgoooIACCiiggAIKKKCAAgoooIACCihQqkCXUhdozvwTJ04KEydNrljgr66uLnTuNOWnc/nisieddFL47LPPpjrcddddN/Tv3z9ccMEF4eSTTw5PPfVUeOaZZ8Jpp5021bzZCQcccEAYN25cYF9nm222sOCCC4YBAwaEnj17huHDh4dTTz01N/s888wTVlhhhbDRRhvlpuW/YfsEVA899ND8r/ysgAIKKKCAAgoooIACCiiggAIKKKBAzQlUNJBJi8XxEyZVLICZzgbbmTBxcgyWdu3SKQYL03fNfd1jjz1i4PHtt98OQ4cODQceeGCYdtppw/TTTx969+4dzjvvvNCjR4+Cq584ceKUoGrnqb5bbbXVwoorrhjeeuut8Oyzz8ZAaTYQucsuu4S55porvPTSS+G2224Liy66aCCoWUqaNGlS6NRp6oDuhAkTQpcuFT3dpeym8yqggAIKKKCAAgoooIACCiiggAIKKFCSQEUjW60RxMwebQqcdus6dRAxO18x7+ecc84428iRI+Nr3759YxCTDwQizz333HDKKafE79KvMWPGhCuuuCJ+T5Bzs802C7TgTGmWWWaJwUkClEsssUQ466yzAoHSGWecMc5CS81+/frFVpr33Xdf+P7779Oijb7SGpTg6tdffx2Do8sss0zYc889Y0Dz888/D1dddVX49NNPw0wzzRR22mmnsPTSSze6Pr9UQAEFFFBAAQUUUEABBRRQQAEFFFCg2gQqFsikO3lbjCHJNtl2ObuZF3vSbrjhhkDg85hjjglffPFFGDJkSJh33nnjT/466FpOt/KPP/44EHgkEbykq/o777wTA6CLL754nH7TTTflLOeff/6w0korxenZX6+//noYOHBgDGbeeOONYY011ggLL7xwOP/880OfPn3C4MGDw+OPPx6uvPLKGEC1dWZWz/cKKKCAAgoooIACCiiggAIKKKCAAtUuMHUf5DLtMWNitlVqq23TUpOWmAQM33///dC9e/fwwQcfFGQg4MoPY2amNPPMM4c55pgjdicnoMk6UmK+7LxpenqllSeBz7XWWivuw4cffhi+/PLL8O2334YNNtggdlnfcccdYyvSQl3P03p8VUABBRRQQAEFFFBAAQUUUEABBRRQoBoFKtYisy1aYybgtto241NON910MWjIvuywww4hdVFP+5ZeCVL+8ssv9Vpr8oCfBRZYIAYejzvuuPDII4/EVpV0B28qETQlEexMrS3Zn2xK3zUWEM3O73sFFFBAAQUUUEABBRRQQAEFFFBAAQWqRaBigcxqOcDW3A+6co8YMSIstNBC8Ynid9xxR+g3ZczLlL755ps4fuawYcPCc889F+abb744ZibjWJJ45SFBPC2deRdbbLG0aLNeZ5999jiu50MPPRS7lz/22GPhySefjF3Lu3bt2qx1upACCiiggAIKKKCAAgoooIACCiiggAJtIVCVgcznv/xPt/QVZ/tft+u2wCl1m7/73e/iuJjHH3987FZOC0ueQp4S3cWffvrp2H2ccTEHDBgQunXrlr4O119/fXxPq06+33LLLXPfNecNXcgPOuig+AAixsjkqeu77rprMIjZHE2XUUABBRRQQAEFFFBAAQUUUEABBRRoS4G6Kd2wKzKY5dhxE5p1XAQxX/jqP7u0wqx1obnBzO7d2i5GO27cuNi9u5rGouSJ6ozfaVJAAQUUUEABBRRQQAEFFFBAAQUUUKA9CrR5IPOmv/8U3eZfvlcugJkPSUBzmh/GhzffGxd22nza/K8Lfm7LQGbBHXKiAgoooIACCiiggAIKKKCAAgoooIACCjRboO2aLU7ZZYKY/Cy5ULew5trThs9HN3wcx5z9bfySYOYph87c8Ix+o4ACCiiggAIKKKCAAgoooIACCiiggAI1J9CmgUyCkqQ3prw+/uh/WmYWEr7zv/MV+s5pCiiggAIKKKCAAgoooIACCiiggAIKKFD7Am0ayMzypi7m2Wm+V0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFEOgkgwIKKKCAAgoooIACCiiggAIKKKCAAgooUO0CVdEikzEyd2ziIT43TxlLky7opvYjMGnSpPD000+HhRZaKPTp06f97Lh7WlDA81mQxYkKKKCAAgoooIACCiiggAIKKNBKAlURyCRA+cZ/H+bTSsdd1Zs56aSTAkEj0tFHHx26du3aavv7888/hzPOOCNur0ePHuGII45octtvvfVWuOWWW+J8iyyySNhhhx3i+0GDBoUbb7wxdOvWLbz44oth1llnbXJdzlC9Ap7P6j037pkCCiiggAIKKKCAAgoooIACHUGgKgKZHQG6lGO8+OKLw8SJE+Mif/zjH1s1kPnLL7+Eiy66KG57hhlmKCqQ+cEHH+SW2WSTTXKBzE8//TSuZ9y4ceHLL780kFnKH0EbzXv55ZeHESNGxK3vvvvuYfbZZ8/tieczR+EbBRRQQAEFFFBAAQUUUEABBRRoA4GqCGTatbwNznwrbJKWnVdeeWVYcsklw9JLL90KW3QTLRW44YYbAi1sSZtuumm9QKbns6W6Lq+AAgoooIACCiiggAIKKKCAAi0RqIpAZnvpWk53706dSns+UmPLNPZdoZNayvyVmjftVzHrn2+++cLJJ5+cFmn0lRaonTt3bnQevpw8eXKcp66ursl5S5mhuestxiF/P0rZVnPWP378+AZb8U6YMCF06dK8f/tiz2dz9hmjYv8G8j39rIACCiiggAIKKKCAAgoooIACHUOgtKhcBU1olZn9qeCmSlr16NGjw4UXXhh22mmnsMACC4RlllkmDBw4MDzwwAP11vP444+HJZZYIv4wxuV7770Xdtttt7jMGmusEc4777w4/6hRo8Khhx4all122dC3b9+w9dZbh3feeafeurIf6JZ93HHHxVaNbH+XXXaZattp/o8//jiccsopge7d88wzT1hzzTXD4YcfHt599900S73Xf/7zn2HnnXcOBKj69+8fg44EwRpKBOCw2GyzzeL6V1999XDrrbc2NHvYcccdcyavvPJKnO+ss87KTbv33nsDbr/5zW/C/PPPHxZbbLFo88MPP0y1zmHDhoUDDjggLsvDg/bcc8/wzTffxG7syZ15Sk3NWW+xzvl/E3TN3nfffeMxYL799tsHuuXnp2L/5saMGZOzXG+99cLXX3+dO5/HHntsbrXY87e46KKLhjnnnDO2juXcvPDCC7l5Hn744bgu/m5TYqxTbJ977rk4qdD5TPMOHz48nHrqqWHzzTfP/W0wLMJTTz2VZomv2X3ecsstA3/fgwcPDquuumr8f1h33XXDQw89VG8ZPyiggAIKKKCAAgoooIACCiiggAIINK9pVpntCGAuMeUnP7X1U8oJshA4fPLJJ3O7RpBp6NCh4a677goXXHBB2HbbbeN3zEsgicR4kIwvmIJUBIcI8vCwGwJ/TzzxRJyPXzzVm4AWAZ/pppsuNz294WE/2WDhfffdFwg63XzzzYFAYkqfffZZDIp+8cUXaVIMYBLE/Pvf/x5uu+22GChMXxKI3WuvvXJjcTI2Jsfz+eefp1mmeuUYzj///Nz0999/P+y///5hm222yU3LviFom0xSgBS/NO31118PQ4YMCT/99FNcjH2gazOBwjvuuCO3Ko6NoFpaji84Jqaz3jQ9bSO3YBNvmrPeUpyzfxNfffVV/Ft6++23c3v12GOPxaDws88+G2aaaaY4vZS/OQLL6dhpZXnkkUfmgty0iiRxnvlbzNrw98kPgdY///nPYdddd40BxbSuuOCUX9999118m5YtdD6ZAZOtttoqZP/2+Nvgh/PJ8AIbbbRRXFd2n2ecccY4BisPhEqJwDKB7dtvvz2sttpqabKvCiiggAIKKKCAAgoooIACCiigQKiKFpkELG/6+0/1fto6iMnfxoEHHpgLYq688srxgTa0jpxrrrniU8X5nqdx5ycCjwSk9ttvv7Dgggvmvj744IMDreMIjtJqMnVTJ8hFYK5QIqBHC1CCiLQGJRFY2mOPPcKPP/4YP/Ok8e222y4GkljngAEDwjXXXBOX69WrV/j2229jsJFAIYmWjKwzPVBopZVWigEtWjlmA4hx5v/+opVcNojJ9k477bSwwQYbxCBpdt5i39M6c+aZZw577713PSeCu/ykRMA1BdloUXj88ceHo446KnzyySe58RzTvKW8lrreUp2z+8JT3QkSc+4JQKeu8QQLecBOSs39myOIyN9Qv3794jZoSUkwk6fO8/fC9nh/9913h8MOOyxujvOfHuy01FJLxda2c8wxR9qVQItKWuDSArahRGCaYH4KYtIik8AlrY75W6QrO86pRW52PQQ6/+///i+OxUkwvHv37rmvzzzzzNx73yiggAIKKKCAAgoooIACCiiggAIIVEWLzGo8FXSBTcHF1JKya9eucVfpAk03WwJFjz76aFh++eXrHQKt4+g23bt37xjM5EE3KWhIt3NanJFoiUmrPBKtEAslulPTKpP029/+Nnb1JYD5/fffhzfeeCN2yaWLcFqeB7Tw1HPSxhtvHINDBCAJZhJMogsvrwSgSL/61a9iIDIdG8Gnyy67LH6X/ZVtRUoQlgAXidZ866+/fnjzzTezsxf1nidi0205BXRXXHHFGJxkYVrmsa8c62uvvZZb3/XXX59rWbrIIovE7ee+/O8bAncffvhh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d999d0tW1eiy+UHM1CqzVoKZBjIbPf1+qYACCiiggAIKKKCAAgoooIACCijQVgLXX399+Pzzz+tt/pRTTglnnHFGqHRw7rHHHgs33nhj2HXXXVscyOzcuXNYdNFFw8wzz5w7lvnnnz8sscQS4c4778xNa8mb/CBmWlctBTMdIzOdVV8VUEABBRRQQAEFFFBAAQUUUEABBapS4KuvvgqffPJJuOKKK+L+HX744WHSpEm5ff3xxx/D008/HYYPH56blt5888038bv3338/TJ48OU0OH3/8cXj55ZcDrSVJv/zyS/zMdvLTW2+9FZ5//vncvHyflp8wYUJ444034g/7xDbefffdwDIp0aWc7t577bVXnPTqq6+Gn376KXzxxRdxm2y7JamhIGZaJ8HMFNBM09rjq4HM9njW3GcFFFBAAQUUUEABBRRQQAEFFFCggwn06NEjbL755mGOOeaIR566nJ933nlhgQUWCFtvvXVYaaWVwvbbbx+Dksx05ZVXhsUXXzx+t/rqq8cWkKmF5wknnBA22WST8N1338X1EQTl80UXXRQ/p1+DBw8O66yzTthiiy3CIossEj744IP4VVp+4MCBYf31148/BCv5TPd3ltlmm23SasIGG2wQ9t577/h5o402iq8ETdnme++9l5uvOW8IUi699NLxJ3/5NJ1gJz/tORnIbM9nz31XQAEFFFBAAQUUUEABBRRQQAEFOoDAuHHj4liZt956a+xqTjCzd+/e4eGHHw6nnnpqDBrSRfuPf/xjoEv4mWeeGVtP0g192mmnjdPopk7629/+VpLYRx99FIYMGRJ233332Ipy//33r7c8+3bZZZeFWWaZJXZFHzlyZLjqqqvCQgstFJ588sl6LTPTgo888kh827dv38B75m1JYixRfgp1tyeQmb7nfXtOjpHZns+e+66AAgoooIACCiiggAIKKKCAAgp0AIG555673lEeccQR8TNBS9IKK6wQRowYEVtm8pkAYpcuXWKwk1aPt99+e1hjjTXiw3ummWYaZik6ERzdaqut4g8P6qFbeLYr+LHHHhsWXnjh8NJLL4VLLrkkHHzwwbFFJi0/jznmmPDmm2+GxRZbrN720ucZZphhqu/qzeiHegK2yKzH4QcFFFBAAQUUUEABBRRQQAEFFFBAgWoTYEzMAQMGxN3acsstw4477hjff/jhh/GV7uBH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FFBAAQUUUEABBWpEwEBmjZxID0MBBRRQQAEFFFBAAQUUUEABBRRQQIFaFjCQWctn12NTQAEFFFBAAQUUUEABBRRQQAEFFFCgRgQMZNbIifQwFFBAAQUUUEABBRRQQAEFFFBAAQUUqGUBA5m1fHY9NgUUUEABBRRQQAEFFFBAAQUUUEABBWpEwEBmjZxID0MBBRRQQAEFFFBAAQUUUEABBRRQQIFaFuhSzQf31VdfhVtvvTV8/PHHYaaZZgqrrLJKWHfddeMujx8/Pnz//fdhhhlmCF27dm3yML755pvQs2fP+NPkzM6ggAIKVKHAWWedFX744Ye4Z9NOO21YaaWVwoorrhh69OhRtr19+eWXw5133hkOOuig0Lt377Kt1xUpoIACrSUwceLEcN9994XXXnstlhUXXHDBMGDAgFiWbMk+lFr2bMm2XFYBBVpPoLF7TvaipfeRP//8c+BnlllmKfmgRo8eHU4//fSw4YYbhtVWW63k5V1AAQUUqEWBqm2ROWrUqHDooYeGV199NSy88MKBwuN5550X7rrrrngehg0bFvbcc8/Aa1OJAi3z3n777U3N6vcKKKBA1QqQ333++edhttlmC2PGjAkXXHBBzCfLucMjR46M+S7rNymggALtTWDy5MnhnHPOCUOGDAnDhw8P008/fQxqUqb88ssvW3Q4pZQ9W7QhF1ZAgVYTaOqesxz3kdyDci/KukpNEyZMiOWyESNGlLqo8yuggAI1K1C1LTJpFfTTTz+FI488Miy55JLxBFx++eWxNRI32tS0k3gdN25cbJX0448/hueffz588MEHoU+fPmGDDTYItFq64YYb4rzUzFOg3XLLLcODDz4YmH/rrbeO37300kvhjTfeCLvttlv8/M4778R1derUKSy77LJhscUWi9P9pYACCrSlQL9+/cK+++4bd+GRRx4J5557bnjrrbfCrLPOGu6+++6w9tprB+ahsHzdddeFpZdeOiyzzDLh+uuvj/kYlULMv/zyy4clllgi1NXVFTwc8t8bb7wxEBRYc801w9xzzx2eeOKJ2EL+d7/7XVyOYOfNN98c18P6TAoooEBbCzz88MMxr/rtb38btttuu5hX0bPnkEMOCf/85z/DHnvsEXfxX//6V3juuediWZN8sn///rldL1QGbKjsmVvINwoo0C4FGrvn5IAK3UdSxnrhhRdig5ru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ZHPPussp0HyBcucZTd1z0royex/J8xkIQlImo/KYchDDoJHvkEcwpvhqq60Wn0yejpKhymglTpmN7TEv+RIPU6TimHtR1ktwlPtQyowEORnqjGc18CAgKpLTEEFpvb4qoIAC1SKQnzdXer/qptQoTa7ERrLdtlu6/tS0vtB6yOi5seZGnsS800wzTe5JldllOFTmzyJzI5+Wzc7Le57sy/ysz6SAAgqUIkCFSzaVM0/Mrjf/fcrSm+rWlL9coc/kj/xk80zmY9gOCu+XXnppbMFUaFmnKaCAAsUIVDKvpFUTra0IQhRK5G+U8wp931gZML/sWWjdTlNAgcoIVDLPaOyeM/8+kryFe9AuXYofqY0eNFS2ZMtolA/zjwk58iC2mYYOqoyma1VAAQXKI1AoHyvPmguvpfict/DyrTKVGvKGUn7m3ti8XDTyb8gbCmKyPS5MpVycGtpHpyuggAKtJZAtHLd0m+SP2TySAvgBBxwQWyQNGDDAIGZLgV1eAQUqKkCQoVCQMm00P49L03ltrAyYX/bMLud7BRRovwKl3Efm31MWc9SF8qOGbv69By1G1HkUUKCjCrSLQGZHPTketwIKKFBNArQO2G677WIX9QUWWKCads19UUABBRRQQAEFFFBAAQUU6AACBjI7wEn2EBVQQIFyCPDgM8bLNCmggAIKKKCAAgoooIACCijQFgJV+9TytsBwmwoooIACCiiggAIKKKCAAgoooIACCihQnQIGMqvzvLhXCiiggAIKKKCAAgoooIACCiiggAIKKJARMJCZwfCtAgoooIACCiiggAIKKKCAAgoooIACClSngIHM6jwv7pUCCiiggAIKKKCAAgoooIACCiiggAIKZAQMZGYwfKuAAgoooIACCiiggAIKKKCAAgoooIAC1SlgILM6z4t7pYACCiiggAIKKKCAAgoooIACCiiggAIZAQOZGQzfKqCAAgoooIACCiiggAIKKKCAAgoooEB1ChjIrM7z4l4poIACCiiggAIKKKCAAgoooIACCiigQEbAQGYGw7cKKKCAAgoooIACCiiggAIKKKCAAgooUJ0CBjKr87y4VwoooIACCiiggAIKKKCAAgoooIACCiiQEeiSeV91b+vq6kKnTp2n/JQv3jpp0qQwadLEMHny5Ko7XndIAQUUUEABBRRQQAEFFFBAAQUUUEABBQoLlC9CWHj9zZ5KELNLl65lDWKyMwRFWS/rNymggAIKKKCAAgoooIACCiiggAIKKKBA+xCo2kAmLTErmSq9/kruu+tWQAEFFFBAAQUUUEABBRRQQAEFFFCgowlUcSCzsrtWzu7qHe2PxuNVQAEFFFBAAQUUUEABBRRQQAEFFFCgtQUqGy1s7aNxewoooIACCiiggAIKKKCAAgoooIACCihQkwIGMmvytHpQCiiggAIKKKCAAgoooIACCiiggAIK1JaAgczaOp8ejQIKKKCAAgoooMAUgffffz88+uijWiiggAIKKKCAAgrUkECXGjqWih7K6NGjwzvvvBOmmWaasOCCC4auXbvmtvevf/0r/Pzzz2H++ecPnTv/7yFFP/30U/j888/DzDPPHGaZZZbc/LyZNGlSGDZsWJx/oYUWmvIk9YZPxbfffhvee++9sMACC0y1npEjRwZ+CqX55psvrpdlC6Xpp58+zDbbbHH57Dr69OkTZpxxxqkWKXVb3bp1C/PMM0/Znzw/1Y45QQEFosDXX38dLrvssrDddtvFfGrEiBHhu+++i/+HPXr0KFmppcuXvMEqX+C1114L99xzTzjggAPCtNNOG4YPHx7Gjx8frfPtq/xQ3D0Fal6A/03+X1999dWw7LLLBso8+WnixInh3Xffjf/HiyyySOjevXv+LCHlg3POOWfo1avXVN+nCZQT33777TDDDDPE8mChsdgpK7711luxjEUZLTvPjz/+GL744ou0utwr5THKZaRi5skt6BsFFChZ4N///nf49NNP43U9/94trYxy1RtvvBHv78g3svd+aR5ef/nll/DZZ5/lJk033XRh9tlnz32u9Jti8jfuRz/44IPwww8/hEUXXbRgHlfMetKxcLwcdzbfSt819prytplmmin86le/qjcr95/cy/br168kv8mTJ8fKLFY2xxxzxHJbdsXFHHt2ft5j8eGHH8ZrRd++fet9PXbs2Hg9YbsNXU/qLeAHBRRokUDD0bMWrbb1Fr7jzSHhhc8eCCN//jL07jlbWGHuDcLWSwws2w5MmDAhnHHGGeGGG27IrZMA3XHHHRe22mqrOI33zz//fHjkkUfqZb7PPPNMOOSQQ8I+++wTDjrooDgvmeaf//zncPfddwcCnSSCony/++67x8/p15tvvhkGDx6cy4SZvthii4VzzjknUKAm/d///V/461//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AQUUUEABBRRQQAEFFOggAgYyO8iJ9jAVUEABBRRQQAEFFFBAAQUUUEABBRRozwIGMtvz2XPfFVBAAQUUUEABBRRQQAEFFFBAAQUU6CACBjI7yIn2MBVQQAEFFFBAAQUUUEABBRRQQAEFFGjPAgYy2/PZc98VUEABBRRQQAEFFFBAAQUUUEABBRToIAIGMjvIifYwFVBAAQUUUEABBRRQQAEFFFBAAQUUaM8CBjLb89lz3xVQQAEFFFBAAQUUUEABBRRQQAEFFOggAgYyO8iJ9jAVUEABBRRQQAEFFFBAAQUUUEABBRRozwLtNpD5888/F+Ve7HxFrcyZFFBAAQUUqEKBMWPGhMmTJ1fhnrlLCiiggAIKKNBcAe9lmyvncgooUMsCXar14F5++eVw5513TrV7AwcODC+++GK4+uqrw5VXXhlmnHHGqeZJEz788MMwaNCgcMQRR4RVVlklTZ7q9amnngr3339/OOaYY0K3bt2m+r6UCX//+9/Dq6++Go499thSFnNeBRRQQIF2LHDWWWeFH374IR4B16VFF100rLDCCqF3794VOapvvvkm9OzZM/5MmjQp7LnnnmHttdcOe++9d0W250oVUEABBRSoJoHbbrstvP7661Pt0uDBg0OXLq17izt+/Pjw/fffhxlmmCF07dp1qn1qakJD94933XVXUfe8Ta3f7xVQQIFaE6jaFpkjR46MAUFu1GadddbcDxeHlVdeOd6scbFoLM0999xhr732Cosvvnhjs4URI0bEbU2cOLHR+Yr58l//+lfBi2oxyzqPAgoooED7FBg2bFj47LPPYuXaJ598Ei6++OJYkfbFF1+U/YC4VhG4vP322+O6O3XqFK+JG2ywQdm35QoVUEABBRSoRoFPP/00vPnmm7l7xHS/WFdX1+q7SxmA6zKvzUkN3T8We8/bnG26jAIKKNCeBVq3uqoZUtttt12Yb7756i3JReurr74KY8eODR988EFsobnFFluEhx56KLaoXHfddcP0008ffvzxx0CrlW+//TZ+HjduXGx5+fnnn4f5558/LL/88rHmLK38u+++C9SIde7cObCObGtPtkkr0WmmmSasuuqqYc4554yL0ZXviSeeCO+++26TAdO0HV8VUEABBWpPgOvKIYccEg9s+PDh4YQTTginnXZaOPfccwOVc3fffXdsNdmvX79AMPK6664L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h4nffPNN/EszzDbbbKFPnz7pZdUfx4wZE9588824zgUWWCC0bz99LHncuHHhrbfeCl26dAkLL7xw6Nhx+sNUSj3szJQpU8J7770X92uuueYKPXv2LHkfv/766zBy5MjQv3//0KNHj7jcjz/+GL766qvp6sAQy4ZKQ9vD8Xn33XfjMZxzzjkbqi6+//HHH4effvopLLTQQtN4sq5PPvkkDBs2LCy66KLNepxL2nBnUkCBmhMYPXp0/P7u3bt3WHDBBaf5Tsru7KhRo8KXX34ZZp111jDzzDNn32o1z4t99zZ2B4YPHx4uv/zysP3228fzfWPrqfZykyZNCh988MF0q+ncuXPu90cp80xXQSuc8O2334YRI0aEcn9ftMJddZMVUKAFC/zvf/8L33//fejevXuYe+6545aOHz8+Xgd07do1zDvvvLmt/+GHH+K1AdeUffv2zU3nnMy5OXvdw7UE16C8xzm9lGudXIU1/iRdE/Ibht8yFgUUUKA5BaaPkDXn2htYF1+QhxxySBg6dGhuzm233TYce+yxueDed999F/bdd9/wxhtv5ObZcMMNw8knn1wwaHfzzTeHiy66KDcvTwgorrnmmnFdHTp0mOa9Sr648sorw3nnnRcmT54cq+VkeOGFF4bFF188t5r77rsvHH300YFgJmWWWWYJ559/flhmmWVy85RST5r59ttvD8cff3x8efbZZ4eNN944vVX0kaDgpZdeGljPxIkTw8UXXxzWWmutOP9///vfaJu/8M477xyOPPLI/MnTvS62PfzY+POf/xweeOCB3DLLL7983PdigWYunk499dTcMs8991zo1q1bXJ6LzAMOOCD+gEkVcnHMZ6dQ8DjN46MCCijQGAG+1zm3XHbZZfEGEnVwkcS0JZZYYroqOa8dfPDB8Xtvl112me79ljyhvu/epmz3Cy+8EK6//vp4YcmNy0oUzi3//Oc/44VpKee/UtbJRe0222wz3azceOQcRyllnukqaIUTbr311nie/tvf/hb47WVRQAEFZoTAfvvtF955553ATcTHHnssXidyDbPDDjvE68HHH388tGvXLm4a1zf8bbnllvE6Im3v73//+3iTimsxEji4tjzooIOmSeBYYYUVAt932QBoWr41Pz799NNxfzfffPOSgrX/+c9/whlnnBG4Dv/tb38bDjvssNa8+267Agq0QoEWHcgkAMfFHgGo9dZbL9x4443htttui1+wf/jDHyL3gQceGL94//jHP4Y11lgj/Pvf/w7XXXddmH322eMFYrFjstVWW4Ull1wyZmc++eSTYfDgwYFsEL6UqxHoeuKJJ+KJb9lllw177713+OyzzwKBRU68jzzySDy5kjl56KGHxrtaBOgI5LI9zP/ggw+GmWaaKZRST9pnshv/+te/xrq5o1hqwfujjz4Kc8wxR7wDmV0OIwrbmc2OJRicyquvvhozJFdcccU0KT7Wtz0ESwli8qNis802iyZc0OJw1llnxeWz9ZIJtNNOO8V940cLd2Gzhc8Dd08JjnIH9eqrrw633HJLDChst9122Vl9roACCjRZgB/13ABaeeWVw+677x6/f/j+3n///cPDDz/c5PpbSgUNffc2ZTs32mijeGOR7+xKFQKZXHSuuuqqJd3IK2W9tFagbL311vF4p2U4F6VSyjxpXh8VUEABBRovQPICQUwClVwPcF239tprx2Ak113PP/98DFDScotC0C77yHMCctQzoK5VHxmZJHVwLicYSmIE56UhQ4bE69BjjjkmJnnESmrkH65FuX4miaShrNNTTjklXpPPM8880a1GCNwNBRRoZQItNpBJoI/A1mKLLZbLKOQCcd11141ftHvuuWfMWnzxxRdjAJOsTArByWeeeSbccMMN8S4azQkKldVWWy1suumm8S2CiUcddVQMghIM3WKLLeJ0MmzuueeeeMLj5Mgy+RkdnBy580fTdraV4Fqh5tucYGnqcPjhh+eyK9l27voRNCQQSLCNQgB3nXXWic9p/nDOOecEMkn32GOPeKJuqJ64YN0/p59+ehg7dmz49a9/Hc3S9IYeMSNozIU5Ad5sSRdnBAMJrOYXzAi8cvHIDwWax6dS3/ZgwI+E4447Li6zyiqrhPvvvz8eS5bPr5egKMeD48Yd1GwgEzN+wFAfQVkK28oPG4KhBjIjif8ooEAFBcjmJ7PyN7/5TUjdYjz66KOBLBCavHFzrVi59957480busDg/EMmfip078H7ZCtSB9nxnAspdDFC6wOyF3/3u9/FaZyLyPTnO5Qbdtzce+qpp+L7d955Z7woI3uerH8yFenqhCZhfJ/SMqGhG3n1fffGDcj8c+6558ZzEC6si+3lO5lzZVo339W/+MUvAs2y2RamE9DkHJi2nYtIWgO8/fbb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oIACClREwEBmRRitRAEFFFBAAQUUUEABBRRQQAEFFFBAAQWqKWAgs5q61q2AAgoooIACCiiggAIKKKCAAgoooIACFREwkFkRRitRQAEFFFBAAQUUUEABBRRQQAEFFFBAgWoKGMispq51K6CAAgoooIACCiiggAIKKKCAAgoooEBFBAxkVoTRShRQQAEFFFBAAQUUUEABBRRQQAEFFFCgmgIGMqupa90KKKCAAgoooIACCiiggAIKKKCAAgooUBEBA5kVYbQSBRRQQAEFFFBAAQUUUEABBRRQQAEFFKimgIHMaupatwIKKKCAAgoooIACCiiggAIKKKCAAgpURMBAZkUYrUQBBRRQQAEFFFBAAQUUUEABBRRQQAEFqilQtUDmDz/8EA499NBw1FFHhXHjxk23D9dff318/9FHH53uvcZMOPXUU2N9X3zxRWMWb7XLHH300XG/x4wZ02r3wQ1XQAEFFFBAAQUUUEABBRRQQAEFFFCgIYGqBTLHjh0b7rjjjnDjjTeGM888c7rteOGFF+L777777nTvNWbC/fffH+sbOXJkYxZvtcv8+9//jvs9YcKEVrsPbrgCCiiggAIKKKCAAgoooIACCiiggAINCVQtkJld8eDBg8NTTz2VneRzBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgZIGOJc/ZhBmnTJkSDj/88HDPPfeEXr16Fa2J+e66667w5JNPhg8//DAst9xy4Re/+EVYaaWVplnmk08+CTfccEN4/vnnw7zzzhsOO+ywad5PL2jefvvtt8cgKk2vV1xxxbDrrruGWWaZJc0SmH7ZZZeFV155JYwfPz6sttpqcZ0LL7xwbp78J6NHjw7XXHNNePzxx0OPHj3C7373u/D++++HBx54IPz6178OG2+8cbjvvvvCddddFzbZZJPQs2fP+Jx9Yd5JkyaFu+++O27XW2+9Feacc86w/fbbhw022CC3qn333Tdu21//+tdwxRVXxH0dOHBg2GqrrcKqq66amy89+emnn8K5554bhg4dGrdpt912C+uss05620cFFFBAAQUUUEABBRRQQAEFFFBAAQVatUCzBDJ32GGHcPPNN4cTTjghnHPOOUXBTjnllHDVVVeF9u3bx+DelVdeGa6++upw8cUXhw033DAuN3z48LDzzjuHL7/8Ms735ptvhhdffDHQlD1beE3QkPe6d+8e/8gK/e9//xuDirPOOmuYPHly2GabbQLN2+eaa67Qr1+/GAy8/PLLw4MPPhiYJ78QhPzDH/4QhgwZEt+i7sceeywsvfTScV1rr712nE5fnU888UTsH/Sll16K61p++eXjewQn//73v8dtmm+++eK6CIKeccYZASsK2zpq1Khw0EEHhWeeeSZ07tw5UA/N9QmirrLKKnG+9A99ZT7yyCPxJdtI36M061955ZXTLD4qoIACCiiggAIKKKCAAgoooIACCijQagWaJZB57LHHhqeffjrceeedMSBJlmJ+oY9LgpgEE8nKnGOOOWIwbo899ggHHHBADOzNPPPM4ayzzopBTIKCp59+epyfx1tvvXWaKgkWEsTcdtttYwC1S5cu4bzzzgsXXXRRDFYyONDLL78cg5hkdT700EOhQ4cO4T//+U+47bbbYgZkoe1kHwhiEuSk708yOBm46MQTT5xm/ekFWaMnnXRS2HrrrWMw8rvvvgsfffRRzJa88MILYzCTOg855JAYeEyBzLQ8AVkyWcki/ctf/hJuueWWcMQRR0SbNA+PEydOjIFTnu+///5x+wkeN0cgE0eLAgoooIACCiiggAIKKKCAAgoooEDbElh22WWbdYebJZBJ1iKBxR133DEcc8wxsYl3/l6SdUghi5IgJoWm0YMGDYpBTJp+8/rVV1+N7/32t78NNLWmEOjMD2QSOKXQnJum6BSCjpdccknMbOQ1AUyCl1999VW49NJLw/rrrx+bhf/yl7/k7YKF7aBQb8q+/M1vfhP+8Y9/hM8++2y6ZVZYYYWwyy675KYTjGUbKD/++GNs0v7GG2/E12k744v//4dl034yCjyBzE8//TQwqFGfPn1ys+61115h9tlnj68JhhJA/fzzz3PvV/NJc39oq7kv1q2AAgoooIACCiiggAIKKKCAAgoo0DIF2jfXZhHQ23vvvQMZiWQU0h9mtqRg3oILLpidHBZYYIH4+vXXX499S37wwQfxNfWlMvfcc4fZZpstvYzZie+88058vc8++4TNNtss/tEknebk7733XqBPSbI/jzzyyNin5Nlnnx37s6T/SbI26QezUKEvTEpqJp7mKRbMS9uf5uORoCv9YbIMmZr//Oc/49v5JkzM7if7OM8888R52YdsGTBgQO5lahJPlqZFAQUUUEABBRRQQAEFFFBAAQUUUECBWhBolozMBHXwwQfHZtn03zjTTDOlyfGRPiopI0aMiI/pn/S6f//+MXuSYB4ZlAQ0GSSHwqA+aT5ed+zYMTb9HjZsWMyUJGCZX5iHQgbor371q9i0nKbo//rXv2L2KIHMP/3pT/mLBYKmlBQoTTPkv07T8x8ZIIh6CTYed9xxcSAjmr2nPkDz52c/6UeTwsBE7DslZa3GF/6jgAIKKKCAAgoooIACCiiggAIKKKBAjQs0W0Ymjp06dYqD/TBwDc2qs4URyin0F0nWJOXrr7+Ozcp5njIel1hiCV7GAXLik7p/6NcyLZOmLbPMMvEpo58vueSS8Y/gIYP4fPzxx3GgILJA6aeSQXI233zzcPzxx+f6umSgnkKFQX0o9957bwym8pzALAMGlVIYxIey0047BZqkL7744uG5554ruiiDEzF4D4X1kGXJyO8pM7Pogr6hgAIKKKCAAgoooIACCiiggAIKKKBADQk0a0YmbgsvvHA47LDDwmmnnTYN41ZbbRVuuummGNSjj0cCkQQdybYk6Df//PPH+cmgJPDIyN1kJ5I5+cILL8QMz2xwlJHFn3zyyTggEI+LLbZYHLGcICaD9FDI7mSE8gkTJsS+Kum/koF+KPTHWagwyjn9VL722mtho402ihma9I1JP5b5zb0LLZ+yK6mDgCT9WBKsLFbY14033jgQ6E3z0UTfooACCiiggAIKKKCAAgoooIACCiigQFsSaNaMzARLMHKVVVZJL+MjTc2vvvrq2MSagCAjmJOJyLwnn3xybl76sGTkcvqEfOCBB2JAkYGE8ptak4V55ZVXxgAg2ZUMsNOjR4/AgDnbbbddrI8MzXPOOSf2Q3nttdfGer/99ttAEPTAAw/MrTP7hIGL2Db63lxqqaUCTeIvvvjikkcH33777cPuu+8eMytPOeWUwGjtPBYr7BsO9KvZtWvX2M/ofvvtV2x2pyuggAIKKKCAAgoooIACCiiggAIKKFCTAu3qBpiZdtSdFrCbBO7o8zKNwl1sk7755ptAFmX79vXHY8ePHx/7l2TeYoXBfxiIqKF1sjwZnGSCZkcNJ0BJZuj5558fBxYqtp40nabww4cPL7o+mrCPGjUqZpXSFygeffv2bXBfU/0+KqCAAgoooIACCiiggAIKKKCAAgooUEsCzd60vBS8Dh06FA3wZZefZZZZsi+LPmcwHf7qK/TbWUoQ86233ooZnQRFaSLPqORDhgyJQUy2e80116xvNbn3CL6Wsr60QKEBi9J7PiqggAIKKKCAAgoooIACCiiggAIKKFDrAi0ykNmS0elrk2bnZF4ecsghuU0lsEkz9d69e+em+UQBBRRQQAEFFFBAAQUUUEABBRRQQAEFKiPQIpuWV2bXqlsLzd9ff/31OHI5/XUuuuiigf4zK1WGDh0a+8ZceeWVA9miFgUUUEABBRRQQAEFFFBAAQUUUEABBdqygIHMtnz03XcFFFBAAQUUUEABBRRQQAEFFFBAAQVaiUD9o+S0kp1wMxVQQAEFFFBAAQUUUEABBRRQQAEFFFCgtgUMZNb28XXvFFBAAQUUUEABBRRQQAEFFFBAAQUUqAkBA5k1cRjdCQUUUEABBRRQQAEFFFBAAQUUUEABBWpbwEBmbR9f904BBRRQQAEFFFBAAQUUUEABBRRQQIGaEDCQWROH0Z1QQAEFFFBAAQUUUEABBRRQQAEFFFCgtgUMZNb28XXvFFBAAQUUUEABBRRQQAEFFFBAAQUUqAkBA5k1cRjdCQUUUEABBRRQQAEFFFBAAQUUUEABBWpbwEBmbR9f904BBRRQQAEFFFBAAQUUUEABBRRQQIGaEDCQWROH0Z1QQAEFFFBAAQUUUEABBRRQQAEFFFCgtgUMZNb28XXvFFBAAQUUUEABBRRQQAEFFFBAAQUUqAkBA5k1cRjdCQUUUEABBRRQQAEFFFBAAQUUUEABBWpbwEBmbR9f904BBRRQQAEFFFBAAQUUUEABBRRQQIGaEDCQWROH0Z1QQAEFFFBAAQUUUEABBRRQQAEFFFCgtgUMZNb28XXvFFBAAQUUUEABBRRQQAEFFFBAAQUUqAkBA5k1cRjdCQUUUEABBRRQQAEFFFBAAQUUUEABBWpbwEBmbR9f904BBRRQQAEFFFBAAQUUUEABBRRQQIGaEDCQWROH0Z1QQAEFFFBAAQUUUEABBRRQQAEFFFCgtgUMZNb28XXvFFBAAQUUUEABBRRQQAEFFFBAAQUUqAkBA5k1cRjdCQUUUEABBRRQQAEFFFBAAQUUUEABBWpbwEBmbR9f904BBRRQQAEFFFBAAQUUUEABBRRQQIGaEDCQWROH0Z1QQAEFFFBAAQUUUEABBRRQQAEFFFCgtgUMZNb28XXvFFBAAQUUUEABBRRQQAEFFFBAAQUUqAkBA5k1cRjdCQUUUEABBRRQQAEFFFBAAQUUUEABBWpbwEBmbR9f904BBRRQQAEFFFBAAQUUUEABBRRQQIGaEDCQWROH0Z1QQAEFFFBAAQUUUEABBRRQQAEFFFCgtgU6zojdmzx5SpgwYUKYMHFSmDx5ct3flBmxGa5TAQUUUEABBRRQQAEFFKgZgfbt24X27duHTh07hE6dOtU9bzfD9m3EiBGhX79+M2z9rlgBBRRQoDYFmjWQScBy3Ljx4acJE2tT071SQAEFFFBAAQUUUEABBWaQANdbkydPChPrEkbGjvspdO7UMXTt2mWGBjRnEIWrVUABBRSoUYFmC2T+9NOEMGbs+BpldLcUUEABBRRQQAEFFFBAgZYlQAIJf927dQmdO3dqWRvn1iiggAIKKNAIgWbpI3P8+J8MYjbi4LiIAgoooIACCiiggAIKKNBUARJKuCazKKCAAgoo0NoFqh7IJBOTZg0WBRRQQAEFFFBAAQUUUECBGSPANRnXZm2pjBs3Lnz88cfh+++/n263//e//8X3Jk5sfLdn1Ev9o0ePnq7+hiZMmTIlXHPNNeHpp59uaNZp3v/ss8/CP/7xj3D++efHdU/zZgt88dBDD4VbbrmlBW6Zm6SAAq1VoKqBTPposTl5a/1ouN0KKKCAAgoooIACCihQSwJcm7WlgVbff//9sP/++4c///nPdUHcaZNrLrnkkvjed9991+hDfN9998U6XnnllbLrGDlyZLj11lvDv//975KXJWB6+OGHhzvuuCO8/PLLoWPHZusprqRtxIF9+uabb3Lz33bbbeGmm26azj83g08UUECBMgWq+s3HwD4WBRRQQAEFFFBAAQUUUECBliHANVr37l1bxsY001Z8/vnnYfDgwWGvvfZqpjU2vJqZZ545XHrppaF3794Nz/z/c7z11lsx+3OrrbYKe+yxR8nLNdeMzzzzTAzMLrHEEmGWWWaJqz3jjDPqBvwdV9dHa+fm2gzXo4ACNS5QtUAmd/ocnbzGPz3ungIKKKCAAgoooIACCrQqAa7RutZdq7Vv365VbXdTN5bMx5VXXjkss8wyRat67bXXwvPPPx+GDx8eCMatueaaoVevXrn5v/rqq/Dggw+GL774Iqyyyiq56dknBE2feuqp8MEHH4T5558/rLfeemG22WbLzhKfE9y74YYbwnzzzRe23Xbb8N5778Ug4IYbbhjIEn322WfDwIED4/IzzTRTeO655wLZjRS285xzzgkHHHBAzMpke5588snw4YcfhgUWWCAMGjQozDPPPHHeVC/bQTN4MjmPOeaYcP3118cA4+abbx7Xy/ZstNFGYcEFFwx33XVX3P6VVloprL766qFTp6kDRU2aNCkMHTo0kHlJs/rFFlssbLLJJqFr167hv//9b3jppZfiOm+88caw1FJLhe222y7ceeedcX8OPPDA+B7/1Of8yCOPxHp23XXX8Nhjj4WPPvooWrNPaTtyFflEAQXapEDVApkTJrSt/lfa5KfHnVZAAQUUUEABBRRQQIFWJ8C1WpcubSdDjgDm22+/Hc4999xw4YUXhh49ekx3zB5++OH4fs+ePcMcc8wRnnjiiUDT8dNPPz3OT3Npmqh/++23oV+/frFvyxQsTJURKGSe8ePHxyAkGYr33ntvrGPOOedMs8VHjgFBu+WWWy4GMgme8vrrr78ONIkng5FA3gMPPBC3mWblP/zwQ1yW58w/efLkGJxMTecJQhLwvP3228Npp50Wg5qp3k8++SQGBfv27Rvon5NAKftEYHPs2LFhxIgRcZ8IQKbMzyFDhsSA5ZZbbhnXS5+e1E2AtX379rGvToKaJ5xwQtw26qHQbJ4/Cush0JoCmQ05v/vuuzkHgsJjxowJbMdmm20W9tlnn1in/yigQNsWqFofmRMmTmrbsu69AgoooIACCiiggAIKKNACBdratRrBuz/84Q8xWEdz7mwhqEc24gUXXBBmnXXWGJwj23G//faLgb80UA39UhLE3H777cMVV1wRLrvsslxgMdV38cUXBwKUvHfmmWfGAXkIFhL8K7WQ6UjAkL8ll1wyEIBkgJ911lkn7LTTTrGaTTfdNAZHCXZedNFFMXB69tlnh7POOiv89a9/ja+Zni0//vhj3O6rr746l9k4atSosMsuu4SrrroqBgqZh+1nHjzatWsXHn/88VgNgyKRnbr33nvHbFDWt8gii4QXXnghsNyvfvWrsNpqq8V5991337DnnntmVx+fl+KcFpp99tljdwBsS7du3WKWK8fKooACClQtkMndIYsCCiiggAIKKKCAAgrUpgBBhfTHb3//qm+QvJsa0GmL12oE2WheTdYjzbCzhQxIAnVrrbVWbCbNe8xLII9MTgpNxSkbb7xx6NChQ2wuTjZlKixPPX36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JjB1dPLig/rQrDq/kKGYgnv575X7esjQ0eGUv31d1mLHHDxbWGtQj7KWKWfmQvvGtFffHBf+eet3dYFMBwEqx9N5FahlgbFjxwb++vbtW8u76b4pUJaAgcyyuJxZAQUUUEABBRRQQAEFFChdgH4xaVaeLYWCmdn3fa6AAk0T+Ne//hW++eabMMccc4RNN920aZWVufQPP/wQbr311rjUoEGDwmKLLdZgDY899lj44IMPQpcuXcLOO+8c5x8xYkT4/e9/H3766adwzDHHhJVWWqnBelr6DN9//3145plnwrvvvhtGjRoVFlpoobD88suHBRZYoKVvutvXggQMZLagg+GmKKCAAgoooIACCihQSwIE7AoF7VImJv1EVrOQWXn/oOquo6HtZ6RyAplnHV9/piX9ZqYm5w3V6fsKNFbg4YcfDl988UXo2bNn2HrrrRtbTYtf7qGHHgofffRRWHLJJZs9kPnjjz+GO+64IxrNOuusJQUyn3322TBkyJAw00wz5QKZ3377bRg3buoAYcOGDWvx5g1t4IcffhhOPvnkQIA2lSeffDJce+21Yc899wybb755muyjAvUKGMisl8c3FVBAAQUUUEABBRRQQIHGC+RnYxariablpc5brA6nK9CQwBNPPBGee+65mKlYy4HMhhxaw/sLL7xwOPbYYwNZjOuss05r2OSi20hQ9ogjjoiB2U6dOoU11lgj9OnTJxDI/Prrr8Nll10WOnfuHDbaaKOidfiGAknAUcuThI8KKKCAAgoooIACCiigQBUEaF7OX7GS3icr01JdgSlTppS9gsYsM3ny5JLXU279EyZMCMXqnzRpUsnrbWjGcrerofp4nzrLrbfY/OXWVayeYttdzvzlzJvWV8oyK6+8cthwww0Dwb/6SrHPQ6FlSllvdrly6s4ul31+55135rJL//SnP4VDDjkk/O53vwtnn312mG222eKsN998c6jk5ze7fp/XloAZmbV1PN0bBRRQQAEFFFBAAQUUaEECNCmnKX19A/nwHqVQM/wWtCutdlO++uqr2NT3hRdeiNltZLrR9+ADDzwQHnnkkdCjR4/w97//fZr9e+utt8Kjjz4aXnnllTB8+PDYl9/SSy8ddtxxx9Cx48+X0eedd154/vnn4/uHH354uPLKK8PLL78cyECbf/75wx577BGWWGKJaermRbn1zzvvvGH//fcPl1xySXj11VfDFltsEXbfffdYL012H3/88fDaa6+F9957L3Tr1i02qd5uu+3CoosuGudhfaeddlrsl5AJZMHtuuuu8b2rr746dOjQIT6nP8b//Oc/cR/efPPN2NR58cUXj82zeWxswZJMUDwJVtFv5Oqrrx7WX3/9aarcd999w+jRo2Mz42WWWSZcf/314fXXXw/9+/eP2Xq//OUvw//+979wzTXXxLrGjx8fmG+fffYJNOMuVOgr86KLLor1YEOfjPhxfPJLqcclLXffffcFslzfeOONMPPMM8dtZL+KFZqI33777SF9FhdZZJGw3377FZz9s88+C0cddVR8j88RWZnZaQQEacbO8WK76S5grbXWiseVvjazpdz/AzRpx5jP1Oeffx7at28f5p577uiWf8yy6yn0nM/UPffcE9/i87jqqqvmZsNsq622ihmZfCaffvrp+LnIzeATBQoI/PwNXOBNJymggAIKKKCAAgoooIACCjRNgGAmfWUS0GRU9qUX7xYrfPXNsbl+MZluqbwAA68cf/zxgUBOKgRnjjzyyBjkGzlyZCDDMVsInB133HG56e3atQsE9fhjQBaWTRlyY8aMCdRB898zzzwzBqhSXQQVjz766ECwc7755kuTY0Ct3PrpO/Gcc86JAatcRXVPCIideuqpuW0lyEogkAFVXnzxxXDSSSfFoObEiRPjdqZlybJju7OFAOMZZ5wRA45MZ78JaDEQzdChQ2Mz52WXXTa7SEnPGfhm8ODBuXmpl6AmfwQZd9hhh9x7HC+Cc/Tjeffdd4fvvpsa5Ke/y0svvTQG62666aYY0EsLsa8Em//2t7/FgFuaziOBTo4B9VEYAfzBBx+M68YzZQPyXjnHnfn//e9/xwAczykE4ujvkWBjocJ+8Vn88ssvc28TlP7zn/8cBgwYkJuWnnA80jEiGEjJTuP4kunIsaVgxSBHBNEJcqZS7v8BPj9kTKbtJPiLIwHzc889N/ZxSUC/1ELgOfX1udpqq023GAMi0bSc8vHHHxvInE7ICfkCBjLzRXytgAIKKKCAAgoooIACVRVoa0E7+r5kYKNrb/nu/wOXPweQeG+X7Wa2f8wqfeIIvKQgJgGzDTbYIAb6Lr/88hjsy18t855yyikxMMhAMdtvv30YOHBgzNz85z//GQNgBOUYnCRbCFqSsfbHP/4xzDnnnDFL7qmnnoqBp1tuuSUcdthhcfbG1k9wrFevXmGbbbYJK6ywQuxfkCbC7AeBWEbnJni14IILhnfeeSeOck3w67bbbouBTDIgr7vuunDWWWfFbEsCeAT+KCkbk7oILtJXIYEqmjSTQUjgkIApA7VcccUVMfMwLljCP2QrpiAm9ZEJSbYgQcq77rorBv7INs1m6VEtgxKRXbjZZpvFEa6vuuqqaElTZI4HfUdSqPvTTz+NQba333475GeNclwIIhNknmWWWWKfjGSgEngmQ5XPB6Xc40K9WFA43um444djocK6UnAw/7NIFm+5hQDxJptsEjM12R5eE/gkO5eRz8lipZT7f4CBh9J2HnDAATFrluDmxRdfHLNP+TxzHAlwllII8KZSKGuW40LGJ8F1AtIWBRoSMJDZkJDvK6CAAgoooIACCiigQEUF2moT6jSK+8gfpvZj2KfX1Oa8FcW1spwAgRGaMlNo0pqaUvP60EMPjc2+eZ4tBHEI2hDcY55+/frFtwncEEy89957c3Vml+M5wU2CjBTWR8YcmWgE2lJpSv00h2eQlGxJQSqax6fsQoKWBPQIjhHgopCpSSA0ZZISOOJ1KgRFaf5NWW+99XJZkjT9pUk7zdgJjNKEmaw6bMn8K1Ro4ty169T+XlOdBHmph2xMyl577RWDo2RKkpWYH8gkA/Xggw+O283+MA92lGxzfbIcs8HI/EAm89N0mzooDHBEoJdBZsiuJVsRh3KPC7YYUGgOT7cDlE033TTWTyA2W7KfRZqTZz+LZD/mB8azyxZ7nm2Wzn6TbUqwmsJnlUBmdr2l/h8ggzIV6uWzwvEgqEmAlP8T6fiSqckxKFQYzIfPXXaU8uxnLi3DZ4L6CS5n503v+6hAvoCBzHwRXyuggAIKKKCAAgoooIACVRQwgFlF3EzVBBBTk9z8JtEE/chiJOMwWwhyUfr27Rseeuih7Fu55rGffPJJDBplM9IIJGbXQVYjGZ30n0mwLJWm1J8f7KNOAkr09UjWG8E5MunYvpThR9P3UgoBRQK4FDI8ycLMFgKaBC7ZfgKZPE99dGbn4/nee+8d+7jkedpfgloM5pItBLVYL5mU+YV+L7N9kdL0OgUys8FK+jtNhaBafsEnOw/vUzdWFIKZyy23XG47Sz3uLEdhG/P7QCWomR/IpJ/JtH2sP1tmn332GITOZi5m3y/2PL8vToLoKZCZPnON+T+w9tpr5+oheMnxZh/ZLwLS2ULWMU30C5ULLrggcNyy/0/S/8f8+dP07Lz58/hagSRgIDNJ+KiAAgoooIACCiiggAIKKFAzAql5LDu00EILTbdfTMsPZNIXI4UmrjQlL1TIXqQvv5TlxzwEzFIT7bQMwUxKdpToptSfDeyldZBxeeGFF8am1Wkaj2xP6pcwO73Y87RdvJ8fwM0uQz+JpRaaOac+Hul/kr9CJbvu9H6hfU3vpazO9Lq+R4K8+XXRND0VAowEMtM2lHrcWY5Cs/j8gXXyA6fMl+bneaH3mVZuIJPgebakbFumpc9cY/4P0FT+N7/5TRxoiQAjWbX84c4o6nQ7kDXMbkOh59nm5GRd5hfWQTYpJTtv/ny+ViAJGMhMEj4qoIACCiiggAIKKKCAAgrUjMBcc82V25d33303rLLKKrnXPGFafiGIQ9BpnnnmKTqaNMsQwGpMqWT9BIAY1ZqAJc19GU2aLFD6hLzhhhtyI0WXsp1kp6by29/+NtBsuVBJwTPWx2A39ZXevXvHbDyCVPR3SX+OzV3ISKR5Nc2jU0lBS16TDUkp97jgReYrnxUyWLNBxGz9sfK6f7K+vJ//WSy0TFq2KY+N+T/A+hjxnhHi6R6BjFma9hPEZmAl/t/84x//iAHiddddN/BXX8kGJ1k2f9Tz7P/D7Lz11el7bVvAQGbbPv7uvQIKKKCAAgoooIACCihQkwIpW44mvS+99NI0/RKSqVYoA47MOAZsIUBFcIuBSFKh6TVBOZofZwNj6f1SHitZP83HU9Yl/SwutdRSuU1oKDDG6NfZQuYiGaQER8lS3XbbbbNvB/pNpB/D7t27TzO9vhdk8JG5RxCMptgEWbOF5ulksRLwrFbhmJG1mg3Mpn5TWSeDI1HKPS4LLLBADOrhRaAva5+tP1Ze9w+fRTJDGWGc93/1q1+lt2K/kGlU9dzECj1pzP+BNMI9AWCar6cm7Gn0eUZHZ/Cn/GBssU0m6I0vAUsGIqJLAjKGU2EUeQqfl0LdJ6T5fFQgCfx8WyJN8VEBBRRQQAEFFFBAAQUUyBNITRXzJvuyBQh4bAofBIKNK664YnyTYNb5558fmzeTVXb66acXXIhmxgRUML3yyitzTYIZ0ISRsgnCkLFIsKcxpZL1E0RLJfWJyHbT/2OhfieZl4F4KDShZuCeFAglyJaCcQSbhgwZEjMNqe+RRx6Jg9HQpLihLMxYeeaf5ZdfPr4iUEcfmWk7CbQyCM8uu+wSRw/PLFLxp4xSTtCUwBx9Og4dOjSugyzJFKgu97hkg7LUT1AcK/pExS6/4JuCqW+++Wa477774meIz1WxUc7z62jM68b8HzjhhBPi55zBmbLB/lGjRuU2IZthmptYzxMyPCns76mnnhoD4/Tfetttt+W6MiBgys0DiwINCZiR2ZCQ7yuggAIKKKCAAgoo0IYF6mI6MbAzYcLEuoytTm1YouXuOseG4BvHyjKtwEEHHRSDMQQyH3jggfjHHARiGMSEwFa2EGz6wx/+EPudJKDHH/OSkUigisLIzfn9LmbrqO95JetnABaaepN1eOaZZ8asN0Z95o9BWbL9MqZtIlhJYJLypz/9KWZDpr5ADzvssHDkkUfG/j/POuusGPTkc5VGpaa5fX6z4FRvscdtttkmNsFmnddee21s8s7AQQRSKQzuQoC0WoXMSRzo85Hm3zQDp9CvJfuaSrnHhYFvGAH9jjvuiJmGjKSe6id4TkAzv5A1yx/9RNKv6d///vdAZizbQmC0WB+i+fWU+7rc/wMEHdkWAo2MLj+gbsAeAsGpv1P2ne4LyilkWq6xxhrhiSeeiANRMUp7umFAPQy+tdtuu5VTpfO2YQEDmW344LvrCiiggAIKKKCAAgrUJ8CFZl0YM15w0qTWQGZ9WjPuPY5N9ljNuC1peWumCeuJJ54Ys+Ro0kswhubOBM/IpCtUNtpooxiopMkrzWHTgEA0091pp51iQKbQcqVOq1T9BASPOeaYGBRLo3/T7J0gEcFN+snMLxtuuGEMpJG1SXNvMiQJfNL8l2zNk046KQwePDi89tpruWw8AnT0g0igqZym5aybz+WBBx4Y66c5MpmYKYhJtiYBRoKN1SoYsX4CswQ0acrOIE0E6/LXW+5xITuXjEeCcwS6yfgk0Euz8UKBTIJ1ZPUSOH7jjTdiUBX3gw8+OAbMqxXILPf/wLLLLhuOO+64uJ3cAEgDPPHZWm+99WIWbbnHi88BgXP+D5HVS3CcGwPcEGAUdwyq2cVAudvr/C1boF3dh2fqbaUKb+fI739OO65w1VangAIKKKCAAgoooIACzSDApQIZQzRhnTJlcug/188DgjTD6l1FiQJffDmsLmDUPvZxSKBmalCz/oX79J7axLj+uRr/bgqONb6G6i9JBuI777wTB/a5+OKLC66QJuT0p0lAjD4iK10qUT//T7/55psYGCunaS7BJD4vxYKTHEMyGBmApbEZqPleBFjJ7qPObD+J+fNV4zVBbIKyacCi+tZR7nGhCXafPn3i/8H66k3v0aSfptoEMmdkaej/AMeLzwGf/169elVsU7k5wP4PqMv2rNRnq2IbZ0UtXsCMzBZ/iNxABRRQQAEFFFBAAQVmnABBsQ4d2tf1pTehLpvt+7qL9eoNzDHj9rL1rpljMnHipLqgUMeSApitd08bt+XXXXddHLyHIOTRRx+dC54xAA1BTErqR7PQGgiykEVWrVKJ+vk/2piAWEOB2cbU2ZATQcRSAokN1dOY9wk0llrKPS5kW5ZTCOI2VyC3Kf8HqnW8yu1jsxxb5619AQOZtX+M3UMFFFBAAQUUUEABBRolQICEv/btO8SsmW++HRk6duoYetYFIywzXmBUXbYUx4SACMcoHa8Zv2UtZwtoLk0TagrNwmlWTmbeV199FacRzKO5rEWBWhXw/0CtHtm2u182LW+7x949V0ABBRRQQAEFFFCgQQGardL326S6Jrbj65qYjx8/PszSt09dU8PSs5saXIkzlC3w3XcjYxCTgUK6dO4cOtRlDtJfH8HMUkpbalrOID833nhjrs9HfGhizGA5qf/GUsycR4HWKuD/gdZ65NzuQgIGMgupOE0BBRRQQAEFFFBAAQVyAimYSb9x9JfJX8eOHer6DOwZenTvHgcBKjWAlqvUJ2UJcAx++mlCGF03kvCPP46Kzck71wUw+aMZbDlBTFbclgKZ7C9+DMhC/4z09TfXXHNFM96zKNAWBPw/0BaOctvYRwOZbeM4u5cKKKCAAgoooIACCjRJIBvMJKCZ/iZPnlSXsTklBorqwkVNWocLFxNITfx/buZP8DL9lRvEZC1tLZBZTNbpCiiggAKtS8A+MlvX8XJrFVBAAQUUUEABBRSYIQJT+8psn8v+Y7RjmufS7JwgJ3+W6gmk/i8JWvKHf3puNmz13K1ZAQUUUKBlCRjIbFnHw61RQAEFFFBAAQUUUKDFCqRgZnr8OYBJILPFbnZNbNjUri+nZmamoGZ6rIkddCcUUEABBRQoQcBAZglIzqKAAgoooIACCiiggAJTBVLwLJuBmX2uU/UEsE8l+zxN81EBBRRQQIFaFzCQWetH2P1TQAEFFFBAAQUUUKAKAtlAWvZ5FVZllQoooIACCiigQBRor4MCCiiggAIKKKCAAgoooIACCiiggAIKKNDSBQxktvQj5PYpoIACCiiggAIKKKCAAgoooIACCiigQDCQ6YdAAQUUUEABBRRQQAEFFFBAAQUUUEABBVq8gIHMFn+I3EAFFFBAAQUUUEABBRRQQAEFFFBAAQUUMJDpZ0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFWryAgcwWf4jcQAUUUEABBRRQQAEFFFBAAQUUUEABBRQwkOlnQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVavICBzBZ/iNxABRRQQAEFFFBAAQUUUEABBRRQQAEFFDCQ6WdAAQUUUEABBRRQQAEFFFBAAQUUUEABBVq8gIHMFn+I3EAFFFBAAQUUUEABBRRQQAEFFFBAAQUUMJDpZ0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFWryAgcwWf4jcQAUUUEABBRRQQAEFFFBAAQUUUEABBRQwkOlnQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVavICBzBZ/iNxABRRQQAEFFFBAAQUUUEABBRRQQAEFFDCQ6WdAAQUUUEABBRRQQAEFFFBAAQUUUEABBVq8gIHMFn+I3EAFFFBAAQUUUEABBRRQQAEFFFBAAQUU6CiBAgoooIACCiiggAIKKKCAArUoMHLkyPDkk0+GYcOGhZ49e4ZFF100LLPMMnFXJ02aFEaPHh169OgROnTo0ODu//DDD6FLly7xr8GZnUEBBRRQoCoCZmRWhdVKFVBAAQUUUEABBRRQQAEFZqTAqFGjwuWXXx4++OCD0L9//0Dg8q677grPPPNM3KxPPvkknHfeeYHHhsrkyZPjvE899VRDs/q+AgoooEAVBczIrCKuVSuggAIKKKCAAgoooIACCswYAQKY48aNC9tvv30YMGBA3Ij77rsvjBkzJpBd+eKLL8ZpPE6cODEsvPDCYezYseGdd94JX331VejTp09YbrnlQteuXcOjjz4a5/3oo49C9+7dwyqrrBJefvnlOP+gQYPie+/hOJrRAABAAElEQVS//374+OOPwwYbbBBff/755+Hdd98N7dq1CwsuuGCYd95543T/UUABBRRovIAZmY23c0kFFFBAAQUUUEABBRRQQIEWKkAWJoUMzC+//DJMmTIlbLTRRmHdddcNZFgStKTwOH78+DjthhtuCEOGDAkTJkyITdKvu+66OA/ZnZSffvopNkfn+VtvvRVeeeUVnsZCZufQoUPjcwKaV199dQyI0rx98ODBgUCnRQEFFFCgaQJmZDbNz6UVUEABBRRQQAEFFFBAAQVaoEC/fv3C5ptvHgOTV155ZcykXHrppWMgk2zL1VdfPWZQ8rjAAgvEIOVaa60VZp999jDTTDOFBx54IDz99NMxcLnZZpvFoOUiiywSl29od1PglOxM6lthhRViX5wNLef7CiiggAL1CxjIrN/HdxVQQAEFFFBAAQUUUEABBVqpwLLLLhsIXtLM+4033ojZmWRXbr311tPtUefOncOPP/4Y5/n6669jE3RmIjuzW7du081f34QlllgivPbaa+Gyyy4LBFQXX3zxsPLKK9e3iO8poIACCpQgYCCzBCRnUUABBRRQQAEFFFBAAQUUaF0Cr776ahytfP3114/9U9JH5bfffhsH/ym0J/RneffddweyMjfeeOPYFPz+++8vNGuc1rFjx9gHZ5ohNVXnde/evcM+++wTPvvss0C/moycThPzLbfcMs3uowIKKKBAIwQMZDYCzUUUUEABBRRQQAEFFFBAAQVatgAD+NA/JoP7kCH5zTffxBHK55lnnrjhNB+nMCjQrLPOGvvJ5DXNzOlPk0BoKu3bt49Nw8nsHD58eJyf+d5+++3w8MMPx4GBeJ7K888/H9e9zTbbxHUzoFA20Jnm81EBBRRQoDyBDifUlfIWKW3uceN/Km1G51JAAQUUUEABBRRQQAEFFGhWga5dO1d1fQQPGd17RpY555wzkDVJViR9XRKApIn3hhtuGEci79GjRxy9nNHHaT6+6qqrxnkfe+yx2Aydkc6HDRsWRyhn5HKanr/++usx8LniiivG4CUZngz4w+joAwcOjE3Y11577dicnAF/qItg6iyzzBI23XTTGW4yI4+H61ZAAQUqIdCu7k7TlEpUlF/HyO+njuqWP93XCiiggAIKKKCAAgoooIACM1agT++eVd2AESNGxGBeVVdSRuWMSt6lS5eCS0yaNCm0a9cukHVJqW9eLp+ZnwBpKoyAnpZN09Ij8/JHENSigAIKKNB0gZ+/fZtelzUooIACCiiggAIKKKCAAgoo0OIEigUx2dAOHTpMs731zUvAMxvEZMFiQUzeo+78+pluUUABBRRonMDUW06NW9alFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBZhEwkNkszK5EAQUUUEABBRRQQAEFFFBAAQUUUEABBZoiYCCzKXouq4ACCiiggAIKKKCAAgoooIACCiiggALNImAgs1mYXYkCCiiggAIKKKCAAgoooIACCiiggAIKNEXAQGZT9FxWAQUUUEABBRRQQAEFFFBAAQUUUEABBZpFwEBmszC7EgUUUEABBRRQQAEFFFBAAQUUUEABBRRoioCBzKbouawCCiiggAIKKKCAAgoooIACCiiggAIKNIuAgcxmYXYlCiiggAIKKKCAAgoooIACCiiggAIKKNAUgY5NWdhlFVBAAQUUUEABBRRQQAEFFGjNAuMmjg2vf/1SeO/bt8IXP3wavhk7PIydOCbuUreO3cMs3WYN/XvNGwb2XSwsOdtyoWvHbq15d912BRRQoFULtJtSV6qxByO/H1WNaq1TAQUUUEABBRRQQAEFFFCgiQJ9evdsYg31Lz5ixIjQr1+/+meawe9++ePn4bFP7gvPfPF4KPWyuF27dmGV/muGtefbKMw109wzeA9cvQIKKND2BAxktr1j7h4roIACCiiggAIKKKBAGxdo64HMO9++ITzy8b1N+hSsO2DjsNWiOzWpDhdWQAEFFChPwKbl5Xk5twIKKKCAAgoooIACCiigQCsVIAvz+tcvD599/3GT94BA6PvfvR1+veReZmc2WdMKFFBAgdIEHOynNCfnUkABBRRQQAEFFFBAAQUUaMUCH3z7Trjg2dMqEsRMDAREqZO6LQoooIAC1RcwkFl9Y9eggAIKKKCAAgoooIACCigwAwXIxLzipfPCmAmjK74V1EndrMOigAIKKFBdAZuWV9fX2hVQQAEFFFBAAQUUUEABBWawAM3JGwpiLtR30TgyOY8UHu99/874nBHN3//27fi80D/UzToOG3RiobedpoACCihQIQEH+6kQpNUooIACCiiggAIKKKCAAq1FoC0N9tPQwD4ELDdZaOsYuKzv+BHIvOf9O+oNaDoAUH2CvqeAAgo0XcCm5U03tAYFFFBAAQUUUEABBRRQQIEWKEBz7/pGJyeAuf/KRzYYxGTXCHgyL8sUK6zLJubFdJyugAIKNF3AQGbTDa1BAQUUUEABBRRQQAEFFFCgBQo89sl9RbeKgOTGC21V9P1ib7BMfcHM+tZZrE6nK6CAAgqUJmAfmaU5OZcCCiiggAIKKKCAAgoooEArEhg3cWx45ovHC24x2ZWNCWKmyli2WL+ZrHPrRX8dunbslmYv6fGLL74I3333XVhwwQVDt27Fl/3+++/DJ598EhZaaKHQvXv36er++OOP47TZZ5+9YD0jRowIo0aNisvONttsYeTIkfEvVcS6WTZb0jyzzjpr6NGjR/at+Dy9P90bdRPmnnvuMGbMmPDtt98WejtOYz/YlmHDhoVx48ZNN1/Hjh1jPbzHPKmwLWyTRQEF2o6Agcy2c6zdUwUUUEABBRRQQAEFFFCgzQi8/vVLYcqUKQX3t76MyoILFJhIHRc8e/p077BO1r3iXKtN916hCffff3+44YYbAgFGSrt27cJaa60V9t9//9ClS5fcIu+99144//zzYxCTdbRv3z4sssgi4fDDD58mmHfAAQfE/d5mm23C7rvvnlueJyx3zDHHBIKmgwYNCkcddVS49957w3XXXTfNfL179w6bbLJJ2HnnneP0NA/rYtvyS3o/fzqvr7zyyjB06NBwxRVXFHo7TkvbcsEFF4RXX311uvkIclLP+++/H4488shp3u/bt29YYoklwl577RVmnnnmad7zhQIK1J6AgczaO6bukQIKKKCAAgoooIACCijQ5gXImCxUyMbkr5ySBvphGQKYqQ4eC41mzrpLCWQOGTIkXHjhhTEAt9tuu4XOnTuHJ598Mjz22GMxO/PUU0+Nm/nZZ5+F448/PmYrbrXVVmGeeeYJb7/9dnjggQfCscceG/7yl78Ego/Z8uCDD4ZddtkldOrUKTeZICFBzEJl0003DYsttlj4/PPPw6OPPhpuvPHG0KtXr7D55psXmr3gNOpYdNFpbalj+eWXD4ccckhc5sMPPwx33nlnWGmllcKaa64Zp+VnVe69996hZ8+euXV07do195wniy++eFh77bVjpicB3scffzwGeE8//fS4zdPM7AsFFKgpAQOZNXU43RkFFFBAAQUUUEABBRRQQAEEvvjh04IQA/suVnB6sYkEKgtlXjI/dRUKZBZbd3YdkyZNihmWNOX+29/+FsgspBA4PPDAA2NmIs3EBwwYEC677LLw448/hhNOOCGssMIKcb4NN9wwzDfffOHyyy8PN910UyD4ly0//PBDeOKJJ8K6666bm/zf//439zz/CVmNKduSIONhhx0W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AQQQQAABBBBAAAEEEEDAamtrbePGjXbdddfZd77zHdu8ebO1tbV5GXXXVovH73//+/7z3bt3dwlWKpD4yiuv2KxZs0xdz1MnjcGpacuWLakfdb7WGJq6AZCCmJpC0FNpUtD03HPP9a1Bv/vd7/rWopondDvXcyYEEECgVAUIZJbqkWe/EUAAAQQQQAABBBBAAIESFViwYIEfr1JByyuuuMKPQRkojjnmGPv0pz9tl156qY0cOdIHEpctWxY+9u/NnDnTL6+AZOqkZdSSUy08k6eHH37YfvjDH9qOHTv8DYDUPV3dxTVpvExN/fv3949nn322feYznzHdXV1d32+88UbTmJ5MCCCAQKkLEMgs9TOA/UcAAQQQQAABBBBAAAEESkxALS7V1XvChAk+sLh69epOgTvuuMN3HR81apQpYKlJ3cjDpGU03qVaVIaxNMNnelSLSnVRV5DzmmuusSeeeMLmzZvnx7xUkHPo0KG+27gClPfdd5+pK/r9999vVVVVvmWm0vaLX/zCj42plpr606T51Q1ewU51f1d3cyYEEECg1AQqvuymXOx0y97WXKyWdSKAAAIIIIAAAggggAACCGQpUFtbneUael9cLQx1V+1CmDSmpcakVEBw4sSJPknq/q07ls+fP98HEo866ih/8xy10FR3cd1NXMHF559/3t+R/Pzzz/ddu9WqUncR1x3GNd6l7kKum/XodfI0duxYv//qKq6u6GpNqaDoO97xDh+MVJdy+SjIqXVouuSSS2zMmDFWUVHhg5pPP/20T5/Wcc4559gJJ5zg51NrT92kSMHX0047zb/HfwgggECpCJS5puyJtuwx7/HOXV3v6hbz6lkdAggggAACCCCAAAIIIIBAhgJDBg/IcMloi9XX19uIESOizdyHc6mVY01NTbcpUMtIBRX1l83U2za0XnUx15id3U09fabLeN38h3Ezu1PjPQQQOJIFuGv5kXx02TcEEEAAAQQQQAABBBBAAIEeBXoKYmoBtXyMY+ptG1p/T0HM3j5T93WCmHEcHdaBAALFJsAYmcV2xEgvAggggAACCCCAAAIIIIAAAggggAACJShAILMEDzq7jAACCCCAAAIIIIAAAggggAACCCCAQLEJEMgstiNGehFAAAEEEEAAAQQQQAABBBBAAAEEEChBAQKZJXjQ2WUEEEAAAQQQQAABBBBAAAEEEEAAAQSKTYBAZrEdMdKLAAIIIIAAAggggAACCCCAAAIIIIBACQoQyCzBg84uI4AAAggggAACCCCAAAIIIIAAAgggUGwCBDKL7YiRXgQQQAABBBBAAAEEEEAAAQQQQAABBEpQgEBmCR50dhkBBBBAAAEEEEAAAQQQQAABBBBAAIFiEyCQWWxHjPQigAACCCCAAAIIIIAAAggggAACCCBQggIEMkvwoLPLCCCAAAIIIIAAAggggAACCCCAAAIIFJsAgcxiO2KkFwEEEEAAAQQQQAABBBBAAAEEEEAAgRIUIJBZggedXUYAAQQQQAABBBBAAAEESkmgqanJ7r777lLaZfYVAQQQOCIFKo/IvWKnEEAAAQQQQAABBBBAAAEEEDgg8OKLL9oNN9xgp512mo0aNeoQl46ODnv55Zetvb3dpkyZYtXV1YfME97QvOvXrw8vOx+rqqps3Lhxna/Dk1WrVllra6tNnTq1y3rTWU9jY6OtWbPGBg8ebOPHj7fyctokBV8eEUCgtATK9rspF7u8c1djLlbLOhFAAAEEEEAAAQQQQAABBLIUGDJ4QJZr6H3x+vp6GzFiRO8z5eHTFStW2P/8z//Y1q1bO7c2Y8YM+8IXvuCDgnrzmWeesW9+85umVpuaFJD81Kc+ZRdccIF/nfrfq6++aldeeWXq2zZp0iT73//93873n376afvRj35kstDUr18/+8///E879dRT/eso69m3b59de+21dscdd/hl9J9cP/e5z9n06dM73+MJAgggUCoCtMgslSPNfiKAAAIIIIAAAggggAACJSSwd+9e++IXv2hlZWX29re/3RYsWGDnnXee3XXXXfa9733PvvrVr/rg5Ze//GUbNGiQfexjH/NBzN/85jf2gx/8wAcKjz766EPEtm/f7t974xvfaLNmzer8fMCAg8HhnTt3+m1UVlbav/zLv1hzc7PdeOON9vWvf92uv/56v70o63n44Yd9EPOkk06yD3zgA7Zhwwb7yU9+4gOvv/71r/2+dSaAJwgggEAJCBDILIGDzC4igAACCCCAAAIIIIAAAqUmoNaYLS0t9oY3vMHmzp1rixYtso9//OO+ZaS6aqtzorprq4XjW9/61s4WmLt377af/exntmzZMusukLlt2zZPecYZZ9icOXO6Zb311ltNwcz/+q//stNPP93PM3LkSFMrTbUOVeA0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FvPRI+0IIIAAAggggAACCCCAAAIIIIAAAgiUiACBzBI50OwmAggggAACCCCAAAIIIFCKAvv377fXXnvNnnnmGdu9e3evBC0tLbZ27Vr/19HR0eu8UT/U9m+44QZ77LHHoi7CfAgggAACPQhU9vA+byOAAAIIIIAAAggggAACCCBQ1ALr16+3b3zjGz6QGXZk7ty5duWVV1p5+aHten7605/awoUL/aw33nijDR48OCyW8ePOnTvtlltusVmzZtmcOXMyXk/qgvfdd581NDTYu971rtSPeI0AAggcsQIEMo/YQ8uOIYAAAggggAACCCCAAAKlLfC1r33NtmzZYpdffrlNmDDBbr/9drv33ntt6tSp9qY3vakLztKlS30Qs6yszNSKMq5p6NChdvXVV8cSFE1O0x//+EdToJZAZrIKzxFA4EgXqPiym3Kxky17W3OxWtaJAAIIIIAAAggggAACCCCQpUBtbXWWa+h98T179lhdXV3vM+X408bGRtu+fbtdeOGF9pa3vMVGjx5tRx99tP3lL3/xQcXZs2d3pmDv3r2mS+NBgwbZ8ccfb6+++qoPENbW1nbOE54sWLDAB0QnT55sf/7zn+2ee+4xdUOfOHGiPfjgg3bzzTfb5s2bbezYsabl1V392muvta1bt9rMmTPtpZdesuuvv94GDBhgK1as8PPrs3HjxllNTY3fjLqiq2VocgvOH//4x/bCCy/YySefbNdcc409//zz1traahs3bvStS7Vvmp599lm766677K9//att27bNJk2aZJWVB9swzZ8/3xQEfeSRR3zajjrqKKuqqvLL8h8CCCBQ6AIHv80KPaWkDwEEEEAAAQQQQAABBBBAAIGIAgoUqiVmmBRcVXdsTaecckp42z/+7ne/88HHr3/96zZv3rwun6W+WLlypSmYuWnTJh+cVLDw4Ycf9mNwKpBZXV1tDzzwgA80fvGLX7S2tjY//+te9zp797vf7ZfR8mopumrVqs75FXj8yU9+4je3ePFi3x3+M5/5TOfmte6RI0faRz7yEauvr/fBU32oIGhTU5OfT+v9wQ9+YP3797cxY8bYQw89ZI8//rj913/9lw+SKqB62223+Rap6jb/ox/9yM4880z7z//8z87t8AQBBBAoZAECmYV8dEgbAggggAACCCCAAAIIIIBA1gJf+cpX7Omnn/br+bd/+zc7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NbxELgkBBBBICgGCzKS4DZwEAggggAACCCCAAAIIIIBAqgpovkcaAggggEDiBXhqeeKNOQICCCCAAAIIIIAAAggggAACCCCAAAIIVFCAILOCgOyOAAIIIIAAAggggAACCCCAAAIIIIAAAokXIMhMvDFHQAABBBBAAAEEEEAAAQQQQAABBBBAAIEKChBkVhCQ3RFAAAEEEEAAAQQQQAABBBBAAAEEEEAg8QIEmYk35ggIIIAAAggggAACCCCAAAIIIIAAAgggUEEBgswKArI7AggggAACCCCAAAIIIIAAAggggAACCCRegCAz8cYcAQEEEEAAAQQQQAABBBBAIIUEZs+ebcuWLUuhM+ZUEUAAgfQQIMhMj/vMVSKAAAIIIIAAAggggAACCJRSYOPGjQSZpbRiMwQQQKAyBQgyK1ObYyGAAAIIIIAAAggggAACCCSdQKwKTFVnUqG557Z9MafA9BWp5eXl2datW62g4Kfrd+7caWvWrLHNmzdH2tXWrVvnviKuZCECCCAQEshCAQEEEEAAAQQQQAABBBBAAIF0FVD1pb5Kaps2bXLbNGjQwBo2bFjSptV+3a0P5drUWbtDygN71rD/uyonfM0bNmwIB5GZmZnWqlUry87OdutlOH36dMvPz3efO3fubG3btg3vO2PGjPC+TZs2tf333z+8jjcIIICAF6Ai00vwigACCCCAAAIIIIAAAggggEAlCxQWFtrChQvt008/NQWBydxUhelDTJ2n3gcrM9evXx8+fV1XMCBesWJFOMTURosXLw5vW7wSs/jn8IaleKOqT1nOmzfPdA7R2q5du9w22i5ahaiqShWwzpo1K2KF6bRp0+y2226zLVu2RDsMyxFAIM4CBJlxBqU7BBBAAAEEEEAAAQQQQAABBEojMGfOHDvqqKPs+OOPt1/+8pfWt29fu/nmm4sEfqXph212CzzyyCPWr18/Zzl06FA77rjjbOnSpRF5/ve//5m20deECROKbKMA9JZbbnH347TTTrNTTjnFevXqZY899liR7V5//XV76qmnbO7cuUWW8wEBBBInUCP0w3lLIrrPzduRiG7pEwEEEEAAAQQQQAABBBBAoIICOTm1KthDybtv27bN6tSpU/JGVbxW1YKar1FfmtcxJyfHvWoItL580/vVq1e7j9rGr4/HEPOf//zntnz5crv99tvtqquucsd5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y6yRYZk8mCjutnSIAALxEdDvV/2erexGkFnZ4hwPAQQQQAABBBBAAAEEEEAgpQUUYu7cWZCwa1A4WhDKR2vWrEGYmTBlOkYAgVQUYGh5Kt41zhkBBBBAAAEEEEAAAQQQQKDKBFSJWRmtso5TGdfCMRBAAIF4CBBkxkORPhBAAAEEEEAAAQQQQAABBNJGIBHDySPhVdZxIh2bZQgggEAyChBkJuNd4ZwQQAABBBBAAAEEEEAAAQQQQAABBBBAoIgAQWYRDj4ggAACCCCAAAIIIIAAAggggAACCCCAQDIKEGQm413hnBBAAAEEEEAAAQQQQAABBBBAAAEEEECgiABPLS/CwQcEEEAAAQQQQAABBBBAAAEEyi/w278vsoyMjFAH+lLL+PGz3u5eHlri1vTqXsfOPbWpe88fCCCAAAKxBQgyYxuxBQIIIIAAAggggAACCCCAAAIxBYa/tspmzN0aDjLDgaYLMJVj7h4U6V+/mp9nM+fn2h2/bx2zbzZAID8/37KyiHGq83fCjBkzTF/nn39+db7MCl0bQ8srxMfOCCCAAAIIIIAAAggggAACCOwWmDl/d4ipANOFmD++7v6c6ZYpxFRFpnv12wGY9ALTp0+3v/zlLzZlypS4nestt9xi999/f9T+RowY4Y65detWW7RokbVu3druuuuuqNtXxoqdO3faU089ZVdffbX96U9/svHjx1fGYdPqGMOHD7cbb7wxra65LBdLkFkWLbZFAAEEEEAAAQQQQAABBBBAIIrALrc8w8Y80yv01dPGPL2fvfv0vvbuUz1CX93tnSe7hb662ugnu9joJzpb7261Q3v4IehROk3DxZ06dbJTTz01qa5cQeJjjz1mCxcujNt5/fe//7VXXnklan9jxoxxx8zLy7M6derYAQccYC1btoy6faJXqCL05z//uf3hD3+wd99915544gk7++yz7cknn6zQoR9//HHTPQ+GopGWVeggKbLz/vvv76oxVZVJmBn5phFkRnZhKQIIIIAAAggggAACCCCAAAJlElCl5f496kXcZ8KUDXb7g0vtb/9Zbn9/aKX9/b+rwnNmRtwhzguXLl1qH3/8sW3atMlV902bNs1UXefb5s2bbdKkSbZ48WK/yL1+++23pm0LCgpciDdz5swi6/2HVatW2cSJE23t2rV+kXv96quvbN68eab+FVRt3LjRLVco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CKSoAEFmit44ThsBBBBAAAEEEEAAAQQQQAABBBBAAIF0EiDITKe7zbUigAACCCCAAAIIIIAAAggggAACCCCQogIEmSl64zhtBBBAAAEEEEAAAQQQQAABBBBAAAEE0kmAIDOd7jbXigACCCCAAAIIIIAAAggggAACCCCAQIoKEGSm6I3jtBFAAAEEEEAAAQQQQAABBBBAAAEEEEgnAYLMdLrbXCsCCCCAAAIIIIAAAggggAACCCCAAAIpKkCQmaI3jtNGAAEEEEAAAQQQQAABBBBAAAEEEEAgnQQIMtPpbnOtCCCAAAIIIIAAAggggAACCCCAAAIIpKgAQWaK3jhOGwEEEEAAAQQQQAABBBBAAAEEEEAAgXQSIMhMp7vNtSKAAAIIIIAAAggggAACCCCAAAIIIJCiAgSZKXrjOG0EEEAAAQQQQAABBBBAAAEEEEAAAQTSSYAgM53uNteKAAIIIIAAAggggAACCCCAAAIIIIBAigoQZKbojeO0EUAAAQQQQAABBBBAAAEEEEAAAQQQSCcBgsx0uttcKwIIIIAAAggggAACCCCAAAIIIIAAAikqQJCZojeO00YAAQQQQAABBBBAAAEEEEAAAQQQQCCdBAgy0+luc60IIIAAAggggAACCCCAAAIIIIAAAgikqABBZoreOE4bAQQQQAABBBBAAAEEEEAAAQQQQACBdBIgyEynu821IoAAAggggAACCCCAAAIIIIAAAgggkKICBJkpeuM4bQQQQAABBBBAAAEEEEAAAQQQQAABBNJJgCAzne4214oAAggggAACCCCAAAIIIIAAAggggECKChBkpuiN47QRQAABBBBAAAEEEEAAAQQQQAABBBBIJwGCzHS621wrAggggAACCCCAAAIIIIAAAggggAACKSpAkJmiN47TRgABBBBAAAEEEEAAAQQQQAABBBBAIJ0ECDLT6W5zrQgggAACCCCAAAIIIIAAAggggAACCKSoAEFmit44ThsBBBBAAAEEEEAAAQQQQAABBBBAAIF0EiDITKe7zbUigAACCCCAAAIIIIAAAggggAACCCCQogIEmSl64zhtBBBAAAEEEEAAAQQQQAABBBBAAAEE0kmAIDOd7jbXigACCCCAAAIIIIAAAggggAACCCCAQIoKEGSm6I3jtBFAAAEEEEAAAQQQQAABBBBAAAEEEEgnAYLMdLrbXCsC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+OAD97N/4403hv7ClO1+/h5//HG77rrrrFboKaXJ0r755ht7/fXXbcWKFdauXTs766yzrGXLluHTmz59uo0aNco2bNjgrH/5y1+66wlv8OObu+66KzQcrqFddtll4VULFy604cOH2/nnn29dunQJLy/Nm1mzZtlLL71kV1xxhbVu3bo0u7ANAggggAACMQX0kJ3KfrBPzJMKbaBzKs2T01P9/EtjwTYIIIAAAggku0C1q8gcPXq03X777fbpp5+6QOXtt9+2P/7xj6a/mFdmmzFjhi1btswd8uuvv7a5c+dW5uFT7liaC/OItsdYdlaO+9L7WPNj6iKr+37JdCMVtimMf+2110wBm8I132655RbTz57+4WDLli32f//3f26b0q732+m1In2tXLnSBX933nmnff/99zZ58mTX9QMPPGAHHnhgUoWYOr8//OEP7h9c9t9/f/c76re//a1t27bNnbOM5bh582bn+s477zgbt7LYH7Nnz7Y333zT3n9/zzyzGzdudPdg06ZNxbaO/VH3Vsf35xJ7D7ZAAAEEEEAAAQQQQAABBBBAIPEC1aoi87vvvrOHH37YDj74YFMgkJOT4yqx/vSnP9k//vEPVxk5ceJEUxXUeeedZ5mZmZabm2vPP/+89erVy/r37+/CR1VzKozp16+fW67boCB0ypQpNnjwYBszZowdd9xx1qpVK/v8889NIYKqvo455hi3rLS3bdy4cS4o2G+//ezDDz90lViDBg2yunXr2tq1a10wceSRR9oXX3xhbdu2tcMOO8yWL1/uwhmdnyreglVvuv7x48dbfn6+HX/88S7Q0TXp2kaMGOHCEAUUqg5V5ZeCDgW+ClxVsTVw4MDwv5Kr4k4OMurbt6/pHH2ToYLZZs2a2UEHHRS3ii2FkqUJL/15+Nfqvp+/zqp+/fbbb933gkI3/WOBb1999ZX7+bjkkkts2LBh7vvvwgsvtBdffNF9f8Za7/vRa6xtY63fvn27CytbtGjhKhT1eezYsaEHC9Q0/WwlU1P1qn7W//znP1vz5s2td+/edvPNN7vfJ/q5VUWk1v/tb3+zrKws22uvvUxVpTLQtpHao48+6tZp2+JNvxcU7OpnW7+7Dj30UGvcuHF4M/0e089806ZNrUGDovOX+X31c6+K0aOOOsrq1avn9l2zZo37/aXAtGfPnu73prxpCCCAAAII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\n", + ")\n", + "\n", + "![Census vector ingestion](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaQAAARrCAYAAAB8E6FxAAABeWlDQ1BrQ0dDb2xvclNwYWNlSVRVUl8yMDIwAAAokXWQv0tCURTHv9oPqYQIhJaGO0mFT0ojHP0RSNAgplBtz6c9BX1eni/CJWhuEfoPKpp0aWqoaK+moCkiKKg9cCm7nfteoRady+F8+HLu9557AHdA5bw8CKBiWGY6GWdr6xvM84JhjNBZhF/VajyWSq1QC35qf7Tv4JL1VpFerH5zPjOxczIePVbaexelv/19MZov1DSqH5RLGjctwBUlTm1bXHKD2GfSUMRHknWHTyXnHL62ezLpBPEjMdOKah5wS/9ArkfXe7hS3tK+Z5DTewtGdpXqNOUU0ihAQxAMy8ggC4UUhjhxECHM2alg/h+PBdsjgSo46jBRgo4iLHKIkcJRJnfpbNhvBIgdz7Dc/e+ddrUm7TJZFULsdrVZ0ppPgKfV1dgAMNYCrj65aqq2RArckWfglf4+SX2SfWe1zXDImd4bB4YehHjzk9c+0GkI8X4gROeQLt8Dl8YXM3lsJwPHewUAAABiZVhJZk1NACoAAAAIAAIBEgADAAAAAQABAACHaQAEAAAAAQAAACYAAAAAAAOShgAHAAAAEgAAAFCgAgAEAAAAAQAABaSgAwAEAAAAAQAABGsAAAAAQVNDSUkAAABTY3JlZW5zaG90v0hTjQAAAj9pVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjIxNjA8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpVc2VyQ29tbWVudD5TY3JlZW5zaG90PC9leGlmOlVzZXJDb21tZW50PgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+Mzg0MDwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgqvGlBtAABAAElEQVR4AezdBZxc1dmA8bNEIBCBkBAgSHAITrGiwYoTCgSHFooXp1CgxYtLcYoUinuRAi1OsSAFgjsECU6AJFiEfHlOvzO9O5nZnd0d293n/JjMzPX7n+Xcc9/73nMbJk8pwaKAAgoooIACCiiggAIKKKCAAgoooIACCiigQIUFuo4YMaLCq3DxCiiggAIKKKCAAgoooIACCiiggAIKKKCAAgqE0GCGtH8GCiiggAIKKKCAAgoooIACCiiggAIKKKCAAtUQmKYaK3EdCiiggAIKKKCAAgoooIACCiiggAIKKKCAAgoYkM78Dfz4449h7NixmSF+VEABBRRQQAEFFFBAAQUUUEABBRRQQAEFFCiXQNdSFvTTTz+FKf+FSfxT4dJlmmnClP+mvMobK2cfTjzxxKJb/4c//CFcdNFF4ZNPPgnHH398eOKJJ8L9998f9t1339CrV6+i83399dfhvPPOy43v379/mH/++cNyyy2Xm+/5558Pd9xxR26aAQMGhCWXXDIsvfTSoWvX4j/BOeecE1je1ltvnZvXDwoooIACCiiggAIKKKCAAgoooIACCiigQHsVaDbqO3HipDBh4k9VCUaDSNCb9bHecpaGhoaw8MILx9fMM88c3nvvvdCvX7/cMNa16aabhh122CGulkxpppk0qentmDhxYpyuS5cuYZ555gkfffRRuO6668Lpp58evv3227iscePGxWnmmGOOsOiii4YxY8aEiy++ODz22GNxfLF/Ro0aFT777LNiox2ugAIKKKCAAgoooIACCiiggAIKKKCAAgq0K4Hi6blTdoOg8KSfJtdkh+J6p6y/a9cuZVk/AenNN988LuuFF14Izz77bFhllVVigDit4K233orBYgLX+YVM6KeffjoQJJ577rnDqquu2ii7mWznddddN8729ttvh1NOOSVce+21YZdddsktarXVVotBawYcdthh4Zlnngmrr756bnxTH1555ZW4zazjkUceiRnkbD9BdQqB8SeffDKwDzPOOGNYeeWVc+OaWq7jFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBagkUzZCmi4taBaPTzrN+tqNa5eWXX45B5/z1kS192mmnxS48Jk+eHG677bZwwQUXBD4XKvPNN18YNGhQDA5nx48fPz589913YcSIEeGrr76K3XYwnn1kXHoVysomEP7www+HCy+8MLz//vvh3nvvjUFvtoHXJZdcEq644orYBzaB6RNOOCEQRLcooIACCiiggAIKKKCAAgoooIACCiiggAL1IlA0Q7qKceAmLdiOMncn3eT6Co2ka43Ro0eHk08+OfYLTZ/Q9Bv96aefNsqSzs674IILhrvvvjsGoNNwuvFIZfDgwWHZZZeNX8l4vvrqq9OosM4664Rhw4blvmc/bLDBBmGZZZYJjz76aAxAk41NdyFkfDMP87KtdBvy8ccfx2zp7Px+VkABBRRQQAEFFFBAAQUUUEABBRRQQAEFaiVQNCBdjQcYlrLTbEfXUDSRu5RFtHka+pImi/nII4+My0qZ0SNHjowPMCy0AuaZYYYZwvTTT58bvd9++4W55porfPDBB+Gqq64KZ5xxRjjmmGPCUkstFWafffbcdDPNNFPuc/6HeeedNw4aOHBgfCfTmj6qKQS5KX379g177bVX/Ow/CiiggAIKKKCAAgoooIACCiiggAIKKKBAvQgUDUjXywbWw3b06dMndO/ePfb7TDZyKgScUzA4DeOdLj7efPPNXIA4jSM43atXrzicLOd77rknZjMTQGYdrS30GU35/PPPA4Fqguesv3///jE43drlOp8CCiiggAIKKKCAAgoooIACCiiggAIKKFBOAQPSJWguvvji4cEHH4wPE1xppZXiwwOfe+65cNBBB+XmJluabjRee+212Ec0wectttgiN54PjKM7Dbr6GD58eAxON5UN3WjmJr7MP//8MRP7zjvvjIHzV199NXYXwvYR7LYooIACCiiggAIKKKCAAgoooIACCiiggAL1IFCxgPRTn0wOA3s2THnVw262bRsWXXTRsM0224S77rorBnoHDBgQ1ltvvdC7d+/wxRdfxIU/88wzgRfjlltuubD22muH2WabrdGKb7nllvidYPWcc84Zttpqq9DQ0NBomtZ8Iet6n332id2AnHXWWWHaaacNQ4cODQsttFBrFuc8CiiggAIKKKCAAgoooIACCiiggAIKKKBARQQapvSHPLnQkn8cP7HQ4JKGjZrSpfGtb095GuGUstyAhrD8rG0Luk7bvWJx85L2JzvRd99916hf6Oy4evjM9vXo0aMsge562B+3QQEFFFBAAQUUUEABBRRQQAEFFFBAAQU6jkBZA9JkRX/0bQijxjWOcZMpPfsModWB6XoKSHecn949UUABBRRQQAEFFFBAAQUUUEABBRRQQAEFqivQpoD0i2+MD384Y3Tc4m026hl6LDLDVMHotDsEpeebNKHR9MxTSjEgXYqS0yiggAIKKKCAAgoooIACCiiggAIKKKCAAvUtUNa+MOieg1excv5FU/rysCiggAIKKKCAAgoooIACCiiggAIKKKCAAgp0SoGyBaSvvWNc4LX4gt0LQpJNbVFAAQUUUEABBRRQQAEFFFBAAQUUUEABBRTovAJlC0gnQgPPScJ3BRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAgazANNkvflZAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoFICZcuQ5gGFpTykcJM9PqnUvrjcCgu88cYb4cgjj4xrOeaYY8JCCy1U4TXW9+LPOuuscOutt4ahQ4eG/fffv7431q1TQAEFFFBAAQUUUEABBRRQQAEFFFCgDgTKFpBOfUjXwT65CRUSOP3008ODDz4Yl967d+9w0UUXVWhN9b/Yt956K5xwwglxQ1955ZWw4YYbhgUWWKD+N9wtVEABBRRQQAEFFFBAAQUUUEABBRRQoIYCdtlRQ/z8VW+88cbhZz/7WXxdddVV+aNr/n2xxRbLbcOiiy6a+9xRPzT1ewwcODDMOOOMcdd557tFAQUUUEABBRRQQAEFFFBAAQUUUEABBZoWKFuGtF12NA1dytiPP/44fPjhh3HSsWPHljJLVafZe++9wzLLLBMmT54cVl555aquuxYra+r36NGjR3j88cfDQw89FIYMGRKmn376Wmyi61RAAQUUUEABBRRQQAEFFFBAAQUUUKBdCZQtIN2Zuuz44osvwkwzzRS6dOlS8o89bty4GMjt1atXyfM0N+HEiRPDmDFjQt++fZubdKrxH330UaDbjZ49e041rtiAhoaGFgWiJ02aFLAaMGBAsUXmhjPt6NGjQ//+/XPDSv0wYcKEgC+/SSmFgPpnn30WpplmmtCvX7/AfrWmzDzzzGHzzTdvdta2/E4tMWx2Q5xAAQUUUEABBRRQQAEFFFBAAQUUUECBGgt0mi47CFryED6Co7yOO+64qeh333333PhVVlml0fgnnngiHHjggWGFFVYIdFex4IILhq222ipcccUVjabLfvnggw/ietZbb724bvoYZrkHHHBA+Oqrr3KTnnTSSXG9TJ/K0UcfHYdtt912aVB8//HHH8PZZ58d1802LLLIIjFI/Lvf/S48+eSTjablyy677JLbp6OOOio89thjYbXVVgtLL710OOKII6aavqkB2WVhlUp2+GmnnRbef//9sNNOO4WFF144LLHEEnHf2WaCq/nl5ZdfDrvttlsYPHhwoEsQpr/22mvDiBEjctvN7/Xpp582mvWHH34IPFRw2LBhYf7554/rwpbfiPUXKuz7lltuGeacc864HtY399xzh5133jm89NJLuVlK+T1ef/31RttHn9LZ0pbfqaWG2fX6WQEFFFBAAQUUUEABBRRQQAEFFFBAgXoWKFuGdKEuO/5wxujw4hvj62L/u3XrFugT+Morr4zbc9999zUKyBIspfuFVDbbbLP0MQZxt9566zB+/P/2hYxcpudF1w6///3vc9Pz4ZNPPgksIz84+uabbwZew4cPD9dcc02Yd955G83X1BeC6r/5zW/Cvffe22gygqG8brjhhhjMLdadBt2A7LPPPmHUqFGN5i/nl2+//Tb86le/CjzoL5Wvv/46HH/88TGL+fDDD0+D43Zss802jYLNBJ7333//8Nvf/jY3Xf4HMo4Jguc7JFt+k1tvvTXMNddcuVlvv/32GPgmOzpbCBzfeeed8WGNf//732OgPju+NZ/b+ju1xLA12+c8CiiggAIKKKCAAgoooIACCiiggAIK1EqgbBnSdNmxyR6fNHrVSzA64WaDzK+99lqjwOwzzzwTCJym8stf/jJ+fPHFF8OOO+6YC0aTVXvMMcfEzNzpppsuTnPGGWeEiy++OM0au9EgEzcFo/v06RPIKN52221D6rLj3Xffjdm8zLTqqquGgw8+ODBdKvRLzLBslxD77rtvLghLgJ2gLFnPSy21VJyN4OoOO+wQXnjhhbSYRu/XXXdd3Ge2YaWVVgqz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jBs3Luyxxx7h3nvvLbh5AwYMCOeff37gwZIWBRRQQAEFFFBAAQUUUEABBRRQQAEFFGj/Agak2/9v2O734OWXXw733Xdf7NeZrOkFFlggLLzwwmHZZZcNffr0aff75w4ooIACCiiggAIKKKCAAgoooIACCiigwH8FDEj7l6CAAgoooIACCiiggAIKKKCAAgoooIACCihQFQE7ha4KsytRQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUMCDt34ACCiiggAIKKKCAAgoooIACCiiggAIKKKBAVQQMSFeF2ZUooIACCiiggAIKKKCAAgoooIACCiiggAIKGJD2b0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgKgIGpKvC7EoUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDEj7N6CAAgoooIACCiiggAIKKKCAAgoooIACCihQFQED0lVhdiUKKKCAAgoooIACCiiggAIKKKCAAgoooIACBqT9G1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRSoioAB6aowuxIFFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABA9L+DSiggAIKKKCAAgoooIACCiiggAIKKKCAAgpURcCAdFWYXYkCCiiggAIKKKCAAgoooIACCiiggAIKKKCAAWn/BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQWqImBAuirMrkQBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFDAgLR/AwoooIACCiiggAIKKKCAAgoooIACCiiggAJVETAgXRVmV6KAAgoooIACCiiggAIKKKCAAgoooIACCihgQNq/AQUUUEABBRRQQAEFFFBAAQUUUEABBRRQQIGqCBiQrgqzK1FAAQUUUEABBRRQQAEFFFBAAQUUUEABBRToKoECCiiggAIKKKCAAgoooIACCiiggAIKdB6BsWPHhtGjR4dx48aFCRMmdJ4d76R72q1bt9CzZ8/Qt2/f0KtXr5orNEyeUmq+FW6AAgoooIACCiiggAIKKKCAAgoooIACClRcYNSoUeGbb74Js8wyS+jdu3fo3r17xdfpCmorMH78+DBmzJjw2WefhT59+oSBAwfWdIMMSNeU35UroIACCiiggAIKKKCAAgoooIACCihQHQGC0QQnBw0aFBoaGqqzUtdSNwLkJY8cOTJehKhlUNo+pOvmT8INUUABBRRQQAEFFFBAAQUUUEABBRRQoDICdNNBZrTB6Mr4toelchGC35+/A/4ealUMSNdK3vUqoIACCiiggAIKKKCAAgoooIACCihQJQH6jKabDjOjqwRep6vh9+fvgL+HWhUD0rWSd70KKKCAAgoooIACCiiggAIKKKCAAgpUSYAHGNJntEUB/g74e6hVMSBdK3nXq4ACCiiggAIKKKCAAgoooIACCiigQJUEJkyY4AMMq2Rd76vhQZb8PdSqGJCulbzrVUABBRRQQAEFFFBAAQUUUEABBRRQQAEFOpmAAelO9oO7uwoooIACCiiggAIKKKCAAgoooIACCiigQK0EDEjXSt71KqCAAgoooIACCiiggAIKKKCAAgoooIACnUzAgHQn+8HdXQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoFYCBqRrJe96FVBAAQUUUEABBRRQQAEFFFBAAQUUUECBTiZgQLqT/eDurgIKKKCAAgoooIACCiiggAIKKKCAAgooUCsBA9K1kne9CiiggAIKKKCAAgoooIACCiiggAIKKKBAJxMwIN3JfnB3VwEFFFBAAQUUUEABBRRQQAEFFFBAAQUUqJWAAelaybteBRRQQAEFFFBAAQUUUEABBRRQQAEFFFDg/wWef/75wKujFwPSHf0Xdv8UUEABBRRQQAEFFFBAAQUUUEABBRRQoGSByZMnh4kTJ5Y8fTkmJBB90EEHxVdHD0p3LQeYy1BAAQUUUEABBRRQQAEFFFBAAQUUUECBziFw6aWXho8//ji3sz169AjzzjtvWHfddQOfq1XSduyyyy5hwIABZVktwehNNtkkvPLKK+Gpp54KM888c1mW29RCUjA6TUNg+vTTTw9LLrlkGtSh3g1Id6if051RQAEFFFBAAQUUUEABBRRQQAEFFFCgsgLXX399GDFixFQrmX322cOdd94ZeK9GSdux2WablS0gzXZPmjQpbn7Kkj777LPDLbfcEg4//PCwzjrrlHXX8oPRaeEdOShtlx3pV/ZdAQUUUEABBRRQQAEFFFBAAQUUUEABBUoWuPDCC8Ojjz4aeB88eHD46KOPwkknnTTV/BMmTJhqWHbA+PHjs19b/bm59bDg/Gnyvzc0NIQ77rgjvPbaa7kgN/tFxvS4ceNavW2FZiwWjE7TEpTuiN13GJBOv7DvCiiggAIKKKCAAgoooIACCiiggAIKKFCywJxzzhkWWGCBsOmmm4bDDjsszvfEE0/k5r/iiitiNx5zzDFHWGmllcK5556bG8eHq6++Og5nOcsvv3z4wx/+EL799ts4za233hoDwkceeWRunhtuuCEO+9Of/pQbxofhw4eHpZdeOrCejTfeODz77LO58ayX7jzIcE7TEOj9/PPPw9Zbbx3n2WCDDcJDDz2Um2eVVVaJwz/99NOw6667hssuuyyO22OPPeIychO24UNzwei06I4YlDYgnX5d3xVQQAEFFFBAAQUUUEABBRRQQAEFFFCgVQJkEVMGDhwY36+66qpw8MEHh7feeisMGzYsfPPNN+G4444Lf/7zn+P4J598Mhx44IGBoO/ee+8dCEpfcsklufH53WYwUxqWn9VMMLxnz56hX79+sd9n1pe25/vvv4/rI5hMwJrCtq244orhnXfeCfPNN1945plnwiGHHBLH8U+ah/6kCWgzDYVANcsuRyEgveOOO8ZXob6iGZbGd7QsafuQLsdfkMtQQAEFFFBAAQUUUEABBRRQQAEFFFCgkwmQAX3//feHF154Idx7771x79daa634fuKJJ8Z3xg8aNCh8/fXXYaGFFopB5wMOOCB2gcEEQ4YMidnVBH9vvvnmXNA4zlziP9tvv3049dRTA11/bLPNNuHxxx8P9913XwzopkWcd955YYsttggXXHBBOProo+PDCsnmJsi98MILh/feey+88cYbYcEFF0yzxPeddtopvP766+Htt98OrOeXv/xlo/Gt/UKwORUc84POKSCdpulI7wakO9Kv6b4ooIACCiiggAIKKKCAAgoooIACCihQJYHrrruu0Zr23HPPsPvuu4dPPvkkfPHFF3HcXnvt1WgahjN+3XXXDYceemjsr5lA9ZprrhnWWGONsMIKKzSavpQv6623XphmmmnCdNNNF9Zff/0YkCZIni1kOlMWWWSR+E6GNPPwWmqppWJf2GPHjo3j/KeyAgakK+vr0hVQQAEFFFBAAQUUUEABBRRQQAEFFOiQAueff35YdNFFwz777BOzpOmruVu3bjFTOe3wMssskz6G7OfZZ589PPfcczFj+sEHHwy33357fP3zn/8MV155ZW6eiRMn5j7/8MMPuc/ZDwSVU0mfU/ce+cPTd99rJ/C/X6t22+CaFVBAAQUUUEABBRRQQAEFFFBAAQUUUKCdCdAVB91d8DBCymmnnRa75qA/aPp0puy2226BhxAee+yxMRN59dVXD3379o3B6Icffjhsu+22gYD0Aw88EKe/55574oMNCVhTeNggQemffvopN00ckfmHbkEoTMf8lMUXXzy+l/Of7777rpyL67TLMkO60/707rgCCiiggAIKKKCAAgoooIACCiiggAJtFxgypR9oHvj36KOPhnPOOSccccQR8UGFJ510UuxCY+utt479MNPP9DrrrBPWXnvt2G3HfvvtFx8YuN122+X6UB48eHCYYYYZwnLLLReD2vTtzOcZZ5wx1+90/hb/9a9/DSNGjIjBcPp6Jhie+rLOn7Y131n/ZZddFgPuPCyRhzWWs9BfdKEHG5ZzHfW0LDOk6+nXcFsUUEABBRRQQAEFFFBAAQUUUEABBRSoc4EuXbrELUzdY/CFIDTl3HPPDQRteXDhIYccErp37x6HDR8+PAwbNiyceeaZoaGhIQaqGU8he/q2224L9PN8+eWXx2Fdu3aNDyCkf2eWR0A6PSgxrT+9H3fccbkHD84333zhb3/7W5h77rnjcuhChJLd1jgg809aDttFyZ9no402Cr/4xS/idpAFnu1GJLOYVn8kGH366ac3emUfetjqBdfpjA1TnmA5uU63zc1SQAEFFFBAAQUUUEABBRRQQAEFFFBAgTIIkEFMcLcW5csvvwwzzTRT0aAwDzrs3bt3DF4X2r4ff/wxTDvttIVG5YbRZ/Q333wTuwPJDSzzh++//z4usUePHm1e8hVXXNGiZZQ7QF3Lvwe77GjRT+/ECiiggAIKKKCAAgoooIACCiiggAIKKNASgZlnnrnJyfv169fk+OaC0cxMljN9U1eylCMQnbav1gHptB21eDcgXQt116mAAgoooIACCiiggAIKKKCAAgoooIACnVaALjo6azEg3Vl/efdbAQUUUEABBRRQQAEFFFBAAQUUUEABBWoi0JkeYpgP7EMN80X8roACCiiggAIKKKCAAgoooIACCiiggAIKKFARAQPSFWF1oQoooIACCiiggAIKKKCAAgoooIACCiiggAL5Agak80X8roACCiiggAIKKKCAAgoooIACCiiggAIKKFARAQPSFWF1oQoooIACCiiggAIKKKCAAgoooIACCiiggAL5Agak80X8roACCiiggAIKKKCAAgoooIACCiiggAIKKFARAQPS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QAEFFFBAgQoLGJCuMLCLV0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFPivgAFp/xIUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFqiJgQLoqzK5EAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQwIC0fwMKKKCAAgoooIACCiiggAIKKKCAAgoooIACVREwIF0VZleigAIKKKCAAgoooIACCiiggAIKKKCAAgooYEDavwEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBqggYkK4KsytRQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUMCDt34ACCiiggAIKKKCAAgoooIACCiiggAIKKKBAVQQMSFeF2ZUooIACCiiggAIKKKCAAgoooIACCiiggAIKGJD2b0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgKgIGpKvC7EoUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDEj7N6CAAgoooIACCiiggAIKKKCAAgoooIACCihQFQED0lVhdiUKKKCAAgoooIACCiiggAIKKKCAAgoooIACBqT9G1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRSoioAB6aowuxIFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBrtUg+PDDD8PDDz8c3n///dC/f/+w7LLLhiWXXLIaq3YdCiiggAJFBMaPHx8uueSS3NguXbrEOnqVVVYJs8wyS254uT6MHDky3HXXXWHIkCFh8ODB5Vqsy1FAAQU6ncA333wT/vOf/4QXX3wxdO/ePSy00EJhjTXWCNNMY65Jp/tjcIcVqLHAt99+G+65557w9ttvh+mmmy4sssgiYc011wwNDQ013rKpV//OO++Ef/3rX3H7Fl544akncIgCCiigQNUEuhw9pRRa24QJEwoNbvGw559/PhxxxBGxwdy1a9cwYsSIcP/994fpp58+Np5Z4Pnnnx/OOuussMEGGwSmaa588sknYY899gg//PBDWHzxxZub3PEKKKBAuxYg2JAt5aqfCUiffPLJYdSoUWHs2LHhzTffDE899VS4++67w2KLLRaD09n1tvUzy7/sssviicp8883X1sU5vwIKKFC3ApWqt9nhL774Ihx88MHhwQcfDF999VV44403wvDhw8Nrr70WVlhhhdCtW7c2u+y9997hiSeeiEHuNi/MBSigQE0F8usjNqZcbckvv/wyHHLIIeHRRx8NkyZNCu+++25MRCMJYdVVV4373dJz/WJY1HnEFeaZZ54w22yzFZusyeHUk5dffnlMjJh33nmbnNaRCiigQGcRKHScqMa+VzyN4rbbbosHvHPPPTeceeaZ4corrwwDBgwIN998c5g8eXIguPzZZ5/FYAhXLL/++uvcfv/000/hrbfeikESPlMIoHCAI3jy6aefBuahsAyuyqbpWDbfmSYVDpLvvfdeHM54iwIKKKBACEsttVS44IILYv182GGHxXr26quvjjTN1a1pPBOPHj063glTium4cePCq6++Gi8spuk5HlBvT5w4MQ0KnOhQz3///fe5YX5QQAEFOqsA7dcjjzwykCFNYOaKK66IdfdGG20USAL55z//2YiGupMAzHfffddoOF+KtYsJKLF86l/qZBJALAoooEAhgX//+9/xfH6fffaJSWYEe1dbbbV4QeuDDz5o8bk+6+A8n7qH+osLcCQ0UCelBAruvv74448bbQ71FRfnsm3INAHxA+pBlmFRQAEFFKgfgebTkdu4rTR2uV0n3UI47bTTxoMVBwuGc9B67rnn4loIhOy4445h8803j1dZzzvvvFwDmiD2scceGwMlJ554Ypz+oYceCo8//ni48cYbw7XXXhseeOCBQBClZ8+eMQh+4IEHBm49J4uEA+Kf/vSneFBk5l69eoX99tsvLLfccnFZ/qOAAgp0dgHq5BVXXDHMMMMM8SIfHs3VrYwnY2W77bYLV111VSRcYIEFAjffUBcXKq+//nq49NJLY/1OJh91MVk0ZOORQc2xgO2gcDGTIAvDe/ToUWhxDlNAAQU6jQDd3xGU+dnPfha7wGPHqRt/9atfxeDNjz/+mLO48MIL4x0vtMVph6+11lrht7/9bWx/N9UuJuA9ZsyY+KItfeqpp4YFF1wwt1w/KKCAAkmA+oVCt28U2pIHHHBA4C4L2njUHy0515911lnj3Xpnn3122HDDDcOdd94ZEye4+4NzfgrdzT377LPhqKOOim1JYgQkOVCINXDun87xmY7YAUFpMgCpBy0KKKCAAvUhUPEM6U022SRmQu+7777h+OOPj/2H0s8UBwvKXnvtFW8v5DO389BtB41p+nair2mCEH/84x9jpvPf//73MHDgwHDCCScweVh33XXDX/7yl/i5uX9uueWWuAwOigRN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yo0qNG0audFGG8UASaH1du3aNR50hgwZEnbbbbdg/95JzXcF2qfA1VdfHYMN6623XlhllVXCcccdF5544onwt7/9LQZCWrtX22yzTaBRSyPfUlwAH4JOb7/9dgxIc8K3ww47hOWWWy5cdtll0S87vviSHKOAAh1BgODIQQcdFJ566qm4O9QJ119/fWyP7r///o3aXX/5y1/Cueeem9ttLmTRJl1jjTVyw/I/fP3112HPPfcML774Ym4UyRUnnHBCbC/mBk75wPHhggsuCMxDIVBz5JFHhs033zx+T/+UMh37cN5556VZGr0/9thj8YJoo4F+UUCBuhAgeHzEEUfk2nPctZENPramHuIc8vPPP2+0f1yEp+1z4IEHtjgw22hBJX4h8erQQw8N99xzT26O3r17hz//+c+Nzus5p//9738fHnzwwdx0c801Vzj//PNzcQVGELDeY489GiWREeBmOgLuhQpxCOIRlDPPPDOsvfbahSabahgJb5deemmsn7lY+Ktf/SomlqQJ+Y04XowdOzYNCrTzjz/++KIXH5mwlPm4OEEcgXhJKsQD9tlnn7Drrrs2Okal8emd40c6tqVhvON0yy235AYR/+B8hGA7we4bb7wxN84PCijQfgTqJiD9+ufPhgffuinw/t2EcWH6bj3DQv2XCWvMv0V8LycpmX4EkmmUDxs2LGYxDx8+PDz88MNh++23Dw899FAgqNrS8uijj8aKngPAWmutFQ9AVKg06DmocvBac80142I5wO27774xqENmNsFbDgj//ve/wz/+8Y8Y0Kbxnr2yuuCCC8blZrcr/yopB/9sgDxNS0Zztqy00koxK5wrkJzIcKBlWy+//PKprj5y0sKV7mzJ/47lFltsEYNLZFb/5z//ifvNQeIPf/hDdlY/K6BAOxM49dRTYwYF9Yal+gJczORkLj8zJG1Jc+PTdL4roEDHECCBgKyzpZZaKp6M047kgtVf//rXeEffTjvtFHeU7jwIRpN4wDCCxlzEov15zTXXhMUXX7wgyC677BLbhrRZSUBgXSyb+UhwSG3P5557Lga3uVOQcbQpb7rppnDUUUfFDMGf//zncfmlTkcmH4UkkPzgjHfeRRr/UaDuBEjQ4i4u7sQtVFpbD6Vl/fKXv4x1DsHpESNGxMAj564EO7NB7zR9Od9PPPHEeI5MXUm9xJ3VXDijDubc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rbO/zpT3Bx10UEwwO+WUUxq8/eeeey6MHTt2uoC03xUaTOqCCiigQNkINHlAGgkylS+55JLpUAjybr/99qFLly7xs++//z788ssvYZFFFomB51GjRoWFFloot9ziiy8eevToEVq1apWbNnLkyPDVV1/F4Pbss8+em5598+WXX8ZBeKEBN1df+SEo3rZtdQ5uEyKYzv7XtO7sdnyvgAIKKKBAcxbYeeedwx/+8IcYjH711VfDeeedF0444YRw7rnnhvbt24fPPvsstGnTJiywwALxMMaMGRO++eabMPfcc4fOnTvHz+krucj8wQcfhJ49e8Y+kpnpj7/44osw33zzxQEq07799tuQ+nb6Uz7jDqds3898NAakbJ9+n343tbR8Td8N0ny+KqCAAgoo0BIFVlhhhXDMMcdMd2gjRoyIY2b6ZAK4NPrRKVOmhF69euXmr228y0yMlUm6ov/lOwCNMTn9b3bdzMf4nb7/k08+if0+4+WPP/44zD///DFwzrIE0pnG2LvQ+JvvBqNHj662jyyXbXzXyH5X8LtAVsf3CiigQMsQqB6BLfExke182GGHha222irss88+4aabbgoDBgwIDJj/97//xb0hK/qkk06KA1g+p2THDTfcEH+/7rrrwp133hnoCAlSk23NwLp162mlsemMTzvttPDKK6/Ez9dee+1wxBFHxPUyyOZq7nvvvRd/55ZlPiNzm0Y2GR1/KjdCWRGbAgoooIACLUGAAefqq68euOWXclgfffRRWHrppWOfSTCYQDWNPpK+cv/99w+bbbZZ/Lxr166x32WZs846K17QPfnkk8M777wTl6EP3mGHHWJffu2114Y33ngjTqdP3W233cK6665bre/nw0svvTRmgTGIZXlKYx144IGx767ru0Fcuf9RQAEFFFCgwgS4kHvkkUcGxriMqYcMGRIOP/zweOF5r732CnWNdwle038TsKaRhX3ssccGksBefvnlcP7558fx8BprrBE/5+I1Y2P69n/84x/xbivuuGLbZ599dlyOsTyJaJS7pDE+Z51c9KaPP/XUU3PfC1ZaaaUYPI8z5v2nvnGCvMX9VQEFFFCgDARK8lBD6kLRcaUfakXV1Aguk3V1+umnB+pMM+B98cUXp5udzvCOO+4Ia621VmB9DHTpuNKAmAVYliwv1rXMMsuEgQMHxqvGfMZgm2yto446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UECB0gnk92Ol2nKLCEiXCsvtKKCAAgoo0JQC+V8GZlZAuimP0XUroIACCijQkgTsu1vS2fRYFFBAgcoTyO/HSiXQulQbcjsKKKCAAgoooIACCiiggAIKKKCAAgoooIAClS1gQLqyz79Hr4ACCiiggAIKKKCAAgoooIACCiiggAIKlEzAgHTJqN2QAgoooIACCiiggAIKKKCAAgoooIACCihQ2QIGpCv7/Hv0CiiggAIKKKCAAgoooIACCiiggAIKKKBAyQQMSJeM2g0poIACCiiggAIKKKCAAgoooIACCiiggAKVLWBAurLPv0evgAIKKKCAAgoooIACCiiggAIKKKCAAgqUTMCAdMmo3ZACCiiggAIKKKCAAgoooIACCiiggAIKKFDZAgakK/v8e/QKKKCAAgoooIACCiiggAIKKKCAAgoooEDJBAxIl4zaDSmggAIKKKCAAgoooIACCiiggAIKKKCAApUtYEC6ss+/R6+AAgoooIACCiiggAIKKKCAAgoooIACCpRMwIB0yajdkAIKKKCAAgoooIACCiiggAIKKKCAAgooUNkCBqQr+/x79AoooIACCiiggAIKKKCAAgoooIACCiigQMkEDEiXjNoNKaCAAgoooIACCiiggAIKKKCAAgoooIAClS1gQLqyz79Hr4ACCiiggAIKKKCAAgoooIACCiiggAIKlEzAgHTJqN2QAgoooIACCiiggAIKKKCAAgoooIACCihQ2QIGpCv7/Hv0CiiggAIKKKCAAgoooIACCiiggAIKKKBAyQQMSJeM2g0poIACCiiggAIKKKCAAgoooIACCiiggAKVLdC2VIc/atSo8Pnnn4dZZpkl9OrVa7rN/vzzz2Hw4MGhU6dOYckllwwdOnSYbp40YcKECWHIkCHp19C6devQs2fP0LFjx9y0Ur754osvwtChQ8MiiywSFlhggRo3/e2334YPP/wwzDfffOF3v/td3O9CMxe7Ppb9/vvvw7Bhw+JqcMOiPi0tP9dcc4V555232qJjx46N56RVq1Zh6aWXLsr3yy+/DJzL/Mb5xCe1Dz74IEyePDn9mnudc845Q/fu3XO/1/Zm9OjR4bPPPouzLLjggmH22WeP7z/66KMwceLEgovy98Xfik0BBRSoVIFi+xj6ljfffDMsuuiiYeGFFw70BY3dLrroojBp0qTw17/+tbFXPVPXN378+PDxxx8X3Idsf5VmmDJlSnj99ddj37XccsuFWWedNX3Uol+/+uqrMHLkyDD//POHLl26tOhj9eAUUECBGRVgLM2Yul27dmGxxRbLrW7EiBHhm2++iePo/HHOu+++G+dbaqmlqvXjn376aRgzZkzo0aNHmGOOOXLrYizHOJt/lxmvtmnTJveZb4oT4Hy88847Ye65547nScPi3JxLAQUqT6DV1KpW6LAJ9jVWe+KJJ8Kpp54aA6d0hrfddlu1VV9yySXhwgsvzE0jaHjWWWeFPn365KZl3xCE3HLLLbOTQtu2bQPr3mCDDcK+++5brcOtNmMj/kKAeb/99qsWHOfLwf/93//Fzj1tis7+qKOOCgMGDEiTwkILLRTny35pKHZ9aSUMeLfddttAcIH23HPPFT2gIwBw1VVXhYsvvjgOgHffffdwxBFHpFWHq6++Ovz3v/8NDJJpBLr/9re/hT322CM3T6E3e+65Z3j55Zen+wiXu+66K05nnSussEJu3dmZd9ppp3DsscdmJ9X4HtMHHnggfn7uueeGjTfeOL7ffPPNcyb5C6+44orh+uuvz5/s7woooECzEMgPRDZmX1xsH8NA6pBDDglvvPFGzmTZZZcNBI+5aNhYbdy4cWHNNdcMfA0ZOHBgmG222Rpr1XE99IkMrNdZZ504sG7UldexsldffTX8+c9/LjhXtr9ihhtuuCH2xT/99FOcn4HrP/7xj/DHP/6x4PItaeJxxx0X7rnnnnDmmWeGrbbaqiUdmseigAIVJNCUfXdiZPzEOPfHH3+M47Knnnoq1ye/8sorcYzWrVu3wPTUSNLZbrvt4q+Mw7JBbNbFhWfGg6uttlp4//3341gvjStZiGSfM844I243rbOSXuv7PYKkuaOPPjo8+uijOabOnTvHMfXqq6+em+YbBRRQoLkJ5Pdjpdq/Js+QTkHDmg7wf//7XwxG04ES7GRARjCUwfCNN94YGATX1Ahc77DDDjHTliwbBoBvv/127FwZ5DR122uvvWKG7qabbhrWXnvtGHAm6EyQmgFWasccc0z8bJlllolfCsiCIpC62267xQ4rZXYXu760XoLJ2S8NaXpdrxgTOCZbm/OSn0384IMPhv/85z8xU5kAMcFrzgXTyO7meGkE2rkan818JuOaLLoDDjig2m5kgxh8keJLFVliW2+9dbX5sue70PrTzAQvUjA6TUuvu+yyy3RZ2oMGDQrPPvtsxWSdJQtfFVBAgSRQTB9DcJg+i2D073//+8BFPC4qv/baazGLuTEv6NH3EYylP2jsYDTHfPvtt4fHHnssfscg06uU7YcffoibYwC6yiqrVNs0GWep4cwFePpIvvdwhxH7feKJJ8b+loC9TQEFFFBAgRdeeCEGo5Gg33z44YcD4zQafTXjYgLMZD6nhKeXXnopfs5/XnzxxVxAmuQu5mWZlVZaKd6psvPOOweSnTbZZJM4jXHifffdFw466KBw6623ht69e+fWVSlv6vs9guA9wWjGs9tvv31MWrvlllvCX/7ylzh9nnnmqRQ6j1MBBRQoSqDJA9J0hGQJEbDdZ599qmUuEwjlqiyNjCGyZmlcSST4efnll4fzzz8/Tiv0H+Y78sgjcx8RDOUf/JtuuineYrzjjjvmPqPjpiQItx9TVoPON//2UOZ577334m2z3GKz8sorx1ttcivJvKGzpzPnNmb2lbbNNtvETpzbdAkUE3DllicG8127dg1XXHFFHHSzX9xu9fTTT8eBJwHUYteXdoEvCQTuyQpnXfUJTBMQJlPulFNOiV9G8o3TlfXDDjssbLHFFnGT7D/zE3BPAWkuIGDKca2xxhpxPs4BFxf233//tKvTvTIPjduSa5uv0PpZjqw69iV9iSI4nW18ocpvf/rTn+IkrG0KKKBApQkU28dwQZJ/U9dff/2Y0YMTfRZ9K8FS/v0uNKC64447Qvv27WOfQb//ySefxOxngq/0UQyEf/nll9hHZi9Q0+fS93LBlpbWw11QBGu5mEg/yx1TqWTIM888E7777ruYsUVfTeP4yBBje/TdDz30UK5f5Hjo9xgcpsbv3M1DNjgD+SWWWCK3fubh+wnHQX/OdwYCy/UJmqd+jjt2uHBeU+PiOcfPnVVpsE+JlOuuuy5eBKgpIF3M/hXzvYf94hZwLLgTavnll692kZnPWQ+3fPP9ie81+GYtOIfcmsx0vpeRUUZmP39D+RcC+O7B+WBbG220EaufrhVzbNMt5AQFFFCghQukRBz6R97zkwLS3CnMWOzJJ5+MCVopIE3fmxrvd9111/grSVw0+jaWpV8lGM06zjnnnPgZ/6Gcx5133hnXmfqo3IdVb9K//5R2TJ/z7z/fJciu3myzzXKzv/XWW3F+yjiutdZa05WKzM2YeUN/cPfdd8cSJdwVTGM/77333thncycR3w1IniIDnDuMUl9fTB/IdwAsuJuKIDKxCDxodX2PiDPl/YcxNPtDXCOVwuT7Buui70v7lreYvyqggAIVK9DkAWmCptSMZiCT37iNiEEbg80UjGYebi0iyEtGK9laaRCav3z+7wySKTtByQ6uIqeANINhspEJ4qZGMPrKK6+M9aqZxjyUraC2cWoEPP/973+H9dZbL03KvdLJ3H///dUGZXSCqfZ12mc6HxqZZtkBHMdIQJovAARJi10f66KDJXsKm5NPPjmWA2F6sY0BPFe8qRt92WWXTbfYoYceGjOcs/WwsaCl4+I9ZUcIArAeGhnN/JAxTQdPMIHPCDRka2elzDGOmaA+t4gtvvji09UWz19/3EjVfyjv8vXXX8dboqjdXVcjiM5gmgA4t27bFFBAgUoTKLaPIQBM499KBn3cdcS//1w8ru0ZBVwk5MIlA86bb745roN/97mT5+yzzw7097TTTz89ZkXzbz6N5XieQN++fXO/sx4GuQRlU2PQSX9HYzoDa75bpIA03zH4nPUQGD3vvPPiAJP52R/65jQQZHBNSYxsI2hMv0ofx+CRO51S3U3m41g4DjLHimkpIM33Ekz5ne85XLBNjQA/wWBqdzKQ504v+rQNqm6jTgPvNG/2tZj9K+Z7D+s8/vjj42A/u/4DDzwwd7G40HcjapcSQE/Bcr6rcWGbi8jYUhOaRtkvSrT17Nkz/s7Feb5f8N2Fdumll+ay9eKEqv8Uc2xpXl8VUECBShGgP3788cdjX0RJCC6Y0t/Sb6QLf7v6i+kAAEAASURBVPTbKSCd7iDmQi0XEunbeE9/S3+WAtJpXMRzg2hkTXPxOD2Xh8Sh2pKH0r//3BmbAtLciUt/zPg+BaS584qxZ7Yx/uVYamv0NyQ+cZwEzwmQc6dx+j5AEJkLyiRIMY0LzPT1xfSB+B188MG5rHP2g+MmKxrT2r5HFNpn+jbiHgS0+c6VWhpDp999VUABBRT4TaD1b2+b5h0DxpoaQUVaGqyk+RiMEjDmqiiDk/o0OiJaGlTznkxfgtEEnLma/M9//jOum9uXuaKa5iEYzUCQW4jp1MjEpQMt9PA9Hs7IfmcHl3xRYHBJhlEK5qZjpFPOtvQ7JS9oxa6PeckAJ0jAVe7U+TO92EZnm4LIhZahLAfHlq4Q8yWI0iq0bI1HBudkQqV6ZGkATsCZrDBuPyZbecMNN6z2cKc0HwF51vf3v/89/OEPf4iB+Wy91Pz1s/0UpCDInbICmF5T48sBdU9pDLJtCiigQCUKFNvHpAfxceGTi7F/rrrDiTtMuKjKBcja2vDhw+OgkcEjd9fQd3KBmH6ZgDZ3SjHoTVleNa2L9ZBxS9Dz8MMPj4FwlkkD5pqWy06/5pprchcgTzrppJhNxeeUHuF3+jgubhJAJfuaAWgqR8KgmWA0WWgEvsnaJmjMMaTvDNltFXqfLrySaUZfRSCW7xcE5FNL1mSWcZzcfcTAf911140Xw9N8+a/F7F8x33u4C43MMzKyL7jggsDzPBjs02dyoZjGsyP4bsQAn4vw//rXv+J0HkLJ951s43sC5cBYD3ehZc81HpRwo5EscO2118aLxOmOrLSeYo4tzeurAgooUCkC/FtJ0g8ZzPRH6eJotj9NweUUbKYfZVxFn0J/zvKMH2lpnrQM6yOIyp29BJF5ng//5rPMjDb6U/5tJybAhUmC5tSsJos6vx8ptC32n0ZAnUYwPrX0Pn2WjqfYPpA4A2N9PEhCowY03x9oNX2PiB8W+A9Bf75bpBgAs5B5TQkPxt7cNWRTQAEFFKgu0Lb6r6X9jSxaWjZzOO0B08iyYZ7agqdp/vTKoJu6lAQ9CaQS1H7++efjbbwM+OgsCAbTcTEQI1BNJi7zEIClliO3ExNUJhuMK7J0VikLK20n/5UAOFd5WZaMr9TSQ4rSleY0PR1zMkjT02tN6+N2V67YMmikpldTN4ISdNR8qWFASkAh21LQmmlccaezJZhAMJovTAzkCdTvvffeuSv7fOHhKjdXvfnCwJV4Mt7IcCNrLZVAYZ3Z9afMcM4hAYXasvVYlsaXHgbWnM/8fZ82h/9VQAEFKk+gpj6Gu1Zo9DOU6SBYykCS5yJQduuRRx6p9d9eBrFkYzEoY7BJn0wgkgxl/j3nIiY/BDpra/SnXHBlEE0GFoNO+umayjzkr6t79+5x20znwnHKIKNPoC+h/yRATKOP404atsHdVPQxNDKY6cPJvsoPnMYZavkPy1BKa8kll4wDe7K36Od4HgN3ERGUTQF+tkuWF4FgtsmgmIEwg/dCDzasa//IDKvrew+26aFL3FmW+kcu2FO+g+9PrIe7zfA74YQTYp/NeeX7AMfCeeT7U2rcgs2FfhrnnSQAgg9cDCYTjYv83KnEumgErVl/+p7EtLqOjXlsCiigQKUJpMBzKpvIK/0J07nwSyOhiH6DklmMX1OwloAuYyYuGnKRlTEtCVH8e576RpLBKINB0hP9D+/5YUxNf8nF6Ya29O86wV7GsfQDqWRnWifPe2C/s42LxSQ9EWTmTif6Jp49xHER9KW/ZBr9dgqwc6zF9oFpv7hgyr4RiE8Z3exHTd8jatvX7P4zxud7FONcakvXJ56RXY/vFVBAgZYsMFMD0inIm27vzEKnaWme7Ge1vWc5Bj10sgyAKRtB4zZYBnz5jSvFdGg0Oshsbcv0VOL8ZfJ/Z6BFh0Mjoyv7kL+0/+l40rLp9/R5ms5rbetjsMjVagasDPiasqVgNINWspy5nbm2RhAiZSOn+fgSwVV3vvhwhZxzQICBn2wjYExWNYEHtlso2MwXKdbBbcEM8utqZEdzPmilCN7XtT9+roACCjQHgdr6mHSxlAFeCi6SkUWWLBf3eOXZBTU1+gEatYRpXIxNpazSw225UFxXy979w0VkBqCp36xr2do+T9lhXKDmJ9vSZ9yxQwCe/ojBKWU3yPjGpFD97Ow60nvskh/TyAbjzi8uuhL8JiCdLlRzMZes4nRbL99DuKhLELxQQLqu/SNgTKvtew/fU7ggz4Xh7EMX2U9+aAQuaATXmS+1dG7SdtJ0Ll6kxncwWjpnKeM6rZvPCAawbS5ap1bXsaX5fFVAAQUqRYCAJv0RjQt4JPswVuLfZe60oV/m32ka4y4CuyRe8W84/W/6d5f3TCNwneaNb379D30PCUSMs/j3nWA3dZkZc5JkxLOSGtL4zkAfykVq7pzlewaBY7aT+hOysbmAmW3sJwHplMTEMZHxzQVe7jwi+YwLowSTKePBdwy2lQLxtfWBbJeLpvT73NXFD/0id4TR7xKIr6nVtq9pGZLZ+A7ARX6+a9C32RRQQAEFpheYqQHp1CHSmRI8TFcqCV5ydZPBWf6DB6c/hOpTyH6iEVympQEft6RSEzK/UceSADaNuln1bQS8CUYzwCYYS+3KbCOTmZatX83vqZ5mMmAarbb1sQwDWb6AUKOKHxpeNOpgkcVcW+3JOGMR/+FWax4YSTYcX274MsKgOdv4YkGnT0eLM7cy48D+pcxmzil1M9lHrtYTkCbzii9SfDFKgWeCGGRhcQ74ssWXivz1U2+SxlVwvsTQPv31FnJuvWZ6thYZg1y+pHG7eKp1GRfyPwoooECFCtTWx0BCxit9TRrcJiayrggq8m95bQHpNH8pXrOBbfqVYloKuFPvkgcgZlvqj9LdPTwDIv1cU5UxRqY4/Uo2OJtdPvs+lRfJXjgmI5iWSnml7GIyvVIwms/TfqW+nWnZVtf+FfO9hwdQMuBmcE/QuFCgPV1UyJbSYj/S7+nz7L7V9D7Nm/89K//3uo6tGPua9sHpCiigQDkKkJGb+rvsAwfTsRAgTX02gV7KT9F30d8TzE0XhQlMpwxplmXe1AjoMv5izMYYjEQhfuinzjzzzBgsri0gnS1nlcbVad28Uu6Ju6wefvjhGCznIX/8EFxn33nAb/6dUylpi36U/pMxJ/0wY0ju6iGzmaQpnlVAshZ3UDHuLKYPZJ+4IMo4l/1gDMlFYDKZybrmLrGaWm37yjL0awSjiW9wh9CMZJfXtA9OV0ABBVqKQOuZeSBc9eRqJIOu7FXRVK843ZZU7D5y6ycP0aEzSrfc0Mkx8OIKJZ1Xuh2Hq8AEXRn8EJRmHupYpduF6OzoTNiHmgaFdF4pGM0DfbhdNb9Rd5PgLIHyNAil004PfUr7yXJ1rY/95ZYq9p2AQfpJA3E6PsplzGhj/6jrTCdNIJdOGZ/8Rs1JvkhwazCNq9SrrrpqzCJL8zIo58GNtDQYx4r5eE2NL0J04HzxSVl0+etnwM7xcxt0OvZ0qy+21OlKLVs7msCDTQEFFKh0gbr6GHz4t5nGv/+pcdtpqs+YntOQPpsZr2ngnR4aTH/Nxdr8li5yZ2tgpovV9Jvp+wD9HEHZ1PcwGOW2Zb4bcJGTATDfVehfyS4vppF5hSX9YmrJNPWFZH5zIZYsLvq01FIpjTRfmp5e69q/Yr73YMOzGGhZu3PPPTfe1cS+sh4CGTy7gQvKqeVf+E/Ta3tNFzH4npbOB31+ykpPy9Z1bGk+XxVQQIFKEUjlOhjPUH8//aQSkQRUGffQSIzi320CvwSxs0Fn3jON+Zkne3cMmdDcmUPpymxL4+KaLgam/pi+Lu1D6iPSehif8pwG/u0neYqST9wlREvzclG0Z9WdNdkfxrupkRxFIzmJfaF/TaWmeB4CLc1TTB/I9wYceI4EZUBOO+20eGcU62HcmgLshb5H1LavZG0TgOaYSYSr7YGQbMumgAIKVLrATM2Q5h95/qEmw5ZBHw8QIsBIcJrMneztroVOFINDBn0EaglGpkwbOpVUEoJgMOu5+OKLQ9++fWOnw8CTwSYZXxtvvHEMGNNpECBlHjKM6YC5EktGb8pyzu4Dmbksw1VgaiLfcsst8SfNwy0/7AOfcesPn/MQQq7eMgDjh06XW5hoxa4vDcDTdnhlUM3xk1GcMsoZNNPJ08kykK5PO/XUU3O30NJhE5xOjS8H6csKV4h5QFSyZlCPFbVJ+/fvH2/DYmBNNhXHmTKwuG0JfzK8GYSTscbVf1r2KnL++tM8aV94pRYlX6J4UBTnMjUG0zyYgwG92dFJxVcFFKhUgWL7mH79+sV/nxnMcsspQdmnqrKG6F/pG7mIO7MbfV4akNOX0sekjOTsvtE30Qdx9xLHz2CeYyCbiuW5CE2AmsE+2d9kRtG+++67+PBjynZQuouL0gSNuSiagrh19bH0+5SYov+kb2IdfKdgHXzPoBEQICOMvo67frgATvCffSbDq1C5Dpara/+K+d7DerigzsVg+nyy5vjexfcI9ovBPndFMQ/fjbiNm36c4DSBB253rs8DmnAmKM3yHCdlwAgG0P+nsh7FHBvz2BRQQIFKESDAyYU6/l3fZZddcuWwOH7GONwhSl1mxmMEmNO/32m8mB+QTm78G8+8qTFuJdOa/jCVWKQ0BoFVxus77LBDmrXaK8lY/DvOvIzjqUmdvYDJzOw7JScZozJup6VENPajmEawmWcMkRVNGTH6K34Y46Z9TIlhxfSB3BHFBVIC0lysZ9l0AZkL76yDVuh7RG37yziW7xbY8r0iWzKS9dYV26ht3X6mgAIKtESBmRqQBpSBJUFPBoJk29II1HJrD6+1Na7y0gHTqXA1lFrFDJDSFdO0LLfLMA8PZ6CmMB3nBlUPM+IqbeqMeSAEV3Z50CHZy1x9pRMi0Fmo8QUh3ZLE4JCfbEudItMYbHK7EevlARTsC58T2E1lMOqzvux2anpP1vKVV16ZC3jXNF+h6Z9WDdxTYwCdbSngzTS+HKSr0fxOFjWBd2pkshyBAgLy1N3M1uqk/jNXx7myzxcmLijwhYIvKZQcSS1//Wl6Xa/8PXEBgmZ2dF1afq6AApUgUGwfwyCM8hQMHglEMxDmQiMB0/zbaWeWGxeKGTwzkGTgTHCTn2w/w77xXAIuzDLovOyyy+JAkIcU0TcShCULigudBN3JDEs1HnllgMuyzMdgnH6LPosBMK2uPpbsL75HkLnF9wrecys0D3jM1lrmFmi+E3B3F/0n8xFk4CJ9yjyLG8z8p5j9K+Z7D7dvU46LjLNUxxkLzn3KFk/fjbjwy3xclOZBU1hky4xkdq/gW75rcWGA4+J7G+vDiP7/1ltvzS1TzLHlZvaNAgoo0MIFUvYzyTWp9FE6ZPomLvBRooNAcsp4ZvzE+Iq7TlNpKJahPCK/EzDNjt/4jH6VsRN3yVA/OmVGMz6jf6wpuYc+ixKPjGlJjqLvIHCcLryybu4Gos+gj2P9/LtPX8xYP+0z89XWuKuaMSXj7ew4n/f011wszl4wL6YP5IIx9ae5IEsiE+NYvkucfPLJuV0p9D0ixQ5yM/36hjgCtjTuwuI7VLZhZVNAAQUUqC7Qquofz2n3+FSfnqsRmDe5SX/liiqB2zQQaoqNkfFFUDUFggttg8xr5klXRwvN05BpBEopHZJ9am9D1lPMMscff3zsXBmIN/ZxFLN9jpVMr7qeKEyHzU/+l6xituE8CiigQEsTyN6iyrGler0z4zi5ZZXs1br+HZ8Z+8Y2uSjNV5hCJaWy+8SAk3nzbTk+HhaVHcRml+M93xlYLn8AWp8+FkMC2fnryN8WfSbbqut4ssvVtH/589T1vQcHAuP5Rtn18N0IK+abkcbfNN9L6vIo5thmZD9cVgEFFGgsgfx/O2dm3z2jx8S4jIvY9P3FXnikLyZRK/vchEL7gQt9bzbBqdB8jTmtmLE/x0sJrZr6t5q+RzTmfrouBRRQYGYK5PdjpdqXZhWQLtVBV8J2uLWK26ZqeyhDJTh4jAoooEA5CeR/GSjnQW05udd3X+1j6yvm/AoooEDLFbDvbrnn1iNTQAEFKkEgvx8r1THPWJpLqfbS7dRLgFuhuKrNLc02BRRQQAEFFGg8AfvYxrN0TQoooIACCiiggAIKKFCZAmZIV+Z596gVUEABBZqhQP7VaTOkm+FJcpcUUEABBRTICNh3ZzB8q4ACCihQdgL5/VipDsAM6VJJux0FFFBAAQUUUEABBRRQQAEFFFBAAQUUUKDCBQxIV/gfgIevgAIKKKCAAgoooIACCiiggAIKKKCAAgqUSsCAdKmk3Y4CCiiggAIKKKCAAgoooIACCiiggAIKKFDhAgakK/wPwMNXQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVKJWBAulTSbkcBBRRQQAEFFFBAAQUUUEABBRRQQAEFFKhwAQPSFf4H4OEroIACCiiggAIKKKCAAgoooIACCiiggAKlEjAgXSppt6OAAgoooIACCiiggAIKKKCAAgoooIACClS4gAHpCv8D8PAVUEABBRRQQAEFFFBAAQUUUEABBRRQQIFSCRiQLpW021FAAQUUUEABBRRQQAEFFFBAAQUUUEABBSpcwIB0hf8BePgKKKCAAgoooIACCiiggAIKKKCAAgoooECpBAxIl0ra7SiggAIKKKCAAgoooIACCiiggAIKKKCAAhUuYEC6wv8APHwFFFBAAQUUUEABBRRQQAEFFFBAAQUUUKBUAgakSyXtdhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAgQoXqDEg3apVqwqn8fAVUEABBRQonUChfrfQtNLtkVtSQAEFFFBAgdoECvXThabVtg4/U0ABBRRQYGYJzMw+q8aAdJs2bWaWh9tVQAEFFFCg4gQK9buFplUcjAesgAIKKKBAMxUo1E8XmtZMd9/dUkABBRSocIGZ2WfVGJBu27ZthZ8WD18BBRRQQIHSCRTqdwtNK90euSUFFFBAAQUUqE2gUD9daFpt6/AzBRRQQAEFZpbAzOyzagxIEyVv167dzDJxuwoooIACClSMAP1toavT9sUV8yfggSqggAIKlJmAfXeZnTB3VwEFFFCgmkBN/Vi1mZrwlxoD0myzffv2BqWbEN9VK6CAAgoowBcB+tuamn1xTTJOV0ABBRRQYOYI2HfPHHe3qoACCijQOAJ19WONs5Xa19JqalWrfZYQJk+eHCZNmhRfi5i9rtX5uQIKKKCAAhUtwMMjyH7mFqlCmdGFcOyLC6k4TQEFFFBAgdII2HeXxtmtKKCAAgo0jUBD+rGm2ZNpay0qIN2UO+C6FVBAAQUUUEABBRRQQAEFFFBAAQUUUEABBSpDoNaSHZVB4FEqoIACCiiggAIKKKCAAgoooIACCiiggAIKlELAgHQplN2GAgoooIACCiiggAIKKKCAAgoooIACCiigQDAg7R+BAgoooIACCiiggAIKKKCAAgoooIACCiigQEkEDEiXhNmNKKCAAgoooIACCiiggAIKKKCAAgoooIACChiQ9m9AAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoCQCBqRLwuxGFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABBQxI+zeggAIKKKCAAgoooIACCiiggAIKKKCAAgooUBIBA9IlYXYjCiiggAIKKKCAAgoooIACCiiggAIKKKCAAgak/RtQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUKImAAemSMLsRBRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQPS/g0ooIACCiiggAIKKKCAAgoooIACCiiggAIKlETAgHRJmN2IAgoooIACCiiggAIKKKCAAgoooIACCiiggAFp/wYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFSiJgQLokzG5EAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQwIC0fwMKKKCAAgoooIACCiiggAIKKKCAAgoooIACJREwIF0SZjeigAIKKKCAAgoooIACCiiggAIKKKCAAgooYEDavwEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBkggYkC4JsxtRQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUMCDt34ACCiiggAIKKKCAAgoooIACCiiggAIKKKBASQQMSJeE2Y0ooIACCiiggAIKKKCAAgoooIACCiiggAIKGJD2b0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgJAIGpEvC7EYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDEj7N6CAAgoooIACCiiggAIKKKCAAgoooIACCihQEgED0iVhdiMKKKCAAgoooIACCiiggAIKKKCAAgoooIACBqT9G1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRQoiYAB6ZIwuxEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABA9L+DSiggAIKKKCAAgoooIACCiiggAIKKKCAAgqURMCAdEmY3YgCCiiggAIKKKCAAgoooIACCiiggAIKKKCAAWn/BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVKImBAuiTMbkQBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFDAgLR/AwoooIACCiiggAIKKKCAAgoooIACCiiggAIlETAgXRJmN6KAAgoooIACCiiggAIKKKCAAgoooIACCihQa0B62223DVtvvXV46qmnCkodeeSR8fPrrruu4OcNnbjzzjvH9Q4cOLChq2hRyx144IHR48knn2xRx+XBKKCAAgoooIACCiiggAIKKKCAAgoooEBlCdQakB48eHB45513wlFHHRVGjBgxnczQoUPj599+++10n83IhHfffTeud+TIkTOymhaz7EcffRQ9Cp2DFnOQHogCCiiggAIKKKCAAgoooIACCiiggAIKtHiBWgPS6eh/+OGHcNxxx6VffVVAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoN4CbYtd4uGHHw533XVX2G677epcZPTo0YFyGy+++GLg/RprrBHWWWedMM8880y37JtvvhmeeOKJ8Nlnn4VVVlklUK6jpkYm9rPPPhteeOGFMOecc8b5f//734c2bdpUW4R1PfDAA+GDDz4Ic889d9z26quvHmaZZZZq8+X/8vPPP4dHH300PPfcc2GOOeYIf/rTn+L+33nnnXE9hx56aFzkvPPOC99//338nGXuueeesOSSS4a99947fv7111+H559/Ph7/pEmTwvLLLx922GGHMPvss+c2mdax/fbbh1lnnTXceuutMQsdJ46pc+fOuXmzbzimhx56KHz44YdhiSWWCHvuuWe19Wbn9b0CCiiggAIKKKCAAgoooIACCiiggAIKKNCcBIoKSK+55poxCHzSSSfF4HKPHj1qPAbKbOy4444xYJpmuv3220PXrl3DLbfcEhZbbLE0Odx///3hr3/9a5g6dWqcxu8EqAs1Sof0798/BojT51dddVXYdNNNwwUXXBDatp12KAMGDAgHH3xwGDNmTGjVqlVcN/OxXYLUab60jvTK/LvsskssjZGm3XzzzTHofNNNN4VFFlkkpIA06xkyZEjo0KFDuP7668PkyZMD9bZp7Ocf//jHMHHixLSacO+994Zrr7024NCtW7c4Pa2jffv20WXcuHFxOsHt5ZZbLrDN/AD6J598Ek499dRAEJzGRYK77747Bqg7duwYp/kfBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCguQoUVbKDrOX1118//PLLL+Hwww/PBZALHdQ+++wTg9FkDPOwQ4KxZPz+9NNPYffdd8/Vov7000/DEUccEde12Wabxezra665Jrzxxhshv3Y0JUP22GOPGIzu169fePDBB8Oll14allpqqfDII4+Es846K7crF110UQxGEyB+9dVX4wMZV1111UAdZgLTNTWC7QSTyWI+55xzYrD8z3/+czwGlklB8+zy7O9G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f7epgAIK5AvUGpAeP2Fi/vz+roACCiiggAIKKKCAAgoooECLE2D8a0D6t9M6bty48N///jeWtGjduvabqynlMWjQoNC+ffuw7LLLhm7duv22ol/fDRs2LJANzbrWWGON6T5PE0aOHBnX9fPPP4ellloq9OrVK7Rq1Sp9XO31k08+CcOHDw8jRowIc845Z3jllVfi7+uuu2748ccfw5tvvhk6deoU1l577aoHWHaMy5JRTdkRGvtEJvimm26a20ZtxzJ06NCYjc1+cRwvv/xyPJZZZ501EOQmeL/ooovG4xw/fnxYddVVQ9euXeN23njjjfh+5ZVXjsvGHfj1P99++2085rFjx4Yll1wyLLHEEvETzsFTTz1Vddf6tNgMmdLzzTdfYB35x57WV8z+L7300mG22WYLr7/+emCbq622WphnnnnSKnxVQAEFmlygxoD0lClTLdXR5PxuQAEFFFBAAQUUUEABBRRQoDkIULqDcXDr1oWDn81hH0u5D4ssskh47733wh133BH69u1bcNNTp04N5513XiybkZ1h5513Dv369ctNIlh7+umnB+an3XLLLWHhhRfOfZ7ePPbYY+GCCy7Izcd0gsUHHnhgLmCc5uX13nvvjUHnBRZYIAak0++jRo0K1113XW49t912W7j44ovjOig7MmbMmLga5qdtvPHGoU2bNnUeC+U9rr/++rDZZpuFJ598MkyYMCGw7c6dO4eLLroorL766jH4nGpwE5j/+9//Hk455ZQY+GVb3bt3D5dcckncHr9TA5sgebb9/ve/D4ccckjgOFhvauw7wWh+0rGmYy/mXKT933777QPWqfb2tddeG/dj/vnnT5vyVQEFFGhSgRovc9IZ2xRQQAEFFFBAAQUUUEABBRSoFAHHwb+d6f333z9m9FLrmczgQo1AL8FUMnp5QOAZZ5wRs4RvuOGG8Mwzz8RFyFT+97//Hd9vscUWMeOa+ckuzrbBgweHCy+8MGYAn3DCCTEwTYD3kUceicHX7Lx1vX/ooYdiHezDDz88Zmt/9dVXubrXBLyXW265uApqZV9xxRWxDEYxx5K2yz5tsskm4aSTTgqLLbZYmhyoTc26Tz311EBAnwzs448/Puy2226B2tzzzjtvIBuazG0ar88++2zMUL788svjMc8xxxwxWMzDJcn6Zv/IwKax7+xzoVaf/SeYTVCa/e/d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YPHFF48B6bZt24ZevRo3Y7/+e9O0S/zrX/8KH3zwQdzIeeedF2abbbYGbfDHH39s0HIupIACClSqgAHpSj3zHrcCCiiggAIKKKCAAgooUEKBxX7XoWprvxS1xWwJj6IWcKZGE9hiiy3CCiusEIOznTt3brT1NscV/fTTT+H777+PuzZ16tQG72I2IL3tttuGeeedt+C6WrpnwYN2ogIKKFBAwIB0ARQnKaCAAgoooIACCiiggAIKNI1AeoBhbWsf9O64+LHlOmpTarrP5ptvvqJXTlCXzGIyqutqY8aMCa1btw4dO9avJAzB4pEjR4auXbvWtYnc5+wX2ypFEDgbkCagb1mO3GnwjQIKKFBQoO4eo+BiTlRAAQUUUEABBRRQQAEFFFCgeIEtN549PPXcqPiwQkpy1FQ3moA15U14sKGt9AJXXXVVuOuuu+KGTz755LDSSivF94cddlj46KOP4sMOr7322nDdddeF5557LnzzzTcxGL3iiiuGAw44IHTr1m26nX744YfD008/Hd57770wZcqUsMgii8Sayy+//HK4/vrr4/wnnHBCWG211aot+8wzz4QXXnghDBo0KPz8889hrrnmCr179w59+/YtWE7k66+/DpdffnncTwLYtFlmmSVstNFGoV+/fqFLly5xGsfHcWbbTjvtFH/de++9wzbbbJP9qM73w4cPz83DPtoUUEABBWoXaF37x36qgAIKKKCAAgoooIACCiigQOMI7LLDHHFF1NIm8JxtBKGZdv1tP8Vg9a59p82bncf3zUPgxhtvDLfffnsMRrNHkyZNCq+88ko45phjwoQJE6rt5IMPPhguuuii8M4774TJkycHsp2HDBkSjj766DBs2LBq82Z/eeCBB8LZZ58dBg4cGIPRfEbg99lnnw3HHXdc+Pjjj7Ozx6A1DxZ89dVXYzZ1q1bTHuY5duzYcP/994fjjz8+kKHdFC1lSM8+++yhXbt24c0334w+BOIJ2NsUUEABBaoLmCFd3cPfFFBAAQUUUEABBRRQQIEmFajkzF+yos8+sUf43+3TAs8p+EwwOjV8DEYnjeb3OmLEiHDHHXeE9dZbL6y55pox+PrUU0+F8ePHh2+//TY89thjYcstt4w7Pnjw4HDppZfG95TP6N+/f6xP/cMPP8QM64ceeih3gNkazs8//3xuuSWXXDLsueeeMTOb7RCophwHQelLLrkkV8aDoPO4cdP+jshyJit61KhR4dZbb4379Omnn8aHNf7hD38IG264YdyPCy64IGZTsxOnn356LD0y55xz5vap2DcpIN2+fftw7LHHxuB7dlkeFEm2eUMfmphdl+8VUECBliBgQLolnEWPQQEFFFBAAQUUUEABBZq9AMHYR2/t1ez3s6l3EIfll+4R3v9ofLj7oZ/j5jZcZ7aw5KI89DCEbbdo2Q/SiwdZ5v/ZaqutYpCYw1hnnXViKQwCv7Rs5vKLL74YS3QwfYcddohlM3hPkPl3v/td2G+//fh1unbffffFTOo2bdrETOpUBoOyG3PPPXc499xzw+jRo8O7774b1lprrbj822+/HV87deoUA+LUtCYAvP/++wcCwgSaF1xwwTgPpTv4yday7tmzZyDDuSEtBaTJ4CZYzrrYj6FDh8Yg+YcffhhOOumkcOqpp8YSIg3ZhssooIACLUnAgHRLOpseiwIKKKCAAgoooIACCihQJgJLLtYhHL3Y3GWyt+5mVmD99dfP/hqDwikgnS3DQWmO1FZZZZX0Nr7OP//8Yd555w3fffddtenUmKZWNW3ZZZcNEydOjJnXaSbqTxNspkzI+++/nwtId+/ePZYCoSwHgd/NN988LL300jHIvNlmm6XFi3595JFHwr333ltw/qWWWiocdNBBuc8IrH/22WexBMl2220XODYawWkyr6md/cEHH4RHH3203vWpcxvxjQIKKNCCBAxIt6CT6aEooIACCiiggAIKKKCAAgoo0NQCCy20ULVNpAxmJqbSG7ySIUzjwYJkKee3FVZYIRD4zTZKa1D+g0Yt5n322Sf7cbX3ZB6ntscee8SyGNSwfv311+MPnxEcXn311QOlOgo9cDEtn//KQxQ///zz/Mnx9+zxMoHSJfzkt65du4a///3vgRIiNDK66/vAxPx1+rsCCijQEgQMSLeEs+gxKKCAAgoooIACCiiggAIKKNCMBHioICU3aDzMkJ/0e9rN/AcgMp2M6NQIINcWRM7We15uueXC+eefH7OaX3755dwDE7/66qtw5513Bh4weMom4h13AABAAElEQVQpp4Qlllgirb7WV7Krd9ppp4LzkI1dbCMLnGMgc5yMbpsCCiigQAgGpP0rUEABBRRQQAEFFFBAAQUUUECBRhegvAZZzgSeyQ4mIzrb+Cy/UVs6leRYccUVwyGHHJI/S42/kw1NzWh+qOv8zjvvhHvuuSeQSU0pj6uvvjqceeaZNS6f/aB3796Bn7oamdRvvPFGnI1AdaGA99ixY+Pn1L+2KaCAAgoYkPZvQAEFFFBAAQUUUEABBRSoJtCq2m/+Us4CnsuZe/YWW2yxGJBmL5555plqAWmCxSNGjJhuB9u1axd69eoV60hTemPcuHHVHj44atSoWOaDshk8PJCfFBQmCN2jR4+wxhprxIcYrrfeerEO9W677Ra388MPP0y3vTSB9TbkoYbt27ePmdkE3Tt37hyuuOKKag8ufP755+MDGNnO8ssvnzbnqwIKKFDRAmZIV/Tp9+AVUEABBRRQQAEFFFBgOoFWhjGnMynXCZ7LmXrm+vTpEx588MEYkH3sscfiQ/54UOHw4cNjUJngc7ZER9rZjTfeOAakme+0006LNZgXWGCB8Mknn4RrrrkmDBo0KM5KJjQBacqDnHvuufFBhx06dAgnnHBCfKAhmcnZBxPmP1gxWw7k5ptvDhtttFEgQ3u22WZLu1Lna8eOHQOZ3C+99FIMjJ988slhk002ifvFft5www1xHWR9Eyi3KaCAAgqYIe3fgAIKKKCAAgoooIACCiiQEyCwRZs0aVIsG5D7wDdlJ8A5pKVzWnYH0AJ2eMEFFwzHH398OPHEE2PZjldeeSXwQ1t44YXDSiutFO666674e/Y8bbHFFjFofeutt4a33norHHzwwfE8pgcmsgCBbQLXNDKbd9xxxxj85YGIbJPMZYLdaRnqTbPebCNAPGDAgDjpySefDPwcdthhgUB6fdp+++0XyL7mIY6DBw+OP9nlCbwfffTRgYxxmwIKKKCAAWn/BhRQQAEFFFBAAQUUUECBasEuAmPjqoJas1VlNNrKV4BzmA1yZt+X71GV354vs8wyMXuZBw2mzGbqLG+//fa5YHSho9p1111Dly5dYuYxDwNMD0Ak+ExguW/fvjHonJbt169foIzHHXfcEXiQYXZ+HnhINjXry7a11lor7LvvvuGmm24Kv/zyS/yIoHJ9A9JkWp911lmxRjV1sb/55psYCGd71KHeaqutAvtgU0ABBRSYJtCq6mrh1EIYP40cVWiy0xRQQAEFFFBAAQUUUECBFikwZcqUMHny5BjIate2TZhnnm4t8jgr5aC+/35YmDhpcgxatmnTJrRu3bqoQ+/apfhyDUWtsJaZhg0bFrJlI2qZtUV+RBB34MCB8djOOeecGjOIyXb/4osvYiY0Qee6Li5QUxpbajoX40tYhHrW/BtQzPrrOhnUoybATT1rmwIKKKDA9AJe8p/exCkKKKCAAgoooIACCihQgQIEufghcDlm7LgwfvyE0KFD+wqUKP9D5txxDqknnM5r+R9V+R3BkCFDwtNPPx1LWJDBvNpqq+UOggcQvvDCC/F3MokXXXTR3Gf5b6i/zIMOi20EovkptvE3QkmPxmrUoK5PHerG2q7rUUABBcpFwIB0uZwp91MBBRRQQAEFFFBAAQWaXIBgNNm0/AyvCpjN16N7k2/TDTS+AOcuncdiM6Mbfy9cI5nH99xzTyxfccYZZ4SllloqlrCgpMYbb7wR70hAae21164z61lNBRRQQIGWI2DJjpZzLj0SBRRQQAEFFFBAAQUUmEEBbtnnh4ehTZgwPnSsyrCdd965Z3CtLl5Kge+++yHWAG/fvkPgYXIEpOsTlLZkR+Oereeffz7WkB47dux0KyYzmYcR9u/fv17naLoVOUEBBRRQoKwEDEiX1elyZxVQQAEFFFBAAQUUUKApBcjo5Ida0iko3a6qXEC3bnPG8g9NuW3XPWMC46seYjhs2I9VdaMnVdWNnhaMJku6viU7DEjP2HkotPSYMWNi6Y7PP/881mqmrvPCCy8cFl988fhaaBmnKaCAAgq0XAED0i333HpkCiiggAIKKKCAAgoo0AABAtLpAYc8TG3ixAkxOD1rp05VdWE7hY4dZ6nKvLX6YQNoG32RiRMnhXHjxoZRo8aE0VVBTzKi27VrH6g5TDCazGgC0vVpBqTro+W8CiiggAIK1F/Ab1H1N3MJBRRQQAEFFFBAAQUUaMECBDBTiYeUXdu6dZswfsLEMOaHH6uC1ZOrfqZWCZBN3YIhmvGhTYsxc574mVbzu0OHjjEQTTA6lemobzC6GR+yu6aAAgoooECLETAg3WJOpQeigAIKKKCAAgoooIACjSWQgtIpIE22LWU8Uo1psqhj+/XVuHRjyde+nlyu869Zz+k8EYBOGdEpK9pgdO2WfqqAAgoooMDMEjAgPbPk3a4CCiiggAIKKKCAAgo0a4EU0EzZtrymGtPseC4o3ayPouXuXDo/vPLD+aGl31vukXtkCiiggAIKlLeAAenyPn/uvQIKKKCAAgoooIACCjShQApuEnwmA9cgdBNiz8CqOU+09DoDq3JRBRRQQAEFFGhiAQPSTQzs6hVQQAEFFFBAAQUUUKD8BVKgM70amG4e5zSdj+axN+6FAgoooIACChQjYEC6GCXnUUABBRRQQAEFFFBAAQUyAgZCMxi+VUABBRRQQAEF6iEwrchWPRZwVgUUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFGiJgQLohai6jgAIKKKCAAgoooIACCiiggAIKKKCAAgooUG8BA9L1JnMBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAgYYIGJBuiJrLKKCAAgoooIACCiiggAIKKKCAAgoooIACCtRbwIB0vclcQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUKAhAgakG6LmMgoooIACCiiggAIKKKCAAgoooIACCiiggAL1FjAgXW8yF1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRoiIAB6YaouYwCCiiggAIKKKCAAgoooIACCiiggAIKKKBAvQUMSNebzAUUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFGiJgQLohai6jgAIKKKCAAgoooIACCiiggAIKKKCAAgooUG8BA9L1JnMBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAgYYIGJBuiJrLKKCAAgoooIACCiiggAIKKKCAAgoooIACCtRbwIB0vclcQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUKAhAgakG6LmMgoooIACCiiggAIKKKCAAgoooIACCiiggAL1FjAgXW8yF1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRoiIAB6YaouYwCCiiggAIKKKCAAgoooIACCiiggAIKKKBAvQUMSNebzAUUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFGiLQtiELuYwCCiiggAIKKKCAAgoooIACCrRMgaFDh4YhQ4aEkSNHhrnnnjsss8wyoVu3bi3zYD0qBRRQQIGSC5ghXXJyN6iAAgoooIACCiiggAIKKKBA8xR47rnnwg033BBef/31MGLEiDBw4MBw5ZVXhi+++CLuMNP+/e9/h6effrroA3jggQfiMhMnTix6GWdUQAEFFGi5Ai0iQ3rq1Kl5Z4jfW4XA9FZVr5nWKu/3zEe+VUABBRRQQAEFFFBAAQUUUKBiBaZMmRIISM8555xhv/32C23atAnff/99uPzyy8PLL78cevToEb777rswduzYGKz+9ttvQ/fu3XNeo0ePDsOGDYvLzz777HE6AWwyrVmG+Vl3x44d43pnnXXW0Llz5zjfL7/8EkaNGhUzstu2nRaqmDBhQvjhhx9Cp06dwhxzzJHbjm8UUEABBcpboGwD0r8FoaeG1q1bhdZVgebWbaoSvqcLTjNpapgyhZ9Q9TOlKkbdKv6U96lz7xVQQAEFFFBAAQUUUEABBRRoPAHGyzQCwpMnT44B6XnmmSccddRRcTrB5dtuuy2+f/vtt8N7770XjjnmmDBp0qRw4403hs8++yx+xph7nXXWCRtssEF44oknwscffxynX3PNNWGjjTYKvXv3DldccUVYbbXVwqabbho/I+D9/PPPh/333z+WB2Hd9957byAoTSOQveuuu+YC2HGi/1FAAQUUKEuBsivZQXB5WjB6alXnGEL7dm1C26pANEHpQsFozgqdYZuqedq1a101f9W8VbPS0f4W1C7Lc+dOK6CAAgoooIACCiiggAIKKNBoAgSiV1111Zi9fMEFF8SAMIFhxtR8Ntdcc4Xdd989bm+llVYKBx10UHz/7rvvBjKc+/XrFw477LDQs2fP8Oyzz8aM5y233DIsscQScb4DDjggrLLKKkXt7+OPPx4zo1kfy5FVPXjw4KKWdSYFFFBAgeYtUFYZ0ikY3boqjN6ubVU0ugFtWkdalSFdFZCeMnla9jTTbAoooIACCiiggAIKKKCAAgpUukCfPn3CYostFl544YXw/vvvh7feeit06dIlBpvJlqbMBq1Dhw4hleVYbrnlAj/Dhw8PX375ZcyYZp4ff/wxLLTQQlXJYe34NWY3837MmDHx99r+w7op8cH2e/XqFfbaa6/aZvczBRRQQIEyEiibgHQMRlcFkdu2bR2znWfUuE1VVJsKHxMmTo7lPFoT5bYpoIACCiiggAIKKKCAAgooUOECCyywQOjbt28s2zFo0KBw//33h0cffTTssssuBWUoyXHffffFjGiyqKk9PaNtq622Ck899VQYMGBALPvRrVu3sNlmm8Xg9Iyu2+UVUEABBWauQFlEYadlRk+puqraplGC0VlySn60akV96Wm1srKf+V4BBRRQQAEFFFBAAQUUUECBShH49NNPw8UXXxxefPHFeMgElpdffvmYFc3DBbMtWwKTOtEkeR16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YJgpZNufHheLGKaHTPvS4+B3tmtk25+eRqbrZNqXfh5/kwAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkICfCdBC2s+1VwF5twsXwmc0LKVhGQ0x2u6fr4h24UL4bYalNKyWIQjb/fOdi2N28ULruxmCsN2X61x7jcW4dq688TgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJlCuBKp2uldEB3dDwWM4841R84vG4RCIR6R8al7NPPyHneYxAAiRQPgQeffJZttsSVgd5lxB22qXAfkl7k9TX16vfzHDgXXak4eFPEiABEiABEiCBWQLtbc0lY9HX1yddXV0lux4vRAIkQAIkQALlQIAuO8qhFpgHEiABEiABEiABEiABEiABEiABEiABEiABEiABEggAAQrSAahkFpEESIAESIAESIAESIAESIAESIAESIAESIAESIAEyoEABelyqAXmgQRIgARIgARIgARIgARIgARIgARIgARIgARIgAQCQICLGgagkllEEiABEiABEiABEiABEiCBxScQiUzK6OiIRCYnZWoqsagZqqkJSX1Dg7S0tOr6Cg155aXSypMXBJ5EAiRAAiRAAiTgmQAFac/IeAIJkAAJkAAJkAAJkAAJkAAJeCMwMNAnE+Pj0tbWLh0dSyQUWtxXsUQiIZMT49LX2yONTU3S2eltYb1KK4+32mRsEiABEiABEiCBQggs7l9BheSc51YMgRvv/Kncdt/d0jc0KF3tHXL1JZfJtVde5ap8hZyLC3z1pu/JXdseNNe64twL5S2veb2r6yLSYl7bdSYZkQRIgARIgARIgARIYNEJQLxNxOOyes06qaqqWvT8IAMQxFta26RZLaR7e44I8uhWlK608pRFhTATJEACJEACJBAgAjUf05CpvJFoLNPujPump6fFjLBH4rJy+ZKMcbiTBDIRgKh73e03y0QkYg7j+/FdOySsfyCfsnFzplNS+wo5F4lAjIYQntDpkvg8u3+PDI+Nynknn5a6RraNxbx2tjzlu/9wdz/bbb7w8jiPvPOAVqRTwL6xvta8gNfU1BhBoFxEgSIVkcmQAAmQAAmUIQG4tRgeGpIVK1eXjRjtxIRnYWNTswz090ltXZ0+J8POw8dsV1p5jimg7qjXvxdKFSYmJqSxsbFUl+N1SIAESIAESKAsCHBRw7KohuBmAoJwppBtvzNutjjZ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\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "3", + "metadata": {}, + "source": [ + "## Similarity Search \n", + "\n", + "First, lets open the vector index." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "4", + "metadata": {}, + "outputs": [], + "source": [ + "index = object_index.ObjectIndex(\n", + " uri=index_uri,\n", + " config=config,\n", + " memory_budget=1_000_000,\n", + " load_metadata_in_memory=False,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "5", + "metadata": {}, + "source": [ + "Load the **pbmc3k** cell sample consiting of 3k individual cells." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "AnnData object with n_obs × n_vars = 2700 × 32738\n", + " var: 'gene_ids', 'feature_id'" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def get_pbmc3k():\n", + " adata = sc.datasets.pbmc3k()\n", + " adata.var[\"feature_id\"] = adata.var[\"gene_ids\"]\n", + " return adata\n", + "\n", + "\n", + "adata = get_pbmc3k()\n", + "adata" + ] + }, + { + "cell_type": "markdown", + "id": "7", + "metadata": {}, + "source": [ + "## Sample reference mapping \n", + "\n", + "Query Census to retrieve the *k* most similar cells for each of the sample cells. \n", + "\n", + "This is using the TileDB-Vector-Search object level query interface to:\n", + "- Compute sample cell embeddings.\n", + "- Retrieve similar cell ids from the vector search index.\n", + "- Fetch observations of the similar cell ids from Census." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n", + "CPU times: user 26.9 s, sys: 11.8 s, total: 38.7 s\n", + "Wall time: 53.5 s\n" + ] + } + ], + "source": [ + "%%time\n", + "distances, neighbour_ids, neighbour_obs = index.query(\n", + " {\"anndata\": adata}, k=10, nprobe=1, return_objects=False\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "9", + "metadata": {}, + "source": [ + "Here are the results for a random cell" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "10", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
soma_joinidcell_typetissuedisease
021651228CD8-positive, alpha-beta memory T cellbloodCOVID-19
135014199effector memory CD8-positive, alpha-beta T cellbloodnormal
244414446CD8-positive, alpha-beta T cellbloodCOVID-19
321680805CD8-positive, alpha-beta memory T cellbloodCOVID-19
458301278CD8-positive, alpha-beta T celllunglung adenocarcinoma
555062865CD8-positive, alpha-beta T celllunglung adenocarcinoma
635524070effector memory CD4-positive, alpha-beta T cellbloodnormal
711498231CD8-positive, alpha-beta memory T cellbloodCOVID-19
850479431effector memory CD4-positive, alpha-beta T cellbloodnormal
940312561CD4-positive, alpha-beta T cellbloodCOVID-19
\n", + "
" + ], + "text/plain": [ + " soma_joinid cell_type tissue \\\n", + "0 21651228 CD8-positive, alpha-beta memory T cell blood \n", + "1 35014199 effector memory CD8-positive, alpha-beta T cell blood \n", + "2 44414446 CD8-positive, alpha-beta T cell blood \n", + "3 21680805 CD8-positive, alpha-beta memory T cell blood \n", + "4 58301278 CD8-positive, alpha-beta T cell lung \n", + "5 55062865 CD8-positive, alpha-beta T cell lung \n", + "6 35524070 effector memory CD4-positive, alpha-beta T cell blood \n", + "7 11498231 CD8-positive, alpha-beta memory T cell blood \n", + "8 50479431 effector memory CD4-positive, alpha-beta T cell blood \n", + "9 40312561 CD4-positive, alpha-beta T cell blood \n", + "\n", + " disease \n", + "0 COVID-19 \n", + "1 normal \n", + "2 COVID-19 \n", + "3 COVID-19 \n", + "4 lung adenocarcinoma \n", + "5 lung adenocarcinoma \n", + "6 normal \n", + "7 COVID-19 \n", + "8 normal \n", + "9 COVID-19 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def tiledb_to_pandas(obs, cell_id):\n", + " new_obs = {}\n", + " column_names = [\"soma_joinid\", \"cell_type\", \"tissue\", \"disease\"]\n", + " for column_name in column_names:\n", + " new_obs[column_name] = obs[column_name][cell_id]\n", + " return pd.DataFrame(data=new_obs)\n", + "\n", + "\n", + "tiledb_to_pandas(neighbour_obs, 42)" + ] + }, + { + "cell_type": "markdown", + "id": "11", + "metadata": {}, + "source": [ + "### Predict cell types\n", + "\n", + "Use the similar cell annotations to predict each cell type using a majority vote." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "12", + "metadata": {}, + "outputs": [], + "source": [ + "cell_predictions = []\n", + "for idx in range(neighbour_obs[\"cell_type\"].shape[0]):\n", + " annotations, counts = np.unique(neighbour_obs[\"cell_type\"][idx], return_counts=True)\n", + " annotation = annotations[np.argsort(-counts)][0]\n", + " cell_predictions.append(annotation)" + ] + }, + { + "cell_type": "markdown", + "id": "13", + "metadata": {}, + "source": [ + "Display the cell annotated types using a UMAP plot based on the scVI embeddings and the predicted cell_types." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "14", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n" + ] + }, + { + "data": { + "image/png": "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Hz+epePY2trSrVs3hg0bRlBQEGfPnsXPzw8Tk5f/WclYPZiam5sbnTt3pmvXrmzYsIHLly+ze/du1qxZYzTOzML37duXe/fu0bZtW44ePcoff/zBjh076Nq1a6aN0kL815hnMgrIy4Z7nfr06cO1a9fo378/58+fZ+PGjYwfP54hQ4ZkuXzKSnk+fvx4Vq5cyfjx4wkPD+fMmTPMmDHDIJ7u3buza9cutm3blmbYVzc3N06fPk1ERAR3797l+fPnct8thBApSEOlEEKI1yYi+ip+i6Zx46O70BloDqfWQMvPoPNo2P0AWheHMQWSph+sdwU6j4TAxed49uN0rq9syL1Ti/juTKrGg59Bp9dxy3D0FhIS4V7Mm8mbyEaeQMZteJD/RbhsVqRIEU6cOEHt2rX57LPPeO+99/jwww8JCgpi3rx5BmHHjRuHs7MzxYsXp2PHjjx8+JCgoCBGjBiRLWkpXrw4LVq0oFGjRtSvX5/33nuP77//Xts+YMAAPvvsMz777DPKli1LYGAgmzZtokSJEkDSD4jTp0+nUqVKVK5cmcjISLZu3Wr0C7qZmRnffPMN8+fPx8XFhWbNmqWbrjp16pA7d24iIiJo166dwTZfX182b97Mzp07qVy5MlWrVuXrr7+mcOHCWhg/Pz98fHzSjb937960aNGC1q1b88EHHxAdHW3QuzI9nTp14unTp1SpUoW+ffvSv39/evbsmel+yZo1a8bgwYPp168fnp6eHDx4kLFjx2Zp37p161KiRAlq1apFq1ataNKkCRMmTNC2T548mXHjxvHll1/i4eGBr68vv/76q9ZwXaBAASZOnMjnn39O/vz5tUbOVatWERISwnvvvcfgwYP56quvspyflzF27Fg+++wzxo0bh4eHB61bt9bm6LG2tmbv3r0UKlSIFi1a4OHhQdeuXXn69Kk86S3EP4S7eyly5cp4uOrcuXPj7l4q24+dWfmyfft27t27R+XKlfnkk0+oW7cu//d///fSx2nZsiXR0dE8efIkzfDt3bt358cffyQgIICyZcvi7e1NQECAVgZnRbVq1ejduzetW7cmb968aX6MhqRhAzds2ECuXLmoVasW9erVo2jRoqxevTrLx8must/f35+CBQvi7e1NixYt6Nmzp8EDUjqdjq1bt1KrVi26du2Ku7s7bdq0ITIy8qUaib/66itq1apF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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "adata = get_pbmc3k()\n", + "adata.obsm[\"scvi\"] = index.embedding.embed({\"anndata\": adata}, None)\n", + "adata.obs[\"predicted_cell_type\"] = cell_predictions\n", + "\n", + "sc.pp.neighbors(adata, n_neighbors=15, use_rep=\"scvi\")\n", + "sc.tl.umap(adata)\n", + "sc.tl.leiden(adata)\n", + "sc.pl.umap(adata, color=\"predicted_cell_type\")" + ] + }, + { + "cell_type": "markdown", + "id": "15", + "metadata": {}, + "source": [ + "You can reduce the `cell_type` label noise by annotating the leiden clusters by popular vote, whereby each cluster gets assigned the most common predicted cell type from the previous step." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "16", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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9XTu3JnrrruOL7/8kssvv5z77ruPrl27YjKZOHXqFCtWrGDkyJFcddVVtGjRgrFjx/Laa69hMpm49NJL2bNnDzNmzMDf3/+snucll1zCTTfdxHPPPUdqairDhg3Dw8OD7du34+3tzf/93//RrFkz7rrrLt544w30ej1Dhw51ZJeNiYnhgQceOKtrAgwfPpzWrVvTuXNnwsLCSExM5LXXXiM2NpYmTZoA8MILLzBo0CD69+/Pww8/jNls5u2332bPnj18/fXXZ5UF9Wye2bBhw3j22WeZOnUqffv25eDBg0yfPp34+HingNTPz4/Y2Fh+/vlnBg4cSHBwMKGhocTFxTF79mx69+7NJZdcwoQJE4iLiyMvL48jR47w66+/snz5cgDuv/9+Pv74Y6644gqee+45R3bZAwcOnPUznT59OgsXLqRPnz48+eSTtGnThuzsbBYtWsSDDz5I8+bNuf/++/nhhx/o06cPDzzwAG3btsVut3PixAl+//13HnroIbp163bW165OTc+o3H333ee4ZnmW56rMZjMzZ84kPz+fLl26OLLLDh06lN69ewPQq1cv7rrrLm699Va2bNlCnz598PHxITk5mTVr1tCmTRsmTJhwzu5NCCGEEBeZvzfvkPgnKs8WunXrVm348OGar6+v5ufnp11//fVaamqqo1xsbKx2xRVXuK0jLS1Nu/fee7X4+HjNZDJpwcHBWqdOnbSnnnpKy8/Pd5Q7deqUdvXVVzuucfXVV2vr1q2rNbtsuc8//1zr0qWL5unpqfn6+modOnRwOi8zM1MbPXq0FhgYqOl0Oqc6LBaLNmPGDK1du3aO85s3b67dfffd2uHDhx3lSkpKtIceekgLDw/XPD09te7du2vr1693yQhaFzabTZs1a5bWunVrzWw2awEBAVqPHj20X3/91anMSy+9pDVt2lQzmUxaaGioNnbsWO3kyZNOdfXt21dr1aqVyzVuueUWp4y6M2fO1Hr27KmFhoZqZrNZa9CggXb77bdrCQkJTuetXr1aGzBggObj46N5eXlp3bt3d2qXptUtu+zZPLOSkhLt4Ycf1urXr695enpqHTt21H766SeXe9A0TVu6dKnWoUMHzcPDwyVL7fHjx7XbbrtNq1+/vmYymbSwsDCtZ8+e2nPPPedUx759+7RBgwZpnp6eWnBwsHb77bdrP//881lnl9U0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cOxY7VmMyxUXF/PZZ58RHR0NwBtvvMEVV1zBzJkziYiIYMaMGTz22GNcd51KePXSSy+xYsUKXnvtNd566y1OnDhBkyZN6N27NzqdjtjY6rMih4WFARASElLtMNrg4GCGDBnCV199xcCBar3Y7777juDgYMf2888/z+OPP+7o2WzYsCHPPvssjz76KFOnTq3TfZtMJqcALT4+nnXr1jF37lzGjHE/HB8gJiaGWbNmodPpaNasGbt372bWrFnceeedjjKXX345EydOBFSv5axZs1i5cqXjPX/66acdZePi4njooYf49ttvefTRR2tss9ls5uOPP8bb25tWrVoxffp0HnnkEZ599lmKiop49dVXWb58OT169HA8lzVr1vDee+/Rt29fgoODAQgPD3f6MuPqq692us5HH31EeHg4+/bto3Xrc5PwMS8vj9mzZ/Pmm2863rdGjRrRu3dvAL755hv0ej0ffvghOp36Uu6TTz4hMDCQlStXctlll52Tdoh/t/9UT2Z+VolLgOnla6L/TS0Ia+AHqPmYNdHp1NxJg0FP0671aNghDJNHzR948e1C6Xx5HDc/15PifItLgAkQ2zqE8W/0JyCsYnhWDWuEAxAQ7kXS4awaA8zKSgqtrPjiAHvX1G29OSHEv5PZYOa+jvfRMLBhtWXs2LHYLdWue9ktqhvLrllGfd/6bo8Pazis2rqjfKO4LO4yHuvyWLXnN/BrQKGlsIa7UHToGN5oOABNgprw8ZCPeaH3C3St19WlrJfRi6ZBTXmw84OEe4UDEOQRxMNd6jacUZxHietcezCdaJB7WpU7h8qHVpb/Q/qv1FNexxNPPEGLFi0YO3ZsteV9fX0dP+PHV2R/btCggSPABOjRowd2u52DBw+Sm5tLUlISvXr1cqqrV69e7N+/H1BDXXfs2EGzZs249957+f333//SfQHceOON/PDDD5SUqC98vvzyS6677joMBvVvn61btzJ9+nSne7rzzjtJTk6msLD2/4fLvfvuu3Tu3JmwsDB8fX354IMPOHHiRI3ndO/e3em969GjB4cPH8Zmq/h7q23bto7X5UNJz5yp6Aj4/vvv6d27NxEREfj6+jJ58mTHdU+cOOF0X//7X8USTe3atcPbu2JkR48ePcjPz+fkyZPs27eP4uJiBg0a5HT+559/XuPQV4CjR49yww030LBhQ/z9/R3D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+fMolUoyMw0tDnK5nPT0dFatWkVSUhIymcwgKL+EkhtnalwOmmJQFvvr23JSi7BxsDTaRxAEugwNoeNLwUikwn1ZICUS3RhdhobUeF8REZHaxczdCgQwSv1aDpmrpUGdy/tCrTUaR5BJ0FZSXFObp6I4IQdpgH2FfUREHhRWNtVb0Khuv+oSGBiIQqFgz549Jt0yy3Po0CHatm3LW2+9pd9myhrZpEkTmjRpwocffkibNm1YuXIlrVu3BiAoKIigoCAmTpzISy+9xJIlS3juueeMxmjUqBF79uzh1VdfNWq7cuUKKSkpzJo1C29vnedTSQKhB01ISAiHDx/mlVde0W87evQoISHVf9aoX78+69atMxCbR48exdraGk9PT5ydnat8Xxo2bEjz5s1ZuHAhK1eu5McffzRoNzc3R602vOc1bdqUy5cvExAQUO25ioiI3B81smQmJCQwevRoVq1ahZubG88//zzr169/LF0wL168aODCUpHABJ2bh6naVTdv3mThwoV69w+VSsWWLVvw9/c36NekSRMAHD2USGWll9xcLsXO1VhglkUqkzyW11dERMQQwUwCZqXff6mLJS5jwrAI+meiTp+5ttxtQp1dpHezldiYY1HXsESRkVutREBmL8YjiTwc3APtqsw5oLTXlTOpTeRyOZMnT+b9999n+fLlREdHc/z4cRYtWmSyf0BAAKdPn2bHjh1cu3aNqVOncurUKX37rVu3+PDDDzl27Bi3b99m586dXLt2jZCQEPLz8xk7diz79+/n9u3bHDlyhFOnTlUozj755BNWrVrFJ598QlRUFBEREXz11VeArm65ubk5P/74Izdv3mTTpk36+McHzXvvvcfSpUv5v//7P65fv86cOXP4888/effdd6s9xltvvcWdO3cYN24cV65cYePGjXzyySdMmjQJiURS7fdl5MiRzJo1C7VabSTU/fz8OHjwIHFxcaSkpAAwefJkjh07xpgxYzh//jzXr19n06ZNjBs37p9fGBEREQNqJDLlcjlDhgxh7969REREEBISwvjx41GpVHz++efs2rXLaNXoUaWs24cpStw8LC0tadmyJZcvXzbZr8RFtoTi4mKGDBlCx44dqVu3Lj179qRPnz4A2Lla0uvNhrgH2OIZbMcz48KwtDGvhbMRERF51Mk9kQBl3F41GQWYe1vj9Ep9zMpkf1Xd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MGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIR3aPvEr/DqL2jMP3/piNDldHSzSEiIiJqUWYt3QAioofZobRD+Cj2I91xxqEM7PnbnhZsEREREVHLYk8mEdE9SMxP1DtOVaWitKq0hVpDRERE1PLYk0lEfxlarYid524gp7gCTwW6oa2LzT3XGeISonfczqEdrM2t77leIiIiooeVIIqieL8fqlKpoFAooFQqYWdnd78fT0R/UW9si8dP524AAGxkZtg2tQcECfDN8Wv4+UIWnOQyrBoViu6+jk2qd2fyTuy9uheOlo6YEzYH7nL35mg+UYvj9zcRETUGQyYR/SWUV2nQ4b39eucUVuZQllXpnXOUWyBu/hMAgJJKDWxkfw74iEvLx8HEW/BUWGHcY61hJr27GQfXckuwPyELGhEYHuoJLwf2fNLDgd/fRETUGBwuS0R/CRqNCKkAaGr9Wq1uwASA/JJKvLLpDC7cUCFLWQ5LcwmsLczQp50z/nc+C2ptdQU/nbuBXdN7QRAEgzoKSiohCIC9tYXBtXPpBRi5/hSqbjdkVfQVbJwUjn4BLiZ6pUREREQtiwv/ENEjr6xSg7d++l0vYDbkYGI2spTlAIDyKi3ySyqxOz5TFzAB4PeMQnx+5A+9+0oq1JgcGYsuS6MRuiQaKw9e1ruu1YqYvvmsLmACgEYrYmX0Fd1xUXkVMvJLob39LGVpFUor1U16vUREREQtiT2ZRPRIO/lHLl7ZFIeiCsOgJhEA7T1MGIhOvIXuvk7wc5FDZi5FxKe/ID2/THd9zeE/EBHsgQ7udiir1CAhU6kLr7XVNGF/wk28tu0cyqu06OKtgI+zDXaeuwGpRMCiYZ3wYo82d99YIiIiovuEczKJ6JHW/99HkJZnuKWIg7U51o7pgkxlOW4qy7AyOvmOddlZmkFV/mdYNZMIUGtF2FqaYWJPH3xWp2cTALa/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iYiIiJobQyYRUQuoOwx3zlMByFKW4fTVPAS42eLD54NbqGVERERE94Yhk4joASCXmWHd+G4t3QwiIiKie2Z8l24iIiIiIiKiu8CQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmY9YSDxVFEQCgUqla4vFERER0F2q+t2u+x4mIiIxpkZBZVFQEAPD29m6JxxMREdE9KCoqgkKhaOlmEBHRA0oQW+DXkVqtFpmZmbC1tYUgCPf78URERHQXRFFEUVERPD09IZFwxg0RERnXIiGTiIiIiIiIHk38NSQRERERERGZDEMmERERERERmQxDJhEREREREZkMQyYRERERERGZDEMm0V/QgAED8Nprrxmc37Vrl27F58jISAiCgI4dOxqU2759OwRBgI+Pj8G1srIyODg4wNHREWVlZQbXfXx8IAgCBEGAtbU1OnfujPXr1+uuZ2VlYezYsWjfvj0kEonRdhIRERHRg4shk4jqJZfLkZ2djVOnTumd37BhA1q3bm30nh07dqBz584IDAzETz/9ZLTMkiVLkJWVhfPnz2P48OGYNm0atm3bBgCoqKiAi4sL3n33XYSEhJj2BRERERFRs2PIJKJ6mZmZYezYsdiwYYPu3PXr13H06FGMHTvW6D3ffPMNxo8fj/Hjx+Obb74xWsbW1hbu7u7w9/fH+++/j3bt2mHXrl0Aqns6P/30U0yYMIGbvRMRERE9hBgyiahBU6ZMwbZt21BaWgqgehjtkCFD4ObmZlA2JSUFp06dwsiRIzFy5EicPHkSV69eveMzLC0tUVVVZfK2ExEREdH9x5BJRA0KDQ2Fn58ffvzxR4iiiMjISEyePNlo2Q0bNmDo0KG6OZlDhgzR6wWtS61WIzIyEhcuXMCgQYOa6yUQERER0X3EkElEdzR58mRs3LgRx44dQ3FxMSIiIgzKaDQaREVFYfz48bpz48ePR1RUFDQajV7Zt956CzY2NrCyssKMGTPw5ptv4pVXXmn210FEREREzc+spRtARPefnZ0dlEqlwfnCwkLY2dkZnB83bhzmzZuHRYsWYcKECTAzM/zRceDAAdy4cQOjRo3SO6/RaHDw4EEMHTpUd+7NN9/EpEmTYG1tDQ8PD92KtkRERET08GNPJtFfUIcOHXDmzBmD87GxsWjfvr3BeUdHRwwbNgzHjh2rd6jsN998g9GjRyM+Pl7vz7hx4wwWAHJ2doa/vz88PT0ZMImIiIgeMezJJPoLmj59Oj777DPMmDEDU6dOhZWVFaKjo/HNN99g06ZNRu+JjIzEF198AScnJ4NrOTk52LNnD3bv3o3OnTvrXZs4cSKefvpp5OTkwMXFpVHti4+PBwAUFxcjJycH8fHxsLCwQGBgYNNeKBERERHddwyZRH9BPj4+OH78ON5991089dRTKC8vR0BAACIjIzFixAij91hZWcHKysrotW+//RZyudzo4j0DBw6Era0tNm3ahDfeeKNR7evSpYvu73Fxcfj+++/Rpk0bpKamNup+IiIiImo5giiKYks3goiIiIiIiB4NnJNJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQm8//1F70jUSfpyQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "adata.obs[\"predicted_consolidated_cell_type\"] = \"\"\n", + "for leiden_cluster in adata.obs[\"leiden\"].drop_duplicates():\n", + " most_popular_type = (\n", + " adata.obs.loc[adata.obs[\"leiden\"] == leiden_cluster,]\n", + " .value_counts(\"predicted_cell_type\")\n", + " .index[0]\n", + " )\n", + " adata.obs.loc[\n", + " adata.obs[\"leiden\"] == leiden_cluster, \"predicted_consolidated_cell_type\"\n", + " ] = most_popular_type\n", + "sc.pl.umap(adata, color=\"predicted_consolidated_cell_type\")" + ] + }, + { + "cell_type": "markdown", + "id": "17", + "metadata": {}, + "source": [ + "## Cell interactive analysis \n", + "\n", + "Load the **pbmc3k** cell sample and pick a random cell of interest." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "18", + "metadata": {}, + "outputs": [], + "source": [ + "adata = get_pbmc3k()\n", + "cell_id = 42\n", + "cell_adata = adata[cell_id]" + ] + }, + { + "cell_type": "markdown", + "id": "19", + "metadata": {}, + "source": [ + "Fetch similar cells from Census" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "20", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n", + "CPU times: user 6.85 s, sys: 3.37 s, total: 10.2 s\n", + "Wall time: 6.75 s\n" + ] + } + ], + "source": [ + "%%time\n", + "distances, neighbour_ids, neighbour_obs = index.query(\n", + " {\"anndata\": cell_adata}, k=100, nprobe=1, return_objects=False\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "21", + "metadata": {}, + "source": [ + "### Analyse the similar cells " + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "22", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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5pdffrH3Wbx4scP349afE2OMWbVqlfntHwFfX18TFxd32/P+1uTJk42kHK/AqE9Mzeh1OV4AAKDwSUtLM5JMWlqaZT+nzTAfPXpU165dU8eOHeXj42N/LV26NMd/t4eHh9u/Llu2rOrWraukpKR8nzM0NNT+denSpeXr66tz585J+nXWdtu2bQ611KtXT5Jy1PO/+m0dlSpVkre3t4KDgx22ZdeVm6SkJLVu3dphW+vWrXXixAndvHkzz3UcOHBAb7zxhsM1Dx48WKmpqbp69ap69uypX375RcHBwRo8eLBWrVplX66RlJQkV1dXPfjgg/bjlStXLsf3xtXVVWFhYfb39erVU0BAgEOfoKAg+fr62t9XqVLF4fpPnTqlvn37Kjg4WH5+frrvvvskScnJyZKkY8eOKTQ0VJ6envZ9WrRokedxyDZq1CgNGjRIHTp0UExMjOX3ffz48UpLS7O/cltmAgAAigen3fSX/d/p69evV7Vq1RzaPDw87rj/b9ee5tWt/71us9nsdWRlZenxxx/Xn/70pxz7ValS5Y7HdnH59d8exhj7ttyWjdxah81ms6wrN8aYHNf/2/PmVVZWlqZOnaoePXrkaPP09FRgYKCOHTumLVu2aOvWrRoyZIjeeust7dix47bny6223L5Xv912p+t//PHHFRgYqMWLF6tq1arKyspSgwYNlJmZedtz3lqfi4tLjm23fn+mTJmivn37av369dqwYYMmT56s+Ph4Pfnkkznq9/DwyNPPKQAAKPqcFphDQkLk4eGh5ORktWvXzrLvnj17VKNGDUm/3mh2/Phx++zvrdzd3fM1y5qtadOmWrlypYKCguTqmv9hyX5iRmpqqpo0aSJJDjcAFqSQkBDt3LnTYduuXbtUp04dlSpVKs/Hadq0qY4dO6ZatWrdto+Xl5eeeOIJPfHEExo6dKjq1aunxMREhYSE6MaNG9q7d69atWolSbpw4YKOHz+u+vXr2/e/ceOG9u/fb5/xPXbsmH7++efbfv9udeHCBSUlJWnRokV66KGHJCnHtderV0/Lly9XRkaGPcTeerNehQoVdOnSJV25ckWlS5eWlPv3p06dOqpTp45GjhypPn36KDY2NtfADAAASg6nBWZfX1+NGTNGI0eOVFZWltq0aaP09HTt2rVLPj4+eu655+x933jjDZUrV06VKlXShAkTVL58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ZrPleXu27DabzWavY/HixXrwwQcd+pUqVeq25/3tcfJ63t+jX79+GjFihObPn6+PPvpIDzzwgBo1aiTp1zEsVaqUDhw4kKPW3z6Vw8vL6451eXh43NWbDQEAQOFRYtYw165dW15eXvr8889zbf/6669Vs2ZNTZgwQWFhYapdu3aOm70qVKig1NRUh20JCQn2r2vVqiU3Nzft2bPHvu3ixYs6fvy4/f2//vUvnT9/XjExMXrooYdUr149+w1/2dzd3SX9+oSGbNk3oCUnJ6tWrVoOr7zObIaEhCg5OVkpKSn2bUePHlVaWprq169v35acnKwff/zR/n737t1ycXFRnTp1VKlSJVWrVk3ff/99jjruu+++XM9bq1Ytubu7a+fOnfZt169f1/79+x3OWxC6d++ua9euaePGjfroo4/0zDPP2NuaNGmimzdv6ty5czlqr1y5coHWAQAAio8SM8Ps6emp6OhojRs3Tu7u7mrdurX++9//6siRIxo4cKBq1aql5ORkxcfHq3nz5lq/fr1WrVrlcIyHH35Yb731lpYuXarw8HAtW7ZM3333nX1JhI+PjwYOHKixY8eqXLlyqlSpkiZMmCAXl///75IaNWrI3d1d8+fP18svv6zvvvtO06ZNczhPzZo1ZbPZtG7dOnXp0kVeXl7y9fXVmDFjNHLkSGVlZalNmzZKT0/Xrl275OPjo+eee+6OY9ChQweFhoaqX79+mjdvnm7cuKEhQ4aoXbt2CgsLcxir5557TrNnz1Z6erqGDx+uXr162UPllClTNHz4cPn5+alz587KyMjQ/v37dfHiRYdlCtlKly6tV155RWPHjlXZsmVVo0YNzZo1S1evXtXAgQPz/k3Mg9KlS6tbt26aOHGikpKS1LdvX3tbnTp11K9fP/Xv319z5sxRkyZNdP78eX3xxRdq2LChunTpUqC1AACA4uF3zzBnZmbq2LFjunHjRkHWc1dNnDhRo0eP1qRJk1S/fn317t3bPrvbrVs3jRw5UsOGDVPjxo21a9cuTZw40WH/yMhITZw4UePGjVPz5s116dIl9e/f36HPW2+9pbZt2+qJJ55Qhw4d1KZNGzVr1szeXqFCBcXFxenvf/+7QkJCFBMTo9mzZzsco1q1apo6dapee+01VapUScOGDZMkTZs2TZMmTdLMmTNVv359RUZGau3atbed2b1V9iPYypQpo7Zt26pDhw4KDg7WihUrHPrVqlVLPXr0UJcuXdSpUyc1aNDA4bFxgwYN0gcffKC4uDg1bNhQ7dq1U1xcnGUdMTExeuqpp/Tss8+qadOmOnnypDZt2nRXPnSkX79+Onz4sB566CHVqFHDoS02Nlb9+/fX6NGjVbduXT3xxBPau3cv648BAMBt2UxeFt7+xtWrV/Xqq6/aHyF2/PhxBQcHa/jw4apatWqO5+ACJUF6err8/f0VGPWJXDy8c7SfienqhKoAAICV7N/faWlplg96yPcM8/jx43X48GFt375dnp6e9u0dOnTIMVMJAAAAFHX5XsO8evVqrVixQi1btnR4kkBISIhOnTpVoMUBAAAAzpbvGeb//ve/uX7y2ZUrVwr8EWEAAACAs+U7MGc/QSJbdkhevHixwwd2AAAAAMVBvpdkzJw5U48++qiOHj2qGzdu6J133tGRI0e0e/du7dix427UCAAAADhNvp+SIUmJiYmaPXu2Dhw4oKysLDVt2lTR0dFq2LDh3agRKPTyepctAAAoPPL6+/t3BWYAjgjMAAAUPXn9/Z3vJRnJycmW7bd+UAQAAABQlOU7MAcFBVk+DePmzZv/U0EAAABAYZLvwHzo0CGH99evX9ehQ4f09ttva/r06QVWGAAAAFAY5DswN2rUKMe2sLAwVa1aVW+99ZZ69OhRIIUBAAAAhUG+n8N8O3Xq1NG+ffsK6nAAAABAoZDvGeb09HSH98YYpaamasqUKapdu3aBFQYAAAAUBvkOzAEBATlu+jPGKDAwUPHx8QVWGAAAAFAY5Dswb9u2zeG9i4uLKlSooFq1asnVNd+HAwAAAAq1fCfcdu3a3Y06AAAAgEIp3zf9LVmyROvXr7e/HzdunAICAtSqVSv98MMPBVocAAAA4Gz5DswzZsyQl5eXJGn37t1asGCBZs2apfLly2vkyJEFXiAAAADgTPlekpGSkqJatWpJklavXq0//OEPevHFF9W6dWtFREQUdH0AAACAU+V7htnHx0cXLlyQJG3evFkdOnSQJHl6euqXX34p2OoAAAAAJ8v3DHPHjh01aNAgNWnSRMePH1fXrl0lSUeOHFFQUFBB1wcAAAA4Vb5nmP/85z8rPDxc//3vf7Vy5UqVK1dOknTgwAH16dOnwAsEAAAAnMlmjDHOLgIo6tLT0+Xv76+0tDT5+fk5uxwAAJAHef39ne8Z5o0bN2rnzp3293/+85/VuHFj9e3bVxcvXvx91QIAAACFVL4D89ixY5Weni5JSkxM1OjRo9WlSxd9//33GjVqVIEXCAAAADhTvm/6O336tEJCQiRJK1eu1GOPPaYZM2bo4MGD6tKlS4EXCAAAADhTvmeY3d3ddfXqVUnS1q1b1alTJ0lS2bJl7TPPAAAAQHGR7xnmNm3aaNSoUWrdurW++eYbrVixQpJ0/PhxVa9evcALBAAAAJwp34F5wYIFGjJkiD799FMtXLhQ1apVkyRt2LBBjz76aIEXCBQlDSZvkouHd772ORPT9S5VAwAACkK+A3ONGjW0bt26HNvnzp1bIAUBAAAAhUmeAnN6err92XR3WqfMM2gBAABQnOQpMJcpU0apqamqWLGiAgICZLPZcvQxxshms+nmzZsFXiQAAADgLHkKzF988YXKli0rSYqNjVVgYKBKlSrl0CcrK0vJyckFXyEAAADgRPn+aOxSpUrZZ5t/68KFC6pYsSIzzCiRsj9aMzDqE276AwCgiLhrH42dvfTiVpcvX5anp2d+D4cSJiIiQlFRUbm2DRgwQN27d//d+wMAANwNeX5KRvbHXttsNk2cOFHe3v9/Fu3mzZvau3evGjduXOAFouR45513lM//8AAAALjr8hyYDx06JOnXGebExES5u7vb29zd3dWoUSONGTOm4CtEieHv7+/sEgAAAHLI85KMbdu2adu2bXruuee0YcMG+/tt27Zp06ZNWrRokWrXrn03a0UxtHHjRvn7+2vp0qU5lmRcuXJF/fv3l4+Pj6pUqaI5c+bk2D8oKEgzZszQCy+8IF9fX9WoUUN/+ctfHPr8+9//Vu/evVWmTBmVK1dO3bp105kzZyRJX375pdzc3HT27FmHfUaPHq22bdsW+PUCAICiJ99rmGNjY3nWMgpEfHy8evXqpaVLl6p///452seOHatt27Zp1apV2rx5s7Zv364DBw7k6DdnzhyFhYXp0KFDGjJkiF555RX961//kiRdvXpV7du3l4+Pj7788kvt3LlTPj4+evTRR5WZmam2bdsqODhYH374of14N27c0LJly/T888/fvYsHAABFRr4DM1AQ3nvvPb388sv6xz/+oW7duuVov3z5sv76179q9uzZ6tixoxo2bKglS5bk+hSWLl26aMiQIapVq5aio6NVvnx5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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ax = tiledb_to_pandas(neighbour_obs, 0).value_counts(\"tissue\").plot.barh()" + ] + }, + { + "cell_type": "markdown", + "id": "23", + "metadata": {}, + "source": [ + "### Refine similarity query\n", + "\n", + "Now you can fetch similar cells only from blood tissue" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "24", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n", + "CPU times: user 17 s, sys: 10.6 s, total: 27.6 s\n", + "Wall time: 10.2 s\n" + ] + } + ], + "source": [ + "%%time\n", + "adata = get_pbmc3k()\n", + "cell_adata = adata[cell_id]\n", + "\n", + "\n", + "def tissue_filter_fn(row):\n", + " return row[\"tissue\"] == \"blood\"\n", + "\n", + "\n", + "distances, cells, neighbour_obs = index.query(\n", + " {\"anndata\": cell_adata},\n", + " metadata_df_filter_fn=tissue_filter_fn,\n", + " k=100,\n", + " nprobe=1,\n", + " return_objects=False,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "25", + "metadata": {}, + "source": [ + "And analyse the similar cells disease histogram." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "26", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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AAA5yTa3C3geFC5cOLdLyJPu3LmjAgUK5HYZAAAAz71cnalftmyZKlasKHt7exUpUkQNGjTQjRs3tG3bNuXPn1/nz5+3at+/f3/VrVtXknTu3Dk1a9ZMbm5ucnR0VPny5bVu3TolJiaqfv36kiQ3NzeZTCZFRkZKksxmsyZOnCgfHx/Z29srKChIy5Yts/T/YIb/+++/V5UqVWRvb69XX31VFy5c0Pr161WuXDm5uLiobdu2unnzpuW4h2dtb9++rY8++kienp6ys7OTn5+f/vGPf2Tpmjxq2cmVK1dkMpm0detWqzq/++47BQUFqWDBgqpZs6bi4+Mtx4wcOVKVK1e26nvatGny8vKyer81atSQo6OjChUqpDp16ujcuXOPre3nn39W69at5ebmpiJFiig8PFyJiYmW/Q9m3MePH6+SJUvK399fo0ePVsWKFTP0FRwcrOHDh2vkyJFauHChVq1aJZPJZPU+JenMmTOqX7++HBwcFBQUpF27dln1s3PnTtWtW1f29vby9PRU7969dePGDct+Ly8vjRkzRh06dJCTk5PKlCmjVatW6bffflN4eLicnJxUsWJF7du3z3LMpUuX1LZtW5UqVUoODg6qWLGiFi9ebPU+Y2NjNX36dEvND65DbGysatSoITs7O5UoUUKDBw/WvXv3LMc+7nteevTsf4sWLSzfv5I0e/Zs+fn5qWDBgipevLjeeuutx44XAAB4ceRaqE9JSVHbtm3VuXNnJSQkaOvWrWrZsqXMZrPq1q0rHx8fLVq0yNL+3r17+uc//6lOnTpJknr27Knbt29r27Ztio+P16effionJyd5enpq+fLlkqTjx48rJSVF06dPlyQNHTpU0dHRioqK0pEjR/Thhx/q3XffVWxsrFVtI0eO1KxZs7Rz504lJycrIiJC06ZN09dff63vvvtOMTExmjlz5mPfW4cOHbRkyRLNmDFDCQkJmjNnjpycnHL6EmrgwIH6+9//rr1796pYsWJq3ry57t69m6Vj7927pxYtWqhevXo6dOiQdu3apffee08mk+mR7W/evKn69evLyclJ27Zt044dO+Tk5KQ33nhDd+7csbTbtGmTEhISFBMTo7Vr16pz5846evSo9u7da2lz6NAhHTx4UJGRkRowYIAiIiL0xhtvKCUlRSkpKapdu7al7ccff6wBAwYoLi5O/v7+atu2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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ax = tiledb_to_pandas(neighbour_obs, 0).value_counts(\"disease\").plot.barh()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "27", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/demo-react/src/App.css b/demo/src/App.css similarity index 100% rename from demo-react/src/App.css rename to demo/src/App.css diff --git a/demo-react/src/App.tsx b/demo/src/App.tsx similarity index 74% rename from demo-react/src/App.tsx rename to demo/src/App.tsx index f602e72..f14eaa9 100644 --- a/demo-react/src/App.tsx +++ b/demo/src/App.tsx @@ -1,19 +1,23 @@ import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import { useCallback, useRef, useState } from 'react'; import ErrorDialog from './components/Error'; +import FileMenuBar from './components/FileMenuBar/FileMenuBar'; +import { useGetJupyterInfo } from './components/FileMenuBar/useGetJupyterInfo'; import InputArea from './components/InputArea'; import Instructions from './components/Instructions'; import JupyterIframe from './components/JupyterIframe'; import ListCommands from './components/ListCommands'; import ModeToggle from './components/ModeToggle'; +import NoteBookBrowser from './components/NoteBookBrowser'; function App() { const [errorMessage, setErrorMessage] = useState(''); - const [isBridgeReady, setIsBridgeReady] = useState(false); const dialogRef = useRef(null); const iframeRef = useRef(null); + const isBridgeReady = useGetJupyterInfo(state => state.isBridgeReady); + const getBridge = useCallback((): ICommandBridgeRemote => { //@ts-expect-error wip return iframeRef.current?.getBridge(); @@ -40,15 +44,19 @@ function App() { bridge={getBridge} //can pass bridge itself apiFunction={getBridge()?.listCommands} // can pass function from bridge /> + - +
+ + {' '} +
+ ); diff --git a/demo-react/src/assets/react.svg b/demo/src/assets/react.svg similarity index 100% rename from demo-react/src/assets/react.svg rename to demo/src/assets/react.svg diff --git a/demo/src/components/CssLoader.tsx b/demo/src/components/CssLoader.tsx new file mode 100644 index 0000000..f3201f0 --- /dev/null +++ b/demo/src/components/CssLoader.tsx @@ -0,0 +1,37 @@ +interface ICssLoaderProps { + submitCommand: (command: string, args: string) => void; +} + +const CssLoader = ({ submitCommand }: ICssLoaderProps) => { + const handleSubmit = () => { + const command = 'jupyter-import-css'; + // from MDN + const getAllCss = [...document.styleSheets] + .map(styleSheet => { + try { + return [...styleSheet.cssRules].map(rule => rule.cssText).join(''); + } catch (e) { + console.log( + 'Access to stylesheet %s is denied. Ignoring…', + styleSheet.href + ); + } + }) + .filter(Boolean) + .join('\n'); + + const parsedCSS = getAllCss.replace(/'/g, '"'); + + submitCommand(command, JSON.stringify({ parsedCSS })); + }; + + return ( +
+ +
+ ); +}; + +export default CssLoader; diff --git a/demo-react/src/components/Error.tsx b/demo/src/components/Error.tsx similarity index 83% rename from demo-react/src/components/Error.tsx rename to demo/src/components/Error.tsx index 5be4682..3be0495 100644 --- a/demo-react/src/components/Error.tsx +++ b/demo/src/components/Error.tsx @@ -20,7 +20,11 @@ const ErrorDialog = forwardRef(({ message }: IErrorProps, ref) => { {message}
-
diff --git a/demo/src/components/FileMenuBar/AddCellButton.tsx b/demo/src/components/FileMenuBar/AddCellButton.tsx new file mode 100644 index 0000000..1884ceb --- /dev/null +++ b/demo/src/components/FileMenuBar/AddCellButton.tsx @@ -0,0 +1,51 @@ +import { useCallback } from 'react'; +import codeUrl from '../../../icons/code.svg'; +import markdownUrl from '../../../icons/markdown.svg'; +import plusUrl from '../../../icons/plus.svg'; +import PopoverListItem from './PopoverListItem'; +import { usePopover } from './usePopover'; + +interface IAddCellButtonProps { + submitCommand: (command: string, args: string) => void; +} + +const AddCellButton = ({ submitCommand }: IAddCellButtonProps) => { + const { isOpen, toggle, close, ref } = usePopover(); + + const handleOptionClick = useCallback((option: string) => { + console.log(`${option} option clicked`); + close(); + + submitCommand('notebook:insert-cell-below', ''); + submitCommand(`notebook:change-cell-to-${option}`, ''); + }, []); + + return ( +
+ + + {isOpen && ( +
+
+ + +
+
+ )} +
+ ); +}; + +export default AddCellButton; diff --git a/demo/src/components/FileMenuBar/AvailableCommands.tsx b/demo/src/components/FileMenuBar/AvailableCommands.tsx new file mode 100644 index 0000000..f424931 --- /dev/null +++ b/demo/src/components/FileMenuBar/AvailableCommands.tsx @@ -0,0 +1,93 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; +import { ChangeEvent, useCallback, useState } from 'react'; +import plusUrl from '../../../icons/keyboard.svg'; +import { usePopover } from './usePopover'; + +interface IAvailableCommandsProps { + bridge: () => ICommandBridgeRemote; +} + +// type CommandOption = { label: string; command: string }; +const commandList = [ + { label: 'Create new notebook...', command: 'notebook:create-new' }, + { label: 'Open terminal...', command: 'terminal:create-new' }, + { label: 'Undo last operation', command: 'notebook:undo-cell-action' }, + { label: 'Redo last operation...', command: 'notebook:redo-cell-action' }, + { label: 'Run selected cell', command: 'notebook:run-cell-and-select-next' }, + { label: 'Run all blocks', command: 'notebook:run-all-cells' }, + { label: 'Restart Kernel', command: 'notebook:restart-kernel' }, + { + label: 'Restart kernel and clear all outputs', + command: 'notebook:restart-clear-output' + }, + { label: 'Add code block below', command: 'notebook:insert-cell-below' }, + { label: 'Add code block above', command: 'notebook:insert-cell-above' } +]; + +const AvailableCommands = ({ bridge }: IAvailableCommandsProps) => { + const [searchQuery, setSearchQuery] = useState(''); + const { isOpen, toggle, close, ref } = usePopover(); + + // Handle option click + const handleOptionClick = useCallback((option: string): void => { + console.log(`${option} option clicked`); + close(); + setSearchQuery(''); // Reset search query after selection + bridge().execute(option, {}); + }, []); + + // Update the search query as the user types + const handleSearchChange = useCallback( + (e: ChangeEvent): void => { + setSearchQuery(e.target.value); + }, + [] + ); + + // Filter items based on the search query + const filteredItems = commandList.filter(item => + item.label.toLowerCase().includes(searchQuery.toLowerCase()) + ); + + return ( +
+ + + {isOpen && ( +
+
+
+
+
+ {/* Search bar */} + +
+
+ {/* Render filtered options */} +
+ {filteredItems.map(option => ( +
handleOptionClick(option.command)} + > + {option.label} +
+ ))} +
+
+
+
+ )} +
+ ); +}; + +export default AvailableCommands; diff --git a/demo/src/components/FileMenuBar/FileMenuBar.tsx b/demo/src/components/FileMenuBar/FileMenuBar.tsx new file mode 100644 index 0000000..68fec08 --- /dev/null +++ b/demo/src/components/FileMenuBar/FileMenuBar.tsx @@ -0,0 +1,72 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; +import clipboardUrl from '../../../icons/clipboard.svg'; +import redoUrl from '../../../icons/redo.svg'; +import saveUrl from '../../../icons/save.svg'; +import undoUrl from '../../../icons/undo.svg'; +import AddCellButton from './AddCellButton'; +import AvailableCommands from './AvailableCommands'; +import KernelInfo from './KernelInfo'; +import RunButton from './RunButton'; +import './fileMenuBar.css'; +interface IFileMenuBarProps { + bridge: () => ICommandBridgeRemote; + submitCommand: (command: string, args: string) => void; +} + +const FileMenuBar = ({ bridge, submitCommand }: IFileMenuBarProps) => { + const handleSave = () => { + submitCommand('docmanager:save', ''); + }; + + const handleUndo = () => { + // ? cell action or no cell action? + submitCommand('notebook:undo-cell-action', ''); + }; + + const handleRedo = () => { + // ? cell action or no cell action? + submitCommand('notebook:redo-cell-action', ''); + }; + + const handlePaste = () => { + submitCommand('notebook:paste-cell-below', ''); + }; + + return ( +
+
+
+ + + + + + +
+ +
+ + +
+
+
+ ); +}; + +export default FileMenuBar; diff --git a/demo/src/components/FileMenuBar/KernelInfo.tsx b/demo/src/components/FileMenuBar/KernelInfo.tsx new file mode 100644 index 0000000..d8bf227 --- /dev/null +++ b/demo/src/components/FileMenuBar/KernelInfo.tsx @@ -0,0 +1,63 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; +import { useEffect, useState } from 'react'; +import { useGetJupyterInfo } from './useGetJupyterInfo'; + +interface IKernelInfoProps { + bridge: () => ICommandBridgeRemote; +} + +const KernelInfo = ({ bridge }: IKernelInfoProps) => { + const [kernelName, setKernelName] = useState(''); + const [className, setClassName] = useState('idle'); + + const kernelInfo = useGetJupyterInfo(state => state.kernelInfo); + + useEffect(() => { + setClassName(kernelInfo.isKernelBusy ? 'busy' : 'idle'); + setKernelName(kernelInfo.kernelName); + }, [kernelInfo]); + + const handleClick = async () => { + bridge().execute('notebook:change-kernel', {}); + }; + + return ( +
+
+ +
+
+ ); +}; + +export default KernelInfo; diff --git a/demo/src/components/FileMenuBar/PopoverListItem.tsx b/demo/src/components/FileMenuBar/PopoverListItem.tsx new file mode 100644 index 0000000..cc8f543 --- /dev/null +++ b/demo/src/components/FileMenuBar/PopoverListItem.tsx @@ -0,0 +1,30 @@ +interface IPopoverListItemProps { + label: string; + content?: string; + iconUrl: string; + handleOptionClick: (option: string) => void; +} + +const PopoverListItem = ({ + label, + content, + iconUrl, + handleOptionClick +}: IPopoverListItemProps) => { + return ( +
handleOptionClick(label.toLowerCase())} + > +
+ +
+
+ + {content} +
+
+ ); +}; + +export default PopoverListItem; diff --git a/demo/src/components/FileMenuBar/RunButton.tsx b/demo/src/components/FileMenuBar/RunButton.tsx new file mode 100644 index 0000000..67bc42f --- /dev/null +++ b/demo/src/components/FileMenuBar/RunButton.tsx @@ -0,0 +1,78 @@ +import { useCallback } from 'react'; +import arrowDownUrl from '../../../icons/arrowDown.svg'; +import playUrl from '../../../icons/play.svg'; +import { usePopover } from './usePopover'; + +interface IRunButtonProps { + submitCommand: (command: string, args: string) => void; +} + +const popoverOptions = [ + { label: 'Run all', command: 'notebook:run-all-cells' }, + { label: 'Run selected cell', command: 'notebook:run-cell-and-select-next' }, + { + label: 'Run from selected cell and above', + command: 'notebook:run-all-above' + }, + { + label: 'Run from selected cell and below', + command: 'notebook:run-all-below' + } +]; +const RunButton = ({ submitCommand }: IRunButtonProps) => { + const { isOpen, toggle, close, ref } = usePopover(); + + const handleOptionClick = useCallback((option: string): void => { + console.log(`${option} option clicked`); + close(); + submitCommand(option, ''); + }, []); + + return ( +
+
+ {/* Run Button */} + + + {/* Options Button */} + +
+ + {/* Popover Menu */} + {isOpen && ( +
+
+ {popoverOptions.map((option, index) => ( +
{ + handleOptionClick(option.command); + }} + className="popover-list-item" + > + {option.label} +
+ ))} +
+
+ )} +
+ ); +}; + +export default RunButton; diff --git a/demo/src/components/FileMenuBar/fileMenuBar.css b/demo/src/components/FileMenuBar/fileMenuBar.css new file mode 100644 index 0000000..b50eed2 --- /dev/null +++ b/demo/src/components/FileMenuBar/fileMenuBar.css @@ -0,0 +1,690 @@ +.file-menu-bar-container { + /* display: flex; + justify-content: space-between; + border-bottom: 1px solid #ededed; + background-color: #ffffff; + padding: 6px; + height: 32px; + border-radius: 8px 8px 0 0; + gap: 8px; */ + border-radius: 8px 8px 0 0; + + box-sizing: border-box; + + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + padding: 6px; + + /* width: auto; */ + height: 44px; + + background: #ffffff; + border-bottom: 1px solid #ededed; + + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 0; +} + +.file-menu-bar-wrapper { + /* Auto layout */ + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: space-between; + align-items: center; + align-content: flex-start; + padding: 0px; + gap: 8px; + + /* width: auto; */ + height: 32px; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 1; +} + +.file-menu-bar-commands { + /* display: flex; + gap: 1rem; */ + + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + padding: 0px; + gap: 8px; + + /* width: 232px; */ + height: 32px; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 0; +} + +.file-menu-bar-commands button { + /* width: 32px; + height: 32px; + padding: 6px; + border: 1px solid transparent; + background-color: #ffffff; */ + + /* Auto layout */ + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 4px; + gap: 8px; + + width: 32px; + height: 32px; + + border-radius: 6px; + + border: 1px solid transparent; + background-color: #ffffff; + cursor: pointer; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 0; +} + +.button-name { + width: 16px; + height: 16px; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 0; +} + +.button-name svg { + stroke: #525252; +} + +.file-menu-bar-buttons { + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + padding: 0px; + gap: 8px; + + width: 299px; + height: 32px; + + /* Inside auto layout */ + flex: none; + order: 2; + flex-grow: 0; +} + +/* .file-menu-button-text { + display: flex; + flex-direction: column; +} + +.file-menu-button-text > label { + font-weight: bold; +} + +.file-menu-button-text > span { + font-size: 13px; + color: #737373; +} */ + +.file-menu-popover-container { + /* position: absolute; + top: 100%; + left: 0; + margin-top: 4px; + background-color: white; + border: 1px solid #ddd; + border-radius: 4px; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); + min-width: 150px; + z-index: 1000; + text-wrap: nowrap; */ + + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 0px; + + position: absolute; + width: 246px; + height: 124px; + /* left: 18px; */ + top: 35px; + + /* Inside auto layout */ + flex: none; + order: 2; + flex-grow: 0; + z-index: 2; +} + +.file-menu-popover-wrapper { + box-sizing: border-box; + + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 10px; + gap: 8px; + + width: 246px; + height: 124px; + + background: #ffffff; + /* shadow/400 */ + box-shadow: 0px 5px 16px rgba(0, 0, 0, 0.15); + border-radius: 8px; + + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 0; +} + +.popover-list-item { + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: flex-start; + padding: 0 12px; + gap: 6px; + + /* width: 226px; */ + height: 48px; + + border-radius: 6px; + + cursor: pointer; + + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 0; +} + +.popover-list-item:first-child { + padding-top: 8px; +} + +.popover-list-item:last-child { + padding-bottom: 8px; +} + +.popover-icon { + width: 16px; + height: 16px; + + /* Inside auto layout */ + flex: none; + order: 1; + flex-grow: 0; +} + +.popover-icon svg { + background: #000000; +} + +.popover-text { + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 0px; + gap: 2px; + cursor: pointer; + + width: 180px; + height: 32px; + + /* Inside auto layout */ + flex: none; + order: 2; + flex-grow: 1; +} +.popover-text > label { + width: 180px; + height: 16px; + cursor: pointer; + + /* body/md/500 */ + font-family: 'Inter'; + font-style: normal; + font-weight: 700; + font-size: 13px; + line-height: 16px; + /* identical to box height, or 123% */ + display: flex; + align-items: center; + + color: #262626; + + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 0; +} +.popover-text > span { + width: 180px; + height: 14px; + + /* body/xs/500 */ + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-size: 11px; + line-height: 14px; + /* identical to box height, or 127% */ + display: flex; + align-items: center; + + color: #737373; + + /* Inside auto layout */ + flex: none; + order: 1; + align-self: stretch; + flex-grow: 0; +} + +/* additional commands */ +.available-commands-popover { + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 0px; + + position: absolute; + width: 320px; + /* height: 474px; */ + left: 0; + top: 100%; + + /* Inside auto layout */ + flex: none; + order: 2; + flex-grow: 0; + z-index: 2; +} + +.filter-pop-overs { + box-sizing: border-box; + + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 10px; + padding-bottom: 0; + gap: 8px; + + /* width: 320px; */ + /* height: 474px; */ + + background: #ffffff; + /* shadow/400 */ + box-shadow: 0px 5px 16px rgba(0, 0, 0, 0.15); + border-radius: 8px; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 0; +} + +.popovers-wrapper { + /* Auto layout */ + /* display: flex; */ + /* flex-direction: column; */ + /* align-items: flex-start; */ + padding: 0px; + gap: 8px; + + /* width: 300px; */ + /* height: 32px; */ + + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 0; +} +.input-controls { + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 0px; + gap: 4px; + + width: 300px; + /* height: 60px; */ + + /* Inside auto layout */ + flex: none; + order: 1; + flex-grow: 1; +} + +.input-field { + box-sizing: border-box; + + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + /* padding: 10px; */ + + /* width: 300px; */ + /* height: 60px; */ + + background: #ffffff; + /* border: 1px solid #d4d4d4; */ + border-radius: 6px; + + /* Inside auto layout */ + flex: none; + order: 1; + align-self: stretch; + flex-grow: 1; +} + +.input-field input { + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + padding: 5px 10px; + gap: 10px; + + /* width: 300px; */ + /* height: 32px; */ + + /* Inside auto layout */ + flex: none; + order: 2; + align-self: stretch; + flex-grow: 1; +} + +.input-field input::placeholder { + width: 254px; + height: 20px; + + /* body-text/md/500 */ + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-size: 13px; + line-height: 20px; + /* identical to box height, or 154% */ + + color: #a3a3a3; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 1; +} +.list-of-options { + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 0px; + gap: 6px; + + /* width: 300px; */ + max-height: 414px; + overflow-y: scroll; + + /* Inside auto layout */ + flex: none; + order: 1; + align-self: stretch; + flex-grow: 1; +} + +.list-of-options-item { + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: flex-start; + padding: 8px 12px; + gap: 6px; + + /* width: 300px; */ + /* height: 32px; */ + + border-radius: 6px; + + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 0; +} + +.list-of-options > .popover-list-item { + height: 32px; +} + +.buttons-grouped { + display: flex; + flex-direction: row; + align-items: flex-start; + padding: 0px; + gap: 1px; + + /* width: 105px; */ + /* height: 32px; */ + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 0; +} + +.left-half { + /* Auto layout */ + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 8px 12px; + gap: 8px; + border: none; + /* width: 72px; */ + /* height: 32px; */ + + background: #0e0e0e; + border-radius: 6px 0px 0px 6px; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 0; +} + +.left-half > span { + /* width: 24px; */ + /* height: 16px; */ + + /* body/md/500 */ + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-size: 13px; + line-height: 16px; + /* identical to box height, or 123% */ + display: flex; + align-items: center; + + color: #fafafa; +} +.right-half { + /* Auto layout */ + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 4px; + gap: 8px; + border: none; + + width: 32px; + height: 32px; + + background: #0e0e0e; + border-radius: 0px 6px 6px 0px; + + /* Inside auto layout */ + flex: none; + order: 1; + flex-grow: 0; +} + +.filter-pop-overs > .popover-list-item { + height: 32px; +} + +.notebook-extra-actions { + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + padding: 0px; + gap: 8px; + + width: 138px; + height: 32px; + + /* Inside auto layout */ + flex: none; + order: 1; + flex-grow: 0; +} + +.kernel-info-and-actions { + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + padding: 0px; + gap: 4px; + + width: 138px; + height: 32px; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 1; +} + +.kernel-button { + box-sizing: border-box; + + /* Auto layout */ + display: flex; + flex-direction: row; + align-items: center; + padding: 8px 12px; + gap: 8px; + + /* width: 138px; */ + /* height: 32px; */ + + border: 1px solid #d4d4d4; + border-radius: 6px; + + background-color: #ffffff; + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 1; +} + +.indicator { + width: 16px; + height: 16px; + + /* Inside auto layout */ + flex: none; + order: 0; + flex-grow: 0; +} + +.indicator.idle rect:first-child { + fill: #f2f6f8; +} + +.indicator.idle rect:last-child { + fill: #b3c4d8; +} + +.indicator.busy rect:last-child { + stroke: red; + fill: red; +} + +.kernel-text { + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + padding: 0px; + width: 90px; + height: 16px; + + /* Inside auto layout */ + flex: none; + order: 1; + flex-grow: 1; +} + +.kernel-text > span { + width: 90px; + height: 16px; + + /* body/md/500 */ + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-size: 13px; + line-height: 16px; + /* identical to box height, or 123% */ + text-overflow: ellipsis; + white-space: nowrap; + color: #262626; + overflow: hidden; + + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 0; +} diff --git a/demo/src/components/FileMenuBar/useGetJupyterInfo.ts b/demo/src/components/FileMenuBar/useGetJupyterInfo.ts new file mode 100644 index 0000000..af3b999 --- /dev/null +++ b/demo/src/components/FileMenuBar/useGetJupyterInfo.ts @@ -0,0 +1,12 @@ +import { IJupyterInfo, jupyterInfo } from 'jupyter-iframe-commands-host'; +import { useCallback, useSyncExternalStore } from 'react'; + +export function useGetJupyterInfo(selector: (state: IJupyterInfo) => T): T { + const getSnapshot = useCallback(() => { + const snapshot = selector(jupyterInfo.getState()); + + return snapshot; + }, [selector]); + + return useSyncExternalStore(jupyterInfo.subscribe, getSnapshot); +} diff --git a/demo/src/components/FileMenuBar/usePopover.ts b/demo/src/components/FileMenuBar/usePopover.ts new file mode 100644 index 0000000..a8e8d8a --- /dev/null +++ b/demo/src/components/FileMenuBar/usePopover.ts @@ -0,0 +1,28 @@ +import { useCallback, useEffect, useRef, useState } from 'react'; + +export function usePopover(initialOpen = false) { + const [isOpen, setIsOpen] = useState(initialOpen); + const ref = useRef(null); + + const open = useCallback(() => setIsOpen(true), []); + const close = useCallback(() => setIsOpen(false), []); + const toggle = useCallback(() => setIsOpen(prev => !prev), []); + + useEffect(() => { + const handleClickOutside = (event: MouseEvent) => { + if (ref.current && !ref.current.contains(event.target as Node)) { + setIsOpen(false); + } + }; + + if (isOpen) { + document.addEventListener('mousedown', handleClickOutside); + } + + return () => { + document.removeEventListener('mousedown', handleClickOutside); + }; + }, [isOpen]); + + return { isOpen, open, close, toggle, ref }; +} diff --git a/demo-react/src/components/InputArea.tsx b/demo/src/components/InputArea.tsx similarity index 85% rename from demo-react/src/components/InputArea.tsx rename to demo/src/components/InputArea.tsx index d812bd9..fa16fa7 100644 --- a/demo-react/src/components/InputArea.tsx +++ b/demo/src/components/InputArea.tsx @@ -5,8 +5,8 @@ interface IInputAreaProps { } const InputArea = ({ submitCommand }: IInputAreaProps) => { - const [command, setCommand] = useState('apputils:change-theme'); - const [args, setArgs] = useState('{"theme":"JupyterLab Light"}'); + const [command, setCommand] = useState(''); + const [args, setArgs] = useState(''); const submit = async (e: FormEvent) => { e.preventDefault(); @@ -39,7 +39,7 @@ const InputArea = ({ submitCommand }: IInputAreaProps) => { }} value={args} /> - diff --git a/demo-react/src/components/Instructions.tsx b/demo/src/components/Instructions.tsx similarity index 98% rename from demo-react/src/components/Instructions.tsx rename to demo/src/components/Instructions.tsx index 1726474..a08da54 100644 --- a/demo-react/src/components/Instructions.tsx +++ b/demo/src/components/Instructions.tsx @@ -31,6 +31,7 @@ const Instructions = ({ submitCommand }: IIinstructionProps) => { diff --git a/demo-react/src/components/ModeToggle.tsx b/demo/src/components/ModeToggle.tsx similarity index 90% rename from demo-react/src/components/ModeToggle.tsx rename to demo/src/components/ModeToggle.tsx index 35f0536..8438e77 100644 --- a/demo-react/src/components/ModeToggle.tsx +++ b/demo/src/components/ModeToggle.tsx @@ -1,7 +1,7 @@ import { ChangeEvent, useEffect, useState } from 'react'; const ModeToggle = () => { - const [mode, setMode] = useState('lab'); + const [mode, setMode] = useState('notebook'); useEffect(() => { const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; @@ -18,9 +18,7 @@ const ModeToggle = () => { if (isLite) { currentUrl = `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'index.html'}`; } else { - currentUrl.pathname = isNotebookView - ? '/notebooks/example.ipynb' - : '/lab'; + currentUrl.pathname = isNotebookView ? '/notebooks/soma.ipynb' : '/lab'; currentUrl.search = ''; } diff --git a/demo/src/components/NoteBookBrowser.tsx b/demo/src/components/NoteBookBrowser.tsx new file mode 100644 index 0000000..58a2cc8 --- /dev/null +++ b/demo/src/components/NoteBookBrowser.tsx @@ -0,0 +1,68 @@ +import { useRef } from 'react'; + +const sampleNotebooks = ['example.ipynb', 'soma.ipynb']; + +const NoteBookBrowser = () => { + const dialogRef = useRef(null); + + const handleOpenDialog = async () => { + if (dialogRef.current) { + dialogRef.current.showModal(); + } + }; + + const handleCloseDialog = () => { + if (dialogRef.current) { + dialogRef.current.close(); + } + }; + + const handleClick = (filename: string) => { + const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; + + iframe.src = `http://localhost:8888/notebooks/${filename}`; + dialogRef.current?.close(); + }; + + return ( +
+ + + +

Available Commands

+
+ {sampleNotebooks.map(nb => { + return ( + + ); + })} +
+
+ +
+
+
+ ); +}; + +export default NoteBookBrowser; diff --git a/demo-react/src/index.css b/demo/src/index.css similarity index 81% rename from demo-react/src/index.css rename to demo/src/index.css index e9d2979..2724e41 100644 --- a/demo-react/src/index.css +++ b/demo/src/index.css @@ -22,7 +22,7 @@ body { align-items: center; padding: 1.5rem; background-color: white; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); + /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */ } h1 { @@ -84,7 +84,7 @@ input[type='text']:focus { color: inherit; } -button { +.demo-button { padding: 0.75rem 1.5rem; background-color: var(--primary-color); color: white; @@ -98,8 +98,8 @@ button { transform 0.1s; } -button:hover { - background-color: var(--primary-hover); +button { + cursor: pointer; } button:active { @@ -129,7 +129,7 @@ button:active { /* Dialog styles */ dialog { padding: 2rem; - max-width: 600px; + /* max-width: 600px; */ border: none; border-radius: 12px; box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); @@ -190,20 +190,37 @@ dialog button[value='close']:hover { font-family: monospace; } +#notebook-list { + max-height: 300px; + overflow-y: auto; + padding: 0.5rem; + margin: -0.5rem 0; + font-family: monospace; + display: flex; + flex-direction: column; + gap: 0.5rem; +} + +#notebook-list button { + display: flex; + justify-content: center; +} + #commands-list div { padding: 0.25rem 0; } /* Responsive iframe */ #jupyterlab { - width: calc(100% - 0.5vw); + width: calc(100%); + /* width: calc(100% - 0.5vw); */ height: calc(100vh - 200px); border: none; - border-radius: 8px; - margin-top: 0.25vw; - background-color: white; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); - align-self: center; + /* border-radius: 8px; */ + /* margin-top: 0.25vw; */ + /* background-color: white; */ + /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */ + /* align-self: center; */ } .mode-toggle { @@ -259,7 +276,7 @@ dialog button[value='close']:hover { user-select: none; } -.lm-TabBar-tabLabel { +/* .lm-TabBar-tabLabel { background-color: #2980b9; font-size: 125px; } @@ -267,8 +284,30 @@ dialog button[value='close']:hover { .jp-Launcher-body, .jp-WindowedPanel-outer { background-color: rgb(110, 49, 49) !important; -} +} */ + +.iframe-container { + /* border: 1px solid #d4d4d4; + margin: 0 1rem; + border-radius: 8px; */ + box-sizing: border-box; + margin: 0 1rem; + + /* Auto layout */ + display: flex; + flex-direction: column; + align-items: flex-start; + padding: 0px; + + /* width: 1168px; */ + /* height: 880px; */ + + border: 1px solid #ededed; + border-radius: 8px; -.jp-MarkdownOutput { - background-color: rebeccapurple; + /* Inside auto layout */ + flex: none; + order: 0; + align-self: stretch; + flex-grow: 1; } diff --git a/demo/src/jupyter.css b/demo/src/jupyter.css new file mode 100644 index 0000000..4dc12c1 --- /dev/null +++ b/demo/src/jupyter.css @@ -0,0 +1,297 @@ +:root { + --jp-mirror-editor-keyword-color: #581c87 !important; + --jp-mirror-editor-builtin-color: #2563eb !important; + --jp-mirror-editor-link-color: #644120 !important; + --jp-content-font-color1: #525252 !important; + --jp-cell-editor-background: #fdfafc !important; + --jp-cell-editor-border-color: #ededed !important; + --jp-cell-editor-active-background: #f5f5f5 !important; + --jp-cell-editor-active-border-color: #d4d4d4 !important; + --jp-code-font-size: 12px !important; + --jp-code-font-family: 'Fira Code' !important; + --jp-code-font-family-default: 'Fira Code' !important; + --jp-cell-inprompt-font-color: #525252 !important; + --jp-cell-prompt-not-active-font-color: #737373 !important; + --jp-content-font-size1: 12px !important; + --jp-content-font-size5: 24px !important; + --jp-content-font-color1: #262626 !important; + --jp-content-font-family: Inter !important; + --jp-content-line-height: 16px !important; + --jp-mirror-editor-header-color: #2463eb !important; + --jp-input-border-color: #d4d4d4 !important; + --jp-input-background: #ffffff !important; + --jp-accept-color-normal: #0e0e0e !important; + --jp-accept-color-hover: #282828 !important; + --jp-reject-color-hover: #d8d8d8 !important; +} + +#menu-panel-wrapper { + display: none; +} + +#main-panel { + top: unset !important; + box-shadow: #2980b9; +} + +.jp-InputArea-editor { + border-radius: 6px; +} + +.jp-MarkdownOutput { + border-radius: 0.5rem; + border: 1px solid #ededed; + padding: 0 0.3rem; + /* border: 0; */ + margin: 0; + /* padding: 0; */ + background-color: #ffffff; + text-shadow: none; +} + +.jp-MarkdownOutput > h1 { + /* font-family: 'Inter'; */ + font-weight: 700; + line-height: 30px; + + color: #262626; +} + +.jp-mod-selected .jp-MarkdownOutput { + background-color: #f5f5f5; +} + +.jp-Notebook.jp-mod-commandMode .jp-Cell.jp-mod-active:focus-visible { + box-shadow: unset; +} + +.lm-SplitPanel-child { + background-color: #ffffff; +} + +.jp-WindowedPanel-outer { + background-color: #ffffff !important; + padding: 0; +} + +body[data-notebook='notebooks'] .jp-WindowedPanel-viewport { + box-shadow: none; +} + +.jp-NotebookPanel-toolbar { + display: none; +} + +.jp-NotebookPanel-notebook { + top: 0 !important; +} + +.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser { + visibility: hidden; +} + +.jp-cell-toolbar { + padding: 2px; + border: 1px solid #ededed; + border-radius: 4px; + background-color: #ffffff !important; + right: 12px; + top: -14px; + box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.08) !important; + border-radius: 4px; +} + +.jp-cell-toolbar svg path { + fill: #525252 !important; +} + +.jp-Cell-inputArea { + overflow: visible; +} + +.jp-MarkdownOutput:hover, +.jp-InputArea-editor:hover { + filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.08)); + background-color: #fafafa !important; +} + +.cm-gutter.cm-lineNumbers { + background: #e5e5e5; +} + +.cm-lineNumbers > .cm-gutterElement { + font-family: 'Fira Code'; + color: #525252; +} + +.jp-InputArea-editor .cm-gutters { + border-right: 0; +} + +.jp-Dialog-content { + min-width: 400px; + border-radius: 16px; + background-color: #ffffff; + box-shadow: 0px 16px 20px -4px rgba(0, 0, 0, 0.15); + padding: 0; + border: 1px solid transparent; + resize: none; +} + +.jp-Dialog-header { + padding: 16px 24px; + /* font-style: normal; */ + /* line-height: 24px; */ + color: #262626; + font-family: 'Inter'; + font-weight: 700; + font-size: 20px; +} + +:not(.jp-mod-styled).jp-Dialog-body { + border-top: 1px solid #d4d4d4; + border-bottom: 1px solid #d4d4d4; + padding: 16px 48px 32px; + margin: 0 -24px; + gap: 4px; +} + +input.jp-mod-styled.jp-Dialog-body { + margin: 16px; +} + +.jp-Dialog-body > label { + height: 19px; + font-family: 'Inter'; + /* font-style: normal; */ + font-weight: 600; + font-size: 12px; + line-height: 19px; + color: #525252; +} + +.jp-Dialog-body > .jp-select-wrapper { + height: 40px; +} + +.jp-Dialog-body > .jp-select-wrapper > select { + /* body-text/md/500 */ + font-family: 'Inter'; + /* font-style: normal; */ + font-weight: 500; + font-size: 13px; + /* line-height: 20px; */ + /* identical to box height, or 154% */ + color: #262626; +} + +.jp-Dialog-body > .jp-select-wrapper svg { + top: 11px; + stroke: #737373; +} + +.jp-Dialog-footer { + padding: 16px 24px; + background-color: #f5f5f5; + margin: 0; +} + +label[title~='kernel'] { + position: absolute; + top: -35px; + left: 21px; + height: 16px; + /* body/sm/500 */ + font-family: 'Inter'; + font-style: normal; + font-weight: 500; + font-size: 12px; + line-height: 16px; + /* identical to box height, or 133% */ + display: flex; + align-items: center; + text-align: center; + color: #262626; +} + +label[title~='kernel'] > input[type='checkbox'] { + height: 16px !important; + width: 16px; + background-color: #fff; + outline: 1px solid #d4d4d4; + border-radius: 4px; + margin-right: 8px; + border: none; + outline: none; + accent-color: #282828; +} + +input.jp-mod-styled:focus { + border-color: #0e0e0e; +} + +input[type='checkbox'].jp-mod-styled:focus-visible { + outline-color: #0e0e0e; +} + +.jp-mod-focused { + outline-color: #0e0e0e !important; + border-color: #0e0e0e !important; + /* background-color: red; */ + color: green; +} + +dialog select:focus { + border-color: #0e0e0e; +} + +button.jp-mod-styled { + height: 40px; + display: flex; + padding: 12px 16px; + align-items: center; + width: 69px; + justify-content: center; +} + +.jp-Dialog-buttonLabel { + font-family: 'Inter'; + font-style: normal; + font-weight: 600; + font-size: 13px; + line-height: 16px; + /* identical to box height, or 123% */ + display: flex; + align-items: center; + color: #fafafa; +} + +.jp-Dialog-button.jp-mod-reject.jp-mod-styled { + background-color: transparent; +} + +.jp-Dialog-button.jp-mod-reject > .jp-Dialog-buttonLabel { + color: #262626; +} + +.jp-select-wrapper > .jp-mod-styled > optgroup { + font-family: Inter; + font-weight: 600; + font-size: 12px; + line-height: 19px; + letter-spacing: 0%; +} + +.jp-select-wrapper > .jp-mod-styled > optgroup > option { + font-family: Inter; + font-weight: 400; + font-size: 13px; + line-height: 20px; + letter-spacing: 0%; + color: #000000de; +} + +.jp-ThemedContainer { + border-top-left-radius: 0; + border-top-right-radius: 0; +} diff --git a/demo/src/main.js b/demo/src/main.js deleted file mode 100644 index 06a4ba1..0000000 --- a/demo/src/main.js +++ /dev/null @@ -1,159 +0,0 @@ -/* eslint-disable @typescript-eslint/quotes */ -/* eslint-disable no-undef */ -import { createBridge } from 'jupyter-iframe-commands-host'; - -const commandBridge = createBridge({ iframeId: 'jupyterlab' }); - -const submitCommand = async (command, args) => { - try { - await commandBridge.execute(command, args ? JSON.parse(args) : {}); - } catch (e) { - document.getElementById('error-dialog').innerHTML = `${e}`; - errorDialog.showModal(); - } -}; - -// Create and append dialogs to the document -const instructionsDialog = document.createElement('dialog'); -instructionsDialog.innerHTML = ` -
-
-

Instructions

-

To use this demo simply enter a command in the command input and any arguments for that command in the args input.

-

Click the List Available Commands button to see a list of available commands.

-
-

Some commands are listed here for convenience:

-
-
    -
  • application:toggle-left-area
  • -
  • apputils:activate-command-palette
  • -
  • apputils:display-shortcuts
  • -
  • notebook:create-new
  • -
-
-

And some with arguments:

-
-
    -
  • Command: apputils:change-theme
  • -
  • Args: { 'theme': 'JupyterLab Light' }
  • -
    -
  • Command: apputils:change-theme
  • -
  • Args: { 'theme': 'JupyterLab Dark' }
  • -
-
-
-

For even more convenience you can also select a command from the dropdown:

- -
-
- - -
-
-
- Check the README for more detailed instructions. -
-`; - -const listCommandsDialog = document.createElement('dialog'); -listCommandsDialog.innerHTML = ` -
-

Available Commands

-
-
- -
-
-`; - -const errorDialog = document.createElement('dialog'); -errorDialog.innerHTML = ` -
-

âš  Error

-
-
- -
-
-`; - -document.body.appendChild(instructionsDialog); -document.body.appendChild(listCommandsDialog); -document.body.appendChild(errorDialog); - -document.getElementById('instructions').addEventListener('click', () => { - instructionsDialog.showModal(); -}); - -document - .getElementById('command-select-submit') - .addEventListener('click', async e => { - e.preventDefault(); - const select = document.getElementById('command-select'); - let command = select.value; - - if (command) { - let args; - if (command.includes('Light') || command.includes('Dark')) { - args = `{"theme": "${command}"}`; - command = 'apputils:change-theme'; - } - await submitCommand(command, args); - } - instructionsDialog.close(); - }); - -document.getElementById('list-commands').addEventListener('click', async () => { - const commands = await commandBridge.listCommands(); - commands.sort(); - document.getElementById('commands-list').innerHTML = commands - .map(item => `
${item}
`) - .join(''); - listCommandsDialog.showModal(); -}); - -document.getElementById('commands').addEventListener('submit', async e => { - e.preventDefault(); - const command = document.querySelector('input[name="command"]').value; - - // Single quotes cause an error - const args = document - .querySelector('input[name="args"]') - .value.replace(/'/g, '"'); - - await submitCommand(command, args); -}); - -// Handle mode toggle -const iframe = document.getElementById('jupyterlab'); -const modeRadios = document.querySelectorAll('input[name="mode"]'); - -modeRadios.forEach(radio => { - radio.addEventListener('change', e => { - const isNotebookView = e.target.value === 'notebook'; - let currentUrl = new URL(iframe.src); - const isLite = currentUrl.pathname.includes('lite'); - - if (isLite) { - currentUrl = `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'lab'}`; - } else { - currentUrl.pathname = isNotebookView - ? '/notebooks/example.ipynb' - : '/lab'; - currentUrl.search = ''; - } - - iframe.src = currentUrl.toString(); - }); -}); diff --git a/demo-react/src/main.tsx b/demo/src/main.tsx similarity index 90% rename from demo-react/src/main.tsx rename to demo/src/main.tsx index df655ea..81d5d5c 100644 --- a/demo-react/src/main.tsx +++ b/demo/src/main.tsx @@ -1,7 +1,8 @@ import { StrictMode } from 'react'; import { createRoot } from 'react-dom/client'; -import './index.css'; import App from './App.tsx'; +import './index.css'; +import './jupyter.css'; createRoot(document.getElementById('root')!).render( diff --git a/demo/src/style.css b/demo/src/style.css deleted file mode 100644 index 73ca349..0000000 --- a/demo/src/style.css +++ /dev/null @@ -1,260 +0,0 @@ -:root { - --primary-color: #3498db; - --primary-hover: #2980b9; - --background-color: #f8f9fa; - --text-color: #2c3e50; - --border-color: #e0e0e0; -} - -body { - margin: 0; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, - 'Helvetica Neue', Arial, sans-serif; - color: var(--text-color); - background-color: var(--background-color); - display: flex; - flex-direction: column; -} - -.demo-top { - display: flex; - flex-direction: column; - align-items: center; - padding: 1.5rem; - background-color: white; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); -} - -h1 { - margin: 0 0 1.5rem 0; - color: var(--text-color); - font-size: 2rem; - font-weight: 600; -} - -.input-area { - display: flex; - flex-direction: column; - gap: 1rem; - width: 100%; - max-width: 800px; -} - -#commands { - display: flex; - gap: 1rem; - width: 100%; - flex-wrap: wrap; -} - -input[type='text'] { - flex: 1; - min-width: 200px; - padding: 0.75rem 1rem; - border: 1px solid var(--border-color); - border-radius: 6px; - font-size: 1rem; - transition: - border-color 0.2s, - box-shadow 0.2s; -} - -input[type='text']:focus { - outline: none; - border-color: var(--primary-color); - box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); -} - -.button-row { - display: flex; - gap: 1rem; - margin-bottom: 1.5rem; - justify-content: center; -} - -.button-row button { - padding: 0.5rem 1rem; - border: none; - border-radius: 4px; - cursor: pointer; - font-size: 1rem; - display: inline-flex; - align-items: center; - gap: 0.5rem; - color: inherit; -} - -button { - padding: 0.75rem 1.5rem; - background-color: var(--primary-color); - color: white; - border: none; - border-radius: 6px; - font-size: 1rem; - font-weight: 500; - cursor: pointer; - transition: - background-color 0.2s, - transform 0.1s; -} - -button:hover { - background-color: var(--primary-hover); -} - -button:active { - transform: translateY(1px); -} - -#list-commands { - background-color: transparent; - color: var(--primary-color); - border: 1px solid var(--primary-color); -} - -#list-commands:hover { - background-color: rgba(52, 152, 219, 0.1); -} - -#instructions { - background-color: transparent; - color: var(--primary-color); - border: 1px solid var(--primary-color); -} - -#instructions:hover { - background-color: rgba(52, 152, 219, 0.1); -} - -/* Dialog styles */ -dialog { - padding: 2rem; - max-width: 600px; - border: none; - border-radius: 12px; - box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); - background: white; -} - -dialog::backdrop { - background: rgba(0, 0, 0, 0.6); - backdrop-filter: blur(2px); -} - -dialog form { - display: flex; - flex-direction: column; - gap: 1.5rem; -} - -dialog select { - width: 100%; - padding: 0.75rem; - border: 1px solid var(--border-color); - border-radius: 6px; - font-size: 1rem; - background-color: white; -} - -dialog select:focus { - outline: none; - border-color: var(--primary-color); - box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); -} - -dialog button[value='cancel'], -dialog button[value='close'] { - background-color: transparent; - color: var(--text-color); - border: 1px solid var(--border-color); - align-items: right; -} - -dialog button[value='cancel']:hover, -dialog button[value='close']:hover { - background-color: rgba(0, 0, 0, 0.05); -} - -.dialog-buttons { - display: flex; - justify-content: flex-end; - gap: 0.5rem; - margin-top: 1rem; -} - -#commands-list { - max-height: 300px; - overflow-y: auto; - padding: 0.5rem; - margin: -0.5rem 0; - font-family: monospace; -} - -#commands-list div { - padding: 0.25rem 0; -} - -/* Responsive iframe */ -#jupyterlab { - width: calc(100% - 0.5vw); - height: calc(100vh - 200px); - border: none; - border-radius: 8px; - margin-top: 0.25vw; - background-color: white; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); - align-self: center; -} - -.mode-toggle { - display: flex; - gap: 0; - align-items: center; - border-radius: 6px; - background-color: #f0f0f0; - border: 1px solid #e0e0e0; -} - -.mode-toggle label { - display: flex; - height: 100%; - align-items: center; - gap: 0.5rem; - cursor: pointer; - padding: 4px 12px; - border-radius: 4px; - transition: - background-color 0.2s, - color 0.2s; -} - -.mode-toggle label:hover { - background-color: #e4e4e4; -} - -.mode-toggle input[type='radio'] { - position: absolute; - opacity: 0; - width: 0; - height: 0; -} - -.mode-toggle input[type='radio']:checked + span { - color: white; -} - -.mode-toggle input[type='radio']:focus + span { - outline: 2px solid #3498db; - outline-offset: 2px; -} - -.mode-toggle label:has(input[type='radio']:checked) { - background-color: #3498db; - color: white; -} - -.mode-toggle span { - font-size: 0.9rem; - font-weight: 500; - user-select: none; -} diff --git a/demo-react/tsconfig.app.json b/demo/tsconfig.app.json similarity index 100% rename from demo-react/tsconfig.app.json rename to demo/tsconfig.app.json diff --git a/demo/tsconfig.json b/demo/tsconfig.json index 0511b9f..1ffef60 100644 --- a/demo/tsconfig.json +++ b/demo/tsconfig.json @@ -1,23 +1,7 @@ { - "compilerOptions": { - "target": "ES2020", - "useDefineForClassFields": true, - "module": "ESNext", - "lib": ["ES2020", "DOM", "DOM.Iterable"], - "skipLibCheck": true, - - /* Bundler mode */ - "moduleResolution": "bundler", - "allowImportingTsExtensions": true, - "isolatedModules": true, - "moduleDetection": "force", - "noEmit": true, - - /* Linting */ - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true - }, - "include": ["src"] + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] } diff --git a/demo-react/tsconfig.node.json b/demo/tsconfig.node.json similarity index 100% rename from demo-react/tsconfig.node.json rename to demo/tsconfig.node.json diff --git a/demo-react/vite.config.ts b/demo/vite.config.ts similarity index 100% rename from demo-react/vite.config.ts rename to demo/vite.config.ts diff --git a/packages/css-extension/.copier-answers.yml b/packages/css-extension/.copier-answers.yml new file mode 100644 index 0000000..6d8633b --- /dev/null +++ b/packages/css-extension/.copier-answers.yml @@ -0,0 +1,14 @@ +# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY +_commit: v4.3.8 +_src_path: https://github.com/jupyterlab/extension-template +author_email: '' +author_name: gjmooney +has_binder: false +has_settings: false +kind: frontend +labextension_name: jupyter-css-loader +project_short_description: A JupyterLab extension. +python_name: jupyter_css_loader +repository: '' +test: true + diff --git a/packages/css-extension/.github/workflows/build.yml b/packages/css-extension/.github/workflows/build.yml new file mode 100644 index 0000000..b073659 --- /dev/null +++ b/packages/css-extension/.github/workflows/build.yml @@ -0,0 +1,153 @@ +name: Build + +on: + push: + branches: main + pull_request: + branches: '*' + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Base Setup + uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 + + - name: Install dependencies + run: python -m pip install -U "jupyterlab>=4.0.0,<5" + + - name: Lint the extension + run: | + set -eux + jlpm + jlpm run lint:check + + - name: Test the extension + run: | + set -eux + jlpm run test + + - name: Build the extension + run: | + set -eux + python -m pip install .[test] + + jupyter labextension list + jupyter labextension list 2>&1 | grep -ie "jupyter-css-loader.*OK" + python -m jupyterlab.browser_check + + - name: Package the extension + run: | + set -eux + + pip install build + python -m build + pip uninstall -y "jupyter_css_loader" jupyterlab + + - name: Upload extension packages + uses: actions/upload-artifact@v4 + with: + name: extension-artifacts + path: dist/jupyter_css_loader* + if-no-files-found: error + + test_isolated: + needs: build + runs-on: ubuntu-latest + + steps: + - name: Install Python + uses: actions/setup-python@v5 + with: + python-version: '3.9' + architecture: 'x64' + - uses: actions/download-artifact@v4 + with: + name: extension-artifacts + - name: Install and Test + run: | + set -eux + # Remove NodeJS, twice to take care of system and locally installed node versions. + sudo rm -rf $(which node) + sudo rm -rf $(which node) + + pip install "jupyterlab>=4.0.0,<5" jupyter_css_loader*.whl + + + jupyter labextension list + jupyter labextension list 2>&1 | grep -ie "jupyter-css-loader.*OK" + python -m jupyterlab.browser_check --no-browser-test + + integration-tests: + name: Integration tests + needs: build + runs-on: ubuntu-latest + + env: + PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/pw-browsers + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Base Setup + uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 + + - name: Download extension package + uses: actions/download-artifact@v4 + with: + name: extension-artifacts + + - name: Install the extension + run: | + set -eux + python -m pip install "jupyterlab>=4.0.0,<5" jupyter_css_loader*.whl + + - name: Install dependencies + working-directory: ui-tests + env: + YARN_ENABLE_IMMUTABLE_INSTALLS: 0 + PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 + run: jlpm install + + - name: Set up browser cache + uses: actions/cache@v4 + with: + path: | + ${{ github.workspace }}/pw-browsers + key: ${{ runner.os }}-${{ hashFiles('ui-tests/yarn.lock') }} + + - name: Install browser + run: jlpm playwright install chromium + working-directory: ui-tests + + - name: Execute integration tests + working-directory: ui-tests + run: | + jlpm playwright test + + - name: Upload Playwright Test report + if: always() + uses: actions/upload-artifact@v4 + with: + name: jupyter_css_loader-playwright-tests + path: | + ui-tests/test-results + ui-tests/playwright-report + + check_links: + name: Check Links + runs-on: ubuntu-latest + timeout-minutes: 15 + steps: + - uses: actions/checkout@v4 + - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 + - uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1 diff --git a/packages/css-extension/.github/workflows/check-release.yml b/packages/css-extension/.github/workflows/check-release.yml new file mode 100644 index 0000000..c744278 --- /dev/null +++ b/packages/css-extension/.github/workflows/check-release.yml @@ -0,0 +1,30 @@ +name: Check Release +on: + push: + branches: ["main"] + pull_request: + branches: ["*"] + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + check_release: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Base Setup + uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 + - name: Check Release + uses: jupyter-server/jupyter_releaser/.github/actions/check-release@v2 + with: + + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Upload Distributions + uses: actions/upload-artifact@v4 + with: + name: jupyter_css_loader-releaser-dist-${{ github.run_number }} + path: .jupyter_releaser_checkout/dist diff --git a/packages/css-extension/.github/workflows/enforce-label.yml b/packages/css-extension/.github/workflows/enforce-label.yml new file mode 100644 index 0000000..725feab --- /dev/null +++ b/packages/css-extension/.github/workflows/enforce-label.yml @@ -0,0 +1,13 @@ +name: Enforce PR label + +on: + pull_request: + types: [labeled, unlabeled, opened, edited, synchronize] +jobs: + enforce-label: + runs-on: ubuntu-latest + permissions: + pull-requests: write + steps: + - name: enforce-triage-label + uses: jupyterlab/maintainer-tools/.github/actions/enforce-label@v1 diff --git a/packages/css-extension/.github/workflows/prep-release.yml b/packages/css-extension/.github/workflows/prep-release.yml new file mode 100644 index 0000000..67ecd98 --- /dev/null +++ b/packages/css-extension/.github/workflows/prep-release.yml @@ -0,0 +1,48 @@ +name: "Step 1: Prep Release" +on: + workflow_dispatch: + inputs: + version_spec: + description: "New Version Specifier" + default: "next" + required: false + branch: + description: "The branch to target" + required: false + post_version_spec: + description: "Post Version Specifier" + required: false + # silent: + # description: "Set a placeholder in the changelog and don't publish the release." + # required: false + # type: boolean + since: + description: "Use PRs with activity since this date or git reference" + required: false + since_last_stable: + description: "Use PRs with activity since the last stable git tag" + required: false + type: boolean +jobs: + prep_release: + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 + + - name: Prep Release + id: prep-release + uses: jupyter-server/jupyter_releaser/.github/actions/prep-release@v2 + with: + token: ${{ secrets.GITHUB_TOKEN }} + version_spec: ${{ github.event.inputs.version_spec }} + # silent: ${{ github.event.inputs.silent }} + post_version_spec: ${{ github.event.inputs.post_version_spec }} + branch: ${{ github.event.inputs.branch }} + since: ${{ github.event.inputs.since }} + since_last_stable: ${{ github.event.inputs.since_last_stable }} + + - name: "** Next Step **" + run: | + echo "Optional): Review Draft Release: ${{ steps.prep-release.outputs.release_url }}" diff --git a/packages/css-extension/.github/workflows/publish-release.yml b/packages/css-extension/.github/workflows/publish-release.yml new file mode 100644 index 0000000..c188106 --- /dev/null +++ b/packages/css-extension/.github/workflows/publish-release.yml @@ -0,0 +1,58 @@ +name: "Step 2: Publish Release" +on: + workflow_dispatch: + inputs: + branch: + description: "The target branch" + required: false + release_url: + description: "The URL of the draft GitHub release" + required: false + steps_to_skip: + description: "Comma separated list of steps to skip" + required: false + +jobs: + publish_release: + runs-on: ubuntu-latest + environment: release + permissions: + id-token: write + steps: + - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 + + - uses: actions/create-github-app-token@v1 + id: app-token + with: + app-id: ${{ vars.APP_ID }} + private-key: ${{ secrets.APP_PRIVATE_KEY }} + + - name: Populate Release + id: populate-release + uses: jupyter-server/jupyter_releaser/.github/actions/populate-release@v2 + with: + token: ${{ steps.app-token.outputs.token }} + branch: ${{ github.event.inputs.branch }} + release_url: ${{ github.event.inputs.release_url }} + steps_to_skip: ${{ github.event.inputs.steps_to_skip }} + + - name: Finalize Release + id: finalize-release + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + uses: jupyter-server/jupyter_releaser/.github/actions/finalize-release@v2 + with: + token: ${{ steps.app-token.outputs.token }} + release_url: ${{ steps.populate-release.outputs.release_url }} + + - name: "** Next Step **" + if: ${{ success() }} + run: | + echo "Verify the final release" + echo ${{ steps.finalize-release.outputs.release_url }} + + - name: "** Failure Message **" + if: ${{ failure() }} + run: | + echo "Failed to Publish the Draft Release Url:" + echo ${{ steps.populate-release.outputs.release_url }} diff --git a/packages/css-extension/.github/workflows/update-integration-tests.yml b/packages/css-extension/.github/workflows/update-integration-tests.yml new file mode 100644 index 0000000..68a4168 --- /dev/null +++ b/packages/css-extension/.github/workflows/update-integration-tests.yml @@ -0,0 +1,89 @@ +name: Update Playwright Snapshots + +on: + issue_comment: + types: [created, edited] + +permissions: + contents: write + pull-requests: write + +jobs: + update-snapshots: + if: > + ( + github.event.issue.author_association == 'OWNER' || + github.event.issue.author_association == 'COLLABORATOR' || + github.event.issue.author_association == 'MEMBER' || + github.event.comment.author_association == 'OWNER' || + github.event.comment.author_association == 'COLLABORATOR' || + github.event.comment.author_association == 'MEMBER' + ) && github.event.issue.pull_request && contains(github.event.comment.body, 'please update snapshots') + runs-on: ubuntu-latest + + steps: + - name: React to the triggering comment + run: | + gh api repos/${{ github.repository }}/issues/comments/${{ github.event.comment.id }}/reactions --raw-field 'content=+1' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Checkout + uses: actions/checkout@v4 + with: + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Get PR Info + id: pr + env: + PR_NUMBER: ${{ github.event.issue.number }} + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GH_REPO: ${{ github.repository }} + COMMENT_AT: ${{ github.event.comment.created_at }} + run: | + pr="$(gh api /repos/${GH_REPO}/pulls/${PR_NUMBER})" + head_sha="$(echo "$pr" | jq -r .head.sha)" + pushed_at="$(echo "$pr" | jq -r .pushed_at)" + + if [[ $(date -d "$pushed_at" +%s) -gt $(date -d "$COMMENT_AT" +%s) ]]; then + echo "Updating is not allowed because the PR was pushed to (at $pushed_at) after the triggering comment was issued (at $COMMENT_AT)" + exit 1 + fi + + echo "head_sha=$head_sha" >> $GITHUB_OUTPUT + + - name: Checkout the branch from the PR that triggered the job + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: gh pr checkout ${{ github.event.issue.number }} + + - name: Validate the fetched branch HEAD revision + env: + EXPECTED_SHA: ${{ steps.pr.outputs.head_sha }} + run: | + actual_sha="$(git rev-parse HEAD)" + + if [[ "$actual_sha" != "$EXPECTED_SHA" ]]; then + echo "The HEAD of the checked out branch ($actual_sha) differs from the HEAD commit available at the time when trigger comment was submitted ($EXPECTED_SHA)" + exit 1 + fi + + - name: Base Setup + uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 + + - name: Install dependencies + run: python -m pip install -U "jupyterlab>=4.0.0,<5" + + - name: Install extension + run: | + set -eux + jlpm + python -m pip install . + + - uses: jupyterlab/maintainer-tools/.github/actions/update-snapshots@v1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + # Playwright knows how to start JupyterLab server + start_server_script: 'null' + test_folder: ui-tests + npm_client: jlpm diff --git a/packages/css-extension/.gitignore b/packages/css-extension/.gitignore new file mode 100644 index 0000000..fd42c24 --- /dev/null +++ b/packages/css-extension/.gitignore @@ -0,0 +1,125 @@ +*.bundle.* +lib/ +node_modules/ +*.log +.eslintcache +.stylelintcache +*.egg-info/ +.ipynb_checkpoints +*.tsbuildinfo +jupyter_css_loader/labextension +# Version file is handled by hatchling +jupyter_css_loader/_version.py + +# Integration tests +ui-tests/test-results/ +ui-tests/playwright-report/ + +# Created by https://www.gitignore.io/api/python +# Edit at https://www.gitignore.io/?templates=python + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage/ +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# Mr Developer +.mr.developer.cfg +.project +.pydevproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# End of https://www.gitignore.io/api/python + +# OSX files +.DS_Store + +# Yarn cache +.yarn/ diff --git a/packages/css-extension/.prettierignore b/packages/css-extension/.prettierignore new file mode 100644 index 0000000..9051da5 --- /dev/null +++ b/packages/css-extension/.prettierignore @@ -0,0 +1,6 @@ +node_modules +**/node_modules +**/lib +**/package.json +!/package.json +jupyter_css_loader diff --git a/packages/css-extension/.yarnrc.yml b/packages/css-extension/.yarnrc.yml new file mode 100644 index 0000000..3186f3f --- /dev/null +++ b/packages/css-extension/.yarnrc.yml @@ -0,0 +1 @@ +nodeLinker: node-modules diff --git a/packages/css-extension/CHANGELOG.md b/packages/css-extension/CHANGELOG.md new file mode 100644 index 0000000..2d352af --- /dev/null +++ b/packages/css-extension/CHANGELOG.md @@ -0,0 +1,5 @@ +# Changelog + + + + diff --git a/packages/css-extension/LICENSE b/packages/css-extension/LICENSE new file mode 100644 index 0000000..ff05796 --- /dev/null +++ b/packages/css-extension/LICENSE @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2025, gjmooney +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/packages/css-extension/README.md b/packages/css-extension/README.md new file mode 100644 index 0000000..0a77e61 --- /dev/null +++ b/packages/css-extension/README.md @@ -0,0 +1,97 @@ +# jupyter_css_loader + +[![Github Actions Status](/workflows/Build/badge.svg)](/actions/workflows/build.yml) + +A JupyterLab extension. + +## Requirements + +- JupyterLab >= 4.0.0 + +## Install + +To install the extension, execute: + +```bash +pip install jupyter_css_loader +``` + +## Uninstall + +To remove the extension, execute: + +```bash +pip uninstall jupyter_css_loader +``` + +## Contributing + +### Development install + +Note: You will need NodeJS to build the extension package. + +The `jlpm` command is JupyterLab's pinned version of +[yarn](https://yarnpkg.com/) that is installed with JupyterLab. You may use +`yarn` or `npm` in lieu of `jlpm` below. + +```bash +# Clone the repo to your local environment +# Change directory to the jupyter_css_loader directory +# Install package in development mode +pip install -e "." +# Link your development version of the extension with JupyterLab +jupyter labextension develop . --overwrite +# Rebuild extension Typescript source after making changes +jlpm build +``` + +You can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension. + +```bash +# Watch the source directory in one terminal, automatically rebuilding when needed +jlpm watch +# Run JupyterLab in another terminal +jupyter lab +``` + +With the watch command running, every saved change will immediately be built locally and available in your running JupyterLab. Refresh JupyterLab to load the change in your browser (you may need to wait several seconds for the extension to be rebuilt). + +By default, the `jlpm build` command generates the source maps for this extension to make it easier to debug using the browser dev tools. To also generate source maps for the JupyterLab core extensions, you can run the following command: + +```bash +jupyter lab build --minimize=False +``` + +### Development uninstall + +```bash +pip uninstall jupyter_css_loader +``` + +In development mode, you will also need to remove the symlink created by `jupyter labextension develop` +command. To find its location, you can run `jupyter labextension list` to figure out where the `labextensions` +folder is located. Then you can remove the symlink named `jupyter-css-loader` within that folder. + +### Testing the extension + +#### Frontend tests + +This extension is using [Jest](https://jestjs.io/) for JavaScript code testing. + +To execute them, execute: + +```sh +jlpm +jlpm test +``` + +#### Integration tests + +This extension uses [Playwright](https://playwright.dev/docs/intro) for the integration tests (aka user level tests). +More precisely, the JupyterLab helper [Galata](https://github.com/jupyterlab/jupyterlab/tree/master/galata) is used to handle testing the extension in JupyterLab. + +More information are provided within the [ui-tests](./ui-tests/README.md) README. + +### Packaging the extension + +See [RELEASE](RELEASE.md) diff --git a/packages/css-extension/RELEASE.md b/packages/css-extension/RELEASE.md new file mode 100644 index 0000000..5989a1c --- /dev/null +++ b/packages/css-extension/RELEASE.md @@ -0,0 +1,80 @@ +# Making a new release of jupyter_css_loader + +The extension can be published to `PyPI` and `npm` manually or using the [Jupyter Releaser](https://github.com/jupyter-server/jupyter_releaser). + +## Manual release + +### Python package + +This extension can be distributed as Python packages. All of the Python +packaging instructions are in the `pyproject.toml` file to wrap your extension in a +Python package. Before generating a package, you first need to install some tools: + +```bash +pip install build twine hatch +``` + +Bump the version using `hatch`. By default this will create a tag. +See the docs on [hatch-nodejs-version](https://github.com/agoose77/hatch-nodejs-version#semver) for details. + +```bash +hatch version +``` + +Make sure to clean up all the development files before building the package: + +```bash +jlpm clean:all +``` + +You could also clean up the local git repository: + +```bash +git clean -dfX +``` + +To create a Python source package (`.tar.gz`) and the binary package (`.whl`) in the `dist/` directory, do: + +```bash +python -m build +``` + +> `python setup.py sdist bdist_wheel` is deprecated and will not work for this package. + +Then to upload the package to PyPI, do: + +```bash +twine upload dist/* +``` + +### NPM package + +To publish the frontend part of the extension as a NPM package, do: + +```bash +npm login +npm publish --access public +``` + +## Automated releases with the Jupyter Releaser + +The extension repository should already be compatible with the Jupyter Releaser. But +the GitHub repository and the package managers need to be properly set up. Please +follow the instructions of the Jupyter Releaser [checklist](https://jupyter-releaser.readthedocs.io/en/latest/how_to_guides/convert_repo_from_repo.html). + +Here is a summary of the steps to cut a new release: + +- Go to the Actions panel +- Run the "Step 1: Prep Release" workflow +- Check the draft changelog +- Run the "Step 2: Publish Release" workflow + +> [!NOTE] +> Check out the [workflow documentation](https://jupyter-releaser.readthedocs.io/en/latest/get_started/making_release_from_repo.html) +> for more information. + +## Publishing to `conda-forge` + +If the package is not on conda forge yet, check the documentation to learn how to add it: https://conda-forge.org/docs/maintainer/adding_pkgs.html + +Otherwise a bot should pick up the new version publish to PyPI, and open a new PR on the feedstock repository automatically. diff --git a/packages/css-extension/babel.config.js b/packages/css-extension/babel.config.js new file mode 100644 index 0000000..8b5c764 --- /dev/null +++ b/packages/css-extension/babel.config.js @@ -0,0 +1 @@ +module.exports = require('@jupyterlab/testutils/lib/babel.config'); diff --git a/packages/css-extension/install.json b/packages/css-extension/install.json new file mode 100644 index 0000000..d826ad4 --- /dev/null +++ b/packages/css-extension/install.json @@ -0,0 +1,5 @@ +{ + "packageManager": "python", + "packageName": "jupyter_css_loader", + "uninstallInstructions": "Use your Python package manager (pip, conda, etc.) to uninstall the package jupyter_css_loader" +} diff --git a/packages/css-extension/jest.config.js b/packages/css-extension/jest.config.js new file mode 100644 index 0000000..b0471e6 --- /dev/null +++ b/packages/css-extension/jest.config.js @@ -0,0 +1,28 @@ +const jestJupyterLab = require('@jupyterlab/testutils/lib/jest-config'); + +const esModules = [ + '@codemirror', + '@jupyter/ydoc', + '@jupyterlab/', + 'lib0', + 'nanoid', + 'vscode-ws-jsonrpc', + 'y-protocols', + 'y-websocket', + 'yjs' +].join('|'); + +const baseConfig = jestJupyterLab(__dirname); + +module.exports = { + ...baseConfig, + automock: false, + collectCoverageFrom: [ + 'src/**/*.{ts,tsx}', + '!src/**/*.d.ts', + '!src/**/.ipynb_checkpoints/*' + ], + coverageReporters: ['lcov', 'text'], + testRegex: 'src/.*/.*.spec.ts[x]?$', + transformIgnorePatterns: [`/node_modules/(?!${esModules}).+`] +}; diff --git a/packages/css-extension/jupyter_css_loader/__init__.py b/packages/css-extension/jupyter_css_loader/__init__.py new file mode 100644 index 0000000..b1ae025 --- /dev/null +++ b/packages/css-extension/jupyter_css_loader/__init__.py @@ -0,0 +1,16 @@ +try: + from ._version import __version__ +except ImportError: + # Fallback when using the package in dev mode without installing + # in editable mode with pip. It is highly recommended to install + # the package from a stable release or in editable mode: https://pip.pypa.io/en/stable/topics/local-project-installs/#editable-installs + import warnings + warnings.warn("Importing 'jupyter_css_loader' outside a proper installation.") + __version__ = "dev" + + +def _jupyter_labextension_paths(): + return [{ + "src": "labextension", + "dest": "jupyter-css-loader" + }] diff --git a/packages/css-extension/package.json b/packages/css-extension/package.json new file mode 100644 index 0000000..374b410 --- /dev/null +++ b/packages/css-extension/package.json @@ -0,0 +1,191 @@ +{ + "name": "jupyter-css-loader", + "version": "0.1.0", + "description": "A JupyterLab extension.", + "keywords": [ + "jupyter", + "jupyterlab", + "jupyterlab-extension" + ], + "homepage": "", + "bugs": { + "url": "/issues" + }, + "license": "BSD-3-Clause", + "author": "gjmooney", + "files": [ + "lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}", + "style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}", + "src/**/*.{ts,tsx}" + ], + "main": "lib/index.js", + "types": "lib/index.d.ts", + "style": "style/index.css", + "repository": { + "type": "git", + "url": ".git" + }, + "scripts": { + "build": "jlpm build:lib && jlpm build:labextension:dev", + "build:prod": "jlpm clean && jlpm build:lib:prod && jlpm build:labextension", + "build:labextension": "jupyter labextension build .", + "build:labextension:dev": "jupyter labextension build --development True .", + "build:lib": "tsc --sourceMap", + "build:lib:prod": "tsc", + "clean": "jlpm clean:lib", + "clean:lib": "rimraf lib tsconfig.tsbuildinfo", + "clean:lintcache": "rimraf .eslintcache .stylelintcache", + "clean:labextension": "rimraf jupyter_css_loader/labextension jupyter_css_loader/_version.py", + "clean:all": "jlpm clean:lib && jlpm clean:labextension && jlpm clean:lintcache", + "eslint": "jlpm eslint:check --fix", + "eslint:check": "eslint . --cache --ext .ts,.tsx", + "install:extension": "jlpm build", + "lint": "jlpm stylelint && jlpm prettier && jlpm eslint", + "lint:check": "jlpm stylelint:check && jlpm prettier:check && jlpm eslint:check", + "prettier": "jlpm prettier:base --write --list-different", + "prettier:base": "prettier \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", + "prettier:check": "jlpm prettier:base --check", + "stylelint": "jlpm stylelint:check --fix", + "stylelint:check": "stylelint --cache \"style/**/*.css\"", + "test": "jest --coverage", + "watch": "run-p watch:src watch:labextension", + "watch:src": "tsc -w --sourceMap", + "watch:labextension": "jupyter labextension watch ." + }, + "dependencies": { + "@jupyterlab/application": "^4.0.0" + }, + "devDependencies": { + "@jupyterlab/builder": "^4.0.0", + "@jupyterlab/testutils": "^4.0.0", + "@types/jest": "^29.2.0", + "@types/json-schema": "^7.0.11", + "@types/react": "^18.0.26", + "@types/react-addons-linked-state-mixin": "^0.14.22", + "@typescript-eslint/eslint-plugin": "^6.1.0", + "@typescript-eslint/parser": "^6.1.0", + "css-loader": "^6.7.1", + "eslint": "^8.36.0", + "eslint-config-prettier": "^8.8.0", + "eslint-plugin-prettier": "^5.0.0", + "jest": "^29.2.0", + "npm-run-all2": "^7.0.1", + "prettier": "^3.0.0", + "rimraf": "^5.0.1", + "source-map-loader": "^1.0.2", + "style-loader": "^3.3.1", + "stylelint": "^15.10.1", + "stylelint-config-recommended": "^13.0.0", + "stylelint-config-standard": "^34.0.0", + "stylelint-csstree-validator": "^3.0.0", + "stylelint-prettier": "^4.0.0", + "typescript": "~5.0.2", + "yjs": "^13.5.0" + }, + "sideEffects": [ + "style/*.css", + "style/index.js" + ], + "styleModule": "style/index.js", + "publishConfig": { + "access": "public" + }, + "jupyterlab": { + "extension": true, + "outputDir": "jupyter_css_loader/labextension" + }, + "eslintIgnore": [ + "node_modules", + "dist", + "coverage", + "**/*.d.ts", + "tests", + "**/__tests__", + "ui-tests" + ], + "eslintConfig": { + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:prettier/recommended" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "project": "tsconfig.json", + "sourceType": "module" + }, + "plugins": [ + "@typescript-eslint" + ], + "rules": { + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": "interface", + "format": [ + "PascalCase" + ], + "custom": { + "regex": "^I[A-Z]", + "match": true + } + } + ], + "@typescript-eslint/no-unused-vars": [ + "warn", + { + "args": "none" + } + ], + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-namespace": "off", + "@typescript-eslint/no-use-before-define": "off", + "@typescript-eslint/quotes": [ + "error", + "single", + { + "avoidEscape": true, + "allowTemplateLiterals": false + } + ], + "curly": [ + "error", + "all" + ], + "eqeqeq": "error", + "prefer-arrow-callback": "error" + } + }, + "prettier": { + "singleQuote": true, + "trailingComma": "none", + "arrowParens": "avoid", + "endOfLine": "auto", + "overrides": [ + { + "files": "package.json", + "options": { + "tabWidth": 4 + } + } + ] + }, + "stylelint": { + "extends": [ + "stylelint-config-recommended", + "stylelint-config-standard", + "stylelint-prettier/recommended" + ], + "plugins": [ + "stylelint-csstree-validator" + ], + "rules": { + "csstree/validator": true, + "property-no-vendor-prefix": null, + "selector-class-pattern": "^([a-z][A-z\\d]*)(-[A-z\\d]+)*$", + "selector-no-vendor-prefix": null, + "value-no-vendor-prefix": null + } + } +} diff --git a/packages/css-extension/pyproject.toml b/packages/css-extension/pyproject.toml new file mode 100644 index 0000000..8828e60 --- /dev/null +++ b/packages/css-extension/pyproject.toml @@ -0,0 +1,77 @@ +[build-system] +requires = ["hatchling>=1.5.0", "jupyterlab>=4.0.0,<5", "hatch-nodejs-version>=0.3.2"] +build-backend = "hatchling.build" + +[project] +name = "jupyter_css_loader" +readme = "README.md" +license = { file = "LICENSE" } +requires-python = ">=3.9" +classifiers = [ + "Framework :: Jupyter", + "Framework :: Jupyter :: JupyterLab", + "Framework :: Jupyter :: JupyterLab :: 4", + "Framework :: Jupyter :: JupyterLab :: Extensions", + "Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt", + "License :: OSI Approved :: BSD License", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", +] +dependencies = [ +] +dynamic = ["version", "description", "authors", "urls", "keywords"] + +[tool.hatch.version] +source = "nodejs" + +[tool.hatch.metadata.hooks.nodejs] +fields = ["description", "authors", "urls", "keywords"] + +[tool.hatch.build.targets.sdist] +artifacts = ["jupyter_css_loader/labextension"] +exclude = [".github", "binder"] + +[tool.hatch.build.targets.wheel.shared-data] +"jupyter_css_loader/labextension" = "share/jupyter/labextensions/jupyter-css-loader" +"install.json" = "share/jupyter/labextensions/jupyter-css-loader/install.json" + +[tool.hatch.build.hooks.version] +path = "jupyter_css_loader/_version.py" + +[tool.hatch.build.hooks.jupyter-builder] +dependencies = ["hatch-jupyter-builder>=0.5"] +build-function = "hatch_jupyter_builder.npm_builder" +ensured-targets = [ + "jupyter_css_loader/labextension/static/style.js", + "jupyter_css_loader/labextension/package.json", +] +skip-if-exists = ["jupyter_css_loader/labextension/static/style.js"] + +[tool.hatch.build.hooks.jupyter-builder.build-kwargs] +build_cmd = "build:prod" +npm = ["jlpm"] + +[tool.hatch.build.hooks.jupyter-builder.editable-build-kwargs] +build_cmd = "install:extension" +npm = ["jlpm"] +source_dir = "src" +build_dir = "jupyter_css_loader/labextension" + +[tool.jupyter-releaser.options] +version_cmd = "hatch version" + +[tool.jupyter-releaser.hooks] +before-build-npm = [ + "python -m pip install 'jupyterlab>=4.0.0,<5'", + "jlpm", + "jlpm build:prod" +] +before-build-python = ["jlpm clean:all"] + +[tool.check-wheel-contents] +ignore = ["W002"] diff --git a/packages/css-extension/setup.py b/packages/css-extension/setup.py new file mode 100644 index 0000000..aefdf20 --- /dev/null +++ b/packages/css-extension/setup.py @@ -0,0 +1 @@ +__import__("setuptools").setup() diff --git a/packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts b/packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts new file mode 100644 index 0000000..65ade7e --- /dev/null +++ b/packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts @@ -0,0 +1,9 @@ +/** + * Example of [Jest](https://jestjs.io/docs/getting-started) unit tests + */ + +describe('jupyter-css-loader', () => { + it('should be tested', () => { + expect(1 + 1).toEqual(2); + }); +}); diff --git a/packages/css-extension/src/index.ts b/packages/css-extension/src/index.ts new file mode 100644 index 0000000..d67a83c --- /dev/null +++ b/packages/css-extension/src/index.ts @@ -0,0 +1,30 @@ +import { + JupyterFrontEnd, + JupyterFrontEndPlugin +} from '@jupyterlab/application'; + +/** + * Initialization data for the jupyter-css-loader extension. + */ +const plugin: JupyterFrontEndPlugin = { + id: 'jupyter-css-loader:plugin', + description: 'A JupyterLab extension.', + autoStart: true, + activate: (app: JupyterFrontEnd) => { + console.log('JupyterLab extension jupyter-css-loader is activated!'); + const { commands } = app; + + commands.addCommand('jupyter-import-css', { + execute: args => { + const styleTag = document.createElement('style'); + + styleTag.id = 'searchText'; + styleTag.innerText = args['parsedCSS'] as string; + + document.head.appendChild(styleTag); + } + }); + } +}; + +export default plugin; diff --git a/packages/css-extension/style/base.css b/packages/css-extension/style/base.css new file mode 100644 index 0000000..e11f457 --- /dev/null +++ b/packages/css-extension/style/base.css @@ -0,0 +1,5 @@ +/* + See the JupyterLab Developer Guide for useful CSS Patterns: + + https://jupyterlab.readthedocs.io/en/stable/developer/css.html +*/ diff --git a/packages/css-extension/style/index.css b/packages/css-extension/style/index.css new file mode 100644 index 0000000..8a7ea29 --- /dev/null +++ b/packages/css-extension/style/index.css @@ -0,0 +1 @@ +@import url('base.css'); diff --git a/packages/css-extension/style/index.js b/packages/css-extension/style/index.js new file mode 100644 index 0000000..a028a76 --- /dev/null +++ b/packages/css-extension/style/index.js @@ -0,0 +1 @@ +import './base.css'; diff --git a/packages/css-extension/tsconfig.json b/packages/css-extension/tsconfig.json new file mode 100644 index 0000000..25af040 --- /dev/null +++ b/packages/css-extension/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "allowSyntheticDefaultImports": true, + "composite": true, + "declaration": true, + "esModuleInterop": true, + "incremental": true, + "jsx": "react", + "lib": ["DOM", "ES2018", "ES2020.Intl"], + "module": "esnext", + "moduleResolution": "node", + "noEmitOnError": true, + "noImplicitAny": true, + "noUnusedLocals": true, + "preserveWatchOutput": true, + "resolveJsonModule": true, + "outDir": "lib", + "rootDir": "src", + "strict": true, + "strictNullChecks": true, + "target": "ES2018", + "types": ["jest"] + }, + "include": ["src/*"] +} diff --git a/packages/css-extension/tsconfig.test.json b/packages/css-extension/tsconfig.test.json new file mode 100644 index 0000000..1c66acf --- /dev/null +++ b/packages/css-extension/tsconfig.test.json @@ -0,0 +1,3 @@ +{ + "extends": "./tsconfig" +} diff --git a/packages/css-extension/ui-tests/README.md b/packages/css-extension/ui-tests/README.md new file mode 100644 index 0000000..9182514 --- /dev/null +++ b/packages/css-extension/ui-tests/README.md @@ -0,0 +1,167 @@ +# Integration Testing + +This folder contains the integration tests of the extension. + +They are defined using [Playwright](https://playwright.dev/docs/intro) test runner +and [Galata](https://github.com/jupyterlab/jupyterlab/tree/main/galata) helper. + +The Playwright configuration is defined in [playwright.config.js](./playwright.config.js). + +The JupyterLab server configuration to use for the integration test is defined +in [jupyter_server_test_config.py](./jupyter_server_test_config.py). + +The default configuration will produce video for failing tests and an HTML report. + +> There is a UI mode that you may like; see [that video](https://www.youtube.com/watch?v=jF0yA-JLQW0). + +## Run the tests + +> All commands are assumed to be executed from the root directory + +To run the tests, you need to: + +1. Compile the extension: + +```sh +jlpm install +jlpm build:prod +``` + +> Check the extension is installed in JupyterLab. + +2. Install test dependencies (needed only once): + +```sh +cd ./ui-tests +jlpm install +jlpm playwright install +cd .. +``` + +3. Execute the [Playwright](https://playwright.dev/docs/intro) tests: + +```sh +cd ./ui-tests +jlpm playwright test +``` + +Test results will be shown in the terminal. In case of any test failures, the test report +will be opened in your browser at the end of the tests execution; see +[Playwright documentation](https://playwright.dev/docs/test-reporters#html-reporter) +for configuring that behavior. + +## Update the tests snapshots + +> All commands are assumed to be executed from the root directory + +If you are comparing snapshots to validate your tests, you may need to update +the reference snapshots stored in the repository. To do that, you need to: + +1. Compile the extension: + +```sh +jlpm install +jlpm build:prod +``` + +> Check the extension is installed in JupyterLab. + +2. Install test dependencies (needed only once): + +```sh +cd ./ui-tests +jlpm install +jlpm playwright install +cd .. +``` + +3. Execute the [Playwright](https://playwright.dev/docs/intro) command: + +```sh +cd ./ui-tests +jlpm playwright test -u +``` + +> Some discrepancy may occurs between the snapshots generated on your computer and +> the one generated on the CI. To ease updating the snapshots on a PR, you can +> type `please update playwright snapshots` to trigger the update by a bot on the CI. +> Once the bot has computed new snapshots, it will commit them to the PR branch. + +## Create tests + +> All commands are assumed to be executed from the root directory + +To create tests, the easiest way is to use the code generator tool of playwright: + +1. Compile the extension: + +```sh +jlpm install +jlpm build:prod +``` + +> Check the extension is installed in JupyterLab. + +2. Install test dependencies (needed only once): + +```sh +cd ./ui-tests +jlpm install +jlpm playwright install +cd .. +``` + +3. Start the server: + +```sh +cd ./ui-tests +jlpm start +``` + +4. Execute the [Playwright code generator](https://playwright.dev/docs/codegen) in **another terminal**: + +```sh +cd ./ui-tests +jlpm playwright codegen localhost:8888 +``` + +## Debug tests + +> All commands are assumed to be executed from the root directory + +To debug tests, a good way is to use the inspector tool of playwright: + +1. Compile the extension: + +```sh +jlpm install +jlpm build:prod +``` + +> Check the extension is installed in JupyterLab. + +2. Install test dependencies (needed only once): + +```sh +cd ./ui-tests +jlpm install +jlpm playwright install +cd .. +``` + +3. Execute the Playwright tests in [debug mode](https://playwright.dev/docs/debug): + +```sh +cd ./ui-tests +jlpm playwright test --debug +``` + +## Upgrade Playwright and the browsers + +To update the web browser versions, you must update the package `@playwright/test`: + +```sh +cd ./ui-tests +jlpm up "@playwright/test" +jlpm playwright install +``` diff --git a/packages/css-extension/ui-tests/jupyter_server_test_config.py b/packages/css-extension/ui-tests/jupyter_server_test_config.py new file mode 100644 index 0000000..f2a9478 --- /dev/null +++ b/packages/css-extension/ui-tests/jupyter_server_test_config.py @@ -0,0 +1,12 @@ +"""Server configuration for integration tests. + +!! Never use this configuration in production because it +opens the server to the world and provide access to JupyterLab +JavaScript objects through the global window variable. +""" +from jupyterlab.galata import configure_jupyter_server + +configure_jupyter_server(c) + +# Uncomment to set server log level to debug level +# c.ServerApp.log_level = "DEBUG" diff --git a/packages/css-extension/ui-tests/package.json b/packages/css-extension/ui-tests/package.json new file mode 100644 index 0000000..f7e193c --- /dev/null +++ b/packages/css-extension/ui-tests/package.json @@ -0,0 +1,15 @@ +{ + "name": "jupyter-css-loader-ui-tests", + "version": "1.0.0", + "description": "JupyterLab jupyter-css-loader Integration Tests", + "private": true, + "scripts": { + "start": "jupyter lab --config jupyter_server_test_config.py", + "test": "jlpm playwright test", + "test:update": "jlpm playwright test --update-snapshots" + }, + "devDependencies": { + "@jupyterlab/galata": "^5.0.5", + "@playwright/test": "^1.37.0" + } +} diff --git a/packages/css-extension/ui-tests/playwright.config.js b/packages/css-extension/ui-tests/playwright.config.js new file mode 100644 index 0000000..9ece6fa --- /dev/null +++ b/packages/css-extension/ui-tests/playwright.config.js @@ -0,0 +1,14 @@ +/** + * Configuration for Playwright using default from @jupyterlab/galata + */ +const baseConfig = require('@jupyterlab/galata/lib/playwright-config'); + +module.exports = { + ...baseConfig, + webServer: { + command: 'jlpm start', + url: 'http://localhost:8888/lab', + timeout: 120 * 1000, + reuseExistingServer: !process.env.CI + } +}; diff --git a/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts b/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts new file mode 100644 index 0000000..dae2a9f --- /dev/null +++ b/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts @@ -0,0 +1,21 @@ +import { expect, test } from '@jupyterlab/galata'; + +/** + * Don't load JupyterLab webpage before running the tests. + * This is required to ensure we capture all log messages. + */ +test.use({ autoGoto: false }); + +test('should emit an activation console message', async ({ page }) => { + const logs: string[] = []; + + page.on('console', message => { + logs.push(message.text()); + }); + + await page.goto(); + + expect( + logs.filter(s => s === 'JupyterLab extension jupyter-css-loader is activated!') + ).toHaveLength(1); +}); diff --git a/packages/css-extension/ui-tests/yarn.lock b/packages/css-extension/ui-tests/yarn.lock new file mode 100644 index 0000000..e69de29 diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index ed41749..571fb38 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -2,12 +2,14 @@ // Distributed under the terms of the Modified BSD License. import { + ILabStatus, JupyterFrontEnd, JupyterFrontEndPlugin } from '@jupyterlab/application'; +import { INotebookTracker } from '@jupyterlab/notebook'; import { ISettingRegistry } from '@jupyterlab/settingregistry'; import { ReadonlyPartialJSONObject } from '@lumino/coreutils'; -import { expose, windowEndpoint } from 'comlink'; +import { expose, windowEndpoint, wrap } from 'comlink'; import { ICommandBridgeRemote } from './interface'; /** @@ -18,9 +20,12 @@ const plugin: JupyterFrontEndPlugin = { autoStart: true, description: 'A plugin to expose an API for interacting with JupyterLab from a parent page.', + requires: [ILabStatus, INotebookTracker], optional: [ISettingRegistry], activate: async ( app: JupyterFrontEnd, + labStatus: ILabStatus, + tracker: INotebookTracker, settingRegistry: ISettingRegistry | null ) => { console.log('JupyterLab extension jupyter-iframe-commands is activated!'); @@ -48,25 +53,26 @@ const plugin: JupyterFrontEndPlugin = { await commands.execute(command, args); }, async listCommands() { - return await commands.listCommands(); + return commands.listCommands(); } }; + labStatus.busySignal.connect(async () => { + const kernelSpec = + await tracker.currentWidget?.sessionContext?.session?.kernel?.spec; + const displayName = kernelSpec ? kernelSpec.display_name : 'Loading...'; + await host.kernelStatus(displayName, labStatus.isBusy); + }); + const endpoint = windowEndpoint(self.parent); + const host = wrap(endpoint); // TODO: fix typings? + expose(api, endpoint); //TODO targetOrigin should be host page - window.parent?.postMessage('extension-loaded', '*'); - - // Add host css to Jupyter - window.onmessage = e => { - if (e.data.type === 'CSS') { - const styleTag = document.createElement('style'); - styleTag.id = 'searchText'; - styleTag.innerText = e.data.style; - document.head.appendChild(styleTag); - } - }; + app.started.then(() => { + host.setReady(true); + }); } }; diff --git a/packages/host/src/index.ts b/packages/host/src/index.ts index 9265c29..38f6f17 100644 --- a/packages/host/src/index.ts +++ b/packages/host/src/index.ts @@ -1,7 +1,17 @@ // Copyright (c) TileDB, Inc. // Distributed under the terms of the Modified BSD License. -import { windowEndpoint, wrap } from 'comlink'; +import { expose, windowEndpoint, wrap } from 'comlink'; import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; + +type Listener = () => void; +export interface IJupyterInfo { + isBridgeReady: boolean; + kernelInfo: { + kernelName: string; + isKernelBusy: boolean; + }; +} + /** * A bridge to expose actions on JupyterLab commands. */ @@ -22,3 +32,55 @@ export function createBridge({ iframeId }: { iframeId: string }) { return wrap(windowEndpoint(iframe.contentWindow)); } + +/** + * Define host package api and expose it to Jupyter extension + */ +export function exposeApi({ iframeId }: { iframeId: string }) { + const iframe = document.getElementById(iframeId) as HTMLIFrameElement; + + if (!iframe.contentWindow) { + return; + } + const endpoint = windowEndpoint(iframe.contentWindow); + const hostApi = { + async setReady(val: boolean) { + jupyterInfo.setState({ isBridgeReady: val }); + }, + async kernelStatus(displayName: string, stat: boolean) { + jupyterInfo.setState({ + kernelInfo: { kernelName: displayName, isKernelBusy: stat } + }); + } + }; + + expose(hostApi, endpoint); +} + +// Create observable state for consuming app to subscribe to +let jupyterInfoState = { + isBridgeReady: false, + kernelInfo: { + kernelName: 'Loading...', + isKernelBusy: false + } +}; + +const listeners = new Set(); +export const jupyterInfo = { + getState() { + return jupyterInfoState; + }, + + setState(newState: Partial) { + const mergedState = { ...jupyterInfoState, ...newState }; + + jupyterInfoState = mergedState; + listeners.forEach(listener => listener()); + }, + + subscribe(listener: Listener) { + listeners.add(listener); + return () => listeners.delete(listener); + } +}; diff --git a/tsconfig.json b/tsconfig.json index 9f665aa..020418a 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -15,6 +15,7 @@ "resolveJsonModule": true, "strict": true, "strictNullChecks": true, - "target": "ES2018" + "target": "ES2018", + "skipLibCheck": true } } diff --git a/yarn.lock b/yarn.lock index c5be23c..50af4bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15,7 +15,7 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.26.2": +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.5, @babel/code-frame@npm:^7.26.2": version: 7.26.2 resolution: "@babel/code-frame@npm:7.26.2" dependencies: @@ -26,13 +26,36 @@ __metadata: languageName: node linkType: hard -"@babel/compat-data@npm:^7.26.5": +"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.26.5, @babel/compat-data@npm:^7.26.8": version: 7.26.8 resolution: "@babel/compat-data@npm:7.26.8" checksum: 1bb04c6860c8c9555b933cb9c3caf5ef1dac331a37a351efb67956fc679f695d487aea76e792dd43823702c1300f7906f2a298e50b4a8d7ec199ada9c340c365 languageName: node linkType: hard +"@babel/core@npm:^7.10.2, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.9": + version: 7.26.9 + resolution: "@babel/core@npm:7.26.9" + dependencies: + "@ampproject/remapping": ^2.2.0 + "@babel/code-frame": ^7.26.2 + "@babel/generator": ^7.26.9 + "@babel/helper-compilation-targets": ^7.26.5 + "@babel/helper-module-transforms": ^7.26.0 + "@babel/helpers": ^7.26.9 + "@babel/parser": ^7.26.9 + "@babel/template": ^7.26.9 + "@babel/traverse": ^7.26.9 + "@babel/types": ^7.26.9 + convert-source-map: ^2.0.0 + debug: ^4.1.0 + gensync: ^1.0.0-beta.2 + json5: ^2.2.3 + semver: ^6.3.1 + checksum: b6e33bdcbb8a5c929760548be400d18cbde1f07922a784586752fd544fbf13c71331406ffdb4fcfe53f79c69ceae602efdca654ad4e9ac0c2af47efe87e7fccd + languageName: node + linkType: hard + "@babel/core@npm:^7.26.0": version: 7.26.8 resolution: "@babel/core@npm:7.26.8" @@ -70,7 +93,29 @@ __metadata: languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.26.5": +"@babel/generator@npm:^7.26.9, @babel/generator@npm:^7.7.2": + version: 7.26.9 + resolution: "@babel/generator@npm:7.26.9" + dependencies: + "@babel/parser": ^7.26.9 + "@babel/types": ^7.26.9 + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.25 + jsesc: ^3.0.2 + checksum: 57d034fb6c77dfd5e0c8ef368ff544e19cb6a27cb70d6ed5ff0552c618153dc6692d31e7d0f3a408e0fec3a519514b846c909316c3078290f3a3c1e463372eae + languageName: node + linkType: hard + +"@babel/helper-annotate-as-pure@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-annotate-as-pure@npm:7.25.9" + dependencies: + "@babel/types": ^7.25.9 + checksum: 41edda10df1ae106a9b4fe617bf7c6df77db992992afd46192534f5cff29f9e49a303231733782dd65c5f9409714a529f215325569f14282046e9d3b7a1ffb6c + languageName: node + linkType: hard + +"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.25.9, @babel/helper-compilation-targets@npm:^7.26.5": version: 7.26.5 resolution: "@babel/helper-compilation-targets@npm:7.26.5" dependencies: @@ -83,6 +128,61 @@ __metadata: languageName: node linkType: hard +"@babel/helper-create-class-features-plugin@npm:^7.25.9": + version: 7.26.9 + resolution: "@babel/helper-create-class-features-plugin@npm:7.26.9" + dependencies: + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-member-expression-to-functions": ^7.25.9 + "@babel/helper-optimise-call-expression": ^7.25.9 + "@babel/helper-replace-supers": ^7.26.5 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + "@babel/traverse": ^7.26.9 + semver: ^6.3.1 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: d445a660d2cdd92e83c04a60f52a304e54e5cc338796b6add9dec00048f1ad12125f78145ab688d029569a9559ef64f8e0de86f456b9e2630ea46f664ffb8e45 + languageName: node + linkType: hard + +"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.25.9": + version: 7.26.3 + resolution: "@babel/helper-create-regexp-features-plugin@npm:7.26.3" + dependencies: + "@babel/helper-annotate-as-pure": ^7.25.9 + regexpu-core: ^6.2.0 + semver: ^6.3.1 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 50a27d8ce6da5c2fa0c62c132c4d27cfeb36e3233ff1e5220d643de3dafe49423b507382f0b72a696fce7486014b134c1e742f55438590f9405d26765b009af0 + languageName: node + linkType: hard + +"@babel/helper-define-polyfill-provider@npm:^0.6.3": + version: 0.6.3 + resolution: "@babel/helper-define-polyfill-provider@npm:0.6.3" + dependencies: + "@babel/helper-compilation-targets": ^7.22.6 + "@babel/helper-plugin-utils": ^7.22.5 + debug: ^4.1.1 + lodash.debounce: ^4.0.8 + resolve: ^1.14.2 + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: 710e6d8a5391736b9f53f09d0494575c2e03de199ad8d1349bc8e514cb85251ea1f1842c2ff44830849d482052ddb42ae931101002a87a263b12f649c2e57c01 + languageName: node + linkType: hard + +"@babel/helper-member-expression-to-functions@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-member-expression-to-functions@npm:7.25.9" + dependencies: + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 8e2f1979b6d596ac2a8cbf17f2cf709180fefc274ac3331408b48203fe19134ed87800774ef18838d0275c3965130bae22980d90caed756b7493631d4b2cf961 + languageName: node + linkType: hard + "@babel/helper-module-imports@npm:^7.25.9": version: 7.25.9 resolution: "@babel/helper-module-imports@npm:7.25.9" @@ -93,87 +193,1130 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/helper-module-transforms@npm:7.26.0" +"@babel/helper-module-transforms@npm:^7.25.9, @babel/helper-module-transforms@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/helper-module-transforms@npm:7.26.0" + dependencies: + "@babel/helper-module-imports": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + "@babel/traverse": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 942eee3adf2b387443c247a2c190c17c4fd45ba92a23087abab4c804f40541790d51ad5277e4b5b1ed8d5ba5b62de73857446b7742f835c18ebd350384e63917 + languageName: node + linkType: hard + +"@babel/helper-optimise-call-expression@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-optimise-call-expression@npm:7.25.9" + dependencies: + "@babel/types": ^7.25.9 + checksum: f09d0ad60c0715b9a60c31841b3246b47d67650c512ce85bbe24a3124f1a4d66377df793af393273bc6e1015b0a9c799626c48e53747581c1582b99167cc65dc + languageName: node + linkType: hard + +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.25.9, @babel/helper-plugin-utils@npm:^7.26.5, @babel/helper-plugin-utils@npm:^7.8.0": + version: 7.26.5 + resolution: "@babel/helper-plugin-utils@npm:7.26.5" + checksum: 4771fbb1711c624c62d12deabc2ed7435a6e6994b6ce09d5ede1bc1bf19be59c3775461a1e693bdd596af865685e87bb2abc778f62ceadc1b2095a8e2aa74180 + languageName: node + linkType: hard + +"@babel/helper-remap-async-to-generator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-remap-async-to-generator@npm:7.25.9" + dependencies: + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-wrap-function": ^7.25.9 + "@babel/traverse": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: ea37ad9f8f7bcc27c109963b8ebb9d22bac7a5db2a51de199cb560e251d5593fe721e46aab2ca7d3e7a24b0aa4aff0eaf9c7307af9c2fd3a1d84268579073052 + languageName: node + linkType: hard + +"@babel/helper-replace-supers@npm:^7.25.9, @babel/helper-replace-supers@npm:^7.26.5": + version: 7.26.5 + resolution: "@babel/helper-replace-supers@npm:7.26.5" + dependencies: + "@babel/helper-member-expression-to-functions": ^7.25.9 + "@babel/helper-optimise-call-expression": ^7.25.9 + "@babel/traverse": ^7.26.5 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: c5ab31b29c7cc09e30278f8860ecdb873ce6c84b5c08bc5239c369c7c4fe9f0a63cda61b55b7bbd20edb4e5dc32e73087cc3c57d85264834bd191551d1499185 + languageName: node + linkType: hard + +"@babel/helper-skip-transparent-expression-wrappers@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.25.9" + dependencies: + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: fdbb5248932198bc26daa6abf0d2ac42cab9c2dbb75b7e9f40d425c8f28f09620b886d40e7f9e4e08ffc7aaa2cefe6fc2c44be7c20e81f7526634702fb615bdc + languageName: node + linkType: hard + +"@babel/helper-string-parser@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-string-parser@npm:7.25.9" + checksum: 6435ee0849e101681c1849868278b5aee82686ba2c1e27280e5e8aca6233af6810d39f8e4e693d2f2a44a3728a6ccfd66f72d71826a94105b86b731697cdfa99 + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-identifier@npm:7.25.9" + checksum: 5b85918cb1a92a7f3f508ea02699e8d2422fe17ea8e82acd445006c0ef7520fbf48e3dbcdaf7b0a1d571fc3a2715a29719e5226636cb6042e15fe6ed2a590944 + languageName: node + linkType: hard + +"@babel/helper-validator-option@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-option@npm:7.25.9" + checksum: 9491b2755948ebbdd68f87da907283698e663b5af2d2b1b02a2765761974b1120d5d8d49e9175b167f16f72748ffceec8c9cf62acfbee73f4904507b246e2b3d + languageName: node + linkType: hard + +"@babel/helper-wrap-function@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-wrap-function@npm:7.25.9" + dependencies: + "@babel/template": ^7.25.9 + "@babel/traverse": ^7.25.9 + "@babel/types": ^7.25.9 + checksum: 8ec1701e60ae004415800c4a7a188f5564c73b4e4f3fdf58dd3f34a3feaa9753173f39bbd6d02e7ecc974f48155efc7940e62584435b3092c07728ee46a604ea + languageName: node + linkType: hard + +"@babel/helpers@npm:^7.26.7": + version: 7.26.7 + resolution: "@babel/helpers@npm:7.26.7" + dependencies: + "@babel/template": ^7.25.9 + "@babel/types": ^7.26.7 + checksum: 1c93604c7fd6dbd7aa6f3eb2f9fa56369f9ad02bac8b3afb902de6cd4264beb443cc8589bede3790ca28d7477d4c07801fe6f4943f9833ac5956b72708bbd7ac + languageName: node + linkType: hard + +"@babel/helpers@npm:^7.26.9": + version: 7.26.9 + resolution: "@babel/helpers@npm:7.26.9" + dependencies: + "@babel/template": ^7.26.9 + "@babel/types": ^7.26.9 + checksum: 06363f8288a24c1cfda03eccd775ac22f79cba319b533cb0e5d0f2a04a33512881cc3f227a4c46324935504fb92999cc4758b69b5e7b3846107eadcb5ee0abca + languageName: node + linkType: hard + +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/parser@npm:7.26.8" + dependencies: + "@babel/types": ^7.26.8 + bin: + parser: ./bin/babel-parser.js + checksum: 2ede62d2451eaf37f524f2048ca41994466c81bda1f5acec36fbd8931fe77bf365e2b2060972735165e40aec305e04af76dd4d8fa895bc08a250215b32356577 + languageName: node + linkType: hard + +"@babel/parser@npm:^7.14.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.26.9": + version: 7.26.9 + resolution: "@babel/parser@npm:7.26.9" + dependencies: + "@babel/types": ^7.26.9 + bin: + parser: ./bin/babel-parser.js + checksum: 2df965dbf3c67d19dc437412ceef23033b4d39b0dbd7cb498d8ab9ad9e1738338656ee72676199773b37d658edf9f4161cf255515234fed30695d74e73be5514 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/traverse": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: b33d37dacf98a9c74f53959999adc37a258057668b62dba557e6865689433c53764673109eaba9102bf73b2ac4db162f0d9b89a6cca6f1b71d12f5908ec11da9 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: d3e14ab1cb9cb50246d20cab9539f2fbd1e7ef1ded73980c8ad7c0561b4d5e0b144d362225f0976d47898e04cbd40f2000e208b0913bd788346cf7791b96af91 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: a9d1ee3fd100d3eb6799a2f2bbd785296f356c531d75c9369f71541811fa324270258a374db103ce159156d006da2f33370330558d0133e6f7584152c34997ca + languageName: node + linkType: hard + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + "@babel/plugin-transform-optional-chaining": ^7.25.9 + peerDependencies: + "@babel/core": ^7.13.0 + checksum: 5b298b28e156f64de51cdb03a2c5b80c7f978815ef1026f3ae8b9fc48d28bf0a83817d8fbecb61ef8fb94a7201f62cca5103cc6e7b9e8f28e38f766d7905b378 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/traverse": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: c684593952ab1b40dfa4e64e98a07e7227c6db175c21bd0e6d71d2ad5d240fef4e4a984d56f05a494876542a022244fe1c1098f4116109fd90d06615e8a269b1 + languageName: node + linkType: hard + +"@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2": + version: 7.21.0-placeholder-for-preset-env.2 + resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d97745d098b835d55033ff3a7fb2b895b9c5295b08a5759e4f20df325aa385a3e0bc9bd5ad8f2ec554a44d4e6525acfc257b8c5848a1345cb40f26a30e277e91 + languageName: node + linkType: hard + +"@babel/plugin-syntax-async-generators@npm:^7.8.4": + version: 7.8.4 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 + languageName: node + linkType: hard + +"@babel/plugin-syntax-bigint@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-bigint@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3a10849d83e47aec50f367a9e56a6b22d662ddce643334b087f9828f4c3dd73bdc5909aaeabe123fed78515767f9ca43498a0e621c438d1cd2802d7fae3c9648 + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-properties@npm:^7.12.13": + version: 7.12.13 + resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" + dependencies: + "@babel/helper-plugin-utils": ^7.12.13 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3e80814b5b6d4fe17826093918680a351c2d34398a914ce6e55d8083d72a9bdde4fbaf6a2dcea0e23a03de26dc2917ae3efd603d27099e2b98380345703bf948 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-assertions@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-syntax-import-assertions@npm:7.26.0" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b58f2306df4a690ca90b763d832ec05202c50af787158ff8b50cdf3354359710bce2e1eb2b5135fcabf284756ac8eadf09ca74764aa7e76d12a5cac5f6b21e67 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-attributes@npm:^7.24.7, @babel/plugin-syntax-import-attributes@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-syntax-import-attributes@npm:7.26.0" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c122aa577166c80ee67f75aebebeef4150a132c4d3109d25d7fc058bf802946f883e330f20b78c1d3e3a5ada631c8780c263d2d01b5dbaecc69efefeedd42916 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-meta@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 166ac1125d10b9c0c430e4156249a13858c0366d38844883d75d27389621ebe651115cb2ceb6dc011534d5055719fa1727b59f39e1ab3ca97820eef3dcab5b9b + languageName: node + linkType: hard + +"@babel/plugin-syntax-json-strings@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bf5aea1f3188c9a507e16efe030efb996853ca3cadd6512c51db7233cc58f3ac89ff8c6bdfb01d30843b161cfe7d321e1bf28da82f7ab8d7e6bc5464666f354a + languageName: node + linkType: hard + +"@babel/plugin-syntax-jsx@npm:^7.7.2": + version: 7.25.9 + resolution: "@babel/plugin-syntax-jsx@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bb609d1ffb50b58f0c1bac8810d0e46a4f6c922aa171c458f3a19d66ee545d36e782d3bffbbc1fed0dc65a558bdce1caf5279316583c0fff5a2c1658982a8563 + languageName: node + linkType: hard + +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: aff33577037e34e515911255cdbb1fd39efee33658aa00b8a5fd3a4b903585112d037cce1cc9e4632f0487dc554486106b79ccd5ea63a2e00df4363f6d4ff886 + languageName: node + linkType: hard + +"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 87aca4918916020d1fedba54c0e232de408df2644a425d153be368313fdde40d96088feed6c4e5ab72aac89be5d07fef2ddf329a15109c5eb65df006bf2580d1 + languageName: node + linkType: hard + +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 01ec5547bd0497f76cc903ff4d6b02abc8c05f301c88d2622b6d834e33a5651aa7c7a3d80d8d57656a4588f7276eba357f6b7e006482f5b564b7a6488de493a1 + languageName: node + linkType: hard + +"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: fddcf581a57f77e80eb6b981b10658421bc321ba5f0a5b754118c6a92a5448f12a0c336f77b8abf734841e102e5126d69110a306eadb03ca3e1547cab31f5cbf + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 910d90e72bc90ea1ce698e89c1027fed8845212d5ab588e35ef91f13b93143845f94e2539d831dc8d8ededc14ec02f04f7bd6a8179edd43a326c784e7ed7f0b9 + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: eef94d53a1453361553c1f98b68d17782861a04a392840341bc91780838dd4e695209c783631cf0de14c635758beafb6a3a65399846ffa4386bff90639347f30 + languageName: node + linkType: hard + +"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b317174783e6e96029b743ccff2a67d63d38756876e7e5d0ba53a322e38d9ca452c13354a57de1ad476b4c066dbae699e0ca157441da611117a47af88985ecda + languageName: node + linkType: hard + +"@babel/plugin-syntax-top-level-await@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bbd1a56b095be7820029b209677b194db9b1d26691fe999856462e66b25b281f031f3dfd91b1619e9dcf95bebe336211833b854d0fb8780d618e35667c2d0d7e + languageName: node + linkType: hard + +"@babel/plugin-syntax-typescript@npm:^7.7.2": + version: 7.25.9 + resolution: "@babel/plugin-syntax-typescript@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0e9821e8ba7d660c36c919654e4144a70546942ae184e85b8102f2322451eae102cbfadbcadd52ce077a2b44b400ee52394c616feab7b5b9f791b910e933fd33 + languageName: node + linkType: hard + +"@babel/plugin-syntax-unicode-sets-regex@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-syntax-unicode-sets-regex@npm:7.18.6" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: a651d700fe63ff0ddfd7186f4ebc24447ca734f114433139e3c027bc94a900d013cf1ef2e2db8430425ba542e39ae160c3b05f06b59fd4656273a3df97679e9c + languageName: node + linkType: hard + +"@babel/plugin-transform-arrow-functions@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c29f081224859483accf55fb4d091db2aac0dcd0d7954bac5ca889030cc498d3f771aa20eb2e9cd8310084ec394d85fa084b97faf09298b6bc9541182b3eb5bb + languageName: node + linkType: hard + +"@babel/plugin-transform-async-generator-functions@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/plugin-transform-async-generator-functions@npm:7.26.8" + dependencies: + "@babel/helper-plugin-utils": ^7.26.5 + "@babel/helper-remap-async-to-generator": ^7.25.9 + "@babel/traverse": ^7.26.8 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10424a1bbfbc7ffdb13cef1e832f76bb2d393a9fbfaa1eaa3091a8f6ec3e2ac0b66cf04fca9cb3fb4dbf3d1bd404d72dfce4a3742b4ef21f6271aca7076a65ef + languageName: node + linkType: hard + +"@babel/plugin-transform-async-to-generator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-async-to-generator@npm:7.25.9" + dependencies: + "@babel/helper-module-imports": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-remap-async-to-generator": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b3ad50fb93c171644d501864620ed23952a46648c4df10dc9c62cc9ad08031b66bd272cfdd708faeee07c23b6251b16f29ce0350473e4c79f0c32178d38ce3a6 + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoped-functions@npm:^7.26.5": + version: 7.26.5 + resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.26.5" + dependencies: + "@babel/helper-plugin-utils": ^7.26.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f2046c09bf8e588bfb1a6342d0eee733189102cf663ade27adb0130f3865123af5816b40a55ec8d8fa09271b54dfdaf977cd2f8e0b3dc97f18e690188d5a2174 + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoping@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-block-scoping@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e869500cfb1995e06e64c9608543b56468639809febfcdd6fcf683bc0bf1be2431cacf2981a168a1a14f4766393e37bc9f7c96d25bc5b5f39a64a8a8ad0bf8e0 + languageName: node + linkType: hard + +"@babel/plugin-transform-class-properties@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-class-properties@npm:7.25.9" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a8d69e2c285486b63f49193cbcf7a15e1d3a5f632c1c07d7a97f65306df7f554b30270b7378dde143f8b557d1f8f6336c643377943dec8ec405e4cd11e90b9ea + languageName: node + linkType: hard + +"@babel/plugin-transform-class-static-block@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-transform-class-static-block@npm:7.26.0" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.12.0 + checksum: d779d4d3a6f8d363f67fcbd928c15baa72be8d3b86c6d05e0300b50e66e2c4be9e99398b803d13064bc79d90ae36e37a505e3dc8af11904459804dec07660246 + languageName: node + linkType: hard + +"@babel/plugin-transform-classes@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-classes@npm:7.25.9" + dependencies: + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-replace-supers": ^7.25.9 + "@babel/traverse": ^7.25.9 + globals: ^11.1.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d12584f72125314cc0fa8c77586ece2888d677788ac75f7393f5da574dfe4e45a556f7e3488fab29c8777ab3e5856d7a2d79f6df02834083aaa9d766440e3c68 + languageName: node + linkType: hard + +"@babel/plugin-transform-computed-properties@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-computed-properties@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/template": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f77fa4bc0c1e0031068172df28852388db6b0f91c268d037905f459607cf1e8ebab00015f9f179f4ad96e11c5f381b635cd5dc4e147a48c7ac79d195ae7542de + languageName: node + linkType: hard + +"@babel/plugin-transform-destructuring@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-destructuring@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 965f63077a904828f4adee91393f83644098533442b8217d5a135c23a759a4c252c714074c965676a60d2c33f610f579a4eeb59ffd783724393af61c0ca45fef + languageName: node + linkType: hard + +"@babel/plugin-transform-dotall-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-dotall-regex@npm:7.25.9" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8bdf1bb9e6e3a2cc8154ae88a3872faa6dc346d6901994505fb43ac85f858728781f1219f40b67f7bb0687c507450236cb7838ac68d457e65637f98500aa161b + languageName: node + linkType: hard + +"@babel/plugin-transform-duplicate-keys@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-duplicate-keys@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b553eebc328797ead6be5ba5bdaf2f1222cea8a5bd33fb4ed625975d4f9b510bfb0d688d97e314cd4b4a48b279bea7b3634ad68c1b41ee143c3082db0ae74037 + languageName: node + linkType: hard + +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.25.9" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: f7233cf596be8c6843d31951afaf2464a62a610cb89c72c818c044765827fab78403ab8a7d3a6386f838c8df574668e2a48f6c206b1d7da965aff9c6886cb8e6 + languageName: node + linkType: hard + +"@babel/plugin-transform-dynamic-import@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-dynamic-import@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: aaca1ccda819be9b2b85af47ba08ddd2210ff2dbea222f26e4cd33f97ab020884bf81a66197e50872721e9daf36ceb5659502c82199884ea74d5d75ecda5c58b + languageName: node + linkType: hard + +"@babel/plugin-transform-exponentiation-operator@npm:^7.26.3": + version: 7.26.3 + resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.26.3" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b369ffad07e02e259c43a09d309a5ca86cb9da6b43b1df6256463a810b172cedc4254742605eec0fc2418371c3f7430430f5abd36f21717281e79142308c13ba + languageName: node + linkType: hard + +"@babel/plugin-transform-export-namespace-from@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-export-namespace-from@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 4dfe8df86c5b1d085d591290874bb2d78a9063090d71567ed657a418010ad333c3f48af2c974b865f53bbb718987a065f89828d43279a7751db1a56c9229078d + languageName: node + linkType: hard + +"@babel/plugin-transform-for-of@npm:^7.26.9": + version: 7.26.9 + resolution: "@babel/plugin-transform-for-of@npm:7.26.9" + dependencies: + "@babel/helper-plugin-utils": ^7.26.5 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 361323cfc1d9e9dc0bf0d68326b5e7f4da5b8a8be8931f6cacda749d39b88ee1b0f9b4d8b771a5a4d52bb881a90da97950c8a9e6fb47f2c9db11d91f6351768e + languageName: node + linkType: hard + +"@babel/plugin-transform-function-name@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-function-name@npm:7.25.9" + dependencies: + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/traverse": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a8d7c8d019a6eb57eab5ca1be3e3236f175557d55b1f3b11f8ad7999e3fbb1cf37905fd8cb3a349bffb4163a558e9f33b63f631597fdc97c858757deac1b2fd7 + languageName: node + linkType: hard + +"@babel/plugin-transform-json-strings@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-json-strings@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e2498d84761cfd05aaea53799933d55af309c9d6204e66b38778792d171e4d1311ad34f334259a3aa3407dd0446f6bd3e390a1fcb8ce2e42fe5aabed0e41bee1 + languageName: node + linkType: hard + +"@babel/plugin-transform-literals@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-literals@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3cca75823a38aab599bc151b0fa4d816b5e1b62d6e49c156aa90436deb6e13649f5505973151a10418b64f3f9d1c3da53e38a186402e0ed7ad98e482e70c0c14 + languageName: node + linkType: hard + +"@babel/plugin-transform-logical-assignment-operators@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8c6febb4ac53852314d28b5e2c23d5dbbff7bf1e57d61f9672e0d97531ef7778b3f0ad698dcf1179f5486e626c77127508916a65eb846a89e98a92f70ed3537b + languageName: node + linkType: hard + +"@babel/plugin-transform-member-expression-literals@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-member-expression-literals@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: db92041ae87b8f59f98b50359e0bb172480f6ba22e5e76b13bdfe07122cbf0daa9cd8ad2e78dcb47939938fed88ad57ab5989346f64b3a16953fc73dea3a9b1f + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-amd@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-modules-amd@npm:7.25.9" + dependencies: + "@babel/helper-module-transforms": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: baad1f6fd0e0d38e9a9c1086a06abdc014c4c653fd452337cadfe23fb5bd8bf4368d1bc433a5ac8e6421bc0732ebb7c044cf3fb39c1b7ebe967d66e26c4e5cec + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-commonjs@npm:^7.26.3": + version: 7.26.3 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.26.3" + dependencies: + "@babel/helper-module-transforms": ^7.26.0 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0ac9aa4e5fe9fe34b58ee174881631e5e1c89eee5b1ebfd1147934686be92fc5fbfdc11119f0b607b3743d36a1cbcb7c36f18e0dd4424d6d7b749b1b9a18808a + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-systemjs@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-modules-systemjs@npm:7.25.9" + dependencies: + "@babel/helper-module-transforms": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + "@babel/traverse": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bf446202f372ba92dc0db32b24b56225b6e3ad3b227e31074de8b86fdec01c273ae2536873e38dbe3ceb1cd0894209343adeaa37df208e3fa88c0c7dffec7924 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-umd@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-modules-umd@npm:7.25.9" + dependencies: + "@babel/helper-module-transforms": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 946db66be5f04ab9ee56c424b00257276ec094aa2f148508927e6085239f76b00304fa1e33026d29eccdbe312efea15ca3d92e74a12689d7f0cdd9a7ba1a6c54 + languageName: node + linkType: hard + +"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.25.9" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 434346ba05cf74e3f4704b3bdd439287b95cd2a8676afcdc607810b8c38b6f4798cd69c1419726b2e4c7204e62e4a04d31b0360e91ca57a930521c9211e07789 + languageName: node + linkType: hard + +"@babel/plugin-transform-new-target@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-new-target@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f8113539919aafce52f07b2bd182c771a476fe1d5d96d813460b33a16f173f038929369c595572cadc1f7bd8cb816ce89439d056e007770ddd7b7a0878e7895f + languageName: node + linkType: hard + +"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.26.6": + version: 7.26.6 + resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.26.6" + dependencies: + "@babel/helper-plugin-utils": ^7.26.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 752837d532b85c41f6bb868e83809605f513bc9a3b8e88ac3d43757c9bf839af4f246874c1c6d6902bb2844d355efccae602c3856098911f8abdd603672f8379 + languageName: node + linkType: hard + +"@babel/plugin-transform-numeric-separator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-numeric-separator@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0528ef041ed88e8c3f51624ee87b8182a7f246fe4013f0572788e0727d20795b558f2b82e3989b5dd416cbd339500f0d88857de41b6d3b6fdacb1d5344bcc5b1 + languageName: node + linkType: hard + +"@babel/plugin-transform-object-rest-spread@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-object-rest-spread@npm:7.25.9" + dependencies: + "@babel/helper-compilation-targets": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/plugin-transform-parameters": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a8ff73e1c46a03056b3a2236bafd6b3a4b83da93afe7ee24a50d0a8088150bf85bc5e5977daa04e66ff5fb7613d02d63ad49b91ebb64cf3f3022598d722e3a7a + languageName: node + linkType: hard + +"@babel/plugin-transform-object-super@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-object-super@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-replace-supers": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 1817b5d8b80e451ae1ad9080cca884f4f16df75880a158947df76a2ed8ab404d567a7dce71dd8051ef95f90fbe3513154086a32aba55cc76027f6cbabfbd7f98 + languageName: node + linkType: hard + +"@babel/plugin-transform-optional-catch-binding@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b46a8d1e91829f3db5c252583eb00d05a779b4660abeea5500fda0f8ffa3584fd18299443c22f7fddf0ed9dfdb73c782c43b445dc468d4f89803f2356963b406 + languageName: node + linkType: hard + +"@babel/plugin-transform-optional-chaining@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-optional-chaining@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f1642a7094456067e82b176e1e9fd426fda7ed9df54cb6d10109fc512b622bf4b3c83acc5875125732b8622565107fdbe2d60fe3ec8685e1d1c22c38c1b57782 + languageName: node + linkType: hard + +"@babel/plugin-transform-parameters@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-parameters@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d7ba2a7d05edbc85aed741289b0ff3d6289a1c25d82ac4be32c565f88a66391f46631aad59ceeed40824037f7eeaa7a0de1998db491f50e65a565cd964f78786 + languageName: node + linkType: hard + +"@babel/plugin-transform-private-methods@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-private-methods@npm:7.25.9" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6e3671b352c267847c53a170a1937210fa8151764d70d25005e711ef9b21969aaf422acc14f9f7fb86bc0e4ec43e7aefcc0ad9196ae02d262ec10f509f126a58 + languageName: node + linkType: hard + +"@babel/plugin-transform-private-property-in-object@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-private-property-in-object@npm:7.25.9" + dependencies: + "@babel/helper-annotate-as-pure": ^7.25.9 + "@babel/helper-create-class-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9ce3e983fea9b9ba677c192aa065c0b42ebdc7774be4c02135df09029ad92a55c35b004650c75952cb64d650872ed18f13ab64422c6fc891d06333762caa8a0a + languageName: node + linkType: hard + +"@babel/plugin-transform-property-literals@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-property-literals@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 436046ab07d54a9b44a384eeffec701d4e959a37a7547dda72e069e751ca7ff753d1782a8339e354b97c78a868b49ea97bf41bf5a44c6d7a3c0a05ad40eeb49c + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx-self@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 41c833cd7f91b1432710f91b1325706e57979b2e8da44e83d86312c78bbe96cd9ef778b4e79e4e17ab25fa32c72b909f2be7f28e876779ede28e27506c41f4ae + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx-source@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a3e0e5672e344e9d01fb20b504fe29a84918eaa70cec512c4d4b1b035f72803261257343d8e93673365b72c371f35cf34bb0d129720bf178a4c87812c8b9c662 + languageName: node + linkType: hard + +"@babel/plugin-transform-regenerator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-regenerator@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + regenerator-transform: ^0.15.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 1c09e8087b476c5967282c9790fb8710e065eda77c60f6cb5da541edd59ded9d003d96f8ef640928faab4a0b35bf997673499a194973da4f0c97f0935807a482 + languageName: node + linkType: hard + +"@babel/plugin-transform-regexp-modifiers@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/plugin-transform-regexp-modifiers@npm:7.26.0" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 726deca486bbd4b176f8a966eb0f4aabc19d9def3b8dabb8b3a656778eca0df1fda3f3c92b213aa5a184232fdafd5b7bd73b4e24ca4345c498ef6baff2bda4e1 + languageName: node + linkType: hard + +"@babel/plugin-transform-reserved-words@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-reserved-words@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8beda04481b25767acbd1f6b9ef7b3a9c12fbd9dcb24df45a6ad120e1dc4b247c073db60ac742f9093657d6d8c050501fc0606af042f81a3bb6a3ff862cddc47 + languageName: node + linkType: hard + +"@babel/plugin-transform-shorthand-properties@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-shorthand-properties@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f774995d58d4e3a992b732cf3a9b8823552d471040e280264dd15e0735433d51b468fef04d75853d061309389c66bda10ce1b298297ce83999220eb0ad62741d + languageName: node + linkType: hard + +"@babel/plugin-transform-spread@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-spread@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 2403a5d49171b7714d5e5ecb1f598c61575a4dbe5e33e5a5f08c0ea990b75e693ca1ea983b6a96b2e3e5e7da48c8238333f525e47498c53b577c5d094d964c06 + languageName: node + linkType: hard + +"@babel/plugin-transform-sticky-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-sticky-regex@npm:7.25.9" dependencies: - "@babel/helper-module-imports": ^7.25.9 - "@babel/helper-validator-identifier": ^7.25.9 - "@babel/traverse": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 peerDependencies: - "@babel/core": ^7.0.0 - checksum: 942eee3adf2b387443c247a2c190c17c4fd45ba92a23087abab4c804f40541790d51ad5277e4b5b1ed8d5ba5b62de73857446b7742f835c18ebd350384e63917 + "@babel/core": ^7.0.0-0 + checksum: 7454b00844dbe924030dd15e2b3615b36e196500c4c47e98dabc6b37a054c5b1038ecd437e910aabf0e43bf56b973cb148d3437d50f6e2332d8309568e3e979b languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.25.9": - version: 7.26.5 - resolution: "@babel/helper-plugin-utils@npm:7.26.5" - checksum: 4771fbb1711c624c62d12deabc2ed7435a6e6994b6ce09d5ede1bc1bf19be59c3775461a1e693bdd596af865685e87bb2abc778f62ceadc1b2095a8e2aa74180 +"@babel/plugin-transform-template-literals@npm:^7.26.8": + version: 7.26.8 + resolution: "@babel/plugin-transform-template-literals@npm:7.26.8" + dependencies: + "@babel/helper-plugin-utils": ^7.26.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 65874c8844ce906507cd5b9c78950d6173f8339b6416a2a9e763021db5a7045315a6f0e58976ec4af5e960c003ef322576c105130a644addb8f94d1a0821a972 languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-string-parser@npm:7.25.9" - checksum: 6435ee0849e101681c1849868278b5aee82686ba2c1e27280e5e8aca6233af6810d39f8e4e693d2f2a44a3728a6ccfd66f72d71826a94105b86b731697cdfa99 +"@babel/plugin-transform-typeof-symbol@npm:^7.26.7": + version: 7.26.7 + resolution: "@babel/plugin-transform-typeof-symbol@npm:7.26.7" + dependencies: + "@babel/helper-plugin-utils": ^7.26.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 1fcc48bde1426527d9905d561884e1ecaf3c03eb5abb507d33f71591f8da0c384e92097feaf91cc30692e04fb7f5e6ff1cb172acc5de7675d93fdb42db850d6a languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.25.9": +"@babel/plugin-transform-unicode-escapes@npm:^7.25.9": version: 7.25.9 - resolution: "@babel/helper-validator-identifier@npm:7.25.9" - checksum: 5b85918cb1a92a7f3f508ea02699e8d2422fe17ea8e82acd445006c0ef7520fbf48e3dbcdaf7b0a1d571fc3a2715a29719e5226636cb6042e15fe6ed2a590944 + resolution: "@babel/plugin-transform-unicode-escapes@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: be067e07488d804e3e82d7771f23666539d2ae5af03bf6eb8480406adf3dabd776e60c1fd5c6078dc5714b73cd80bbaca70e71d4f5d154c5c57200581602ca2f languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.25.9": +"@babel/plugin-transform-unicode-property-regex@npm:^7.25.9": version: 7.25.9 - resolution: "@babel/helper-validator-option@npm:7.25.9" - checksum: 9491b2755948ebbdd68f87da907283698e663b5af2d2b1b02a2765761974b1120d5d8d49e9175b167f16f72748ffceec8c9cf62acfbee73f4904507b246e2b3d + resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.25.9" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 201f6f46c1beb399e79aa208b94c5d54412047511795ce1e790edcd189cef73752e6a099fdfc01b3ad12205f139ae344143b62f21f44bbe02338a95e8506a911 languageName: node linkType: hard -"@babel/helpers@npm:^7.26.7": - version: 7.26.7 - resolution: "@babel/helpers@npm:7.26.7" +"@babel/plugin-transform-unicode-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-unicode-regex@npm:7.25.9" dependencies: - "@babel/template": ^7.25.9 - "@babel/types": ^7.26.7 - checksum: 1c93604c7fd6dbd7aa6f3eb2f9fa56369f9ad02bac8b3afb902de6cd4264beb443cc8589bede3790ca28d7477d4c07801fe6f4943f9833ac5956b72708bbd7ac + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e8baae867526e179467c6ef5280d70390fa7388f8763a19a27c21302dd59b121032568be080749514b097097ceb9af716bf4b90638f1b3cf689aa837ba20150f languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/parser@npm:7.26.8" +"@babel/plugin-transform-unicode-sets-regex@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.25.9" dependencies: - "@babel/types": ^7.26.8 - bin: - parser: ./bin/babel-parser.js - checksum: 2ede62d2451eaf37f524f2048ca41994466c81bda1f5acec36fbd8931fe77bf365e2b2060972735165e40aec305e04af76dd4d8fa895bc08a250215b32356577 + "@babel/helper-create-regexp-features-plugin": ^7.25.9 + "@babel/helper-plugin-utils": ^7.25.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 4445ef20de687cb4dcc95169742a8d9013d680aa5eee9186d8e25875bbfa7ee5e2de26a91177ccf70b1db518e36886abcd44750d28db5d7a9539f0efa6839f4b languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-self@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.9" +"@babel/preset-env@npm:^7.10.2": + version: 7.26.9 + resolution: "@babel/preset-env@npm:7.26.9" dependencies: - "@babel/helper-plugin-utils": ^7.25.9 + "@babel/compat-data": ^7.26.8 + "@babel/helper-compilation-targets": ^7.26.5 + "@babel/helper-plugin-utils": ^7.26.5 + "@babel/helper-validator-option": ^7.25.9 + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": ^7.25.9 + "@babel/plugin-bugfix-safari-class-field-initializer-scope": ^7.25.9 + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.25.9 + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.25.9 + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": ^7.25.9 + "@babel/plugin-proposal-private-property-in-object": 7.21.0-placeholder-for-preset-env.2 + "@babel/plugin-syntax-import-assertions": ^7.26.0 + "@babel/plugin-syntax-import-attributes": ^7.26.0 + "@babel/plugin-syntax-unicode-sets-regex": ^7.18.6 + "@babel/plugin-transform-arrow-functions": ^7.25.9 + "@babel/plugin-transform-async-generator-functions": ^7.26.8 + "@babel/plugin-transform-async-to-generator": ^7.25.9 + "@babel/plugin-transform-block-scoped-functions": ^7.26.5 + "@babel/plugin-transform-block-scoping": ^7.25.9 + "@babel/plugin-transform-class-properties": ^7.25.9 + "@babel/plugin-transform-class-static-block": ^7.26.0 + "@babel/plugin-transform-classes": ^7.25.9 + "@babel/plugin-transform-computed-properties": ^7.25.9 + "@babel/plugin-transform-destructuring": ^7.25.9 + "@babel/plugin-transform-dotall-regex": ^7.25.9 + "@babel/plugin-transform-duplicate-keys": ^7.25.9 + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": ^7.25.9 + "@babel/plugin-transform-dynamic-import": ^7.25.9 + "@babel/plugin-transform-exponentiation-operator": ^7.26.3 + "@babel/plugin-transform-export-namespace-from": ^7.25.9 + "@babel/plugin-transform-for-of": ^7.26.9 + "@babel/plugin-transform-function-name": ^7.25.9 + "@babel/plugin-transform-json-strings": ^7.25.9 + "@babel/plugin-transform-literals": ^7.25.9 + "@babel/plugin-transform-logical-assignment-operators": ^7.25.9 + "@babel/plugin-transform-member-expression-literals": ^7.25.9 + "@babel/plugin-transform-modules-amd": ^7.25.9 + "@babel/plugin-transform-modules-commonjs": ^7.26.3 + "@babel/plugin-transform-modules-systemjs": ^7.25.9 + "@babel/plugin-transform-modules-umd": ^7.25.9 + "@babel/plugin-transform-named-capturing-groups-regex": ^7.25.9 + "@babel/plugin-transform-new-target": ^7.25.9 + "@babel/plugin-transform-nullish-coalescing-operator": ^7.26.6 + "@babel/plugin-transform-numeric-separator": ^7.25.9 + "@babel/plugin-transform-object-rest-spread": ^7.25.9 + "@babel/plugin-transform-object-super": ^7.25.9 + "@babel/plugin-transform-optional-catch-binding": ^7.25.9 + "@babel/plugin-transform-optional-chaining": ^7.25.9 + "@babel/plugin-transform-parameters": ^7.25.9 + "@babel/plugin-transform-private-methods": ^7.25.9 + "@babel/plugin-transform-private-property-in-object": ^7.25.9 + "@babel/plugin-transform-property-literals": ^7.25.9 + "@babel/plugin-transform-regenerator": ^7.25.9 + "@babel/plugin-transform-regexp-modifiers": ^7.26.0 + "@babel/plugin-transform-reserved-words": ^7.25.9 + "@babel/plugin-transform-shorthand-properties": ^7.25.9 + "@babel/plugin-transform-spread": ^7.25.9 + "@babel/plugin-transform-sticky-regex": ^7.25.9 + "@babel/plugin-transform-template-literals": ^7.26.8 + "@babel/plugin-transform-typeof-symbol": ^7.26.7 + "@babel/plugin-transform-unicode-escapes": ^7.25.9 + "@babel/plugin-transform-unicode-property-regex": ^7.25.9 + "@babel/plugin-transform-unicode-regex": ^7.25.9 + "@babel/plugin-transform-unicode-sets-regex": ^7.25.9 + "@babel/preset-modules": 0.1.6-no-external-plugins + babel-plugin-polyfill-corejs2: ^0.4.10 + babel-plugin-polyfill-corejs3: ^0.11.0 + babel-plugin-polyfill-regenerator: ^0.6.1 + core-js-compat: ^3.40.0 + semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 41c833cd7f91b1432710f91b1325706e57979b2e8da44e83d86312c78bbe96cd9ef778b4e79e4e17ab25fa32c72b909f2be7f28e876779ede28e27506c41f4ae + checksum: 7a657f947d069b7a27b02258012ce3ceb9383a8c10c249d4a3565c486294c3fe63ed08128ca3d124444d17eb821cfbf64a91fe8160af2e39f70d5cd2232f079e languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-source@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.9" +"@babel/preset-modules@npm:0.1.6-no-external-plugins": + version: 0.1.6-no-external-plugins + resolution: "@babel/preset-modules@npm:0.1.6-no-external-plugins" dependencies: - "@babel/helper-plugin-utils": ^7.25.9 + "@babel/helper-plugin-utils": ^7.0.0 + "@babel/types": ^7.4.4 + esutils: ^2.0.2 peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a3e0e5672e344e9d01fb20b504fe29a84918eaa70cec512c4d4b1b035f72803261257343d8e93673365b72c371f35cf34bb0d129720bf178a4c87812c8b9c662 + "@babel/core": ^7.0.0-0 || ^8.0.0-0 <8.0.0 + checksum: 4855e799bc50f2449fb5210f78ea9e8fd46cf4f242243f1e2ed838e2bd702e25e73e822e7f8447722a5f4baa5e67a8f7a0e403f3e7ce04540ff743a9c411c375 + languageName: node + linkType: hard + +"@babel/runtime@npm:^7.8.4": + version: 7.26.9 + resolution: "@babel/runtime@npm:7.26.9" + dependencies: + regenerator-runtime: ^0.14.0 + checksum: 838492d8a925092f9ccfbd82ec183a54f430af3a4ce88fb1337a4570629202d5123bad3097a5b8df53822504d12ccb29f45c0f6842e86094f0164f17a51eec92 languageName: node linkType: hard @@ -188,6 +1331,17 @@ __metadata: languageName: node linkType: hard +"@babel/template@npm:^7.26.9, @babel/template@npm:^7.3.3": + version: 7.26.9 + resolution: "@babel/template@npm:7.26.9" + dependencies: + "@babel/code-frame": ^7.26.2 + "@babel/parser": ^7.26.9 + "@babel/types": ^7.26.9 + checksum: 32259298c775e543ab994daff0c758b3d6a184349b146d6497aa46cec5907bc47a6bc09e7295a81a5eccfbd023d4811a9777cb5d698d582d09a87cabf5b576e7 + languageName: node + linkType: hard + "@babel/traverse@npm:^7.25.9, @babel/traverse@npm:^7.26.8": version: 7.26.8 resolution: "@babel/traverse@npm:7.26.8" @@ -203,6 +1357,21 @@ __metadata: languageName: node linkType: hard +"@babel/traverse@npm:^7.26.5, @babel/traverse@npm:^7.26.9": + version: 7.26.9 + resolution: "@babel/traverse@npm:7.26.9" + dependencies: + "@babel/code-frame": ^7.26.2 + "@babel/generator": ^7.26.9 + "@babel/parser": ^7.26.9 + "@babel/template": ^7.26.9 + "@babel/types": ^7.26.9 + debug: ^4.3.1 + globals: ^11.1.0 + checksum: d42d3a5e61422d96467f517447b5e254edbd64e4dbf3e13b630704d1f49beaa5209246dc6f45ba53522293bd4760ff720496d2c1ef189ecce52e9e63d9a59aa8 + languageName: node + linkType: hard + "@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.7, @babel/types@npm:^7.26.8": version: 7.26.8 resolution: "@babel/types@npm:7.26.8" @@ -213,6 +1382,267 @@ __metadata: languageName: node linkType: hard +"@babel/types@npm:^7.26.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4": + version: 7.26.9 + resolution: "@babel/types@npm:7.26.9" + dependencies: + "@babel/helper-string-parser": ^7.25.9 + "@babel/helper-validator-identifier": ^7.25.9 + checksum: cc124c149615deb30343a4c81ac5b0e3a68bdb4b1bd61a91a2859ee8e5e5f400f6ff65be4740f407c17bfc09baa9c777e7f8f765dccf3284963956b67ac95a38 + languageName: node + linkType: hard + +"@bcoe/v8-coverage@npm:^0.2.3": + version: 0.2.3 + resolution: "@bcoe/v8-coverage@npm:0.2.3" + checksum: 850f9305536d0f2bd13e9e0881cb5f02e4f93fad1189f7b2d4bebf694e3206924eadee1068130d43c11b750efcc9405f88a8e42ef098b6d75239c0f047de1a27 + languageName: node + linkType: hard + +"@codemirror/autocomplete@npm:^6.0.0, @codemirror/autocomplete@npm:^6.16.0, @codemirror/autocomplete@npm:^6.3.2, @codemirror/autocomplete@npm:^6.7.1": + version: 6.18.6 + resolution: "@codemirror/autocomplete@npm:6.18.6" + dependencies: + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + checksum: 1d3657d5fbd2bbf983edf7fb14568b1f813a15f03848bef3833835dd3a30985d881e093842f7b3def23789b542db4eb81ec07bfa313d1ee1d54cb1b273027dea + languageName: node + linkType: hard + +"@codemirror/commands@npm:^6.5.0": + version: 6.8.0 + resolution: "@codemirror/commands@npm:6.8.0" + dependencies: + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.4.0 + "@codemirror/view": ^6.27.0 + "@lezer/common": ^1.1.0 + checksum: 7d819bab4830ec7b8c5dffdec4b035dfa664bfd1d2675e639e08a459df65f45be111e1b8b569b1a8a3253d5980cf2ecf4394d8a13509996cca1b65cc16d47a4e + languageName: node + linkType: hard + +"@codemirror/lang-cpp@npm:^6.0.2": + version: 6.0.2 + resolution: "@codemirror/lang-cpp@npm:6.0.2" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/cpp": ^1.0.0 + checksum: bb9eba482cca80037ce30c7b193cf45eff19ccbb773764fddf2071756468ecc25aa53c777c943635054f89095b0247b9b50c339e107e41e68d34d12a7295f9a9 + languageName: node + linkType: hard + +"@codemirror/lang-css@npm:^6.0.0, @codemirror/lang-css@npm:^6.2.1": + version: 6.3.1 + resolution: "@codemirror/lang-css@npm:6.3.1" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.0.2 + "@lezer/css": ^1.1.7 + checksum: ed175d75d75bc0a059d1e60b3dcd8464d570da14fc97388439943c9c43e1e9146e37b83fe2ccaad9cd387420b7b411ea1d24ede78ecd1f2045a38acbb4dd36bc + languageName: node + linkType: hard + +"@codemirror/lang-html@npm:^6.0.0, @codemirror/lang-html@npm:^6.4.9": + version: 6.4.9 + resolution: "@codemirror/lang-html@npm:6.4.9" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/lang-css": ^6.0.0 + "@codemirror/lang-javascript": ^6.0.0 + "@codemirror/language": ^6.4.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + "@lezer/css": ^1.1.0 + "@lezer/html": ^1.3.0 + checksum: ac8c3ceb0396f2e032752c5079bd950124dca708bc64e96fc147dc5fe7133e5cee0814fe951abdb953ec1d11fa540e4b30a712b5149d9a36016a197a28de45d7 + languageName: node + linkType: hard + +"@codemirror/lang-java@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-java@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/java": ^1.0.0 + checksum: 4679104683cbffcd224ac04c7e5d144b787494697b26470b07017259035b7bb3fa62609d9a61bfbc566f1756d9f972f9f26d96a3c1362dd48881c1172f9a914d + languageName: node + linkType: hard + +"@codemirror/lang-javascript@npm:^6.0.0, @codemirror/lang-javascript@npm:^6.2.2": + version: 6.2.3 + resolution: "@codemirror/lang-javascript@npm:6.2.3" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.6.0 + "@codemirror/lint": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + "@lezer/javascript": ^1.0.0 + checksum: c56407ddedc80e417dd105a39f11f837fad6fd4d91fe7934c61e48c54227350e4e8f940f81d26030a6c4ff9da16f734361cd1eaed63ba22aadf71fcf6172cbd5 + languageName: node + linkType: hard + +"@codemirror/lang-json@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-json@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/json": ^1.0.0 + checksum: e9e87d50ff7b81bd56a6ab50740b1dd54e9a93f1be585e1d59d0642e2148842ea1528ac7b7221eb4ddc7fe84bbc28065144cc3ab86f6e06c6aeb2d4b4e62acf1 + languageName: node + linkType: hard + +"@codemirror/lang-markdown@npm:^6.2.5": + version: 6.3.2 + resolution: "@codemirror/lang-markdown@npm:6.3.2" + dependencies: + "@codemirror/autocomplete": ^6.7.1 + "@codemirror/lang-html": ^6.0.0 + "@codemirror/language": ^6.3.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + "@lezer/common": ^1.2.1 + "@lezer/markdown": ^1.0.0 + checksum: f136d50156f13619d7ceb4fae28fc2342064be371a6cb057ba304658d885cf029d2d0d69b03b3c591c86a2c9b46bb2b3820549d5ff936a9b6aabaf692923c84a + languageName: node + linkType: hard + +"@codemirror/lang-php@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-php@npm:6.0.1" + dependencies: + "@codemirror/lang-html": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.0.0 + "@lezer/php": ^1.0.0 + checksum: c003a29a426486453fdfddbf7302982fa2aa7f059bf6f1ce4cbf08341b0162eee5e2f50e0d71c418dcd358491631780156d846fe352754d042576172c5d86721 + languageName: node + linkType: hard + +"@codemirror/lang-python@npm:^6.1.6": + version: 6.1.7 + resolution: "@codemirror/lang-python@npm:6.1.7" + dependencies: + "@codemirror/autocomplete": ^6.3.2 + "@codemirror/language": ^6.8.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.2.1 + "@lezer/python": ^1.1.4 + checksum: a3015abf8035b0c30e5bfc1e8b1bd43c5d9d4ec908b9c3f1e293e755256b41f6e48ad19b2e39c9f91c67264b9061235d9dc293acfe39175d4c2edaab951ceae2 + languageName: node + linkType: hard + +"@codemirror/lang-rust@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-rust@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/rust": ^1.0.0 + checksum: 8a439944cb22159b0b3465ca4fa4294c69843219d5d30e278ae6df8e48f30a7a9256129723c025ec9b5e694d31a3560fb004300b125ffcd81c22d13825845170 + languageName: node + linkType: hard + +"@codemirror/lang-sql@npm:^6.6.4": + version: 6.8.0 + resolution: "@codemirror/lang-sql@npm:6.8.0" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 1b5a3c8129b09f24039d8c0906fc4cb8d0f706a424a1d56721057bd1e647797c2b1240bb53eed9bf2bac5806a4e0363e555a3963f04c478efa05829890c537f7 + languageName: node + linkType: hard + +"@codemirror/lang-wast@npm:^6.0.2": + version: 6.0.2 + resolution: "@codemirror/lang-wast@npm:6.0.2" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 72119d4a7d726c54167aa227c982ae9fa785c8ad97a158d8350ae95eecfbd8028a803eef939f7e6c5c6e626fcecda1dc37e9dffc6d5d6ec105f686aeda6b2c24 + languageName: node + linkType: hard + +"@codemirror/lang-xml@npm:^6.1.0": + version: 6.1.0 + resolution: "@codemirror/lang-xml@npm:6.1.0" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.4.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + "@lezer/common": ^1.0.0 + "@lezer/xml": ^1.0.0 + checksum: 3a1b7af07b29ad7e53b77bf584245580b613bc92256059f175f2b1d7c28c4e39b75654fe169b9a8a330a60164b53ff5254bdb5b8ee8c6e6766427ee115c4e229 + languageName: node + linkType: hard + +"@codemirror/language@npm:^6.0.0, @codemirror/language@npm:^6.10.1, @codemirror/language@npm:^6.3.0, @codemirror/language@npm:^6.4.0, @codemirror/language@npm:^6.6.0, @codemirror/language@npm:^6.8.0": + version: 6.10.8 + resolution: "@codemirror/language@npm:6.10.8" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.23.0 + "@lezer/common": ^1.1.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + style-mod: ^4.0.0 + checksum: 679b69d69faa94f028f996a7005d0c6c2a2e4cd7a7a2614f615c23d7b642c31fc1837915248e864cb1ad59a2f032d1a7a8ef486b5f9904e5f6fbe6f7d2882c38 + languageName: node + linkType: hard + +"@codemirror/legacy-modes@npm:^6.4.0": + version: 6.4.3 + resolution: "@codemirror/legacy-modes@npm:6.4.3" + dependencies: + "@codemirror/language": ^6.0.0 + checksum: 2534946d2f3c1dbde4e7bc16c9c8ce595ab217b0a5b509a15b04b3b74fcabf307c11457a80fd2fb0d352822e70eda5ad993eb48cd5b33d50cd712e4e20714f2b + languageName: node + linkType: hard + +"@codemirror/lint@npm:^6.0.0": + version: 6.8.4 + resolution: "@codemirror/lint@npm:6.8.4" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.35.0 + crelt: ^1.0.5 + checksum: 640e3dd44eb167d952eb5c5b8518919ba46e164aa3471776342f7f9361e676b4627a76a9f01d51b22127b97413f2bc9b8c60299d8dfdd5fc8ad0225d42de7669 + languageName: node + linkType: hard + +"@codemirror/search@npm:^6.5.6": + version: 6.5.9 + resolution: "@codemirror/search@npm:6.5.9" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + crelt: ^1.0.5 + checksum: b1400dd1f33c1145cdb9ead0b3b813d130b0128f3af5b36d568962adfe6da9ac917cfdf69c78f0611f5b0965534d507dd93211db7934e64ba8c5a187b37fd9c1 + languageName: node + linkType: hard + +"@codemirror/state@npm:^6.0.0, @codemirror/state@npm:^6.4.0, @codemirror/state@npm:^6.5.0": + version: 6.5.2 + resolution: "@codemirror/state@npm:6.5.2" + dependencies: + "@marijn/find-cluster-break": ^1.0.0 + checksum: 4473a79475070d73f2e72f2eaaee5b69d2833b5020faa9714609d95dd03f0e5ad02cad8031a541dcd748436842a300332a2925317b39ffa09e3b4831145d98bc + languageName: node + linkType: hard + "@codemirror/state@npm:^6.4.1": version: 6.4.1 resolution: "@codemirror/state@npm:6.4.1" @@ -220,6 +1650,17 @@ __metadata: languageName: node linkType: hard +"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.26.3, @codemirror/view@npm:^6.27.0, @codemirror/view@npm:^6.35.0": + version: 6.36.3 + resolution: "@codemirror/view@npm:6.36.3" + dependencies: + "@codemirror/state": ^6.5.0 + style-mod: ^4.1.0 + w3c-keyname: ^2.2.4 + checksum: be7b31583dbc55c10c4cd05ee94a0348c5d681fa3cb50cae17e2e7fbeaf01f3624249b027c11f1eb157b07fca8d6b4ca77d84ed1da4960c095e0a59653f6719e + languageName: node + linkType: hard + "@csstools/css-parser-algorithms@npm:^2.3.1": version: 2.7.1 resolution: "@csstools/css-parser-algorithms@npm:2.7.1" @@ -290,13 +1731,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/aix-ppc64@npm:0.24.0" - conditions: os=aix & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/aix-ppc64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/aix-ppc64@npm:0.24.2" @@ -304,13 +1738,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/android-arm64@npm:0.24.0" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/android-arm64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/android-arm64@npm:0.24.2" @@ -318,13 +1745,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/android-arm@npm:0.24.0" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - "@esbuild/android-arm@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/android-arm@npm:0.24.2" @@ -332,13 +1752,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/android-x64@npm:0.24.0" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - "@esbuild/android-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/android-x64@npm:0.24.2" @@ -346,13 +1759,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/darwin-arm64@npm:0.24.0" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/darwin-arm64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/darwin-arm64@npm:0.24.2" @@ -360,13 +1766,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/darwin-x64@npm:0.24.0" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - "@esbuild/darwin-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/darwin-x64@npm:0.24.2" @@ -374,13 +1773,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/freebsd-arm64@npm:0.24.0" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/freebsd-arm64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/freebsd-arm64@npm:0.24.2" @@ -388,13 +1780,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/freebsd-x64@npm:0.24.0" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/freebsd-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/freebsd-x64@npm:0.24.2" @@ -402,13 +1787,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-arm64@npm:0.24.0" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/linux-arm64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/linux-arm64@npm:0.24.2" @@ -416,13 +1794,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-arm@npm:0.24.0" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - "@esbuild/linux-arm@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/linux-arm@npm:0.24.2" @@ -430,13 +1801,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-ia32@npm:0.24.0" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/linux-ia32@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/linux-ia32@npm:0.24.2" @@ -444,13 +1808,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-loong64@npm:0.24.0" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - "@esbuild/linux-loong64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/linux-loong64@npm:0.24.2" @@ -458,13 +1815,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-mips64el@npm:0.24.0" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - "@esbuild/linux-mips64el@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/linux-mips64el@npm:0.24.2" @@ -472,24 +1822,10 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-ppc64@npm:0.24.0" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/linux-ppc64@npm:0.24.2": version: 0.24.2 - resolution: "@esbuild/linux-ppc64@npm:0.24.2" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - -"@esbuild/linux-riscv64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-riscv64@npm:0.24.0" - conditions: os=linux & cpu=riscv64 + resolution: "@esbuild/linux-ppc64@npm:0.24.2" + conditions: os=linux & cpu=ppc64 languageName: node linkType: hard @@ -500,13 +1836,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-s390x@npm:0.24.0" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - "@esbuild/linux-s390x@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/linux-s390x@npm:0.24.2" @@ -514,13 +1843,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/linux-x64@npm:0.24.0" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - "@esbuild/linux-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/linux-x64@npm:0.24.2" @@ -535,13 +1857,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/netbsd-x64@npm:0.24.0" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/netbsd-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/netbsd-x64@npm:0.24.2" @@ -549,13 +1864,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/openbsd-arm64@npm:0.24.0" - conditions: os=openbsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/openbsd-arm64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/openbsd-arm64@npm:0.24.2" @@ -563,13 +1871,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/openbsd-x64@npm:0.24.0" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/openbsd-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/openbsd-x64@npm:0.24.2" @@ -577,13 +1878,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/sunos-x64@npm:0.24.0" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - "@esbuild/sunos-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/sunos-x64@npm:0.24.2" @@ -591,13 +1885,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/win32-arm64@npm:0.24.0" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/win32-arm64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/win32-arm64@npm:0.24.2" @@ -605,13 +1892,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/win32-ia32@npm:0.24.0" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/win32-ia32@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/win32-ia32@npm:0.24.2" @@ -619,13 +1899,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.24.0": - version: 0.24.0 - resolution: "@esbuild/win32-x64@npm:0.24.0" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@esbuild/win32-x64@npm:0.24.2": version: 0.24.2 resolution: "@esbuild/win32-x64@npm:0.24.2" @@ -751,6 +2024,175 @@ __metadata: languageName: node linkType: hard +"@istanbuljs/load-nyc-config@npm:^1.0.0": + version: 1.1.0 + resolution: "@istanbuljs/load-nyc-config@npm:1.1.0" + dependencies: + camelcase: ^5.3.1 + find-up: ^4.1.0 + get-package-type: ^0.1.0 + js-yaml: ^3.13.1 + resolve-from: ^5.0.0 + checksum: d578da5e2e804d5c93228450a1380e1a3c691de4953acc162f387b717258512a3e07b83510a936d9fab03eac90817473917e24f5d16297af3867f59328d58568 + languageName: node + linkType: hard + +"@istanbuljs/schema@npm:^0.1.2, @istanbuljs/schema@npm:^0.1.3": + version: 0.1.3 + resolution: "@istanbuljs/schema@npm:0.1.3" + checksum: 5282759d961d61350f33d9118d16bcaed914ebf8061a52f4fa474b2cb08720c9c81d165e13b82f2e5a8a212cc5af482f0c6fc1ac27b9e067e5394c9a6ed186c9 + languageName: node + linkType: hard + +"@jest/console@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/console@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + "@types/node": "*" + chalk: ^4.0.0 + jest-message-util: ^29.7.0 + jest-util: ^29.7.0 + slash: ^3.0.0 + checksum: 0e3624e32c5a8e7361e889db70b170876401b7d70f509a2538c31d5cd50deb0c1ae4b92dc63fe18a0902e0a48c590c21d53787a0df41a52b34fa7cab96c384d6 + languageName: node + linkType: hard + +"@jest/core@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/core@npm:29.7.0" + dependencies: + "@jest/console": ^29.7.0 + "@jest/reporters": ^29.7.0 + "@jest/test-result": ^29.7.0 + "@jest/transform": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/node": "*" + ansi-escapes: ^4.2.1 + chalk: ^4.0.0 + ci-info: ^3.2.0 + exit: ^0.1.2 + graceful-fs: ^4.2.9 + jest-changed-files: ^29.7.0 + jest-config: ^29.7.0 + jest-haste-map: ^29.7.0 + jest-message-util: ^29.7.0 + jest-regex-util: ^29.6.3 + jest-resolve: ^29.7.0 + jest-resolve-dependencies: ^29.7.0 + jest-runner: ^29.7.0 + jest-runtime: ^29.7.0 + jest-snapshot: ^29.7.0 + jest-util: ^29.7.0 + jest-validate: ^29.7.0 + jest-watcher: ^29.7.0 + micromatch: ^4.0.4 + pretty-format: ^29.7.0 + slash: ^3.0.0 + strip-ansi: ^6.0.0 + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + checksum: af759c9781cfc914553320446ce4e47775ae42779e73621c438feb1e4231a5d4862f84b1d8565926f2d1aab29b3ec3dcfdc84db28608bdf5f29867124ebcfc0d + languageName: node + linkType: hard + +"@jest/environment@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/environment@npm:29.7.0" + dependencies: + "@jest/fake-timers": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/node": "*" + jest-mock: ^29.7.0 + checksum: 6fb398143b2543d4b9b8d1c6dbce83fa5247f84f550330604be744e24c2bd2178bb893657d62d1b97cf2f24baf85c450223f8237cccb71192c36a38ea2272934 + languageName: node + linkType: hard + +"@jest/expect-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/expect-utils@npm:29.7.0" + dependencies: + jest-get-type: ^29.6.3 + checksum: 75eb177f3d00b6331bcaa057e07c0ccb0733a1d0a1943e1d8db346779039cb7f103789f16e502f888a3096fb58c2300c38d1f3748b36a7fa762eb6f6d1b160ed + languageName: node + linkType: hard + +"@jest/expect@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/expect@npm:29.7.0" + dependencies: + expect: ^29.7.0 + jest-snapshot: ^29.7.0 + checksum: a01cb85fd9401bab3370618f4b9013b90c93536562222d920e702a0b575d239d74cecfe98010aaec7ad464f67cf534a353d92d181646a4b792acaa7e912ae55e + languageName: node + linkType: hard + +"@jest/fake-timers@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/fake-timers@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + "@sinonjs/fake-timers": ^10.0.2 + "@types/node": "*" + jest-message-util: ^29.7.0 + jest-mock: ^29.7.0 + jest-util: ^29.7.0 + checksum: caf2bbd11f71c9241b458d1b5a66cbe95debc5a15d96442444b5d5c7ba774f523c76627c6931cca5e10e76f0d08761f6f1f01a608898f4751a0eee54fc3d8d00 + languageName: node + linkType: hard + +"@jest/globals@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/globals@npm:29.7.0" + dependencies: + "@jest/environment": ^29.7.0 + "@jest/expect": ^29.7.0 + "@jest/types": ^29.6.3 + jest-mock: ^29.7.0 + checksum: 97dbb9459135693ad3a422e65ca1c250f03d82b2a77f6207e7fa0edd2c9d2015fbe4346f3dc9ebff1678b9d8da74754d4d440b7837497f8927059c0642a22123 + languageName: node + linkType: hard + +"@jest/reporters@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/reporters@npm:29.7.0" + dependencies: + "@bcoe/v8-coverage": ^0.2.3 + "@jest/console": ^29.7.0 + "@jest/test-result": ^29.7.0 + "@jest/transform": ^29.7.0 + "@jest/types": ^29.6.3 + "@jridgewell/trace-mapping": ^0.3.18 + "@types/node": "*" + chalk: ^4.0.0 + collect-v8-coverage: ^1.0.0 + exit: ^0.1.2 + glob: ^7.1.3 + graceful-fs: ^4.2.9 + istanbul-lib-coverage: ^3.0.0 + istanbul-lib-instrument: ^6.0.0 + istanbul-lib-report: ^3.0.0 + istanbul-lib-source-maps: ^4.0.0 + istanbul-reports: ^3.1.3 + jest-message-util: ^29.7.0 + jest-util: ^29.7.0 + jest-worker: ^29.7.0 + slash: ^3.0.0 + string-length: ^4.0.1 + strip-ansi: ^6.0.0 + v8-to-istanbul: ^9.0.1 + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + checksum: 7eadabd62cc344f629024b8a268ecc8367dba756152b761bdcb7b7e570a3864fc51b2a9810cd310d85e0a0173ef002ba4528d5ea0329fbf66ee2a3ada9c40455 + languageName: node + linkType: hard + "@jest/schemas@npm:^29.6.3": version: 29.6.3 resolution: "@jest/schemas@npm:29.6.3" @@ -760,6 +2202,78 @@ __metadata: languageName: node linkType: hard +"@jest/source-map@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/source-map@npm:29.6.3" + dependencies: + "@jridgewell/trace-mapping": ^0.3.18 + callsites: ^3.0.0 + graceful-fs: ^4.2.9 + checksum: bcc5a8697d471396c0003b0bfa09722c3cd879ad697eb9c431e6164e2ea7008238a01a07193dfe3cbb48b1d258eb7251f6efcea36f64e1ebc464ea3c03ae2deb + languageName: node + linkType: hard + +"@jest/test-result@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/test-result@npm:29.7.0" + dependencies: + "@jest/console": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/istanbul-lib-coverage": ^2.0.0 + collect-v8-coverage: ^1.0.0 + checksum: 67b6317d526e335212e5da0e768e3b8ab8a53df110361b80761353ad23b6aea4432b7c5665bdeb87658ea373b90fb1afe02ed3611ef6c858c7fba377505057fa + languageName: node + linkType: hard + +"@jest/test-sequencer@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/test-sequencer@npm:29.7.0" + dependencies: + "@jest/test-result": ^29.7.0 + graceful-fs: ^4.2.9 + jest-haste-map: ^29.7.0 + slash: ^3.0.0 + checksum: 73f43599017946be85c0b6357993b038f875b796e2f0950487a82f4ebcb115fa12131932dd9904026b4ad8be131fe6e28bd8d0aa93b1563705185f9804bff8bd + languageName: node + linkType: hard + +"@jest/transform@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/transform@npm:29.7.0" + dependencies: + "@babel/core": ^7.11.6 + "@jest/types": ^29.6.3 + "@jridgewell/trace-mapping": ^0.3.18 + babel-plugin-istanbul: ^6.1.1 + chalk: ^4.0.0 + convert-source-map: ^2.0.0 + fast-json-stable-stringify: ^2.1.0 + graceful-fs: ^4.2.9 + jest-haste-map: ^29.7.0 + jest-regex-util: ^29.6.3 + jest-util: ^29.7.0 + micromatch: ^4.0.4 + pirates: ^4.0.4 + slash: ^3.0.0 + write-file-atomic: ^4.0.2 + checksum: 0f8ac9f413903b3cb6d240102db848f2a354f63971ab885833799a9964999dd51c388162106a807f810071f864302cdd8e3f0c241c29ce02d85a36f18f3f40ab + languageName: node + linkType: hard + +"@jest/types@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/types@npm:29.6.3" + dependencies: + "@jest/schemas": ^29.6.3 + "@types/istanbul-lib-coverage": ^2.0.0 + "@types/istanbul-reports": ^3.0.0 + "@types/node": "*" + "@types/yargs": ^17.0.8 + chalk: ^4.0.0 + checksum: a0bcf15dbb0eca6bdd8ce61a3fb055349d40268622a7670a3b2eb3c3dbafe9eb26af59938366d520b86907b9505b0f9b29b85cec11579a9e580694b87cd90fcc + languageName: node + linkType: hard + "@jridgewell/gen-mapping@npm:^0.3.5": version: 0.3.5 resolution: "@jridgewell/gen-mapping@npm:0.3.5" @@ -795,14 +2309,14 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0": version: 1.5.0 resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" checksum: 05df4f2538b3b0f998ea4c1cd34574d0feba216fa5d4ccaef0187d12abf82eafe6021cec8b49f9bb4d90f2ba4582ccc581e72986a5fcf4176ae0cfeb04cf52ec languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": version: 0.3.25 resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: @@ -848,6 +2362,34 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/application@npm:^4.0.0, @jupyterlab/application@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/application@npm:4.3.5" + dependencies: + "@fortawesome/fontawesome-free": ^5.12.0 + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/docregistry": ^4.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/application": ^2.4.1 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + checksum: 2111efe2caafed74a78c2ddd6220baa6ccc459c27bde3cc80a0a53a403ad08ae2f0b3ea2e56e24b13440bc6fb3d254fc5519536127f47bd50a496bc44458aeb1 + languageName: node + linkType: hard + "@jupyterlab/application@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/application@npm:4.3.2" @@ -905,6 +2447,90 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/apputils@npm:^4.4.5": + version: 4.4.5 + resolution: "@jupyterlab/apputils@npm:4.4.5" + dependencies: + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/settingregistry": ^4.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@jupyterlab/statusbar": ^4.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + "@types/react": ^18.0.26 + react: ^18.2.0 + sanitize-html: ~2.12.1 + checksum: 541e063f820413294f08900e60b34a992bfb5ee29f3c9bc575b59518e2b9b82d9d38ed22e3ca7afa1a871db9873528d0830178d63884736477fcc2d777a78068 + languageName: node + linkType: hard + +"@jupyterlab/attachments@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/attachments@npm:4.3.5" + dependencies: + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + checksum: ed4d826174a4bd1223cf64691824c90162951cc6829d5c284c79eac6abc7cd04e4606591b9d1e8d874535639dcc3361d9aee428f9d9ead8bd83aaff2894ba699 + languageName: node + linkType: hard + +"@jupyterlab/builder@npm:^4.0.0": + version: 4.3.5 + resolution: "@jupyterlab/builder@npm:4.3.5" + dependencies: + "@lumino/algorithm": ^2.0.2 + "@lumino/application": ^2.4.1 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + ajv: ^8.12.0 + commander: ^9.4.1 + css-loader: ^6.7.1 + duplicate-package-checker-webpack-plugin: ^3.0.0 + fs-extra: ^10.1.0 + glob: ~7.1.6 + license-webpack-plugin: ^2.3.14 + mini-css-extract-plugin: ^2.7.0 + mini-svg-data-uri: ^1.4.4 + path-browserify: ^1.0.0 + process: ^0.11.10 + source-map-loader: ~1.0.2 + style-loader: ~3.3.1 + supports-color: ^7.2.0 + terser-webpack-plugin: ^5.3.7 + webpack: ^5.76.1 + webpack-cli: ^5.0.1 + webpack-merge: ^5.8.0 + worker-loader: ^3.0.2 + bin: + build-labextension: lib/build-labextension.js + checksum: 8f7e546d07deae7c624b208a9fecde1e7cc04e10aa47ac83fdfd4e37738642f3c41d766a6a04053d9d194bb512bc95ae2283298ccec57c36bbcb27b74efca90d + languageName: node + linkType: hard + "@jupyterlab/builder@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/builder@npm:4.3.2" @@ -946,6 +2572,42 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/cells@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/cells@npm:4.3.5" + dependencies: + "@codemirror/state": ^6.4.1 + "@codemirror/view": ^6.26.3 + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/attachments": ^4.3.5 + "@jupyterlab/codeeditor": ^4.3.5 + "@jupyterlab/codemirror": ^4.3.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/documentsearch": ^4.3.5 + "@jupyterlab/filebrowser": ^4.3.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/outputarea": ^4.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/toc": ^6.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 349d09e0edea165c4f7d490d91b65a135c1f7423601fd0642627449b69c5a8c2030d123e600ccb94603ae9ec145724a3c5168e149bf620d8100322b7ed5f80f1 + languageName: node + linkType: hard + "@jupyterlab/codeeditor@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/codeeditor@npm:4.3.2" @@ -970,6 +2632,72 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/codeeditor@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/codeeditor@npm:4.3.5" + dependencies: + "@codemirror/state": ^6.4.1 + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/statusbar": ^4.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 6308f41523351ca6a2a24cf55094a1effcefaf11c00a3d297fe59237ce87ded8a1b54834661398d44666cbcbb6a134432adc01c4ef7857a4a94692c5093cb77d + languageName: node + linkType: hard + +"@jupyterlab/codemirror@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/codemirror@npm:4.3.5" + dependencies: + "@codemirror/autocomplete": ^6.16.0 + "@codemirror/commands": ^6.5.0 + "@codemirror/lang-cpp": ^6.0.2 + "@codemirror/lang-css": ^6.2.1 + "@codemirror/lang-html": ^6.4.9 + "@codemirror/lang-java": ^6.0.1 + "@codemirror/lang-javascript": ^6.2.2 + "@codemirror/lang-json": ^6.0.1 + "@codemirror/lang-markdown": ^6.2.5 + "@codemirror/lang-php": ^6.0.1 + "@codemirror/lang-python": ^6.1.6 + "@codemirror/lang-rust": ^6.0.1 + "@codemirror/lang-sql": ^6.6.4 + "@codemirror/lang-wast": ^6.0.2 + "@codemirror/lang-xml": ^6.1.0 + "@codemirror/language": ^6.10.1 + "@codemirror/legacy-modes": ^6.4.0 + "@codemirror/search": ^6.5.6 + "@codemirror/state": ^6.4.1 + "@codemirror/view": ^6.26.3 + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/codeeditor": ^4.3.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/documentsearch": ^4.3.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/translation": ^4.3.5 + "@lezer/common": ^1.2.1 + "@lezer/generator": ^1.7.0 + "@lezer/highlight": ^1.2.0 + "@lezer/markdown": ^1.3.0 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + yjs: ^13.5.40 + checksum: 62d863a161c130a5b56872d8e67d75c1168323f60d389523490fd77a576ee731bc067b36a380e9652606671f29dc032399fcbab9a6d02e2c3901f1b0b03144f1 + languageName: node + linkType: hard + "@jupyterlab/coreutils@npm:^6.3.2": version: 6.3.2 resolution: "@jupyterlab/coreutils@npm:6.3.2" @@ -984,6 +2712,45 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/coreutils@npm:^6.3.5": + version: 6.3.5 + resolution: "@jupyterlab/coreutils@npm:6.3.5" + dependencies: + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + minimist: ~1.2.0 + path-browserify: ^1.0.0 + url-parse: ~1.5.4 + checksum: a35a96821dccee732de01ade677d5e94b0620db74f3c0a56b71ffe8acf221d41e899ed3ea6c4e4653ec5e46d5eb8889b660e7560a8c1909dfeaeda4db95d855e + languageName: node + linkType: hard + +"@jupyterlab/docmanager@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/docmanager@npm:4.3.5" + dependencies: + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/docregistry": ^4.3.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@jupyterlab/statusbar": ^4.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 49b904837d9ace4b4fd7445e5ca743aa29a2c7cb29cb888a9fb8a12649be4e69ede7a7f192b04909c672839c35ecf7eae2e584fb2ab8a6d51aab9519acaef3aa + languageName: node + linkType: hard + "@jupyterlab/docregistry@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/docregistry@npm:4.3.2" @@ -1010,6 +2777,102 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/docregistry@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/docregistry@npm:4.3.5" + dependencies: + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/codeeditor": ^4.3.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: d8503ed73737610d6b2d7bb26a9565547069bdf2e41413ede1d2b6d3bd8f1423681eae32388561897de3d457873ecdea382ad431952a61db0f8f6645154b21be + languageName: node + linkType: hard + +"@jupyterlab/documentsearch@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/documentsearch@npm:4.3.5" + dependencies: + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: c1a3c3277b5b114603e47c4e9f8091a9482f0a529db3adb0a864adf54549ad8a1e9332ddefc05dba628982b1a2f5f9f86680b50bb6bc1176e82edbbdf69a9fc1 + languageName: node + linkType: hard + +"@jupyterlab/filebrowser@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/filebrowser@npm:4.3.5" + dependencies: + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/docmanager": ^4.3.5 + "@jupyterlab/docregistry": ^4.3.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@jupyterlab/statusbar": ^4.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: ad35532ef36c932e622254cb301f7a7881e317194c337f87c15b5a543eb7b9910920cb6713f3cf0d6d4413196e1f9c7fff805a4e13bbc075ff081bc13d201fc5 + languageName: node + linkType: hard + +"@jupyterlab/lsp@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/lsp@npm:4.3.5" + dependencies: + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/codeeditor": ^4.3.5 + "@jupyterlab/codemirror": ^4.3.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/docregistry": ^4.3.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/translation": ^4.3.5 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + lodash.mergewith: ^4.6.1 + vscode-jsonrpc: ^6.0.0 + vscode-languageserver-protocol: ^3.17.0 + vscode-ws-jsonrpc: ~1.0.2 + checksum: 5cc155dc2a208b6064b99bbc0a58db15a746503221edee765233c4196a1e23a000824a597f4ae2eb64b7fe6e8365225ec957a554c8b9faa3e1a4b878f6074c01 + languageName: node + linkType: hard + "@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/nbformat@npm:4.3.2" @@ -1019,6 +2882,53 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/nbformat@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/nbformat@npm:4.3.5" + dependencies: + "@lumino/coreutils": ^2.2.0 + checksum: 2334846b3c3cf56f0c00dc046bb301f1463efa3f5ca6a79d1301cfe2b380a4050bc906520024ec4a11fc58b2510c12ec98eb021a417f126817623aad36a9f8d8 + languageName: node + linkType: hard + +"@jupyterlab/notebook@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/notebook@npm:4.3.5" + dependencies: + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/cells": ^4.3.5 + "@jupyterlab/codeeditor": ^4.3.5 + "@jupyterlab/codemirror": ^4.3.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/docregistry": ^4.3.5 + "@jupyterlab/documentsearch": ^4.3.5 + "@jupyterlab/lsp": ^4.3.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/settingregistry": ^4.3.5 + "@jupyterlab/statusbar": ^4.3.5 + "@jupyterlab/toc": ^6.3.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: def635ef290186eb2d078e13758fe11cddb86246b141279c7f8e316d9b250d9536fd033f0b55144fc58ae81229edcced2c2c8dd9144f4fd7b8c265405488b3ff + languageName: node + linkType: hard + "@jupyterlab/observables@npm:^5.3.2": version: 5.3.2 resolution: "@jupyterlab/observables@npm:5.3.2" @@ -1032,6 +2942,41 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/observables@npm:^5.3.5": + version: 5.3.5 + resolution: "@jupyterlab/observables@npm:5.3.5" + dependencies: + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + checksum: eea903c1b6ebf869850b83172b4edb91caea4a3d0f3b2b3397af2aacbaaaa415dda4df09a0ece88c24e2ef4a3caf5680333cd639a16611c5c1625cc8dbeff1b1 + languageName: node + linkType: hard + +"@jupyterlab/outputarea@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/outputarea@npm:4.3.5" + dependencies: + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/translation": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + checksum: 078503d04ad1ecfa727abc50d79f40ee7d7cab2326ed84fdc823bf6a28ff92c9fe0de2a6d258f97ead47c802799c659d705daabe435a08b0fbd91475f1b79979 + languageName: node + linkType: hard + "@jupyterlab/rendermime-interfaces@npm:^3.11.2": version: 3.11.2 resolution: "@jupyterlab/rendermime-interfaces@npm:3.11.2" @@ -1042,6 +2987,16 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/rendermime-interfaces@npm:^3.11.5": + version: 3.11.5 + resolution: "@jupyterlab/rendermime-interfaces@npm:3.11.5" + dependencies: + "@lumino/coreutils": ^1.11.0 || ^2.2.0 + "@lumino/widgets": ^1.37.2 || ^2.5.0 + checksum: 99a9d90890f8f82f3f3d0761dbc972a7b836e8078f31b6a4de9db1d0710abb39ff8324867ab683cbf2c64786874f115168b827f4e0720eee9106cd70170a2ee1 + languageName: node + linkType: hard + "@jupyterlab/rendermime@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/rendermime@npm:4.3.2" @@ -1062,6 +3017,26 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/rendermime@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/rendermime@npm:4.3.5" + dependencies: + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/translation": ^4.3.5 + "@lumino/coreutils": ^2.2.0 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + lodash.escape: ^4.0.1 + checksum: a116a9a5964c89fd2ac350f44310636f3e97ff66ba8445395cf11147709b182bb2065034dffe4307938f903a5b33fea48e05034184a486514f1e4c7b5bdfb1c9 + languageName: node + linkType: hard + "@jupyterlab/services@npm:^7.3.2": version: 7.3.2 resolution: "@jupyterlab/services@npm:7.3.2" @@ -1081,6 +3056,25 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/services@npm:^7.3.5": + version: 7.3.5 + resolution: "@jupyterlab/services@npm:7.3.5" + dependencies: + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/settingregistry": ^4.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + ws: ^8.11.0 + checksum: d347738a29463d7cfffa398a8df14487c018a45886e2b26d673800a23de3b303c75d43afc39e49c5ce0c20c169e925e97a85e3a3d62a72ec12b8db1aa85722e8 + languageName: node + linkType: hard + "@jupyterlab/settingregistry@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/settingregistry@npm:4.3.2" @@ -1100,6 +3094,25 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/settingregistry@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/settingregistry@npm:4.3.5" + dependencies: + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@rjsf/utils": ^5.13.4 + ajv: ^8.12.0 + json5: ^2.2.3 + peerDependencies: + react: ">=16" + checksum: 7281807849ca03a836de8859ac92b38736fa4f8ab21e482c1888ed4c6e9a6832bcf163e5809d98addea17866175e12c480c4abde0fc25d1d7462c01e96e2b812 + languageName: node + linkType: hard + "@jupyterlab/statedb@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/statedb@npm:4.3.2" @@ -1113,6 +3126,19 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/statedb@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/statedb@npm:4.3.5" + dependencies: + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + checksum: f2387a89815866de9d748f18168b341fd250e0901b210db421383cceda9ad1c5e53dfd1ea45a53e3c4dd87a305c8fa23aa9a03980289f417bf1c70cb91c16171 + languageName: node + linkType: hard + "@jupyterlab/statusbar@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/statusbar@npm:4.3.2" @@ -1129,6 +3155,81 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/statusbar@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/statusbar@npm:4.3.5" + dependencies: + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: d16699f85523a8e5bdbeaf2e1835badfd709886c48ac7efa6f8f4d2fa4572b237e41641f6730c3a247838d98edc3a7816864c25dfc87ba536c93edcacb7a8db0 + languageName: node + linkType: hard + +"@jupyterlab/testing@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/testing@npm:4.3.5" + dependencies: + "@babel/core": ^7.10.2 + "@babel/preset-env": ^7.10.2 + "@jupyterlab/coreutils": ^6.3.5 + "@lumino/coreutils": ^2.2.0 + "@lumino/signaling": ^2.1.3 + deepmerge: ^4.2.2 + fs-extra: ^10.1.0 + identity-obj-proxy: ^3.0.0 + jest: ^29.2.0 + jest-environment-jsdom: ^29.3.0 + jest-junit: ^15.0.0 + simulate-event: ~1.4.0 + ts-jest: ^29.1.0 + peerDependencies: + typescript: ">=4.3" + checksum: 560067f69f5778f11594609dff0aeca5326a91a48d870b807790b368bc7cb89bcb9d4c1c154a234fe6963bf230a01cd0cd52106c497b6b7f0ff67bb99e491424 + languageName: node + linkType: hard + +"@jupyterlab/testutils@npm:^4.0.0": + version: 4.3.5 + resolution: "@jupyterlab/testutils@npm:4.3.5" + dependencies: + "@jupyterlab/application": ^4.3.5 + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/notebook": ^4.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/testing": ^4.3.5 + checksum: 23760c5f570d05fade6e36ff3b0db14bf7e00a9b43b3e89739b5af50a28f37d3f2a2b5ea7e2e96daa6e7e5d5bd1021dff497b0584ef4e0a4820e5bd072b560d2 + languageName: node + linkType: hard + +"@jupyterlab/toc@npm:^6.3.5": + version: 6.3.5 + resolution: "@jupyterlab/toc@npm:6.3.5" + dependencies: + "@jupyter/react-components": ^0.16.6 + "@jupyterlab/apputils": ^4.4.5 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/docregistry": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/translation": ^4.3.5 + "@jupyterlab/ui-components": ^4.3.5 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 378625dc3f647f524304e050da4bd753872b9d6cb2a4ff52f1846acd59d51c24fe935ea35c7bc758c3dfe66b5908955b5ed2ebeaa78fcf25b23ffdcde59d6b28 + languageName: node + linkType: hard + "@jupyterlab/translation@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/translation@npm:4.3.2" @@ -1142,6 +3243,19 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/translation@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/translation@npm:4.3.5" + dependencies: + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/services": ^7.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@lumino/coreutils": ^2.2.0 + checksum: 390aeadcc0c82b660c58fb3e0910835e57f66a59220a9dc116650b78498330b8a3d516aca471e7f7b3e1f4176e4fa8f3185678bb50a4c99586a1e8490070178f + languageName: node + linkType: hard + "@jupyterlab/ui-components@npm:^4.3.2": version: 4.3.2 resolution: "@jupyterlab/ui-components@npm:4.3.2" @@ -1173,6 +3287,37 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/ui-components@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/ui-components@npm:4.3.5" + dependencies: + "@jupyter/react-components": ^0.16.6 + "@jupyter/web-components": ^0.16.6 + "@jupyterlab/coreutils": ^6.3.5 + "@jupyterlab/observables": ^5.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 + "@jupyterlab/translation": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + "@rjsf/core": ^5.13.4 + "@rjsf/utils": ^5.13.4 + react: ^18.2.0 + react-dom: ^18.2.0 + typestyle: ^2.0.4 + peerDependencies: + react: ^18.2.0 + checksum: 9d9ef4fdd0be710684393c4eb0ceaec6a644e14a14c6226a02ba28ee9168b28299d1824ab7b1308b328dee9f2f20208c196019714a5bb94c94516d918d273732 + languageName: node + linkType: hard + "@lerna/create@npm:8.1.9": version: 8.1.9 resolution: "@lerna/create@npm:8.1.9" @@ -1252,6 +3397,164 @@ __metadata: languageName: node linkType: hard +"@lezer/common@npm:^1.0.0, @lezer/common@npm:^1.0.2, @lezer/common@npm:^1.1.0, @lezer/common@npm:^1.2.0, @lezer/common@npm:^1.2.1": + version: 1.2.3 + resolution: "@lezer/common@npm:1.2.3" + checksum: 9b5f52d949adae69d077f56c0b1c2295923108c3dfb241dd9f17654ff708f3eab81ff9fa7f0d0e4a668eabdcb9d961c73e75caca87c966ca1436e30e49130fcb + languageName: node + linkType: hard + +"@lezer/cpp@npm:^1.0.0": + version: 1.1.2 + resolution: "@lezer/cpp@npm:1.1.2" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: a319cd46fd32affc07c9432e9b2b9954becf7766be0361176c525d03474bb794cc051aad9932f48c9df33833eee1d6bfdccab12e571f2b137b4ca765c60c75de + languageName: node + linkType: hard + +"@lezer/css@npm:^1.1.0, @lezer/css@npm:^1.1.7": + version: 1.1.10 + resolution: "@lezer/css@npm:1.1.10" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 67f302f0b2c84adc8380e77635c225c8eb3a773402e89f85180eb9fdc90ba3fee19ee4ba915523bfbe346ea07746a1b5832e369adfcfb222eedd7b1b1556bf9a + languageName: node + linkType: hard + +"@lezer/generator@npm:^1.7.0": + version: 1.7.2 + resolution: "@lezer/generator@npm:1.7.2" + dependencies: + "@lezer/common": ^1.1.0 + "@lezer/lr": ^1.3.0 + bin: + lezer-generator: src/lezer-generator.cjs + checksum: b5d282c7c749d816f373478ebebbcad839125918ac2038d870d880fc0fb1c932b278b3652beb5854d9a0b5aa8e1a9ba24f8359c5ce4c2b9a5393f85c395a2a91 + languageName: node + linkType: hard + +"@lezer/highlight@npm:^1.0.0, @lezer/highlight@npm:^1.1.3, @lezer/highlight@npm:^1.2.0": + version: 1.2.1 + resolution: "@lezer/highlight@npm:1.2.1" + dependencies: + "@lezer/common": ^1.0.0 + checksum: a8822d7e37f79ff64669eb2df4a9f9d16580e88f2b276a646092e19a9bdccac304e92510e200e35869a8b1f6c27eba5972c508d347a277e9b722d582ab7a23d5 + languageName: node + linkType: hard + +"@lezer/html@npm:^1.3.0": + version: 1.3.10 + resolution: "@lezer/html@npm:1.3.10" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: cce391aab9259704ae3079b3209f74b2f248594dd8b851c28aaff26765e00ebb890a5ff1fe600f2d03aaf4ade0e36de8048d9632b12bfbccd47b3e649c3b0ecd + languageName: node + linkType: hard + +"@lezer/java@npm:^1.0.0": + version: 1.1.3 + resolution: "@lezer/java@npm:1.1.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: a4b8a348ab08465cff6e54ec80e397d2629e0911decb4c6a47fd56cd74f6978fae478879b15a2e239203b9e53aef41ecaeba675f8013e290165249abdab7da74 + languageName: node + linkType: hard + +"@lezer/javascript@npm:^1.0.0": + version: 1.4.21 + resolution: "@lezer/javascript@npm:1.4.21" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.1.3 + "@lezer/lr": ^1.3.0 + checksum: 5ff9edaf53fe399d5e1c0c2196837325ca5cf81b59fda546e8ae81a4748f7cbcc4d258202fe77bbb3d5d9561ce8fb2b79cb87f0922c5f5d1117eb6f545fc1055 + languageName: node + linkType: hard + +"@lezer/json@npm:^1.0.0": + version: 1.0.3 + resolution: "@lezer/json@npm:1.0.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 48e7b945fdfa2b5b6f862e27bc31f3991cba93f18df7fed0059b25f119b64dedd50bbc709d279e16e2b3eee10e7758d7d80c6d98d21bc15c284809d268837897 + languageName: node + linkType: hard + +"@lezer/lr@npm:^1.0.0, @lezer/lr@npm:^1.1.0, @lezer/lr@npm:^1.3.0": + version: 1.4.2 + resolution: "@lezer/lr@npm:1.4.2" + dependencies: + "@lezer/common": ^1.0.0 + checksum: 94318ad046c7dfcc8d37e26cb85b99623c39aef60aa51ec2abb30928e7a649f38fa5520f34bd5b356f1db11b6991999589f039e87c8949b0f163be3764f029d8 + languageName: node + linkType: hard + +"@lezer/markdown@npm:^1.0.0, @lezer/markdown@npm:^1.3.0": + version: 1.4.1 + resolution: "@lezer/markdown@npm:1.4.1" + dependencies: + "@lezer/common": ^1.0.0 + "@lezer/highlight": ^1.0.0 + "@marijn/buildtool": ^0.1.6 + checksum: dcd5a85d3a769a91ba4bece25cfb00e6fd6249f1a2697b70ef448219843e242be04eb58499f23e5b7e5cdb7dc25eaac938c9508892d7e057a2873ee20195f8c5 + languageName: node + linkType: hard + +"@lezer/php@npm:^1.0.0": + version: 1.0.2 + resolution: "@lezer/php@npm:1.0.2" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.1.0 + checksum: c85ef18571d37826b687dd141a0fe110f5814adaf9d1a391e7e482020d7f81df189ca89ec0dd141c1433d48eff4c6e53648b46f008dea8ad2dc574f35f1d4d79 + languageName: node + linkType: hard + +"@lezer/python@npm:^1.1.4": + version: 1.1.15 + resolution: "@lezer/python@npm:1.1.15" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 106ef0a56d0ccac6bcba02ee91770f6cd96fe599edc061300e2d0556ae53a68d32fb8f94e8baeaa34f06127dcb39513425e180966b1fd5cba78da2b78e9ee3c3 + languageName: node + linkType: hard + +"@lezer/rust@npm:^1.0.0": + version: 1.0.2 + resolution: "@lezer/rust@npm:1.0.2" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: fc5e97852b42beeb44a0ebe316dc64e3cc49ff481c22e3e67d6003fc4a5c257fcd94959cfcc76cd154fa172db9b3b4b28de5c09f10550d6e5f14869ddc274e5b + languageName: node + linkType: hard + +"@lezer/xml@npm:^1.0.0": + version: 1.0.6 + resolution: "@lezer/xml@npm:1.0.6" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 71217d49b9207bd19d69ae98ad406d0c7ff395b6ad118528f3f81455f973e01597cac1ffa2741f2c6739d4ede17edb49573eaa3246f8f5a6da4d97dcb940309d + languageName: node + linkType: hard + "@lumino/algorithm@npm:^2.0.2": version: 2.0.2 resolution: "@lumino/algorithm@npm:2.0.2" @@ -1402,6 +3705,27 @@ __metadata: languageName: node linkType: hard +"@marijn/buildtool@npm:^0.1.6": + version: 0.1.6 + resolution: "@marijn/buildtool@npm:0.1.6" + dependencies: + "@types/mocha": ^9.1.1 + acorn: ^8.10.0 + acorn-walk: ^8.2.0 + rollup: ^3.28.0 + rollup-plugin-dts: ^5.3.1 + typescript: ^5.1.6 + checksum: e4015d7a2b77e3a9ef6fecf45c848362ecb05f347e16114aa90391399a40ac689c618b9bd4f21ca411fd9733cecf58817e1ba546bd9f09fc92efd6df2f7a5481 + languageName: node + linkType: hard + +"@marijn/find-cluster-break@npm:^1.0.0": + version: 1.0.2 + resolution: "@marijn/find-cluster-break@npm:1.0.2" + checksum: 0d836de25e04d58325813401ef3c2d34caf040da985a5935fcbc9d84e7b47a21bdb15f57d70c2bf0960bd29ed3dbbb1afd00cdd0fc4fafbee7fd0ffe7d508ae1 + languageName: node + linkType: hard + "@microsoft/fast-colors@npm:^5.3.1": version: 5.3.1 resolution: "@microsoft/fast-colors@npm:5.3.1" @@ -1986,13 +4310,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.28.0" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - "@rollup/rollup-android-arm-eabi@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-android-arm-eabi@npm:4.34.6" @@ -2000,13 +4317,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-android-arm64@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-android-arm64@npm:4.28.0" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - "@rollup/rollup-android-arm64@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-android-arm64@npm:4.34.6" @@ -2014,13 +4324,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-darwin-arm64@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-darwin-arm64@npm:4.28.0" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - "@rollup/rollup-darwin-arm64@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-darwin-arm64@npm:4.34.6" @@ -2028,13 +4331,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-darwin-x64@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-darwin-x64@npm:4.28.0" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - "@rollup/rollup-darwin-x64@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-darwin-x64@npm:4.34.6" @@ -2042,13 +4338,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-freebsd-arm64@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-freebsd-arm64@npm:4.28.0" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - "@rollup/rollup-freebsd-arm64@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-freebsd-arm64@npm:4.34.6" @@ -2056,13 +4345,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-freebsd-x64@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-freebsd-x64@npm:4.28.0" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - "@rollup/rollup-freebsd-x64@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-freebsd-x64@npm:4.34.6" @@ -2070,13 +4352,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-arm-gnueabihf@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.28.0" - conditions: os=linux & cpu=arm & libc=glibc - languageName: node - linkType: hard - "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.6" @@ -2084,13 +4359,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-arm-musleabihf@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.28.0" - conditions: os=linux & cpu=arm & libc=musl - languageName: node - linkType: hard - "@rollup/rollup-linux-arm-musleabihf@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.34.6" @@ -2098,13 +4366,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-arm64-gnu@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.28.0" - conditions: os=linux & cpu=arm64 & libc=glibc - languageName: node - linkType: hard - "@rollup/rollup-linux-arm64-gnu@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.34.6" @@ -2112,13 +4373,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-arm64-musl@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.28.0" - conditions: os=linux & cpu=arm64 & libc=musl - languageName: node - linkType: hard - "@rollup/rollup-linux-arm64-musl@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-arm64-musl@npm:4.34.6" @@ -2133,13 +4387,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.28.0" - conditions: os=linux & cpu=ppc64 & libc=glibc - languageName: node - linkType: hard - "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.6" @@ -2147,13 +4394,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-riscv64-gnu@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.28.0" - conditions: os=linux & cpu=riscv64 & libc=glibc - languageName: node - linkType: hard - "@rollup/rollup-linux-riscv64-gnu@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.34.6" @@ -2161,13 +4401,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-s390x-gnu@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.28.0" - conditions: os=linux & cpu=s390x & libc=glibc - languageName: node - linkType: hard - "@rollup/rollup-linux-s390x-gnu@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.34.6" @@ -2175,13 +4408,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-x64-gnu@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.28.0" - conditions: os=linux & cpu=x64 & libc=glibc - languageName: node - linkType: hard - "@rollup/rollup-linux-x64-gnu@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-x64-gnu@npm:4.34.6" @@ -2189,13 +4415,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-linux-x64-musl@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.28.0" - conditions: os=linux & cpu=x64 & libc=musl - languageName: node - linkType: hard - "@rollup/rollup-linux-x64-musl@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-linux-x64-musl@npm:4.34.6" @@ -2203,13 +4422,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-win32-arm64-msvc@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.28.0" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - "@rollup/rollup-win32-arm64-msvc@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.34.6" @@ -2217,13 +4429,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-win32-ia32-msvc@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.28.0" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - "@rollup/rollup-win32-ia32-msvc@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.34.6" @@ -2231,13 +4436,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-win32-x64-msvc@npm:4.28.0": - version: 4.28.0 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.28.0" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@rollup/rollup-win32-x64-msvc@npm:4.34.6": version: 4.34.6 resolution: "@rollup/rollup-win32-x64-msvc@npm:4.34.6" @@ -2310,6 +4508,31 @@ __metadata: languageName: node linkType: hard +"@sinonjs/commons@npm:^3.0.0": + version: 3.0.1 + resolution: "@sinonjs/commons@npm:3.0.1" + dependencies: + type-detect: 4.0.8 + checksum: a7c3e7cc612352f4004873747d9d8b2d4d90b13a6d483f685598c945a70e734e255f1ca5dc49702515533c403b32725defff148177453b3f3915bcb60e9d4601 + languageName: node + linkType: hard + +"@sinonjs/fake-timers@npm:^10.0.2": + version: 10.3.0 + resolution: "@sinonjs/fake-timers@npm:10.3.0" + dependencies: + "@sinonjs/commons": ^3.0.0 + checksum: 614d30cb4d5201550c940945d44c9e0b6d64a888ff2cd5b357f95ad6721070d6b8839cd10e15b76bf5e14af0bcc1d8f9ec00d49a46318f1f669a4bec1d7f3148 + languageName: node + linkType: hard + +"@tootallnate/once@npm:2": + version: 2.0.0 + resolution: "@tootallnate/once@npm:2.0.0" + checksum: ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 + languageName: node + linkType: hard + "@tufjs/canonical-json@npm:2.0.0": version: 2.0.0 resolution: "@tufjs/canonical-json@npm:2.0.0" @@ -2336,7 +4559,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7.20.5": +"@types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.20.5": version: 7.20.5 resolution: "@types/babel__core@npm:7.20.5" dependencies: @@ -2368,7 +4591,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__traverse@npm:*": +"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": version: 7.20.6 resolution: "@types/babel__traverse@npm:7.20.6" dependencies: @@ -2421,6 +4644,61 @@ __metadata: languageName: node linkType: hard +"@types/graceful-fs@npm:^4.1.3": + version: 4.1.9 + resolution: "@types/graceful-fs@npm:4.1.9" + dependencies: + "@types/node": "*" + checksum: 79d746a8f053954bba36bd3d94a90c78de995d126289d656fb3271dd9f1229d33f678da04d10bce6be440494a5a73438e2e363e92802d16b8315b051036c5256 + languageName: node + linkType: hard + +"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": + version: 2.0.6 + resolution: "@types/istanbul-lib-coverage@npm:2.0.6" + checksum: 3feac423fd3e5449485afac999dcfcb3d44a37c830af898b689fadc65d26526460bedb889db278e0d4d815a670331796494d073a10ee6e3a6526301fe7415778 + languageName: node + linkType: hard + +"@types/istanbul-lib-report@npm:*": + version: 3.0.3 + resolution: "@types/istanbul-lib-report@npm:3.0.3" + dependencies: + "@types/istanbul-lib-coverage": "*" + checksum: b91e9b60f865ff08cb35667a427b70f6c2c63e88105eadd29a112582942af47ed99c60610180aa8dcc22382fa405033f141c119c69b95db78c4c709fbadfeeb4 + languageName: node + linkType: hard + +"@types/istanbul-reports@npm:^3.0.0": + version: 3.0.4 + resolution: "@types/istanbul-reports@npm:3.0.4" + dependencies: + "@types/istanbul-lib-report": "*" + checksum: 93eb18835770b3431f68ae9ac1ca91741ab85f7606f310a34b3586b5a34450ec038c3eed7ab19266635499594de52ff73723a54a72a75b9f7d6a956f01edee95 + languageName: node + linkType: hard + +"@types/jest@npm:^29.2.0": + version: 29.5.14 + resolution: "@types/jest@npm:29.5.14" + dependencies: + expect: ^29.0.0 + pretty-format: ^29.0.0 + checksum: 18dba4623f26661641d757c63da2db45e9524c9be96a29ef713c703a9a53792df9ecee9f7365a0858ddbd6440d98fe6b65ca67895ca5884b73cbc7ffc11f3838 + languageName: node + linkType: hard + +"@types/jsdom@npm:^20.0.0": + version: 20.0.1 + resolution: "@types/jsdom@npm:20.0.1" + dependencies: + "@types/node": "*" + "@types/tough-cookie": "*" + parse5: ^7.0.0 + checksum: d55402c5256ef451f93a6e3d3881f98339fe73a5ac2030588df056d6835df8367b5a857b48d27528289057e26dcdd3f502edc00cb877c79174cb3a4c7f2198c1 + languageName: node + linkType: hard + "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" @@ -2442,6 +4720,13 @@ __metadata: languageName: node linkType: hard +"@types/mocha@npm:^9.1.1": + version: 9.1.1 + resolution: "@types/mocha@npm:9.1.1" + checksum: 516077c0acd9806dc78317f88aaac0df5aaf0bdc2f63dfdadeabdf0b0137953b6ca65472e6ff7c30bc93ce4e0ae76eae70e8d46764b9a8eae4877a928b6ef49a + languageName: node + linkType: hard + "@types/node@npm:*": version: 22.10.1 resolution: "@types/node@npm:22.10.1" @@ -2517,6 +4802,20 @@ __metadata: languageName: node linkType: hard +"@types/stack-utils@npm:^2.0.0": + version: 2.0.3 + resolution: "@types/stack-utils@npm:2.0.3" + checksum: 72576cc1522090fe497337c2b99d9838e320659ac57fa5560fcbdcbafcf5d0216c6b3a0a8a4ee4fdb3b1f5e3420aa4f6223ab57b82fef3578bec3206425c6cf5 + languageName: node + linkType: hard + +"@types/tough-cookie@npm:*": + version: 4.0.5 + resolution: "@types/tough-cookie@npm:4.0.5" + checksum: f19409d0190b179331586365912920d192733112a195e870c7f18d20ac8adb7ad0b0ff69dad430dba8bc2be09593453a719cfea92dc3bda19748fd158fe1498d + languageName: node + linkType: hard + "@types/webpack-sources@npm:^0.1.5": version: 0.1.12 resolution: "@types/webpack-sources@npm:0.1.12" @@ -2528,6 +4827,22 @@ __metadata: languageName: node linkType: hard +"@types/yargs-parser@npm:*": + version: 21.0.3 + resolution: "@types/yargs-parser@npm:21.0.3" + checksum: ef236c27f9432983e91432d974243e6c4cdae227cb673740320eff32d04d853eed59c92ca6f1142a335cfdc0e17cccafa62e95886a8154ca8891cc2dec4ee6fc + languageName: node + linkType: hard + +"@types/yargs@npm:^17.0.8": + version: 17.0.33 + resolution: "@types/yargs@npm:17.0.33" + dependencies: + "@types/yargs-parser": "*" + checksum: ee013f257472ab643cb0584cf3e1ff9b0c44bca1c9ba662395300a7f1a6c55fa9d41bd40ddff42d99f5d95febb3907c9ff600fbcb92dadbec22c6a76de7e1236 + languageName: node + linkType: hard + "@typescript-eslint/eslint-plugin@npm:^6.1.0": version: 6.21.0 resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" @@ -2911,7 +5226,7 @@ __metadata: languageName: node linkType: hard -"abab@npm:^2.0.3, abab@npm:^2.0.5": +"abab@npm:^2.0.3, abab@npm:^2.0.5, abab@npm:^2.0.6": version: 2.0.6 resolution: "abab@npm:2.0.6" checksum: 6ffc1af4ff315066c62600123990d87551ceb0aafa01e6539da77b0f5987ac7019466780bf480f1787576d4385e3690c81ccc37cfda12819bf510b8ab47e5a3e @@ -2925,6 +5240,16 @@ __metadata: languageName: node linkType: hard +"acorn-globals@npm:^7.0.0": + version: 7.0.1 + resolution: "acorn-globals@npm:7.0.1" + dependencies: + acorn: ^8.1.0 + acorn-walk: ^8.0.2 + checksum: 2a2998a547af6d0db5f0cdb90acaa7c3cbca6709010e02121fb8b8617c0fbd8bab0b869579903fde358ac78454356a14fadcc1a672ecb97b04b1c2ccba955ce8 + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -2934,7 +5259,16 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.14.0, acorn@npm:^8.8.2, acorn@npm:^8.9.0": +"acorn-walk@npm:^8.0.2, acorn-walk@npm:^8.2.0": + version: 8.3.4 + resolution: "acorn-walk@npm:8.3.4" + dependencies: + acorn: ^8.11.0 + checksum: 4ff03f42323e7cf90f1683e08606b0f460e1e6ac263d2730e3df91c7665b6f64e696db6ea27ee4bed18c2599569be61f28a8399fa170c611161a348c402ca19c + languageName: node + linkType: hard + +"acorn@npm:^8.1.0, acorn@npm:^8.10.0, acorn@npm:^8.11.0, acorn@npm:^8.14.0, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": version: 8.14.0 resolution: "acorn@npm:8.14.0" bin: @@ -2950,6 +5284,15 @@ __metadata: languageName: node linkType: hard +"agent-base@npm:6": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" + dependencies: + debug: 4 + checksum: f52b6872cc96fd5f622071b71ef200e01c7c4c454ee68bc9accca90c98cfb39f2810e3e9aa330435835eedc8c23f4f8a15267f67c6e245d2b33757575bdac49d + languageName: node + linkType: hard + "agent-base@npm:^7.0.2, agent-base@npm:^7.1.0, agent-base@npm:^7.1.1": version: 7.1.1 resolution: "agent-base@npm:7.1.1" @@ -3082,13 +5425,23 @@ __metadata: languageName: node linkType: hard -"ansi-styles@npm:^6.1.0": +"ansi-styles@npm:^6.1.0, ansi-styles@npm:^6.2.1": version: 6.2.1 resolution: "ansi-styles@npm:6.2.1" checksum: ef940f2f0ced1a6347398da88a91da7930c33ecac3c77b72c5905f8b8fe402c52e6fde304ff5347f616e27a742da3f1dc76de98f6866c69251ad0b07a66776d9 languageName: node linkType: hard +"anymatch@npm:^3.0.3": + version: 3.1.3 + resolution: "anymatch@npm:3.1.3" + dependencies: + normalize-path: ^3.0.0 + picomatch: ^2.0.4 + checksum: 3e044fd6d1d26545f235a9fe4d7a534e2029d8e59fa7fd9f2a6eb21230f6b5380ea1eaf55136e60cbf8e613544b3b766e7a6fa2102e2a3a117505466e3025dc2 + languageName: node + linkType: hard + "aproba@npm:2.0.0": version: 2.0.0 resolution: "aproba@npm:2.0.0" @@ -3173,44 +5526,159 @@ __metadata: languageName: node linkType: hard -"astral-regex@npm:^2.0.0": - version: 2.0.0 - resolution: "astral-regex@npm:2.0.0" - checksum: 876231688c66400473ba505731df37ea436e574dd524520294cc3bbc54ea40334865e01fa0d074d74d036ee874ee7e62f486ea38bc421ee8e6a871c06f011766 +"astral-regex@npm:^2.0.0": + version: 2.0.0 + resolution: "astral-regex@npm:2.0.0" + checksum: 876231688c66400473ba505731df37ea436e574dd524520294cc3bbc54ea40334865e01fa0d074d74d036ee874ee7e62f486ea38bc421ee8e6a871c06f011766 + languageName: node + linkType: hard + +"async@npm:^3.2.3": + version: 3.2.6 + resolution: "async@npm:3.2.6" + checksum: ee6eb8cd8a0ab1b58bd2a3ed6c415e93e773573a91d31df9d5ef559baafa9dab37d3b096fa7993e84585cac3697b2af6ddb9086f45d3ac8cae821bb2aab65682 + languageName: node + linkType: hard + +"asynckit@npm:^0.4.0": + version: 0.4.0 + resolution: "asynckit@npm:0.4.0" + checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be + languageName: node + linkType: hard + +"available-typed-arrays@npm:^1.0.7": + version: 1.0.7 + resolution: "available-typed-arrays@npm:1.0.7" + dependencies: + possible-typed-array-names: ^1.0.0 + checksum: 1aa3ffbfe6578276996de660848b6e95669d9a95ad149e3dd0c0cda77db6ee1dbd9d1dd723b65b6d277b882dd0c4b91a654ae9d3cf9e1254b7e93e4908d78fd3 + languageName: node + linkType: hard + +"axios@npm:^1.7.4": + version: 1.7.9 + resolution: "axios@npm:1.7.9" + dependencies: + follow-redirects: ^1.15.6 + form-data: ^4.0.0 + proxy-from-env: ^1.1.0 + checksum: cb8ce291818effda09240cb60f114d5625909b345e10f389a945320e06acf0bc949d0f8422d25720f5dd421362abee302c99f5e97edec4c156c8939814b23d19 + languageName: node + linkType: hard + +"babel-jest@npm:^29.7.0": + version: 29.7.0 + resolution: "babel-jest@npm:29.7.0" + dependencies: + "@jest/transform": ^29.7.0 + "@types/babel__core": ^7.1.14 + babel-plugin-istanbul: ^6.1.1 + babel-preset-jest: ^29.6.3 + chalk: ^4.0.0 + graceful-fs: ^4.2.9 + slash: ^3.0.0 + peerDependencies: + "@babel/core": ^7.8.0 + checksum: ee6f8e0495afee07cac5e4ee167be705c711a8cc8a737e05a587a131fdae2b3c8f9aa55dfd4d9c03009ac2d27f2de63d8ba96d3e8460da4d00e8af19ef9a83f7 + languageName: node + linkType: hard + +"babel-plugin-istanbul@npm:^6.1.1": + version: 6.1.1 + resolution: "babel-plugin-istanbul@npm:6.1.1" + dependencies: + "@babel/helper-plugin-utils": ^7.0.0 + "@istanbuljs/load-nyc-config": ^1.0.0 + "@istanbuljs/schema": ^0.1.2 + istanbul-lib-instrument: ^5.0.4 + test-exclude: ^6.0.0 + checksum: cb4fd95738219f232f0aece1116628cccff16db891713c4ccb501cddbbf9272951a5df81f2f2658dfdf4b3e7b236a9d5cbcf04d5d8c07dd5077297339598061a + languageName: node + linkType: hard + +"babel-plugin-jest-hoist@npm:^29.6.3": + version: 29.6.3 + resolution: "babel-plugin-jest-hoist@npm:29.6.3" + dependencies: + "@babel/template": ^7.3.3 + "@babel/types": ^7.3.3 + "@types/babel__core": ^7.1.14 + "@types/babel__traverse": ^7.0.6 + checksum: 51250f22815a7318f17214a9d44650ba89551e6d4f47a2dc259128428324b52f5a73979d010cefd921fd5a720d8c1d55ad74ff601cd94c7bd44d5f6292fde2d1 + languageName: node + linkType: hard + +"babel-plugin-polyfill-corejs2@npm:^0.4.10": + version: 0.4.12 + resolution: "babel-plugin-polyfill-corejs2@npm:0.4.12" + dependencies: + "@babel/compat-data": ^7.22.6 + "@babel/helper-define-polyfill-provider": ^0.6.3 + semver: ^6.3.1 + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: 6e6e6a8b85fec80a310ded2f5c151385e4ac59118909dd6a952e1025e4a478eb79dda45a5a6322cc2e598fd696eb07d4e2fa52418b4101f3dc370bdf8c8939ba languageName: node linkType: hard -"async@npm:^3.2.3": - version: 3.2.6 - resolution: "async@npm:3.2.6" - checksum: ee6eb8cd8a0ab1b58bd2a3ed6c415e93e773573a91d31df9d5ef559baafa9dab37d3b096fa7993e84585cac3697b2af6ddb9086f45d3ac8cae821bb2aab65682 +"babel-plugin-polyfill-corejs3@npm:^0.11.0": + version: 0.11.1 + resolution: "babel-plugin-polyfill-corejs3@npm:0.11.1" + dependencies: + "@babel/helper-define-polyfill-provider": ^0.6.3 + core-js-compat: ^3.40.0 + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: ee39440475ef377a1570ccbc06b1a1d274cbfbbe2e7c3d4c60f38781a47f00a28bd10d8e23430828b965820c41beb2c93c84596baf72583a2c9c3fdfa4397994 languageName: node linkType: hard -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be +"babel-plugin-polyfill-regenerator@npm:^0.6.1": + version: 0.6.3 + resolution: "babel-plugin-polyfill-regenerator@npm:0.6.3" + dependencies: + "@babel/helper-define-polyfill-provider": ^0.6.3 + peerDependencies: + "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 + checksum: d12696e6b3f280eb78fac551619ca4389262db62c7352cd54bf679d830df8b35596eef2de77cf00db6648eada1c99d49c4f40636dbc9c335a1e5420cfef96750 languageName: node linkType: hard -"available-typed-arrays@npm:^1.0.7": - version: 1.0.7 - resolution: "available-typed-arrays@npm:1.0.7" - dependencies: - possible-typed-array-names: ^1.0.0 - checksum: 1aa3ffbfe6578276996de660848b6e95669d9a95ad149e3dd0c0cda77db6ee1dbd9d1dd723b65b6d277b882dd0c4b91a654ae9d3cf9e1254b7e93e4908d78fd3 +"babel-preset-current-node-syntax@npm:^1.0.0": + version: 1.1.0 + resolution: "babel-preset-current-node-syntax@npm:1.1.0" + dependencies: + "@babel/plugin-syntax-async-generators": ^7.8.4 + "@babel/plugin-syntax-bigint": ^7.8.3 + "@babel/plugin-syntax-class-properties": ^7.12.13 + "@babel/plugin-syntax-class-static-block": ^7.14.5 + "@babel/plugin-syntax-import-attributes": ^7.24.7 + "@babel/plugin-syntax-import-meta": ^7.10.4 + "@babel/plugin-syntax-json-strings": ^7.8.3 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 + "@babel/plugin-syntax-object-rest-spread": ^7.8.3 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 + "@babel/plugin-syntax-optional-chaining": ^7.8.3 + "@babel/plugin-syntax-private-property-in-object": ^7.14.5 + "@babel/plugin-syntax-top-level-await": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 9f93fac975eaba296c436feeca1031ca0539143c4066eaf5d1ba23525a31850f03b651a1049caea7287df837a409588c8252c15627ad3903f17864c8e25ed64b languageName: node linkType: hard -"axios@npm:^1.7.4": - version: 1.7.9 - resolution: "axios@npm:1.7.9" +"babel-preset-jest@npm:^29.6.3": + version: 29.6.3 + resolution: "babel-preset-jest@npm:29.6.3" dependencies: - follow-redirects: ^1.15.6 - form-data: ^4.0.0 - proxy-from-env: ^1.1.0 - checksum: cb8ce291818effda09240cb60f114d5625909b345e10f389a945320e06acf0bc949d0f8422d25720f5dd421362abee302c99f5e97edec4c156c8939814b23d19 + babel-plugin-jest-hoist: ^29.6.3 + babel-preset-current-node-syntax: ^1.0.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: aa4ff2a8a728d9d698ed521e3461a109a1e66202b13d3494e41eea30729a5e7cc03b3a2d56c594423a135429c37bf63a9fa8b0b9ce275298be3095a88c69f6fb languageName: node linkType: hard @@ -3314,6 +5782,38 @@ __metadata: languageName: node linkType: hard +"browserslist@npm:^4.24.3": + version: 4.24.4 + resolution: "browserslist@npm:4.24.4" + dependencies: + caniuse-lite: ^1.0.30001688 + electron-to-chromium: ^1.5.73 + node-releases: ^2.0.19 + update-browserslist-db: ^1.1.1 + bin: + browserslist: cli.js + checksum: 64074bf6cf0a9ae3094d753270e3eae9cf925149db45d646f0bc67bacc2e46d7ded64a4e835b95f5fdcf0350f63a83c3755b32f80831f643a47f0886deb8a065 + languageName: node + linkType: hard + +"bs-logger@npm:^0.2.6": + version: 0.2.6 + resolution: "bs-logger@npm:0.2.6" + dependencies: + fast-json-stable-stringify: 2.x + checksum: d34bdaf68c64bd099ab97c3ea608c9ae7d3f5faa1178b3f3f345acd94e852e608b2d4f9103fb2e503f5e69780e98293df41691b84be909b41cf5045374d54606 + languageName: node + linkType: hard + +"bser@npm:2.1.1": + version: 2.1.1 + resolution: "bser@npm:2.1.1" + dependencies: + node-int64: ^0.4.0 + checksum: 9ba4dc58ce86300c862bffc3ae91f00b2a03b01ee07f3564beeeaf82aa243b8b03ba53f123b0b842c190d4399b94697970c8e7cf7b1ea44b61aa28c3526a4449 + languageName: node + linkType: hard + "buffer-from@npm:^1.0.0": version: 1.1.2 resolution: "buffer-from@npm:1.1.2" @@ -3428,7 +5928,7 @@ __metadata: languageName: node linkType: hard -"camelcase@npm:^6.3.0": +"camelcase@npm:^6.2.0, camelcase@npm:^6.3.0": version: 6.3.0 resolution: "camelcase@npm:6.3.0" checksum: 8c96818a9076434998511251dcb2761a94817ea17dbdc37f47ac080bd088fc62c7369429a19e2178b993497132c8cbcf5cc1f44ba963e76782ba469c0474938d @@ -3442,6 +5942,13 @@ __metadata: languageName: node linkType: hard +"caniuse-lite@npm:^1.0.30001688": + version: 1.0.30001700 + resolution: "caniuse-lite@npm:1.0.30001700" + checksum: 0e5e1c8648efeae1a2bcf371c872a4e41d9508d58b47133558f78b99c3d58c4b6ce7688068ea872deffbfc7c3c2a117e756fc48e1de7ae6c5540f3c3a4441c7a + languageName: node + linkType: hard + "chalk@npm:4.1.0": version: 4.1.0 resolution: "chalk@npm:4.1.0" @@ -3473,6 +5980,13 @@ __metadata: languageName: node linkType: hard +"char-regex@npm:^1.0.2": + version: 1.0.2 + resolution: "char-regex@npm:1.0.2" + checksum: b563e4b6039b15213114626621e7a3d12f31008bdce20f9c741d69987f62aeaace7ec30f6018890ad77b2e9b4d95324c9f5acfca58a9441e3b1dcdd1e2525d17 + languageName: node + linkType: hard + "chardet@npm:^0.7.0": version: 0.7.0 resolution: "chardet@npm:0.7.0" @@ -3515,6 +6029,13 @@ __metadata: languageName: node linkType: hard +"cjs-module-lexer@npm:^1.0.0": + version: 1.4.3 + resolution: "cjs-module-lexer@npm:1.4.3" + checksum: 221a1661a9ff4944b472c85ac7cd5029b2f2dc7f6c5f4ecf887f261503611110b43a48acb6c07f8f04109c772d1637fdb20b31252bf27058f35aa97bf5ad8b12 + languageName: node + linkType: hard + "clean-stack@npm:^2.0.0": version: 2.2.0 resolution: "clean-stack@npm:2.2.0" @@ -3599,6 +6120,20 @@ __metadata: languageName: node linkType: hard +"co@npm:^4.6.0": + version: 4.6.0 + resolution: "co@npm:4.6.0" + checksum: 5210d9223010eb95b29df06a91116f2cf7c8e0748a9013ed853b53f362ea0e822f1e5bb054fb3cefc645239a4cf966af1f6133a3b43f40d591f3b68ed6cf0510 + languageName: node + linkType: hard + +"collect-v8-coverage@npm:^1.0.0": + version: 1.0.2 + resolution: "collect-v8-coverage@npm:1.0.2" + checksum: c10f41c39ab84629d16f9f6137bc8a63d332244383fc368caf2d2052b5e04c20cd1fd70f66fcf4e2422b84c8226598b776d39d5f2d2a51867cc1ed5d1982b4da + languageName: node + linkType: hard + "color-convert@npm:^1.9.0": version: 1.9.3 resolution: "color-convert@npm:1.9.3" @@ -3867,6 +6402,15 @@ __metadata: languageName: node linkType: hard +"core-js-compat@npm:^3.40.0": + version: 3.40.0 + resolution: "core-js-compat@npm:3.40.0" + dependencies: + browserslist: ^4.24.3 + checksum: 7ad00607c481ab2ded13d72be9ca5db5bbf42e221a175e905fb425e1ef520864aea28736c7283f57e9552d570eb6204bed87fbc8b9eab0fcfd9a7830dacccd43 + languageName: node + linkType: hard + "core-util-is@npm:~1.0.0": version: 1.0.3 resolution: "core-util-is@npm:1.0.3" @@ -3908,6 +6452,30 @@ __metadata: languageName: node linkType: hard +"create-jest@npm:^29.7.0": + version: 29.7.0 + resolution: "create-jest@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + chalk: ^4.0.0 + exit: ^0.1.2 + graceful-fs: ^4.2.9 + jest-config: ^29.7.0 + jest-util: ^29.7.0 + prompts: ^2.0.1 + bin: + create-jest: bin/create-jest.js + checksum: 1427d49458adcd88547ef6fa39041e1fe9033a661293aa8d2c3aa1b4967cb5bf4f0c00436c7a61816558f28ba2ba81a94d5c962e8022ea9a883978fc8e1f2945 + languageName: node + linkType: hard + +"crelt@npm:^1.0.5": + version: 1.0.6 + resolution: "crelt@npm:1.0.6" + checksum: dad842093371ad702afbc0531bfca2b0a8dd920b23a42f26e66dabbed9aad9acd5b9030496359545ef3937c3aced0fd4ac39f7a2d280a23ddf9eb7fdcb94a69f + languageName: node + linkType: hard + "cross-spawn@npm:^6.0.5": version: 6.0.6 resolution: "cross-spawn@npm:6.0.6" @@ -3921,7 +6489,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3, cross-spawn@npm:^7.0.6": version: 7.0.6 resolution: "cross-spawn@npm:7.0.6" dependencies: @@ -3982,6 +6550,29 @@ __metadata: languageName: node linkType: hard +"cssom@npm:^0.5.0": + version: 0.5.0 + resolution: "cssom@npm:0.5.0" + checksum: 823471aa30091c59e0a305927c30e7768939b6af70405808f8d2ce1ca778cddcb24722717392438329d1691f9a87cb0183b64b8d779b56a961546d54854fde01 + languageName: node + linkType: hard + +"cssom@npm:~0.3.6": + version: 0.3.8 + resolution: "cssom@npm:0.3.8" + checksum: 24beb3087c76c0d52dd458be9ee1fbc80ac771478a9baef35dd258cdeb527c68eb43204dd439692bb2b1ae5272fa5f2946d10946edab0d04f1078f85e06bc7f6 + languageName: node + linkType: hard + +"cssstyle@npm:^2.3.0": + version: 2.3.0 + resolution: "cssstyle@npm:2.3.0" + dependencies: + cssom: ~0.3.6 + checksum: 5f05e6fd2e3df0b44695c2f08b9ef38b011862b274e320665176467c0725e44a53e341bc4959a41176e83b66064ab786262e7380fd1cabeae6efee0d255bb4e3 + languageName: node + linkType: hard + "csstype@npm:3.0.10": version: 3.0.10 resolution: "csstype@npm:3.0.10" @@ -4014,6 +6605,17 @@ __metadata: languageName: node linkType: hard +"data-urls@npm:^3.0.2": + version: 3.0.2 + resolution: "data-urls@npm:3.0.2" + dependencies: + abab: ^2.0.6 + whatwg-mimetype: ^3.0.0 + whatwg-url: ^11.0.0 + checksum: 033fc3dd0fba6d24bc9a024ddcf9923691dd24f90a3d26f6545d6a2f71ec6956f93462f2cdf2183cc46f10dc01ed3bcb36731a8208456eb1a08147e571fe2a76 + languageName: node + linkType: hard + "data-view-buffer@npm:^1.0.1": version: 1.0.1 resolution: "data-view-buffer@npm:1.0.1" @@ -4066,7 +6668,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:^4.1.0": +"debug@npm:^4.1.0, debug@npm:^4.1.1": version: 4.4.0 resolution: "debug@npm:4.4.0" dependencies: @@ -4102,7 +6704,14 @@ __metadata: languageName: node linkType: hard -"dedent@npm:1.5.3": +"decimal.js@npm:^10.4.2": + version: 10.5.0 + resolution: "decimal.js@npm:10.5.0" + checksum: 91c6b53b5dd2f39a05535349ced6840f591d1f914e3c025c6dcec6ffada6e3cfc8dc3f560d304b716be9a9aece3567a7f80f6aff8f38d11ab6f78541c3a91a01 + languageName: node + linkType: hard + +"dedent@npm:1.5.3, dedent@npm:^1.0.0": version: 1.5.3 resolution: "dedent@npm:1.5.3" peerDependencies: @@ -4173,9 +6782,9 @@ __metadata: languageName: node linkType: hard -"demo-react@workspace:demo-react": +"demo-react@workspace:demo": version: 0.0.0-use.local - resolution: "demo-react@workspace:demo-react" + resolution: "demo-react@workspace:demo" dependencies: "@eslint/js": ^9.19.0 "@types/react": ^19.0.8 @@ -4206,6 +6815,13 @@ __metadata: languageName: node linkType: hard +"detect-newline@npm:^3.0.0": + version: 3.1.0 + resolution: "detect-newline@npm:3.1.0" + checksum: ae6cd429c41ad01b164c59ea36f264a2c479598e61cba7c99da24175a7ab80ddf066420f2bec9a1c57a6bead411b4655ff15ad7d281c000a89791f48cbe939e7 + languageName: node + linkType: hard + "diff-sequences@npm:^29.6.3": version: 29.6.3 resolution: "diff-sequences@npm:29.6.3" @@ -4249,6 +6865,15 @@ __metadata: languageName: node linkType: hard +"domexception@npm:^4.0.0": + version: 4.0.0 + resolution: "domexception@npm:4.0.0" + dependencies: + webidl-conversions: ^7.0.0 + checksum: ddbc1268edf33a8ba02ccc596735ede80375ee0cf124b30d2f05df5b464ba78ef4f49889b6391df4a04954e63d42d5631c7fcf8b1c4f12bc531252977a5f13d5 + languageName: node + linkType: hard + "domhandler@npm:^5.0.2, domhandler@npm:^5.0.3": version: 5.0.3 resolution: "domhandler@npm:5.0.3" @@ -4320,7 +6945,7 @@ __metadata: languageName: node linkType: hard -"ejs@npm:^3.1.7": +"ejs@npm:^3.1.10, ejs@npm:^3.1.7": version: 3.1.10 resolution: "ejs@npm:3.1.10" dependencies: @@ -4338,6 +6963,20 @@ __metadata: languageName: node linkType: hard +"electron-to-chromium@npm:^1.5.73": + version: 1.5.102 + resolution: "electron-to-chromium@npm:1.5.102" + checksum: b16781303a09a7dcbede15cba4ed47e34c867070575e4b2045449fd5627395dcd6dee32028f7b9fc92081eac636771c8accf8c078fcbc0fed79dc14125ec0f7f + languageName: node + linkType: hard + +"emittery@npm:^0.13.1": + version: 0.13.1 + resolution: "emittery@npm:0.13.1" + checksum: 2b089ab6306f38feaabf4f6f02792f9ec85fc054fda79f44f6790e61bbf6bc4e1616afb9b232e0c5ec5289a8a452f79bfa6d905a6fd64e94b49981f0934001c6 + languageName: node + linkType: hard + "emoji-regex@npm:^8.0.0": version: 8.0.0 resolution: "emoji-regex@npm:8.0.0" @@ -4396,7 +7035,7 @@ __metadata: languageName: node linkType: hard -"entities@npm:^4.2.0, entities@npm:^4.4.0": +"entities@npm:^4.2.0, entities@npm:^4.4.0, entities@npm:^4.5.0": version: 4.5.0 resolution: "entities@npm:4.5.0" checksum: 853f8ebd5b425d350bffa97dd6958143179a5938352ccae092c62d1267c4e392a039be1bae7d51b6e4ffad25f51f9617531fedf5237f15df302ccfb452cbf2d7 @@ -4552,89 +7191,6 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.24.0": - version: 0.24.0 - resolution: "esbuild@npm:0.24.0" - dependencies: - "@esbuild/aix-ppc64": 0.24.0 - "@esbuild/android-arm": 0.24.0 - "@esbuild/android-arm64": 0.24.0 - "@esbuild/android-x64": 0.24.0 - "@esbuild/darwin-arm64": 0.24.0 - "@esbuild/darwin-x64": 0.24.0 - "@esbuild/freebsd-arm64": 0.24.0 - "@esbuild/freebsd-x64": 0.24.0 - "@esbuild/linux-arm": 0.24.0 - "@esbuild/linux-arm64": 0.24.0 - "@esbuild/linux-ia32": 0.24.0 - "@esbuild/linux-loong64": 0.24.0 - "@esbuild/linux-mips64el": 0.24.0 - "@esbuild/linux-ppc64": 0.24.0 - "@esbuild/linux-riscv64": 0.24.0 - "@esbuild/linux-s390x": 0.24.0 - "@esbuild/linux-x64": 0.24.0 - "@esbuild/netbsd-x64": 0.24.0 - "@esbuild/openbsd-arm64": 0.24.0 - "@esbuild/openbsd-x64": 0.24.0 - "@esbuild/sunos-x64": 0.24.0 - "@esbuild/win32-arm64": 0.24.0 - "@esbuild/win32-ia32": 0.24.0 - "@esbuild/win32-x64": 0.24.0 - dependenciesMeta: - "@esbuild/aix-ppc64": - optional: true - "@esbuild/android-arm": - optional: true - "@esbuild/android-arm64": - optional: true - "@esbuild/android-x64": - optional: true - "@esbuild/darwin-arm64": - optional: true - "@esbuild/darwin-x64": - optional: true - "@esbuild/freebsd-arm64": - optional: true - "@esbuild/freebsd-x64": - optional: true - "@esbuild/linux-arm": - optional: true - "@esbuild/linux-arm64": - optional: true - "@esbuild/linux-ia32": - optional: true - "@esbuild/linux-loong64": - optional: true - "@esbuild/linux-mips64el": - optional: true - "@esbuild/linux-ppc64": - optional: true - "@esbuild/linux-riscv64": - optional: true - "@esbuild/linux-s390x": - optional: true - "@esbuild/linux-x64": - optional: true - "@esbuild/netbsd-x64": - optional: true - "@esbuild/openbsd-arm64": - optional: true - "@esbuild/openbsd-x64": - optional: true - "@esbuild/sunos-x64": - optional: true - "@esbuild/win32-arm64": - optional: true - "@esbuild/win32-ia32": - optional: true - "@esbuild/win32-x64": - optional: true - bin: - esbuild: bin/esbuild - checksum: dd386d92a05c7eb03078480522cdd8b40c434777b5f08487c27971d30933ecaae3f08bd221958dd8f9c66214915cdc85f844283ca9bdbf8ee703d889ae526edd - languageName: node - linkType: hard - "esbuild@npm:^0.24.2": version: 0.24.2 resolution: "esbuild@npm:0.24.2" @@ -4735,6 +7291,13 @@ __metadata: languageName: node linkType: hard +"escape-string-regexp@npm:^2.0.0": + version: 2.0.0 + resolution: "escape-string-regexp@npm:2.0.0" + checksum: 9f8a2d5743677c16e85c810e3024d54f0c8dea6424fad3c79ef6666e81dd0846f7437f5e729dfcdac8981bc9e5294c39b4580814d114076b8d36318f46ae4395 + languageName: node + linkType: hard + "escape-string-regexp@npm:^4.0.0": version: 4.0.0 resolution: "escape-string-regexp@npm:4.0.0" @@ -4742,6 +7305,24 @@ __metadata: languageName: node linkType: hard +"escodegen@npm:^2.0.0": + version: 2.1.0 + resolution: "escodegen@npm:2.1.0" + dependencies: + esprima: ^4.0.1 + estraverse: ^5.2.0 + esutils: ^2.0.2 + source-map: ~0.6.1 + dependenciesMeta: + source-map: + optional: true + bin: + escodegen: bin/escodegen.js + esgenerate: bin/esgenerate.js + checksum: 096696407e161305cd05aebb95134ad176708bc5cb13d0dcc89a5fcbb959b8ed757e7f2591a5f8036f8f4952d4a724de0df14cd419e29212729fa6df5ce16bf6 + languageName: node + linkType: hard + "eslint-config-prettier@npm:^8.8.0": version: 8.10.0 resolution: "eslint-config-prettier@npm:8.10.0" @@ -4877,7 +7458,7 @@ __metadata: languageName: node linkType: hard -"esprima@npm:^4.0.0": +"esprima@npm:^4.0.0, esprima@npm:^4.0.1": version: 4.0.1 resolution: "esprima@npm:4.0.1" bin: @@ -4957,6 +7538,23 @@ __metadata: languageName: node linkType: hard +"execa@npm:^5.0.0": + version: 5.1.1 + resolution: "execa@npm:5.1.1" + dependencies: + cross-spawn: ^7.0.3 + get-stream: ^6.0.0 + human-signals: ^2.1.0 + is-stream: ^2.0.0 + merge-stream: ^2.0.0 + npm-run-path: ^4.0.1 + onetime: ^5.1.2 + signal-exit: ^3.0.3 + strip-final-newline: ^2.0.0 + checksum: fba9022c8c8c15ed862847e94c252b3d946036d7547af310e344a527e59021fd8b6bb0723883ea87044dc4f0201f949046993124a42ccb0855cae5bf8c786343 + languageName: node + linkType: hard + "exenv-es6@npm:^1.1.1": version: 1.1.1 resolution: "exenv-es6@npm:1.1.1" @@ -4964,6 +7562,26 @@ __metadata: languageName: node linkType: hard +"exit@npm:^0.1.2": + version: 0.1.2 + resolution: "exit@npm:0.1.2" + checksum: abc407f07a875c3961e4781dfcb743b58d6c93de9ab263f4f8c9d23bb6da5f9b7764fc773f86b43dd88030444d5ab8abcb611cb680fba8ca075362b77114bba3 + languageName: node + linkType: hard + +"expect@npm:^29.0.0, expect@npm:^29.7.0": + version: 29.7.0 + resolution: "expect@npm:29.7.0" + dependencies: + "@jest/expect-utils": ^29.7.0 + jest-get-type: ^29.6.3 + jest-matcher-utils: ^29.7.0 + jest-message-util: ^29.7.0 + jest-util: ^29.7.0 + checksum: 9257f10288e149b81254a0fda8ffe8d54a7061cd61d7515779998b012579d2b8c22354b0eb901daf0145f347403da582f75f359f4810c007182ad3fb318b5c0c + languageName: node + linkType: hard + "exponential-backoff@npm:^3.1.1": version: 3.1.1 resolution: "exponential-backoff@npm:3.1.1" @@ -5009,7 +7627,7 @@ __metadata: languageName: node linkType: hard -"fast-json-stable-stringify@npm:^2.0.0": +"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" checksum: b191531e36c607977e5b1c47811158733c34ccb3bfde92c44798929e9b4154884378536d26ad90dfecd32e1ffc09c545d23535ad91b3161a27ddbb8ebe0cbecb @@ -5046,6 +7664,15 @@ __metadata: languageName: node linkType: hard +"fb-watchman@npm:^2.0.0": + version: 2.0.2 + resolution: "fb-watchman@npm:2.0.2" + dependencies: + bser: 2.1.1 + checksum: b15a124cef28916fe07b400eb87cbc73ca082c142abf7ca8e8de6af43eca79ca7bd13eb4d4d48240b3bd3136eaac40d16e42d6edf87a8e5d1dd8070626860c78 + languageName: node + linkType: hard + "figures@npm:3.2.0, figures@npm:^3.0.0": version: 3.2.0 resolution: "figures@npm:3.2.0" @@ -5264,7 +7891,7 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": +"fsevents@npm:^2.3.2, fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": version: 2.3.3 resolution: "fsevents@npm:2.3.3" dependencies: @@ -5274,7 +7901,7 @@ __metadata: languageName: node linkType: hard -"fsevents@patch:fsevents@~2.3.2#~builtin, fsevents@patch:fsevents@~2.3.3#~builtin": +"fsevents@patch:fsevents@^2.3.2#~builtin, fsevents@patch:fsevents@~2.3.2#~builtin, fsevents@patch:fsevents@~2.3.3#~builtin": version: 2.3.3 resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=df0bf1" dependencies: @@ -5336,6 +7963,13 @@ __metadata: languageName: node linkType: hard +"get-package-type@npm:^0.1.0": + version: 0.1.0 + resolution: "get-package-type@npm:0.1.0" + checksum: bba0811116d11e56d702682ddef7c73ba3481f114590e705fc549f4d868972263896af313c57a25c076e3c0d567e11d919a64ba1b30c879be985fc9d44f96148 + languageName: node + linkType: hard + "get-pkg-repo@npm:^4.2.1": version: 4.2.1 resolution: "get-pkg-repo@npm:4.2.1" @@ -5486,7 +8120,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^7.1.3": +"glob@npm:^7.1.3, glob@npm:^7.1.4": version: 7.2.3 resolution: "glob@npm:7.2.3" dependencies: @@ -5607,7 +8241,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:4.2.11, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": +"graceful-fs@npm:4.2.11, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 @@ -5646,6 +8280,13 @@ __metadata: languageName: node linkType: hard +"harmony-reflect@npm:^1.4.6": + version: 1.6.2 + resolution: "harmony-reflect@npm:1.6.2" + checksum: 2e5bae414cd2bfae5476147f9935dc69ee9b9a413206994dcb94c5b3208d4555da3d4313aff6fd14bd9991c1e3ef69cdda5c8fac1eb1d7afc064925839339b8c + languageName: node + linkType: hard + "has-bigints@npm:^1.0.2": version: 1.0.2 resolution: "has-bigints@npm:1.0.2" @@ -5742,6 +8383,22 @@ __metadata: languageName: node linkType: hard +"html-encoding-sniffer@npm:^3.0.0": + version: 3.0.0 + resolution: "html-encoding-sniffer@npm:3.0.0" + dependencies: + whatwg-encoding: ^2.0.0 + checksum: 8d806aa00487e279e5ccb573366a951a9f68f65c90298eac9c3a2b440a7ffe46615aff2995a2f61c6746c639234e6179a97e18ca5ccbbf93d3725ef2099a4502 + languageName: node + linkType: hard + +"html-escaper@npm:^2.0.0": + version: 2.0.2 + resolution: "html-escaper@npm:2.0.2" + checksum: d2df2da3ad40ca9ee3a39c5cc6475ef67c8f83c234475f24d8e9ce0dc80a2c82df8e1d6fa78ddd1e9022a586ea1bd247a615e80a5cd9273d90111ddda7d9e974 + languageName: node + linkType: hard + "html-tags@npm:^3.3.1": version: 3.3.1 resolution: "html-tags@npm:3.3.1" @@ -5768,6 +8425,17 @@ __metadata: languageName: node linkType: hard +"http-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "http-proxy-agent@npm:5.0.0" + dependencies: + "@tootallnate/once": 2 + agent-base: 6 + debug: 4 + checksum: e2ee1ff1656a131953839b2a19cd1f3a52d97c25ba87bd2559af6ae87114abf60971e498021f9b73f9fd78aea8876d1fb0d4656aac8a03c6caa9fc175f22b786 + languageName: node + linkType: hard + "http-proxy-agent@npm:^7.0.0": version: 7.0.2 resolution: "http-proxy-agent@npm:7.0.2" @@ -5778,6 +8446,16 @@ __metadata: languageName: node linkType: hard +"https-proxy-agent@npm:^5.0.1": + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" + dependencies: + agent-base: 6 + debug: 4 + checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765 + languageName: node + linkType: hard + "https-proxy-agent@npm:^7.0.1": version: 7.0.5 resolution: "https-proxy-agent@npm:7.0.5" @@ -5795,6 +8473,15 @@ __metadata: languageName: node linkType: hard +"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": + version: 0.6.3 + resolution: "iconv-lite@npm:0.6.3" + dependencies: + safer-buffer: ">= 2.1.2 < 3.0.0" + checksum: 3f60d47a5c8fc3313317edfd29a00a692cc87a19cac0159e2ce711d0ebc9019064108323b5e493625e25594f11c6236647d8e256fbe7a58f4a3b33b89e6d30bf + languageName: node + linkType: hard + "iconv-lite@npm:^0.4.24": version: 0.4.24 resolution: "iconv-lite@npm:0.4.24" @@ -5804,15 +8491,6 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:^0.6.2": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: ">= 2.1.2 < 3.0.0" - checksum: 3f60d47a5c8fc3313317edfd29a00a692cc87a19cac0159e2ce711d0ebc9019064108323b5e493625e25594f11c6236647d8e256fbe7a58f4a3b33b89e6d30bf - languageName: node - linkType: hard - "icss-utils@npm:^5.0.0, icss-utils@npm:^5.1.0": version: 5.1.0 resolution: "icss-utils@npm:5.1.0" @@ -5822,6 +8500,15 @@ __metadata: languageName: node linkType: hard +"identity-obj-proxy@npm:^3.0.0": + version: 3.0.0 + resolution: "identity-obj-proxy@npm:3.0.0" + dependencies: + harmony-reflect: ^1.4.6 + checksum: 97559f8ea2aeaa1a880d279d8c49550dce01148321e00a2102cda5ddf9ce622fa1d7f3efc7bed63458af78889de888fdaebaf31c816312298bb3fdd0ef8aaf2c + languageName: node + linkType: hard + "ieee754@npm:^1.1.13": version: 1.2.1 resolution: "ieee754@npm:1.2.1" @@ -6076,6 +8763,15 @@ __metadata: languageName: node linkType: hard +"is-core-module@npm:^2.16.0": + version: 2.16.1 + resolution: "is-core-module@npm:2.16.1" + dependencies: + hasown: ^2.0.2 + checksum: 6ec5b3c42d9cbf1ac23f164b16b8a140c3cec338bf8f884c076ca89950c7cc04c33e78f02b8cae7ff4751f3247e3174b2330f1fe4de194c7210deb8b1ea316a7 + languageName: node + linkType: hard + "is-data-view@npm:^1.0.1": version: 1.0.1 resolution: "is-data-view@npm:1.0.1" @@ -6126,6 +8822,13 @@ __metadata: languageName: node linkType: hard +"is-generator-fn@npm:^2.0.0": + version: 2.1.0 + resolution: "is-generator-fn@npm:2.1.0" + checksum: a6ad5492cf9d1746f73b6744e0c43c0020510b59d56ddcb78a91cbc173f09b5e6beff53d75c9c5a29feb618bfef2bf458e025ecf3a57ad2268e2fb2569f56215 + languageName: node + linkType: hard + "is-generator-function@npm:^1.0.10": version: 1.0.10 resolution: "is-generator-function@npm:1.0.10" @@ -6226,6 +8929,13 @@ __metadata: languageName: node linkType: hard +"is-potential-custom-element-name@npm:^1.0.1": + version: 1.0.1 + resolution: "is-potential-custom-element-name@npm:1.0.1" + checksum: ced7bbbb6433a5b684af581872afe0e1767e2d1146b2207ca0068a648fb5cab9d898495d1ac0583524faaf24ca98176a7d9876363097c2d14fee6dd324f3a1ab + languageName: node + linkType: hard + "is-regex@npm:^1.1.4": version: 1.2.0 resolution: "is-regex@npm:1.2.0" @@ -6400,6 +9110,71 @@ __metadata: languageName: node linkType: hard +"istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": + version: 3.2.2 + resolution: "istanbul-lib-coverage@npm:3.2.2" + checksum: 2367407a8d13982d8f7a859a35e7f8dd5d8f75aae4bb5484ede3a9ea1b426dc245aff28b976a2af48ee759fdd9be374ce2bd2669b644f31e76c5f46a2e29a831 + languageName: node + linkType: hard + +"istanbul-lib-instrument@npm:^5.0.4": + version: 5.2.1 + resolution: "istanbul-lib-instrument@npm:5.2.1" + dependencies: + "@babel/core": ^7.12.3 + "@babel/parser": ^7.14.7 + "@istanbuljs/schema": ^0.1.2 + istanbul-lib-coverage: ^3.2.0 + semver: ^6.3.0 + checksum: bf16f1803ba5e51b28bbd49ed955a736488381e09375d830e42ddeb403855b2006f850711d95ad726f2ba3f1ae8e7366de7e51d2b9ac67dc4d80191ef7ddf272 + languageName: node + linkType: hard + +"istanbul-lib-instrument@npm:^6.0.0": + version: 6.0.3 + resolution: "istanbul-lib-instrument@npm:6.0.3" + dependencies: + "@babel/core": ^7.23.9 + "@babel/parser": ^7.23.9 + "@istanbuljs/schema": ^0.1.3 + istanbul-lib-coverage: ^3.2.0 + semver: ^7.5.4 + checksum: 74104c60c65c4fa0e97cc76f039226c356123893929f067bfad5f86fe839e08f5d680354a68fead3bc9c1e2f3fa6f3f53cded70778e821d911e851d349f3545a + languageName: node + linkType: hard + +"istanbul-lib-report@npm:^3.0.0": + version: 3.0.1 + resolution: "istanbul-lib-report@npm:3.0.1" + dependencies: + istanbul-lib-coverage: ^3.0.0 + make-dir: ^4.0.0 + supports-color: ^7.1.0 + checksum: fd17a1b879e7faf9bb1dc8f80b2a16e9f5b7b8498fe6ed580a618c34df0bfe53d2abd35bf8a0a00e628fb7405462576427c7df20bbe4148d19c14b431c974b21 + languageName: node + linkType: hard + +"istanbul-lib-source-maps@npm:^4.0.0": + version: 4.0.1 + resolution: "istanbul-lib-source-maps@npm:4.0.1" + dependencies: + debug: ^4.1.1 + istanbul-lib-coverage: ^3.0.0 + source-map: ^0.6.1 + checksum: 21ad3df45db4b81852b662b8d4161f6446cd250c1ddc70ef96a585e2e85c26ed7cd9c2a396a71533cfb981d1a645508bc9618cae431e55d01a0628e7dec62ef2 + languageName: node + linkType: hard + +"istanbul-reports@npm:^3.1.3": + version: 3.1.7 + resolution: "istanbul-reports@npm:3.1.7" + dependencies: + html-escaper: ^2.0.0 + istanbul-lib-report: ^3.0.0 + checksum: 2072db6e07bfbb4d0eb30e2700250636182398c1af811aea5032acb219d2080f7586923c09fa194029efd6b92361afb3dcbe1ebcc3ee6651d13340f7c6c4ed95 + languageName: node + linkType: hard + "jackspeak@npm:^3.1.2": version: 3.4.3 resolution: "jackspeak@npm:3.4.3" @@ -6427,7 +9202,110 @@ __metadata: languageName: node linkType: hard -"jest-diff@npm:>=29.4.3 < 30, jest-diff@npm:^29.4.1": +"jest-changed-files@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-changed-files@npm:29.7.0" + dependencies: + execa: ^5.0.0 + jest-util: ^29.7.0 + p-limit: ^3.1.0 + checksum: 963e203893c396c5dfc75e00a49426688efea7361b0f0e040035809cecd2d46b3c01c02be2d9e8d38b1138357d2de7719ea5b5be21f66c10f2e9685a5a73bb99 + languageName: node + linkType: hard + +"jest-circus@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-circus@npm:29.7.0" + dependencies: + "@jest/environment": ^29.7.0 + "@jest/expect": ^29.7.0 + "@jest/test-result": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/node": "*" + chalk: ^4.0.0 + co: ^4.6.0 + dedent: ^1.0.0 + is-generator-fn: ^2.0.0 + jest-each: ^29.7.0 + jest-matcher-utils: ^29.7.0 + jest-message-util: ^29.7.0 + jest-runtime: ^29.7.0 + jest-snapshot: ^29.7.0 + jest-util: ^29.7.0 + p-limit: ^3.1.0 + pretty-format: ^29.7.0 + pure-rand: ^6.0.0 + slash: ^3.0.0 + stack-utils: ^2.0.3 + checksum: 349437148924a5a109c9b8aad6d393a9591b4dac1918fc97d81b7fc515bc905af9918495055071404af1fab4e48e4b04ac3593477b1d5dcf48c4e71b527c70a7 + languageName: node + linkType: hard + +"jest-cli@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-cli@npm:29.7.0" + dependencies: + "@jest/core": ^29.7.0 + "@jest/test-result": ^29.7.0 + "@jest/types": ^29.6.3 + chalk: ^4.0.0 + create-jest: ^29.7.0 + exit: ^0.1.2 + import-local: ^3.0.2 + jest-config: ^29.7.0 + jest-util: ^29.7.0 + jest-validate: ^29.7.0 + yargs: ^17.3.1 + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + bin: + jest: bin/jest.js + checksum: 664901277a3f5007ea4870632ed6e7889db9da35b2434e7cb488443e6bf5513889b344b7fddf15112135495b9875892b156faeb2d7391ddb9e2a849dcb7b6c36 + languageName: node + linkType: hard + +"jest-config@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-config@npm:29.7.0" + dependencies: + "@babel/core": ^7.11.6 + "@jest/test-sequencer": ^29.7.0 + "@jest/types": ^29.6.3 + babel-jest: ^29.7.0 + chalk: ^4.0.0 + ci-info: ^3.2.0 + deepmerge: ^4.2.2 + glob: ^7.1.3 + graceful-fs: ^4.2.9 + jest-circus: ^29.7.0 + jest-environment-node: ^29.7.0 + jest-get-type: ^29.6.3 + jest-regex-util: ^29.6.3 + jest-resolve: ^29.7.0 + jest-runner: ^29.7.0 + jest-util: ^29.7.0 + jest-validate: ^29.7.0 + micromatch: ^4.0.4 + parse-json: ^5.2.0 + pretty-format: ^29.7.0 + slash: ^3.0.0 + strip-json-comments: ^3.1.1 + peerDependencies: + "@types/node": "*" + ts-node: ">=9.0.0" + peerDependenciesMeta: + "@types/node": + optional: true + ts-node: + optional: true + checksum: 4cabf8f894c180cac80b7df1038912a3fc88f96f2622de33832f4b3314f83e22b08fb751da570c0ab2b7988f21604bdabade95e3c0c041068ac578c085cf7dff + languageName: node + linkType: hard + +"jest-diff@npm:>=29.4.3 < 30, jest-diff@npm:^29.4.1, jest-diff@npm:^29.7.0": version: 29.7.0 resolution: "jest-diff@npm:29.7.0" dependencies: @@ -6439,6 +9317,63 @@ __metadata: languageName: node linkType: hard +"jest-docblock@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-docblock@npm:29.7.0" + dependencies: + detect-newline: ^3.0.0 + checksum: 66390c3e9451f8d96c5da62f577a1dad701180cfa9b071c5025acab2f94d7a3efc2515cfa1654ebe707213241541ce9c5530232cdc8017c91ed64eea1bd3b192 + languageName: node + linkType: hard + +"jest-each@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-each@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + chalk: ^4.0.0 + jest-get-type: ^29.6.3 + jest-util: ^29.7.0 + pretty-format: ^29.7.0 + checksum: e88f99f0184000fc8813f2a0aa79e29deeb63700a3b9b7928b8a418d7d93cd24933608591dbbdea732b473eb2021c72991b5cc51a17966842841c6e28e6f691c + languageName: node + linkType: hard + +"jest-environment-jsdom@npm:^29.3.0": + version: 29.7.0 + resolution: "jest-environment-jsdom@npm:29.7.0" + dependencies: + "@jest/environment": ^29.7.0 + "@jest/fake-timers": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/jsdom": ^20.0.0 + "@types/node": "*" + jest-mock: ^29.7.0 + jest-util: ^29.7.0 + jsdom: ^20.0.0 + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: 559aac134c196fccc1dfc794d8fc87377e9f78e894bb13012b0831d88dec0abd7ece99abec69da564b8073803be4f04a9eb4f4d1bb80e29eec0cb252c254deb8 + languageName: node + linkType: hard + +"jest-environment-node@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-environment-node@npm:29.7.0" + dependencies: + "@jest/environment": ^29.7.0 + "@jest/fake-timers": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/node": "*" + jest-mock: ^29.7.0 + jest-util: ^29.7.0 + checksum: 501a9966292cbe0ca3f40057a37587cb6def25e1e0c5e39ac6c650fe78d3c70a2428304341d084ac0cced5041483acef41c477abac47e9a290d5545fd2f15646 + languageName: node + linkType: hard + "jest-get-type@npm:^29.6.3": version: 29.6.3 resolution: "jest-get-type@npm:29.6.3" @@ -6446,14 +9381,307 @@ __metadata: languageName: node linkType: hard -"jest-worker@npm:^27.4.5": - version: 27.5.1 - resolution: "jest-worker@npm:27.5.1" +"jest-haste-map@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-haste-map@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + "@types/graceful-fs": ^4.1.3 + "@types/node": "*" + anymatch: ^3.0.3 + fb-watchman: ^2.0.0 + fsevents: ^2.3.2 + graceful-fs: ^4.2.9 + jest-regex-util: ^29.6.3 + jest-util: ^29.7.0 + jest-worker: ^29.7.0 + micromatch: ^4.0.4 + walker: ^1.0.8 + dependenciesMeta: + fsevents: + optional: true + checksum: c2c8f2d3e792a963940fbdfa563ce14ef9e14d4d86da645b96d3cd346b8d35c5ce0b992ee08593939b5f718cf0a1f5a90011a056548a1dbf58397d4356786f01 + languageName: node + linkType: hard + +"jest-junit@npm:^15.0.0": + version: 15.0.0 + resolution: "jest-junit@npm:15.0.0" + dependencies: + mkdirp: ^1.0.4 + strip-ansi: ^6.0.1 + uuid: ^8.3.2 + xml: ^1.0.1 + checksum: e8fe4d2f2ab843383ac41820a6fe495739d154ec435cd44ba590b44ec7fd62095676f3eef13f98392f81d4a3727ea58b4f4fad231fe367ac31243952b9ad716f + languageName: node + linkType: hard + +"jest-leak-detector@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-leak-detector@npm:29.7.0" + dependencies: + jest-get-type: ^29.6.3 + pretty-format: ^29.7.0 + checksum: e3950e3ddd71e1d0c22924c51a300a1c2db6cf69ec1e51f95ccf424bcc070f78664813bef7aed4b16b96dfbdeea53fe358f8aeaaea84346ae15c3735758f1605 + languageName: node + linkType: hard + +"jest-matcher-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-matcher-utils@npm:29.7.0" + dependencies: + chalk: ^4.0.0 + jest-diff: ^29.7.0 + jest-get-type: ^29.6.3 + pretty-format: ^29.7.0 + checksum: d7259e5f995d915e8a37a8fd494cb7d6af24cd2a287b200f831717ba0d015190375f9f5dc35393b8ba2aae9b2ebd60984635269c7f8cff7d85b077543b7744cd + languageName: node + linkType: hard + +"jest-message-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-message-util@npm:29.7.0" + dependencies: + "@babel/code-frame": ^7.12.13 + "@jest/types": ^29.6.3 + "@types/stack-utils": ^2.0.0 + chalk: ^4.0.0 + graceful-fs: ^4.2.9 + micromatch: ^4.0.4 + pretty-format: ^29.7.0 + slash: ^3.0.0 + stack-utils: ^2.0.3 + checksum: a9d025b1c6726a2ff17d54cc694de088b0489456c69106be6b615db7a51b7beb66788bea7a59991a019d924fbf20f67d085a445aedb9a4d6760363f4d7d09930 + languageName: node + linkType: hard + +"jest-mock@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-mock@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + "@types/node": "*" + jest-util: ^29.7.0 + checksum: 81ba9b68689a60be1482212878973700347cb72833c5e5af09895882b9eb5c4e02843a1bbdf23f94c52d42708bab53a30c45a3482952c9eec173d1eaac5b86c5 + languageName: node + linkType: hard + +"jest-pnp-resolver@npm:^1.2.2": + version: 1.2.3 + resolution: "jest-pnp-resolver@npm:1.2.3" + peerDependencies: + jest-resolve: "*" + peerDependenciesMeta: + jest-resolve: + optional: true + checksum: db1a8ab2cb97ca19c01b1cfa9a9c8c69a143fde833c14df1fab0766f411b1148ff0df878adea09007ac6a2085ec116ba9a996a6ad104b1e58c20adbf88eed9b2 + languageName: node + linkType: hard + +"jest-regex-util@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-regex-util@npm:29.6.3" + checksum: 0518beeb9bf1228261695e54f0feaad3606df26a19764bc19541e0fc6e2a3737191904607fb72f3f2ce85d9c16b28df79b7b1ec9443aa08c3ef0e9efda6f8f2a + languageName: node + linkType: hard + +"jest-resolve-dependencies@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-resolve-dependencies@npm:29.7.0" + dependencies: + jest-regex-util: ^29.6.3 + jest-snapshot: ^29.7.0 + checksum: aeb75d8150aaae60ca2bb345a0d198f23496494677cd6aefa26fc005faf354061f073982175daaf32b4b9d86b26ca928586344516e3e6969aa614cb13b883984 + languageName: node + linkType: hard + +"jest-resolve@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-resolve@npm:29.7.0" + dependencies: + chalk: ^4.0.0 + graceful-fs: ^4.2.9 + jest-haste-map: ^29.7.0 + jest-pnp-resolver: ^1.2.2 + jest-util: ^29.7.0 + jest-validate: ^29.7.0 + resolve: ^1.20.0 + resolve.exports: ^2.0.0 + slash: ^3.0.0 + checksum: 0ca218e10731aa17920526ec39deaec59ab9b966237905ffc4545444481112cd422f01581230eceb7e82d86f44a543d520a71391ec66e1b4ef1a578bd5c73487 + languageName: node + linkType: hard + +"jest-runner@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-runner@npm:29.7.0" + dependencies: + "@jest/console": ^29.7.0 + "@jest/environment": ^29.7.0 + "@jest/test-result": ^29.7.0 + "@jest/transform": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/node": "*" + chalk: ^4.0.0 + emittery: ^0.13.1 + graceful-fs: ^4.2.9 + jest-docblock: ^29.7.0 + jest-environment-node: ^29.7.0 + jest-haste-map: ^29.7.0 + jest-leak-detector: ^29.7.0 + jest-message-util: ^29.7.0 + jest-resolve: ^29.7.0 + jest-runtime: ^29.7.0 + jest-util: ^29.7.0 + jest-watcher: ^29.7.0 + jest-worker: ^29.7.0 + p-limit: ^3.1.0 + source-map-support: 0.5.13 + checksum: f0405778ea64812bf9b5c50b598850d94ccf95d7ba21f090c64827b41decd680ee19fcbb494007cdd7f5d0d8906bfc9eceddd8fa583e753e736ecd462d4682fb + languageName: node + linkType: hard + +"jest-runtime@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-runtime@npm:29.7.0" + dependencies: + "@jest/environment": ^29.7.0 + "@jest/fake-timers": ^29.7.0 + "@jest/globals": ^29.7.0 + "@jest/source-map": ^29.6.3 + "@jest/test-result": ^29.7.0 + "@jest/transform": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/node": "*" + chalk: ^4.0.0 + cjs-module-lexer: ^1.0.0 + collect-v8-coverage: ^1.0.0 + glob: ^7.1.3 + graceful-fs: ^4.2.9 + jest-haste-map: ^29.7.0 + jest-message-util: ^29.7.0 + jest-mock: ^29.7.0 + jest-regex-util: ^29.6.3 + jest-resolve: ^29.7.0 + jest-snapshot: ^29.7.0 + jest-util: ^29.7.0 + slash: ^3.0.0 + strip-bom: ^4.0.0 + checksum: d19f113d013e80691e07047f68e1e3448ef024ff2c6b586ce4f90cd7d4c62a2cd1d460110491019719f3c59bfebe16f0e201ed005ef9f80e2cf798c374eed54e + languageName: node + linkType: hard + +"jest-snapshot@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-snapshot@npm:29.7.0" + dependencies: + "@babel/core": ^7.11.6 + "@babel/generator": ^7.7.2 + "@babel/plugin-syntax-jsx": ^7.7.2 + "@babel/plugin-syntax-typescript": ^7.7.2 + "@babel/types": ^7.3.3 + "@jest/expect-utils": ^29.7.0 + "@jest/transform": ^29.7.0 + "@jest/types": ^29.6.3 + babel-preset-current-node-syntax: ^1.0.0 + chalk: ^4.0.0 + expect: ^29.7.0 + graceful-fs: ^4.2.9 + jest-diff: ^29.7.0 + jest-get-type: ^29.6.3 + jest-matcher-utils: ^29.7.0 + jest-message-util: ^29.7.0 + jest-util: ^29.7.0 + natural-compare: ^1.4.0 + pretty-format: ^29.7.0 + semver: ^7.5.3 + checksum: 86821c3ad0b6899521ce75ee1ae7b01b17e6dfeff9166f2cf17f012e0c5d8c798f30f9e4f8f7f5bed01ea7b55a6bc159f5eda778311162cbfa48785447c237ad + languageName: node + linkType: hard + +"jest-util@npm:^29.0.0, jest-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-util@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + "@types/node": "*" + chalk: ^4.0.0 + ci-info: ^3.2.0 + graceful-fs: ^4.2.9 + picomatch: ^2.2.3 + checksum: 042ab4980f4ccd4d50226e01e5c7376a8556b472442ca6091a8f102488c0f22e6e8b89ea874111d2328a2080083bf3225c86f3788c52af0bd0345a00eb57a3ca + languageName: node + linkType: hard + +"jest-validate@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-validate@npm:29.7.0" + dependencies: + "@jest/types": ^29.6.3 + camelcase: ^6.2.0 + chalk: ^4.0.0 + jest-get-type: ^29.6.3 + leven: ^3.1.0 + pretty-format: ^29.7.0 + checksum: 191fcdc980f8a0de4dbdd879fa276435d00eb157a48683af7b3b1b98b0f7d9de7ffe12689b617779097ff1ed77601b9f7126b0871bba4f776e222c40f62e9dae + languageName: node + linkType: hard + +"jest-watcher@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-watcher@npm:29.7.0" + dependencies: + "@jest/test-result": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/node": "*" + ansi-escapes: ^4.2.1 + chalk: ^4.0.0 + emittery: ^0.13.1 + jest-util: ^29.7.0 + string-length: ^4.0.1 + checksum: 67e6e7fe695416deff96b93a14a561a6db69389a0667e9489f24485bb85e5b54e12f3b2ba511ec0b777eca1e727235b073e3ebcdd473d68888650489f88df92f + languageName: node + linkType: hard + +"jest-worker@npm:^27.4.5": + version: 27.5.1 + resolution: "jest-worker@npm:27.5.1" + dependencies: + "@types/node": "*" + merge-stream: ^2.0.0 + supports-color: ^8.0.0 + checksum: 98cd68b696781caed61c983a3ee30bf880b5bd021c01d98f47b143d4362b85d0737f8523761e2713d45e18b4f9a2b98af1eaee77afade4111bb65c77d6f7c980 + languageName: node + linkType: hard + +"jest-worker@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-worker@npm:29.7.0" dependencies: "@types/node": "*" + jest-util: ^29.7.0 merge-stream: ^2.0.0 supports-color: ^8.0.0 - checksum: 98cd68b696781caed61c983a3ee30bf880b5bd021c01d98f47b143d4362b85d0737f8523761e2713d45e18b4f9a2b98af1eaee77afade4111bb65c77d6f7c980 + checksum: 30fff60af49675273644d408b650fc2eb4b5dcafc5a0a455f238322a8f9d8a98d847baca9d51ff197b6747f54c7901daa2287799230b856a0f48287d131f8c13 + languageName: node + linkType: hard + +"jest@npm:^29.2.0": + version: 29.7.0 + resolution: "jest@npm:29.7.0" + dependencies: + "@jest/core": ^29.7.0 + "@jest/types": ^29.6.3 + import-local: ^3.0.2 + jest-cli: ^29.7.0 + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + bin: + jest: bin/jest.js + checksum: 17ca8d67504a7dbb1998cf3c3077ec9031ba3eb512da8d71cb91bcabb2b8995c4e4b292b740cb9bf1cbff5ce3e110b3f7c777b0cefb6f41ab05445f248d0ee0b languageName: node linkType: hard @@ -6494,6 +9722,45 @@ __metadata: languageName: node linkType: hard +"jsdom@npm:^20.0.0": + version: 20.0.3 + resolution: "jsdom@npm:20.0.3" + dependencies: + abab: ^2.0.6 + acorn: ^8.8.1 + acorn-globals: ^7.0.0 + cssom: ^0.5.0 + cssstyle: ^2.3.0 + data-urls: ^3.0.2 + decimal.js: ^10.4.2 + domexception: ^4.0.0 + escodegen: ^2.0.0 + form-data: ^4.0.0 + html-encoding-sniffer: ^3.0.0 + http-proxy-agent: ^5.0.0 + https-proxy-agent: ^5.0.1 + is-potential-custom-element-name: ^1.0.1 + nwsapi: ^2.2.2 + parse5: ^7.1.1 + saxes: ^6.0.0 + symbol-tree: ^3.2.4 + tough-cookie: ^4.1.2 + w3c-xmlserializer: ^4.0.0 + webidl-conversions: ^7.0.0 + whatwg-encoding: ^2.0.0 + whatwg-mimetype: ^3.0.0 + whatwg-url: ^11.0.0 + ws: ^8.11.0 + xml-name-validator: ^4.0.0 + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: 6e2ae21db397133a061b270c26d2dbc0b9051733ea3b896a7ece78d79f475ff0974f766a413c1198a79c793159119169f2335ddb23150348fbfdcfa6f3105536 + languageName: node + linkType: hard + "jsesc@npm:^3.0.2": version: 3.1.0 resolution: "jsesc@npm:3.1.0" @@ -6503,6 +9770,15 @@ __metadata: languageName: node linkType: hard +"jsesc@npm:~3.0.2": + version: 3.0.2 + resolution: "jsesc@npm:3.0.2" + bin: + jsesc: bin/jsesc + checksum: a36d3ca40574a974d9c2063bf68c2b6141c20da8f2a36bd3279fc802563f35f0527a6c828801295bdfb2803952cf2cf387786c2c90ed564f88d5782475abfe3c + languageName: node + linkType: hard + "json-buffer@npm:3.0.1": version: 3.0.1 resolution: "json-buffer@npm:3.0.1" @@ -6531,6 +9807,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: da1ae7ef0cc9db02972a06a71322f26bdcda5d7f648c23b28ce7f158ba35707461bcbd91945d8aace10d8d79c383b896725c65ffa410242352692328aa9b5edf + languageName: node + linkType: hard + "json-schema-compare@npm:^0.2.2": version: 0.2.2 resolution: "json-schema-compare@npm:0.2.2" @@ -6629,13 +9912,36 @@ __metadata: languageName: node linkType: hard -"jupyter-iframe-commands-demo@workspace:demo": +"jupyter-css-loader@workspace:packages/css-extension": version: 0.0.0-use.local - resolution: "jupyter-iframe-commands-demo@workspace:demo" + resolution: "jupyter-css-loader@workspace:packages/css-extension" dependencies: - jupyter-iframe-commands-host: ^0.1.0 - typescript: ~5.6.2 - vite: ^6.0.1 + "@jupyterlab/application": ^4.0.0 + "@jupyterlab/builder": ^4.0.0 + "@jupyterlab/testutils": ^4.0.0 + "@types/jest": ^29.2.0 + "@types/json-schema": ^7.0.11 + "@types/react": ^18.0.26 + "@types/react-addons-linked-state-mixin": ^0.14.22 + "@typescript-eslint/eslint-plugin": ^6.1.0 + "@typescript-eslint/parser": ^6.1.0 + css-loader: ^6.7.1 + eslint: ^8.36.0 + eslint-config-prettier: ^8.8.0 + eslint-plugin-prettier: ^5.0.0 + jest: ^29.2.0 + npm-run-all2: ^7.0.1 + prettier: ^3.0.0 + rimraf: ^5.0.1 + source-map-loader: ^1.0.2 + style-loader: ^3.3.1 + stylelint: ^15.10.1 + stylelint-config-recommended: ^13.0.0 + stylelint-config-standard: ^34.0.0 + stylelint-csstree-validator: ^3.0.0 + stylelint-prettier: ^4.0.0 + typescript: ~5.0.2 + yjs: ^13.5.0 languageName: unknown linkType: soft @@ -6719,6 +10025,13 @@ __metadata: languageName: node linkType: hard +"kleur@npm:^3.0.3": + version: 3.0.3 + resolution: "kleur@npm:3.0.3" + checksum: df82cd1e172f957bae9c536286265a5cdbd5eeca487cb0a3b2a7b41ef959fc61f8e7c0e9aeea9c114ccf2c166b6a8dd45a46fd619c1c569d210ecd2765ad5169 + languageName: node + linkType: hard + "known-css-properties@npm:^0.29.0": version: 0.29.0 resolution: "known-css-properties@npm:0.29.0" @@ -6817,6 +10130,13 @@ __metadata: languageName: node linkType: hard +"leven@npm:^3.1.0": + version: 3.1.0 + resolution: "leven@npm:3.1.0" + checksum: 638401d534585261b6003db9d99afd244dfe82d75ddb6db5c0df412842d5ab30b2ef18de471aaec70fe69a46f17b4ae3c7f01d8a4e6580ef7adb9f4273ad1e55 + languageName: node + linkType: hard + "levn@npm:^0.4.1": version: 0.4.1 resolution: "levn@npm:0.4.1" @@ -6970,6 +10290,13 @@ __metadata: languageName: node linkType: hard +"lodash.debounce@npm:^4.0.8": + version: 4.0.8 + resolution: "lodash.debounce@npm:4.0.8" + checksum: a3f527d22c548f43ae31c861ada88b2637eb48ac6aa3eb56e82d44917971b8aa96fbb37aa60efea674dc4ee8c42074f90f7b1f772e9db375435f6c83a19b3bc6 + languageName: node + linkType: hard + "lodash.escape@npm:^4.0.1": version: 4.0.1 resolution: "lodash.escape@npm:4.0.1" @@ -6984,6 +10311,13 @@ __metadata: languageName: node linkType: hard +"lodash.memoize@npm:^4.1.2": + version: 4.1.2 + resolution: "lodash.memoize@npm:4.1.2" + checksum: 9ff3942feeccffa4f1fafa88d32f0d24fdc62fd15ded5a74a5f950ff5f0c6f61916157246744c620173dddf38d37095a92327d5fd3861e2063e736a5c207d089 + languageName: node + linkType: hard + "lodash.merge@npm:^4.6.2": version: 4.6.2 resolution: "lodash.merge@npm:4.6.2" @@ -6991,6 +10325,13 @@ __metadata: languageName: node linkType: hard +"lodash.mergewith@npm:^4.6.1": + version: 4.6.2 + resolution: "lodash.mergewith@npm:4.6.2" + checksum: a6db2a9339752411f21b956908c404ec1e088e783a65c8b29e30ae5b3b6384f82517662d6f425cc97c2070b546cc2c7daaa8d33f78db7b6e9be06cd834abdeb8 + languageName: node + linkType: hard + "lodash.truncate@npm:^4.4.2": version: 4.4.2 resolution: "lodash.truncate@npm:4.4.2" @@ -7051,7 +10392,16 @@ __metadata: languageName: node linkType: hard -"make-dir@npm:4.0.0": +"magic-string@npm:^0.30.2": + version: 0.30.17 + resolution: "magic-string@npm:0.30.17" + dependencies: + "@jridgewell/sourcemap-codec": ^1.5.0 + checksum: f4b4ed17c5ada64f77fc98491847302ebad64894a905c417c943840c0384662118c9b37f9f68bb86add159fa4749ff6f118c4627d69a470121b46731f8debc6d + languageName: node + linkType: hard + +"make-dir@npm:4.0.0, make-dir@npm:^4.0.0": version: 4.0.0 resolution: "make-dir@npm:4.0.0" dependencies: @@ -7070,6 +10420,13 @@ __metadata: languageName: node linkType: hard +"make-error@npm:^1.3.6": + version: 1.3.6 + resolution: "make-error@npm:1.3.6" + checksum: b86e5e0e25f7f777b77fabd8e2cbf15737972869d852a22b7e73c17623928fccb826d8e46b9951501d3f20e51ad74ba8c59ed584f610526a48f8ccf88aaec402 + languageName: node + linkType: hard + "make-fetch-happen@npm:^13.0.0, make-fetch-happen@npm:^13.0.1": version: 13.0.1 resolution: "make-fetch-happen@npm:13.0.1" @@ -7109,6 +10466,15 @@ __metadata: languageName: node linkType: hard +"makeerror@npm:1.0.12": + version: 1.0.12 + resolution: "makeerror@npm:1.0.12" + dependencies: + tmpl: 1.0.5 + checksum: b38a025a12c8146d6eeea5a7f2bf27d51d8ad6064da8ca9405fcf7bf9b54acd43e3b30ddd7abb9b1bfa4ddb266019133313482570ddb207de568f71ecfcf6060 + languageName: node + linkType: hard + "map-obj@npm:^1.0.0": version: 1.0.1 resolution: "map-obj@npm:1.0.1" @@ -7455,7 +10821,7 @@ __metadata: languageName: node linkType: hard -"mkdirp@npm:^1.0.3": +"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" bin: @@ -7626,6 +10992,13 @@ __metadata: languageName: node linkType: hard +"node-int64@npm:^0.4.0": + version: 0.4.0 + resolution: "node-int64@npm:0.4.0" + checksum: d0b30b1ee6d961851c60d5eaa745d30b5c95d94bc0e74b81e5292f7c42a49e3af87f1eb9e89f59456f80645d679202537de751b7d72e9e40ceea40c5e449057e + languageName: node + linkType: hard + "node-machine-id@npm:1.1.12": version: 1.1.12 resolution: "node-machine-id@npm:1.1.12" @@ -7640,6 +11013,13 @@ __metadata: languageName: node linkType: hard +"node-releases@npm:^2.0.19": + version: 2.0.19 + resolution: "node-releases@npm:2.0.19" + checksum: 917dbced519f48c6289a44830a0ca6dc944c3ee9243c468ebd8515a41c97c8b2c256edb7f3f750416bc37952cc9608684e6483c7b6c6f39f6bd8d86c52cfe658 + languageName: node + linkType: hard + "nopt@npm:^7.0.0, nopt@npm:^7.2.1": version: 7.2.1 resolution: "nopt@npm:7.2.1" @@ -7729,6 +11109,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: e1a0971e5640bc116c5197f9707d86dc404b6d8e13da2c7ea82baa5583b8da279a3c8607234aa1d733c2baac3b3eba87b156f021f20ae183dc4806530e61675d + languageName: node + linkType: hard + "npm-package-arg@npm:11.0.2": version: 11.0.2 resolution: "npm-package-arg@npm:11.0.2" @@ -7790,6 +11177,27 @@ __metadata: languageName: node linkType: hard +"npm-run-all2@npm:^7.0.1": + version: 7.0.2 + resolution: "npm-run-all2@npm:7.0.2" + dependencies: + ansi-styles: ^6.2.1 + cross-spawn: ^7.0.6 + memorystream: ^0.3.1 + minimatch: ^9.0.0 + pidtree: ^0.6.0 + read-package-json-fast: ^4.0.0 + shell-quote: ^1.7.3 + which: ^5.0.0 + bin: + npm-run-all: bin/npm-run-all/index.js + npm-run-all2: bin/npm-run-all/index.js + run-p: bin/run-p/index.js + run-s: bin/run-s/index.js + checksum: ef8f46b61482fccc2e4acef0001f841d0bffb134e1a6955d411bdbe80ae73de9773a83acefb2b7fc3c6a936244f7b9b145c703b16f9f06226e64dde616d42f11 + languageName: node + linkType: hard + "npm-run-all@npm:^4.1.5": version: 4.1.5 resolution: "npm-run-all@npm:4.1.5" @@ -7820,6 +11228,13 @@ __metadata: languageName: node linkType: hard +"nwsapi@npm:^2.2.2": + version: 2.2.16 + resolution: "nwsapi@npm:2.2.16" + checksum: 467b36a74b7b8647d53fd61d05ca7d6c73a4a5d1b94ea84f770c03150b00ef46d38076cf8e708936246ae450c42a1f21e28e153023719784dc4d1a19b1737d47 + languageName: node + linkType: hard + "nx@npm:>=17.1.2 < 21": version: 20.1.4 resolution: "nx@npm:20.1.4" @@ -8043,7 +11458,7 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^3.0.2": +"p-limit@npm:^3.0.2, p-limit@npm:^3.1.0": version: 3.1.0 resolution: "p-limit@npm:3.1.0" dependencies: @@ -8259,6 +11674,15 @@ __metadata: languageName: node linkType: hard +"parse5@npm:^7.0.0, parse5@npm:^7.1.1": + version: 7.2.1 + resolution: "parse5@npm:7.2.1" + dependencies: + entities: ^4.5.0 + checksum: 11253cf8aa2e7fc41c004c64cba6f2c255f809663365db65bd7ad0e8cf7b89e436a563c20059346371cc543a6c1b567032088883ca6a2cbc88276c666b68236d + languageName: node + linkType: hard + "path-browserify@npm:^1.0.0": version: 1.0.1 resolution: "path-browserify@npm:1.0.1" @@ -8341,7 +11765,7 @@ __metadata: languageName: node linkType: hard -"picomatch@npm:^2.3.1": +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf @@ -8357,6 +11781,15 @@ __metadata: languageName: node linkType: hard +"pidtree@npm:^0.6.0": + version: 0.6.0 + resolution: "pidtree@npm:0.6.0" + bin: + pidtree: bin/pidtree.js + checksum: 8fbc073ede9209dd15e80d616e65eb674986c93be49f42d9ddde8dbbd141bb53d628a7ca4e58ab5c370bb00383f67d75df59a9a226dede8fa801267a7030c27a + languageName: node + linkType: hard + "pify@npm:5.0.0": version: 5.0.0 resolution: "pify@npm:5.0.0" @@ -8385,6 +11818,13 @@ __metadata: languageName: node linkType: hard +"pirates@npm:^4.0.4": + version: 4.0.6 + resolution: "pirates@npm:4.0.6" + checksum: 46a65fefaf19c6f57460388a5af9ab81e3d7fd0e7bc44ca59d753cb5c4d0df97c6c6e583674869762101836d68675f027d60f841c105d72734df9dfca97cbcc6 + languageName: node + linkType: hard + "pkg-dir@npm:^4.2.0": version: 4.2.0 resolution: "pkg-dir@npm:4.2.0" @@ -8488,7 +11928,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33, postcss@npm:^8.4.49": +"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33": version: 8.4.49 resolution: "postcss@npm:8.4.49" dependencies: @@ -8535,7 +11975,7 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^29.7.0": +"pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": version: 29.7.0 resolution: "pretty-format@npm:29.7.0" dependencies: @@ -8612,6 +12052,16 @@ __metadata: languageName: node linkType: hard +"prompts@npm:^2.0.1": + version: 2.4.2 + resolution: "prompts@npm:2.4.2" + dependencies: + kleur: ^3.0.3 + sisteransi: ^1.0.5 + checksum: d8fd1fe63820be2412c13bfc5d0a01909acc1f0367e32396962e737cb2fc52d004f3302475d5ce7d18a1e8a79985f93ff04ee03007d091029c3f9104bffc007d + languageName: node + linkType: hard + "promzard@npm:^1.0.0": version: 1.0.2 resolution: "promzard@npm:1.0.2" @@ -8646,13 +12096,29 @@ __metadata: languageName: node linkType: hard -"punycode@npm:^2.1.0, punycode@npm:^2.1.1": +"psl@npm:^1.1.33": + version: 1.15.0 + resolution: "psl@npm:1.15.0" + dependencies: + punycode: ^2.3.1 + checksum: 6f777d82eecfe1c2406dadbc15e77467b186fec13202ec887a45d0209a2c6fca530af94a462a477c3c4a767ad892ec9ede7c482d98f61f653dd838b50e89dc15 + languageName: node + linkType: hard + +"punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1": version: 2.3.1 resolution: "punycode@npm:2.3.1" checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 languageName: node linkType: hard +"pure-rand@npm:^6.0.0": + version: 6.1.0 + resolution: "pure-rand@npm:6.1.0" + checksum: 8d53bc02bed99eca0b65b505090152ee7e9bd67dd74f8ff32ba1c883b87234067c5bf68d2614759fb217d82594d7a92919e6df80f97885e7b12b42af4bd3316a + languageName: node + linkType: hard + "querystringify@npm:^2.1.1": version: 2.2.0 resolution: "querystringify@npm:2.2.0" @@ -8767,6 +12233,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: ^4.0.0 + npm-normalize-package-bin: ^4.0.0 + checksum: bf0becd7d0b652dcc5874b466d1dbd98313180e89505c072f35ff48a1ad6bdaf2427143301e1924d64e4af5064cda8be5df16f14de882f03130e29051bbaab87 + languageName: node + linkType: hard + "read-pkg-up@npm:^3.0.0": version: 3.0.0 resolution: "read-pkg-up@npm:3.0.0" @@ -8913,6 +12389,38 @@ __metadata: languageName: node linkType: hard +"regenerate-unicode-properties@npm:^10.2.0": + version: 10.2.0 + resolution: "regenerate-unicode-properties@npm:10.2.0" + dependencies: + regenerate: ^1.4.2 + checksum: d5c5fc13f8b8d7e16e791637a4bfef741f8d70e267d51845ee7d5404a32fa14c75b181c4efba33e4bff8b0000a2f13e9773593713dfe5b66597df4259275ce63 + languageName: node + linkType: hard + +"regenerate@npm:^1.4.2": + version: 1.4.2 + resolution: "regenerate@npm:1.4.2" + checksum: 3317a09b2f802da8db09aa276e469b57a6c0dd818347e05b8862959c6193408242f150db5de83c12c3fa99091ad95fb42a6db2c3329bfaa12a0ea4cbbeb30cb0 + languageName: node + linkType: hard + +"regenerator-runtime@npm:^0.14.0": + version: 0.14.1 + resolution: "regenerator-runtime@npm:0.14.1" + checksum: 9f57c93277b5585d3c83b0cf76be47b473ae8c6d9142a46ce8b0291a04bb2cf902059f0f8445dcabb3fb7378e5fe4bb4ea1e008876343d42e46d3b484534ce38 + languageName: node + linkType: hard + +"regenerator-transform@npm:^0.15.2": + version: 0.15.2 + resolution: "regenerator-transform@npm:0.15.2" + dependencies: + "@babel/runtime": ^7.8.4 + checksum: 20b6f9377d65954980fe044cfdd160de98df415b4bff38fbade67b3337efaf078308c4fed943067cd759827cc8cfeca9cb28ccda1f08333b85d6a2acbd022c27 + languageName: node + linkType: hard + "regexp.prototype.flags@npm:^1.5.3": version: 1.5.3 resolution: "regexp.prototype.flags@npm:1.5.3" @@ -8925,6 +12433,38 @@ __metadata: languageName: node linkType: hard +"regexpu-core@npm:^6.2.0": + version: 6.2.0 + resolution: "regexpu-core@npm:6.2.0" + dependencies: + regenerate: ^1.4.2 + regenerate-unicode-properties: ^10.2.0 + regjsgen: ^0.8.0 + regjsparser: ^0.12.0 + unicode-match-property-ecmascript: ^2.0.0 + unicode-match-property-value-ecmascript: ^2.1.0 + checksum: 67d3c4a3f6c99bc80b5d690074a27e6f675be1c1739f8a9acf028fbc36f1a468472574ea65e331e217995198ba4404d7878f3cb3739a73552dd3c70d3fb7f8e6 + languageName: node + linkType: hard + +"regjsgen@npm:^0.8.0": + version: 0.8.0 + resolution: "regjsgen@npm:0.8.0" + checksum: a1d925ff14a4b2be774e45775ee6b33b256f89c42d480e6d85152d2133f18bd3d6af662161b226fa57466f7efec367eaf7ccd2a58c0ec2a1306667ba2ad07b0d + languageName: node + linkType: hard + +"regjsparser@npm:^0.12.0": + version: 0.12.0 + resolution: "regjsparser@npm:0.12.0" + dependencies: + jsesc: ~3.0.2 + bin: + regjsparser: bin/parser + checksum: 094b55b0ab3e1fd58f8ce5132a1d44dab08d91f7b0eea4132b0157b303ebb8ded20a9cbd893d25402d2aeddb23fac1f428ab4947b295d6fa51dd1c334a9e76f0 + languageName: node + linkType: hard + "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -8969,6 +12509,13 @@ __metadata: languageName: node linkType: hard +"resolve.exports@npm:^2.0.0": + version: 2.0.3 + resolution: "resolve.exports@npm:2.0.3" + checksum: abfb9f98278dcd0c19b8a49bb486abfafa23df4636d49128ea270dc982053c3ef230a530aecda1fae1322873fdfa6c97674fc539651ddfdb375ac58e0b8ef6df + languageName: node + linkType: hard + "resolve@npm:^1.10.0, resolve@npm:^1.20.0": version: 1.22.8 resolution: "resolve@npm:1.22.8" @@ -8982,6 +12529,19 @@ __metadata: languageName: node linkType: hard +"resolve@npm:^1.14.2": + version: 1.22.10 + resolution: "resolve@npm:1.22.10" + dependencies: + is-core-module: ^2.16.0 + path-parse: ^1.0.7 + supports-preserve-symlinks-flag: ^1.0.0 + bin: + resolve: bin/resolve + checksum: ab7a32ff4046fcd7c6fdd525b24a7527847d03c3650c733b909b01b757f92eb23510afa9cc3e9bf3f26a3e073b48c88c706dfd4c1d2fb4a16a96b73b6328ddcf + languageName: node + linkType: hard + "resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=c3c19d" @@ -8995,6 +12555,19 @@ __metadata: languageName: node linkType: hard +"resolve@patch:resolve@^1.14.2#~builtin": + version: 1.22.10 + resolution: "resolve@patch:resolve@npm%3A1.22.10#~builtin::version=1.22.10&hash=c3c19d" + dependencies: + is-core-module: ^2.16.0 + path-parse: ^1.0.7 + supports-preserve-symlinks-flag: ^1.0.0 + bin: + resolve: bin/resolve + checksum: 8aac1e4e4628bd00bf4b94b23de137dd3fe44097a8d528fd66db74484be929936e20c696e1a3edf4488f37e14180b73df6f600992baea3e089e8674291f16c9d + languageName: node + linkType: hard + "restore-cursor@npm:^3.1.0": version: 3.1.0 resolution: "restore-cursor@npm:3.1.0" @@ -9052,72 +12625,33 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^4.23.0": - version: 4.28.0 - resolution: "rollup@npm:4.28.0" - dependencies: - "@rollup/rollup-android-arm-eabi": 4.28.0 - "@rollup/rollup-android-arm64": 4.28.0 - "@rollup/rollup-darwin-arm64": 4.28.0 - "@rollup/rollup-darwin-x64": 4.28.0 - "@rollup/rollup-freebsd-arm64": 4.28.0 - "@rollup/rollup-freebsd-x64": 4.28.0 - "@rollup/rollup-linux-arm-gnueabihf": 4.28.0 - "@rollup/rollup-linux-arm-musleabihf": 4.28.0 - "@rollup/rollup-linux-arm64-gnu": 4.28.0 - "@rollup/rollup-linux-arm64-musl": 4.28.0 - "@rollup/rollup-linux-powerpc64le-gnu": 4.28.0 - "@rollup/rollup-linux-riscv64-gnu": 4.28.0 - "@rollup/rollup-linux-s390x-gnu": 4.28.0 - "@rollup/rollup-linux-x64-gnu": 4.28.0 - "@rollup/rollup-linux-x64-musl": 4.28.0 - "@rollup/rollup-win32-arm64-msvc": 4.28.0 - "@rollup/rollup-win32-ia32-msvc": 4.28.0 - "@rollup/rollup-win32-x64-msvc": 4.28.0 - "@types/estree": 1.0.6 - fsevents: ~2.3.2 +"rollup-plugin-dts@npm:^5.3.1": + version: 5.3.1 + resolution: "rollup-plugin-dts@npm:5.3.1" + dependencies: + "@babel/code-frame": ^7.22.5 + magic-string: ^0.30.2 + peerDependencies: + rollup: ^3.0 + typescript: ^4.1 || ^5.0 dependenciesMeta: - "@rollup/rollup-android-arm-eabi": - optional: true - "@rollup/rollup-android-arm64": - optional: true - "@rollup/rollup-darwin-arm64": - optional: true - "@rollup/rollup-darwin-x64": - optional: true - "@rollup/rollup-freebsd-arm64": - optional: true - "@rollup/rollup-freebsd-x64": - optional: true - "@rollup/rollup-linux-arm-gnueabihf": - optional: true - "@rollup/rollup-linux-arm-musleabihf": - optional: true - "@rollup/rollup-linux-arm64-gnu": - optional: true - "@rollup/rollup-linux-arm64-musl": - optional: true - "@rollup/rollup-linux-powerpc64le-gnu": - optional: true - "@rollup/rollup-linux-riscv64-gnu": - optional: true - "@rollup/rollup-linux-s390x-gnu": - optional: true - "@rollup/rollup-linux-x64-gnu": - optional: true - "@rollup/rollup-linux-x64-musl": - optional: true - "@rollup/rollup-win32-arm64-msvc": - optional: true - "@rollup/rollup-win32-ia32-msvc": - optional: true - "@rollup/rollup-win32-x64-msvc": + "@babel/code-frame": optional: true + checksum: 75785646f7d4b049ec16c7b568ee9e8632c26d1e64fa87294b97a288e857e6e0f0d2731add08f1d674a680e554ad45159cb40c75e6585456982338fbb5940a77 + languageName: node + linkType: hard + +"rollup@npm:^3.28.0": + version: 3.29.5 + resolution: "rollup@npm:3.29.5" + dependencies: + fsevents: ~2.3.2 + dependenciesMeta: fsevents: optional: true bin: rollup: dist/bin/rollup - checksum: 77919b29dd4b54ce5e131aa61f03d8bb7955b332970941914d9c8bd7afd70f8189dc463eb8a357355abcc1bc7add809ec75280d50144817e47cd9e87005bd8ac + checksum: 6f8304e58ac8170a715e61e46c4aa674b2ae2587ed2a712dab58f72e5e54803ae40b485fbe6b3e6a694f4c8f7a59ab936ccf9f6b686c7cfd1f1970fa9ecadf1a languageName: node linkType: hard @@ -9276,6 +12810,15 @@ __metadata: languageName: node linkType: hard +"saxes@npm:^6.0.0": + version: 6.0.0 + resolution: "saxes@npm:6.0.0" + dependencies: + xmlchars: ^2.2.0 + checksum: d3fa3e2aaf6c65ed52ee993aff1891fc47d5e47d515164b5449cbf5da2cbdc396137e55590472e64c5c436c14ae64a8a03c29b9e7389fc6f14035cf4e982ef3b + languageName: node + linkType: hard + "scheduler@npm:^0.23.2": version: 0.23.2 resolution: "scheduler@npm:0.23.2" @@ -9335,7 +12878,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^6.3.1": +"semver@npm:^6.3.0, semver@npm:^6.3.1": version: 6.3.1 resolution: "semver@npm:6.3.1" bin: @@ -9353,6 +12896,15 @@ __metadata: languageName: node linkType: hard +"semver@npm:^7.6.3": + version: 7.7.1 + resolution: "semver@npm:7.7.1" + bin: + semver: bin/semver.js + checksum: 586b825d36874007c9382d9e1ad8f93888d8670040add24a28e06a910aeebd673a2eb9e3bf169c6679d9245e66efb9057e0852e70d9daa6c27372aab1dda7104 + languageName: node + linkType: hard + "serialize-javascript@npm:^6.0.1": version: 6.0.2 resolution: "serialize-javascript@npm:6.0.2" @@ -9436,7 +12988,7 @@ __metadata: languageName: node linkType: hard -"shell-quote@npm:^1.6.1": +"shell-quote@npm:^1.6.1, shell-quote@npm:^1.7.3": version: 1.8.2 resolution: "shell-quote@npm:1.8.2" checksum: 1e97b62ced1c4c5135015978ebf273bed1f425a68cf84163e83fbb0f34b3ff9471e656720dab2b7cbb4ae0f58998e686d17d166c28dfb3662acd009e8bd7faed @@ -9455,7 +13007,7 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:3.0.7, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3": +"signal-exit@npm:3.0.7, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -9483,6 +13035,22 @@ __metadata: languageName: node linkType: hard +"simulate-event@npm:~1.4.0": + version: 1.4.0 + resolution: "simulate-event@npm:1.4.0" + dependencies: + xtend: ^4.0.1 + checksum: d2cbb62f7a0c22aa1964e4df7a01b717c3c437df40dde70112fc06046cb8c7a03ca582571754653abc7c8c06df43d28c57b4f0bdf7a587094e4d6282357eb506 + languageName: node + linkType: hard + +"sisteransi@npm:^1.0.5": + version: 1.0.5 + resolution: "sisteransi@npm:1.0.5" + checksum: aba6438f46d2bfcef94cf112c835ab395172c75f67453fe05c340c770d3c402363018ae1ab4172a1026a90c47eaccf3af7b6ff6fa749a680c2929bd7fa2b37a4 + languageName: node + linkType: hard + "slash@npm:3.0.0, slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" @@ -9583,6 +13151,16 @@ __metadata: languageName: node linkType: hard +"source-map-support@npm:0.5.13": + version: 0.5.13 + resolution: "source-map-support@npm:0.5.13" + dependencies: + buffer-from: ^1.0.0 + source-map: ^0.6.0 + checksum: 933550047b6c1a2328599a21d8b7666507427c0f5ef5eaadd56b5da0fd9505e239053c66fe181bf1df469a3b7af9d775778eee283cbb7ae16b902ddc09e93a97 + languageName: node + linkType: hard + "source-map-support@npm:~0.5.20": version: 0.5.21 resolution: "source-map-support@npm:0.5.21" @@ -9684,6 +13262,25 @@ __metadata: languageName: node linkType: hard +"stack-utils@npm:^2.0.3": + version: 2.0.6 + resolution: "stack-utils@npm:2.0.6" + dependencies: + escape-string-regexp: ^2.0.0 + checksum: 052bf4d25bbf5f78e06c1d5e67de2e088b06871fa04107ca8d3f0e9d9263326e2942c8bedee3545795fc77d787d443a538345eef74db2f8e35db3558c6f91ff7 + languageName: node + linkType: hard + +"string-length@npm:^4.0.1": + version: 4.0.2 + resolution: "string-length@npm:4.0.2" + dependencies: + char-regex: ^1.0.2 + strip-ansi: ^6.0.0 + checksum: ce85533ef5113fcb7e522bcf9e62cb33871aa99b3729cec5595f4447f660b0cefd542ca6df4150c97a677d58b0cb727a3fe09ac1de94071d05526c73579bf505 + languageName: node + linkType: hard + "string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -9856,6 +13453,13 @@ __metadata: languageName: node linkType: hard +"style-mod@npm:^4.0.0, style-mod@npm:^4.1.0": + version: 4.1.2 + resolution: "style-mod@npm:4.1.2" + checksum: 7c5c3e82747f9bcf5f288d8d07f50848e4630fe5ff7bfe4d94cc87d6b6a2588227cbf21b4c792ac6406e5852293300a75e710714479a5c59a06af677f0825ef8 + languageName: node + linkType: hard + "style-search@npm:^0.1.0": version: 0.1.0 resolution: "style-search@npm:0.1.0" @@ -10007,6 +13611,13 @@ __metadata: languageName: node linkType: hard +"symbol-tree@npm:^3.2.4": + version: 3.2.4 + resolution: "symbol-tree@npm:3.2.4" + checksum: 6e8fc7e1486b8b54bea91199d9535bb72f10842e40c79e882fc94fb7b14b89866adf2fd79efa5ebb5b658bc07fb459ccce5ac0e99ef3d72f474e74aaf284029d + languageName: node + linkType: hard + "synckit@npm:^0.9.1": version: 0.9.2 resolution: "synckit@npm:0.9.2" @@ -10128,6 +13739,17 @@ __metadata: languageName: node linkType: hard +"test-exclude@npm:^6.0.0": + version: 6.0.0 + resolution: "test-exclude@npm:6.0.0" + dependencies: + "@istanbuljs/schema": ^0.1.2 + glob: ^7.1.4 + minimatch: ^3.0.4 + checksum: 3b34a3d77165a2cb82b34014b3aba93b1c4637a5011807557dc2f3da826c59975a5ccad765721c4648b39817e3472789f9b0fa98fc854c5c1c7a1e632aacdc28 + languageName: node + linkType: hard + "text-extensions@npm:^1.0.0": version: 1.9.0 resolution: "text-extensions@npm:1.9.0" @@ -10175,6 +13797,13 @@ __metadata: languageName: node linkType: hard +"tmpl@npm:1.0.5": + version: 1.0.5 + resolution: "tmpl@npm:1.0.5" + checksum: cd922d9b853c00fe414c5a774817be65b058d54a2d01ebb415840960406c669a0fc632f66df885e24cb022ec812739199ccbdb8d1164c3e513f85bfca5ab2873 + languageName: node + linkType: hard + "to-regex-range@npm:^5.0.1": version: 5.0.1 resolution: "to-regex-range@npm:5.0.1" @@ -10184,6 +13813,18 @@ __metadata: languageName: node linkType: hard +"tough-cookie@npm:^4.1.2": + version: 4.1.4 + resolution: "tough-cookie@npm:4.1.4" + dependencies: + psl: ^1.1.33 + punycode: ^2.1.1 + universalify: ^0.2.0 + url-parse: ^1.5.3 + checksum: 5815059f014c31179a303c673f753f7899a6fce94ac93712c88ea5f3c26e0c042b5f0c7a599a00f8e0feeca4615dba75c3dffc54f3c1a489978aa8205e09307c + languageName: node + linkType: hard + "tr46@npm:^2.1.0": version: 2.1.0 resolution: "tr46@npm:2.1.0" @@ -10193,6 +13834,15 @@ __metadata: languageName: node linkType: hard +"tr46@npm:^3.0.0": + version: 3.0.0 + resolution: "tr46@npm:3.0.0" + dependencies: + punycode: ^2.1.1 + checksum: 44c3cc6767fb800490e6e9fd64fd49041aa4e49e1f6a012b34a75de739cc9ed3a6405296072c1df8b6389ae139c5e7c6496f659cfe13a04a4bff3a1422981270 + languageName: node + linkType: hard + "tr46@npm:~0.0.3": version: 0.0.3 resolution: "tr46@npm:0.0.3" @@ -10230,6 +13880,43 @@ __metadata: languageName: node linkType: hard +"ts-jest@npm:^29.1.0": + version: 29.2.5 + resolution: "ts-jest@npm:29.2.5" + dependencies: + bs-logger: ^0.2.6 + ejs: ^3.1.10 + fast-json-stable-stringify: ^2.1.0 + jest-util: ^29.0.0 + json5: ^2.2.3 + lodash.memoize: ^4.1.2 + make-error: ^1.3.6 + semver: ^7.6.3 + yargs-parser: ^21.1.1 + peerDependencies: + "@babel/core": ">=7.0.0-beta.0 <8" + "@jest/transform": ^29.0.0 + "@jest/types": ^29.0.0 + babel-jest: ^29.0.0 + jest: ^29.0.0 + typescript: ">=4.3 <6" + peerDependenciesMeta: + "@babel/core": + optional: true + "@jest/transform": + optional: true + "@jest/types": + optional: true + babel-jest: + optional: true + esbuild: + optional: true + bin: + ts-jest: cli.js + checksum: d60d1e1d80936f6002b1bb27f7e062408bc733141b9d666565503f023c340a3196d506c836a4316c5793af81a5f910ab49bb9c13f66e2dc66de4e0f03851dbca + languageName: node + linkType: hard + "tsconfig-paths@npm:^4.1.2": version: 4.2.0 resolution: "tsconfig-paths@npm:4.2.0" @@ -10275,6 +13962,13 @@ __metadata: languageName: node linkType: hard +"type-detect@npm:4.0.8": + version: 4.0.8 + resolution: "type-detect@npm:4.0.8" + checksum: 62b5628bff67c0eb0b66afa371bd73e230399a8d2ad30d852716efcc4656a7516904570cd8631a49a3ce57c10225adf5d0cbdcb47f6b0255fe6557c453925a15 + languageName: node + linkType: hard + "type-fest@npm:^0.18.0": version: 0.18.1 resolution: "type-fest@npm:0.18.1" @@ -10394,33 +14088,23 @@ __metadata: languageName: node linkType: hard -"typescript@npm:~5.0.2": - version: 5.0.4 - resolution: "typescript@npm:5.0.4" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 82b94da3f4604a8946da585f7d6c3025fff8410779e5bde2855ab130d05e4fd08938b9e593b6ebed165bda6ad9292b230984f10952cf82f0a0ca07bbeaa08172 - languageName: node - linkType: hard - -"typescript@npm:~5.6.2": - version: 5.6.3 - resolution: "typescript@npm:5.6.3" +"typescript@npm:^5.1.6, typescript@npm:~5.7.2": + version: 5.7.3 + resolution: "typescript@npm:5.7.3" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: ba302f8822777ebefb28b554105f3e074466b671e7444ec6b75dadc008a62f46f373d9e57ceced1c433756d06c8b7dc569a7eefdf3a9573122a49205ff99021a + checksum: 6c38b1e989918e576f0307e6ee013522ea480dfce5f3ca85c9b2d8adb1edeffd37f4f30cd68de0c38a44563d12ba922bdb7e36aa2dac9c51de5d561e6e9a2e9c languageName: node linkType: hard -"typescript@npm:~5.7.2": - version: 5.7.3 - resolution: "typescript@npm:5.7.3" +"typescript@npm:~5.0.2": + version: 5.0.4 + resolution: "typescript@npm:5.0.4" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 6c38b1e989918e576f0307e6ee013522ea480dfce5f3ca85c9b2d8adb1edeffd37f4f30cd68de0c38a44563d12ba922bdb7e36aa2dac9c51de5d561e6e9a2e9c + checksum: 82b94da3f4604a8946da585f7d6c3025fff8410779e5bde2855ab130d05e4fd08938b9e593b6ebed165bda6ad9292b230984f10952cf82f0a0ca07bbeaa08172 languageName: node linkType: hard @@ -10434,33 +14118,23 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@~5.0.2#~builtin": - version: 5.0.4 - resolution: "typescript@patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: bb309d320c59a26565fb3793dba550576ab861018ff3fd1b7fccabbe46ae4a35546bc45f342c0a0b6f265c801ccdf64ffd68f548f117ceb7f0eac4b805cd52a9 - languageName: node - linkType: hard - -"typescript@patch:typescript@~5.6.2#~builtin": - version: 5.6.3 - resolution: "typescript@patch:typescript@npm%3A5.6.3#~builtin::version=5.6.3&hash=85af82" +"typescript@patch:typescript@^5.1.6#~builtin, typescript@patch:typescript@~5.7.2#~builtin": + version: 5.7.3 + resolution: "typescript@patch:typescript@npm%3A5.7.3#~builtin::version=5.7.3&hash=85af82" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: ade87bce2363ee963eed0e4ca8a312ea02c81873ebd53609bc3f6dc0a57f6e61ad7e3fb8cbb7f7ab8b5081cbee801b023f7c4823ee70b1c447eae050e6c7622b + checksum: 633cd749d6cd7bc842c6b6245847173bba99742a60776fae3c0fbcc0d1733cd51a733995e5f4dadd8afb0e64e57d3c7dbbeae953a072ee303940eca69e22f311 languageName: node linkType: hard -"typescript@patch:typescript@~5.7.2#~builtin": - version: 5.7.3 - resolution: "typescript@patch:typescript@npm%3A5.7.3#~builtin::version=5.7.3&hash=85af82" +"typescript@patch:typescript@~5.0.2#~builtin": + version: 5.0.4 + resolution: "typescript@patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 633cd749d6cd7bc842c6b6245847173bba99742a60776fae3c0fbcc0d1733cd51a733995e5f4dadd8afb0e64e57d3c7dbbeae953a072ee303940eca69e22f311 + checksum: bb309d320c59a26565fb3793dba550576ab861018ff3fd1b7fccabbe46ae4a35546bc45f342c0a0b6f265c801ccdf64ffd68f548f117ceb7f0eac4b805cd52a9 languageName: node linkType: hard @@ -10502,6 +14176,37 @@ __metadata: languageName: node linkType: hard +"unicode-canonical-property-names-ecmascript@npm:^2.0.0": + version: 2.0.1 + resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.1" + checksum: 3c3dabdb1d22aef4904399f9e810d0b71c0b12b3815169d96fac97e56d5642840c6071cf709adcace2252bc6bb80242396c2ec74b37224eb015c5f7aca40bad7 + languageName: node + linkType: hard + +"unicode-match-property-ecmascript@npm:^2.0.0": + version: 2.0.0 + resolution: "unicode-match-property-ecmascript@npm:2.0.0" + dependencies: + unicode-canonical-property-names-ecmascript: ^2.0.0 + unicode-property-aliases-ecmascript: ^2.0.0 + checksum: 1f34a7434a23df4885b5890ac36c5b2161a809887000be560f56ad4b11126d433c0c1c39baf1016bdabed4ec54829a6190ee37aa24919aa116dc1a5a8a62965a + languageName: node + linkType: hard + +"unicode-match-property-value-ecmascript@npm:^2.1.0": + version: 2.2.0 + resolution: "unicode-match-property-value-ecmascript@npm:2.2.0" + checksum: 9e3151e1d0bc6be35c4cef105e317c04090364173e8462005b5cde08a1e7c858b6586486cfebac39dc2c6c8c9ee24afb245de6d527604866edfa454fe2a35fae + languageName: node + linkType: hard + +"unicode-property-aliases-ecmascript@npm:^2.0.0": + version: 2.1.0 + resolution: "unicode-property-aliases-ecmascript@npm:2.1.0" + checksum: 243524431893649b62cc674d877bd64ef292d6071dd2fd01ab4d5ad26efbc104ffcd064f93f8a06b7e4ec54c172bf03f6417921a0d8c3a9994161fe1f88f815b + languageName: node + linkType: hard + "unique-filename@npm:^3.0.0": version: 3.0.0 resolution: "unique-filename@npm:3.0.0" @@ -10545,6 +14250,13 @@ __metadata: languageName: node linkType: hard +"universalify@npm:^0.2.0": + version: 0.2.0 + resolution: "universalify@npm:0.2.0" + checksum: e86134cb12919d177c2353196a4cc09981524ee87abf621f7bc8d249dbbbebaec5e7d1314b96061497981350df786e4c5128dbf442eba104d6e765bc260678b5 + languageName: node + linkType: hard + "universalify@npm:^2.0.0": version: 2.0.1 resolution: "universalify@npm:2.0.1" @@ -10582,7 +14294,7 @@ __metadata: languageName: node linkType: hard -"url-parse@npm:~1.5.4": +"url-parse@npm:^1.5.3, url-parse@npm:~1.5.4": version: 1.5.10 resolution: "url-parse@npm:1.5.10" dependencies: @@ -10608,6 +14320,26 @@ __metadata: languageName: node linkType: hard +"uuid@npm:^8.3.2": + version: 8.3.2 + resolution: "uuid@npm:8.3.2" + bin: + uuid: dist/bin/uuid + checksum: 5575a8a75c13120e2f10e6ddc801b2c7ed7d8f3c8ac22c7ed0c7b2ba6383ec0abda88c905085d630e251719e0777045ae3236f04c812184b7c765f63a70e58df + languageName: node + linkType: hard + +"v8-to-istanbul@npm:^9.0.1": + version: 9.3.0 + resolution: "v8-to-istanbul@npm:9.3.0" + dependencies: + "@jridgewell/trace-mapping": ^0.3.12 + "@types/istanbul-lib-coverage": ^2.0.1 + convert-source-map: ^2.0.0 + checksum: ded42cd535d92b7fd09a71c4c67fb067487ef5551cc227bfbf2a1f159a842e4e4acddaef20b955789b8d3b455b9779d036853f4a27ce15007f6364a4d30317ae + languageName: node + linkType: hard + "validate-npm-package-license@npm:3.0.4, validate-npm-package-license@npm:^3.0.1, validate-npm-package-license@npm:^3.0.4": version: 3.0.4 resolution: "validate-npm-package-license@npm:3.0.4" @@ -10665,58 +14397,6 @@ __metadata: languageName: node linkType: hard -"vite@npm:^6.0.1": - version: 6.0.2 - resolution: "vite@npm:6.0.2" - dependencies: - esbuild: ^0.24.0 - fsevents: ~2.3.3 - postcss: ^8.4.49 - rollup: ^4.23.0 - peerDependencies: - "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 - jiti: ">=1.21.0" - less: "*" - lightningcss: ^1.21.0 - sass: "*" - sass-embedded: "*" - stylus: "*" - sugarss: "*" - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - dependenciesMeta: - fsevents: - optional: true - peerDependenciesMeta: - "@types/node": - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - bin: - vite: bin/vite.js - checksum: 3a9e36a00afe3f9bef81238370b824a56e44da78213ea7b4b9f47d50dd079c1eba20dd904e1c1bb686df052932444e20262fb386e714451fc50e4e3b02c067d4 - languageName: node - linkType: hard - "vite@npm:^6.1.0": version: 6.1.0 resolution: "vite@npm:6.1.0" @@ -10769,6 +14449,69 @@ __metadata: languageName: node linkType: hard +"vscode-jsonrpc@npm:8.2.0": + version: 8.2.0 + resolution: "vscode-jsonrpc@npm:8.2.0" + checksum: f302a01e59272adc1ae6494581fa31c15499f9278df76366e3b97b2236c7c53ebfc71efbace9041cfd2caa7f91675b9e56f2407871a1b3c7f760a2e2ee61484a + languageName: node + linkType: hard + +"vscode-jsonrpc@npm:^6.0.0": + version: 6.0.0 + resolution: "vscode-jsonrpc@npm:6.0.0" + checksum: 3a67a56f287e8c449f2d9752eedf91e704dc7b9a326f47fb56ac07667631deb45ca52192e9bccb2ab108764e48409d70fa64b930d46fc3822f75270b111c5f53 + languageName: node + linkType: hard + +"vscode-jsonrpc@npm:^8.0.2": + version: 8.2.1 + resolution: "vscode-jsonrpc@npm:8.2.1" + checksum: 2af2c333d73f6587896a7077978b8d4b430e55c674d5dbb90597a84a6647057c1655a3bff398a9b08f1f8ba57dbd2deabf05164315829c297b0debba3b8bc19e + languageName: node + linkType: hard + +"vscode-languageserver-protocol@npm:^3.17.0": + version: 3.17.5 + resolution: "vscode-languageserver-protocol@npm:3.17.5" + dependencies: + vscode-jsonrpc: 8.2.0 + vscode-languageserver-types: 3.17.5 + checksum: dfb42d276df5dfea728267885b99872ecff62f6c20448b8539fae71bb196b420f5351c5aca7c1047bf8fb1f89fa94a961dce2bc5bf7e726198f4be0bb86a1e71 + languageName: node + linkType: hard + +"vscode-languageserver-types@npm:3.17.5": + version: 3.17.5 + resolution: "vscode-languageserver-types@npm:3.17.5" + checksum: 79b420e7576398d396579ca3a461c9ed70e78db4403cd28bbdf4d3ed2b66a2b4114031172e51fad49f0baa60a2180132d7cb2ea35aa3157d7af3c325528210ac + languageName: node + linkType: hard + +"vscode-ws-jsonrpc@npm:~1.0.2": + version: 1.0.2 + resolution: "vscode-ws-jsonrpc@npm:1.0.2" + dependencies: + vscode-jsonrpc: ^8.0.2 + checksum: eb2fdb5c96f124326505f06564dfc6584318b748fd6e39b4c0ba16a0d383d13ba0e9433596abdb841428dfc2a5501994c3206723d1cb38c6af5fcac1faf4be26 + languageName: node + linkType: hard + +"w3c-keyname@npm:^2.2.4": + version: 2.2.8 + resolution: "w3c-keyname@npm:2.2.8" + checksum: 95bafa4c04fa2f685a86ca1000069c1ec43ace1f8776c10f226a73296caeddd83f893db885c2c220ebeb6c52d424e3b54d7c0c1e963bbf204038ff1a944fbb07 + languageName: node + linkType: hard + +"w3c-xmlserializer@npm:^4.0.0": + version: 4.0.0 + resolution: "w3c-xmlserializer@npm:4.0.0" + dependencies: + xml-name-validator: ^4.0.0 + checksum: eba070e78deb408ae8defa4d36b429f084b2b47a4741c4a9be3f27a0a3d1845e277e3072b04391a138f7e43776842627d1334e448ff13ff90ad9fb1214ee7091 + languageName: node + linkType: hard + "walk-up-path@npm:^3.0.1": version: 3.0.1 resolution: "walk-up-path@npm:3.0.1" @@ -10776,6 +14519,15 @@ __metadata: languageName: node linkType: hard +"walker@npm:^1.0.8": + version: 1.0.8 + resolution: "walker@npm:1.0.8" + dependencies: + makeerror: 1.0.12 + checksum: ad7a257ea1e662e57ef2e018f97b3c02a7240ad5093c392186ce0bcf1f1a60bbadd520d073b9beb921ed99f64f065efb63dfc8eec689a80e569f93c1c5d5e16c + languageName: node + linkType: hard + "watchpack@npm:^2.4.1": version: 2.4.2 resolution: "watchpack@npm:2.4.2" @@ -10809,6 +14561,13 @@ __metadata: languageName: node linkType: hard +"webidl-conversions@npm:^7.0.0": + version: 7.0.0 + resolution: "webidl-conversions@npm:7.0.0" + checksum: f05588567a2a76428515333eff87200fae6c83c3948a7482ebb109562971e77ef6dc49749afa58abb993391227c5697b3ecca52018793e0cb4620a48f10bd21b + languageName: node + linkType: hard + "webpack-cli@npm:^5.0.1": version: 5.1.4 resolution: "webpack-cli@npm:5.1.4" @@ -10905,6 +14664,15 @@ __metadata: languageName: node linkType: hard +"whatwg-encoding@npm:^2.0.0": + version: 2.0.0 + resolution: "whatwg-encoding@npm:2.0.0" + dependencies: + iconv-lite: 0.6.3 + checksum: 7087810c410aa9b689cbd6af8773341a53cdc1f3aae2a882c163bd5522ec8ca4cdfc269aef417a5792f411807d5d77d50df4c24e3abb00bb60192858a40cc675 + languageName: node + linkType: hard + "whatwg-mimetype@npm:^2.3.0": version: 2.3.0 resolution: "whatwg-mimetype@npm:2.3.0" @@ -10912,6 +14680,23 @@ __metadata: languageName: node linkType: hard +"whatwg-mimetype@npm:^3.0.0": + version: 3.0.0 + resolution: "whatwg-mimetype@npm:3.0.0" + checksum: ce08bbb36b6aaf64f3a84da89707e3e6a31e5ab1c1a2379fd68df79ba712a4ab090904f0b50e6693b0dafc8e6343a6157e40bf18fdffd26e513cf95ee2a59824 + languageName: node + linkType: hard + +"whatwg-url@npm:^11.0.0": + version: 11.0.0 + resolution: "whatwg-url@npm:11.0.0" + dependencies: + tr46: ^3.0.0 + webidl-conversions: ^7.0.0 + checksum: ed4826aaa57e66bb3488a4b25c9cd476c46ba96052747388b5801f137dd740b73fde91ad207d96baf9f17fbcc80fc1a477ad65181b5eb5fa718d27c69501d7af + languageName: node + linkType: hard + "whatwg-url@npm:^5.0.0": version: 5.0.0 resolution: "whatwg-url@npm:5.0.0" @@ -11139,6 +14924,16 @@ __metadata: languageName: node linkType: hard +"write-file-atomic@npm:^4.0.2": + version: 4.0.2 + resolution: "write-file-atomic@npm:4.0.2" + dependencies: + imurmurhash: ^0.1.4 + signal-exit: ^3.0.7 + checksum: 5da60bd4eeeb935eec97ead3df6e28e5917a6bd317478e4a85a5285e8480b8ed96032bbcc6ecd07b236142a24f3ca871c924ec4a6575e623ec1b11bf8c1c253c + languageName: node + linkType: hard + "write-json-file@npm:^3.2.0": version: 3.2.0 resolution: "write-json-file@npm:3.2.0" @@ -11179,7 +14974,28 @@ __metadata: languageName: node linkType: hard -"xtend@npm:~4.0.1": +"xml-name-validator@npm:^4.0.0": + version: 4.0.0 + resolution: "xml-name-validator@npm:4.0.0" + checksum: af100b79c29804f05fa35aa3683e29a321db9b9685d5e5febda3fa1e40f13f85abc40f45a6b2bf7bee33f68a1dc5e8eaef4cec100a304a9db565e6061d4cb5ad + languageName: node + linkType: hard + +"xml@npm:^1.0.1": + version: 1.0.1 + resolution: "xml@npm:1.0.1" + checksum: 11b5545ef3f8fec3fa29ce251f50ad7b6c97c103ed4d851306ec23366f5fa4699dd6a942262df52313a0cd1840ab26256da253c023bad3309d8ce46fe6020ca0 + languageName: node + linkType: hard + +"xmlchars@npm:^2.2.0": + version: 2.2.0 + resolution: "xmlchars@npm:2.2.0" + checksum: 8c70ac94070ccca03f47a81fcce3b271bd1f37a591bf5424e787ae313fcb9c212f5f6786e1fa82076a2c632c0141552babcd85698c437506dfa6ae2d58723062 + languageName: node + linkType: hard + +"xtend@npm:^4.0.1, xtend@npm:~4.0.1": version: 4.0.2 resolution: "xtend@npm:4.0.2" checksum: ac5dfa738b21f6e7f0dd6e65e1b3155036d68104e67e5d5d1bde74892e327d7e5636a076f625599dc394330a731861e87343ff184b0047fef1360a7ec0a5a36a @@ -11239,7 +15055,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:17.7.2, yargs@npm:^17.6.2": +"yargs@npm:17.7.2, yargs@npm:^17.3.1, yargs@npm:^17.6.2": version: 17.7.2 resolution: "yargs@npm:17.7.2" dependencies: From 7a89c831d797fef9cc7231b2695b67579cb52b76 Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 10:27:09 +0100 Subject: [PATCH 15/38] Apply CSS when changing notebooks --- demo/src/components/NoteBookBrowser.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/demo/src/components/NoteBookBrowser.tsx b/demo/src/components/NoteBookBrowser.tsx index 58a2cc8..910d577 100644 --- a/demo/src/components/NoteBookBrowser.tsx +++ b/demo/src/components/NoteBookBrowser.tsx @@ -1,3 +1,4 @@ +import { jupyterInfo } from 'jupyter-iframe-commands-host'; import { useRef } from 'react'; const sampleNotebooks = ['example.ipynb', 'soma.ipynb']; @@ -19,6 +20,7 @@ const NoteBookBrowser = () => { const handleClick = (filename: string) => { const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; + jupyterInfo.setState({ isBridgeReady: false }); iframe.src = `http://localhost:8888/notebooks/${filename}`; dialogRef.current?.close(); From bff44d59c02cecc63644b2330ec0d2356c80bc24 Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 10:28:45 +0100 Subject: [PATCH 16/38] Lint --- .../css-extension/ui-tests/tests/jupyter_css_loader.spec.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts b/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts index dae2a9f..121787e 100644 --- a/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts +++ b/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts @@ -16,6 +16,8 @@ test('should emit an activation console message', async ({ page }) => { await page.goto(); expect( - logs.filter(s => s === 'JupyterLab extension jupyter-css-loader is activated!') + logs.filter( + s => s === 'JupyterLab extension jupyter-css-loader is activated!' + ) ).toHaveLength(1); }); From 14e0476a18c7cccd3488e7480ce4c39148fde068 Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 10:35:02 +0100 Subject: [PATCH 17/38] Stuff for links --- demo/example.ipynb | 6 +-- demo/example2.ipynb | 73 ------------------------------ demo/src/components/ModeToggle.tsx | 4 +- packages/css-extension/README.md | 2 +- 4 files changed, 7 insertions(+), 78 deletions(-) delete mode 100644 demo/example2.ipynb diff --git a/demo/example.ipynb b/demo/example.ipynb index 78bae89..f8206a4 100644 --- a/demo/example.ipynb +++ b/demo/example.ipynb @@ -51,9 +51,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "Python 3.11 (ipykernel)", "language": "python", - "name": "python3" + "name": "python3.11" }, "language_info": { "codemirror_mode": { @@ -65,7 +65,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.8" + "version": "3.11.11" } }, "nbformat": 4, diff --git a/demo/example2.ipynb b/demo/example2.ipynb deleted file mode 100644 index aee135c..0000000 --- a/demo/example2.ipynb +++ /dev/null @@ -1,73 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# This is a different Example Notebook\n", - "\n", - "This is a simple example notebook that demonstrates basic Python functionality." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Create a simple list of numbers\n", - "numbers = list(range(1, 7))\n", - "print(f\"Numbers: {numbers}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Calculate the sum and average\n", - "total = sum(numbers)\n", - "average = total / len(numbers)\n", - "\n", - "print(f\"Sum: {total}\")\n", - "print(f\"Average: {average}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Create a simple multiplication table\n", - "n = 5\n", - "for i in range(1, n + 1):\n", - " for j in range(1, n + 1):\n", - " print(f\"{i * j:3}\", end=\" \")\n", - " print()" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.12.9" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/demo/src/components/ModeToggle.tsx b/demo/src/components/ModeToggle.tsx index 8438e77..de22a1e 100644 --- a/demo/src/components/ModeToggle.tsx +++ b/demo/src/components/ModeToggle.tsx @@ -18,7 +18,9 @@ const ModeToggle = () => { if (isLite) { currentUrl = `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'index.html'}`; } else { - currentUrl.pathname = isNotebookView ? '/notebooks/soma.ipynb' : '/lab'; + currentUrl.pathname = isNotebookView + ? '/notebooks/example.ipynb' + : '/lab'; currentUrl.search = ''; } diff --git a/packages/css-extension/README.md b/packages/css-extension/README.md index 0a77e61..fb41a71 100644 --- a/packages/css-extension/README.md +++ b/packages/css-extension/README.md @@ -1,6 +1,6 @@ # jupyter_css_loader -[![Github Actions Status](/workflows/Build/badge.svg)](/actions/workflows/build.yml) + A JupyterLab extension. From 1606279ae11b38a0faea973e20f95afde86215f5 Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 10:47:09 +0100 Subject: [PATCH 18/38] CSS extension urls --- packages/css-extension/package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/css-extension/package.json b/packages/css-extension/package.json index 374b410..678ec13 100644 --- a/packages/css-extension/package.json +++ b/packages/css-extension/package.json @@ -9,7 +9,7 @@ ], "homepage": "", "bugs": { - "url": "/issues" + "url": "https://github.com/TileDB-Inc/jupyter-iframe-commands/issues" }, "license": "BSD-3-Clause", "author": "gjmooney", @@ -23,8 +23,8 @@ "style": "style/index.css", "repository": { "type": "git", - "url": ".git" - }, + "url": "https://github.com/TileDB-Inc/jupyter-iframe-commands.git" + }, "scripts": { "build": "jlpm build:lib && jlpm build:labextension:dev", "build:prod": "jlpm clean && jlpm build:lib:prod && jlpm build:labextension", From 0a1474f92af4c61720bc2cc181978a01ee335ac3 Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 11:08:52 +0100 Subject: [PATCH 19/38] Default to lab --- demo/src/components/ModeToggle.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demo/src/components/ModeToggle.tsx b/demo/src/components/ModeToggle.tsx index de22a1e..35f0536 100644 --- a/demo/src/components/ModeToggle.tsx +++ b/demo/src/components/ModeToggle.tsx @@ -1,7 +1,7 @@ import { ChangeEvent, useEffect, useState } from 'react'; const ModeToggle = () => { - const [mode, setMode] = useState('notebook'); + const [mode, setMode] = useState('lab'); useEffect(() => { const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; From 11a0154607ed522aa21471a5e226c932cf24c29d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 4 Mar 2025 10:31:05 +0000 Subject: [PATCH 20/38] Update Playwright Snapshots --- .../dark-theme-linux.png | Bin 45355 -> 46694 bytes .../light-theme-linux.png | Bin 45738 -> 47250 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/ui-tests/tests/hostpage-tests.spec.ts-snapshots/dark-theme-linux.png b/ui-tests/tests/hostpage-tests.spec.ts-snapshots/dark-theme-linux.png index 90ed5a560f4b3ccfb1fa9c40d9b0d6e28c710f32..1dae5f59c49b047e4ff49908ddcb738a41923d8c 100644 GIT binary patch literal 46694 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
  • |2}FsSUR0? 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 DU0>#k diff --git a/ui-tests/tests/hostpage-tests.spec.ts-snapshots/light-theme-linux.png b/ui-tests/tests/hostpage-tests.spec.ts-snapshots/light-theme-linux.png index b92c1d68edbac35e2ff04a2e2aaa7572c36c1d98..cd2956149e95a6627372899b1a5d4ea3ea631452 100644 GIT binary patch literal 47250 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 I$JGD-0oM*>Jpcdz literal 45738 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 G|NIZLvmPD* From 2a89119c1c892dfb37af499b3826bf8fdff9a99b Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 11:34:37 +0100 Subject: [PATCH 21/38] Update favicon --- demo/index.html | 4 ++-- demo/public/tiledb.svg | 3 +++ demo/public/vite.svg | 1 - 3 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 demo/public/tiledb.svg delete mode 100644 demo/public/vite.svg diff --git a/demo/index.html b/demo/index.html index e4b78ea..e4b54cf 100644 --- a/demo/index.html +++ b/demo/index.html @@ -2,9 +2,9 @@ - + - Vite + React + TS + Jupyter iframe

    diff --git a/demo/public/tiledb.svg b/demo/public/tiledb.svg new file mode 100644 index 0000000..56c07af --- /dev/null +++ b/demo/public/tiledb.svg @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/demo/public/vite.svg b/demo/public/vite.svg deleted file mode 100644 index e7b8dfb..0000000 --- a/demo/public/vite.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file From dde42167466b478d0f9aad8b150400a811bed6ee Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 11:52:27 +0100 Subject: [PATCH 22/38] Make toolbar responsive --- demo/icons/bullets.svg | 3 + .../components/FileMenuBar/BulletsButton.tsx | 56 +++++++++++++++++++ .../components/FileMenuBar/FileMenuBar.tsx | 44 +++++++++------ .../components/FileMenuBar/fileMenuBar.css | 4 +- .../components/FileMenuBar/useWindowSize.ts | 26 +++++++++ 5 files changed, 114 insertions(+), 19 deletions(-) create mode 100644 demo/icons/bullets.svg create mode 100644 demo/src/components/FileMenuBar/BulletsButton.tsx create mode 100644 demo/src/components/FileMenuBar/useWindowSize.ts diff --git a/demo/icons/bullets.svg b/demo/icons/bullets.svg new file mode 100644 index 0000000..1e8ee48 --- /dev/null +++ b/demo/icons/bullets.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/src/components/FileMenuBar/BulletsButton.tsx b/demo/src/components/FileMenuBar/BulletsButton.tsx new file mode 100644 index 0000000..9d34f67 --- /dev/null +++ b/demo/src/components/FileMenuBar/BulletsButton.tsx @@ -0,0 +1,56 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; +import { useCallback } from 'react'; +import bulletsUrl from '../../../icons/bullets.svg'; +import { usePopover } from './usePopover'; + +interface IAvailableCommandsProps { + bridge: () => ICommandBridgeRemote; +} + +const commandList = [ + { label: 'Undo', command: 'notebook:undo-cell-action' }, + { label: 'Redo', command: 'notebook:redo-cell-action' }, + { label: 'Paste cell', command: 'notebook:paste-cell-below' }, + { label: 'Configure kernel', command: 'notebook:change-kernel' } +]; + +const BulletsButton = ({ bridge }: IAvailableCommandsProps) => { + const { isOpen, toggle, close, ref } = usePopover(); + + const handleOptionClick = useCallback((option: string): void => { + console.log(`${option} option clicked`); + close(); + bridge().execute(option, {}); + }, []); + + return ( +
    + + + {isOpen && ( +
    +
    +
    + {/* Render filtered options */} +
    + {commandList.map(option => ( +
    handleOptionClick(option.command)} + > + {option.label} +
    + ))} +
    +
    +
    +
    + )} +
    + ); +}; + +export default BulletsButton; diff --git a/demo/src/components/FileMenuBar/FileMenuBar.tsx b/demo/src/components/FileMenuBar/FileMenuBar.tsx index 68fec08..2b6c543 100644 --- a/demo/src/components/FileMenuBar/FileMenuBar.tsx +++ b/demo/src/components/FileMenuBar/FileMenuBar.tsx @@ -5,15 +5,19 @@ import saveUrl from '../../../icons/save.svg'; import undoUrl from '../../../icons/undo.svg'; import AddCellButton from './AddCellButton'; import AvailableCommands from './AvailableCommands'; +import BulletsButton from './BulletsButton'; import KernelInfo from './KernelInfo'; import RunButton from './RunButton'; import './fileMenuBar.css'; +import { useWindowSize } from './useWindowSize'; interface IFileMenuBarProps { bridge: () => ICommandBridgeRemote; submitCommand: (command: string, args: string) => void; } const FileMenuBar = ({ bridge, submitCommand }: IFileMenuBarProps) => { + const { width } = useWindowSize(); + const handleSave = () => { submitCommand('docmanager:save', ''); }; @@ -42,27 +46,33 @@ const FileMenuBar = ({ bridge, submitCommand }: IFileMenuBarProps) => { - - - - + {width > 550 ? ( + <> + + + + + + ) : ( + + )}
    - + {width > 550 ? : null}
    diff --git a/demo/src/components/FileMenuBar/fileMenuBar.css b/demo/src/components/FileMenuBar/fileMenuBar.css index b50eed2..fea4fd6 100644 --- a/demo/src/components/FileMenuBar/fileMenuBar.css +++ b/demo/src/components/FileMenuBar/fileMenuBar.css @@ -122,8 +122,8 @@ padding: 0px; gap: 8px; - width: 299px; - height: 32px; + /* width: 299px; */ + /* height: 32px; */ /* Inside auto layout */ flex: none; diff --git a/demo/src/components/FileMenuBar/useWindowSize.ts b/demo/src/components/FileMenuBar/useWindowSize.ts new file mode 100644 index 0000000..f82c6ff --- /dev/null +++ b/demo/src/components/FileMenuBar/useWindowSize.ts @@ -0,0 +1,26 @@ +import { useLayoutEffect, useState } from 'react'; + +export function useWindowSize() { + const [size, setSize] = useState({ + width: 0, + height: 0 + }); + + useLayoutEffect(() => { + const handleResize = () => { + setSize({ + width: window.innerWidth, + height: window.innerHeight + }); + }; + + handleResize(); + window.addEventListener('resize', handleResize); + + return () => { + window.removeEventListener('resize', handleResize); + }; + }, []); + + return size; +} From 29bf84cb37aac7070666a839119fbefc885263d4 Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 4 Mar 2025 16:58:55 +0100 Subject: [PATCH 23/38] Add fullscreen button placeholder --- demo/icons/fullscreen.svg | 3 +++ demo/src/components/FileMenuBar/FileMenuBar.tsx | 15 +++++++++++++-- demo/src/components/FileMenuBar/fileMenuBar.css | 13 +++++++++++++ 3 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 demo/icons/fullscreen.svg diff --git a/demo/icons/fullscreen.svg b/demo/icons/fullscreen.svg new file mode 100644 index 0000000..a1208fe --- /dev/null +++ b/demo/icons/fullscreen.svg @@ -0,0 +1,3 @@ + + + diff --git a/demo/src/components/FileMenuBar/FileMenuBar.tsx b/demo/src/components/FileMenuBar/FileMenuBar.tsx index 2b6c543..4f97a2c 100644 --- a/demo/src/components/FileMenuBar/FileMenuBar.tsx +++ b/demo/src/components/FileMenuBar/FileMenuBar.tsx @@ -1,5 +1,6 @@ import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import clipboardUrl from '../../../icons/clipboard.svg'; +import fullscreenUrl from '../../../icons/fullscreen.svg'; import redoUrl from '../../../icons/redo.svg'; import saveUrl from '../../../icons/save.svg'; import undoUrl from '../../../icons/undo.svg'; @@ -71,8 +72,18 @@ const FileMenuBar = ({ bridge, submitCommand }: IFileMenuBarProps) => {
    - - {width > 550 ? : null} + + {width > 550 ? ( + <> + +
    + + + ) : null}
    diff --git a/demo/src/components/FileMenuBar/fileMenuBar.css b/demo/src/components/FileMenuBar/fileMenuBar.css index fea4fd6..6380fde 100644 --- a/demo/src/components/FileMenuBar/fileMenuBar.css +++ b/demo/src/components/FileMenuBar/fileMenuBar.css @@ -70,6 +70,7 @@ flex-grow: 0; } +.file-menu-bar-buttons > button, .file-menu-bar-commands button { /* width: 32px; height: 32px; @@ -449,6 +450,7 @@ order: 0; flex-grow: 1; } + .list-of-options { /* Auto layout */ display: flex; @@ -688,3 +690,14 @@ align-self: stretch; flex-grow: 0; } + +.separator { + display: inline-block; + width: 1px; + height: 16px; + background-color: #ededed; + vertical-align: middle; + flex: none; + order: 2; + flex-grow: 0; +} From 33ab5336d7a7ca4ecbc4bfa281f1d874027e6a17 Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 10 Mar 2025 10:05:28 +0100 Subject: [PATCH 24/38] Touch up --- demo/src/components/FileMenuBar/FileMenuBar.tsx | 2 +- demo/src/components/FileMenuBar/useWindowSize.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/demo/src/components/FileMenuBar/FileMenuBar.tsx b/demo/src/components/FileMenuBar/FileMenuBar.tsx index 4f97a2c..57e8f5c 100644 --- a/demo/src/components/FileMenuBar/FileMenuBar.tsx +++ b/demo/src/components/FileMenuBar/FileMenuBar.tsx @@ -72,7 +72,7 @@ const FileMenuBar = ({ bridge, submitCommand }: IFileMenuBarProps) => {
    - + {width > 550 ? ( <> diff --git a/demo/src/components/FileMenuBar/useWindowSize.ts b/demo/src/components/FileMenuBar/useWindowSize.ts index f82c6ff..b2ff5f5 100644 --- a/demo/src/components/FileMenuBar/useWindowSize.ts +++ b/demo/src/components/FileMenuBar/useWindowSize.ts @@ -1,3 +1,4 @@ +// From https://github.com/uidotdev/usehooks/blob/main/index.js import { useLayoutEffect, useState } from 'react'; export function useWindowSize() { From 8bc89d28090d8ab6dee62753ccfdb88980c8103d Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 10 Mar 2025 16:32:33 +0100 Subject: [PATCH 25/38] Use pages for notebooks --- demo/package.json | 3 +- demo/src/App.tsx | 67 ++++------------------------ demo/src/components/DemoTop.tsx | 31 +++++++++++++ demo/src/components/Home.tsx | 22 +++++++++ demo/src/components/NotebookPage.tsx | 50 +++++++++++++++++++++ demo/src/index.css | 7 +++ yarn.lock | 47 +++++++++++++++++++ 7 files changed, 168 insertions(+), 59 deletions(-) create mode 100644 demo/src/components/DemoTop.tsx create mode 100644 demo/src/components/Home.tsx create mode 100644 demo/src/components/NotebookPage.tsx diff --git a/demo/package.json b/demo/package.json index 1372542..636a10e 100644 --- a/demo/package.json +++ b/demo/package.json @@ -18,7 +18,8 @@ "dependencies": { "jupyter-iframe-commands-host": "^0.1.0", "react": "^19.0.0", - "react-dom": "^19.0.0" + "react-dom": "^19.0.0", + "react-router": "^7.3.0" }, "devDependencies": { "@eslint/js": "^9.19.0", diff --git a/demo/src/App.tsx b/demo/src/App.tsx index f14eaa9..10fc24e 100644 --- a/demo/src/App.tsx +++ b/demo/src/App.tsx @@ -1,64 +1,15 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { useCallback, useRef, useState } from 'react'; -import ErrorDialog from './components/Error'; -import FileMenuBar from './components/FileMenuBar/FileMenuBar'; -import { useGetJupyterInfo } from './components/FileMenuBar/useGetJupyterInfo'; -import InputArea from './components/InputArea'; -import Instructions from './components/Instructions'; -import JupyterIframe from './components/JupyterIframe'; -import ListCommands from './components/ListCommands'; -import ModeToggle from './components/ModeToggle'; -import NoteBookBrowser from './components/NoteBookBrowser'; +import { BrowserRouter, Route, Routes } from 'react-router'; +import Home from './components/Home'; +import NotebookPage from './components/NotebookPage'; function App() { - const [errorMessage, setErrorMessage] = useState(''); - - const dialogRef = useRef(null); - const iframeRef = useRef(null); - - const isBridgeReady = useGetJupyterInfo(state => state.isBridgeReady); - - const getBridge = useCallback((): ICommandBridgeRemote => { - //@ts-expect-error wip - return iframeRef.current?.getBridge(); - }, [isBridgeReady]); - - const submitCommand = async (command: string, args: string) => { - const bridge = getBridge(); - - try { - bridge.execute(command, args ? JSON.parse(args) : {}); - } catch (e: any) { - setErrorMessage(e instanceof Error ? e.message : String(e)); - dialogRef.current?.showModal(); - } - }; - return ( - <> -
    -

    {import.meta.env.VITE_TITLE} Demo

    -
    - - - - -
    - -
    -
    - - {' '} -
    - - - + + + } /> + } /> + + ); } diff --git a/demo/src/components/DemoTop.tsx b/demo/src/components/DemoTop.tsx new file mode 100644 index 0000000..c7ffb8d --- /dev/null +++ b/demo/src/components/DemoTop.tsx @@ -0,0 +1,31 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; +import InputArea from './InputArea'; +import Instructions from './Instructions'; +import ListCommands from './ListCommands'; + +interface IDemoTopProps { + getBridge: () => ICommandBridgeRemote; + submitCommand: (command: string, args: string) => void; +} + +const DemoTop = ({ getBridge, submitCommand }: IDemoTopProps) => { + return ( + <> +
    +

    {import.meta.env.VITE_TITLE} Demo

    +
    + + + {/* */} + {/* */} +
    + +
    + + ); +}; + +export default DemoTop; diff --git a/demo/src/components/Home.tsx b/demo/src/components/Home.tsx new file mode 100644 index 0000000..3cc46da --- /dev/null +++ b/demo/src/components/Home.tsx @@ -0,0 +1,22 @@ +import { NavLink } from 'react-router'; + +const sampleNotebooks = ['example.ipynb', 'soma.ipynb']; + +function Home() { + return ( + <> +
    +
    List of notebooks
    + {sampleNotebooks.map(nb => { + return ( + + {nb} + + ); + })} +
    + + ); +} + +export default Home; diff --git a/demo/src/components/NotebookPage.tsx b/demo/src/components/NotebookPage.tsx new file mode 100644 index 0000000..1e0f791 --- /dev/null +++ b/demo/src/components/NotebookPage.tsx @@ -0,0 +1,50 @@ +import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; +import { useCallback, useRef, useState } from 'react'; +import { useParams } from 'react-router'; +import DemoTop from './DemoTop'; +import ErrorDialog from './Error'; +import FileMenuBar from './FileMenuBar/FileMenuBar'; +import { useGetJupyterInfo } from './FileMenuBar/useGetJupyterInfo'; +import JupyterIframe from './JupyterIframe'; + +const NotebookPage = () => { + const params = useParams(); + const iframeRef = useRef(null); + const dialogRef = useRef(null); + + const [errorMessage, setErrorMessage] = useState(''); + + const isBridgeReady = useGetJupyterInfo(state => state.isBridgeReady); + + const getBridge = useCallback((): ICommandBridgeRemote => { + //@ts-expect-error wip + return iframeRef.current?.getBridge(); + }, [isBridgeReady]); + + const submitCommand = async (command: string, args: string) => { + const bridge = getBridge(); + + try { + bridge.execute(command, args ? JSON.parse(args) : {}); + } catch (e: any) { + setErrorMessage(e instanceof Error ? e.message : String(e)); + dialogRef.current?.showModal(); + } + }; + + return ( + <> + +
    + + +
    + + + ); +}; + +export default NotebookPage; diff --git a/demo/src/index.css b/demo/src/index.css index 2724e41..f0f8862 100644 --- a/demo/src/index.css +++ b/demo/src/index.css @@ -16,6 +16,13 @@ body { flex-direction: column; } +.notebook-list { + display: flex; + flex-direction: column; + gap: 1rem; + padding: 2rem; +} + .demo-top { display: flex; flex-direction: column; diff --git a/yarn.lock b/yarn.lock index 50af4bb..cb2b30c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4600,6 +4600,13 @@ __metadata: languageName: node linkType: hard +"@types/cookie@npm:^0.6.0": + version: 0.6.0 + resolution: "@types/cookie@npm:0.6.0" + checksum: 5edce7995775b0b196b142883e4d4f71fd93c294eaec973670f1fa2540b70ea7390408ed513ddefef5fcb12a578100c76596e8f2a714b0c2ae9f70ee773f4510 + languageName: node + linkType: hard + "@types/create-react-class@npm:*": version: 15.6.8 resolution: "@types/create-react-class@npm:15.6.8" @@ -6402,6 +6409,13 @@ __metadata: languageName: node linkType: hard +"cookie@npm:^1.0.1": + version: 1.0.2 + resolution: "cookie@npm:1.0.2" + checksum: 2c5a6214147ffa7135ce41860c781de17e93128689b0d080d3116468274b3593b607bcd462ac210d3a61f081db3d3b09ae106e18d60b1f529580e95cf2db8a55 + languageName: node + linkType: hard + "core-js-compat@npm:^3.40.0": version: 3.40.0 resolution: "core-js-compat@npm:3.40.0" @@ -6796,6 +6810,7 @@ __metadata: jupyter-iframe-commands-host: ^0.1.0 react: ^19.0.0 react-dom: ^19.0.0 + react-router: ^7.3.0 typescript: ~5.7.2 vite: ^6.1.0 languageName: unknown @@ -12200,6 +12215,24 @@ __metadata: languageName: node linkType: hard +"react-router@npm:^7.3.0": + version: 7.3.0 + resolution: "react-router@npm:7.3.0" + dependencies: + "@types/cookie": ^0.6.0 + cookie: ^1.0.1 + set-cookie-parser: ^2.6.0 + turbo-stream: 2.4.0 + peerDependencies: + react: ">=18" + react-dom: ">=18" + peerDependenciesMeta: + react-dom: + optional: true + checksum: 15ba42b346ffe1421f2194970ffb46d1e356310647af0b240f941f3f58746788274f53dbc8909f51074f9ff3488c3a82f5d923fb62aaff66e13f769d9cf5a5af + languageName: node + linkType: hard + "react@npm:>=17.0.0 <19.0.0, react@npm:^18.2.0": version: 18.3.1 resolution: "react@npm:18.3.1" @@ -12921,6 +12954,13 @@ __metadata: languageName: node linkType: hard +"set-cookie-parser@npm:^2.6.0": + version: 2.7.1 + resolution: "set-cookie-parser@npm:2.7.1" + checksum: 2ef8b351094712f8f7df6d63ed4b10350b24a5b515772690e7dec227df85fcef5bc451c7765f484fd9f36694ece5438d1456407d017f237d0d3351d7dbbd3587 + languageName: node + linkType: hard + "set-function-length@npm:^1.2.1": version: 1.2.2 resolution: "set-function-length@npm:1.2.2" @@ -13953,6 +13993,13 @@ __metadata: languageName: node linkType: hard +"turbo-stream@npm:2.4.0": + version: 2.4.0 + resolution: "turbo-stream@npm:2.4.0" + checksum: e36f52ed40589f01bede79757a143bef484914d579927235be1fd0c205618994cb5779a39ff8c2a80a87a1464d05771cd75320a9412b15bca03c7ff432e3cdf7 + languageName: node + linkType: hard + "type-check@npm:^0.4.0, type-check@npm:~0.4.0": version: 0.4.0 resolution: "type-check@npm:0.4.0" From 1614677b28bf0abae82426f5fd0004e204bdc68c Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 12 Mar 2025 12:22:43 +0100 Subject: [PATCH 26/38] Set up notebooks in new tabs --- demo/src/App.tsx | 2 +- demo/src/components/DemoTop.tsx | 5 +---- demo/src/components/ListCommands.tsx | 9 ++------- demo/src/components/NotebookPage.tsx | 2 +- 4 files changed, 5 insertions(+), 13 deletions(-) diff --git a/demo/src/App.tsx b/demo/src/App.tsx index 10fc24e..87ec06c 100644 --- a/demo/src/App.tsx +++ b/demo/src/App.tsx @@ -7,7 +7,7 @@ function App() { } /> - } /> + } /> ); diff --git a/demo/src/components/DemoTop.tsx b/demo/src/components/DemoTop.tsx index c7ffb8d..33bb2bd 100644 --- a/demo/src/components/DemoTop.tsx +++ b/demo/src/components/DemoTop.tsx @@ -15,10 +15,7 @@ const DemoTop = ({ getBridge, submitCommand }: IDemoTopProps) => {

    {import.meta.env.VITE_TITLE} Demo

    - + {/* */} {/* */}
    diff --git a/demo/src/components/ListCommands.tsx b/demo/src/components/ListCommands.tsx index 1b75d74..2925aea 100644 --- a/demo/src/components/ListCommands.tsx +++ b/demo/src/components/ListCommands.tsx @@ -4,26 +4,21 @@ import { useRef, useState } from 'react'; interface IListCommandsProps { bridge: () => ICommandBridgeRemote; - apiFunction: () => Promise; } -const ListCommands = ({ bridge, apiFunction }: IListCommandsProps) => { +const ListCommands = ({ bridge }: IListCommandsProps) => { const dialogRef = useRef(null); const [commands, setCommands] = useState([]); const handleOpenDialog = async () => { const fromBridge = await bridge().listCommands(); - console.log('fromBridge', fromBridge); - - const fromFunction = await apiFunction(); - console.log('fromFunction', fromFunction); if (dialogRef.current) { dialogRef.current.showModal(); } - setCommands(fromFunction); + setCommands(fromBridge); }; const handleCloseDialog = () => { diff --git a/demo/src/components/NotebookPage.tsx b/demo/src/components/NotebookPage.tsx index 1e0f791..923b81e 100644 --- a/demo/src/components/NotebookPage.tsx +++ b/demo/src/components/NotebookPage.tsx @@ -39,7 +39,7 @@ const NotebookPage = () => {
    From 8a18ee23497b307f549f36900b6538ee019f072d Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 12 Mar 2025 12:32:40 +0100 Subject: [PATCH 27/38] Mock terminal list --- demo/src/components/Home.tsx | 11 +++++++++++ demo/src/components/NotebookPage.tsx | 4 +++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/demo/src/components/Home.tsx b/demo/src/components/Home.tsx index 3cc46da..387095e 100644 --- a/demo/src/components/Home.tsx +++ b/demo/src/components/Home.tsx @@ -1,6 +1,7 @@ import { NavLink } from 'react-router'; const sampleNotebooks = ['example.ipynb', 'soma.ipynb']; +const sampleTerminals = ['1', '2']; function Home() { return ( @@ -15,6 +16,16 @@ function Home() { ); })} +
    +
    List of terminals
    + {sampleTerminals.map(terminal => { + return ( + + {terminal} + + ); + })} +
    ); } diff --git a/demo/src/components/NotebookPage.tsx b/demo/src/components/NotebookPage.tsx index 923b81e..42ebf88 100644 --- a/demo/src/components/NotebookPage.tsx +++ b/demo/src/components/NotebookPage.tsx @@ -36,7 +36,9 @@ const NotebookPage = () => { <>
    - + {params.type === 'notebooks' ? ( + + ) : null} Date: Wed, 12 Mar 2025 17:24:55 +0100 Subject: [PATCH 28/38] Move some things --- demo/src/components/FileMenuBar/AddCellButton.tsx | 4 ++-- demo/src/components/FileMenuBar/AvailableCommands.tsx | 6 +++--- demo/src/components/FileMenuBar/BulletsButton.tsx | 2 +- demo/src/components/FileMenuBar/FileMenuBar.tsx | 2 +- demo/src/components/FileMenuBar/RunButton.tsx | 2 +- demo/src/components/{FileMenuBar => }/PopoverListItem.tsx | 0 demo/src/components/{FileMenuBar => }/usePopover.ts | 0 demo/src/components/{FileMenuBar => }/useWindowSize.ts | 0 8 files changed, 8 insertions(+), 8 deletions(-) rename demo/src/components/{FileMenuBar => }/PopoverListItem.tsx (100%) rename demo/src/components/{FileMenuBar => }/usePopover.ts (100%) rename demo/src/components/{FileMenuBar => }/useWindowSize.ts (100%) diff --git a/demo/src/components/FileMenuBar/AddCellButton.tsx b/demo/src/components/FileMenuBar/AddCellButton.tsx index 1884ceb..1808b79 100644 --- a/demo/src/components/FileMenuBar/AddCellButton.tsx +++ b/demo/src/components/FileMenuBar/AddCellButton.tsx @@ -2,8 +2,8 @@ import { useCallback } from 'react'; import codeUrl from '../../../icons/code.svg'; import markdownUrl from '../../../icons/markdown.svg'; import plusUrl from '../../../icons/plus.svg'; -import PopoverListItem from './PopoverListItem'; -import { usePopover } from './usePopover'; +import { usePopover } from '../usePopover'; +import PopoverListItem from '../PopoverListItem'; interface IAddCellButtonProps { submitCommand: (command: string, args: string) => void; diff --git a/demo/src/components/FileMenuBar/AvailableCommands.tsx b/demo/src/components/FileMenuBar/AvailableCommands.tsx index f424931..cea253c 100644 --- a/demo/src/components/FileMenuBar/AvailableCommands.tsx +++ b/demo/src/components/FileMenuBar/AvailableCommands.tsx @@ -1,7 +1,7 @@ import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import { ChangeEvent, useCallback, useState } from 'react'; -import plusUrl from '../../../icons/keyboard.svg'; -import { usePopover } from './usePopover'; +import keyboardUrl from '../../../icons/keyboard.svg'; +import { usePopover } from '../usePopover'; interface IAvailableCommandsProps { bridge: () => ICommandBridgeRemote; @@ -52,7 +52,7 @@ const AvailableCommands = ({ bridge }: IAvailableCommandsProps) => { return (
    {isOpen && ( diff --git a/demo/src/components/FileMenuBar/BulletsButton.tsx b/demo/src/components/FileMenuBar/BulletsButton.tsx index 9d34f67..2447d68 100644 --- a/demo/src/components/FileMenuBar/BulletsButton.tsx +++ b/demo/src/components/FileMenuBar/BulletsButton.tsx @@ -1,7 +1,7 @@ import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; import { useCallback } from 'react'; import bulletsUrl from '../../../icons/bullets.svg'; -import { usePopover } from './usePopover'; +import { usePopover } from '../usePopover'; interface IAvailableCommandsProps { bridge: () => ICommandBridgeRemote; diff --git a/demo/src/components/FileMenuBar/FileMenuBar.tsx b/demo/src/components/FileMenuBar/FileMenuBar.tsx index 57e8f5c..bceeb79 100644 --- a/demo/src/components/FileMenuBar/FileMenuBar.tsx +++ b/demo/src/components/FileMenuBar/FileMenuBar.tsx @@ -4,13 +4,13 @@ import fullscreenUrl from '../../../icons/fullscreen.svg'; import redoUrl from '../../../icons/redo.svg'; import saveUrl from '../../../icons/save.svg'; import undoUrl from '../../../icons/undo.svg'; +import { useWindowSize } from '../useWindowSize'; import AddCellButton from './AddCellButton'; import AvailableCommands from './AvailableCommands'; import BulletsButton from './BulletsButton'; import KernelInfo from './KernelInfo'; import RunButton from './RunButton'; import './fileMenuBar.css'; -import { useWindowSize } from './useWindowSize'; interface IFileMenuBarProps { bridge: () => ICommandBridgeRemote; submitCommand: (command: string, args: string) => void; diff --git a/demo/src/components/FileMenuBar/RunButton.tsx b/demo/src/components/FileMenuBar/RunButton.tsx index 67bc42f..c79eca0 100644 --- a/demo/src/components/FileMenuBar/RunButton.tsx +++ b/demo/src/components/FileMenuBar/RunButton.tsx @@ -1,7 +1,7 @@ import { useCallback } from 'react'; import arrowDownUrl from '../../../icons/arrowDown.svg'; import playUrl from '../../../icons/play.svg'; -import { usePopover } from './usePopover'; +import { usePopover } from '../usePopover'; interface IRunButtonProps { submitCommand: (command: string, args: string) => void; diff --git a/demo/src/components/FileMenuBar/PopoverListItem.tsx b/demo/src/components/PopoverListItem.tsx similarity index 100% rename from demo/src/components/FileMenuBar/PopoverListItem.tsx rename to demo/src/components/PopoverListItem.tsx diff --git a/demo/src/components/FileMenuBar/usePopover.ts b/demo/src/components/usePopover.ts similarity index 100% rename from demo/src/components/FileMenuBar/usePopover.ts rename to demo/src/components/usePopover.ts diff --git a/demo/src/components/FileMenuBar/useWindowSize.ts b/demo/src/components/useWindowSize.ts similarity index 100% rename from demo/src/components/FileMenuBar/useWindowSize.ts rename to demo/src/components/useWindowSize.ts From ae67ccde59906abd0da486f0e9e4190c2d1be54e Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 12 Mar 2025 17:26:36 +0100 Subject: [PATCH 29/38] Add some terminal things --- demo/src/components/NotebookPage.tsx | 6 +- .../components/TerminalBar/TerminalMenu.tsx | 79 + packages/css-extension/package.json | 2 +- packages/css-extension/src/index.ts | 9 + packages/extension/src/index.ts | 24 + packages/extension/src/interface.ts | 7 + yarn.lock | 2748 +++++++---------- 7 files changed, 1265 insertions(+), 1610 deletions(-) create mode 100644 demo/src/components/TerminalBar/TerminalMenu.tsx diff --git a/demo/src/components/NotebookPage.tsx b/demo/src/components/NotebookPage.tsx index 42ebf88..3b9f63f 100644 --- a/demo/src/components/NotebookPage.tsx +++ b/demo/src/components/NotebookPage.tsx @@ -6,6 +6,7 @@ import ErrorDialog from './Error'; import FileMenuBar from './FileMenuBar/FileMenuBar'; import { useGetJupyterInfo } from './FileMenuBar/useGetJupyterInfo'; import JupyterIframe from './JupyterIframe'; +import TerminalMenu from './TerminalBar/TerminalMenu'; const NotebookPage = () => { const params = useParams(); @@ -35,10 +36,13 @@ const NotebookPage = () => { return ( <> +
    {params.type === 'notebooks' ? ( - ) : null} + ) : ( + + )} ICommandBridgeRemote; +} + +const TerminalMenu = ({ bridge }: IAvailableCommandsProps) => { + const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; + + if (!iframe) { + return; + } + + const { isOpen, toggle, close, ref } = usePopover(); + + const [runningTerminals, setRunningTerminals] = useState([]); + + // Handle option click + const handleOptionClick = useCallback((terminal: string): void => { + iframe.src = `http://localhost:8888/terminals/${terminal}`; + close(); + }, []); + + const handleOpen = async () => { + const running = await bridge().listRunning(); + const termName = Object.values(running.terminals) + .map(term => term.name) + .sort(); + setRunningTerminals( + termName.length > 0 ? termName : ['No terminals running'] + ); + + toggle(); + }; + + const handleShutdown = () => { + runningTerminals.forEach(term => { + bridge().execute('shutdown-all-terminals', { name: term }); + }); + // submitCommand('shutdown-all-terminals', '{teees: "test"}'); + }; + + return ( +
    + + + + {isOpen && ( +
    +
    +
    + {/* Render filtered options */} +
    + {runningTerminals.map(term => ( +
    handleOptionClick(term)} + > + Terminal-{term} +
    + ))} +
    +
    +
    +
    + )} +
    + ); +}; + +export default TerminalMenu; diff --git a/packages/css-extension/package.json b/packages/css-extension/package.json index 678ec13..7b9a2ef 100644 --- a/packages/css-extension/package.json +++ b/packages/css-extension/package.json @@ -24,7 +24,7 @@ "repository": { "type": "git", "url": "https://github.com/TileDB-Inc/jupyter-iframe-commands.git" - }, + }, "scripts": { "build": "jlpm build:lib && jlpm build:labextension:dev", "build:prod": "jlpm clean && jlpm build:lib:prod && jlpm build:labextension", diff --git a/packages/css-extension/src/index.ts b/packages/css-extension/src/index.ts index d67a83c..d2b1ab3 100644 --- a/packages/css-extension/src/index.ts +++ b/packages/css-extension/src/index.ts @@ -2,6 +2,7 @@ import { JupyterFrontEnd, JupyterFrontEndPlugin } from '@jupyterlab/application'; +import { TerminalAPI } from '@jupyterlab/services'; /** * Initialization data for the jupyter-css-loader extension. @@ -24,6 +25,14 @@ const plugin: JupyterFrontEndPlugin = { document.head.appendChild(styleTag); } }); + + commands.addCommand('shutdown-all-terminals', { + execute: args => { + console.log('args', args); + console.log('args', args['name'] as string); + TerminalAPI.shutdownTerminal(args['name'] as string); + } + }); } }; diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index 571fb38..ba7d801 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -7,6 +7,7 @@ import { JupyterFrontEndPlugin } from '@jupyterlab/application'; import { INotebookTracker } from '@jupyterlab/notebook'; +import { KernelAPI, SessionAPI, TerminalAPI } from '@jupyterlab/services'; import { ISettingRegistry } from '@jupyterlab/settingregistry'; import { ReadonlyPartialJSONObject } from '@lumino/coreutils'; import { expose, windowEndpoint, wrap } from 'comlink'; @@ -54,6 +55,29 @@ const plugin: JupyterFrontEndPlugin = { }, async listCommands() { return commands.listCommands(); + }, + async listRunning() { + // ? Move to command extension? + const terminals = await TerminalAPI.listRunning(); + const sessions = await SessionAPI.listRunning(); + const kernels = await KernelAPI.listRunning(); + + // ! also works + // const terminalssm = app.serviceManager.terminals.running(); + // const kernelssm = app.serviceManager.kernels.running(); + // const sessionssm = app.serviceManager.sessions.running(); + + // for (const terminal of terminalssm) { + // console.log('terminal', terminal); + // } + // for (const kernel of kernelssm) { + // console.log('kernel', kernel); + // } + // for (const session of sessionssm) { + // console.log('session', session); + // } + + return { terminals, sessions, kernels }; } }; diff --git a/packages/extension/src/interface.ts b/packages/extension/src/interface.ts index a9acf4b..9ff9176 100644 --- a/packages/extension/src/interface.ts +++ b/packages/extension/src/interface.ts @@ -1,3 +1,4 @@ +import { KernelAPI, Session, TerminalAPI } from '@jupyterlab/services'; import { ReadonlyPartialJSONObject } from '@lumino/coreutils'; /** @@ -20,4 +21,10 @@ export interface ICommandBridgeRemote { * @returns An array of strings representing the names of all available commands. */ listCommands(): Promise; + + listRunning(): Promise<{ + terminals: TerminalAPI.IModel[]; + sessions: Session.IModel[]; + kernels: KernelAPI.IModel[]; + }>; } diff --git a/yarn.lock b/yarn.lock index cb2b30c..8492c41 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15,7 +15,7 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.5, @babel/code-frame@npm:^7.26.2": +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.26.2": version: 7.26.2 resolution: "@babel/code-frame@npm:7.26.2" dependencies: @@ -33,76 +33,39 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.10.2, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.9": - version: 7.26.9 - resolution: "@babel/core@npm:7.26.9" +"@babel/core@npm:^7.10.2, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.9, @babel/core@npm:^7.26.0": + version: 7.26.10 + resolution: "@babel/core@npm:7.26.10" dependencies: "@ampproject/remapping": ^2.2.0 "@babel/code-frame": ^7.26.2 - "@babel/generator": ^7.26.9 + "@babel/generator": ^7.26.10 "@babel/helper-compilation-targets": ^7.26.5 "@babel/helper-module-transforms": ^7.26.0 - "@babel/helpers": ^7.26.9 - "@babel/parser": ^7.26.9 + "@babel/helpers": ^7.26.10 + "@babel/parser": ^7.26.10 "@babel/template": ^7.26.9 - "@babel/traverse": ^7.26.9 - "@babel/types": ^7.26.9 - convert-source-map: ^2.0.0 - debug: ^4.1.0 - gensync: ^1.0.0-beta.2 - json5: ^2.2.3 - semver: ^6.3.1 - checksum: b6e33bdcbb8a5c929760548be400d18cbde1f07922a784586752fd544fbf13c71331406ffdb4fcfe53f79c69ceae602efdca654ad4e9ac0c2af47efe87e7fccd - languageName: node - linkType: hard - -"@babel/core@npm:^7.26.0": - version: 7.26.8 - resolution: "@babel/core@npm:7.26.8" - dependencies: - "@ampproject/remapping": ^2.2.0 - "@babel/code-frame": ^7.26.2 - "@babel/generator": ^7.26.8 - "@babel/helper-compilation-targets": ^7.26.5 - "@babel/helper-module-transforms": ^7.26.0 - "@babel/helpers": ^7.26.7 - "@babel/parser": ^7.26.8 - "@babel/template": ^7.26.8 - "@babel/traverse": ^7.26.8 - "@babel/types": ^7.26.8 - "@types/gensync": ^1.0.0 + "@babel/traverse": ^7.26.10 + "@babel/types": ^7.26.10 convert-source-map: ^2.0.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 json5: ^2.2.3 semver: ^6.3.1 - checksum: 9d83fb7ad33467fc5ed841d24158d01b7c486ad399d7988232ab9edc6d9f92cd4d60b598ca717aeeb136feb48f7e289c247663c6a28e85dee92a39b2e97cc2e1 + checksum: 0217325bd46fb9c828331c14dbe3f015ee13d9aecec423ef5acc0ce8b51a3d2a2d55f2ede252b99d0ab9b2f1a06e2881694a890f92006aeac9ebe5be2914c089 languageName: node linkType: hard -"@babel/generator@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/generator@npm:7.26.8" +"@babel/generator@npm:^7.26.10, @babel/generator@npm:^7.7.2": + version: 7.26.10 + resolution: "@babel/generator@npm:7.26.10" dependencies: - "@babel/parser": ^7.26.8 - "@babel/types": ^7.26.8 + "@babel/parser": ^7.26.10 + "@babel/types": ^7.26.10 "@jridgewell/gen-mapping": ^0.3.5 "@jridgewell/trace-mapping": ^0.3.25 jsesc: ^3.0.2 - checksum: 15ef65699a556f1c75edba52109e65a597a3e16da2faf117d617e67b667983d5e3cd11399a1d6ff9ff1b0029f8e7c9513975884704b6c2d13bba3d780456823d - languageName: node - linkType: hard - -"@babel/generator@npm:^7.26.9, @babel/generator@npm:^7.7.2": - version: 7.26.9 - resolution: "@babel/generator@npm:7.26.9" - dependencies: - "@babel/parser": ^7.26.9 - "@babel/types": ^7.26.9 - "@jridgewell/gen-mapping": ^0.3.5 - "@jridgewell/trace-mapping": ^0.3.25 - jsesc: ^3.0.2 - checksum: 57d034fb6c77dfd5e0c8ef368ff544e19cb6a27cb70d6ed5ff0552c618153dc6692d31e7d0f3a408e0fec3a519514b846c909316c3078290f3a3c1e463372eae + checksum: b047378cb4fdb54adae53a7e9648f1585c2e3ddd3a4019e36bf4b4554029c84872891234fc9c9519570448a1cb47430b2bf46524cf618c94d6d09985cf6428e1 languageName: node linkType: hard @@ -290,45 +253,24 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.26.7": - version: 7.26.7 - resolution: "@babel/helpers@npm:7.26.7" - dependencies: - "@babel/template": ^7.25.9 - "@babel/types": ^7.26.7 - checksum: 1c93604c7fd6dbd7aa6f3eb2f9fa56369f9ad02bac8b3afb902de6cd4264beb443cc8589bede3790ca28d7477d4c07801fe6f4943f9833ac5956b72708bbd7ac - languageName: node - linkType: hard - -"@babel/helpers@npm:^7.26.9": - version: 7.26.9 - resolution: "@babel/helpers@npm:7.26.9" +"@babel/helpers@npm:^7.26.10": + version: 7.26.10 + resolution: "@babel/helpers@npm:7.26.10" dependencies: "@babel/template": ^7.26.9 - "@babel/types": ^7.26.9 - checksum: 06363f8288a24c1cfda03eccd775ac22f79cba319b533cb0e5d0f2a04a33512881cc3f227a4c46324935504fb92999cc4758b69b5e7b3846107eadcb5ee0abca + "@babel/types": ^7.26.10 + checksum: daa3689024a4fc5e024fea382915c6fb0fde15cf1b2f6093435725c79edccbef7646d4a656b199c046ff5c61846d1b3876d6096b7bf0635823de6aaff2a1e1a4 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/parser@npm:7.26.8" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.26.10, @babel/parser@npm:^7.26.9": + version: 7.26.10 + resolution: "@babel/parser@npm:7.26.10" dependencies: - "@babel/types": ^7.26.8 + "@babel/types": ^7.26.10 bin: parser: ./bin/babel-parser.js - checksum: 2ede62d2451eaf37f524f2048ca41994466c81bda1f5acec36fbd8931fe77bf365e2b2060972735165e40aec305e04af76dd4d8fa895bc08a250215b32356577 - languageName: node - linkType: hard - -"@babel/parser@npm:^7.14.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.26.9": - version: 7.26.9 - resolution: "@babel/parser@npm:7.26.9" - dependencies: - "@babel/types": ^7.26.9 - bin: - parser: ./bin/babel-parser.js - checksum: 2df965dbf3c67d19dc437412ceef23033b4d39b0dbd7cb498d8ab9ad9e1738338656ee72676199773b37d658edf9f4161cf255515234fed30695d74e73be5514 + checksum: 81f9af962aea55a2973d213dffc6191939df7eba0511ba585d23f0d838931f5fca2efb83ae382e4b9bb486f20ae1b2607cb1b8be49af89e9f011fb4355727f47 languageName: node linkType: hard @@ -1312,26 +1254,15 @@ __metadata: linkType: hard "@babel/runtime@npm:^7.8.4": - version: 7.26.9 - resolution: "@babel/runtime@npm:7.26.9" + version: 7.26.10 + resolution: "@babel/runtime@npm:7.26.10" dependencies: regenerator-runtime: ^0.14.0 - checksum: 838492d8a925092f9ccfbd82ec183a54f430af3a4ce88fb1337a4570629202d5123bad3097a5b8df53822504d12ccb29f45c0f6842e86094f0164f17a51eec92 - languageName: node - linkType: hard - -"@babel/template@npm:^7.25.9, @babel/template@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/template@npm:7.26.8" - dependencies: - "@babel/code-frame": ^7.26.2 - "@babel/parser": ^7.26.8 - "@babel/types": ^7.26.8 - checksum: dfa79b33d49b89b2466a660bf299a545dd5fd6680fbf9828d2deca9bd826eb861041a9f5a25a4a0dddf6e4905e6fafac18a6885bf2aeecac6f39407a221e630f + checksum: 22d2e0abb86e90de489ab16bb578db6fe2b63a88696db431198b24963749820c723f1982298cdbbea187f7b2b80fb4d98a514faf114ddb2fdc14a4b96277b955 languageName: node linkType: hard -"@babel/template@npm:^7.26.9, @babel/template@npm:^7.3.3": +"@babel/template@npm:^7.25.9, @babel/template@npm:^7.26.9, @babel/template@npm:^7.3.3": version: 7.26.9 resolution: "@babel/template@npm:7.26.9" dependencies: @@ -1342,53 +1273,28 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.25.9, @babel/traverse@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/traverse@npm:7.26.8" +"@babel/traverse@npm:^7.25.9, @babel/traverse@npm:^7.26.10, @babel/traverse@npm:^7.26.5, @babel/traverse@npm:^7.26.8, @babel/traverse@npm:^7.26.9": + version: 7.26.10 + resolution: "@babel/traverse@npm:7.26.10" dependencies: "@babel/code-frame": ^7.26.2 - "@babel/generator": ^7.26.8 - "@babel/parser": ^7.26.8 - "@babel/template": ^7.26.8 - "@babel/types": ^7.26.8 - debug: ^4.3.1 - globals: ^11.1.0 - checksum: f8b2f4d9945932ac6b0a359c322628327514a3e1d356555923dc143f3376d3e01f8f7a56cccb717223fa7420426e077809701175b717d946c622d826a6df7c60 - languageName: node - linkType: hard - -"@babel/traverse@npm:^7.26.5, @babel/traverse@npm:^7.26.9": - version: 7.26.9 - resolution: "@babel/traverse@npm:7.26.9" - dependencies: - "@babel/code-frame": ^7.26.2 - "@babel/generator": ^7.26.9 - "@babel/parser": ^7.26.9 + "@babel/generator": ^7.26.10 + "@babel/parser": ^7.26.10 "@babel/template": ^7.26.9 - "@babel/types": ^7.26.9 + "@babel/types": ^7.26.10 debug: ^4.3.1 globals: ^11.1.0 - checksum: d42d3a5e61422d96467f517447b5e254edbd64e4dbf3e13b630704d1f49beaa5209246dc6f45ba53522293bd4760ff720496d2c1ef189ecce52e9e63d9a59aa8 - languageName: node - linkType: hard - -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.7, @babel/types@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/types@npm:7.26.8" - dependencies: - "@babel/helper-string-parser": ^7.25.9 - "@babel/helper-validator-identifier": ^7.25.9 - checksum: 8f0f3bac37cc93d4658df460dc24156c6f1466abca63ef111c9f03128df6c247c672ed89e779ababb41250627c78d8bfcfba616eecb01b6e4ddcfd8ded718996 + checksum: 9b58039cf388ea0f6758204a31678753f3e3d9f62cd8bfb814cdcb2af81a0df35a23b7573719345b425faaaec1c1400f253d50054bac3db5952e389f71b19bc6 languageName: node linkType: hard -"@babel/types@npm:^7.26.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4": - version: 7.26.9 - resolution: "@babel/types@npm:7.26.9" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.10, @babel/types@npm:^7.26.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4": + version: 7.26.10 + resolution: "@babel/types@npm:7.26.10" dependencies: "@babel/helper-string-parser": ^7.25.9 "@babel/helper-validator-identifier": ^7.25.9 - checksum: cc124c149615deb30343a4c81ac5b0e3a68bdb4b1bd61a91a2859ee8e5e5f400f6ff65be4740f407c17bfc09baa9c777e7f8f765dccf3284963956b67ac95a38 + checksum: 07340068ea3824dcaccf702dfc9628175c9926912ad6efba182d8b07e20953297d0a514f6fb103a61b9d5c555c8b87fc2237ddb06efebe14794eefc921dfa114 languageName: node linkType: hard @@ -1624,17 +1530,17 @@ __metadata: linkType: hard "@codemirror/search@npm:^6.5.6": - version: 6.5.9 - resolution: "@codemirror/search@npm:6.5.9" + version: 6.5.10 + resolution: "@codemirror/search@npm:6.5.10" dependencies: "@codemirror/state": ^6.0.0 "@codemirror/view": ^6.0.0 crelt: ^1.0.5 - checksum: b1400dd1f33c1145cdb9ead0b3b813d130b0128f3af5b36d568962adfe6da9ac917cfdf69c78f0611f5b0965534d507dd93211db7934e64ba8c5a187b37fd9c1 + checksum: a30048004ce7cc1ee77a7618485ab5399939eab72b64329d57be98245ea39cb68ba54ad944ee679cc2aeac5bf9f202b2073ad0916f0788497fb64a07073399e8 languageName: node linkType: hard -"@codemirror/state@npm:^6.0.0, @codemirror/state@npm:^6.4.0, @codemirror/state@npm:^6.5.0": +"@codemirror/state@npm:^6.0.0, @codemirror/state@npm:^6.4.0, @codemirror/state@npm:^6.4.1, @codemirror/state@npm:^6.5.0": version: 6.5.2 resolution: "@codemirror/state@npm:6.5.2" dependencies: @@ -1643,21 +1549,14 @@ __metadata: languageName: node linkType: hard -"@codemirror/state@npm:^6.4.1": - version: 6.4.1 - resolution: "@codemirror/state@npm:6.4.1" - checksum: b81b55574091349eed4d32fc0eadb0c9688f1f7c98b681318f59138ee0f527cb4c4a97831b70547c0640f02f3127647838ae6730782de4a3dd2cc58836125d01 - languageName: node - linkType: hard - "@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.26.3, @codemirror/view@npm:^6.27.0, @codemirror/view@npm:^6.35.0": - version: 6.36.3 - resolution: "@codemirror/view@npm:6.36.3" + version: 6.36.4 + resolution: "@codemirror/view@npm:6.36.4" dependencies: "@codemirror/state": ^6.5.0 style-mod: ^4.1.0 w3c-keyname: ^2.2.4 - checksum: be7b31583dbc55c10c4cd05ee94a0348c5d681fa3cb50cae17e2e7fbeaf01f3624249b027c11f1eb157b07fca8d6b4ca77d84ed1da4960c095e0a59653f6719e + checksum: d78f733fa8e3ffff56b676edc4973fa308bb97b0c4f8620a40a0d7a9e18224103c75e0bb462c6e690177fcd36144cafda9045eb9953afc27d7351755e5218e16 languageName: node linkType: hard @@ -1731,189 +1630,189 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/aix-ppc64@npm:0.24.2" +"@esbuild/aix-ppc64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/aix-ppc64@npm:0.25.1" conditions: os=aix & cpu=ppc64 languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/android-arm64@npm:0.24.2" +"@esbuild/android-arm64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/android-arm64@npm:0.25.1" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@esbuild/android-arm@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/android-arm@npm:0.24.2" +"@esbuild/android-arm@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/android-arm@npm:0.25.1" conditions: os=android & cpu=arm languageName: node linkType: hard -"@esbuild/android-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/android-x64@npm:0.24.2" +"@esbuild/android-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/android-x64@npm:0.25.1" conditions: os=android & cpu=x64 languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/darwin-arm64@npm:0.24.2" +"@esbuild/darwin-arm64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/darwin-arm64@npm:0.25.1" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/darwin-x64@npm:0.24.2" +"@esbuild/darwin-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/darwin-x64@npm:0.25.1" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/freebsd-arm64@npm:0.24.2" +"@esbuild/freebsd-arm64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/freebsd-arm64@npm:0.25.1" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/freebsd-x64@npm:0.24.2" +"@esbuild/freebsd-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/freebsd-x64@npm:0.25.1" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-arm64@npm:0.24.2" +"@esbuild/linux-arm64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-arm64@npm:0.25.1" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-arm@npm:0.24.2" +"@esbuild/linux-arm@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-arm@npm:0.25.1" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-ia32@npm:0.24.2" +"@esbuild/linux-ia32@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-ia32@npm:0.25.1" conditions: os=linux & cpu=ia32 languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-loong64@npm:0.24.2" +"@esbuild/linux-loong64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-loong64@npm:0.25.1" conditions: os=linux & cpu=loong64 languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-mips64el@npm:0.24.2" +"@esbuild/linux-mips64el@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-mips64el@npm:0.25.1" conditions: os=linux & cpu=mips64el languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-ppc64@npm:0.24.2" +"@esbuild/linux-ppc64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-ppc64@npm:0.25.1" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-riscv64@npm:0.24.2" +"@esbuild/linux-riscv64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-riscv64@npm:0.25.1" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-s390x@npm:0.24.2" +"@esbuild/linux-s390x@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-s390x@npm:0.25.1" conditions: os=linux & cpu=s390x languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/linux-x64@npm:0.24.2" +"@esbuild/linux-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/linux-x64@npm:0.25.1" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"@esbuild/netbsd-arm64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/netbsd-arm64@npm:0.24.2" +"@esbuild/netbsd-arm64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/netbsd-arm64@npm:0.25.1" conditions: os=netbsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/netbsd-x64@npm:0.24.2" +"@esbuild/netbsd-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/netbsd-x64@npm:0.25.1" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/openbsd-arm64@npm:0.24.2" +"@esbuild/openbsd-arm64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/openbsd-arm64@npm:0.25.1" conditions: os=openbsd & cpu=arm64 languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/openbsd-x64@npm:0.24.2" +"@esbuild/openbsd-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/openbsd-x64@npm:0.25.1" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/sunos-x64@npm:0.24.2" +"@esbuild/sunos-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/sunos-x64@npm:0.25.1" conditions: os=sunos & cpu=x64 languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/win32-arm64@npm:0.24.2" +"@esbuild/win32-arm64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/win32-arm64@npm:0.25.1" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/win32-ia32@npm:0.24.2" +"@esbuild/win32-ia32@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/win32-ia32@npm:0.25.1" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.24.2": - version: 0.24.2 - resolution: "@esbuild/win32-x64@npm:0.24.2" +"@esbuild/win32-x64@npm:0.25.1": + version: 0.25.1 + resolution: "@esbuild/win32-x64@npm:0.25.1" conditions: os=win32 & cpu=x64 languageName: node linkType: hard "@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": - version: 4.4.1 - resolution: "@eslint-community/eslint-utils@npm:4.4.1" + version: 4.5.0 + resolution: "@eslint-community/eslint-utils@npm:4.5.0" dependencies: eslint-visitor-keys: ^3.4.3 peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: a7ffc838eb6a9ef594cda348458ccf38f34439ac77dc090fa1c120024bcd4eb911dfd74d5ef44d42063e7949fa7c5123ce714a015c4abb917d4124be1bd32bfe + checksum: b05ca7881b1db4ac4f29131d4ca07ace219d497f44eafc434331d3d30d2f6452436d96f6fd3fc77761254a79e62f53967e3dd2741678ef3dfe99ad6c01065201 languageName: node linkType: hard @@ -1949,9 +1848,9 @@ __metadata: linkType: hard "@eslint/js@npm:^9.19.0": - version: 9.20.0 - resolution: "@eslint/js@npm:9.20.0" - checksum: e49dcbcea1a7892222988ba410b3f1e2b756177558f3f11fa3627682c3aca7585f8124c128711035e176daf56f82b4af47dc5655ca7a825057451607e42e5d13 + version: 9.22.0 + resolution: "@eslint/js@npm:9.22.0" + checksum: 3eb6ed01c31f185b1822b78a872af5b87daa4aaf2ed753ce81c0c7227c852a09e1c7356103259f35f09e77d9e116c796cec6958702044d057f0c179b53b783ec languageName: node linkType: hard @@ -2275,13 +2174,13 @@ __metadata: linkType: hard "@jridgewell/gen-mapping@npm:^0.3.5": - version: 0.3.5 - resolution: "@jridgewell/gen-mapping@npm:0.3.5" + version: 0.3.8 + resolution: "@jridgewell/gen-mapping@npm:0.3.8" dependencies: "@jridgewell/set-array": ^1.2.1 "@jridgewell/sourcemap-codec": ^1.4.10 "@jridgewell/trace-mapping": ^0.3.24 - checksum: ff7a1764ebd76a5e129c8890aa3e2f46045109dabde62b0b6c6a250152227647178ff2069ea234753a690d8f3c4ac8b5e7b267bbee272bffb7f3b0a370ab6e52 + checksum: c0687b5227461717aa537fe71a42e356bcd1c43293b3353796a148bf3b0d6f59109def46c22f05b60e29a46f19b2e4676d027959a7c53a6c92b9d5b0d87d0420 languageName: node linkType: hard @@ -2309,14 +2208,14 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0": +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": version: 1.5.0 resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" checksum: 05df4f2538b3b0f998ea4c1cd34574d0feba216fa5d4ccaef0187d12abf82eafe6021cec8b49f9bb4d90f2ba4582ccc581e72986a5fcf4176ae0cfeb04cf52ec languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": version: 0.3.25 resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: @@ -2349,8 +2248,8 @@ __metadata: linkType: hard "@jupyter/ydoc@npm:^3.0.0": - version: 3.0.2 - resolution: "@jupyter/ydoc@npm:3.0.2" + version: 3.0.3 + resolution: "@jupyter/ydoc@npm:3.0.3" dependencies: "@jupyterlab/nbformat": ^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0 "@lumino/coreutils": ^1.11.0 || ^2.0.0 @@ -2358,11 +2257,11 @@ __metadata: "@lumino/signaling": ^1.10.0 || ^2.0.0 y-protocols: ^1.0.5 yjs: ^13.5.40 - checksum: 770f73459635c74bd0e5cacdca1ea1f77ee8efd6e7cd58f0ccbb167ae8374e73118620f4f3628646281160a7bc7389f374bd2106f1e799bdc8f78cad0ce05b28 + checksum: e12f03689449053a2cd2a0b34b86b421794422f8dd74a9b5ffbb375ef65a2ee07ce973f3a01fb2d7d3357a01096c89e36e50c145c1e843374c4ce2cf16253daa languageName: node linkType: hard -"@jupyterlab/application@npm:^4.0.0, @jupyterlab/application@npm:^4.3.5": +"@jupyterlab/application@npm:^4.0.0, @jupyterlab/application@npm:^4.3.2, @jupyterlab/application@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/application@npm:4.3.5" dependencies: @@ -2390,63 +2289,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/application@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/application@npm:4.3.2" - dependencies: - "@fortawesome/fontawesome-free": ^5.12.0 - "@jupyterlab/apputils": ^4.4.2 - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/docregistry": ^4.3.2 - "@jupyterlab/rendermime": ^4.3.2 - "@jupyterlab/rendermime-interfaces": ^3.11.2 - "@jupyterlab/services": ^7.3.2 - "@jupyterlab/statedb": ^4.3.2 - "@jupyterlab/translation": ^4.3.2 - "@jupyterlab/ui-components": ^4.3.2 - "@lumino/algorithm": ^2.0.2 - "@lumino/application": ^2.4.1 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 - "@lumino/polling": ^2.1.3 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - checksum: b20b520c9a194dbef18cb4af2dca454bfc276da340445ba5093406e6b4e03e0b0c5bb86376779f2e94d0e3cceac515a6deb8009aa136240661c47c6522801fa0 - languageName: node - linkType: hard - -"@jupyterlab/apputils@npm:^4.4.2": - version: 4.4.2 - resolution: "@jupyterlab/apputils@npm:4.4.2" - dependencies: - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/observables": ^5.3.2 - "@jupyterlab/rendermime-interfaces": ^3.11.2 - "@jupyterlab/services": ^7.3.2 - "@jupyterlab/settingregistry": ^4.3.2 - "@jupyterlab/statedb": ^4.3.2 - "@jupyterlab/statusbar": ^4.3.2 - "@jupyterlab/translation": ^4.3.2 - "@jupyterlab/ui-components": ^4.3.2 - "@lumino/algorithm": ^2.0.2 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/domutils": ^2.0.2 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 - "@lumino/widgets": ^2.5.0 - "@types/react": ^18.0.26 - react: ^18.2.0 - sanitize-html: ~2.12.1 - checksum: 9fbadf82e7b9ef889bb87a22e03bbe3910af19c10c0102e3231aaa28a0d704e7e4be7c8552b7ff1b7a1485aee089a89f6c0ba8ec3e4b5dd97e064ec365a2f270 - languageName: node - linkType: hard - "@jupyterlab/apputils@npm:^4.4.5": version: 4.4.5 resolution: "@jupyterlab/apputils@npm:4.4.5" @@ -2490,7 +2332,7 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/builder@npm:^4.0.0": +"@jupyterlab/builder@npm:^4.0.0, @jupyterlab/builder@npm:^4.3.2": version: 4.3.5 resolution: "@jupyterlab/builder@npm:4.3.5" dependencies: @@ -2531,47 +2373,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/builder@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/builder@npm:4.3.2" - dependencies: - "@lumino/algorithm": ^2.0.2 - "@lumino/application": ^2.4.1 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/domutils": ^2.0.2 - "@lumino/dragdrop": ^2.1.5 - "@lumino/messaging": ^2.0.2 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 - "@lumino/widgets": ^2.5.0 - ajv: ^8.12.0 - commander: ^9.4.1 - css-loader: ^6.7.1 - duplicate-package-checker-webpack-plugin: ^3.0.0 - fs-extra: ^10.1.0 - glob: ~7.1.6 - license-webpack-plugin: ^2.3.14 - mini-css-extract-plugin: ^2.7.0 - mini-svg-data-uri: ^1.4.4 - path-browserify: ^1.0.0 - process: ^0.11.10 - source-map-loader: ~1.0.2 - style-loader: ~3.3.1 - supports-color: ^7.2.0 - terser-webpack-plugin: ^5.3.7 - webpack: ^5.76.1 - webpack-cli: ^5.0.1 - webpack-merge: ^5.8.0 - worker-loader: ^3.0.2 - bin: - build-labextension: lib/build-labextension.js - checksum: 03295156a335e605b92982ebd1009711d85bab837147ab1b3e5faeca5e97102ba776af6c47e269c1069eb95fb0b84652014fa245f666c43d11aa37a2b51ec40d - languageName: node - linkType: hard - "@jupyterlab/cells@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/cells@npm:4.3.5" @@ -2608,30 +2409,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/codeeditor@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/codeeditor@npm:4.3.2" - dependencies: - "@codemirror/state": ^6.4.1 - "@jupyter/ydoc": ^3.0.0 - "@jupyterlab/apputils": ^4.4.2 - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/nbformat": ^4.3.2 - "@jupyterlab/observables": ^5.3.2 - "@jupyterlab/statusbar": ^4.3.2 - "@jupyterlab/translation": ^4.3.2 - "@jupyterlab/ui-components": ^4.3.2 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/dragdrop": ^2.1.5 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: efc13c36797be1a7db2f3b7ea7bd41ad32fd39a52cccb829024396eb4826fbed008df957343fc639911815a81d9e0f4bbef6a8b98753ba31a1ac2f5209a5d149 - languageName: node - linkType: hard - "@jupyterlab/codeeditor@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/codeeditor@npm:4.3.5" @@ -2698,20 +2475,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/coreutils@npm:^6.3.2": - version: 6.3.2 - resolution: "@jupyterlab/coreutils@npm:6.3.2" - dependencies: - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/signaling": ^2.1.3 - minimist: ~1.2.0 - path-browserify: ^1.0.0 - url-parse: ~1.5.4 - checksum: 83c9825dbec9bae5f4afe3bd507ff80d6dde9737fe76bbd41ec4965bcc2f0757e2a0b7500c53d513f85eb572276548a048e931fde619b369ab5027a35b3efd5b - languageName: node - linkType: hard - "@jupyterlab/coreutils@npm:^6.3.5": version: 6.3.5 resolution: "@jupyterlab/coreutils@npm:6.3.5" @@ -2751,32 +2514,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/docregistry@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/docregistry@npm:4.3.2" - dependencies: - "@jupyter/ydoc": ^3.0.0 - "@jupyterlab/apputils": ^4.4.2 - "@jupyterlab/codeeditor": ^4.3.2 - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/observables": ^5.3.2 - "@jupyterlab/rendermime": ^4.3.2 - "@jupyterlab/rendermime-interfaces": ^3.11.2 - "@jupyterlab/services": ^7.3.2 - "@jupyterlab/translation": ^4.3.2 - "@jupyterlab/ui-components": ^4.3.2 - "@lumino/algorithm": ^2.0.2 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: 4c094e228fd54550b5ee4b842ff1fac54062f7357b62ab783fcc7dbd3744549d6db4b0fb61deb8cac610303440da11465c507e831bbc616495dc1afde4778559 - languageName: node - linkType: hard - "@jupyterlab/docregistry@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/docregistry@npm:4.3.5" @@ -2873,16 +2610,7 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/nbformat@npm:4.3.2" - dependencies: - "@lumino/coreutils": ^2.2.0 - checksum: f51d0920031c22283ebf697e377078ecda0eca2c1248d42a3075bca7f0c26fc4e746121527b8533d8718563ddd442dd627688f293790e243efc43dbf336cd62c - languageName: node - linkType: hard - -"@jupyterlab/nbformat@npm:^4.3.5": +"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/nbformat@npm:4.3.5" dependencies: @@ -2929,19 +2657,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/observables@npm:^5.3.2": - version: 5.3.2 - resolution: "@jupyterlab/observables@npm:5.3.2" - dependencies: - "@lumino/algorithm": ^2.0.2 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - checksum: 2aca1eacfb7e207dd9c855bab00c3997ecd1d915bda22bd0cefb53eb0560aa40bcf9688229a671eac49ca4041eccf946954a8811ad9173ade0175e31a38847bb - languageName: node - linkType: hard - "@jupyterlab/observables@npm:^5.3.5": version: 5.3.5 resolution: "@jupyterlab/observables@npm:5.3.5" @@ -2977,16 +2692,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/rendermime-interfaces@npm:^3.11.2": - version: 3.11.2 - resolution: "@jupyterlab/rendermime-interfaces@npm:3.11.2" - dependencies: - "@lumino/coreutils": ^1.11.0 || ^2.2.0 - "@lumino/widgets": ^1.37.2 || ^2.5.0 - checksum: e29cca8885e2ea5cb11d45c89a0a9756b3b462ad69720351a271c285a09d95477d0c1b8e78b3a20d2b2f4fe25bce9e0bb35a314132e18b008f679733e2a0ee3a - languageName: node - linkType: hard - "@jupyterlab/rendermime-interfaces@npm:^3.11.5": version: 3.11.5 resolution: "@jupyterlab/rendermime-interfaces@npm:3.11.5" @@ -2997,26 +2702,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/rendermime@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/rendermime@npm:4.3.2" - dependencies: - "@jupyterlab/apputils": ^4.4.2 - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/nbformat": ^4.3.2 - "@jupyterlab/observables": ^5.3.2 - "@jupyterlab/rendermime-interfaces": ^3.11.2 - "@jupyterlab/services": ^7.3.2 - "@jupyterlab/translation": ^4.3.2 - "@lumino/coreutils": ^2.2.0 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - lodash.escape: ^4.0.1 - checksum: 52e9c211ef1c655b54b751e92474d6f3a0cf0322e7be1a1599f69263bd89a5529eac2f4a9e7429c6a7e39b9c152da1aea8b497a20ad409b9c4113150e32a75aa - languageName: node - linkType: hard - "@jupyterlab/rendermime@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/rendermime@npm:4.3.5" @@ -3037,25 +2722,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/services@npm:^7.3.2": - version: 7.3.2 - resolution: "@jupyterlab/services@npm:7.3.2" - dependencies: - "@jupyter/ydoc": ^3.0.0 - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/nbformat": ^4.3.2 - "@jupyterlab/settingregistry": ^4.3.2 - "@jupyterlab/statedb": ^4.3.2 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/polling": ^2.1.3 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - ws: ^8.11.0 - checksum: a8c79bdadbce4ebd242830a762de7e4afe91870cb2835233381d9c923312e824b58e904661a4ef652c0b4d43f51ee25c117cfc62d697d67f652498b69b48f529 - languageName: node - linkType: hard - "@jupyterlab/services@npm:^7.3.5": version: 7.3.5 resolution: "@jupyterlab/services@npm:7.3.5" @@ -3075,26 +2741,7 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/settingregistry@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/settingregistry@npm:4.3.2" - dependencies: - "@jupyterlab/nbformat": ^4.3.2 - "@jupyterlab/statedb": ^4.3.2 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/signaling": ^2.1.3 - "@rjsf/utils": ^5.13.4 - ajv: ^8.12.0 - json5: ^2.2.3 - peerDependencies: - react: ">=16" - checksum: 4c2ab20a7cb090db0a3fee6335f782bda037ee03acacaf082083032a519e3d4c40044ddcfffa71d316817a3d74858cb9f46bf48d53444d5d7374fb8808a5d21e - languageName: node - linkType: hard - -"@jupyterlab/settingregistry@npm:^4.3.5": +"@jupyterlab/settingregistry@npm:^4.3.2, @jupyterlab/settingregistry@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/settingregistry@npm:4.3.5" dependencies: @@ -3113,19 +2760,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/statedb@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/statedb@npm:4.3.2" - dependencies: - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - checksum: a3cebd716be2e124c009820b3d39b8c5c0a83ae56c9fdfb4312bfb63d265d3ab135bd9d9532a619daff7d711e62042d242f48c5b58abf9cc5dbf3a2aaf2c673f - languageName: node - linkType: hard - "@jupyterlab/statedb@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/statedb@npm:4.3.5" @@ -3133,25 +2767,9 @@ __metadata: "@lumino/commands": ^2.3.1 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - checksum: f2387a89815866de9d748f18168b341fd250e0901b210db421383cceda9ad1c5e53dfd1ea45a53e3c4dd87a305c8fa23aa9a03980289f417bf1c70cb91c16171 - languageName: node - linkType: hard - -"@jupyterlab/statusbar@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/statusbar@npm:4.3.2" - dependencies: - "@jupyterlab/ui-components": ^4.3.2 - "@lumino/algorithm": ^2.0.2 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 + "@lumino/properties": ^2.0.2 "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: 68c9b3c238197d1745e052a77489576b642f303266d6228eb0a71555888c6192107f59eaa6c2668c8e60459fd6155f19efcdb88f40040df2460c29ec10588c68 + checksum: f2387a89815866de9d748f18168b341fd250e0901b210db421383cceda9ad1c5e53dfd1ea45a53e3c4dd87a305c8fa23aa9a03980289f417bf1c70cb91c16171 languageName: node linkType: hard @@ -3230,19 +2848,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/translation@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/translation@npm:4.3.2" - dependencies: - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/rendermime-interfaces": ^3.11.2 - "@jupyterlab/services": ^7.3.2 - "@jupyterlab/statedb": ^4.3.2 - "@lumino/coreutils": ^2.2.0 - checksum: 04c6561a44501b11063eb56929dd24d0899e07fb0d1cd45c8bcfb697c08ce9619be42b9c69ee60bff612a6ed3dff2525211f118f03d5709a6bd8cf256a0f3f8c - languageName: node - linkType: hard - "@jupyterlab/translation@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/translation@npm:4.3.5" @@ -3256,37 +2861,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/ui-components@npm:^4.3.2": - version: 4.3.2 - resolution: "@jupyterlab/ui-components@npm:4.3.2" - dependencies: - "@jupyter/react-components": ^0.16.6 - "@jupyter/web-components": ^0.16.6 - "@jupyterlab/coreutils": ^6.3.2 - "@jupyterlab/observables": ^5.3.2 - "@jupyterlab/rendermime-interfaces": ^3.11.2 - "@jupyterlab/translation": ^4.3.2 - "@lumino/algorithm": ^2.0.2 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 - "@lumino/polling": ^2.1.3 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 - "@lumino/widgets": ^2.5.0 - "@rjsf/core": ^5.13.4 - "@rjsf/utils": ^5.13.4 - react: ^18.2.0 - react-dom: ^18.2.0 - typestyle: ^2.0.4 - peerDependencies: - react: ^18.2.0 - checksum: dd87bdb1d478418c737876e816af788736ed4d92e3ebca956251f5edc221c286810f4b502583a8bf2e0dcba19c9942b87469c3319f2d7586f40f13545d5b1d3d - languageName: node - linkType: hard - "@jupyterlab/ui-components@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/ui-components@npm:4.3.5" @@ -3318,16 +2892,16 @@ __metadata: languageName: node linkType: hard -"@lerna/create@npm:8.1.9": - version: 8.1.9 - resolution: "@lerna/create@npm:8.1.9" +"@lerna/create@npm:8.2.1": + version: 8.2.1 + resolution: "@lerna/create@npm:8.2.1" dependencies: "@npmcli/arborist": 7.5.4 "@npmcli/package-json": 5.2.0 "@npmcli/run-script": 8.1.0 "@nx/devkit": ">=17.1.2 < 21" "@octokit/plugin-enterprise-rest": 6.0.1 - "@octokit/rest": 19.0.11 + "@octokit/rest": 20.1.2 aproba: 2.0.0 byte-size: 8.1.1 chalk: 4.1.0 @@ -3380,7 +2954,6 @@ __metadata: slash: ^3.0.0 ssri: ^10.0.6 string-width: ^4.2.3 - strip-ansi: ^6.0.1 strong-log-transformer: 2.1.0 tar: 6.2.1 temp-dir: 1.0.0 @@ -3393,7 +2966,7 @@ __metadata: write-pkg: 4.0.0 yargs: 17.7.2 yargs-parser: 21.1.1 - checksum: 3c33438b2465bd46634242cf5146a8ea681d4eb5af6ba9edf6bfeba31de7db004b309f2062d0746617d465cee29fe9f21c4ef45d981d51641cc0bf92d43410ea + checksum: 4e38df87c896eb5b9c7d83cb8a80275bb85a82bd8fdad748b51e826e9ac92b58e80b6062095b6927d81b1ac8a6f8678b61a546441f9c57eb544e537e6ff94a27 languageName: node linkType: hard @@ -3501,13 +3074,12 @@ __metadata: linkType: hard "@lezer/markdown@npm:^1.0.0, @lezer/markdown@npm:^1.3.0": - version: 1.4.1 - resolution: "@lezer/markdown@npm:1.4.1" + version: 1.4.2 + resolution: "@lezer/markdown@npm:1.4.2" dependencies: "@lezer/common": ^1.0.0 "@lezer/highlight": ^1.0.0 - "@marijn/buildtool": ^0.1.6 - checksum: dcd5a85d3a769a91ba4bece25cfb00e6fd6249f1a2697b70ef448219843e242be04eb58499f23e5b7e5cdb7dc25eaac938c9508892d7e057a2873ee20195f8c5 + checksum: 3429594eff63a927cc61f315022d0cacd9ca4b1c3c7491128520575a59232d564eb54b9908af082cc6689a9182db2b452cffa58d17c06f9812dd961e93b4130d languageName: node linkType: hard @@ -3523,13 +3095,13 @@ __metadata: linkType: hard "@lezer/python@npm:^1.1.4": - version: 1.1.15 - resolution: "@lezer/python@npm:1.1.15" + version: 1.1.16 + resolution: "@lezer/python@npm:1.1.16" dependencies: "@lezer/common": ^1.2.0 "@lezer/highlight": ^1.0.0 "@lezer/lr": ^1.0.0 - checksum: 106ef0a56d0ccac6bcba02ee91770f6cd96fe599edc061300e2d0556ae53a68d32fb8f94e8baeaa34f06127dcb39513425e180966b1fd5cba78da2b78e9ee3c3 + checksum: fb48c64a496c1878248554a82a1a7ba7f8e3f9c73ca0aa1288efe4795b53227fca8d8d3666a7fe0fb1407a730e08da172f0a48daec11d50a686bba7f073ebee6 languageName: node linkType: hard @@ -3563,13 +3135,13 @@ __metadata: linkType: hard "@lumino/application@npm:^2.4.1": - version: 2.4.1 - resolution: "@lumino/application@npm:2.4.1" + version: 2.4.2 + resolution: "@lumino/application@npm:2.4.2" dependencies: "@lumino/commands": ^2.3.1 "@lumino/coreutils": ^2.2.0 - "@lumino/widgets": ^2.5.0 - checksum: b7166d1bf4f0e3cc945d984b4057a4cd106d38df6cb4c6f1259c75484e2b976018aca55f169fa4af7dd174ce7117be1920966bef0fb7cba756f503f0df1d211e + "@lumino/widgets": ^2.6.0 + checksum: 210dce74beb528e94839b209c5bebb858b56c8c9d896359614a47ce9c5cb117736233d9d81b6009b9916b8ede480d6240f991f988b8bcf9c6a229ef86bf90a85 languageName: node linkType: hard @@ -3686,9 +3258,9 @@ __metadata: languageName: node linkType: hard -"@lumino/widgets@npm:^1.37.2 || ^2.5.0, @lumino/widgets@npm:^2.5.0": - version: 2.5.0 - resolution: "@lumino/widgets@npm:2.5.0" +"@lumino/widgets@npm:^1.37.2 || ^2.5.0, @lumino/widgets@npm:^2.5.0, @lumino/widgets@npm:^2.6.0": + version: 2.6.0 + resolution: "@lumino/widgets@npm:2.6.0" dependencies: "@lumino/algorithm": ^2.0.2 "@lumino/commands": ^2.3.1 @@ -3701,21 +3273,7 @@ __metadata: "@lumino/properties": ^2.0.2 "@lumino/signaling": ^2.1.3 "@lumino/virtualdom": ^2.0.2 - checksum: c5055e42b0b7d5d9a0c29d14c7053478cbdef057525e262ccd59c987971364d5462ed1a59d5008b889cf5ecc6810e90c681364239500b9c8ee0ae4624d60df84 - languageName: node - linkType: hard - -"@marijn/buildtool@npm:^0.1.6": - version: 0.1.6 - resolution: "@marijn/buildtool@npm:0.1.6" - dependencies: - "@types/mocha": ^9.1.1 - acorn: ^8.10.0 - acorn-walk: ^8.2.0 - rollup: ^3.28.0 - rollup-plugin-dts: ^5.3.1 - typescript: ^5.1.6 - checksum: e4015d7a2b77e3a9ef6fecf45c848362ecb05f347e16114aa90391399a40ac689c618b9bd4f21ca411fd9733cecf58817e1ba546bd9f09fc92efd6df2f7a5481 + checksum: 925acbe8813af32a7d0bbfb4a91f848f9b840561fa48d26c6b08c041c2f5077c25f02424b82e793945b26de5d3137127f754a5e788239364c92bc2863218619e languageName: node linkType: hard @@ -4026,8 +3584,8 @@ __metadata: linkType: hard "@nx/devkit@npm:>=17.1.2 < 21": - version: 20.1.4 - resolution: "@nx/devkit@npm:20.1.4" + version: 20.5.0 + resolution: "@nx/devkit@npm:20.5.0" dependencies: ejs: ^3.1.7 enquirer: ~2.3.6 @@ -4039,128 +3597,127 @@ __metadata: yargs-parser: 21.1.1 peerDependencies: nx: ">= 19 <= 21" - checksum: 2c2525fb40a94cb79ad266dfb0aa4691a5a530e163d798602d85466c5e337e2ff02daa34dcea3973d0371a7b6f3626a23e397fe7e1ab8cae17e2922d8e134865 + checksum: 330c3239486f69d6016a20a53751e6269fa0656a7ed26b2dcc3eda18f7b9361e96db6d7ae87dbcd48afde078db949447fb3baa0a9937dec19a9f69e453526f08 languageName: node linkType: hard -"@nx/nx-darwin-arm64@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-darwin-arm64@npm:20.1.4" +"@nx/nx-darwin-arm64@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-darwin-arm64@npm:20.5.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@nx/nx-darwin-x64@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-darwin-x64@npm:20.1.4" +"@nx/nx-darwin-x64@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-darwin-x64@npm:20.5.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@nx/nx-freebsd-x64@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-freebsd-x64@npm:20.1.4" +"@nx/nx-freebsd-x64@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-freebsd-x64@npm:20.5.0" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@nx/nx-linux-arm-gnueabihf@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-linux-arm-gnueabihf@npm:20.1.4" +"@nx/nx-linux-arm-gnueabihf@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-linux-arm-gnueabihf@npm:20.5.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@nx/nx-linux-arm64-gnu@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-linux-arm64-gnu@npm:20.1.4" +"@nx/nx-linux-arm64-gnu@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-linux-arm64-gnu@npm:20.5.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@nx/nx-linux-arm64-musl@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-linux-arm64-musl@npm:20.1.4" +"@nx/nx-linux-arm64-musl@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-linux-arm64-musl@npm:20.5.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@nx/nx-linux-x64-gnu@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-linux-x64-gnu@npm:20.1.4" +"@nx/nx-linux-x64-gnu@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-linux-x64-gnu@npm:20.5.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@nx/nx-linux-x64-musl@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-linux-x64-musl@npm:20.1.4" +"@nx/nx-linux-x64-musl@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-linux-x64-musl@npm:20.5.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@nx/nx-win32-arm64-msvc@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-win32-arm64-msvc@npm:20.1.4" +"@nx/nx-win32-arm64-msvc@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-win32-arm64-msvc@npm:20.5.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@nx/nx-win32-x64-msvc@npm:20.1.4": - version: 20.1.4 - resolution: "@nx/nx-win32-x64-msvc@npm:20.1.4" +"@nx/nx-win32-x64-msvc@npm:20.5.0": + version: 20.5.0 + resolution: "@nx/nx-win32-x64-msvc@npm:20.5.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@octokit/auth-token@npm:^3.0.0": - version: 3.0.4 - resolution: "@octokit/auth-token@npm:3.0.4" - checksum: 42f533a873d4192e6df406b3176141c1f95287423ebdc4cf23a38bb77ee00ccbc0e60e3fbd5874234fc2ed2e67bbc6035e3b0561dacc1d078adb5c4ced3579e3 +"@octokit/auth-token@npm:^4.0.0": + version: 4.0.0 + resolution: "@octokit/auth-token@npm:4.0.0" + checksum: d78f4dc48b214d374aeb39caec4fdbf5c1e4fd8b9fcb18f630b1fe2cbd5a880fca05445f32b4561f41262cb551746aeb0b49e89c95c6dd99299706684d0cae2f languageName: node linkType: hard -"@octokit/core@npm:^4.2.1": - version: 4.2.4 - resolution: "@octokit/core@npm:4.2.4" +"@octokit/core@npm:^5.0.2": + version: 5.2.0 + resolution: "@octokit/core@npm:5.2.0" dependencies: - "@octokit/auth-token": ^3.0.0 - "@octokit/graphql": ^5.0.0 - "@octokit/request": ^6.0.0 - "@octokit/request-error": ^3.0.0 - "@octokit/types": ^9.0.0 + "@octokit/auth-token": ^4.0.0 + "@octokit/graphql": ^7.1.0 + "@octokit/request": ^8.3.1 + "@octokit/request-error": ^5.1.0 + "@octokit/types": ^13.0.0 before-after-hook: ^2.2.0 universal-user-agent: ^6.0.0 - checksum: ac8ab47440a31b0228a034aacac6994b64d6b073ad5b688b4c5157fc5ee0d1af1c926e6087bf17fd7244ee9c5998839da89065a90819bde4a97cb77d4edf58a6 + checksum: 57d5f02b759b569323dcb76cc72bf94ea7d0de58638c118ee14ec3e37d303c505893137dd72918328794844f35c74b3cd16999319c4b40d410a310d44a9b7566 languageName: node linkType: hard -"@octokit/endpoint@npm:^7.0.0": - version: 7.0.6 - resolution: "@octokit/endpoint@npm:7.0.6" +"@octokit/endpoint@npm:^9.0.6": + version: 9.0.6 + resolution: "@octokit/endpoint@npm:9.0.6" dependencies: - "@octokit/types": ^9.0.0 - is-plain-object: ^5.0.0 + "@octokit/types": ^13.1.0 universal-user-agent: ^6.0.0 - checksum: 7caebf30ceec50eb7f253341ed419df355232f03d4638a95c178ee96620400db7e4a5e15d89773fe14db19b8653d4ab4cc81b2e93ca0c760b4e0f7eb7ad80301 + checksum: f853c08f0777a8cc7c3d2509835d478e11a76d722f807d4f2ad7c0e64bf4dd159536409f466b367a907886aa3b78574d3d09ed95ac462c769e4fccaaad81e72a languageName: node linkType: hard -"@octokit/graphql@npm:^5.0.0": - version: 5.0.6 - resolution: "@octokit/graphql@npm:5.0.6" +"@octokit/graphql@npm:^7.1.0": + version: 7.1.1 + resolution: "@octokit/graphql@npm:7.1.1" dependencies: - "@octokit/request": ^6.0.0 - "@octokit/types": ^9.0.0 + "@octokit/request": ^8.4.1 + "@octokit/types": ^13.0.0 universal-user-agent: ^6.0.0 - checksum: 7be545d348ef31dcab0a2478dd64d5746419a2f82f61459c774602bcf8a9b577989c18001f50b03f5f61a3d9e34203bdc021a4e4d75ff2d981e8c9c09cf8a65c + checksum: afb60d5dda6d365334480540610d67b0c5f8e3977dd895fe504ce988f8b7183f29f3b16b88d895a701a739cf29d157d49f8f9fbc71b6c57eb4fc9bd97e099f55 languageName: node linkType: hard -"@octokit/openapi-types@npm:^18.0.0": - version: 18.1.1 - resolution: "@octokit/openapi-types@npm:18.1.1" - checksum: 94f42977fd2fcb9983c781fd199bc11218885a1226d492680bfb1268524a1b2af48a768eef90c63b80a2874437de641d59b3b7f640a5afa93e7c21fe1a79069a +"@octokit/openapi-types@npm:^23.0.1": + version: 23.0.1 + resolution: "@octokit/openapi-types@npm:23.0.1" + checksum: 1e6766c60375375d85ecabded67d9ee313cf9401c18a44534b942717cf840d41b5a9d42035522efffe6b811ee2204d4615f72c333e984e81b25545926eb77989 languageName: node linkType: hard @@ -4171,97 +3728,78 @@ __metadata: languageName: node linkType: hard -"@octokit/plugin-paginate-rest@npm:^6.1.2": - version: 6.1.2 - resolution: "@octokit/plugin-paginate-rest@npm:6.1.2" +"@octokit/plugin-paginate-rest@npm:11.4.4-cjs.2": + version: 11.4.4-cjs.2 + resolution: "@octokit/plugin-paginate-rest@npm:11.4.4-cjs.2" dependencies: - "@octokit/tsconfig": ^1.0.2 - "@octokit/types": ^9.2.3 + "@octokit/types": ^13.7.0 peerDependencies: - "@octokit/core": ">=4" - checksum: a7b3e686c7cbd27ec07871cde6e0b1dc96337afbcef426bbe3067152a17b535abd480db1861ca28c88d93db5f7bfdbcadd0919ead19818c28a69d0e194038065 + "@octokit/core": 5 + checksum: e6d1f4da255d08c24188b5df1436f22680e7fe2608d3af5d2f08a98f40d565bd3df0c58d306f05caae923247fffe861ec12d5f1273a882333fcdb34255e6c8b0 languageName: node linkType: hard -"@octokit/plugin-request-log@npm:^1.0.4": - version: 1.0.4 - resolution: "@octokit/plugin-request-log@npm:1.0.4" +"@octokit/plugin-request-log@npm:^4.0.0": + version: 4.0.1 + resolution: "@octokit/plugin-request-log@npm:4.0.1" peerDependencies: - "@octokit/core": ">=3" - checksum: 2086db00056aee0f8ebd79797b5b57149ae1014e757ea08985b71eec8c3d85dbb54533f4fd34b6b9ecaa760904ae6a7536be27d71e50a3782ab47809094bfc0c + "@octokit/core": 5 + checksum: fd8c0a201490cba00084689a0d1d54fc7b5ab5b6bdb7e447056b947b1754f78526e9685400eab10d3522bfa7b5bc49c555f41ec412c788610b96500b168f3789 languageName: node linkType: hard -"@octokit/plugin-rest-endpoint-methods@npm:^7.1.2": - version: 7.2.3 - resolution: "@octokit/plugin-rest-endpoint-methods@npm:7.2.3" +"@octokit/plugin-rest-endpoint-methods@npm:13.3.2-cjs.1": + version: 13.3.2-cjs.1 + resolution: "@octokit/plugin-rest-endpoint-methods@npm:13.3.2-cjs.1" dependencies: - "@octokit/types": ^10.0.0 + "@octokit/types": ^13.8.0 peerDependencies: - "@octokit/core": ">=3" - checksum: 21dfb98514dbe900c29cddb13b335bbce43d613800c6b17eba3c1fd31d17e69c1960f3067f7bf864bb38fdd5043391f4a23edee42729d8c7fbabd00569a80336 + "@octokit/core": ^5 + checksum: de38a7fe33aa41ecfa62dd8546d9b603cf43b1a6cf3a31e8c1950684e1cf0f9dc7ccbcff8ef570e825729f3800f42e6ae33447c836dfa12259391ced421df64f languageName: node linkType: hard -"@octokit/request-error@npm:^3.0.0": - version: 3.0.3 - resolution: "@octokit/request-error@npm:3.0.3" +"@octokit/request-error@npm:^5.1.0, @octokit/request-error@npm:^5.1.1": + version: 5.1.1 + resolution: "@octokit/request-error@npm:5.1.1" dependencies: - "@octokit/types": ^9.0.0 + "@octokit/types": ^13.1.0 deprecation: ^2.0.0 once: ^1.4.0 - checksum: 5db0b514732686b627e6ed9ef1ccdbc10501f1b271a9b31f784783f01beee70083d7edcfeb35fbd7e569fa31fdd6762b1ff6b46101700d2d97e7e48e749520d0 + checksum: 17d0b3f59c2a8a285715bfe6a85168d9c417aa7a0ff553b9be4198a3bc8bb00384a3530221a448eb19f8f07ea9fc48d264869624f5f84fa63a948a7af8cddc8c languageName: node linkType: hard -"@octokit/request@npm:^6.0.0": - version: 6.2.8 - resolution: "@octokit/request@npm:6.2.8" +"@octokit/request@npm:^8.3.1, @octokit/request@npm:^8.4.1": + version: 8.4.1 + resolution: "@octokit/request@npm:8.4.1" dependencies: - "@octokit/endpoint": ^7.0.0 - "@octokit/request-error": ^3.0.0 - "@octokit/types": ^9.0.0 - is-plain-object: ^5.0.0 - node-fetch: ^2.6.7 + "@octokit/endpoint": ^9.0.6 + "@octokit/request-error": ^5.1.1 + "@octokit/types": ^13.1.0 universal-user-agent: ^6.0.0 - checksum: 3747106f50d7c462131ff995b13defdd78024b7becc40283f4ac9ea0af2391ff33a0bb476a05aa710346fe766d20254979079a1d6f626112015ba271fe38f3e2 - languageName: node - linkType: hard - -"@octokit/rest@npm:19.0.11": - version: 19.0.11 - resolution: "@octokit/rest@npm:19.0.11" - dependencies: - "@octokit/core": ^4.2.1 - "@octokit/plugin-paginate-rest": ^6.1.2 - "@octokit/plugin-request-log": ^1.0.4 - "@octokit/plugin-rest-endpoint-methods": ^7.1.2 - checksum: 147518ad51d214ead88adc717b5fdc4f33317949d58c124f4069bdf07d2e6b49fa66861036b9e233aed71fcb88ff367a6da0357653484e466175ab4fb7183b3b - languageName: node - linkType: hard - -"@octokit/tsconfig@npm:^1.0.2": - version: 1.0.2 - resolution: "@octokit/tsconfig@npm:1.0.2" - checksum: 74d56f3e9f326a8dd63700e9a51a7c75487180629c7a68bbafee97c612fbf57af8347369bfa6610b9268a3e8b833c19c1e4beb03f26db9a9dce31f6f7a19b5b1 + checksum: 0ba76728583543baeef9fda98690bc86c57e0a3ccac8c189d2b7d144d248c89167eb37a071ed8fead8f4da0a1c55c4dd98a8fc598769c263b95179fb200959de languageName: node linkType: hard -"@octokit/types@npm:^10.0.0": - version: 10.0.0 - resolution: "@octokit/types@npm:10.0.0" +"@octokit/rest@npm:20.1.2": + version: 20.1.2 + resolution: "@octokit/rest@npm:20.1.2" dependencies: - "@octokit/openapi-types": ^18.0.0 - checksum: 8aafba2ff0cd2435fb70c291bf75ed071c0fa8a865cf6169648732068a35dec7b85a345851f18920ec5f3e94ee0e954988485caac0da09ec3f6781cc44fe153a + "@octokit/core": ^5.0.2 + "@octokit/plugin-paginate-rest": 11.4.4-cjs.2 + "@octokit/plugin-request-log": ^4.0.0 + "@octokit/plugin-rest-endpoint-methods": 13.3.2-cjs.1 + checksum: 72309dd393f3424f0c4213d045332c1c1a00893bea4db9b54d6add7316d9a9b461932de3afe3c866bff52cc084c79e98f644dabd386cda95068690cc9ae97456 languageName: node linkType: hard -"@octokit/types@npm:^9.0.0, @octokit/types@npm:^9.2.3": - version: 9.3.2 - resolution: "@octokit/types@npm:9.3.2" +"@octokit/types@npm:^13.0.0, @octokit/types@npm:^13.1.0, @octokit/types@npm:^13.7.0, @octokit/types@npm:^13.8.0": + version: 13.8.0 + resolution: "@octokit/types@npm:13.8.0" dependencies: - "@octokit/openapi-types": ^18.0.0 - checksum: f55d096aaed3e04b8308d4422104fb888f355988056ba7b7ef0a4c397b8a3e54290d7827b06774dbe0c9ce55280b00db486286954f9c265aa6b03091026d9da8 + "@octokit/openapi-types": ^23.0.1 + checksum: be5fb327d0e39765e06f5a314556a273ff2bfb9ce4fd5a6e52c237d2f20a4c329493a8bde2c595cb82a5022f07ee6495dfff07ce24e3de4660c9ead913e3db0d languageName: node linkType: hard @@ -4280,8 +3818,8 @@ __metadata: linkType: hard "@rjsf/core@npm:^5.13.4": - version: 5.23.1 - resolution: "@rjsf/core@npm:5.23.1" + version: 5.24.7 + resolution: "@rjsf/core@npm:5.24.7" dependencies: lodash: ^4.17.21 lodash-es: ^4.17.21 @@ -4289,15 +3827,15 @@ __metadata: nanoid: ^3.3.7 prop-types: ^15.8.1 peerDependencies: - "@rjsf/utils": ^5.23.x + "@rjsf/utils": ^5.24.x react: ^16.14.0 || >=17 - checksum: acb5b1541b7e6f9911dce33455c297402fc1b2278b0c688073decdea977efae7d4227962eaadeb48fd14c2a8e4bba73a80df975b1c49aa2e2b933c2646ab4904 + checksum: f345be9c44c8bec61828ca3282fd8fdb75a19a62eae26b8a0c37d6ee9a3b09e72decff86954052682346581f8ae4e162803bc7dd3cd7dde40a0cf545da94070b languageName: node linkType: hard "@rjsf/utils@npm:^5.13.4": - version: 5.23.1 - resolution: "@rjsf/utils@npm:5.23.1" + version: 5.24.7 + resolution: "@rjsf/utils@npm:5.24.7" dependencies: json-schema-merge-allof: ^0.8.1 jsonpointer: ^5.0.1 @@ -4306,139 +3844,139 @@ __metadata: react-is: ^18.2.0 peerDependencies: react: ^16.14.0 || >=17 - checksum: 7580419cf07416fe1e608ed171c30b25b3a78cfebba7d97e3120fe2e40f702fd0e61494e6c823281091522b053a39a83ab31ceb97c078cfb39ac636dc2d997c1 + checksum: bb81e8113958419db3185d5510f5d9635f3ad8ad87b5913eca09a37d0e52987b469c31c6548817ec40c19592547c36af7f52d3961a3ab7fee217463be8080de0 languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.34.6" +"@rollup/rollup-android-arm-eabi@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.35.0" conditions: os=android & cpu=arm languageName: node linkType: hard -"@rollup/rollup-android-arm64@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-android-arm64@npm:4.34.6" +"@rollup/rollup-android-arm64@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-android-arm64@npm:4.35.0" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-arm64@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-darwin-arm64@npm:4.34.6" +"@rollup/rollup-darwin-arm64@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-darwin-arm64@npm:4.35.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-x64@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-darwin-x64@npm:4.34.6" +"@rollup/rollup-darwin-x64@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-darwin-x64@npm:4.35.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-freebsd-arm64@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-freebsd-arm64@npm:4.34.6" +"@rollup/rollup-freebsd-arm64@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.35.0" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-freebsd-x64@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-freebsd-x64@npm:4.34.6" +"@rollup/rollup-freebsd-x64@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-freebsd-x64@npm:4.35.0" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-linux-arm-gnueabihf@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.6" +"@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0" conditions: os=linux & cpu=arm & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm-musleabihf@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.34.6" +"@rollup/rollup-linux-arm-musleabihf@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.35.0" conditions: os=linux & cpu=arm & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-arm64-gnu@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.34.6" +"@rollup/rollup-linux-arm64-gnu@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.35.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm64-musl@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.34.6" +"@rollup/rollup-linux-arm64-musl@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.35.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-loongarch64-gnu@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.34.6" +"@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0" conditions: os=linux & cpu=loong64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.6" +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0" conditions: os=linux & cpu=ppc64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-riscv64-gnu@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.34.6" +"@rollup/rollup-linux-riscv64-gnu@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.35.0" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-s390x-gnu@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.34.6" +"@rollup/rollup-linux-s390x-gnu@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.35.0" conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-gnu@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.34.6" +"@rollup/rollup-linux-x64-gnu@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.35.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-musl@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.34.6" +"@rollup/rollup-linux-x64-musl@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.35.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-win32-arm64-msvc@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.34.6" +"@rollup/rollup-win32-arm64-msvc@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.35.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-win32-ia32-msvc@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.34.6" +"@rollup/rollup-win32-ia32-msvc@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.35.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@rollup/rollup-win32-x64-msvc@npm:4.34.6": - version: 4.34.6 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.34.6" +"@rollup/rollup-win32-x64-msvc@npm:4.35.0": + version: 4.35.0 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.35.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -4460,9 +3998,9 @@ __metadata: linkType: hard "@sigstore/protobuf-specs@npm:^0.3.2": - version: 0.3.2 - resolution: "@sigstore/protobuf-specs@npm:0.3.2" - checksum: 677b67eb4c3128432169fa168a5daae343a0242ffada3811bfde844644ac2eae0127cbf39349ed59e1a4edd14064416285251abb6acb260b6e3e9b6b40705c13 + version: 0.3.3 + resolution: "@sigstore/protobuf-specs@npm:0.3.3" + checksum: 5457c64efd564ef1a7fcf06fe48fc2c96f2e5865b9a4cde818ebbee6e592492b3834bd8f1c1202e5790f21278ad45f2dc771c1f7328175c099147ce3a680614a languageName: node linkType: hard @@ -4608,12 +4146,11 @@ __metadata: linkType: hard "@types/create-react-class@npm:*": - version: 15.6.8 - resolution: "@types/create-react-class@npm:15.6.8" + version: 15.6.9 + resolution: "@types/create-react-class@npm:15.6.9" dependencies: - "@types/prop-types": "*" "@types/react": "*" - checksum: a4237559499c77205c7e73269e53db6ada257e21a638f7222f20ffcd66d1a9c2ed1819ceca067a3edbdb47960d8a60ecd2c6de5a0cb9ed8e9de03e4ced144397 + checksum: 4c87f2eb72f900e61491573fa52f6c0bff56ea420f2659fbd2ff2d8794be6f936e31d51bbc2e91048d9ce78c19eae71845787b8cbcce8d3458f66a9b5af1f91b languageName: node linkType: hard @@ -4644,13 +4181,6 @@ __metadata: languageName: node linkType: hard -"@types/gensync@npm:^1.0.0": - version: 1.0.4 - resolution: "@types/gensync@npm:1.0.4" - checksum: 99c3aa0d3f1198973c7e51bea5947b815f3338ce89ce09a39ac8abb41cd844c5b95189da254ea45e50a395fe25fd215664d8ca76c5438814963597afb01f686e - languageName: node - linkType: hard - "@types/graceful-fs@npm:^4.1.3": version: 4.1.9 resolution: "@types/graceful-fs@npm:4.1.9" @@ -4727,19 +4257,12 @@ __metadata: languageName: node linkType: hard -"@types/mocha@npm:^9.1.1": - version: 9.1.1 - resolution: "@types/mocha@npm:9.1.1" - checksum: 516077c0acd9806dc78317f88aaac0df5aaf0bdc2f63dfdadeabdf0b0137953b6ca65472e6ff7c30bc93ce4e0ae76eae70e8d46764b9a8eae4877a928b6ef49a - languageName: node - linkType: hard - "@types/node@npm:*": - version: 22.10.1 - resolution: "@types/node@npm:22.10.1" + version: 22.13.10 + resolution: "@types/node@npm:22.13.10" dependencies: undici-types: ~6.20.0 - checksum: 5a9b81500f288a8fb757b61bd939f99f72b6cb59347a5bae52dd1c2c87100ebbaa9da4256ef3cb9add2090e8704cda1d9a1ffc14ccd5db47a6466c8bae10ebcb + checksum: 1cd6b899df728732c60c0defad63e26ca18d87a3b81bd75666fe9aed6cdf9e488433976b22ffcabfdeef9d351cf8ff94853b0686e6708ef62065482ccf5b0a6e languageName: node linkType: hard @@ -4751,9 +4274,9 @@ __metadata: linkType: hard "@types/prop-types@npm:*": - version: 15.7.13 - resolution: "@types/prop-types@npm:15.7.13" - checksum: 8935cad87c683c665d09a055919d617fe951cb3b2d5c00544e3a913f861a2bd8d2145b51c9aa6d2457d19f3107ab40784c40205e757232f6a80cc8b1c815513c + version: 15.7.14 + resolution: "@types/prop-types@npm:15.7.14" + checksum: d0c5407b9ccc3dd5fae0ccf9b1007e7622ba5e6f1c18399b4f24dff33619d469da4b9fa918a374f19dc0d9fe6a013362aab0b844b606cfc10676efba3f5f736d languageName: node linkType: hard @@ -4768,30 +4291,30 @@ __metadata: linkType: hard "@types/react-dom@npm:^19.0.3": - version: 19.0.3 - resolution: "@types/react-dom@npm:19.0.3" + version: 19.0.4 + resolution: "@types/react-dom@npm:19.0.4" peerDependencies: "@types/react": ^19.0.0 - checksum: a253931fc3a41a74ef99a7380fa3fa02b94ddd1addba9fc0aea39c90ce3dfb22d60fbac292669de224b1ffb23836cde3cc78c2425f0c77593435b6368a9fd2ed + checksum: 2d0c74769ddcb4a9f404a62b3241d3e550ca962ff80c8c5b624f6626cd39f8b18aadee8e447424b52cffdd9165b1f02eb51020fc486584c8395236d97d4abedf languageName: node linkType: hard -"@types/react@npm:*, @types/react@npm:^18.0.26": - version: 18.3.13 - resolution: "@types/react@npm:18.3.13" +"@types/react@npm:*, @types/react@npm:^19.0.8": + version: 19.0.10 + resolution: "@types/react@npm:19.0.10" dependencies: - "@types/prop-types": "*" csstype: ^3.0.2 - checksum: 5ccf75e8e52e30fd619046ce985d17152fdf92da3b27777cdcbe972c4557bb0f0d7cfda6b379c29e409f4c3293ad1277394eea6c865211c07bd92cab8dcb277f + checksum: e257e87bc3464825014523aecc700540a9da41c3c23136c03da9b2b7999251ac70ef9e594febdefeea6abe51da2475b42e5d96af6559d76f8d54bffc0b0ddacd languageName: node linkType: hard -"@types/react@npm:^19.0.8": - version: 19.0.8 - resolution: "@types/react@npm:19.0.8" +"@types/react@npm:^18.0.26": + version: 18.3.18 + resolution: "@types/react@npm:18.3.18" dependencies: + "@types/prop-types": "*" csstype: ^3.0.2 - checksum: 80dd2e7fa4b3e0ea2d883c21317563f4af1c4d90a6250c8bcbc052079304dc3335369267026004ed5d7cac09c7b0026e02e71ae5cca3150643507e353219fe47 + checksum: 5933597bc9f53e282f0438f0bb76d0f0fab60faabe760ea806e05ffe6f5c61b9b4d363e1a03a8fea47c510d493c6cf926cdeeba9f7074fa97b61940c350245e7 languageName: node linkType: hard @@ -4974,9 +4497,9 @@ __metadata: linkType: hard "@ungap/structured-clone@npm:^1.2.0": - version: 1.2.0 - resolution: "@ungap/structured-clone@npm:1.2.0" - checksum: 4f656b7b4672f2ce6e272f2427d8b0824ed11546a601d8d5412b9d7704e83db38a8d9f402ecdf2b9063fc164af842ad0ec4a55819f621ed7e7ea4d1efcc74524 + version: 1.3.0 + resolution: "@ungap/structured-clone@npm:1.3.0" + checksum: 64ed518f49c2b31f5b50f8570a1e37bde3b62f2460042c50f132430b2d869c4a6586f13aa33a58a4722715b8158c68cae2827389d6752ac54da2893c83e480fc languageName: node linkType: hard @@ -5247,6 +4770,13 @@ __metadata: languageName: node linkType: hard +"abbrev@npm:^3.0.0": + version: 3.0.0 + resolution: "abbrev@npm:3.0.0" + checksum: 2500075b5ef85e97c095ab6ab2ea640dcf90bb388f46398f4d347b296f53399f984ec9462c74bee81df6bba56ef5fd9dbc2fb29076b1feb0023e0f52d43eb984 + languageName: node + linkType: hard + "acorn-globals@npm:^7.0.0": version: 7.0.1 resolution: "acorn-globals@npm:7.0.1" @@ -5266,7 +4796,7 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:^8.0.2, acorn-walk@npm:^8.2.0": +"acorn-walk@npm:^8.0.2": version: 8.3.4 resolution: "acorn-walk@npm:8.3.4" dependencies: @@ -5275,12 +4805,12 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.1.0, acorn@npm:^8.10.0, acorn@npm:^8.11.0, acorn@npm:^8.14.0, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": - version: 8.14.0 - resolution: "acorn@npm:8.14.0" +"acorn@npm:^8.1.0, acorn@npm:^8.11.0, acorn@npm:^8.14.0, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": + version: 8.14.1 + resolution: "acorn@npm:8.14.1" bin: acorn: bin/acorn - checksum: 8755074ba55fff94e84e81c72f1013c2d9c78e973c31231c8ae505a5f966859baf654bddd75046bffd73ce816b149298977fff5077a3033dedba0ae2aad152d4 + checksum: 260d9bb6017a1b6e42d31364687f0258f78eb20210b36ef2baad38fd619d78d4e95ff7dde9b3dbe0d81f137f79a8d651a845363a26e6985997f7b71145dc5e94 languageName: node linkType: hard @@ -5300,12 +4830,10 @@ __metadata: languageName: node linkType: hard -"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0, agent-base@npm:^7.1.1": - version: 7.1.1 - resolution: "agent-base@npm:7.1.1" - dependencies: - debug: ^4.3.4 - checksum: 51c158769c5c051482f9ca2e6e1ec085ac72b5a418a9b31b4e82fe6c0a6699adb94c1c42d246699a587b3335215037091c79e0de512c516f73b6ea844202f037 +"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": + version: 7.1.3 + resolution: "agent-base@npm:7.1.3" + checksum: 87bb7ee54f5ecf0ccbfcba0b07473885c43ecd76cb29a8db17d6137a19d9f9cd443a2a7c5fd8a3f24d58ad8145f9eb49116344a66b107e1aeab82cf2383f4753 languageName: node linkType: hard @@ -5472,13 +5000,13 @@ __metadata: languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.1": - version: 1.0.1 - resolution: "array-buffer-byte-length@npm:1.0.1" +"array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2": + version: 1.0.2 + resolution: "array-buffer-byte-length@npm:1.0.2" dependencies: - call-bind: ^1.0.5 - is-array-buffer: ^3.0.4 - checksum: 53524e08f40867f6a9f35318fafe467c32e45e9c682ba67b11943e167344d2febc0f6977a17e699b05699e805c3e8f073d876f8bbf1b559ed494ad2cd0fae09e + call-bound: ^1.0.3 + is-array-buffer: ^3.0.5 + checksum: 0ae3786195c3211b423e5be8dd93357870e6fb66357d81da968c2c39ef43583ef6eece1f9cb1caccdae4806739c65dea832b44b8593414313cd76a89795fca63 languageName: node linkType: hard @@ -5503,19 +5031,18 @@ __metadata: languageName: node linkType: hard -"arraybuffer.prototype.slice@npm:^1.0.3": - version: 1.0.3 - resolution: "arraybuffer.prototype.slice@npm:1.0.3" +"arraybuffer.prototype.slice@npm:^1.0.4": + version: 1.0.4 + resolution: "arraybuffer.prototype.slice@npm:1.0.4" dependencies: array-buffer-byte-length: ^1.0.1 - call-bind: ^1.0.5 + call-bind: ^1.0.8 define-properties: ^1.2.1 - es-abstract: ^1.22.3 - es-errors: ^1.2.1 - get-intrinsic: ^1.2.3 + es-abstract: ^1.23.5 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.6 is-array-buffer: ^3.0.4 - is-shared-array-buffer: ^1.0.2 - checksum: 352259cba534dcdd969c92ab002efd2ba5025b2e3b9bead3973150edbdf0696c629d7f4b3f061c5931511e8207bdc2306da614703c820b45dabce39e3daf7e3e + checksum: b1d1fd20be4e972a3779b1569226f6740170dca10f07aa4421d42cefeec61391e79c557cda8e771f5baefe47d878178cd4438f60916ce831813c08132bced765 languageName: node linkType: hard @@ -5540,6 +5067,13 @@ __metadata: languageName: node linkType: hard +"async-function@npm:^1.0.0": + version: 1.0.0 + resolution: "async-function@npm:1.0.0" + checksum: 9102e246d1ed9b37ac36f57f0a6ca55226876553251a31fc80677e71471f463a54c872dc78d5d7f80740c8ba624395cccbe8b60f7b690c4418f487d8e9fd1106 + languageName: node + linkType: hard + "async@npm:^3.2.3": version: 3.2.6 resolution: "async@npm:3.2.6" @@ -5564,13 +5098,13 @@ __metadata: linkType: hard "axios@npm:^1.7.4": - version: 1.7.9 - resolution: "axios@npm:1.7.9" + version: 1.8.3 + resolution: "axios@npm:1.8.3" dependencies: follow-redirects: ^1.15.6 form-data: ^4.0.0 proxy-from-env: ^1.1.0 - checksum: cb8ce291818effda09240cb60f114d5625909b345e10f389a945320e06acf0bc949d0f8422d25720f5dd421362abee302c99f5e97edec4c156c8939814b23d19 + checksum: 85fc8ad7d968e43ea9da5513310637d29654b181411012ee14cc0a4b3662782e6c81ac25eea40b5684f86ed2d8a01fa6fc20b9b48c4da14ef4eaee848fea43bc languageName: node linkType: hard @@ -5775,21 +5309,7 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.24.0": - version: 4.24.2 - resolution: "browserslist@npm:4.24.2" - dependencies: - caniuse-lite: ^1.0.30001669 - electron-to-chromium: ^1.5.41 - node-releases: ^2.0.18 - update-browserslist-db: ^1.1.1 - bin: - browserslist: cli.js - checksum: cf64085f12132d38638f38937a255edb82c7551b164a98577b055dd79719187a816112f7b97b9739e400c4954cd66479c0d7a843cb816e346f4795dc24fd5d97 - languageName: node - linkType: hard - -"browserslist@npm:^4.24.3": +"browserslist@npm:^4.24.0, browserslist@npm:^4.24.4": version: 4.24.4 resolution: "browserslist@npm:4.24.4" dependencies: @@ -5885,16 +5405,35 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.2, call-bind@npm:^1.0.5, call-bind@npm:^1.0.6, call-bind@npm:^1.0.7": - version: 1.0.7 - resolution: "call-bind@npm:1.0.7" +"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind-apply-helpers@npm:1.0.2" dependencies: - es-define-property: ^1.0.0 es-errors: ^1.3.0 function-bind: ^1.1.2 + checksum: b2863d74fcf2a6948221f65d95b91b4b2d90cfe8927650b506141e669f7d5de65cea191bf788838bc40d13846b7886c5bc5c84ab96c3adbcf88ad69a72fcdc6b + languageName: node + linkType: hard + +"call-bind@npm:^1.0.7, call-bind@npm:^1.0.8": + version: 1.0.8 + resolution: "call-bind@npm:1.0.8" + dependencies: + call-bind-apply-helpers: ^1.0.0 + es-define-property: ^1.0.0 get-intrinsic: ^1.2.4 - set-function-length: ^1.2.1 - checksum: 295c0c62b90dd6522e6db3b0ab1ce26bdf9e7404215bda13cfee25b626b5ff1a7761324d58d38b1ef1607fc65aca2d06e44d2e18d0dfc6c14b465b00d8660029 + set-function-length: ^1.2.2 + checksum: aa2899bce917a5392fd73bd32e71799c37c0b7ab454e0ed13af7f6727549091182aade8bbb7b55f304a5bc436d543241c14090fb8a3137e9875e23f444f4f5a9 + languageName: node + linkType: hard + +"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3, call-bound@npm:^1.0.4": + version: 1.0.4 + resolution: "call-bound@npm:1.0.4" + dependencies: + call-bind-apply-helpers: ^1.0.2 + get-intrinsic: ^1.3.0 + checksum: 2f6399488d1c272f56306ca60ff696575e2b7f31daf23bc11574798c84d9f2759dceb0cb1f471a85b77f28962a7ac6411f51d283ea2e45319009a19b6ccab3b2 languageName: node linkType: hard @@ -5942,17 +5481,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001669": - version: 1.0.30001686 - resolution: "caniuse-lite@npm:1.0.30001686" - checksum: 9c8a0ce38ec201d5d7039ebd6da548cbda19c67f1449e2a1dd831a9ff6f1f92048e2896899bbc07795b39cfbdc895225393d89e3af97874865f3a0ea9cf680a8 - languageName: node - linkType: hard - "caniuse-lite@npm:^1.0.30001688": - version: 1.0.30001700 - resolution: "caniuse-lite@npm:1.0.30001700" - checksum: 0e5e1c8648efeae1a2bcf371c872a4e41d9508d58b47133558f78b99c3d58c4b6ce7688068ea872deffbfc7c3c2a117e756fc48e1de7ae6c5540f3c3a4441c7a + version: 1.0.30001703 + resolution: "caniuse-lite@npm:1.0.30001703" + checksum: f3c19e357df7f5ff480a8a24a61213d1442bf3df9e2f9563a47f4c95e9c08ea7d3c8faa965bc84dcc57c569542584c965b30d552d9b35e421f352c974980de17 languageName: node linkType: hard @@ -6030,9 +5562,9 @@ __metadata: linkType: hard "ci-info@npm:^4.0.0": - version: 4.1.0 - resolution: "ci-info@npm:4.1.0" - checksum: dcf286abdc1bb1c4218b91e4a617b49781b282282089b7188e1417397ea00c6b967848e2360fb9a6b10021bf18a627f20ef698f47c2c9c875aeffd1d2ea51d1e + version: 4.2.0 + resolution: "ci-info@npm:4.2.0" + checksum: 0e3726721526f54c5b17cf44ab2ed69b842c756bcb4d2b26ce279e595a80a856aec9fb38a2986a2baca3de73d15895f3a01d2771c4aad93c898aae7e3ca0ceb1 languageName: node linkType: hard @@ -6417,11 +5949,11 @@ __metadata: linkType: hard "core-js-compat@npm:^3.40.0": - version: 3.40.0 - resolution: "core-js-compat@npm:3.40.0" + version: 3.41.0 + resolution: "core-js-compat@npm:3.41.0" dependencies: - browserslist: ^4.24.3 - checksum: 7ad00607c481ab2ded13d72be9ca5db5bbf42e221a175e905fb425e1ef520864aea28736c7283f57e9552d570eb6204bed87fbc8b9eab0fcfd9a7830dacccd43 + browserslist: ^4.24.4 + checksum: 060f6d6ede3a5f201462ae6f54975ca4eefdb731c4983950c54bc81411fc1c2865a9e916091d034b5229d4dcb79e0f5f8aeda5eeb7a31d940550a5c14e8e8729 languageName: node linkType: hard @@ -6503,7 +6035,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3, cross-spawn@npm:^7.0.6": +"cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3, cross-spawn@npm:^7.0.6": version: 7.0.6 resolution: "cross-spawn@npm:7.0.6" dependencies: @@ -6630,36 +6162,36 @@ __metadata: languageName: node linkType: hard -"data-view-buffer@npm:^1.0.1": - version: 1.0.1 - resolution: "data-view-buffer@npm:1.0.1" +"data-view-buffer@npm:^1.0.2": + version: 1.0.2 + resolution: "data-view-buffer@npm:1.0.2" dependencies: - call-bind: ^1.0.6 + call-bound: ^1.0.3 es-errors: ^1.3.0 - is-data-view: ^1.0.1 - checksum: ce24348f3c6231223b216da92e7e6a57a12b4af81a23f27eff8feabdf06acfb16c00639c8b705ca4d167f761cfc756e27e5f065d0a1f840c10b907fdaf8b988c + is-data-view: ^1.0.2 + checksum: 1e1cd509c3037ac0f8ba320da3d1f8bf1a9f09b0be09394b5e40781b8cc15ff9834967ba7c9f843a425b34f9fe14ce44cf055af6662c44263424c1eb8d65659b languageName: node linkType: hard -"data-view-byte-length@npm:^1.0.1": - version: 1.0.1 - resolution: "data-view-byte-length@npm:1.0.1" +"data-view-byte-length@npm:^1.0.2": + version: 1.0.2 + resolution: "data-view-byte-length@npm:1.0.2" dependencies: - call-bind: ^1.0.7 + call-bound: ^1.0.3 es-errors: ^1.3.0 - is-data-view: ^1.0.1 - checksum: dbb3200edcb7c1ef0d68979834f81d64fd8cab2f7691b3a4c6b97e67f22182f3ec2c8602efd7b76997b55af6ff8bce485829c1feda4fa2165a6b71fb7baa4269 + is-data-view: ^1.0.2 + checksum: 3600c91ced1cfa935f19ef2abae11029e01738de8d229354d3b2a172bf0d7e4ed08ff8f53294b715569fdf72dfeaa96aa7652f479c0f60570878d88e7e8bddf6 languageName: node linkType: hard -"data-view-byte-offset@npm:^1.0.0": - version: 1.0.0 - resolution: "data-view-byte-offset@npm:1.0.0" +"data-view-byte-offset@npm:^1.0.1": + version: 1.0.1 + resolution: "data-view-byte-offset@npm:1.0.1" dependencies: - call-bind: ^1.0.6 + call-bound: ^1.0.2 es-errors: ^1.3.0 is-data-view: ^1.0.1 - checksum: 7f0bf8720b7414ca719eedf1846aeec392f2054d7af707c5dc9a753cc77eb8625f067fa901e0b5127e831f9da9056138d894b9c2be79c27a21f6db5824f009c2 + checksum: 8dd492cd51d19970876626b5b5169fbb67ca31ec1d1d3238ee6a71820ca8b80cafb141c485999db1ee1ef02f2cc3b99424c5eda8d59e852d9ebb79ab290eb5ee languageName: node linkType: hard @@ -6670,19 +6202,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": - version: 4.3.7 - resolution: "debug@npm:4.3.7" - dependencies: - ms: ^2.1.3 - peerDependenciesMeta: - supports-color: - optional: true - checksum: 822d74e209cd910ef0802d261b150314bbcf36c582ccdbb3e70f0894823c17e49a50d3e66d96b633524263975ca16b6a833f3e3b7e030c157169a5fabac63160 - languageName: node - linkType: hard - -"debug@npm:^4.1.0, debug@npm:^4.1.1": +"debug@npm:4, 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": version: 4.4.0 resolution: "debug@npm:4.4.0" dependencies: @@ -6778,7 +6298,7 @@ __metadata: languageName: node linkType: hard -"define-properties@npm:^1.2.0, define-properties@npm:^1.2.1": +"define-properties@npm:^1.2.1": version: 1.2.1 resolution: "define-properties@npm:1.2.1" dependencies: @@ -6899,13 +6419,13 @@ __metadata: linkType: hard "domutils@npm:^3.0.1": - version: 3.1.0 - resolution: "domutils@npm:3.1.0" + version: 3.2.2 + resolution: "domutils@npm:3.2.2" dependencies: dom-serializer: ^2.0.0 domelementtype: ^2.3.0 domhandler: ^5.0.3 - checksum: e5757456ddd173caa411cfc02c2bb64133c65546d2c4081381a3bafc8a57411a41eed70494551aa58030be9e58574fcc489828bebd673863d39924fb4878f416 + checksum: ae941d56f03d857077d55dde9297e960a625229fc2b933187cc4123084d7c2d2517f58283a7336567127029f1e008449bac8ac8506d44341e29e3bb18e02f906 languageName: node linkType: hard @@ -6934,6 +6454,17 @@ __metadata: languageName: node linkType: hard +"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "dunder-proto@npm:1.0.1" + dependencies: + call-bind-apply-helpers: ^1.0.1 + es-errors: ^1.3.0 + gopd: ^1.2.0 + checksum: 149207e36f07bd4941921b0ca929e3a28f1da7bd6b6ff8ff7f4e2f2e460675af4576eeba359c635723dc189b64cdd4787e0255897d5b135ccc5d15cb8685fc90 + languageName: node + linkType: hard + "duplexer@npm:^0.1.1": version: 0.1.2 resolution: "duplexer@npm:0.1.2" @@ -6971,17 +6502,10 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.5.41": - version: 1.5.70 - resolution: "electron-to-chromium@npm:1.5.70" - checksum: aa606b0047de1cf6996a1dd67484cce2680f3d0d1ecd19660961ddb4596487792e6716f3c3c81bb56b8828ce9decc1f76be6b61894dfc169e121c96bf96461f2 - languageName: node - linkType: hard - "electron-to-chromium@npm:^1.5.73": - version: 1.5.102 - resolution: "electron-to-chromium@npm:1.5.102" - checksum: b16781303a09a7dcbede15cba4ed47e34c867070575e4b2045449fd5627395dcd6dee32028f7b9fc92081eac636771c8accf8c078fcbc0fed79dc14125ec0f7f + version: 1.5.114 + resolution: "electron-to-chromium@npm:1.5.114" + checksum: af696acf7c57007e3362a0a7e5fb4613210d55d6bc7c7cfee32f4000aaa604a75fce41d12b081cab7d9757eefb44cafa69c17b6f8ea450d5da938c0bf84b5697 languageName: node linkType: hard @@ -7032,12 +6556,12 @@ __metadata: linkType: hard "enhanced-resolve@npm:^5.17.1": - version: 5.17.1 - resolution: "enhanced-resolve@npm:5.17.1" + version: 5.18.1 + resolution: "enhanced-resolve@npm:5.18.1" dependencies: graceful-fs: ^4.2.4 tapable: ^2.2.0 - checksum: 4bc38cf1cea96456f97503db7280394177d1bc46f8f87c267297d04f795ac5efa81e48115a2f5b6273c781027b5b6bfc5f62b54df629e4d25fa7001a86624f59 + checksum: de5bea7debe3576e78173bcc409c4aee7fcb56580c602d5c47c533b92952e55d7da3d9f53b864846ba62c8bd3efb0f9ecfe5f865e57de2f3e9b6e5cda03b4e7e languageName: node linkType: hard @@ -7098,70 +6622,73 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.22.1, es-abstract@npm:^1.22.3, es-abstract@npm:^1.23.0, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.5": - version: 1.23.5 - resolution: "es-abstract@npm:1.23.5" +"es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.9": + version: 1.23.9 + resolution: "es-abstract@npm:1.23.9" dependencies: - array-buffer-byte-length: ^1.0.1 - arraybuffer.prototype.slice: ^1.0.3 + array-buffer-byte-length: ^1.0.2 + arraybuffer.prototype.slice: ^1.0.4 available-typed-arrays: ^1.0.7 - call-bind: ^1.0.7 - data-view-buffer: ^1.0.1 - data-view-byte-length: ^1.0.1 - data-view-byte-offset: ^1.0.0 - es-define-property: ^1.0.0 + call-bind: ^1.0.8 + call-bound: ^1.0.3 + data-view-buffer: ^1.0.2 + data-view-byte-length: ^1.0.2 + data-view-byte-offset: ^1.0.1 + es-define-property: ^1.0.1 es-errors: ^1.3.0 es-object-atoms: ^1.0.0 - es-set-tostringtag: ^2.0.3 - es-to-primitive: ^1.2.1 - function.prototype.name: ^1.1.6 - get-intrinsic: ^1.2.4 - get-symbol-description: ^1.0.2 + es-set-tostringtag: ^2.1.0 + es-to-primitive: ^1.3.0 + function.prototype.name: ^1.1.8 + get-intrinsic: ^1.2.7 + get-proto: ^1.0.0 + get-symbol-description: ^1.1.0 globalthis: ^1.0.4 - gopd: ^1.0.1 + gopd: ^1.2.0 has-property-descriptors: ^1.0.2 - has-proto: ^1.0.3 - has-symbols: ^1.0.3 + has-proto: ^1.2.0 + has-symbols: ^1.1.0 hasown: ^2.0.2 - internal-slot: ^1.0.7 - is-array-buffer: ^3.0.4 + internal-slot: ^1.1.0 + is-array-buffer: ^3.0.5 is-callable: ^1.2.7 - is-data-view: ^1.0.1 - is-negative-zero: ^2.0.3 - is-regex: ^1.1.4 - is-shared-array-buffer: ^1.0.3 - is-string: ^1.0.7 - is-typed-array: ^1.1.13 - is-weakref: ^1.0.2 + is-data-view: ^1.0.2 + is-regex: ^1.2.1 + is-shared-array-buffer: ^1.0.4 + is-string: ^1.1.1 + is-typed-array: ^1.1.15 + is-weakref: ^1.1.0 + math-intrinsics: ^1.1.0 object-inspect: ^1.13.3 object-keys: ^1.1.1 - object.assign: ^4.1.5 + object.assign: ^4.1.7 + own-keys: ^1.0.1 regexp.prototype.flags: ^1.5.3 - safe-array-concat: ^1.1.2 - safe-regex-test: ^1.0.3 - string.prototype.trim: ^1.2.9 - string.prototype.trimend: ^1.0.8 + safe-array-concat: ^1.1.3 + safe-push-apply: ^1.0.0 + safe-regex-test: ^1.1.0 + set-proto: ^1.0.0 + string.prototype.trim: ^1.2.10 + string.prototype.trimend: ^1.0.9 string.prototype.trimstart: ^1.0.8 - typed-array-buffer: ^1.0.2 - typed-array-byte-length: ^1.0.1 - typed-array-byte-offset: ^1.0.2 - typed-array-length: ^1.0.6 - unbox-primitive: ^1.0.2 - which-typed-array: ^1.1.15 - checksum: 17c81f8a42f0322fd11e0025d3c2229ecfd7923560c710906b8e68660e19c42322750dcedf8ba5cf28bae50d5befd8174d3903ac50dbabb336d3efc3aabed2ee + typed-array-buffer: ^1.0.3 + typed-array-byte-length: ^1.0.3 + typed-array-byte-offset: ^1.0.4 + typed-array-length: ^1.0.7 + unbox-primitive: ^1.1.0 + which-typed-array: ^1.1.18 + checksum: f3ee2614159ca197f97414ab36e3f406ee748ce2f97ffbf09e420726db5a442ce13f1e574601468bff6e6eb81588e6c9ce1ac6c03868a37c7cd48ac679f8485a languageName: node linkType: hard -"es-define-property@npm:^1.0.0": - version: 1.0.0 - resolution: "es-define-property@npm:1.0.0" - dependencies: - get-intrinsic: ^1.2.4 - checksum: f66ece0a887b6dca71848fa71f70461357c0e4e7249696f81bad0a1f347eed7b31262af4a29f5d726dc026426f085483b6b90301855e647aa8e21936f07293c6 +"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": + version: 1.0.1 + resolution: "es-define-property@npm:1.0.1" + checksum: 0512f4e5d564021c9e3a644437b0155af2679d10d80f21adaf868e64d30efdfbd321631956f20f42d655fedb2e3a027da479fad3fa6048f768eb453a80a5f80a languageName: node linkType: hard -"es-errors@npm:^1.2.1, es-errors@npm:^1.3.0": +"es-errors@npm:^1.3.0": version: 1.3.0 resolution: "es-errors@npm:1.3.0" checksum: ec1414527a0ccacd7f15f4a3bc66e215f04f595ba23ca75cdae0927af099b5ec865f9f4d33e9d7e86f512f252876ac77d4281a7871531a50678132429b1271b5 @@ -7169,33 +6696,34 @@ __metadata: linkType: hard "es-module-lexer@npm:^1.2.1": - version: 1.5.4 - resolution: "es-module-lexer@npm:1.5.4" - checksum: a0cf04fb92d052647ac7d818d1913b98d3d3d0f5b9d88f0eafb993436e4c3e2c958599db68839d57f2dfa281fdf0f60e18d448eb78fc292c33c0f25635b6854f + version: 1.6.0 + resolution: "es-module-lexer@npm:1.6.0" + checksum: 4413a9aed9bf581de62b98174f3eea3f23ce2994fb6832df64bdd6504f6977da1a3b5ebd3c10f75e3c2f214dcf1a1d8b54be5e62c71b7110e6ccedbf975d2b7d languageName: node linkType: hard -"es-object-atoms@npm:^1.0.0": - version: 1.0.0 - resolution: "es-object-atoms@npm:1.0.0" +"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": + version: 1.1.1 + resolution: "es-object-atoms@npm:1.1.1" dependencies: es-errors: ^1.3.0 - checksum: 26f0ff78ab93b63394e8403c353842b2272836968de4eafe97656adfb8a7c84b9099bf0fe96ed58f4a4cddc860f6e34c77f91649a58a5daa4a9c40b902744e3c + checksum: 214d3767287b12f36d3d7267ef342bbbe1e89f899cfd67040309fc65032372a8e60201410a99a1645f2f90c1912c8c49c8668066f6bdd954bcd614dda2e3da97 languageName: node linkType: hard -"es-set-tostringtag@npm:^2.0.3": - version: 2.0.3 - resolution: "es-set-tostringtag@npm:2.0.3" +"es-set-tostringtag@npm:^2.1.0": + version: 2.1.0 + resolution: "es-set-tostringtag@npm:2.1.0" dependencies: - get-intrinsic: ^1.2.4 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.6 has-tostringtag: ^1.0.2 - hasown: ^2.0.1 - checksum: 7227fa48a41c0ce83e0377b11130d324ac797390688135b8da5c28994c0165be8b252e15cd1de41e1325e5a5412511586960213e88f9ab4a5e7d028895db5129 + hasown: ^2.0.2 + checksum: 789f35de4be3dc8d11fdcb91bc26af4ae3e6d602caa93299a8c45cf05d36cc5081454ae2a6d3afa09cceca214b76c046e4f8151e092e6fc7feeb5efb9e794fc6 languageName: node linkType: hard -"es-to-primitive@npm:^1.2.1": +"es-to-primitive@npm:^1.3.0": version: 1.3.0 resolution: "es-to-primitive@npm:1.3.0" dependencies: @@ -7206,35 +6734,35 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.24.2": - version: 0.24.2 - resolution: "esbuild@npm:0.24.2" - dependencies: - "@esbuild/aix-ppc64": 0.24.2 - "@esbuild/android-arm": 0.24.2 - "@esbuild/android-arm64": 0.24.2 - "@esbuild/android-x64": 0.24.2 - "@esbuild/darwin-arm64": 0.24.2 - "@esbuild/darwin-x64": 0.24.2 - "@esbuild/freebsd-arm64": 0.24.2 - "@esbuild/freebsd-x64": 0.24.2 - "@esbuild/linux-arm": 0.24.2 - "@esbuild/linux-arm64": 0.24.2 - "@esbuild/linux-ia32": 0.24.2 - "@esbuild/linux-loong64": 0.24.2 - "@esbuild/linux-mips64el": 0.24.2 - "@esbuild/linux-ppc64": 0.24.2 - "@esbuild/linux-riscv64": 0.24.2 - "@esbuild/linux-s390x": 0.24.2 - "@esbuild/linux-x64": 0.24.2 - "@esbuild/netbsd-arm64": 0.24.2 - "@esbuild/netbsd-x64": 0.24.2 - "@esbuild/openbsd-arm64": 0.24.2 - "@esbuild/openbsd-x64": 0.24.2 - "@esbuild/sunos-x64": 0.24.2 - "@esbuild/win32-arm64": 0.24.2 - "@esbuild/win32-ia32": 0.24.2 - "@esbuild/win32-x64": 0.24.2 +"esbuild@npm:^0.25.0": + version: 0.25.1 + resolution: "esbuild@npm:0.25.1" + dependencies: + "@esbuild/aix-ppc64": 0.25.1 + "@esbuild/android-arm": 0.25.1 + "@esbuild/android-arm64": 0.25.1 + "@esbuild/android-x64": 0.25.1 + "@esbuild/darwin-arm64": 0.25.1 + "@esbuild/darwin-x64": 0.25.1 + "@esbuild/freebsd-arm64": 0.25.1 + "@esbuild/freebsd-x64": 0.25.1 + "@esbuild/linux-arm": 0.25.1 + "@esbuild/linux-arm64": 0.25.1 + "@esbuild/linux-ia32": 0.25.1 + "@esbuild/linux-loong64": 0.25.1 + "@esbuild/linux-mips64el": 0.25.1 + "@esbuild/linux-ppc64": 0.25.1 + "@esbuild/linux-riscv64": 0.25.1 + "@esbuild/linux-s390x": 0.25.1 + "@esbuild/linux-x64": 0.25.1 + "@esbuild/netbsd-arm64": 0.25.1 + "@esbuild/netbsd-x64": 0.25.1 + "@esbuild/openbsd-arm64": 0.25.1 + "@esbuild/openbsd-x64": 0.25.1 + "@esbuild/sunos-x64": 0.25.1 + "@esbuild/win32-arm64": 0.25.1 + "@esbuild/win32-ia32": 0.25.1 + "@esbuild/win32-x64": 0.25.1 dependenciesMeta: "@esbuild/aix-ppc64": optional: true @@ -7288,7 +6816,7 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: e2303f8331887e31330b5a972fb9640ad93dfc5af76cb2156faa9eaa32bac5c403244096cbdafc45622829913e63664dfd88410987e3468df4354492f908a094 + checksum: c84e209259273fca0f8ba7cd00974dfff53eb3fcce5ff0f987d8231a5b49f22c16fa954f0bf06f07b00bd368270d8274feb5a09d7d5dfae0891a47dda24455a2 languageName: node linkType: hard @@ -7350,8 +6878,8 @@ __metadata: linkType: hard "eslint-plugin-prettier@npm:^5.0.0": - version: 5.2.1 - resolution: "eslint-plugin-prettier@npm:5.2.1" + version: 5.2.3 + resolution: "eslint-plugin-prettier@npm:5.2.3" dependencies: prettier-linter-helpers: ^1.0.0 synckit: ^0.9.1 @@ -7365,16 +6893,16 @@ __metadata: optional: true eslint-config-prettier: optional: true - checksum: 812f4d1596dcd3a55963212dfbd818a4b38f880741aac75f6869aa740dc5d934060674d3b85d10ff9fec424defa61967dbdef26b8a893a92c9b51880264ed0d9 + checksum: 3f3210ed6a52eb2e7cd10a635857328136149c79240627b8f5dbc6c5271d5020b17ab2e7067acc0a82fec686fa35ed182dd8d67feca41818d6a7810bf6dad2b6 languageName: node linkType: hard "eslint-plugin-react-hooks@npm:^5.0.0": - version: 5.1.0 - resolution: "eslint-plugin-react-hooks@npm:5.1.0" + version: 5.2.0 + resolution: "eslint-plugin-react-hooks@npm:5.2.0" peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 - checksum: 14d2692214ea15b19ef330a9abf51cb8c1586339d9e758ebd61b182be68dd772af56462b04e4b9d2be923d72f46db61e8d32fcf37c248b04949c0b02f5bfb3c0 + checksum: 5920736a78c0075488e7e30e04fbe5dba5b6b5a6c8c4b5742fdae6f9b8adf4ee387bc45dc6e03b4012865e6fd39d134da7b83a40f57c90cc9eecf80692824e3a languageName: node linkType: hard @@ -7598,9 +7126,9 @@ __metadata: linkType: hard "exponential-backoff@npm:^3.1.1": - version: 3.1.1 - resolution: "exponential-backoff@npm:3.1.1" - checksum: 3d21519a4f8207c99f7457287291316306255a328770d320b401114ec8481986e4e467e854cb9914dd965e0a1ca810a23ccb559c642c88f4c7f55c55778a9b48 + version: 3.1.2 + resolution: "exponential-backoff@npm:3.1.2" + checksum: 7e191e3dd6edd8c56c88f2c8037c98fbb8034fe48778be53ed8cb30ccef371a061a4e999a469aab939b92f8f12698f3b426d52f4f76b7a20da5f9f98c3cbc862 languageName: node linkType: hard @@ -7630,15 +7158,15 @@ __metadata: linkType: hard "fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.1": - version: 3.3.2 - resolution: "fast-glob@npm:3.3.2" + version: 3.3.3 + resolution: "fast-glob@npm:3.3.3" dependencies: "@nodelib/fs.stat": ^2.0.2 "@nodelib/fs.walk": ^1.2.3 glob-parent: ^5.1.2 merge2: ^1.3.0 - micromatch: ^4.0.4 - checksum: 900e4979f4dbc3313840078419245621259f349950411ca2fa445a2f9a1a6d98c3b5e7e0660c5ccd563aa61abe133a21765c6c0dec8e57da1ba71d8000b05ec1 + micromatch: ^4.0.8 + checksum: 0704d7b85c0305fd2cef37777337dfa26230fdd072dce9fb5c82a4b03156f3ffb8ed3e636033e65d45d2a5805a4e475825369a27404c0307f2db0c8eb3366fbd languageName: node linkType: hard @@ -7657,9 +7185,9 @@ __metadata: linkType: hard "fast-uri@npm:^3.0.1": - version: 3.0.3 - resolution: "fast-uri@npm:3.0.3" - checksum: c52e6c86465f5c240e84a4485fb001088cc743d261a4b54b0050ce4758b1648bdbe53da1328ef9620149dca1435e3de64184f226d7c0a3656cb5837b3491e149 + version: 3.0.6 + resolution: "fast-uri@npm:3.0.6" + checksum: 7161ba2a7944778d679ba8e5f00d6a2bb479a2142df0982f541d67be6c979b17808f7edbb0ce78161c85035974bde3fa52b5137df31da46c0828cb629ba67c4e languageName: node linkType: hard @@ -7671,11 +7199,11 @@ __metadata: linkType: hard "fastq@npm:^1.6.0": - version: 1.17.1 - resolution: "fastq@npm:1.17.1" + version: 1.19.1 + resolution: "fastq@npm:1.19.1" dependencies: reusify: ^1.0.4 - checksum: a8c5b26788d5a1763f88bae56a8ddeee579f935a831c5fe7a8268cea5b0a91fbfe705f612209e02d639b881d7b48e461a50da4a10cfaa40da5ca7cc9da098d88 + checksum: 7691d1794fb84ad0ec2a185f10e00f0e1713b894e2c9c4d42f0bc0ba5f8c00e6e655a202074ca0b91b9c3d977aab7c30c41a8dc069fb5368576ac0054870a0e6 languageName: node linkType: hard @@ -7790,9 +7318,9 @@ __metadata: linkType: hard "flatted@npm:^3.2.9": - version: 3.3.2 - resolution: "flatted@npm:3.3.2" - checksum: ac3c159742e01d0e860a861164bcfd35bb567ccbebb8a0dd041e61cf3c64a435b917dd1e7ed1c380c2ebca85735fb16644485ec33665bc6aafc3b316aa1eed44 + version: 3.3.3 + resolution: "flatted@npm:3.3.3" + checksum: 8c96c02fbeadcf4e8ffd0fa24983241e27698b0781295622591fc13585e2f226609d95e422bcf2ef044146ffacb6b68b1f20871454eddf75ab3caa6ee5f4a1fe languageName: node linkType: hard @@ -7806,33 +7334,34 @@ __metadata: languageName: node linkType: hard -"for-each@npm:^0.3.3": - version: 0.3.3 - resolution: "for-each@npm:0.3.3" +"for-each@npm:^0.3.3, for-each@npm:^0.3.5": + version: 0.3.5 + resolution: "for-each@npm:0.3.5" dependencies: - is-callable: ^1.1.3 - checksum: 6c48ff2bc63362319c65e2edca4a8e1e3483a2fabc72fbe7feaf8c73db94fc7861bd53bc02c8a66a0c1dd709da6b04eec42e0abdd6b40ce47305ae92a25e5d28 + is-callable: ^1.2.7 + checksum: 3c986d7e11f4381237cc98baa0a2f87eabe74719eee65ed7bed275163082b940ede19268c61d04c6260e0215983b12f8d885e3c8f9aa8c2113bf07c37051745c languageName: node linkType: hard "foreground-child@npm:^3.1.0": - version: 3.3.0 - resolution: "foreground-child@npm:3.3.0" + version: 3.3.1 + resolution: "foreground-child@npm:3.3.1" dependencies: - cross-spawn: ^7.0.0 + cross-spawn: ^7.0.6 signal-exit: ^4.0.1 - checksum: 1989698488f725b05b26bc9afc8a08f08ec41807cd7b92ad85d96004ddf8243fd3e79486b8348c64a3011ae5cc2c9f0936af989e1f28339805d8bc178a75b451 + checksum: b2c1a6fc0bf0233d645d9fefdfa999abf37db1b33e5dab172b3cbfb0662b88bfbd2c9e7ab853533d199050ec6b65c03fcf078fc212d26e4990220e98c6930eef languageName: node linkType: hard "form-data@npm:^4.0.0": - version: 4.0.1 - resolution: "form-data@npm:4.0.1" + version: 4.0.2 + resolution: "form-data@npm:4.0.2" dependencies: asynckit: ^0.4.0 combined-stream: ^1.0.8 + es-set-tostringtag: ^2.1.0 mime-types: ^2.1.12 - checksum: ccee458cd5baf234d6b57f349fe9cc5f9a2ea8fd1af5ecda501a18fd1572a6dd3bf08a49f00568afd995b6a65af34cb8dec083cf9d582c4e621836499498dd84 + checksum: e887298b22c13c7c9c5a8ba3716f295a479a13ca78bfd855ef11cbce1bcf22bc0ae2062e94808e21d46e5c667664a1a1a8a7f57d7040193c1fefbfb11af58aab languageName: node linkType: hard @@ -7871,13 +7400,13 @@ __metadata: linkType: hard "fs-extra@npm:^11.2.0": - version: 11.2.0 - resolution: "fs-extra@npm:11.2.0" + version: 11.3.0 + resolution: "fs-extra@npm:11.3.0" dependencies: graceful-fs: ^4.2.0 jsonfile: ^6.0.1 universalify: ^2.0.0 - checksum: b12e42fa40ba47104202f57b8480dd098aa931c2724565e5e70779ab87605665594e76ee5fb00545f772ab9ace167fe06d2ab009c416dc8c842c5ae6df7aa7e8 + checksum: f983c706e0c22b0c0747a8e9c76aed6f391ba2d76734cf2757cd84da13417b402ed68fe25bace65228856c61d36d3b41da198f1ffbf33d0b34283a2f7a62c6e9 languageName: node linkType: hard @@ -7932,15 +7461,17 @@ __metadata: languageName: node linkType: hard -"function.prototype.name@npm:^1.1.6": - version: 1.1.6 - resolution: "function.prototype.name@npm:1.1.6" +"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8": + version: 1.1.8 + resolution: "function.prototype.name@npm:1.1.8" dependencies: - call-bind: ^1.0.2 - define-properties: ^1.2.0 - es-abstract: ^1.22.1 + call-bind: ^1.0.8 + call-bound: ^1.0.3 + define-properties: ^1.2.1 functions-have-names: ^1.2.3 - checksum: 7a3f9bd98adab09a07f6e1f03da03d3f7c26abbdeaeee15223f6c04a9fb5674792bdf5e689dac19b97ac71de6aad2027ba3048a9b883aa1b3173eed6ab07f479 + hasown: ^2.0.2 + is-callable: ^1.2.7 + checksum: 3a366535dc08b25f40a322efefa83b2da3cd0f6da41db7775f2339679120ef63b6c7e967266182609e655b8f0a8f65596ed21c7fd72ad8bd5621c2340edd4010 languageName: node linkType: hard @@ -7965,16 +7496,21 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": - version: 1.2.4 - resolution: "get-intrinsic@npm:1.2.4" +"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0": + version: 1.3.0 + resolution: "get-intrinsic@npm:1.3.0" dependencies: + call-bind-apply-helpers: ^1.0.2 + es-define-property: ^1.0.1 es-errors: ^1.3.0 + es-object-atoms: ^1.1.1 function-bind: ^1.1.2 - has-proto: ^1.0.1 - has-symbols: ^1.0.3 - hasown: ^2.0.0 - checksum: 414e3cdf2c203d1b9d7d33111df746a4512a1aa622770b361dadddf8ed0b5aeb26c560f49ca077e24bfafb0acb55ca908d1f709216ccba33ffc548ec8a79a951 + get-proto: ^1.0.1 + gopd: ^1.2.0 + has-symbols: ^1.1.0 + hasown: ^2.0.2 + math-intrinsics: ^1.1.0 + checksum: 301008e4482bb9a9cb49e132b88fee093bff373b4e6def8ba219b1e96b60158a6084f273ef5cafe832e42cd93462f4accb46a618d35fe59a2b507f2388c5b79d languageName: node linkType: hard @@ -8006,6 +7542,16 @@ __metadata: languageName: node linkType: hard +"get-proto@npm:^1.0.0, get-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "get-proto@npm:1.0.1" + dependencies: + dunder-proto: ^1.0.1 + es-object-atoms: ^1.0.0 + checksum: 4fc96afdb58ced9a67558698b91433e6b037aaa6f1493af77498d7c85b141382cf223c0e5946f334fb328ee85dfe6edd06d218eaf09556f4bc4ec6005d7f5f7b + languageName: node + linkType: hard + "get-stream@npm:6.0.0": version: 6.0.0 resolution: "get-stream@npm:6.0.0" @@ -8020,14 +7566,14 @@ __metadata: languageName: node linkType: hard -"get-symbol-description@npm:^1.0.2": - version: 1.0.2 - resolution: "get-symbol-description@npm:1.0.2" +"get-symbol-description@npm:^1.1.0": + version: 1.1.0 + resolution: "get-symbol-description@npm:1.1.0" dependencies: - call-bind: ^1.0.5 + call-bound: ^1.0.3 es-errors: ^1.3.0 - get-intrinsic: ^1.2.4 - checksum: e1cb53bc211f9dbe9691a4f97a46837a553c4e7caadd0488dc24ac694db8a390b93edd412b48dcdd0b4bbb4c595de1709effc75fc87c0839deedc6968f5bd973 + get-intrinsic: ^1.2.6 + checksum: 655ed04db48ee65ef2ddbe096540d4405e79ba0a7f54225775fef43a7e2afcb93a77d141c5f05fdef0afce2eb93bcbfb3597142189d562ac167ff183582683cd languageName: node linkType: hard @@ -8249,7 +7795,7 @@ __metadata: languageName: node linkType: hard -"gopd@npm:^1.0.1, gopd@npm:^1.1.0": +"gopd@npm:^1.0.1, gopd@npm:^1.2.0": version: 1.2.0 resolution: "gopd@npm:1.2.0" checksum: cc6d8e655e360955bdccaca51a12a474268f95bb793fc3e1f2bdadb075f28bfd1fd988dab872daf77a61d78cbaf13744bc8727a17cfb1d150d76047d805375f3 @@ -8303,9 +7849,9 @@ __metadata: linkType: hard "has-bigints@npm:^1.0.2": - version: 1.0.2 - resolution: "has-bigints@npm:1.0.2" - checksum: 390e31e7be7e5c6fe68b81babb73dfc35d413604d7ee5f56da101417027a4b4ce6a27e46eff97ad040c835b5d228676eae99a9b5c3bc0e23c8e81a49241ff45b + version: 1.1.0 + resolution: "has-bigints@npm:1.1.0" + checksum: 79730518ae02c77e4af6a1d1a0b6a2c3e1509785532771f9baf0241e83e36329542c3d7a0e723df8cbc85f74eff4f177828a2265a01ba576adbdc2d40d86538b languageName: node linkType: hard @@ -8332,23 +7878,23 @@ __metadata: languageName: node linkType: hard -"has-proto@npm:^1.0.1, has-proto@npm:^1.0.3": - version: 1.1.0 - resolution: "has-proto@npm:1.1.0" +"has-proto@npm:^1.2.0": + version: 1.2.0 + resolution: "has-proto@npm:1.2.0" dependencies: - call-bind: ^1.0.7 - checksum: 0335b8acd01a0de9bb6f7f89c4ef4f1512b48cec25f1c23e847a68d65afb8c579f168907e79969b01dc7025d707b48c71d481bca140579a40d735b071b2cc1bc + dunder-proto: ^1.0.0 + checksum: f55010cb94caa56308041d77967c72a02ffd71386b23f9afa8447e58bc92d49d15c19bf75173713468e92fe3fb1680b03b115da39c21c32c74886d1d50d3e7ff languageName: node linkType: hard -"has-symbols@npm:^1.0.3": +"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": version: 1.1.0 resolution: "has-symbols@npm:1.1.0" checksum: b2316c7302a0e8ba3aaba215f834e96c22c86f192e7310bdf689dd0e6999510c89b00fbc5742571507cebf25764d68c988b3a0da217369a73596191ac0ce694b languageName: node linkType: hard -"has-tostringtag@npm:^1.0.0, has-tostringtag@npm:^1.0.2": +"has-tostringtag@npm:^1.0.2": version: 1.0.2 resolution: "has-tostringtag@npm:1.0.2" dependencies: @@ -8364,7 +7910,7 @@ __metadata: languageName: node linkType: hard -"hasown@npm:^2.0.0, hasown@npm:^2.0.1, hasown@npm:^2.0.2": +"hasown@npm:^2.0.2": version: 2.0.2 resolution: "hasown@npm:2.0.2" dependencies: @@ -8472,12 +8018,12 @@ __metadata: linkType: hard "https-proxy-agent@npm:^7.0.1": - version: 7.0.5 - resolution: "https-proxy-agent@npm:7.0.5" + version: 7.0.6 + resolution: "https-proxy-agent@npm:7.0.6" dependencies: - agent-base: ^7.0.2 + agent-base: ^7.1.2 debug: 4 - checksum: 2e1a28960f13b041a50702ee74f240add8e75146a5c37fc98f1960f0496710f6918b3a9fe1e5aba41e50f58e6df48d107edd9c405c5f0d73ac260dabf2210857 + checksum: b882377a120aa0544846172e5db021fa8afbf83fea2a897d397bd2ddd8095ab268c24bc462f40a15f2a8c600bf4aa05ce52927f70038d4014e68aefecfa94e8d languageName: node linkType: hard @@ -8548,12 +8094,12 @@ __metadata: linkType: hard "import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": - version: 3.3.0 - resolution: "import-fresh@npm:3.3.0" + version: 3.3.1 + resolution: "import-fresh@npm:3.3.1" dependencies: parent-module: ^1.0.0 resolve-from: ^4.0.0 - checksum: 2cacfad06e652b1edc50be650f7ec3be08c5e5a6f6d12d035c440a42a8cc028e60a5b99ca08a77ab4d6b1346da7d971915828f33cdab730d3d42f08242d09baa + checksum: a06b19461b4879cc654d46f8a6244eb55eb053437afd4cbb6613cad6be203811849ed3e4ea038783092879487299fda24af932b86bdfff67c9055ba3612b8c87 languageName: node linkType: hard @@ -8678,14 +8224,14 @@ __metadata: languageName: node linkType: hard -"internal-slot@npm:^1.0.7": - version: 1.0.7 - resolution: "internal-slot@npm:1.0.7" +"internal-slot@npm:^1.1.0": + version: 1.1.0 + resolution: "internal-slot@npm:1.1.0" dependencies: es-errors: ^1.3.0 - hasown: ^2.0.0 - side-channel: ^1.0.4 - checksum: cadc5eea5d7d9bc2342e93aae9f31f04c196afebb11bde97448327049f492cd7081e18623ae71388aac9cd237b692ca3a105be9c68ac39c1dec679d7409e33eb + hasown: ^2.0.2 + side-channel: ^1.1.0 + checksum: 8e0991c2d048cc08dab0a91f573c99f6a4215075887517ea4fa32203ce8aea60fa03f95b177977fa27eb502e5168366d0f3e02c762b799691411d49900611861 languageName: node linkType: hard @@ -8706,13 +8252,14 @@ __metadata: languageName: node linkType: hard -"is-array-buffer@npm:^3.0.4": - version: 3.0.4 - resolution: "is-array-buffer@npm:3.0.4" +"is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5": + version: 3.0.5 + resolution: "is-array-buffer@npm:3.0.5" dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.2.1 - checksum: e4e3e6ef0ff2239e75371d221f74bc3c26a03564a22efb39f6bb02609b598917ddeecef4e8c877df2a25888f247a98198959842a5e73236bc7f22cabdf6351a7 + call-bind: ^1.0.8 + call-bound: ^1.0.3 + get-intrinsic: ^1.2.6 + checksum: f137a2a6e77af682cdbffef1e633c140cf596f72321baf8bba0f4ef22685eb4339dde23dfe9e9ca430b5f961dee4d46577dcf12b792b68518c8449b134fb9156 languageName: node linkType: hard @@ -8724,11 +8271,15 @@ __metadata: linkType: hard "is-async-function@npm:^2.0.0": - version: 2.0.0 - resolution: "is-async-function@npm:2.0.0" + version: 2.1.1 + resolution: "is-async-function@npm:2.1.1" dependencies: - has-tostringtag: ^1.0.0 - checksum: e3471d95e6c014bf37cad8a93f2f4b6aac962178e0a5041e8903147166964fdc1c5c1d2ef87e86d77322c370ca18f2ea004fa7420581fa747bcaf7c223069dbd + async-function: ^1.0.0 + call-bound: ^1.0.3 + get-proto: ^1.0.1 + has-tostringtag: ^1.0.2 + safe-regex-test: ^1.1.0 + checksum: 9bece45133da26636488ca127d7686b85ad3ca18927e2850cff1937a650059e90be1c71a48623f8791646bb7a241b0cabf602a0b9252dcfa5ab273f2399000e6 languageName: node linkType: hard @@ -8741,17 +8292,17 @@ __metadata: languageName: node linkType: hard -"is-boolean-object@npm:^1.2.0": - version: 1.2.0 - resolution: "is-boolean-object@npm:1.2.0" +"is-boolean-object@npm:^1.2.1": + version: 1.2.2 + resolution: "is-boolean-object@npm:1.2.2" dependencies: - call-bind: ^1.0.7 + call-bound: ^1.0.3 has-tostringtag: ^1.0.2 - checksum: cebc780cc3881dfb0c6c933e308f6a8eccf07ef92a7ea533fb2ee4fb7d704473b476f0b345fea4f2f45fe70937ef568a2f450eb6000d08b99350d87280927ff8 + checksum: 0415b181e8f1bfd5d3f8a20f8108e64d372a72131674eea9c2923f39d065b6ad08d654765553bdbffbd92c3746f1007986c34087db1bd89a31f71be8359ccdaa languageName: node linkType: hard -"is-callable@npm:^1.1.3, is-callable@npm:^1.2.7": +"is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" checksum: 61fd57d03b0d984e2ed3720fb1c7a897827ea174bd44402878e059542ea8c4aeedee0ea0985998aa5cc2736b2fa6e271c08587addb5b3959ac52cf665173d1ac @@ -8769,16 +8320,7 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.13.0, is-core-module@npm:^2.5.0": - version: 2.15.1 - resolution: "is-core-module@npm:2.15.1" - dependencies: - hasown: ^2.0.2 - checksum: df134c168115690724b62018c37b2f5bba0d5745fa16960b329c5a00883a8bea6a5632fdb1e3efcce237c201826ba09f93197b7cd95577ea56b0df335be23633 - languageName: node - linkType: hard - -"is-core-module@npm:^2.16.0": +"is-core-module@npm:^2.16.0, is-core-module@npm:^2.5.0": version: 2.16.1 resolution: "is-core-module@npm:2.16.1" dependencies: @@ -8787,21 +8329,24 @@ __metadata: languageName: node linkType: hard -"is-data-view@npm:^1.0.1": - version: 1.0.1 - resolution: "is-data-view@npm:1.0.1" +"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2": + version: 1.0.2 + resolution: "is-data-view@npm:1.0.2" dependencies: + call-bound: ^1.0.2 + get-intrinsic: ^1.2.6 is-typed-array: ^1.1.13 - checksum: 4ba4562ac2b2ec005fefe48269d6bd0152785458cd253c746154ffb8a8ab506a29d0cfb3b74af87513843776a88e4981ae25c89457bf640a33748eab1a7216b5 + checksum: 31600dd19932eae7fd304567e465709ffbfa17fa236427c9c864148e1b54eb2146357fcf3aed9b686dee13c217e1bb5a649cb3b9c479e1004c0648e9febde1b2 languageName: node linkType: hard -"is-date-object@npm:^1.0.5": - version: 1.0.5 - resolution: "is-date-object@npm:1.0.5" +"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0": + version: 1.1.0 + resolution: "is-date-object@npm:1.1.0" dependencies: - has-tostringtag: ^1.0.0 - checksum: baa9077cdf15eb7b58c79398604ca57379b2fc4cf9aa7a9b9e295278648f628c9b201400c01c5e0f7afae56507d741185730307cbe7cad3b9f90a77e5ee342fc + call-bound: ^1.0.2 + has-tostringtag: ^1.0.2 + checksum: d6c36ab9d20971d65f3fc64cef940d57a4900a2ac85fb488a46d164c2072a33da1cb51eefcc039e3e5c208acbce343d3480b84ab5ff0983f617512da2742562a languageName: node linkType: hard @@ -8822,11 +8367,11 @@ __metadata: linkType: hard "is-finalizationregistry@npm:^1.1.0": - version: 1.1.0 - resolution: "is-finalizationregistry@npm:1.1.0" + version: 1.1.1 + resolution: "is-finalizationregistry@npm:1.1.1" dependencies: - call-bind: ^1.0.7 - checksum: 480818ab86e112a00444410a2fd551a5363bca0c39c7bc66e29df665b1e47c803ba107227c1db86d67264a3f020779fab257061463ce02b01b6abbe5966e33b8 + call-bound: ^1.0.3 + checksum: 38c646c506e64ead41a36c182d91639833311970b6b6c6268634f109eef0a1a9d2f1f2e499ef4cb43c744a13443c4cdd2f0812d5afdcee5e9b65b72b28c48557 languageName: node linkType: hard @@ -8845,11 +8390,14 @@ __metadata: linkType: hard "is-generator-function@npm:^1.0.10": - version: 1.0.10 - resolution: "is-generator-function@npm:1.0.10" + version: 1.1.0 + resolution: "is-generator-function@npm:1.1.0" dependencies: - has-tostringtag: ^1.0.0 - checksum: d54644e7dbaccef15ceb1e5d91d680eb5068c9ee9f9eb0a9e04173eb5542c9b51b5ab52c5537f5703e48d5fddfd376817c1ca07a84a407b7115b769d4bdde72b + call-bound: ^1.0.3 + get-proto: ^1.0.0 + has-tostringtag: ^1.0.2 + safe-regex-test: ^1.1.0 + checksum: f7f7276131bdf7e28169b86ac55a5b080012a597f9d85a0cbef6fe202a7133fa450a3b453e394870e3cb3685c5a764c64a9f12f614684b46969b1e6f297bed6b languageName: node linkType: hard @@ -8883,20 +8431,13 @@ __metadata: languageName: node linkType: hard -"is-negative-zero@npm:^2.0.3": - version: 2.0.3 - resolution: "is-negative-zero@npm:2.0.3" - checksum: c1e6b23d2070c0539d7b36022d5a94407132411d01aba39ec549af824231f3804b1aea90b5e4e58e807a65d23ceb538ed6e355ce76b267bdd86edb757ffcbdcd - languageName: node - linkType: hard - -"is-number-object@npm:^1.1.0": - version: 1.1.0 - resolution: "is-number-object@npm:1.1.0" +"is-number-object@npm:^1.1.1": + version: 1.1.1 + resolution: "is-number-object@npm:1.1.1" dependencies: - call-bind: ^1.0.7 + call-bound: ^1.0.3 has-tostringtag: ^1.0.2 - checksum: 965f91493e5c02a44bb9c5d8dd4ae40da20bd9bd1cff9cd92e2f2e66a486935a0a01f8a4744eab033c450888f01a4ec3226e1c75bbcff973ce12d06ed79eb17b + checksum: 6517f0a0e8c4b197a21afb45cd3053dc711e79d45d8878aa3565de38d0102b130ca8732485122c7b336e98c27dacd5236854e3e6526e0eb30cae64956535662f languageName: node linkType: hard @@ -8951,15 +8492,15 @@ __metadata: languageName: node linkType: hard -"is-regex@npm:^1.1.4": - version: 1.2.0 - resolution: "is-regex@npm:1.2.0" +"is-regex@npm:^1.2.1": + version: 1.2.1 + resolution: "is-regex@npm:1.2.1" dependencies: - call-bind: ^1.0.7 - gopd: ^1.1.0 + call-bound: ^1.0.2 + gopd: ^1.2.0 has-tostringtag: ^1.0.2 hasown: ^2.0.2 - checksum: dd2693d71866850d1276815204a2629d28dc1d24bd56b734e57a39f56b777cd87030d57552e7093d91a2ac331d99af9dba49a0a641fa4e4435d40e944d4dde12 + checksum: 99ee0b6d30ef1bb61fa4b22fae7056c6c9b3c693803c0c284ff7a8570f83075a7d38cda53b06b7996d441215c27895ea5d1af62124562e13d91b3dbec41a5e13 languageName: node linkType: hard @@ -8970,21 +8511,21 @@ __metadata: languageName: node linkType: hard -"is-shared-array-buffer@npm:^1.0.2, is-shared-array-buffer@npm:^1.0.3": - version: 1.0.3 - resolution: "is-shared-array-buffer@npm:1.0.3" +"is-shared-array-buffer@npm:^1.0.4": + version: 1.0.4 + resolution: "is-shared-array-buffer@npm:1.0.4" dependencies: - call-bind: ^1.0.7 - checksum: a4fff602c309e64ccaa83b859255a43bb011145a42d3f56f67d9268b55bc7e6d98a5981a1d834186ad3105d6739d21547083fe7259c76c0468483fc538e716d8 + call-bound: ^1.0.3 + checksum: 1611fedc175796eebb88f4dfc393dd969a4a8e6c69cadaff424ee9d4464f9f026399a5f84a90f7c62d6d7ee04e3626a912149726de102b0bd6c1ee6a9868fa5a languageName: node linkType: hard "is-ssh@npm:^1.4.0": - version: 1.4.0 - resolution: "is-ssh@npm:1.4.0" + version: 1.4.1 + resolution: "is-ssh@npm:1.4.1" dependencies: protocols: ^2.0.1 - checksum: 75eaa17b538bee24b661fbeb0f140226ac77e904a6039f787bea418431e2162f1f9c4c4ccad3bd169e036cd701cc631406e8c505d9fa7e20164e74b47f86f40f + checksum: 005b461ac444398eb8b7cd2f489288e49dd18c8b6cbf1eb20767f9b79f330ab6e3308b2dac8ec6ca2a950d2a368912e0e992e2474bc1b5204693abb6226c1431 languageName: node linkType: hard @@ -9002,24 +8543,24 @@ __metadata: languageName: node linkType: hard -"is-string@npm:^1.0.7, is-string@npm:^1.1.0": - version: 1.1.0 - resolution: "is-string@npm:1.1.0" +"is-string@npm:^1.1.1": + version: 1.1.1 + resolution: "is-string@npm:1.1.1" dependencies: - call-bind: ^1.0.7 + call-bound: ^1.0.3 has-tostringtag: ^1.0.2 - checksum: 1e330e9fe0984cdf37371f704f9babf9b56d50b1e9d2e6c19b8b78443be3e9771c33309b4aadde9ba2a8870769374538681e01f54113a335dd393c80a72e7d11 + checksum: 2eeaaff605250f5e836ea3500d33d1a5d3aa98d008641d9d42fb941e929ffd25972326c2ef912987e54c95b6f10416281aaf1b35cdf81992cfb7524c5de8e193 languageName: node linkType: hard -"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.0": - version: 1.1.0 - resolution: "is-symbol@npm:1.1.0" +"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": + version: 1.1.1 + resolution: "is-symbol@npm:1.1.1" dependencies: - call-bind: ^1.0.7 - has-symbols: ^1.0.3 - safe-regex-test: ^1.0.3 - checksum: 3623c934c8e61ddd6ef0927a17eb3da3cb9a9894f2fb8a96d447887d085d43e5d8bb59a8f97e46b54a919fc3f8845df29686672ad693d028570627bc661bcb6c + call-bound: ^1.0.2 + has-symbols: ^1.1.0 + safe-regex-test: ^1.1.0 + checksum: bfafacf037af6f3c9d68820b74be4ae8a736a658a3344072df9642a090016e281797ba8edbeb1c83425879aae55d1cb1f30b38bf132d703692b2570367358032 languageName: node linkType: hard @@ -9032,12 +8573,12 @@ __metadata: languageName: node linkType: hard -"is-typed-array@npm:^1.1.13": - version: 1.1.13 - resolution: "is-typed-array@npm:1.1.13" +"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15": + version: 1.1.15 + resolution: "is-typed-array@npm:1.1.15" dependencies: - which-typed-array: ^1.1.14 - checksum: 150f9ada183a61554c91e1c4290086d2c100b0dff45f60b028519be72a8db964da403c48760723bf5253979b8dffe7b544246e0e5351dcd05c5fdb1dcc1dc0f0 + which-typed-array: ^1.1.16 + checksum: ea7cfc46c282f805d19a9ab2084fd4542fed99219ee9dbfbc26284728bd713a51eac66daa74eca00ae0a43b61322920ba334793607dc39907465913e921e0892 languageName: node linkType: hard @@ -9055,22 +8596,22 @@ __metadata: languageName: node linkType: hard -"is-weakref@npm:^1.0.2": - version: 1.0.2 - resolution: "is-weakref@npm:1.0.2" +"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.0": + version: 1.1.1 + resolution: "is-weakref@npm:1.1.1" dependencies: - call-bind: ^1.0.2 - checksum: 95bd9a57cdcb58c63b1c401c60a474b0f45b94719c30f548c891860f051bc2231575c290a6b420c6bc6e7ed99459d424c652bd5bf9a1d5259505dc35b4bf83de + call-bound: ^1.0.3 + checksum: 1769b9aed5d435a3a989ffc18fc4ad1947d2acdaf530eb2bd6af844861b545047ea51102f75901f89043bed0267ed61d914ee21e6e8b9aa734ec201cdfc0726f languageName: node linkType: hard "is-weakset@npm:^2.0.3": - version: 2.0.3 - resolution: "is-weakset@npm:2.0.3" + version: 2.0.4 + resolution: "is-weakset@npm:2.0.4" dependencies: - call-bind: ^1.0.7 - get-intrinsic: ^1.2.4 - checksum: 8b6a20ee9f844613ff8f10962cfee49d981d584525f2357fee0a04dfbcde9fd607ed60cb6dab626dbcc470018ae6392e1ff74c0c1aced2d487271411ad9d85ae + call-bound: ^1.0.3 + get-intrinsic: ^1.2.6 + checksum: 5c6c8415a06065d78bdd5e3a771483aa1cd928df19138aa73c4c51333226f203f22117b4325df55cc8b3085a6716870a320c2d757efee92d7a7091a039082041 languageName: node linkType: hard @@ -10055,16 +9596,16 @@ __metadata: linkType: hard "lerna@npm:^8.1.9": - version: 8.1.9 - resolution: "lerna@npm:8.1.9" + version: 8.2.1 + resolution: "lerna@npm:8.2.1" dependencies: - "@lerna/create": 8.1.9 + "@lerna/create": 8.2.1 "@npmcli/arborist": 7.5.4 "@npmcli/package-json": 5.2.0 "@npmcli/run-script": 8.1.0 "@nx/devkit": ">=17.1.2 < 21" "@octokit/plugin-enterprise-rest": 6.0.1 - "@octokit/rest": 19.0.11 + "@octokit/rest": 20.1.2 aproba: 2.0.0 byte-size: 8.1.1 chalk: 4.1.0 @@ -10125,7 +9666,6 @@ __metadata: slash: 3.0.0 ssri: ^10.0.6 string-width: ^4.2.3 - strip-ansi: ^6.0.1 strong-log-transformer: 2.1.0 tar: 6.2.1 temp-dir: 1.0.0 @@ -10141,7 +9681,7 @@ __metadata: yargs-parser: 21.1.1 bin: lerna: dist/cli.js - checksum: 2e604325eb455f34b021ccf95ef94796a84ba1dc20f1c2bfa9f74f9e337cdb41ab0d6d997971424ec8b9967b45c55ca0b318432bc7f3de7f92333ba6b65bf82a + checksum: b25006e19c2c2b5c8b6b5fde2ea215fd9cf659e3502c657c8500c1dd2dfc9f5124d97e919709f0de21bf3d6d6a06726252b0ca09d7b4880a3f03fda77869fa44 languageName: node linkType: hard @@ -10162,7 +9702,7 @@ __metadata: languageName: node linkType: hard -"lib0@npm:^0.2.85, lib0@npm:^0.2.98": +"lib0@npm:^0.2.85, lib0@npm:^0.2.99": version: 0.2.99 resolution: "lib0@npm:0.2.99" dependencies: @@ -10407,15 +9947,6 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.30.2": - version: 0.30.17 - resolution: "magic-string@npm:0.30.17" - dependencies: - "@jridgewell/sourcemap-codec": ^1.5.0 - checksum: f4b4ed17c5ada64f77fc98491847302ebad64894a905c417c943840c0384662118c9b37f9f68bb86add159fa4749ff6f118c4627d69a470121b46731f8debc6d - languageName: node - linkType: hard - "make-dir@npm:4.0.0, make-dir@npm:^4.0.0": version: 4.0.0 resolution: "make-dir@npm:4.0.0" @@ -10505,11 +10036,18 @@ __metadata: linkType: hard "markdown-to-jsx@npm:^7.4.1": - version: 7.7.1 - resolution: "markdown-to-jsx@npm:7.7.1" + version: 7.7.4 + resolution: "markdown-to-jsx@npm:7.7.4" peerDependencies: react: ">= 0.14.0" - checksum: 04e9f456597725db8c86548c316bb955920ed2fc957cdc96fc6c7ed35f7a559b23034108356c2bdd1e32f2b7ba175aec6eb7bd4eee58aae591a444e40c6540da + checksum: e7aaef2a85a7825c5f4cbf394fbd9ed51c45a29288e7b7e88cde63eef3f233448ecf3b9367f9eba2a5eea35db21b7ec06f96ac4a4c035643059c065ed4e6083b + languageName: node + linkType: hard + +"math-intrinsics@npm:^1.1.0": + version: 1.1.0 + resolution: "math-intrinsics@npm:1.1.0" + checksum: 0e513b29d120f478c85a70f49da0b8b19bc638975eca466f2eeae0071f3ad00454c621bf66e16dd435896c208e719fc91ad79bbfba4e400fe0b372e7c1c9c9a2 languageName: node linkType: hard @@ -10587,7 +10125,7 @@ __metadata: languageName: node linkType: hard -"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5": +"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": version: 4.0.8 resolution: "micromatch@npm:4.0.8" dependencies: @@ -10745,8 +10283,8 @@ __metadata: linkType: hard "minipass-fetch@npm:^4.0.0": - version: 4.0.0 - resolution: "minipass-fetch@npm:4.0.0" + version: 4.0.1 + resolution: "minipass-fetch@npm:4.0.1" dependencies: encoding: ^0.1.13 minipass: ^7.0.3 @@ -10755,7 +10293,7 @@ __metadata: dependenciesMeta: encoding: optional: true - checksum: 7d59a31011ab9e4d1af6562dd4c4440e425b2baf4c5edbdd2e22fb25a88629e1cdceca39953ff209da504a46021df520f18fd9a519f36efae4750ff724ddadea + checksum: 3dfca705ce887ca9ff14d73e8d8593996dea1a1ecd8101fdbb9c10549d1f9670bc8fb66ad0192769ead4c2dc01b4f9ca1cf567ded365adff17827a303b948140 languageName: node linkType: hard @@ -10896,11 +10434,11 @@ __metadata: linkType: hard "nanoid@npm:^3.3.7, nanoid@npm:^3.3.8": - version: 3.3.8 - resolution: "nanoid@npm:3.3.8" + version: 3.3.9 + resolution: "nanoid@npm:3.3.9" bin: nanoid: bin/nanoid.cjs - checksum: dfe0adbc0c77e9655b550c333075f51bb28cfc7568afbf3237249904f9c86c9aaaed1f113f0fddddba75673ee31c758c30c43d4414f014a52a7a626efc5958c9 + checksum: 42b1dc3e05d6d4f846e65538dd6fbdf78419d8ef60c531f0faf3264cc90600041ebb53c4276013947e03dc3c9a1ac1fce5bb9e1c3a634db608e95349d7e9d3b6 languageName: node linkType: hard @@ -10953,20 +10491,6 @@ __metadata: languageName: node linkType: hard -"node-fetch@npm:^2.6.7": - version: 2.7.0 - resolution: "node-fetch@npm:2.7.0" - dependencies: - whatwg-url: ^5.0.0 - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - checksum: d76d2f5edb451a3f05b15115ec89fc6be39de37c6089f1b6368df03b91e1633fd379a7e01b7ab05089a25034b2023d959b47e59759cb38d88341b2459e89d6e5 - languageName: node - linkType: hard - "node-gyp@npm:^10.0.0": version: 10.3.1 resolution: "node-gyp@npm:10.3.1" @@ -10988,8 +10512,8 @@ __metadata: linkType: hard "node-gyp@npm:latest": - version: 11.0.0 - resolution: "node-gyp@npm:11.0.0" + version: 11.1.0 + resolution: "node-gyp@npm:11.1.0" dependencies: env-paths: ^2.2.0 exponential-backoff: ^3.1.1 @@ -11003,7 +10527,7 @@ __metadata: which: ^5.0.0 bin: node-gyp: bin/node-gyp.js - checksum: d7d5055ccc88177f721c7cd4f8f9440c29a0eb40e7b79dba89ef882ec957975dfc1dcb8225e79ab32481a02016eb13bbc051a913ea88d482d3cbdf2131156af4 + checksum: b196da39a7a45f302d6e03cfdb579eeecbfffa1ab3796de45652c2c0dcbf46b83fde715b054e4d00aa53da5f33033ac5791e20cbb7cc11267dac4f8975ef276c languageName: node linkType: hard @@ -11021,13 +10545,6 @@ __metadata: languageName: node linkType: hard -"node-releases@npm:^2.0.18": - version: 2.0.18 - resolution: "node-releases@npm:2.0.18" - checksum: ef55a3d853e1269a6d6279b7692cd6ff3e40bc74947945101138745bfdc9a5edabfe72cb19a31a8e45752e1910c4c65c77d931866af6357f242b172b7283f5b3 - languageName: node - linkType: hard - "node-releases@npm:^2.0.19": version: 2.0.19 resolution: "node-releases@npm:2.0.19" @@ -11047,13 +10564,13 @@ __metadata: linkType: hard "nopt@npm:^8.0.0": - version: 8.0.0 - resolution: "nopt@npm:8.0.0" + version: 8.1.0 + resolution: "nopt@npm:8.1.0" dependencies: - abbrev: ^2.0.0 + abbrev: ^3.0.0 bin: nopt: bin/nopt.js - checksum: 2cfc65e7ee38af2e04aea98f054753b0230011c0eeca4ecf131bd7d25984cbbf6f214586e0ae5dfcc2e830bc0bffa5a7fb28ea8d0b306ffd4ae8ea2d814c1ab3 + checksum: 49cfd3eb6f565e292bf61f2ff1373a457238804d5a5a63a8d786c923007498cba89f3648e3b952bc10203e3e7285752abf5b14eaf012edb821e84f24e881a92a languageName: node linkType: hard @@ -11244,27 +10761,27 @@ __metadata: linkType: hard "nwsapi@npm:^2.2.2": - version: 2.2.16 - resolution: "nwsapi@npm:2.2.16" - checksum: 467b36a74b7b8647d53fd61d05ca7d6c73a4a5d1b94ea84f770c03150b00ef46d38076cf8e708936246ae450c42a1f21e28e153023719784dc4d1a19b1737d47 + version: 2.2.18 + resolution: "nwsapi@npm:2.2.18" + checksum: 19dab3b9e86d45c6b856540fa55058b2a13d7dbd4b4b9d05232435879cc3449917fcac4855574d5fa49186caf78ead2103b53f96b76dd0181e13b61444668add languageName: node linkType: hard "nx@npm:>=17.1.2 < 21": - version: 20.1.4 - resolution: "nx@npm:20.1.4" + version: 20.5.0 + resolution: "nx@npm:20.5.0" dependencies: "@napi-rs/wasm-runtime": 0.2.4 - "@nx/nx-darwin-arm64": 20.1.4 - "@nx/nx-darwin-x64": 20.1.4 - "@nx/nx-freebsd-x64": 20.1.4 - "@nx/nx-linux-arm-gnueabihf": 20.1.4 - "@nx/nx-linux-arm64-gnu": 20.1.4 - "@nx/nx-linux-arm64-musl": 20.1.4 - "@nx/nx-linux-x64-gnu": 20.1.4 - "@nx/nx-linux-x64-musl": 20.1.4 - "@nx/nx-win32-arm64-msvc": 20.1.4 - "@nx/nx-win32-x64-msvc": 20.1.4 + "@nx/nx-darwin-arm64": 20.5.0 + "@nx/nx-darwin-x64": 20.5.0 + "@nx/nx-freebsd-x64": 20.5.0 + "@nx/nx-linux-arm-gnueabihf": 20.5.0 + "@nx/nx-linux-arm64-gnu": 20.5.0 + "@nx/nx-linux-arm64-musl": 20.5.0 + "@nx/nx-linux-x64-gnu": 20.5.0 + "@nx/nx-linux-x64-musl": 20.5.0 + "@nx/nx-win32-arm64-msvc": 20.5.0 + "@nx/nx-win32-x64-msvc": 20.5.0 "@yarnpkg/lockfile": ^1.1.0 "@yarnpkg/parsers": 3.0.2 "@zkochan/js-yaml": 0.0.7 @@ -11288,12 +10805,14 @@ __metadata: npm-run-path: ^4.0.1 open: ^8.4.0 ora: 5.3.0 + resolve.exports: 2.0.3 semver: ^7.5.3 string-width: ^4.2.3 tar-stream: ~2.2.0 tmp: ~0.2.1 tsconfig-paths: ^4.1.2 tslib: ^2.3.0 + yaml: ^2.6.0 yargs: ^17.6.2 yargs-parser: 21.1.1 peerDependencies: @@ -11328,7 +10847,7 @@ __metadata: bin: nx: bin/nx.js nx-cloud: bin/nx-cloud.js - checksum: 51167c19debae6b0b1d48cf21fc921304ec80b8db0acb06562e05ee33e728cc1ca35ce68a885179d40e4fda243a3d7b4f57d7096bee1bebb5988e8878c7bb502 + checksum: ec34ef50d056be5f006ebfefa1fc8c49884aec67fa94d060b2ff6aa5e6e25ac989211d91bbff66c2696bf3fcb73cb958968cba09de3e71d9bce0c5faef839924 languageName: node linkType: hard @@ -11339,10 +10858,10 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.13.1, object-inspect@npm:^1.13.3": - version: 1.13.3 - resolution: "object-inspect@npm:1.13.3" - checksum: 8c962102117241e18ea403b84d2521f78291b774b03a29ee80a9863621d88265ffd11d0d7e435c4c2cea0dc2a2fbf8bbc92255737a05536590f2df2e8756f297 +"object-inspect@npm:^1.13.3": + version: 1.13.4 + resolution: "object-inspect@npm:1.13.4" + checksum: 582810c6a8d2ef988ea0a39e69e115a138dad8f42dd445383b394877e5816eb4268489f316a6f74ee9c4e0a984b3eab1028e3e79d62b1ed67c726661d55c7a8b languageName: node linkType: hard @@ -11353,15 +10872,17 @@ __metadata: languageName: node linkType: hard -"object.assign@npm:^4.1.5": - version: 4.1.5 - resolution: "object.assign@npm:4.1.5" +"object.assign@npm:^4.1.7": + version: 4.1.7 + resolution: "object.assign@npm:4.1.7" dependencies: - call-bind: ^1.0.5 + call-bind: ^1.0.8 + call-bound: ^1.0.3 define-properties: ^1.2.1 - has-symbols: ^1.0.3 + es-object-atoms: ^1.0.0 + has-symbols: ^1.1.0 object-keys: ^1.1.1 - checksum: f9aeac0541661370a1fc86e6a8065eb1668d3e771f7dbb33ee54578201336c057b21ee61207a186dd42db0c62201d91aac703d20d12a79fc79c353eed44d4e25 + checksum: 60e07d2651cf4f5528c485f1aa4dbded9b384c47d80e8187cefd11320abb1aebebf78df5483451dfa549059f8281c21f7b4bf7d19e9e5e97d8d617df0df298de languageName: node linkType: hard @@ -11448,6 +10969,17 @@ __metadata: languageName: node linkType: hard +"own-keys@npm:^1.0.1": + version: 1.0.1 + resolution: "own-keys@npm:1.0.1" + dependencies: + get-intrinsic: ^1.2.6 + object-keys: ^1.1.1 + safe-push-apply: ^1.0.0 + checksum: cc9dd7d85c4ccfbe8109fce307d581ac7ede7b26de892b537873fbce2dc6a206d89aea0630dbb98e47ce0873517cefeaa7be15fcf94aaf4764a3b34b474a5b61 + languageName: node + linkType: hard + "p-finally@npm:^1.0.0": version: 1.0.0 resolution: "p-finally@npm:1.0.0" @@ -11526,9 +11058,9 @@ __metadata: linkType: hard "p-map@npm:^7.0.2": - version: 7.0.2 - resolution: "p-map@npm:7.0.2" - checksum: bc128c2b244ef5d4619392b2247d718a3fe471d5fa4a73834fd96182a237f460ec7e0ad0f95139ef7103a6b50ed164228c62e2f8e41ba2b15360fe1c20d13563 + version: 7.0.3 + resolution: "p-map@npm:7.0.3" + checksum: 8c92d533acf82f0d12f7e196edccff773f384098bbb048acdd55a08778ce4fc8889d8f1bde72969487bd96f9c63212698d79744c20bedfce36c5b00b46d369f8 languageName: node linkType: hard @@ -11665,11 +11197,11 @@ __metadata: linkType: hard "parse-path@npm:^7.0.0": - version: 7.0.0 - resolution: "parse-path@npm:7.0.0" + version: 7.0.1 + resolution: "parse-path@npm:7.0.1" dependencies: protocols: ^2.0.0 - checksum: 244b46523a58181d251dda9b888efde35d8afb957436598d948852f416d8c76ddb4f2010f9fc94218b4be3e5c0f716aa0d2026194a781e3b8981924142009302 + checksum: a3aa6776df12f26b09bc9f6e510f3e4b27d7a38d8f13081e696059d415eea2d5a073fc4a8d3b9d1b6818591a986198a7f0016ae70fe75410af4c439a3a12b56a languageName: node linkType: hard @@ -11773,7 +11305,7 @@ __metadata: languageName: node linkType: hard -"picocolors@npm:^1.0.0, picocolors@npm:^1.1.0, picocolors@npm:^1.1.1": +"picocolors@npm:^1.0.0, picocolors@npm:^1.1.1": version: 1.1.1 resolution: "picocolors@npm:1.1.1" checksum: e1cf46bf84886c79055fdfa9dcb3e4711ad259949e3565154b004b260cd356c5d54b31a1437ce9782624bf766272fe6b0154f5f0c744fb7af5d454d2b60db045 @@ -11850,9 +11382,9 @@ __metadata: linkType: hard "possible-typed-array-names@npm:^1.0.0": - version: 1.0.0 - resolution: "possible-typed-array-names@npm:1.0.0" - checksum: b32d403ece71e042385cc7856385cecf1cd8e144fa74d2f1de40d1e16035dba097bc189715925e79b67bdd1472796ff168d3a90d296356c9c94d272d5b95f3ae + version: 1.1.0 + resolution: "possible-typed-array-names@npm:1.1.0" + checksum: cfcd4f05264eee8fd184cd4897a17890561d1d473434b43ab66ad3673d9c9128981ec01e0cb1d65a52cd6b1eebfb2eae1e53e39b2e0eca86afc823ede7a4f41b languageName: node linkType: hard @@ -11866,15 +11398,15 @@ __metadata: linkType: hard "postcss-modules-local-by-default@npm:^4.0.5": - version: 4.1.0 - resolution: "postcss-modules-local-by-default@npm:4.1.0" + version: 4.2.0 + resolution: "postcss-modules-local-by-default@npm:4.2.0" dependencies: icss-utils: ^5.0.0 postcss-selector-parser: ^7.0.0 postcss-value-parser: ^4.1.0 peerDependencies: postcss: ^8.1.0 - checksum: 64ac4803c21dd82e227179cf0a8489c645ea99a8c514475da028c9afe5d5b915485d00d8efbe94295d688a23a172965cc15f20d550168d1fed272dbdbbe053f0 + checksum: 720d145453f82ad5f1c1d0ff7386d64722f0812808e4132e573c1a49909745e109fcce3792a0b0cb18770dbeb3d9741867e81c698dc8353a18bc664b7d6d9533 languageName: node linkType: hard @@ -11927,12 +11459,12 @@ __metadata: linkType: hard "postcss-selector-parser@npm:^7.0.0": - version: 7.0.0 - resolution: "postcss-selector-parser@npm:7.0.0" + version: 7.1.0 + resolution: "postcss-selector-parser@npm:7.1.0" dependencies: cssesc: ^3.0.0 util-deprecate: ^1.0.2 - checksum: f906b7449fcbe9fa6ae739b6fc324ee3c6201aaf5224f26da27de64ccba68d878d734dd182a467881e463f7ede08972d0129b0cc4d6b671d78c6492cddcef154 + checksum: 1300e7871dd60a5132ee5462cc6e94edd4f3df28462b2495ca9ff025bd83768a908e892a18fde62cae63ff63524641baa6d58c64120f04fe6884b916663ce737 languageName: node linkType: hard @@ -11943,25 +11475,14 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33": - version: 8.4.49 - resolution: "postcss@npm:8.4.49" - dependencies: - nanoid: ^3.3.7 - picocolors: ^1.1.1 - source-map-js: ^1.2.1 - checksum: eb5d6cbdca24f50399aafa5d2bea489e4caee4c563ea1edd5a2485bc5f84e9ceef3febf170272bc83a99c31d23a316ad179213e853f34c2a7a8ffa534559d63a - languageName: node - linkType: hard - -"postcss@npm:^8.5.1": - version: 8.5.2 - resolution: "postcss@npm:8.5.2" +"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33, postcss@npm:^8.5.3": + version: 8.5.3 + resolution: "postcss@npm:8.5.3" dependencies: nanoid: ^3.3.8 picocolors: ^1.1.1 source-map-js: ^1.2.1 - checksum: 5097c458ce792d38bb93cb245f8603804b48087540b9d0e42d612f6d0bd7add4b47848cb9bc2a5ee388f70e45a1546fa7471b84697ab95aa8206aa3989fea611 + checksum: da574620eb84ff60e65e1d8fc6bd5ad87a19101a23d0aba113c653434161543918229a0f673d89efb3b6d4906287eb04b957310dbcf4cbebacad9d1312711461 languageName: node linkType: hard @@ -11982,11 +11503,11 @@ __metadata: linkType: hard "prettier@npm:^3.0.0": - version: 3.4.2 - resolution: "prettier@npm:3.4.2" + version: 3.5.3 + resolution: "prettier@npm:3.5.3" bin: prettier: bin/prettier.cjs - checksum: 061c84513db62d3944c8dc8df36584dad82883ce4e49efcdbedd8703dce5b173c33fd9d2a4e1725d642a3b713c932b55418342eaa347479bc4a9cca114a04cd0 + checksum: 61e97bb8e71a95d8f9c71f1fd5229c9aaa9d1e184dedb12399f76aa802fb6fdc8954ecac9df25a7f82ee7311cf8ddbd06baf5507388fc98e5b44036cc6a88a1b languageName: node linkType: hard @@ -12098,9 +11619,9 @@ __metadata: linkType: hard "protocols@npm:^2.0.0, protocols@npm:^2.0.1": - version: 2.0.1 - resolution: "protocols@npm:2.0.1" - checksum: 4a9bef6aa0449a0245ded319ac3cbfd032c3e76ebb562777037a3a832c99253d0e8bc2847f7be350236df620a11f7d4fe683ea7f59a2cc14c69f746b6259eda4 + version: 2.0.2 + resolution: "protocols@npm:2.0.2" + checksum: 031cc068eb800468a50eb7c1e1c528bf142fb8314f5df9b9ea3c3f9df1697a19f97b9915b1229cef694d156812393172d9c3051ef7878d26eaa8c6faa5cccec4 languageName: node linkType: hard @@ -12407,18 +11928,19 @@ __metadata: languageName: node linkType: hard -"reflect.getprototypeof@npm:^1.0.6": - version: 1.0.7 - resolution: "reflect.getprototypeof@npm:1.0.7" +"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9": + version: 1.0.10 + resolution: "reflect.getprototypeof@npm:1.0.10" dependencies: - call-bind: ^1.0.7 + call-bind: ^1.0.8 define-properties: ^1.2.1 - es-abstract: ^1.23.5 + es-abstract: ^1.23.9 es-errors: ^1.3.0 - get-intrinsic: ^1.2.4 - gopd: ^1.0.1 - which-builtin-type: ^1.1.4 - checksum: e023846d4d9631b46476a2315f5cdebb1f98782e145e807d985b47df8314776220b0d82244c9f3e51718acb09da79149f406afa9872e4fb4ca473dcc4e980598 + es-object-atoms: ^1.0.0 + get-intrinsic: ^1.2.7 + get-proto: ^1.0.1 + which-builtin-type: ^1.2.1 + checksum: ccc5debeb66125e276ae73909cecb27e47c35d9bb79d9cc8d8d055f008c58010ab8cb401299786e505e4aab733a64cba9daf5f312a58e96a43df66adad221870 languageName: node linkType: hard @@ -12455,14 +11977,16 @@ __metadata: linkType: hard "regexp.prototype.flags@npm:^1.5.3": - version: 1.5.3 - resolution: "regexp.prototype.flags@npm:1.5.3" + version: 1.5.4 + resolution: "regexp.prototype.flags@npm:1.5.4" dependencies: - call-bind: ^1.0.7 + call-bind: ^1.0.8 define-properties: ^1.2.1 es-errors: ^1.3.0 + get-proto: ^1.0.1 + gopd: ^1.2.0 set-function-name: ^2.0.2 - checksum: 83ff0705b837f7cb6d664010a11642250f36d3f642263dd0f3bdfe8f150261aa7b26b50ee97f21c1da30ef82a580bb5afedbef5f45639d69edaafbeac9bbb0ed + checksum: 18cb667e56cb328d2dda569d7f04e3ea78f2683135b866d606538cf7b1d4271f7f749f09608c877527799e6cf350e531368f3c7a20ccd1bb41048a48926bdeeb languageName: node linkType: hard @@ -12542,27 +12066,14 @@ __metadata: languageName: node linkType: hard -"resolve.exports@npm:^2.0.0": +"resolve.exports@npm:2.0.3, resolve.exports@npm:^2.0.0": version: 2.0.3 resolution: "resolve.exports@npm:2.0.3" checksum: abfb9f98278dcd0c19b8a49bb486abfafa23df4636d49128ea270dc982053c3ef230a530aecda1fae1322873fdfa6c97674fc539651ddfdb375ac58e0b8ef6df languageName: node linkType: hard -"resolve@npm:^1.10.0, resolve@npm:^1.20.0": - version: 1.22.8 - resolution: "resolve@npm:1.22.8" - dependencies: - is-core-module: ^2.13.0 - path-parse: ^1.0.7 - supports-preserve-symlinks-flag: ^1.0.0 - bin: - resolve: bin/resolve - checksum: f8a26958aa572c9b064562750b52131a37c29d072478ea32e129063e2da7f83e31f7f11e7087a18225a8561cfe8d2f0df9dbea7c9d331a897571c0a2527dbb4c - languageName: node - linkType: hard - -"resolve@npm:^1.14.2": +"resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.20.0": version: 1.22.10 resolution: "resolve@npm:1.22.10" dependencies: @@ -12575,20 +12086,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin": - version: 1.22.8 - resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=c3c19d" - dependencies: - is-core-module: ^2.13.0 - path-parse: ^1.0.7 - supports-preserve-symlinks-flag: ^1.0.0 - bin: - resolve: bin/resolve - checksum: 5479b7d431cacd5185f8db64bfcb7286ae5e31eb299f4c4f404ad8aa6098b77599563ac4257cb2c37a42f59dfc06a1bec2bcf283bb448f319e37f0feb9a09847 - languageName: node - linkType: hard - -"resolve@patch:resolve@^1.14.2#~builtin": +"resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.20.0#~builtin": version: 1.22.10 resolution: "resolve@patch:resolve@npm%3A1.22.10#~builtin::version=1.22.10&hash=c3c19d" dependencies: @@ -12619,9 +12117,9 @@ __metadata: linkType: hard "reusify@npm:^1.0.4": - version: 1.0.4 - resolution: "reusify@npm:1.0.4" - checksum: c3076ebcc22a6bc252cb0b9c77561795256c22b757f40c0d8110b1300723f15ec0fc8685e8d4ea6d7666f36c79ccc793b1939c748bf36f18f542744a4e379fcc + version: 1.1.0 + resolution: "reusify@npm:1.1.0" + checksum: 64cb3142ac5e9ad689aca289585cb41d22521f4571f73e9488af39f6b1bd62f0cbb3d65e2ecc768ec6494052523f473f1eb4b55c3e9014b3590c17fc6a03e22a languageName: node linkType: hard @@ -12658,59 +12156,29 @@ __metadata: languageName: node linkType: hard -"rollup-plugin-dts@npm:^5.3.1": - version: 5.3.1 - resolution: "rollup-plugin-dts@npm:5.3.1" - dependencies: - "@babel/code-frame": ^7.22.5 - magic-string: ^0.30.2 - peerDependencies: - rollup: ^3.0 - typescript: ^4.1 || ^5.0 - dependenciesMeta: - "@babel/code-frame": - optional: true - checksum: 75785646f7d4b049ec16c7b568ee9e8632c26d1e64fa87294b97a288e857e6e0f0d2731add08f1d674a680e554ad45159cb40c75e6585456982338fbb5940a77 - languageName: node - linkType: hard - -"rollup@npm:^3.28.0": - version: 3.29.5 - resolution: "rollup@npm:3.29.5" - dependencies: - fsevents: ~2.3.2 - dependenciesMeta: - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: 6f8304e58ac8170a715e61e46c4aa674b2ae2587ed2a712dab58f72e5e54803ae40b485fbe6b3e6a694f4c8f7a59ab936ccf9f6b686c7cfd1f1970fa9ecadf1a - languageName: node - linkType: hard - "rollup@npm:^4.30.1": - version: 4.34.6 - resolution: "rollup@npm:4.34.6" - dependencies: - "@rollup/rollup-android-arm-eabi": 4.34.6 - "@rollup/rollup-android-arm64": 4.34.6 - "@rollup/rollup-darwin-arm64": 4.34.6 - "@rollup/rollup-darwin-x64": 4.34.6 - "@rollup/rollup-freebsd-arm64": 4.34.6 - "@rollup/rollup-freebsd-x64": 4.34.6 - "@rollup/rollup-linux-arm-gnueabihf": 4.34.6 - "@rollup/rollup-linux-arm-musleabihf": 4.34.6 - "@rollup/rollup-linux-arm64-gnu": 4.34.6 - "@rollup/rollup-linux-arm64-musl": 4.34.6 - "@rollup/rollup-linux-loongarch64-gnu": 4.34.6 - "@rollup/rollup-linux-powerpc64le-gnu": 4.34.6 - "@rollup/rollup-linux-riscv64-gnu": 4.34.6 - "@rollup/rollup-linux-s390x-gnu": 4.34.6 - "@rollup/rollup-linux-x64-gnu": 4.34.6 - "@rollup/rollup-linux-x64-musl": 4.34.6 - "@rollup/rollup-win32-arm64-msvc": 4.34.6 - "@rollup/rollup-win32-ia32-msvc": 4.34.6 - "@rollup/rollup-win32-x64-msvc": 4.34.6 + version: 4.35.0 + resolution: "rollup@npm:4.35.0" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.35.0 + "@rollup/rollup-android-arm64": 4.35.0 + "@rollup/rollup-darwin-arm64": 4.35.0 + "@rollup/rollup-darwin-x64": 4.35.0 + "@rollup/rollup-freebsd-arm64": 4.35.0 + "@rollup/rollup-freebsd-x64": 4.35.0 + "@rollup/rollup-linux-arm-gnueabihf": 4.35.0 + "@rollup/rollup-linux-arm-musleabihf": 4.35.0 + "@rollup/rollup-linux-arm64-gnu": 4.35.0 + "@rollup/rollup-linux-arm64-musl": 4.35.0 + "@rollup/rollup-linux-loongarch64-gnu": 4.35.0 + "@rollup/rollup-linux-powerpc64le-gnu": 4.35.0 + "@rollup/rollup-linux-riscv64-gnu": 4.35.0 + "@rollup/rollup-linux-s390x-gnu": 4.35.0 + "@rollup/rollup-linux-x64-gnu": 4.35.0 + "@rollup/rollup-linux-x64-musl": 4.35.0 + "@rollup/rollup-win32-arm64-msvc": 4.35.0 + "@rollup/rollup-win32-ia32-msvc": 4.35.0 + "@rollup/rollup-win32-x64-msvc": 4.35.0 "@types/estree": 1.0.6 fsevents: ~2.3.2 dependenciesMeta: @@ -12756,7 +12224,7 @@ __metadata: optional: true bin: rollup: dist/bin/rollup - checksum: e31e6a6de50931591b78a310a52d9700ad8ff39f19ebea8e6d496d68596948fcaba6aa4d380bff2be50b198ac678efaa64d9b9963299fb02885f8c863341cc05 + checksum: 1139d35809d1aa4ac8bff49fd0c819bcce86ce6e8e259fd0cacac086998938b5ad44f523d4414b6565ebc0338e7d2de0ad3efa03e26738fe8bd05f1baf72e980 languageName: node linkType: hard @@ -12777,23 +12245,24 @@ __metadata: linkType: hard "rxjs@npm:^7.5.5": - version: 7.8.1 - resolution: "rxjs@npm:7.8.1" + version: 7.8.2 + resolution: "rxjs@npm:7.8.2" dependencies: tslib: ^2.1.0 - checksum: de4b53db1063e618ec2eca0f7965d9137cabe98cf6be9272efe6c86b47c17b987383df8574861bcced18ebd590764125a901d5506082be84a8b8e364bf05f119 + checksum: 2f233d7c832a6c255dabe0759014d7d9b1c9f1cb2f2f0d59690fd11c883c9826ea35a51740c06ab45b6ade0d9087bde9192f165cba20b6730d344b831ef80744 languageName: node linkType: hard -"safe-array-concat@npm:^1.1.2": - version: 1.1.2 - resolution: "safe-array-concat@npm:1.1.2" +"safe-array-concat@npm:^1.1.3": + version: 1.1.3 + resolution: "safe-array-concat@npm:1.1.3" dependencies: - call-bind: ^1.0.7 - get-intrinsic: ^1.2.4 - has-symbols: ^1.0.3 + call-bind: ^1.0.8 + call-bound: ^1.0.2 + get-intrinsic: ^1.2.6 + has-symbols: ^1.1.0 isarray: ^2.0.5 - checksum: a3b259694754ddfb73ae0663829e396977b99ff21cbe8607f35a469655656da8e271753497e59da8a7575baa94d2e684bea3e10ddd74ba046c0c9b4418ffa0c4 + checksum: 00f6a68140e67e813f3ad5e73e6dedcf3e42a9fa01f04d44b0d3f7b1f4b257af876832a9bfc82ac76f307e8a6cc652e3cf95876048a26cbec451847cf6ae3707 languageName: node linkType: hard @@ -12811,14 +12280,24 @@ __metadata: languageName: node linkType: hard -"safe-regex-test@npm:^1.0.3": - version: 1.0.3 - resolution: "safe-regex-test@npm:1.0.3" +"safe-push-apply@npm:^1.0.0": + version: 1.0.0 + resolution: "safe-push-apply@npm:1.0.0" + dependencies: + es-errors: ^1.3.0 + isarray: ^2.0.5 + checksum: 8c11cbee6dc8ff5cc0f3d95eef7052e43494591384015902e4292aef4ae9e539908288520ed97179cee17d6ffb450fe5f05a46ce7a1749685f7524fd568ab5db + languageName: node + linkType: hard + +"safe-regex-test@npm:^1.1.0": + version: 1.1.0 + resolution: "safe-regex-test@npm:1.1.0" dependencies: - call-bind: ^1.0.6 + call-bound: ^1.0.2 es-errors: ^1.3.0 - is-regex: ^1.1.4 - checksum: 6c7d392ff1ae7a3ae85273450ed02d1d131f1d2c76e177d6b03eb88e6df8fa062639070e7d311802c1615f351f18dc58f9454501c58e28d5ffd9b8f502ba6489 + is-regex: ^1.2.1 + checksum: 3c809abeb81977c9ed6c869c83aca6873ea0f3ab0f806b8edbba5582d51713f8a6e9757d24d2b4b088f563801475ea946c8e77e7713e8c65cdd02305b6caedab languageName: node linkType: hard @@ -12879,7 +12358,7 @@ __metadata: languageName: node linkType: hard -"schema-utils@npm:^3.0.0, schema-utils@npm:^3.1.1, schema-utils@npm:^3.2.0": +"schema-utils@npm:^3.0.0": version: 3.3.0 resolution: "schema-utils@npm:3.3.0" dependencies: @@ -12890,15 +12369,15 @@ __metadata: languageName: node linkType: hard -"schema-utils@npm:^4.0.0": - version: 4.2.0 - resolution: "schema-utils@npm:4.2.0" +"schema-utils@npm:^4.0.0, schema-utils@npm:^4.3.0": + version: 4.3.0 + resolution: "schema-utils@npm:4.3.0" dependencies: "@types/json-schema": ^7.0.9 ajv: ^8.9.0 ajv-formats: ^2.1.1 ajv-keywords: ^5.1.0 - checksum: 26a0463d47683258106e6652e9aeb0823bf0b85843039e068b57da1892f7ae6b6b1094d48e9ed5ba5cbe9f7166469d880858b9d91abe8bd249421eb813850cde + checksum: 3dbd9056727c871818eaf3cabeeb5c9e173ae2b17bbf2a9c7a2e49c220fa1a580e44df651c876aea3b4926cecf080730a39e28202cb63f2b68d99872b49cd37a languageName: node linkType: hard @@ -12920,16 +12399,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": - version: 7.6.3 - resolution: "semver@npm:7.6.3" - bin: - semver: bin/semver.js - checksum: 4110ec5d015c9438f322257b1c51fe30276e5f766a3f64c09edd1d7ea7118ecbc3f379f3b69032bacf13116dc7abc4ad8ce0d7e2bd642e26b0d271b56b61a7d8 - languageName: node - linkType: hard - -"semver@npm:^7.6.3": +"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.7.1": version: 7.7.1 resolution: "semver@npm:7.7.1" bin: @@ -12938,7 +12408,7 @@ __metadata: languageName: node linkType: hard -"serialize-javascript@npm:^6.0.1": +"serialize-javascript@npm:^6.0.2": version: 6.0.2 resolution: "serialize-javascript@npm:6.0.2" dependencies: @@ -12961,7 +12431,7 @@ __metadata: languageName: node linkType: hard -"set-function-length@npm:^1.2.1": +"set-function-length@npm:^1.2.2": version: 1.2.2 resolution: "set-function-length@npm:1.2.2" dependencies: @@ -12987,6 +12457,17 @@ __metadata: languageName: node linkType: hard +"set-proto@npm:^1.0.0": + version: 1.0.0 + resolution: "set-proto@npm:1.0.0" + dependencies: + dunder-proto: ^1.0.1 + es-errors: ^1.3.0 + es-object-atoms: ^1.0.0 + checksum: ec27cbbe334598547e99024403e96da32aca3e530583e4dba7f5db1c43cbc4affa9adfbd77c7b2c210b9b8b2e7b2e600bad2a6c44fd62e804d8233f96bbb62f4 + languageName: node + linkType: hard + "shallow-clone@npm:^3.0.0": version: 3.0.1 resolution: "shallow-clone@npm:3.0.1" @@ -13035,15 +12516,51 @@ __metadata: languageName: node linkType: hard -"side-channel@npm:^1.0.4": - version: 1.0.6 - resolution: "side-channel@npm:1.0.6" +"side-channel-list@npm:^1.0.0": + version: 1.0.0 + resolution: "side-channel-list@npm:1.0.0" dependencies: - call-bind: ^1.0.7 es-errors: ^1.3.0 - get-intrinsic: ^1.2.4 - object-inspect: ^1.13.1 - checksum: bfc1afc1827d712271453e91b7cd3878ac0efd767495fd4e594c4c2afaa7963b7b510e249572bfd54b0527e66e4a12b61b80c061389e129755f34c493aad9b97 + object-inspect: ^1.13.3 + checksum: 603b928997abd21c5a5f02ae6b9cc36b72e3176ad6827fab0417ead74580cc4fb4d5c7d0a8a2ff4ead34d0f9e35701ed7a41853dac8a6d1a664fcce1a044f86f + languageName: node + linkType: hard + +"side-channel-map@npm:^1.0.1": + version: 1.0.1 + resolution: "side-channel-map@npm:1.0.1" + dependencies: + call-bound: ^1.0.2 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.5 + object-inspect: ^1.13.3 + checksum: 42501371cdf71f4ccbbc9c9e2eb00aaaab80a4c1c429d5e8da713fd4d39ef3b8d4a4b37ed4f275798a65260a551a7131fd87fe67e922dba4ac18586d6aab8b06 + languageName: node + linkType: hard + +"side-channel-weakmap@npm:^1.0.2": + version: 1.0.2 + resolution: "side-channel-weakmap@npm:1.0.2" + dependencies: + call-bound: ^1.0.2 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.5 + object-inspect: ^1.13.3 + side-channel-map: ^1.0.1 + checksum: a815c89bc78c5723c714ea1a77c938377ea710af20d4fb886d362b0d1f8ac73a17816a5f6640f354017d7e292a43da9c5e876c22145bac00b76cfb3468001736 + languageName: node + linkType: hard + +"side-channel@npm:^1.1.0": + version: 1.1.0 + resolution: "side-channel@npm:1.1.0" + dependencies: + es-errors: ^1.3.0 + object-inspect: ^1.13.3 + side-channel-list: ^1.0.0 + side-channel-map: ^1.0.1 + side-channel-weakmap: ^1.0.2 + checksum: bf73d6d6682034603eb8e99c63b50155017ed78a522d27c2acec0388a792c3ede3238b878b953a08157093b85d05797217d270b7666ba1f111345fbe933380ff languageName: node linkType: hard @@ -13117,23 +12634,23 @@ __metadata: linkType: hard "socks-proxy-agent@npm:^8.0.3": - version: 8.0.4 - resolution: "socks-proxy-agent@npm:8.0.4" + version: 8.0.5 + resolution: "socks-proxy-agent@npm:8.0.5" dependencies: - agent-base: ^7.1.1 + agent-base: ^7.1.2 debug: ^4.3.4 socks: ^2.8.3 - checksum: b2ec5051d85fe49072f9a250c427e0e9571fd09d5db133819192d078fd291276e1f0f50f6dbc04329b207738b1071314cee8bdbb4b12e27de42dbcf1d4233c67 + checksum: b4fbcdb7ad2d6eec445926e255a1fb95c975db0020543fbac8dfa6c47aecc6b3b619b7fb9c60a3f82c9b2969912a5e7e174a056ae4d98cb5322f3524d6036e1d languageName: node linkType: hard "socks@npm:^2.8.3": - version: 2.8.3 - resolution: "socks@npm:2.8.3" + version: 2.8.4 + resolution: "socks@npm:2.8.4" dependencies: ip-address: ^9.0.5 smart-buffer: ^4.2.0 - checksum: 7a6b7f6eedf7482b9e4597d9a20e09505824208006ea8f2c49b71657427f3c137ca2ae662089baa73e1971c62322d535d9d0cf1c9235cf6f55e315c18203eadd + checksum: cd1edc924475d5dfde534adf66038df7e62c7343e6b8c0113e52dc9bb6a0a10e25b2f136197f379d695f18e8f0f2b7f6e42977bf720ddbee912a851201c396ad languageName: node linkType: hard @@ -13246,9 +12763,9 @@ __metadata: linkType: hard "spdx-license-ids@npm:^3.0.0": - version: 3.0.20 - resolution: "spdx-license-ids@npm:3.0.20" - checksum: 0c57750bedbcff48f3d0e266fbbdaf0aab54217e182f669542ffe0b5a902dce69e8cdfa126a131e1ddd39a9bef4662e357b2b41315d7240b4a28c0a7e782bb40 + version: 3.0.21 + resolution: "spdx-license-ids@npm:3.0.21" + checksum: 681dfe26d250f48cc725c9118adf1eb0a175e3c298cd8553c039bfae37ed21bea30a27bc02dbb99b4a0d3a25c644c5dda952090e11ef4b3093f6ec7db4b93b58 languageName: node linkType: hard @@ -13355,26 +12872,30 @@ __metadata: languageName: node linkType: hard -"string.prototype.trim@npm:^1.2.9": - version: 1.2.9 - resolution: "string.prototype.trim@npm:1.2.9" +"string.prototype.trim@npm:^1.2.10": + version: 1.2.10 + resolution: "string.prototype.trim@npm:1.2.10" dependencies: - call-bind: ^1.0.7 + call-bind: ^1.0.8 + call-bound: ^1.0.2 + define-data-property: ^1.1.4 define-properties: ^1.2.1 - es-abstract: ^1.23.0 + es-abstract: ^1.23.5 es-object-atoms: ^1.0.0 - checksum: ea2df6ec1e914c9d4e2dc856fa08228e8b1be59b59e50b17578c94a66a176888f417264bb763d4aac638ad3b3dad56e7a03d9317086a178078d131aa293ba193 + has-property-descriptors: ^1.0.2 + checksum: 87659cd8561237b6c69f5376328fda934693aedde17bb7a2c57008e9d9ff992d0c253a391c7d8d50114e0e49ff7daf86a362f7961cf92f7564cd01342ca2e385 languageName: node linkType: hard -"string.prototype.trimend@npm:^1.0.8": - version: 1.0.8 - resolution: "string.prototype.trimend@npm:1.0.8" +"string.prototype.trimend@npm:^1.0.9": + version: 1.0.9 + resolution: "string.prototype.trimend@npm:1.0.9" dependencies: - call-bind: ^1.0.7 + call-bind: ^1.0.8 + call-bound: ^1.0.2 define-properties: ^1.2.1 es-object-atoms: ^1.0.0 - checksum: cc3bd2de08d8968a28787deba9a3cb3f17ca5f9f770c91e7e8fa3e7d47f079bad70fadce16f05dda9f261788be2c6e84a942f618c3bed31e42abc5c1084f8dfd + checksum: cb86f639f41d791a43627784be2175daa9ca3259c7cb83e7a207a729909b74f2ea0ec5d85de5761e6835e5f443e9420c6ff3f63a845378e4a61dd793177bc287 languageName: node linkType: hard @@ -13628,12 +13149,12 @@ __metadata: linkType: hard "supports-hyperlinks@npm:^3.0.0": - version: 3.1.0 - resolution: "supports-hyperlinks@npm:3.1.0" + version: 3.2.0 + resolution: "supports-hyperlinks@npm:3.2.0" dependencies: has-flag: ^4.0.0 supports-color: ^7.0.0 - checksum: 051ffc31ae0d3334502decb6a17170ff89d870094d6835d93dfb2cda03e2a4504bf861a0954942af5e65fdd038b81cef5998696d0f4f4ff5f5bd3e40c7981874 + checksum: 460594ec0024f041f61105d40f1e5fc55ffcc2d94b6048faf25a616ec8fbaea71e74d909a6851c721776f24eed67c59fd3b7c47af22a487ebab85640abdb5d3f languageName: node linkType: hard @@ -13743,15 +13264,15 @@ __metadata: languageName: node linkType: hard -"terser-webpack-plugin@npm:^5.3.10, terser-webpack-plugin@npm:^5.3.7": - version: 5.3.10 - resolution: "terser-webpack-plugin@npm:5.3.10" +"terser-webpack-plugin@npm:^5.3.11, terser-webpack-plugin@npm:^5.3.7": + version: 5.3.14 + resolution: "terser-webpack-plugin@npm:5.3.14" dependencies: - "@jridgewell/trace-mapping": ^0.3.20 + "@jridgewell/trace-mapping": ^0.3.25 jest-worker: ^27.4.5 - schema-utils: ^3.1.1 - serialize-javascript: ^6.0.1 - terser: ^5.26.0 + schema-utils: ^4.3.0 + serialize-javascript: ^6.0.2 + terser: ^5.31.1 peerDependencies: webpack: ^5.1.0 peerDependenciesMeta: @@ -13761,13 +13282,13 @@ __metadata: optional: true uglify-js: optional: true - checksum: bd6e7596cf815f3353e2a53e79cbdec959a1b0276f5e5d4e63e9d7c3c5bb5306df567729da287d1c7b39d79093e56863c569c42c6c24cc34c76aa313bd2cbcea + checksum: 13a1e67f1675a473b18d25cb0ce65c3f0a19b5e9a93213a99ea61dc4ca996ea93aa17a221965b526f5788d242836a8249ad00538fbb322e25cb69076eb55feab languageName: node linkType: hard -"terser@npm:^5.26.0": - version: 5.37.0 - resolution: "terser@npm:5.37.0" +"terser@npm:^5.31.1": + version: 5.39.0 + resolution: "terser@npm:5.39.0" dependencies: "@jridgewell/source-map": ^0.3.3 acorn: ^8.8.2 @@ -13775,7 +13296,7 @@ __metadata: source-map-support: ~0.5.20 bin: terser: bin/terser - checksum: 70c06a8ce1288ff4370a7e481beb6fc8b22fc4995371479f49df1552aa9cf8e794ace66e1da6e87057eda1745644311213f5043bda9a06cf55421eff68b3ac06 + checksum: e39c302aed7a70273c8b03032c37c68c8d9d3b432a7b6abe89caf9d087f7dd94d743c01ee5ba1431a095ad347c4a680b60d258f298a097cf512346d6041eb661 languageName: node linkType: hard @@ -13921,8 +13442,8 @@ __metadata: linkType: hard "ts-jest@npm:^29.1.0": - version: 29.2.5 - resolution: "ts-jest@npm:29.2.5" + version: 29.2.6 + resolution: "ts-jest@npm:29.2.6" dependencies: bs-logger: ^0.2.6 ejs: ^3.1.10 @@ -13931,7 +13452,7 @@ __metadata: json5: ^2.2.3 lodash.memoize: ^4.1.2 make-error: ^1.3.6 - semver: ^7.6.3 + semver: ^7.7.1 yargs-parser: ^21.1.1 peerDependencies: "@babel/core": ">=7.0.0-beta.0 <8" @@ -13953,7 +13474,7 @@ __metadata: optional: true bin: ts-jest: cli.js - checksum: d60d1e1d80936f6002b1bb27f7e062408bc733141b9d666565503f023c340a3196d506c836a4316c5793af81a5f910ab49bb9c13f66e2dc66de4e0f03851dbca + checksum: ff71b27e997e4c5e6bcf2d38804b188eb1c7eec78570329f058f434ba1bd112a4806cdc4e7baac0e0e834bd20ca3be16e03d5c546304aa28e5cfeaccca82139e languageName: node linkType: hard @@ -14065,46 +13586,46 @@ __metadata: languageName: node linkType: hard -"typed-array-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "typed-array-buffer@npm:1.0.2" +"typed-array-buffer@npm:^1.0.3": + version: 1.0.3 + resolution: "typed-array-buffer@npm:1.0.3" dependencies: - call-bind: ^1.0.7 + call-bound: ^1.0.3 es-errors: ^1.3.0 - is-typed-array: ^1.1.13 - checksum: 02ffc185d29c6df07968272b15d5319a1610817916ec8d4cd670ded5d1efe72901541ff2202fcc622730d8a549c76e198a2f74e312eabbfb712ed907d45cbb0b + is-typed-array: ^1.1.14 + checksum: 3fb91f0735fb413b2bbaaca9fabe7b8fc14a3fa5a5a7546bab8a57e755be0e3788d893195ad9c2b842620592de0e68d4c077d4c2c41f04ec25b8b5bb82fa9a80 languageName: node linkType: hard -"typed-array-byte-length@npm:^1.0.1": - version: 1.0.1 - resolution: "typed-array-byte-length@npm:1.0.1" +"typed-array-byte-length@npm:^1.0.3": + version: 1.0.3 + resolution: "typed-array-byte-length@npm:1.0.3" dependencies: - call-bind: ^1.0.7 + call-bind: ^1.0.8 for-each: ^0.3.3 - gopd: ^1.0.1 - has-proto: ^1.0.3 - is-typed-array: ^1.1.13 - checksum: f65e5ecd1cf76b1a2d0d6f631f3ea3cdb5e08da106c6703ffe687d583e49954d570cc80434816d3746e18be889ffe53c58bf3e538081ea4077c26a41055b216d + gopd: ^1.2.0 + has-proto: ^1.2.0 + is-typed-array: ^1.1.14 + checksum: cda9352178ebeab073ad6499b03e938ebc30c4efaea63a26839d89c4b1da9d2640b0d937fc2bd1f049eb0a38def6fbe8a061b601292ae62fe079a410ce56e3a6 languageName: node linkType: hard -"typed-array-byte-offset@npm:^1.0.2": - version: 1.0.3 - resolution: "typed-array-byte-offset@npm:1.0.3" +"typed-array-byte-offset@npm:^1.0.4": + version: 1.0.4 + resolution: "typed-array-byte-offset@npm:1.0.4" dependencies: available-typed-arrays: ^1.0.7 - call-bind: ^1.0.7 + call-bind: ^1.0.8 for-each: ^0.3.3 - gopd: ^1.0.1 - has-proto: ^1.0.3 - is-typed-array: ^1.1.13 - reflect.getprototypeof: ^1.0.6 - checksum: 36728daa80d49a9fa51cd3f0f2b037613f4574666fd4473bd37ac123d7f6f81ea68ff45424c1e2673257964e10bedeb3ebfce73532672913ebbe446999912303 + gopd: ^1.2.0 + has-proto: ^1.2.0 + is-typed-array: ^1.1.15 + reflect.getprototypeof: ^1.0.9 + checksum: 670b7e6bb1d3c2cf6160f27f9f529e60c3f6f9611c67e47ca70ca5cfa24ad95415694c49d1dbfeda016d3372cab7dfc9e38c7b3e1bb8d692cae13a63d3c144d7 languageName: node linkType: hard -"typed-array-length@npm:^1.0.6": +"typed-array-length@npm:^1.0.7": version: 1.0.7 resolution: "typed-array-length@npm:1.0.7" dependencies: @@ -14126,22 +13647,12 @@ __metadata: linkType: hard "typescript@npm:>=3 < 6": - version: 5.7.2 - resolution: "typescript@npm:5.7.2" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: b55300c4cefee8ee380d14fa9359ccb41ff8b54c719f6bc49b424899d662a5ce62ece390ce769568c7f4d14af844085255e63788740084444eb12ef423b13433 - languageName: node - linkType: hard - -"typescript@npm:^5.1.6, typescript@npm:~5.7.2": - version: 5.7.3 - resolution: "typescript@npm:5.7.3" + version: 5.8.2 + resolution: "typescript@npm:5.8.2" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 6c38b1e989918e576f0307e6ee013522ea480dfce5f3ca85c9b2d8adb1edeffd37f4f30cd68de0c38a44563d12ba922bdb7e36aa2dac9c51de5d561e6e9a2e9c + checksum: 7f9e3d7ac15da6df713e439e785e51facd65d6450d5f51fab3e8d2f2e3f4eb317080d895480b8e305450cdbcb37e17383e8bf521e7395f8b556e2f2a4730ed86 languageName: node linkType: hard @@ -14155,23 +13666,23 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@>=3 < 6#~builtin": - version: 5.7.2 - resolution: "typescript@patch:typescript@npm%3A5.7.2#~builtin::version=5.7.2&hash=85af82" +"typescript@npm:~5.7.2": + version: 5.7.3 + resolution: "typescript@npm:5.7.3" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 803430c6da2ba73c25a21880d8d4f08a56d9d2444e6db2ea949ac4abceeece8e4a442b7b9b585db7d8a0b47ebda2060e45fe8ee8b8aca23e27ec1d4844987ee6 + checksum: 6c38b1e989918e576f0307e6ee013522ea480dfce5f3ca85c9b2d8adb1edeffd37f4f30cd68de0c38a44563d12ba922bdb7e36aa2dac9c51de5d561e6e9a2e9c languageName: node linkType: hard -"typescript@patch:typescript@^5.1.6#~builtin, typescript@patch:typescript@~5.7.2#~builtin": - version: 5.7.3 - resolution: "typescript@patch:typescript@npm%3A5.7.3#~builtin::version=5.7.3&hash=85af82" +"typescript@patch:typescript@>=3 < 6#~builtin": + version: 5.8.2 + resolution: "typescript@patch:typescript@npm%3A5.8.2#~builtin::version=5.8.2&hash=85af82" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 633cd749d6cd7bc842c6b6245847173bba99742a60776fae3c0fbcc0d1733cd51a733995e5f4dadd8afb0e64e57d3c7dbbeae953a072ee303940eca69e22f311 + checksum: a58d19ff9811c1764a299dd83ca20ed8020f0ab642906dafc880121b710751227201531fdc99878158205c356ac79679b0b61ac5b42eda0e28bfb180947a258d languageName: node linkType: hard @@ -14185,6 +13696,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@~5.7.2#~builtin": + version: 5.7.3 + resolution: "typescript@patch:typescript@npm%3A5.7.3#~builtin::version=5.7.3&hash=85af82" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 633cd749d6cd7bc842c6b6245847173bba99742a60776fae3c0fbcc0d1733cd51a733995e5f4dadd8afb0e64e57d3c7dbbeae953a072ee303940eca69e22f311 + languageName: node + linkType: hard + "typestyle@npm:^2.0.4": version: 2.4.0 resolution: "typestyle@npm:2.4.0" @@ -14204,15 +13725,15 @@ __metadata: languageName: node linkType: hard -"unbox-primitive@npm:^1.0.2": - version: 1.0.2 - resolution: "unbox-primitive@npm:1.0.2" +"unbox-primitive@npm:^1.1.0": + version: 1.1.0 + resolution: "unbox-primitive@npm:1.1.0" dependencies: - call-bind: ^1.0.2 + call-bound: ^1.0.3 has-bigints: ^1.0.2 - has-symbols: ^1.0.3 - which-boxed-primitive: ^1.0.2 - checksum: b7a1cf5862b5e4b5deb091672ffa579aa274f648410009c81cca63fed3b62b610c4f3b773f912ce545bb4e31edc3138975b5bc777fc6e4817dca51affb6380e9 + has-symbols: ^1.1.0 + which-boxed-primitive: ^1.1.1 + checksum: 729f13b84a5bfa3fead1d8139cee5c38514e63a8d6a437819a473e241ba87eeb593646568621c7fc7f133db300ef18d65d1a5a60dc9c7beb9000364d93c581df languageName: node linkType: hard @@ -14319,16 +13840,16 @@ __metadata: linkType: hard "update-browserslist-db@npm:^1.1.1": - version: 1.1.1 - resolution: "update-browserslist-db@npm:1.1.1" + version: 1.1.3 + resolution: "update-browserslist-db@npm:1.1.3" dependencies: escalade: ^3.2.0 - picocolors: ^1.1.0 + picocolors: ^1.1.1 peerDependencies: browserslist: ">= 4.21.0" bin: update-browserslist-db: cli.js - checksum: 2ea11bd2562122162c3e438d83a1f9125238c0844b6d16d366e3276d0c0acac6036822dc7df65fc5a89c699cdf9f174acf439c39bedf3f9a2f3983976e4b4c3e + checksum: 7b6d8d08c34af25ee435bccac542bedcb9e57c710f3c42421615631a80aa6dd28b0a81c9d2afbef53799d482fb41453f714b8a7a0a8003e3b4ec8fb1abb819af languageName: node linkType: hard @@ -14445,12 +13966,12 @@ __metadata: linkType: hard "vite@npm:^6.1.0": - version: 6.1.0 - resolution: "vite@npm:6.1.0" + version: 6.2.1 + resolution: "vite@npm:6.2.1" dependencies: - esbuild: ^0.24.2 + esbuild: ^0.25.0 fsevents: ~2.3.3 - postcss: ^8.5.1 + postcss: ^8.5.3 rollup: ^4.30.1 peerDependencies: "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 @@ -14492,7 +14013,7 @@ __metadata: optional: true bin: vite: bin/vite.js - checksum: ed0b5385546d0dafe7bd91e94679aa4ca9064d29a8fd8cb8f9baea388fc049504a83cecd9bae41d19ae025b8b4fd621f1ec6c41255e9bf8c872fd9fa94b9cd42 + checksum: d7379a9870c888681f7e4a861095e7f568ecd4cb99a5eed2dec65dc205ce863783d45c66a1a275868e23732087009533eadec999061c1ddef96aa8aaa0dcf6d2 languageName: node linkType: hard @@ -14676,8 +14197,8 @@ __metadata: linkType: hard "webpack@npm:^5.76.1": - version: 5.97.0 - resolution: "webpack@npm:5.97.0" + version: 5.98.0 + resolution: "webpack@npm:5.98.0" dependencies: "@types/eslint-scope": ^3.7.7 "@types/estree": ^1.0.6 @@ -14697,9 +14218,9 @@ __metadata: loader-runner: ^4.2.0 mime-types: ^2.1.27 neo-async: ^2.6.2 - schema-utils: ^3.2.0 + schema-utils: ^4.3.0 tapable: ^2.1.1 - terser-webpack-plugin: ^5.3.10 + terser-webpack-plugin: ^5.3.11 watchpack: ^2.4.1 webpack-sources: ^3.2.3 peerDependenciesMeta: @@ -14707,7 +14228,7 @@ __metadata: optional: true bin: webpack: bin/webpack.js - checksum: 07ca08bd8b39080e548e05aca559b887f200bf057f8b9116907eaf22697e943a30cf7fbe9f884615906c30ea8cd911e49608afc481157a190327087ecb996a96 + checksum: 0de353c694bc4d5af810e4f4d4fd356271b21b2253583a9f618416b5fcbaf8db5a5487c12cc1379778d2a07d56382293334153af6e2ce59ded59488f08015fd1 languageName: node linkType: hard @@ -14765,37 +14286,37 @@ __metadata: languageName: node linkType: hard -"which-boxed-primitive@npm:^1.0.2": - version: 1.1.0 - resolution: "which-boxed-primitive@npm:1.1.0" +"which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1": + version: 1.1.1 + resolution: "which-boxed-primitive@npm:1.1.1" dependencies: is-bigint: ^1.1.0 - is-boolean-object: ^1.2.0 - is-number-object: ^1.1.0 - is-string: ^1.1.0 - is-symbol: ^1.1.0 - checksum: 49ebec9693ed21ee8183b9e353ee7134a03722776c84624019964124885a4a940f469af3d1508ad83022a68cc515aecbef70fb1256ace57a871c43d24d050304 + is-boolean-object: ^1.2.1 + is-number-object: ^1.1.1 + is-string: ^1.1.1 + is-symbol: ^1.1.1 + checksum: ee41d0260e4fd39551ad77700c7047d3d281ec03d356f5e5c8393fe160ba0db53ef446ff547d05f76ffabfd8ad9df7c9a827e12d4cccdbc8fccf9239ff8ac21e languageName: node linkType: hard -"which-builtin-type@npm:^1.1.4": - version: 1.2.0 - resolution: "which-builtin-type@npm:1.2.0" +"which-builtin-type@npm:^1.2.1": + version: 1.2.1 + resolution: "which-builtin-type@npm:1.2.1" dependencies: - call-bind: ^1.0.7 + call-bound: ^1.0.2 function.prototype.name: ^1.1.6 has-tostringtag: ^1.0.2 is-async-function: ^2.0.0 - is-date-object: ^1.0.5 + is-date-object: ^1.1.0 is-finalizationregistry: ^1.1.0 is-generator-function: ^1.0.10 - is-regex: ^1.1.4 + is-regex: ^1.2.1 is-weakref: ^1.0.2 isarray: ^2.0.5 - which-boxed-primitive: ^1.0.2 + which-boxed-primitive: ^1.1.0 which-collection: ^1.0.2 - which-typed-array: ^1.1.15 - checksum: 6d40ecdf33a28c3fdeab13e7e3b4289fb51f7ebd0983e628d50fa42e113d8be1bc7dd0e6eb23c6b6a0c2c0c7667763eca3a2af1f6d768e48efba8073870eb568 + which-typed-array: ^1.1.16 + checksum: 7a3617ba0e7cafb795f74db418df889867d12bce39a477f3ee29c6092aa64d396955bf2a64eae3726d8578440e26777695544057b373c45a8bcf5fbe920bf633 languageName: node linkType: hard @@ -14811,16 +14332,18 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.14, which-typed-array@npm:^1.1.15": - version: 1.1.16 - resolution: "which-typed-array@npm:1.1.16" +"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.18": + version: 1.1.19 + resolution: "which-typed-array@npm:1.1.19" dependencies: available-typed-arrays: ^1.0.7 - call-bind: ^1.0.7 - for-each: ^0.3.3 - gopd: ^1.0.1 + call-bind: ^1.0.8 + call-bound: ^1.0.4 + for-each: ^0.3.5 + get-proto: ^1.0.1 + gopd: ^1.2.0 has-tostringtag: ^1.0.2 - checksum: 903d398ec234d608011e1df09af6c004e66965bb24d5e1a82856cba0495fa6389ae393d1c9d5411498a9cba8e61b2e39a8e8be7b3005cbeadd317f772b1bdaef + checksum: 162d2a07f68ea323f88ed9419861487ce5d02cb876f2cf9dd1e428d04a63133f93a54f89308f337b27cabd312ee3d027cae4a79002b2f0a85b79b9ef4c190670 languageName: node linkType: hard @@ -15007,8 +14530,8 @@ __metadata: linkType: hard "ws@npm:^8.11.0": - version: 8.18.0 - resolution: "ws@npm:8.18.0" + version: 8.18.1 + resolution: "ws@npm:8.18.1" peerDependencies: bufferutil: ^4.0.1 utf-8-validate: ">=5.0.2" @@ -15017,7 +14540,7 @@ __metadata: optional: true utf-8-validate: optional: true - checksum: 91d4d35bc99ff6df483bdf029b9ea4bfd7af1f16fc91231a96777a63d263e1eabf486e13a2353970efc534f9faa43bdbf9ee76525af22f4752cbc5ebda333975 + checksum: 4658357185d891bc45cc2d42a84f9e192d047e8476fb5cba25b604f7d75ca87ca0dd54cd0b2cc49aeee57c79045a741cb7d0b14501953ac60c790cd105c42f23 languageName: node linkType: hard @@ -15088,6 +14611,15 @@ __metadata: languageName: node linkType: hard +"yaml@npm:^2.6.0": + version: 2.7.0 + resolution: "yaml@npm:2.7.0" + bin: + yaml: bin.mjs + checksum: 6e8b2f9b9d1b18b10274d58eb3a47ec223d9a93245a890dcb34d62865f7e744747190a9b9177d5f0ef4ea2e44ad2c0214993deb42e0800766203ac46f00a12dd + languageName: node + linkType: hard + "yargs-parser@npm:21.1.1, yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" @@ -15133,11 +14665,11 @@ __metadata: linkType: hard "yjs@npm:^13.5.0, yjs@npm:^13.5.40": - version: 13.6.20 - resolution: "yjs@npm:13.6.20" + version: 13.6.24 + resolution: "yjs@npm:13.6.24" dependencies: - lib0: ^0.2.98 - checksum: a87295efe7df58ae8b5cf09b7cdbbcc3cbfba2b7fb72bb424513eb25587eff8dc8304f41e3bcd3926c02c86a0f7ce2185285e4b9d71aca5ff50cefe1ecb6657c + lib0: ^0.2.99 + checksum: cc7dc3e81f7ce4c715d459ba480cf96dad0248f1759968c999d18ad132b7c74b9bce54407ff6dd664623c88246c6ec282e3b8497652750512fa9320e79e215ba languageName: node linkType: hard From 56834f72eb91128d37685ae75404075ff1d1599c Mon Sep 17 00:00:00 2001 From: Greg Date: Thu, 13 Mar 2025 14:18:17 +0100 Subject: [PATCH 30/38] Experimenting --- .../components/TerminalBar/TerminalMenu.tsx | 56 ++++++++++++++----- 1 file changed, 42 insertions(+), 14 deletions(-) diff --git a/demo/src/components/TerminalBar/TerminalMenu.tsx b/demo/src/components/TerminalBar/TerminalMenu.tsx index 6699624..464aa4d 100644 --- a/demo/src/components/TerminalBar/TerminalMenu.tsx +++ b/demo/src/components/TerminalBar/TerminalMenu.tsx @@ -1,6 +1,5 @@ import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { useCallback, useState } from 'react'; -import keyboardUrl from '../../../icons/keyboard.svg'; +import { useEffect, useState } from 'react'; import { usePopover } from '../usePopover'; interface IAvailableCommandsProps { @@ -8,21 +7,31 @@ interface IAvailableCommandsProps { } const TerminalMenu = ({ bridge }: IAvailableCommandsProps) => { - const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; + const { isOpen, toggle, close, ref } = usePopover(); + + const [activeTerminal, setActiveTerminal] = useState(1); + const [runningTerminals, setRunningTerminals] = useState([]); + + useEffect(() => { + console.log('activeTerminal', activeTerminal); + console.log('runningTerminals.length', runningTerminals.length); + }, [activeTerminal, runningTerminals]); + const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; if (!iframe) { return; } - const { isOpen, toggle, close, ref } = usePopover(); - - const [runningTerminals, setRunningTerminals] = useState([]); + const setIframeSrc = (terminal: number) => { + setActiveTerminal(terminal); + iframe.src = `http://localhost:8888/terminals/${terminal}`; + }; // Handle option click - const handleOptionClick = useCallback((terminal: string): void => { - iframe.src = `http://localhost:8888/terminals/${terminal}`; + const handleOptionClick = (terminal: string): void => { + setIframeSrc(+terminal); close(); - }, []); + }; const handleOpen = async () => { const running = await bridge().listRunning(); @@ -40,16 +49,35 @@ const TerminalMenu = ({ bridge }: IAvailableCommandsProps) => { runningTerminals.forEach(term => { bridge().execute('shutdown-all-terminals', { name: term }); }); - // submitCommand('shutdown-all-terminals', '{teees: "test"}'); + }; + + const handlePrev = () => { + setIframeSrc(activeTerminal - 1); + }; + const handleNext = () => { + setIframeSrc(activeTerminal + 1); }; return (
    - + + + - {isOpen && ( From 9c1e112a3c414764b53a8b3bf5c2a747ca67ba4f Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 19 Mar 2025 14:57:43 +0100 Subject: [PATCH 31/38] Remove demo and css-extension --- README.md | 41 - demo/.gitignore | 24 - demo/README.md | 50 - demo/config/cell-toolbar.json | 29 - demo/config/jupyter-lite.json | 11 - demo/config/overrides.json | 5 - demo/example.ipynb | 73 - demo/icons/arrowDown.svg | 3 - demo/icons/bullets.svg | 3 - demo/icons/clipboard.svg | 3 - demo/icons/code.svg | 3 - demo/icons/fullscreen.svg | 3 - demo/icons/indicator.svg | 4 - demo/icons/keyboard.svg | 3 - demo/icons/markdown.svg | 3 - demo/icons/play.svg | 3 - demo/icons/plus.svg | 3 - demo/icons/redo.svg | 4 - demo/icons/save.svg | 3 - demo/icons/undo.svg | 3 - demo/index.html | 13 - demo/jupyter_server_config.py | 15 - demo/package.json | 35 - demo/public/tiledb.svg | 3 - demo/soma.ipynb | 627 -- demo/src/App.css | 42 - demo/src/App.tsx | 16 - demo/src/assets/react.svg | 1 - demo/src/components/CssLoader.tsx | 37 - demo/src/components/DemoTop.tsx | 28 - demo/src/components/Error.tsx | 36 - .../components/FileMenuBar/AddCellButton.tsx | 51 - .../FileMenuBar/AvailableCommands.tsx | 93 - .../components/FileMenuBar/BulletsButton.tsx | 56 - .../components/FileMenuBar/FileMenuBar.tsx | 93 - .../src/components/FileMenuBar/KernelInfo.tsx | 63 - demo/src/components/FileMenuBar/RunButton.tsx | 78 - .../components/FileMenuBar/fileMenuBar.css | 703 -- .../FileMenuBar/useGetJupyterInfo.ts | 12 - demo/src/components/Home.tsx | 33 - demo/src/components/InputArea.tsx | 50 - demo/src/components/Instructions.tsx | 185 - demo/src/components/JupyterIframe.tsx | 68 - demo/src/components/ListCommands.tsx | 62 - demo/src/components/ModeToggle.tsx | 62 - demo/src/components/NoteBookBrowser.tsx | 70 - demo/src/components/NotebookPage.tsx | 56 - demo/src/components/PopoverListItem.tsx | 30 - .../components/TerminalBar/TerminalMenu.tsx | 107 - demo/src/components/usePopover.ts | 28 - demo/src/components/useWindowSize.ts | 27 - demo/src/index.css | 320 - demo/src/jupyter.css | 297 - demo/src/main.tsx | 11 - demo/src/vite-env.d.ts | 1 - demo/tsconfig.app.json | 26 - demo/tsconfig.json | 7 - demo/tsconfig.node.json | 24 - demo/vite.config.ts | 7 - package.json | 4 +- packages/css-extension/.copier-answers.yml | 14 - .../css-extension/.github/workflows/build.yml | 153 - .../.github/workflows/check-release.yml | 30 - .../.github/workflows/enforce-label.yml | 13 - .../.github/workflows/prep-release.yml | 48 - .../.github/workflows/publish-release.yml | 58 - .../workflows/update-integration-tests.yml | 89 - packages/css-extension/.gitignore | 125 - packages/css-extension/.prettierignore | 6 - packages/css-extension/.yarnrc.yml | 1 - packages/css-extension/CHANGELOG.md | 5 - packages/css-extension/LICENSE | 29 - packages/css-extension/README.md | 97 - packages/css-extension/RELEASE.md | 80 - packages/css-extension/babel.config.js | 1 - packages/css-extension/install.json | 5 - packages/css-extension/jest.config.js | 28 - .../jupyter_css_loader/__init__.py | 16 - packages/css-extension/package.json | 191 - packages/css-extension/pyproject.toml | 77 - packages/css-extension/setup.py | 1 - .../src/__tests__/jupyter_css_loader.spec.ts | 9 - packages/css-extension/src/index.ts | 39 - packages/css-extension/style/base.css | 5 - packages/css-extension/style/index.css | 1 - packages/css-extension/style/index.js | 1 - packages/css-extension/tsconfig.json | 25 - packages/css-extension/tsconfig.test.json | 3 - packages/css-extension/ui-tests/README.md | 167 - .../ui-tests/jupyter_server_test_config.py | 12 - packages/css-extension/ui-tests/package.json | 15 - .../ui-tests/playwright.config.js | 14 - .../ui-tests/tests/jupyter_css_loader.spec.ts | 23 - packages/css-extension/ui-tests/yarn.lock | 0 yarn.lock | 5856 ++--------------- 95 files changed, 435 insertions(+), 10553 deletions(-) delete mode 100644 demo/.gitignore delete mode 100644 demo/README.md delete mode 100644 demo/config/cell-toolbar.json delete mode 100644 demo/config/jupyter-lite.json delete mode 100644 demo/config/overrides.json delete mode 100644 demo/example.ipynb delete mode 100644 demo/icons/arrowDown.svg delete mode 100644 demo/icons/bullets.svg delete mode 100644 demo/icons/clipboard.svg delete mode 100644 demo/icons/code.svg delete mode 100644 demo/icons/fullscreen.svg delete mode 100644 demo/icons/indicator.svg delete mode 100644 demo/icons/keyboard.svg delete mode 100644 demo/icons/markdown.svg delete mode 100644 demo/icons/play.svg delete mode 100644 demo/icons/plus.svg delete mode 100644 demo/icons/redo.svg delete mode 100644 demo/icons/save.svg delete mode 100644 demo/icons/undo.svg delete mode 100644 demo/index.html delete mode 100644 demo/jupyter_server_config.py delete mode 100644 demo/package.json delete mode 100644 demo/public/tiledb.svg delete mode 100644 demo/soma.ipynb delete mode 100644 demo/src/App.css delete mode 100644 demo/src/App.tsx delete mode 100644 demo/src/assets/react.svg delete mode 100644 demo/src/components/CssLoader.tsx delete mode 100644 demo/src/components/DemoTop.tsx delete mode 100644 demo/src/components/Error.tsx delete mode 100644 demo/src/components/FileMenuBar/AddCellButton.tsx delete mode 100644 demo/src/components/FileMenuBar/AvailableCommands.tsx delete mode 100644 demo/src/components/FileMenuBar/BulletsButton.tsx delete mode 100644 demo/src/components/FileMenuBar/FileMenuBar.tsx delete mode 100644 demo/src/components/FileMenuBar/KernelInfo.tsx delete mode 100644 demo/src/components/FileMenuBar/RunButton.tsx delete mode 100644 demo/src/components/FileMenuBar/fileMenuBar.css delete mode 100644 demo/src/components/FileMenuBar/useGetJupyterInfo.ts delete mode 100644 demo/src/components/Home.tsx delete mode 100644 demo/src/components/InputArea.tsx delete mode 100644 demo/src/components/Instructions.tsx delete mode 100644 demo/src/components/JupyterIframe.tsx delete mode 100644 demo/src/components/ListCommands.tsx delete mode 100644 demo/src/components/ModeToggle.tsx delete mode 100644 demo/src/components/NoteBookBrowser.tsx delete mode 100644 demo/src/components/NotebookPage.tsx delete mode 100644 demo/src/components/PopoverListItem.tsx delete mode 100644 demo/src/components/TerminalBar/TerminalMenu.tsx delete mode 100644 demo/src/components/usePopover.ts delete mode 100644 demo/src/components/useWindowSize.ts delete mode 100644 demo/src/index.css delete mode 100644 demo/src/jupyter.css delete mode 100644 demo/src/main.tsx delete mode 100644 demo/src/vite-env.d.ts delete mode 100644 demo/tsconfig.app.json delete mode 100644 demo/tsconfig.json delete mode 100644 demo/tsconfig.node.json delete mode 100644 demo/vite.config.ts delete mode 100644 packages/css-extension/.copier-answers.yml delete mode 100644 packages/css-extension/.github/workflows/build.yml delete mode 100644 packages/css-extension/.github/workflows/check-release.yml delete mode 100644 packages/css-extension/.github/workflows/enforce-label.yml delete mode 100644 packages/css-extension/.github/workflows/prep-release.yml delete mode 100644 packages/css-extension/.github/workflows/publish-release.yml delete mode 100644 packages/css-extension/.github/workflows/update-integration-tests.yml delete mode 100644 packages/css-extension/.gitignore delete mode 100644 packages/css-extension/.prettierignore delete mode 100644 packages/css-extension/.yarnrc.yml delete mode 100644 packages/css-extension/CHANGELOG.md delete mode 100644 packages/css-extension/LICENSE delete mode 100644 packages/css-extension/README.md delete mode 100644 packages/css-extension/RELEASE.md delete mode 100644 packages/css-extension/babel.config.js delete mode 100644 packages/css-extension/install.json delete mode 100644 packages/css-extension/jest.config.js delete mode 100644 packages/css-extension/jupyter_css_loader/__init__.py delete mode 100644 packages/css-extension/package.json delete mode 100644 packages/css-extension/pyproject.toml delete mode 100644 packages/css-extension/setup.py delete mode 100644 packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts delete mode 100644 packages/css-extension/src/index.ts delete mode 100644 packages/css-extension/style/base.css delete mode 100644 packages/css-extension/style/index.css delete mode 100644 packages/css-extension/style/index.js delete mode 100644 packages/css-extension/tsconfig.json delete mode 100644 packages/css-extension/tsconfig.test.json delete mode 100644 packages/css-extension/ui-tests/README.md delete mode 100644 packages/css-extension/ui-tests/jupyter_server_test_config.py delete mode 100644 packages/css-extension/ui-tests/package.json delete mode 100644 packages/css-extension/ui-tests/playwright.config.js delete mode 100644 packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts delete mode 100644 packages/css-extension/ui-tests/yarn.lock diff --git a/README.md b/README.md index dbff852..c052680 100644 --- a/README.md +++ b/README.md @@ -128,47 +128,6 @@ For further information please consult the Jupyter documentation: - Creating an extension: https://jupyterlab.readthedocs.io/en/stable/extension/extension_dev.html - Adding commands to the command registry: https://jupyterlab.readthedocs.io/en/stable/extension/extension_points.html#commands -## Demos - -### Local Demo - -To run the demo on a local Jupyter Lab instance: - -1. Follow the [development install instructions](#development-install) -2. `cd demo` -3. Start JupyterLab: - -```bash -jlpm start:lab -``` - -4. In another terminal, start the demo app: - -```bash -jlpm start:local -``` - -Open http://localhost:8080 in your browser. - -### Lite Demo - -To run the demo on a Jupyter Lite instance: - -1. Follow the [development install instructions](#development-install) -2. `cd demo` -3. Build and start the demo app: - -```bash -# Build the lite assets -jlpm build:lite - -# Build the demo -jlpm build:ghpages - -# Start the development server -jlpm start:lite -``` - ## Uninstall To remove the extension, execute: diff --git a/demo/.gitignore b/demo/.gitignore deleted file mode 100644 index 54f07af..0000000 --- a/demo/.gitignore +++ /dev/null @@ -1,24 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -pnpm-debug.log* -lerna-debug.log* - -node_modules -dist -dist-ssr -*.local - -# Editor directories and files -.vscode/* -!.vscode/extensions.json -.idea -.DS_Store -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw? \ No newline at end of file diff --git a/demo/README.md b/demo/README.md deleted file mode 100644 index fe47ff5..0000000 --- a/demo/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# React + TypeScript + Vite - -This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. - -Currently, two official plugins are available: - -- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh -- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh - -## Expanding the ESLint configuration - -If you are developing a production application, we recommend updating the configuration to enable type aware lint rules: - -- Configure the top-level `parserOptions` property like this: - -```js -export default tseslint.config({ - languageOptions: { - // other options... - parserOptions: { - project: ['./tsconfig.node.json', './tsconfig.app.json'], - tsconfigRootDir: import.meta.dirname - } - } -}); -``` - -- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked` -- Optionally add `...tseslint.configs.stylisticTypeChecked` -- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config: - -```js -// eslint.config.js -import react from 'eslint-plugin-react'; - -export default tseslint.config({ - // Set the react version - settings: { react: { version: '18.3' } }, - plugins: { - // Add the react plugin - react - }, - rules: { - // other rules... - // Enable its recommended rules - ...react.configs.recommended.rules, - ...react.configs['jsx-runtime'].rules - } -}); -``` diff --git a/demo/config/cell-toolbar.json b/demo/config/cell-toolbar.json deleted file mode 100644 index 44debbe..0000000 --- a/demo/config/cell-toolbar.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "showToolbar": true, - "toolbar": [ - { - "name": "run-cell", - "command": "notebook:run-cell", - "icon": "ui-components:run", - "rank": 1 - }, - { - "name": "copy-cell", - "command": "notebook:copy-to-clipboard", - "icon": "ui-components:copy", - "rank": 2 - }, - { - "name": "duplicate-cell", - "command": "notebook:duplicate-below", - "rank": 3 - }, - - { - "name": "delete-cell", - "command": "notebook:delete-cell", - "icon": "ui-components:delete", - "rank": 4 - } - ] -} diff --git a/demo/config/jupyter-lite.json b/demo/config/jupyter-lite.json deleted file mode 100644 index 7ae9232..0000000 --- a/demo/config/jupyter-lite.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "jupyter-lite-schema-version": 0, - "jupyter-config-data": { - "disabledExtensions": [ - "@jupyterlab/mainmenu-extension", - "@jupyterlite/application-extension:logo", - "@jupyterlab/help-extension:resources", - "@jupyter-notebook/lab-extension" - ] - } -} diff --git a/demo/config/overrides.json b/demo/config/overrides.json deleted file mode 100644 index c49df8f..0000000 --- a/demo/config/overrides.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "@jupyter-notebook/application-extension:top": { - "visible": "no" - } -} diff --git a/demo/example.ipynb b/demo/example.ipynb deleted file mode 100644 index f8206a4..0000000 --- a/demo/example.ipynb +++ /dev/null @@ -1,73 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example Notebook\n", - "\n", - "This is a simple example notebook that demonstrates basic Python functionality." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Create a simple list of numbers\n", - "numbers = list(range(1, 7))\n", - "print(f\"Numbers: {numbers}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Calculate the sum and average\n", - "total = sum(numbers)\n", - "average = total / len(numbers)\n", - "\n", - "print(f\"Sum: {total}\")\n", - "print(f\"Average: {average}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Create a simple multiplication table\n", - "n = 5\n", - "for i in range(1, n + 1):\n", - " for j in range(1, n + 1):\n", - " print(f\"{i * j:3}\", end=\" \")\n", - " print()" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3.11 (ipykernel)", - "language": "python", - "name": "python3.11" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.11.11" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/demo/icons/arrowDown.svg b/demo/icons/arrowDown.svg deleted file mode 100644 index 9d48dd4..0000000 --- a/demo/icons/arrowDown.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/bullets.svg b/demo/icons/bullets.svg deleted file mode 100644 index 1e8ee48..0000000 --- a/demo/icons/bullets.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/clipboard.svg b/demo/icons/clipboard.svg deleted file mode 100644 index b20cbe2..0000000 --- a/demo/icons/clipboard.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/code.svg b/demo/icons/code.svg deleted file mode 100644 index 7191ce4..0000000 --- a/demo/icons/code.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/fullscreen.svg b/demo/icons/fullscreen.svg deleted file mode 100644 index a1208fe..0000000 --- a/demo/icons/fullscreen.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/indicator.svg b/demo/icons/indicator.svg deleted file mode 100644 index 0681628..0000000 --- a/demo/icons/indicator.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/demo/icons/keyboard.svg b/demo/icons/keyboard.svg deleted file mode 100644 index 88eaaab..0000000 --- a/demo/icons/keyboard.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/markdown.svg b/demo/icons/markdown.svg deleted file mode 100644 index 26d7158..0000000 --- a/demo/icons/markdown.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/play.svg b/demo/icons/play.svg deleted file mode 100644 index 34ffc4b..0000000 --- a/demo/icons/play.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/plus.svg b/demo/icons/plus.svg deleted file mode 100644 index d64f209..0000000 --- a/demo/icons/plus.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/redo.svg b/demo/icons/redo.svg deleted file mode 100644 index a92fd3a..0000000 --- a/demo/icons/redo.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/demo/icons/save.svg b/demo/icons/save.svg deleted file mode 100644 index 5d31d11..0000000 --- a/demo/icons/save.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/icons/undo.svg b/demo/icons/undo.svg deleted file mode 100644 index 43753ff..0000000 --- a/demo/icons/undo.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/demo/index.html b/demo/index.html deleted file mode 100644 index e4b54cf..0000000 --- a/demo/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - Jupyter iframe - - -
    - - - diff --git a/demo/jupyter_server_config.py b/demo/jupyter_server_config.py deleted file mode 100644 index 414d82b..0000000 --- a/demo/jupyter_server_config.py +++ /dev/null @@ -1,15 +0,0 @@ -# do not open JupyterLab in a browser after starting -c.ServerApp.open_browser = False - -# disable the token for easier testing in an IFrame -c.ServerApp.token = "" - -# Allow embedding JupyterLab in an IFrame from a specific host -c.ServerApp.tornado_settings = { - "headers": { - "Content-Security-Policy": "frame-ancestors 'self' http://localhost:8080 http://127.0.0.1:8080" - } -} -c.ServerApp.allow_origin = "http://localhost:8080" - -c.ServerApp.disable_check_xsrf = True diff --git a/demo/package.json b/demo/package.json deleted file mode 100644 index 636a10e..0000000 --- a/demo/package.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "demo-react", - "private": true, - "version": "0.0.0", - "type": "module", - "scripts": { - "dev": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite", - "build": "tsc && VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite build --base=./", - "build:ghpages": "tsc && VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite build --base=./", - "build:lite": "jlpm clean:lite && jupyter lite build --contents ../README.md --contents ./example.ipynb --lite-dir ./config --output-dir ./public/lite", - "clean:lite": "rm -rf public/lite", - "preview": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite preview", - "start:lab": "jupyter lab --config jupyter_server_config.py", - "start:lite": "jlpm dev", - "start:local": "VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite --port 8080", - "lint": "eslint ." - }, - "dependencies": { - "jupyter-iframe-commands-host": "^0.1.0", - "react": "^19.0.0", - "react-dom": "^19.0.0", - "react-router": "^7.3.0" - }, - "devDependencies": { - "@eslint/js": "^9.19.0", - "@types/react": "^19.0.8", - "@types/react-dom": "^19.0.3", - "@vitejs/plugin-react": "^4.3.4", - "eslint-plugin-react-hooks": "^5.0.0", - "eslint-plugin-react-refresh": "^0.4.18", - "globals": "^15.14.0", - "typescript": "~5.7.2", - "vite": "^6.1.0" - } -} diff --git a/demo/public/tiledb.svg b/demo/public/tiledb.svg deleted file mode 100644 index 56c07af..0000000 --- a/demo/public/tiledb.svg +++ /dev/null @@ -1,3 +0,0 @@ - \ No newline at end of file diff --git a/demo/soma.ipynb b/demo/soma.ipynb deleted file mode 100644 index c28312d..0000000 --- a/demo/soma.ipynb +++ /dev/null @@ -1,627 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "0", - "metadata": {}, - "source": [ - "# TileDB-SOMA ML Webinar: Cell Similarity Search\n", - "\n", - "In this tutorial, you will use [TileDB-Vector-Search](https://cloud.tiledb.com/academy/structure/ai-ml/vector-search/) to perform cell similarity search using:\n", - "- [CZI CELLxGENE Census](https://chanzuckerberg.github.io/cellxgene-census) (74 million human reference cells)\n", - "- [scVI embeddings](https://www.nature.com/articles/s41592-018-0229-2)\n", - "\n", - "You can use cell similarity search for:\n", - "\n", - "- Sample reference mapping:\n", - " - Automatic cell annotation based on retrieved similar cells (e.g. cell_type) to bootstrap the analysis of a new sample.\n", - "\n", - "- Interactive analysis:\n", - " - For cells of interest, interactively explore similar cells from the reference dataset, applying structured restricts.\n", - "\n", - "**Contents**\n", - "* [Setup](#setup)\n", - "* [Indexing](#indexing)\n", - "* [Similarity Search](#similarity-search)\n", - "* [Sample reference mapping](#sample-reference-mapping)\n", - "* [Cell interactive analysis](#cell-interactive-analysis)\n", - "\n", - "\n", - "## Setup
    \n", - "\n", - "Import libraries and setup URIs." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "id": "1", - "metadata": {}, - "outputs": [], - "source": [ - "import warnings\n", - "\n", - "import numpy as np\n", - "import pandas as pd\n", - "import scanpy as sc\n", - "import tiledb.cloud\n", - "from tiledb.vector_search.object_api import object_index\n", - "\n", - "warnings.filterwarnings(\"ignore\")\n", - "\n", - "index_uri = \"tiledb://TileDB-Inc/cell-census-2024-07-01-scvi-index\"\n", - "\n", - "# Set region and no_sign_request for S3\n", - "config = tiledb.cloud.Config().dict()\n", - "config[\"vfs.s3.region\"] = \"us-west-2\"\n", - "config[\"vfs.s3.no_sign_request\"] = \"true\"" - ] - }, - { - "cell_type": "markdown", - "id": "2", - "metadata": {}, - "source": [ - "## Indexing \n", - "\n", - "You can index the Census in TileDB using distributed execution for both embedding generation and vector indexing. \n", - "\n", - "![Census embedding generation](data:image/png;base64,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AgoooICBTP8GFFBAAQUUUEABBRRQQAEFFFBAAQUUUKDqBQxkVv0pcgcVUEABBRRQQAEFFFBAAQUUUEABBRRQwEBmM/4Gxo8fH958880wefLkZiztIgoooIACCiiggAIKKKCAAgoooIACCihQqkCXUhdozvwTJ04KEydNrljgr66uLnTuNOWnc/nisieddFL47LPPpjrcddddN/Tv3z9ccMEF4eSTTw5PPfVUeOaZZ8Jpp5021bzZCQcccEAYN25cYF9nm222sOCCC4YBAwaEnj17huHDh4dTTz01N/s888wTVlhhhbDRRhvlpuW/YfsEVA899ND8r/ysgAIKKKCAAgoooIACCiiggAIKKKBAzQlUNJBJi8XxEyZVLICZzgbbmTBxcgyWdu3SKQYL03fNfd1jjz1i4PHtt98OQ4cODQceeGCYdtppw/TTTx969+4dzjvvvNCjR4+Cq584ceKUoGrnqb5bbbXVwoorrhjeeuut8Oyzz8ZAaTYQucsuu4S55porvPTSS+G2224Liy66aCCoWUqaNGlS6NRp6oDuhAkTQpcuFT3dpeym8yqggAIKKKCAAgoooIACCiiggAIKKFCSQEUjW60RxMwebQqcdus6dRAxO18x7+ecc84428iRI+Nr3759YxCTDwQizz333HDKKafE79KvMWPGhCuuuCJ+T5Bzs802C7TgTGmWWWaJwUkClEsssUQ466yzAoHSGWecMc5CS81+/frFVpr33Xdf+P7779Oijb7SGpTg6tdffx2Do8sss0zYc889Y0Dz888/D1dddVX49NNPw0wzzRR22mmnsPTSSze6Pr9UQAEFFFBAAQUUUEABBRRQQAEFFFCg2gQqFsikO3lbjCHJNtl2ObuZF3vSbrjhhkDg85hjjglffPFFGDJkSJh33nnjT/466FpOt/KPP/44EHgkEbykq/o777wTA6CLL754nH7TTTflLOeff/6w0korxenZX6+//noYOHBgDGbeeOONYY011ggLL7xwOP/880OfPn3C4MGDw+OPPx6uvPLKGEC1dWZWz/cKKKCAAgoooIACCiiggAIKKKCAAtUuMHUf5DLtMWNitlVqq23TUpOWmAQM33///dC9e/fwwQcfFGQg4MoPY2amNPPMM4c55pgjdicnoMk6UmK+7LxpenqllSeBz7XWWivuw4cffhi+/PLL8O2334YNNtggdlnfcccdYyvSQl3P03p8VUABBRRQQAEFFFBAAQUUUEABBRRQoBoFKtYisy1aYybgtto241NON910MWjIvuywww4hdVFP+5ZeCVL+8ssv9Vpr8oCfBRZYIAYejzvuuPDII4/EVpV0B28qETQlEexMrS3Zn2xK3zUWEM3O73sFFFBAAQUUUEABBRRQQAEFFFBAAQWqRaBigcxqOcDW3A+6co8YMSIstNBC8Ynid9xxR+g3ZczLlL755ps4fuawYcPCc889F+abb744ZibjWJJ45SFBPC2deRdbbLG0aLNeZ5999jiu50MPPRS7lz/22GPhySefjF3Lu3bt2qx1upACCiiggAIKKKCAAgoooIACCiiggAJtIVCVgcznv/xPt/QVZ/tft+u2wCl1m7/73e/iuJjHH3987FZOC0ueQp4S3cWffvrp2H2ccTEHDBgQunXrlr4O119/fXxPq06+33LLLXPfNecNXcgPOuig+AAixsjkqeu77rprMIjZHE2XUUABBRRQQAEFFFBAAQUUUEABBRRoS4G6Kd2wKzKY5dhxE5p1XAQxX/jqP7u0wqx1obnBzO7d2i5GO27cuNi9u5rGouSJ6ozfaVJAAQUUUEABBRRQQAEFFFBAAQUUUKA9CrR5IPOmv/8U3eZfvlcugJkPSUBzmh/GhzffGxd22nza/K8Lfm7LQGbBHXKiAgoooIACCiiggAIKKKCAAgoooIACCjRboO2aLU7ZZYKY/Cy5ULew5trThs9HN3wcx5z9bfySYOYph87c8Ix+o4ACCiiggAIKKKCAAgoooIACCiiggAI1J9CmgUyCkqQ3prw+/uh/WmYWEr7zv/MV+s5pCiiggAIKKKCAAgoooIACCiiggAIKKFD7Am0ayMzypi7m2Wm+V0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFEOgkgwIKKKCAAgoooIACCiiggAIKKKCAAgooUO0CVdEikzEyd2ziIT43TxlLky7opvYjMGnSpPD000+HhRZaKPTp06f97Lh7WlDA81mQxYkKKKCAAgoooIACCiiggAIKKNBKAlURyCRA+cZ/H+bTSsdd1Zs56aSTAkEj0tFHHx26du3aavv7888/hzPOOCNur0ePHuGII45octtvvfVWuOWWW+J8iyyySNhhhx3i+0GDBoUbb7wxdOvWLbz44oth1llnbXJdzlC9Ap7P6j037pkCCiiggAIKKKCAAgoooIACHUGgKgKZHQG6lGO8+OKLw8SJE+Mif/zjH1s1kPnLL7+Eiy66KG57hhlmKCqQ+cEHH+SW2WSTTXKBzE8//TSuZ9y4ceHLL780kFnKH0EbzXv55ZeHESNGxK3vvvvuYfbZZ8/tieczR+EbBRRQQAEFFFBAAQUUUEABBRRoA4GqCGTatbwNznwrbJKWnVdeeWVYcsklw9JLL90KW3QTLRW44YYbAi1sSZtuumm9QKbns6W6Lq+AAgoooIACCiiggAIKKKCAAi0RqIpAZnvpWk53706dSns+UmPLNPZdoZNayvyVmjftVzHrn2+++cLJJ5+cFmn0lRaonTt3bnQevpw8eXKcp66ursl5S5mhuestxiF/P0rZVnPWP378+AZb8U6YMCF06dK8f/tiz2dz9hmjYv8G8j39rIACCiiggAIKKKCAAgoooIACHUOgtKhcBU1olZn9qeCmSlr16NGjw4UXXhh22mmnsMACC4RlllkmDBw4MDzwwAP11vP444+HJZZYIv4wxuV7770Xdtttt7jMGmusEc4777w4/6hRo8Khhx4all122dC3b9+w9dZbh3feeafeurIf6JZ93HHHxVaNbH+XXXaZattp/o8//jiccsopge7d88wzT1hzzTXD4YcfHt599900S73Xf/7zn2HnnXcOBKj69+8fg44EwRpKBOCw2GyzzeL6V1999XDrrbc2NHvYcccdcyavvPJKnO+ss87KTbv33nsDbr/5zW/C/PPPHxZbbLFo88MPP0y1zmHDhoUDDjggLsvDg/bcc8/wzTffxG7syZ15Sk3NWW+xzvl/E3TN3nfffeMxYL799tsHuuXnp2L/5saMGZOzXG+99cLXX3+dO5/HHntsbrXY87e46KKLhjnnnDO2juXcvPDCC7l5Hn744bgu/m5TYqxTbJ977rk4qdD5TPMOHz48nHrqqWHzzTfP/W0wLMJTTz2VZomv2X3ecsstA3/fgwcPDquuumr8f1h33XXDQw89VG8ZPyiggAIKKKCAAgoooIACCiiggAIINK9pVpntCGAuMeUnP7X1U8oJshA4fPLJJ3O7RpBp6NCh4a677goXXHBB2HbbbeN3zEsgicR4kIwvmIJUBIcI8vCwGwJ/TzzxRJyPXzzVm4AWAZ/pppsuNz294WE/2WDhfffdFwg63XzzzYFAYkqfffZZDIp+8cUXaVIMYBLE/Pvf/x5uu+22GChMXxKI3WuvvXJjcTI2Jsfz+eefp1mmeuUYzj///Nz0999/P+y///5hm222yU3LviFom0xSgBS/NO31118PQ4YMCT/99FNcjH2gazOBwjvuuCO3Ko6NoFpaji84Jqaz3jQ9bSO3YBNvmrPeUpyzfxNfffVV/Ft6++23c3v12GOPxaDws88+G2aaaaY4vZS/OQLL6dhpZXnkkUfmgty0iiRxnvlbzNrw98kPgdY///nPYdddd40BxbSuuOCUX9999118m5YtdD6ZAZOtttoqZP/2+Nvgh/PJ8AIbbbRRXFd2n2ecccY4BisPhEqJwDKB7dtvvz2sttpqabKvCiiggAIKKKCAAgoooIACCiigQKiKFpkELG/6+0/1fto6iMnfxoEHHpgLYq688srxgTa0jpxrrrniU8X5nqdx5ycCjwSk9ttvv7Dgggvmvj744IMDreMIjtJqMnVTJ8hFYK5QIqBHC1CCiLQGJRFY2mOPPcKPP/4YP/Ok8e222y4GkljngAEDwjXXXBOX69WrV/j2229jsJFAIYmWjKwzPVBopZVWigEtWjlmA4hx5v/+opVcNojJ9k477bSwwQYbxCBpdt5i39M6c+aZZw577713PSeCu/ykRMA1BdloUXj88ceHo446KnzyySe58RzTvKW8lrreUp2z+8JT3QkSc+4JQKeu8QQLecBOSs39myOIyN9Qv3794jZoSUkwk6fO8/fC9nh/9913h8MOOyxujvOfHuy01FJLxda2c8wxR9qVQItKWuDSArahRGCaYH4KYtIik8AlrY75W6QrO86pRW52PQQ6/+///i+OxUkwvHv37rmvzzzzzNx73yiggAIKKKCAAgoooIACCiiggAIIVEWLzGo8FXSBTcHF1JKya9eucVfpAk03WwJFjz76aFh++eXrHQKt4+g23bt37xjM5EE3KWhIt3NanJFoiUmrPBKtEAslulPTKpP029/+Nnb1JYD5/fffhzfeeCN2yaWLcFqeB7Tw1HPSxhtvHINDBCAJZhJMogsvrwSgSL/61a9iIDIdG8Gnyy67LH6X/ZVtRUoQlgAXidZ866+/fnjzzTezsxf1nidi0205BXRXXHHFGJxkYVrmsa8c62uvvZZb3/XXX59rWbrIIovE7ee+/O8bAncffvhh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d999d0tW1eiy+UHM1CqzVoKZBjIbPf1+qYACCiiggAIKKKCAAgoooIACCijQVgLXX399+Pzzz+tt/pRTTglnnHFGqHRw7rHHHgs33nhj2HXXXVscyOzcuXNYdNFFw8wzz5w7lvnnnz8sscQS4c4778xNa8mb/CBmWlctBTMdIzOdVV8VUEABBRRQQAEFFFBAAQUUUEABBapS4KuvvgqffPJJuOKKK+L+HX744WHSpEm5ff3xxx/D008/HYYPH56blt5888038bv3338/TJ48OU0OH3/8cXj55ZcDrSVJv/zyS/zMdvLTW2+9FZ5//vncvHyflp8wYUJ444034g/7xDbefffdwDIp0aWc7t577bVXnPTqq6+Gn376KXzxxRdxm2y7JamhIGZaJ8HMFNBM09rjq4HM9njW3GcFFFBAAQUUUEABBRRQQAEFFFCggwn06NEjbL755mGOOeaIR566nJ933nlhgQUWCFtvvXVYaaWVwvbbbx+Dksx05ZVXhsUXXzx+t/rqq8cWkKmF5wknnBA22WST8N1338X1EQTl80UXXRQ/p1+DBw8O66yzTthiiy3CIossEj744IP4VVp+4MCBYf31148/BCv5TPd3ltlmm23SasIGG2wQ9t577/h5o402iq8ETdnme++9l5uvOW8IUi699NLxJ3/5NJ1gJz/tORnIbM9nz31XQAEFFFBAAQUUUEABBRRQQAEFOoDAuHHj4liZt956a+xqTjCzd+/e4eGHHw6nnnpqDBrSRfuPf/xjoEv4mWeeGVtP0g192mmnjdPopk7629/+VpLYRx99FIYMGRJ233332Ipy//33r7c8+3bZZZeFWWaZJXZFHzlyZLjqqqvCQgstFJ588sl6LTPTgo888kh827dv38B75m1JYixRfgp1tyeQmb7nfXtOjpHZns+e+66AAgoooIACCiiggAIKKKCAAgp0AIG555673lEeccQR8TNBS9IKK6wQRowYEVtm8pkAYpcuXWKwk1aPt99+e1hjjTXiw3ummWYaZik6ERzdaqut4g8P6qFbeLYr+LHHHhsWXnjh8NJLL4VLLrkkHHzwwbFFJi0/jznmmPDmm2+GxRZbrN720ucZZphhqu/qzeiHegK2yKzH4QcFFFBAAQUUUEABBRRQQAEFFFBAgWoTYEzMAQMGxN3acsstw4477hjff/jhh/GV7uBH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FFBAAQUUUEABBWpEwEBmjZxID0MBBRRQQAEFFFBAAQUUUEABBRRQQIFaFjCQWctn12NTQAEFFFBAAQUUUEABBRRQQAEFFFCgRgQMZNbIifQwFFBAAQUUUEABBRRQQAEFFFBAAQUUqGUBA5m1fHY9NgUUUEABBRRQQAEFFFBAAQUUUEABBWpEwEBmjZxID0MBBRRQQAEFFFBAAQUUUEABBRRQQIFaFuhSzQf31VdfhVtvvTV8/PHHYaaZZgqrrLJKWHfddeMujx8/Pnz//fdhhhlmCF27dm3yML755pvQs2fP+NPkzM6ggAIKVKHAWWedFX744Ye4Z9NOO21YaaWVwoorrhh69OhRtr19+eWXw5133hkOOuig0Lt377Kt1xUpoIACrSUwceLEcN9994XXXnstlhUXXHDBMGDAgFiWbMk+lFr2bMm2XFYBBVpPoLF7TvaipfeRP//8c+BnlllmKfmgRo8eHU4//fSw4YYbhtVWW63k5V1AAQUUqEWBqm2ROWrUqHDooYeGV199NSy88MKBwuN5550X7rrrrngehg0bFvbcc8/Aa1OJAi3z3n777U3N6vcKKKBA1QqQ333++edhttlmC2PGjAkXXHBBzCfLucMjR46M+S7rNymggALtTWDy5MnhnHPOCUOGDAnDhw8P008/fQxqUqb88ssvW3Q4pZQ9W7QhF1ZAgVYTaOqesxz3kdyDci/KukpNEyZMiOWyESNGlLqo8yuggAI1K1C1LTJpFfTTTz+FI488Miy55JLxBFx++eWxNRI32tS0k3gdN25cbJX0448/hueffz588MEHoU+fPmGDDTYItFq64YYb4rzUzFOg3XLLLcODDz4YmH/rrbeO37300kvhjTfeCLvttlv8/M4778R1derUKSy77LJhscUWi9P9pYACCrSlQL9+/cK+++4bd+GRRx4J5557bnjrrbfCrLPOGu6+++6w9tprB+ahsHzdddeFpZdeOiyzzDLh+uuvj/kYlULMv/zyy4clllgi1NXVFTwc8t8bb7wxEBRYc801w9xzzx2eeOKJ2EL+d7/7XVyOYOfNN98c18P6TAoooEBbCzz88MMxr/rtb38btttuu5hX0bPnkEMOCf/85z/DHnvsEXfxX//6V3juuediWZN8sn///rldL1QGbKjsmVvINwoo0C4FGrvn5IAK3UdSxnrhhRdig5ru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ZHPPussp0HyBcucZTd1z0royex/J8xkIQlImo/KYchDDoJHvkEcwpvhqq60Wn0yejpKhymglTpmN7TEv+RIPU6TimHtR1ktwlPtQyowEORnqjGc18CAgKpLTEEFpvb4qoIAC1SKQnzdXer/qptQoTa7ERrLdtlu6/tS0vtB6yOi5seZGnsS800wzTe5JldllOFTmzyJzI5+Wzc7Le57sy/ysz6SAAgqUIkCFSzaVM0/Mrjf/fcrSm+rWlL9coc/kj/xk80zmY9gOCu+XXnppbMFUaFmnKaCAAsUIVDKvpFUTra0IQhRK5G+U8wp931gZML/sWWjdTlNAgcoIVDLPaOyeM/8+kryFe9AuXYofqY0eNFS2ZMtolA/zjwk58iC2mYYOqoyma1VAAQXKI1AoHyvPmguvpfict/DyrTKVGvKGUn7m3ti8XDTyb8gbCmKyPS5MpVycGtpHpyuggAKtJZAtHLd0m+SP2TySAvgBBxwQWyQNGDDAIGZLgV1eAQUqKkCQoVCQMm00P49L03ltrAyYX/bMLud7BRRovwKl3Efm31MWc9SF8qOGbv69By1G1HkUUKCjCrSLQGZHPTketwIKKFBNArQO2G677WIX9QUWWKCads19UUABBRRQQAEFFFBAAQUU6AACBjI7wEn2EBVQQIFyCPDgM8bLNCmggAIKKKCAAgoooIACCijQFgJV+9TytsBwmwoooIACCiiggAIKKKCAAgoooIACCihQnQIGMqvzvLhXCiiggAIKKKCAAgoooIACCiiggAIKKJARMJCZwfCtAgoooIACCiiggAIKKKCAAgoooIACClSngIHM6jwv7pUCCiiggAIKKKCAAgoooIACCiiggAIKZAQMZGYwfKuAAgoooIACCiiggAIKKKCAAgoooIAC1SlgILM6z4t7pYACCiiggAIKKKCAAgoooIACCiiggAIZAQOZGQzfKqCAAgoooIACCiiggAIKKKCAAgoooEB1ChjIrM7z4l4poIACCiiggAIKKKCAAgoooIACCiigQEbAQGYGw7cKKKCAAgoooIACCiiggAIKKKCAAgooUJ0CBjKr87y4VwoooIACCiiggAIKKKCAAgoooIACCiiQEeiSeV91b+vq6kKnTp2n/JQv3jpp0qQwadLEMHny5Ko7XndIAQUUUEABBRRQQAEFFFBAAQUUUEABBQoLlC9CWHj9zZ5KELNLl65lDWKyMwRFWS/rNymggAIKKKCAAgoooIACCiiggAIKKKBA+xCo2kAmLTErmSq9/kruu+tWQAEFFFBAAQUUUEABBRRQQAEFFFCgowlUcSCzsrtWzu7qHe2PxuNVQAEFFFBAAQUUUEABBRRQQAEFFFCgtQUqGy1s7aNxewoooIACCiiggAIKKKCAAgoooIACCihQkwIGMmvytHpQCiiggAIKKKCAAgoooIACCiiggAIK1JaAgczaOp8ejQIKKKCAAgoooMAUgffffz88+uijWiiggAIKKKCAAgrUkECXGjqWih7K6NGjwzvvvBOmmWaasOCCC4auXbvmtvevf/0r/Pzzz2H++ecPnTv/7yFFP/30U/j888/DzDPPHGaZZZbc/LyZNGlSGDZsWJx/oYUWmvIk9YZPxbfffhvee++9sMACC0y1npEjRwZ+CqX55psvrpdlC6Xpp58+zDbbbHH57Dr69OkTZpxxxqkWKXVb3bp1C/PMM0/Znzw/1Y45QQEFosDXX38dLrvssrDddtvFfGrEiBHhu+++i/+HPXr0KFmppcuXvMEqX+C1114L99xzTzjggAPCtNNOG4YPHx7Gjx8frfPtq/xQ3D0Fal6A/03+X1999dWw7LLLBso8+WnixInh3Xffjf/HiyyySOjevXv+LCHlg3POOWfo1avXVN+nCZQT33777TDDDDPE8mChsdgpK7711luxjEUZLTvPjz/+GL744ou0utwr5THKZaRi5skt6BsFFChZ4N///nf49NNP43U9/94trYxy1RtvvBHv78g3svd+aR5ef/nll/DZZ5/lJk033XRh9tlnz32u9Jti8jfuRz/44IPwww8/hEUXXbRgHlfMetKxcLwcdzbfSt819prytplmmin86le/qjcr95/cy/br168kv8mTJ8fKLFY2xxxzxHJbdsXFHHt2ft5j8eGHH8ZrRd++fet9PXbs2Hg9YbsNXU/qLeAHBRRokUDD0bMWrbb1Fr7jzSHhhc8eCCN//jL07jlbWGHuDcLWSwws2w5MmDAhnHHGGeGGG27IrZMA3XHHHRe22mqrOI33zz//fHjkkUfqZb7PPPNMOOSQQ8I+++wTDjrooDgvmeaf//zncPfddwcCnSSCony/++67x8/p15tvvhkGDx6cy4SZvthii4VzzjknUKAm/d///V/461//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AQUUUEABBRRQQAEFFOggAgYyO8iJ9jAVUEABBRRQQAEFFFBAAQUUUEABBRRozwIGMtvz2XPfFVBAAQUUUEABBRRQQAEFFFBAAQUU6CACBjI7yIn2MBVQQAEFFFBAAQUUUEABBRRQQAEFFGjPAgYy2/PZc98VUEABBRRQQAEFFFBAAQUUUEABBRToIAIGMjvIifYwFVBAAQUUUEABBRRQQAEFFFBAAQUUaM8CBjLb89lz3xVQQAEFFFBAAQUUUEABBRRQQAEFFOggAgYyO8iJ9jAVUEABBRRQQAEFFFBAAQUUUEABBRRozwLtNpD5888/F+Ve7HxFrcyZFFBAAQUUqEKBMWPGhMmTJ1fhnrlLCiiggAIKKNBcAe9lmyvncgooUMsCXar14F5++eVw5513TrV7AwcODC+++GK4+uqrw5VXXhlmnHHGqeZJEz788MMwaNCgcMQRR4RVVlklTZ7q9amnngr3339/OOaYY0K3bt2m+r6UCX//+9/Dq6++Go499thSFnNeBRRQQIF2LHDWWWeFH374IR4B16VFF100rLDCCqF3794VOapvvvkm9OzZM/5MmjQp7LnnnmHttdcOe++9d0W250oVUEABBRSoJoHbbrstvP7661Pt0uDBg0OXLq17izt+/Pjw/fffhxlmmCF07dp1qn1qakJD94933XVXUfe8Ta3f7xVQQIFaE6jaFpkjR46MAUFu1GadddbcDxeHlVdeOd6scbFoLM0999xhr732Cosvvnhjs4URI0bEbU2cOLHR+Yr58l//+lfBi2oxyzqPAgoooED7FBg2bFj47LPPYuXaJ598Ei6++OJYkfbFF1+U/YC4VhG4vP322+O6O3XqFK+JG2ywQdm35QoVUEABBRSoRoFPP/00vPnmm7l7xHS/WFdX1+q7SxmA6zKvzUkN3T8We8/bnG26jAIKKNCeBVq3uqoZUtttt12Yb7756i3JReurr74KY8eODR988EFsobnFFluEhx56KLaoXHfddcP0008ffvzxx0CrlW+//TZ+HjduXGx5+fnnn4f5558/LL/88rHmLK38u+++C9SIde7cObCObGtPtkkr0WmmmSasuuqqYc4554yL0ZXviSeeCO+++26TAdO0HV8VUEABBWpPgOvKIYccEg9s+PDh4YQTTginnXZaOPfccwOVc3fffXdsNdmvX79AMPK6664L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h4nffPNN/EszzDbbbKFPnz7pZdUfx4wZE9588824zgUWWCC0bz99LHncuHHhrbfeCl26dAkLL7xw6Nhx+sNUSj3szJQpU8J7770X92uuueYKPXv2LHkfv/766zBy5MjQv3//0KNHj7jcjz/+GL766qvp6sAQy4ZKQ9vD8Xn33XfjMZxzzjkbqi6+//HHH4effvopLLTQQtN4sq5PPvkkDBs2LCy66KLNepxL2nBnUkCBmhMYPXp0/P7u3bt3WHDBBaf5Tsru7KhRo8KXX34ZZp111jDzzDNn32o1z4t99zZ2B4YPHx4uv/zysP3228fzfWPrqfZykyZNCh988MF0q+ncuXPu90cp80xXQSuc8O2334YRI0aEcn9ftMJddZMVUKAFC/zvf/8L33//fejevXuYe+6545aOHz8+Xgd07do1zDvvvLmt/+GHH+K1AdeUffv2zU3nnMy5OXvdw7UE16C8xzm9lGudXIU1/iRdE/Ibht8yFgUUUKA5BaaPkDXn2htYF1+QhxxySBg6dGhuzm233TYce+yxueDed999F/bdd9/wxhtv5ObZcMMNw8knn1wwaHfzzTeHiy66KDcvTwgorrnmmnFdHTp0mOa9Sr648sorw3nnnRcmT54cq+VkeOGFF4bFF188t5r77rsvHH300YFgJmWWWWYJ559/flhmmWVy85RST5r59ttvD8cff3x8efbZZ4eNN944vVX0kaDgpZdeGljPxIkTw8UXXxzWWmutOP9///vfaJu/8M477xyOPPLI/MnTvS62PfzY+POf/xweeOCB3DLLL7983PdigWYunk499dTcMs8991zo1q1bXJ6LzAMOOCD+gEkVcnHMZ6dQ8DjN46MCCijQGAG+1zm3XHbZZfEGEnVwkcS0JZZYYroqOa8dfPDB8Xtvl112me79ljyhvu/epmz3Cy+8EK6//vp4YcmNy0oUzi3//Oc/44VpKee/UtbJRe0222wz3azceOQcRyllnukqaIUTbr311nie/tvf/hb47WVRQAEFZoTAfvvtF955553ATcTHHnssXidyDbPDDjvE68HHH388tGvXLm4a1zf8bbnllvE6Im3v73//+3iTimsxEji4tjzooIOmSeBYYYUVAt932QBoWr41Pz799NNxfzfffPOSgrX/+c9/whlnnBG4Dv/tb38bDjvssNa8+267Agq0QoEWHcgkAMfFHgGo9dZbL9x4443htttui1+wf/jDHyL3gQceGL94//jHP4Y11lgj/Pvf/w7XXXddmH322eMFYrFjstVWW4Ull1wyZmc++eSTYfDgwYFsEL6UqxHoeuKJJ+KJb9lllw177713+OyzzwKBRU68jzzySDy5kjl56KGHxrtaBOgI5LI9zP/ggw+GmWaaKZRST9pnshv/+te/xrq5o1hqwfujjz4Kc8wxR7wDmV0OIwrbmc2OJRicyquvvhozJFdcccU0KT7Wtz0ESwli8qNis802iyZc0OJw1llnxeWz9ZIJtNNOO8V940cLd2Gzhc8Dd08JjnIH9eqrrw633HJLDChst9122Vl9roACCjRZgB/13ABaeeWVw+677x6/f/j+3n///cPDDz/c5PpbSgUNffc2ZTs32mijeGOR7+xKFQKZXHSuuuqqJd3IK2W9tFagbL311vF4p2U4F6VSyjxpXh8VUEABBRovQPICQUwClVwPcF239tprx2Ak113PP/98DFDScotC0C77yHMCctQzoK5VHxmZJHVwLicYSmIE56UhQ4bE69BjjjkmJnnESmrkH65FuX4miaShrNNTTjklXpPPM8880a1GCNwNBRRoZQItNpBJoI/A1mKLLZbLKOQCcd11141ftHvuuWfMWnzxxRdjAJOsTArByWeeeSbccMMN8S4azQkKldVWWy1suumm8S2CiUcddVQMghIM3WKLLeJ0MmzuueeeeMLj5Mgy+RkdnBy580fTdraV4Fqh5tucYGnqcPjhh+eyK9l27voRNCQQSLCNQgB3nXXWic9p/nDOOecEMkn32GOPeKJuqJ64YN0/p59+ehg7dmz49a9/Hc3S9IYeMSNozIU5Ad5sSRdnBAMJrOYXzAi8cvHIDwWax6dS3/ZgwI+E4447Li6zyiqrhPvvvz8eS5bPr5egKMeD48Yd1GwgEzN+wFAfQVkK28oPG4KhBjIjif8ooEAFBcjmJ7PyN7/5TUjdYjz66KOBLBCavHFzrVi59957480busDg/EMmfip078H7ZCtSB9nxnAspdDFC6wOyF3/3u9/FaZyLyPTnO5Qbdtzce+qpp+L7d955Z7woI3uerH8yFenqhCZhfJ/SMqGhG3n1fffGDcj8c+6558ZzEC6si+3lO5lzZVo339W/+MUvAs2y2RamE9DkHJi2nYtIWgO8/fbb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oIACClREwEBmRRitRAEFFFBAAQUUUEABBRRQQAEFFFBAAQWqKWAgs5q61q2AAgoooIACCiiggAIKKKCAAgoooIACFREwkFkRRitRQAEFFFBAAQUUUEABBRRQQAEFFFBAgWoKGMispq51K6CAAgoooIACCiiggAIKKKCAAgoooEBFBAxkVoTRShRQQAEFFFBAAQUUUEABBRRQQAEFFFCgmgIGMqupa90KKKCAAgoooIACCiiggAIKKKCAAgooUBEBA5kVYbQSBRRQQAEFFFBAAQUUUEABBRRQQAEFFKimgIHMaupatwIKKKCAAgoooIACCiiggAIKKKCAAgpURMBAZkUYrUQBBRRQQAEFFFBAAQUUUEABBRRQQAEFqilQtUDmDz/8EA499NBw1FFHhXHjxk23D9dff318/9FHH53uvcZMOPXUU2N9X3zxRWMWb7XLHH300XG/x4wZ02r3wQ1XQAEFFFBAAQUUUEABBRRQQAEFFFCgIYGqBTLHjh0b7rjjjnDjjTeGM888c7rteOGFF+L777777nTvNWbC/fffH+sbOXJkYxZvtcv8+9//jvs9YcKEVrsPbrgCCiiggAIKKKCAAgoooIACCiiggAINCVQtkJld8eDBg8NTTz2VneRzBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgZIGOJc/ZhBmnTJkSDj/88HDPPfeEXr16Fa2J+e66667w5JNPhg8//DAst9xy4Re/+EVYaaWVplnmk08+CTfccEN4/vnnw7zzzhsOO+ywad5PL2jefvvtt8cgKk2vV1xxxbDrrruGWWaZJc0SmH7ZZZeFV155JYwfPz6sttpqcZ0LL7xwbp78J6NHjw7XXHNNePzxx0OPHj3C7373u/D++++HBx54IPz6178OG2+8cbjvvvvCddddFzbZZJPQs2fP+Jx9Yd5JkyaFu+++O27XW2+9Feacc86w/fbbhw022CC3qn333Tdu21//+tdwxRVXxH0dOHBg2GqrrcKqq66amy89+emnn8K5554bhg4dGrdpt912C+uss05620cFFFBAAQUUUEABBRRQQAEFFFBAAQVatUCzBDJ32GGHcPPNN4cTTjghnHPOOUXBTjnllHDVVVeF9u3bx+DelVdeGa6++upw8cUXhw033DAuN3z48LDzzjuHL7/8Ms735ptvhhdffDHQlD1beE3QkPe6d+8e/8gK/e9//xuDirPOOmuYPHly2GabbQLN2+eaa67Qr1+/GAy8/PLLw4MPPhiYJ78QhPzDH/4QhgwZEt+i7sceeywsvfTScV1rr712nE5fnU888UTsH/Sll16K61p++eXjewQn//73v8dtmm+++eK6CIKeccYZASsK2zpq1Khw0EEHhWeeeSZ07tw5UA/N9QmirrLKKnG+9A99ZT7yyCPxJdtI36M061955ZXTLD4qoIACCiiggAIKKKCAAgoooIACCijQagWaJZB57LHHhqeffjrceeedMSBJlmJ+oY9LgpgEE8nKnGOOOWIwbo899ggHHHBADOzNPPPM4ayzzopBTIKCp59+epyfx1tvvXWaKgkWEsTcdtttYwC1S5cu4bzzzgsXXXRRDFYyONDLL78cg5hkdT700EOhQ4cO4T//+U+47bbbYgZkoe1kHwhiEuSk708yOBm46MQTT5xm/ekFWaMnnXRS2HrrrWMw8rvvvgsfffRRzJa88MILYzCTOg855JAYeEyBzLQ8AVkyWcki/ctf/hJuueWWcMQRR0SbNA+PEydOjIFTnu+///5x+wkeN0cgE0eLAgoooIACCiiggAIKKKCAAgoooEDbElh22WWbdYebJZBJ1iKBxR133DEcc8wxsYl3/l6SdUghi5IgJoWm0YMGDYpBTJp+8/rVV1+N7/32t78NNLWmEOjMD2QSOKXQnJum6BSCjpdccknMbOQ1AUyCl1999VW49NJLw/rrrx+bhf/yl7/k7YKF7aBQb8q+/M1vfhP+8Y9/hM8++2y6ZVZYYYWwyy675KYTjGUbKD/++GNs0v7GG2/E12k744v//4dl034yCjyBzE8//TQwqFGfPn1ys+61115h9tlnj68JhhJA/fzzz3PvV/NJc39oq7kv1q2AAgoooIACCiiggAIKKKCAAgoo0DIF2jfXZhHQ23vvvQMZiWQU0h9mtqRg3oILLpidHBZYYIH4+vXXX499S37wwQfxNfWlMvfcc4fZZpstvYzZie+88058vc8++4TNNtss/tEknebk7733XqBPSbI/jzzyyNin5Nlnnx37s6T/SbI26QezUKEvTEpqJp7mKRbMS9uf5uORoCv9YbIMmZr//Oc/49v5JkzM7if7OM8888R52YdsGTBgQO5lahJPlqZFAQUUUEABBRRQQAEFFFBAAQUUUECBWhBo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4IYbbhjIEn322WfDwIED4/IzzTRTeO655wLZjRS285xzzgkHHHBAzMpke5588snw4YcfhgUWWCAMGjQozDPPPHHeVC/bQTN4MjmPOeaYcP3118cA4+abbx7Xy/ZstNFGYcEFFwx33XVX3P6VVloprL766qFTp6kDRU2aNCkMHTo0kHlJs/rFFlssbLLJJqFr167hv//9b3jppZfiOm+88caw1FJLhe222y7ceeedcX8OPPDA+B7/1Of8yCOPxHp23XXX8Nhjj4WPPvooWrNPaTtyFflEAQXapEDVApkTJrSt/lfa5KfHnVZAAQUUUEABBRRQQIFWJ8C1WpcubSdDjgDm22+/Hc4999xw4YUXhh49ekx3zB5++OH4fs+ePcMcc8wRnnjiiUDT8dNPPz3OT3Npmqh/++23oV+/frFvyxQsTJURKGSe8ePHxyAkGYr33ntvrGPOOedMs8VHjgFBu+WWWy4GMgme8vrrr78ONIkng5FA3gMPPBC3mWblP/zwQ1yW58w/efLkGJxMTecJQhLwvP3228Npp50Wg5qp3k8++SQGBfv27Rvon5NAKftEYHPs2LFhxIgRcZ8IQKbMzyFDhsSA5ZZbbhnXS5+e1E2AtX379rGvToKaJ5xwQtw26qHQbJ4/Cush0JoCmQ05v/vuuzkHgsJjxowJbMdmm20W9tlnn1in/yigQNsWqFofmRMmTmrbsu69AgoooIACCiiggAIKKNACBdratRrBuz/84Q8xWEdz7mwhqEc24gUXXBBmnXXWGJwj23G//faLgb80UA39UhLE3H777cMVV1wRLrvsslxgMdV38cUXBwKUvHfmmWfGAXkIFhL8K7WQ6UjAkL8ll1wyEIBkgJ911lkn7LTTTrGaTTfdNAZHCXZedNFFMXB69tlnh7POOiv89a9/ja+Zni0//vhj3O6rr746l9k4atSosMsuu4SrrroqBgqZh+1nHjzatWsXHn/88VgNgyKRnbr33nvHbFDWt8gii4QXXnghsNyvfvWrsNpqq8V5991337DnnntmVx+fl+KcFpp99tljdwBsS7du3WKWK8fKooACClQtkMndIYsCCiiggAIKKKCAAgrUpgBBhfTHb3//qm+QvJsa0GmL12oE2WheTdYjzbCzhQxIAnVrrbVWbCbNe8xLII9MTgpNxSkbb7xx6NChQ2wuTjZlKixPPX36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JjB1dPLig/rQrDq/kKGYgnv575X7esjQ0eGUv31d1mLHHDxbWGtQj7KWKWfmQvvGtFffHBf+eet3dYFMBwEqx9N5FahlgbFjxwb++vbtW8u76b4pUJaAgcyyuJxZAQUUUEABBRRQQAEFFChdgH4xaVaeLYWCmdn3fa6AAk0T+Ne//hW++eabMMccc4RNN920aZWVufQPP/wQbr311rjUoEGDwmKLLdZgDY899lj44IMPQpcuXcLOO+8c5x8xYkT4/e9/H3766adwzDHHhJVWWqnBelr6DN9//3145plnwrvvvhtGjRoVFlpoobD88suHBRZYoKVvutvXggQMZLagg+GmKKCAAgoooIACCihQSwIE7AoF7VImJv1EVrOQWXn/oOquo6HtZ6RyAplnHV9/piX9ZqYm5w3V6fsKNFbg4YcfDl988UXo2bNn2HrrrRtbTYtf7qGHHgofffRRWHLJJZs9kPnjjz+GO+64IxrNOuusJQUyn3322TBkyJAw00wz5QKZ3377bRg3buoAYcOGDWvx5g1t4IcffhhOPvnkQIA2lSeffDJce+21Yc899wybb755muyjAvUKGMisl8c3FVBAAQUUUEABBRRQQIHGC+RnYxariablpc5brA6nK9CQwBNPPBGee+65mKlYy4HMhhxaw/sLL7xwOPbYYwNZjOuss05r2OSi20hQ9ogjjoiB2U6dOoU11lgj9OnTJxDI/Prrr8Nll10WOnfuHDbaaKOidfiGAknAUcuThI8KKKCAAgoooIACCiigQBUEaF7OX7GS3icr01JdgSlTppS9gsYsM3ny5JLXU279EyZMCMXqnzRpUsnrbWjGcrerofp4nzrLrbfY/OXWVayeYttdzvzlzJvWV8oyK6+8cthwww0Dwb/6SrHPQ6FlSllvdrly6s4ul31+55135rJL//SnP4VDDjkk/O53vwtnn312mG222eKsN998c6jk5ze7fp/XloAZmbV1PN0bBRRQQAEFFFBAAQUUaEECNCmnKX19A/nwHqVQM/wWtCutdlO++uqr2NT3hRdeiNltZLrR9+ADDzwQHnnkkdCjR4/w97//fZr9e+utt8Kjjz4aXnnllTB8+PDYl9/SSy8ddtxxx9Cx48+X0eedd154/vnn4/uHH354uPLKK8PLL78cyECbf/75wx577BGWWGKJaermRbn1zzvvvGH/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rE6nK6CAAgqUJmAfmaU5OZcCCiiggAIKKKCAAgoooEArEhg3cWx45ovHC24x2ZWNCWKmyli2WL+ZrHPrRX8dunbslmYv6fGLL74I3333XVhwwQVDt27Fl/3+++/DJ598EhZaaKHQvXv36er++OOP47TZZ5+9YD0jRowIo0aNisvONttsYeTIkfEvVcS6WTZb0jyzzjpr6NGjR/at+Dy9P90bdRPmnnvuMGbMmPDtt98WejtOYz/YlmHDhoVx48ZNN1/Hjh1jPbzHPKmwLWyTRQEF2o6Agcy2c6zdUwUUUEABBRRQQAEFFFCgzQi8/vVLYcqUKQX3t76MyoILFJhIHRc8e/p077BO1r3iXKtN916hCffff3+44YYbAgFGSrt27cJaa60V9t9//9ClS5fcIu+99144//zzYxCTdbRv3z4sssgi4fDDD58mmHfAAQfE/d5mm23C7rvvnlueJyx3zDHHBIKmgwYNCkcddVS49957w3XXXTfNfL179w6bbLJJ2HnnneP0NA/rYtvyS3o/fzqvr7zyyjB06NBwxRVXFHo7TkvbcsEFF4RXX311uvkIclLP+++/H4488shp3u/bt29YYoklwl577RVmnnnmad7zhQIK1J6AgczaO6bukQIKKKCAAgoooIACCijQ5gXImCxUyMbkr5ySBvphGQKYqQ4eC41mzrpLCWQOGTIkXHjhhTEAt9tuu4XOnTuHJ598Mjz22GMxO/PUU0+Nm/nZZ5+F448/PmYrbrXVVmGeeeYJb7/9dnjggQfCscceG/7yl78Ego/Z8uCDD4ZddtkldOrUKTeZICFBzEJl0003DYsttlj4/PPPw6OPPhpuvPHG0KtXr7D55psXmr3gNOpYdNFpbalj+eWXD4ccckhc5sMPPwx33nlnWGmllcKaa64Zp+VnVe69996hZ8+euXV07do195wniy++eFh77bVjpicB3scffzwGeE8//fS4zdPM7AsFFKgpAQOZNXU43RkFFFBAAQUUUEABBRRQQAEEvvjh04IQA/suVnB6sYkEKgtlXjI/dRUKZBZbd3YdkyZNihmWNOX+29/+FsgspBA4PPDAA2NmIs3EBwwYEC677LLw448/hhNOOCGssMIKcb4NN9wwzDfffOHyyy8PN910UyD4ly0//PBDeOKJJ8K6666bm/zf//439zz/CVmNKduSIONhhx0W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AQQQQAABBBBAAAEEEEDAamtrbePGjXbdddfZd77zHdu8ebO1tbV5GXXXVovH73//+/7z3bt3dwlWKpD4yiuv2KxZs0xdz1MnjcGpacuWLakfdb7WGJq6AZCCmJpC0FNpUtD03HPP9a1Bv/vd7/rWopondDvXcyYEEECgVAUIZJbqkWe/EUAAAQQQQAABBBBAAIESFViwYIEfr1JByyuuuMKPQRkojjnmGPv0pz9tl156qY0cOdIHEpctWxY+9u/NnDnTL6+AZOqkZdSSUy08k6eHH37YfvjDH9qOHTv8DYDUPV3dxTVpvExN/fv3949nn322feYznzHdXV1d32+88UbTmJ5MCCCAQKkLEMgs9TOA/UcAAQQQQAABBBBAAAEESkxALS7V1XvChAk+sLh69epOgTvuuMN3HR81apQpYKlJ3cjDpGU03qVaVIaxNMNnelSLSnVRV5DzmmuusSeeeMLmzZvnx7xUkHPo0KG+27gClPfdd5+pK/r9999vVVVVvmWm0vaLX/zCj42plpr606T51Q1ewU51f1d3cyYEEECg1AQqvuymXOx0y97WXKyWdSKAAAIIIIAAAggggAACCGQpUFtbneUael9cLQx1V+1CmDSmpcakVEBw4sSJPknq/q07ls+fP98HEo866ih/8xy10FR3cd1NXMHF559/3t+R/Pzzz/ddu9WqUncR1x3GNd6l7kKum/XodfI0duxYv//qKq6u6GpNqaDoO97xDh+MVJdy+SjIqXVouuSSS2zMmDFWUVHhg5pPP/20T5/Wcc4559gJJ5zg51NrT92kSMHX0047zb/HfwgggECpCJS5puyJtuwx7/HOXV3v6hbz6lkdAggggAACCCCAAAIIIIBAhgJDBg/IcMloi9XX19uIESOizdyHc6mVY01NTbcpUMtIBRX1l83U2za0XnUx15id3U09fabLeN38h3Ezu1PjPQQQOJIFuGv5kXx02TcEEEAAAQQQQAABBBBAAIEeBXoKYmoBtXyMY+ptG1p/T0HM3j5T93WCmHEcHdaBAALFJsAYmcV2xEgvAggggAACCCCAAAIIIIAAAggggAACJShAILMEDzq7jAACCCCAAAIIIIAAAggggAACCCCAQLEJEMgstiNGehFAAAEEEEAAAQQQQAABBBBAAAEEEChBAQKZJXjQ2WUEEEAAAQQQQAABBBBAAAEEEEAAAQSKTYBAZrEdMdKLAAIIIIAAAggggAACCCCAAAIIIIBACQoQyCzBg84uI4AAAggggAACCCCAAAIIIIAAAgggUGwCBDKL7YiRXgQQQAABBBBAAAEEEEAAAQQQQAABBEpQgEBmCR50dhkBBBBAAAEEEEAAAQQQQAABBBBAAIFiEyCQWWxHjPQigAACCCCAAAIIIIAAAggggAACCCBQggIEMkvwoLPLCCCAAAIIIIAAAggggAACCCCAAAIIFJsAgcxiO2KkFwEEEEAAAQQQQAABBBBAAAEEEEAAgRIUIJBZggedXUYAAQQQQAABBBBAAAEESkmgqanJ7r777lLaZfYVAQQQOCIFKo/IvWKnEEAAAQQQQAABBBBAAAEEEDgg8OKLL9oNN9xgp512mo0aNeoQl46ODnv55Zetvb3dpkyZYtXV1YfME97QvOvXrw8vOx+rqqps3Lhxna/Dk1WrVllra6tNnTq1y3rTWU9jY6OtWbPGBg8ebOPHj7fyctokBV8eEUCgtATK9rspF7u8c1djLlbLOhFAAAEEEEAAAQQQQAABBLIUGDJ4QJZr6H3x+vp6GzFiRO8z5eHTFStW2P/8z//Y1q1bO7c2Y8YM+8IXvuCDgnrzmWeesW9+85umVpuaFJD81Kc+ZRdccIF/nfrfq6++aldeeWXq2zZp0iT73//93873n376afvRj35kstDUr18/+8///E879dRT/eso69m3b59de+21dscdd/hl9J9cP/e5z9n06dM73+MJAgggUCoCtMgslSPNfiKAAAIIIIAAAggggAACJSSwd+9e++IXv2hlZWX29re/3RYsWGDnnXee3XXXXfa9733PvvrVr/rg5Ze//GUbNGiQfexjH/NBzN/85jf2gx/8wAcKjz766EPEtm/f7t974xvfaLNmzer8fMCAg8HhnTt3+m1UVlbav/zLv1hzc7PdeOON9vWvf92uv/56v70o63n44Yd9EPOkk06yD3zgA7Zhwwb7yU9+4gOvv/71r/2+dSaAJwgggEAJCBDILIGDzC4igAACCCCAAAIIIIAAAqUmoNaYLS0t9oY3vMHmzp1rixYtso9//OO+ZaS6aqtzorprq4XjW9/61s4WmLt377af/exntmzZMusukLlt2zZPecYZZ9icOXO6Zb311ltNwcz/+q//stNPP93PM3LkSFMrTbUOVeA0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FvPRI+0IIIAAAggggAACCCCAAAIIIIAAAgiUiACBzBI50OwmAggggAACCCCAAAIIIFCKAvv377fXXnvNnnnmGdu9e3evBC0tLbZ27Vr/19HR0eu8UT/U9m+44QZ77LHHoi7CfAgggAACPQhU9vA+byOAAAIIIIAAAggggAACCCBQ1ALr16+3b3zjGz6QGXZk7ty5duWVV1p5+aHten7605/awoUL/aw33nijDR48OCyW8ePOnTvtlltusVmzZtmcOXMyXk/qgvfdd581NDTYu971rtSPeI0AAggcsQIEMo/YQ8uOIYAAAggggAACCCCAAAKlLfC1r33NtmzZYpdffrlNmDDBbr/9drv33ntt6tSp9qY3vakLztKlS30Qs6yszNSKMq5p6NChdvXVV8cSFE1O0x//+EdToJZAZrIKzxFA4EgXqPiym3Kxky17W3OxWtaJAAIIIIAAAggggAACCCCQpUBtbXWWa+h98T179lhdXV3vM+X408bGRtu+fbtdeOGF9pa3vMVGjx5tRx99tP3lL3/xQcXZs2d3pmDv3r2mS+NBgwbZ8ccfb6+++qoPENbW1nbOE54sWLDAB0QnT55sf/7zn+2ee+4xdUOfOHGiPfjgg3bzzTfb5s2bbezYsabl1V392muvta1bt9rMmTPtpZdesuuvv94GDBhgK1as8PPrs3HjxllNTY3fjLqiq2VocgvOH//4x/bCCy/YySefbNdcc409//zz1traahs3bvStS7Vvmp599lm766677K9//att27bNJk2aZJWVB9swzZ8/3xQEfeSRR3zajjrqKKuqqvLL8h8CCCBQ6AIHv80KPaWkDwEEEEAAAQQQQAABBBBAAIGIAgoUqiVmmBRcVXdsTaecckp42z/+7ne/88HHr3/96zZv3rwun6W+WLlypSmYuWnTJh+cVLDw4Ycf9mNwKpBZXV1tDzzwgA80fvGLX7S2tjY//+te9zp797vf7ZfR8mopumrVqs75FXj8yU9+4je3ePFi3x3+M5/5TOfmte6RI0faRz7yEauvr/fBU32oIGhTU5OfT+v9wQ9+YP3797cxY8bYQw89ZI8//rj913/9lw+SKqB62223+Rap6jb/ox/9yM4880z7z//8z87t8AQBBBAoZAECmYV8dEgbAggggAACCCCAAAIIIIBA1gJf+cpX7Omnn/br+bd/+zc7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NbxELgkBBBBICgGCzKS4DZwEAggggAACCCCAAAIIIIBAqgpovkcaAggggEDiBXhqeeKNOQICCCCAAAIIIIAAAggggAACCCCAAAIIVFCAILOCgOyOAAIIIIAAAggggAACCCCAAAIIIIAAAokXIMhMvDFHQAABBBBAAAEEEEAAAQQQQAABBBBAAIEKChBkVhCQ3RFAAAEEEEAAAQQQQAABBBBAAAEEEEAg8QIEmYk35ggIIIAAAggggAACCCCAAAIIIIAAAgggUEEBgswKArI7AggggAACCCCAAAIIIIAAAggggAACCCRegCAz8cYcAQEEEEAAAQQQQAABBBBAIIUEZs+ebcuWLUuhM+ZUEUAAgfQQIMhMj/vMVSKAAAIIIIAAAggggAACCJRSYOPGjQSZpbRiMwQQQKAyBQgyK1ObYyGAAAIIIIAAAggggAACCCSdQKwKTFVnUqG557Z9MafA9BWp5eXl2datW62g4Kfrd+7caWvWrLHNmzdH2tXWrVvnviKuZCECCCAQEshCAQEEEEAAAQQQQAABBBBAAIF0FVD1pb5Kaps2bXLbNGjQwBo2bFjSptV+3a0P5drUWbtDygN71rD/uyonfM0bNmwIB5GZmZnWqlUry87OdutlOH36dMvPz3efO3fubG3btg3vO2PGjPC+TZs2tf333z+8jjcIIICAF6Ai00vwigACCCCAAAIIIIAAAggggEAlCxQWFtrChQvt008/NQWBydxUhelDTJ2n3gcrM9evXx8+fV1XMCBesWJFOMTURosXLw5vW7wSs/jn8IaleKOqT1nOmzfPdA7R2q5du9w22i5ahaiqShWwzpo1K2KF6bRp0+y2226zLVu2RDsMyxFAIM4CBJlxBqU7BBBAAAEEEEAAAQQQQAABBEojMGfOHDvqqKPs+OOPt1/+8pfWt29fu/nmm4sEfqXph212CzzyyCPWr18/Zzl06FA77rjjbOnSpRF5/ve//5m20deECROKbKMA9JZbbnH347TTTrNTTjnFevXqZY899liR7V5//XV76qmnbO7cuUWW8wEBBBInUCP0w3lLIrrPzduRiG7pEwEEEEAAAQQQQAABBBBAoIICOTm1KthDybtv27bN6tSpU/JGVbxW1YKar1FfmtcxJyfHvWoItL580/vVq1e7j9rGr4/HEPOf//zntnz5crv99tvtqquucsd588033ZDsnj17+lNImtdWe2XawiWFtnL1LndOGlp+ztA930sZGRm2fft2t05Dy/faay/Lyto9o52GmMvRV0l27NgxPExf3yty9ftqaHmHDh3KdN2qwvztb39rBxxwgP3lL39x+48ZM8amTp1q55xzTpG+1q5da5dffrmpelOVmQozu3btGt5GMcmIESPcsosvvtgFmrpPo0aNctsccsgh7vWII46wk08+2YWc4Z15gwACCRXICP3Q7v4NFOfDbNhIaXWcSekOAQQQQAABBBBAAAEEEIiLQKOG9eLST7ROFBQ1a9Ys2uoqXx6Ph/e0adPG9FXepuHImgeyT58+9sorr7huNFT5jDPOsF/84hcu3Cxv34nezw8n77dvjZ8cSqGw5sFU6FujRtH1Cg41fF7r6tev/5N9NaRcTUFmWZuqJlUZKUPft6olNaT9+uuvt3r19nzPX3vttaaQU1WwTz/9tD3wwAN24oknukP6e6Ag+aWXXrLatWu75d99952rnFUwO2nSJHcNqsicOHGiqb927dqV9ZTZHgEEyiGw+59GyrEjuyCAAAIIIIAAAggggAACCCCQagLBEFNVlXqAT1mb76MiD/9RsKZh0DNnznTzMHbp0sUUjKkdffTRZT2lSt0+UoDpT0CVl/4BP36Zf61Zs6ar0vSfi7+WJ8BUH6ry1Dyj3bp1MwWODz/8sKvwHDhwoF100UVFDjN+/HhXWfnrX//aWrZsWWSdPnz55ZdumSoxfYipBdp28uTJropT16Gm+TN1zxSIEmQ6Ev5AIOECBJkJJ+YACCCAAAIIIIAAAggggAACySZQkYpKDYPW0HS9VmSI+RNPPGGXXnqpaR5GVS9qwOTdd9+d9EFmst1LDftWJaiGs2u4vu7tkiVL7LnnnrMbbrjBFFqqacqDm266yQ0717JXX331J5eiJ6ur9ejRI7xOc2hu3bo1/PnAAw8sMZANb8gbBBCIuwBBZtxJ6RABBBBAAAEEEEAAAQQQQCCZBIJPz47HeakS0weZwb7LEmrqidi/+93v3ByOhx56qHXu3NnGjh3rgjZVJg4YMCAepxr3PjQ03D+dvHHjxtaoUaPwMRTsfvvtty4w1DUE553URnc+kWcTp+Vbu1aZdsXZ2bZf58zwviX1G94oyht/DzS0/MUXX3SVrupv2LBhdv/995uqKzUP5z333OOGmivgrFVrz9yewW4jVZPqyeRff/11eLMnn3zSPaQpvIA3CCBQaQJ7fmtU2iE5EAIIIIAAAggggAACCCCAAAKVI6Bh4LNnzw5/6XO09tW8PCv+FW1bLVeAFuxb70vbxo0b54LLIUOGuMrBW2+91c3JmJub68LM0vZTmdup6lHzWGoot770Xst8U4ipykVVlmqe1OATw599a4d9/EV+aJ3Z4hWF9vBLe/aL1a/vP9qrn6u0e/fuLsTUdgpYBw8ebAqM9XT4RYsW2TPPPGPt27d3Yevzzz9vU6ZMcV1qnks9LEhNDwtSmzVrlnvVH9pW82IeddRRbpkeVERDAIGqEaAis2rcOSoCCCCAAAIIIIAAAggggEAlCQQrJX31XvFDjxi5yZ4NfUVq557awM4LfRVvwX61rizzbepp6WqtWrVyr/qjSZMm7iEyP/zwgwvgij8sJ7xhFb3RQ3yKNy3zVYwauh1s/inkWrbi+8LgKluycs/nWP0W2THCB4WWLVq0cE+A1zmo+lJtwYIF7lVPQFfIrFBz8eLF7qnmbsWPf+ihPgpTVRnbv39/09PXH3zwQRdcqrJUT1/X3JuffPKJO07btm2Du/MeAQQqUYAgsxKxORQCCCCAAAIIIIAAAggggEDlCvhqPX9U/6Ae/9m/+hCzd/dsv8i9qkJT6/bvlm3F1ym4LN5/kZ1L+HDsscfa3//+d3vhhRfcMGeFbW+88YYblq0nlydbiKlL0dPGNQ+lqjHV9F7LfFPop0pM3xTM+nZgz6zQsPIC/9GO6LsnjojVb3inEt7ceOONbqj+ueee64aUf/HFF/bxxx/boEGD3FPQDznkEFdVGexCT4vXcHMNHfdPLdcDg26++WZThewJJ5zg5ivVNWmeTF235tykIYBA1Qns+c1RdefAkRFAAAEEEEAAAQQQQAABBBCoMgGFlWoKKv/1+72KnMfv7lzjhpsXWRiHD3oK9muvveaGkeuhPzt27HCVf5dddpkL5OJwiLh3oXBVFaS+qlUVqcHAVXNiKpRUJaZCTFUy+nbMIbvjh6mz8q313pl27sl75qiM1a/vo6TXn/3sZy4Evu++++yWW25xQ8u17G9/+5vbTXNiqmoz2HxFrSo6g3N9XnDBBaYnkytY1j1S22+//Uz3ZujQocEueI8AApUskBGauyI0Q0X824aNW+LfKT0igAACCCCAAAIIIIAAAghUWKBRw3oV7qOkDlTB1qxZs5I2Sfi6aJWX/sCqpPTVlAoyFViWFGQq4PQVmbH6VkCm4Ku0TUOrN2/ebHp4Dq3iApq7U0GqhohXtCmUVT/BytOK9sn+CCBQfgEqMstvx54IIIAAAggggAACCCCAAAJJKqAnaFdVK8tcmTrHrKwsQsw43iwNcY9Xq127dry6oh8EEIiDAEFmHBDpAgEEEEAAAQQQQAABBBBAILkEolVExqqmLMtVBKs6y7JfKm+7aGmBjZ6w+6E/QwdkWee2NYpcjh5UpGHydevWtfr16xdZpwccab3CweIPzFHwvGLFCrd969aty/TgpCIH4QMCCFRrAYLMan17uTgEEEAAAQQQQAABBBBAAIHSCvgh5sHtg/NnBpen4/vNW3fZTf/Osy3bds9Q9+n0Anv01tpWv+7uIdzff/+9bdmye5q5rVu3OiIfZirEXLhwYZgtNzfXNKem2s6dO2369Onmn16ubfUEcc1TSUMAAQSCAgSZQQ3eI4AAAggggAACCCCAAAIIVCsBVWDGGmauuS/PPbWBezq5Dy6DCFoXqRXvuyJPMY/Uf7Itm7mgMBxi6twUaGrZYX12V2X6ENOft8JMH2SqEjPYNI+lbxs2bAiHmFqmQFPLgg8L8tvyigAC6S1AkJne95+rRwABBBBAAAEEEEAAAQSqtYBCTP+U7ZIu9LxQWKmvSEGmf8hPpP2DfZd1bsxI/SXzsr2b/fThOcFlejK4hpX7ps++FZ9rsk6dOn5VxAfp8HCdMA9vEEAgIECQGcDgLQIIIIAAAggggAACCCCAQPUS0FyZwbBx+fLlRT4Xv9qSQsvi22qOzGB4qaeVV+fWqU2mXXhaLXtlzE53mWccX9O0zDdVUGpYuMLMevXquSeH+3WaE1PDyVWJqRCzQ4cOfpWr2uzcubMtXrzYLWvfvn24kjO8EW8QQACBkEDGrlBLhMSGjbvnxUhE3/SJAAIIIIAAAggggAACCCBQfoFGDeuVf+dS7Ll27Vpr1qxZKbas/E38w34UOkZ7IFCss/J9VPRhP59++qnNnj3bzQV55JFHWseOHd18kePGjbOlS5e6odXHHnus6Vy17Ntvv3XbdunSxc0hOXfuXJs0aVL4dI8++mi3z7vvvusCw3bt2tlxxx1X7eeanDVrlk2ePNnOP/9881Wgb7zxhnvgUL9+/eyVV14JG3Xv3t169uzplg0dOtT22Wcft27KlCkmzwsuuCDqPXjmmWcsLy/P9du7d2/r1auXvfzyy9a3b1/r1KmTC3FHjx5tv/zlL92T6MMH5Q0CCMRNgIrMuFHSEQIIIIAAAggggAACCCCAQLIL+ApKVWkqkCxrK+1Q9Vj9Tps2zWbOnGknnniibd++3QVi11xzjY0ZM8YKCwvt9NNPNwV0zz//vF155ZVuzkgFZqpcVEjXuHFjt5+qIE844QR3OIV4o0aNsqZNm9qpp55qH3zwgatyVPBZnZv8vvvuO+clIwXpslVoqfk2tf7yyy93BDVq1LD169ebHkyk8FJBpuq7FCrroUNqMox0D1Rtet5557ltRowYYaocVaCpkFkh9HvvvWfdunUjxHRC/IFAYgQIMhPjSq8IIIAAAggggAACCCCAAAJJKKDqRlVS+qrK8p5iRasx9QRvVQu2bt3anYLCSj2lW8svvvhiV9E6cOBA+/zzz80/KCcrK8vNJ6nt9CCdjIwM9yCjRYsWuT4UWLZs2dK++OILN6x7wIABboh3ea8x2n56EI9ao0aNfrLJ18sK7fu1u6xX18zw08z9RgUFBW54ua4jOzvbLw6/ltRveKMobxQq6roVZOpVn31TmOmNWrVq5RYr7F2xYoVz1HQDTZo0ceGmVpZ0D3TectfXtm3bXHA5depUGzlypAtIzz77bH9YXhFAIAECBJkJQKVLBBBAAAEEEEAAAQQQQACB5BVQCBlsvjLTLy/+2VdhKgRVRae+9L4iTdV/fhi0+lGfqgJU2OeXZ2ZmunDTVwq+//77rvpPIdwBBxxgM2bMcMHg6tWr3amoKrB///6msE4ViePHj7czzzzTBbcVOdfgvhp+rYpGNVWF9ujRI7z61XE77enXdz/sp16dDLvt2mzr3Hb3E801JHvlypXuGrWDriEYhJbUb/gAJbzRVAZyWByaZ3PevHmmENeHlzL1RjpnBcGy1dQC06dPd/soAH3nnXdi3gMNL1eIrO333ntvd0Yavv/II4+YQkz1S0MAgcQJ8BOWOFt6RgABBBBAAAEEEEAAAQQQSFIBX1Hph5r7Sk0fZuq0/Tb+EjQMWcsqGmKqP81f6YNIBaX//ve/bfPmza5/VfgpfNPQcoWbzZs3d6eg+TI1/6KGxasiUE0VmJobU196iI7CS1UgDhkyxA1D96Gs27iCf6hi0oeY6krvfRWlPvuHAOn9lm27bPSEfL11Teesa/Et2E+sfv0+sV5V4fraa6+56w5WfOoJ6N7IV8Cqrz59+rjh5fJv/2MFp4JI3eNo90BzaA4aNKjIdWt4v6pMfbVnrPNkPQIIlF+Aiszy27EnAggggAACCCCAAAIIIIAAAuUSOPzww90DeR588EEXSqqCUAGp5rbUw2nuuusu9+Tun//85+HQUgdSWKagTXM61q5d2+bMmeMeAqR1gwcPdoGc5tlUBaRC2mOOOUar0qKpOnTs2LGuWjIYlCqovP/++52BtlE1q5p8FGwqVPbBsJbHugeqetX8mkuWLHH7ah8aAghUjgBPLa8cZ46CAAIIIIAAAggggAACCCSNQDo/tbz4TVCloJ4crhDRP8XcPwn8sMMOc5trvbbT+nhUYwbPQVWKkYYjqyJTD6Ypb6vo/tGOW9IQ8KocWh7tfCuyPFGGFTkn9kUg3QWoyEz37wCuHwEEEEAAAQQQQAABBBBIYwEFk6pwLKkFh5+XtF151kUKMdVPRULMeOwf7VpU0eiHkwfnuNT2pw+uaQd0rxHxYT8a6t22bduoD/spqd9o55Lo5RW9B4k+P/pHIB0FCDLT8a5zzQgggAACCCCAAAIIIIAAAmGBWEFmrPXhjtLkTfEAM3jZndpkWqcoubCCwbp16wY3L/K+pH6LbMgHBBBIWwGCzLS99Vw4AggggAACCCCAAAIIIIBAJAEFl5pXkYYAAgggkFwCBJnJdT84GwQQQAABBBBAAAEEEEAAgSoWoAKzim8Ah0cAAQSiCGRGWc5iBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAgaQQIMpPmVnAiCCCAAAIIIIAAAggggAACCCCAAAIIIBBNgCAzmgzLEUAAAQQQQAABBBBAAAEEEEAAAQQQQCBpBAgyk+ZWcCIIIIAAAggggAACCCCAAAIIIIAAAgggEE2AIDOaDMsRQAABBBBAAAEEEEAAAQQQQAABBBBAIGkECDKT5lZwIggggAACCCCAAAIIIIAAAggggAACCCAQTYAgM5oMyxFAAAEEEEAAAQQQQAABBBBAAAEEEEAgaQQIMpPmVnAiCCCAAAIIIIAAAggggAACCCCAAAIIIBBNgCAzmgzLEUAAAQQQQAABBBBAAAEEEEAAAQQQQCBpBAgyk+ZWcCIIIIAAAggggAACCCCAAAIIIIAAAgggEE2AIDOaDMsRQAABBBBAAAEEEEAAAQQQQAABBBBAIGkECDKT5lZwIggggAACCCCAAAIIIIAAAggggAACCCAQTYAgM5oMyxFAAAEEEEAAAQQQQAABBBBAAAEEEEAgaQQIMpPmVnAiCCCAAAIIIIAAAggggAACCCCAAAIIIBBNgCAzmgzLEUAAAQQQQAABBBBAAAEEEEAAAQQQQCBpBAgyk+ZWcCIIIIAAAggggAACCCCAAAIIIIAAAgggEE2AIDOaDMsRQAABBBBAAAEEEEAAAQQQQAABBBBAIGkECDKT5lZwIggggAACCCCAAAIIIIAAAggggAACCCAQTYAgM5oMyxFAAAEEEEAAAQQQQAABBBBAAAEEEEAgaQQIMpPmVnAiCCCAAAIIIIAAAggggAACCCBQXoG8vLzy7sp+CCCQIgJZKXKenCYCCCCAAAIIIIAAAggggAACZRZYsGCBzZ8/31avXm3Nmze3vn37WuvWrcvcT3l3WLdunb377rt25JFHWtu2bUvsRkGcvho0aFDidtFWjho1yurVq2dHHXVUeJPCwkJ74YUXwp+Db2rWrGlnnXVWcFGp3pf2mr7++mubPHmy6zMzM9P23ntva9eunXXq1KlUxykoKLCtW7da3bp1rUaNGiXu891339njjz9uZ555pnXv3t1eeukl69ixo/Xv37/E/ViJAAKpJUBFZmrdL84WAQQQQAABBBBAAAEEEECglAJTp051gda8efOsUaNGtnDhQnvmmWdM4WZlNQWT33zzjW3ZsiXmISdNmmT333+/KXwsT1u2bJkp0Au2jIwMd+26fjWdS1ZWVpFlwe1L876017Rp0yZ3PIWYOubnn39uzz//vL333nulOYwtWbLEeeg1Vttrr71syJAh4bD422+/tbVr18bajfUIIJBiAlRkptgN43QRQAABBBBAAAEEEEAAAQRiC6xfv97eeecd69q1q5122mlWq1Yt27lzpz300EM2YcIEt1y9KOxSsLl9+3br0KGDq+LTcoVnCj4PPPBAmz59umVnZ7v3q1atMgWjbdq0cX0opNN6hXuquPzqq6+sSZMm1rt3b7eP+ire1PeiRYvc+h49eljTpk3d8RS+qb3//vt2wAEHmMK5bdu2ueOtWbPGWrVqZT179jSFk2o6po6na+3Vq5dbVvwPbXviiSe6xXPnznXB4qGHHhoO/LRCAaiqJ9Vft27drH379m57/TFnzhy3vmHDhtalSxd3ruGVP75ZunSpM9S5tWjRovhqGzRokFsu/48++sg+/fRT56djqekeqGo2NzfXOnfu7Ko2FYJOmzbNrddrfn6+81bIq/ulY6qidP/993fectq4caNt3rzZ6tSp4/bzf2jfL7/80lRJqvPT90Txbfy2vCKAQHILEGQm9/3h7BBAAAEEEEAAAQQQQAABBMohoHBOTUGXQkw1BV8XXHCBG668a9cuV704YsQIV52o4dwK2I4++mg77LDDbOXKle6zAjO1FStWuLBvw4YNrh8NmT711FNdYKmAUAHnJ598Yo0bN7YpU6aYlp177rlu3+AfX3zxhY0ePdqFpho2rWOed955LmTdsWOH21RhnMI3hauqINWrglOFcQo7TznlFFe1qeHTCkX32WcfmzVrlumafOVl8JglvVcoqH4UKirI1Lmfc845LlBU4KsvGSpo1PurrrqqSHe6bg1dVzgYKcQMbiz/gw8+2F2zzlvHlPPw4cOdm4bFy+Okk05yYaquW02vOjc1hbwKNjV8XOGrqm6vuOIKV/GqfRX2agh7sOn8NLWAQmPdI+1/0UUXhQPh4La8RwCB5BYgyEzu+8PZIYAAAggggAACCCCAAAIIlEPg+++/d3upyjLYFPT5sG/8+PFuTslLL73UzcGogPHDDz+0gw46KLyL5pvUXIvPPfecLV682G688UZXSXnvvfe6SklVXqpp6PiVV15pzZo1Mw0RV+CmkE4Vm74paBw3bpwL84477ji3+D//+Y8L1oYOHeoqH1V5OWzYMLef+lG15XXXXefmiZw5c6a98cYbLmzVcoWBxx57rKnCUvs9/PDD/lClfpWFAlc5qSLy7rvvdhWPqoxcvny5sxo8eLALgzUs3VeD6gAKdceMGePmHFW4WppWv359V9WpAFRN90AVqZdddpn7rHk+FUiqIvXwww935nrVPVBTYKrqU4Wmqph98cUXXXWmAuRITeYKoVVNqqHnqtyUlebf1HB3GgIIpJYAP7Wpdb84WwQQQAABBBBAAAEEEEAAgVII+LBSlXiqZozUNJ+kAi7/IBmFeaqY9CGo9vFVhhpareHIOTk5ritVcCr4802fFWKqKQRUkKl+WrZs6TdxQ6g1vFrDwTVkW03Vhgo8IzUtVxD32GOPudV+7kydt4ZRq/kH52gYenkeEqRqVVVhjh071oWmOp7OUU3VkyNHjrR77rnHOfTp08cFiv7YH3zwgTs/hZje0O1Ywh+qOlUA6u+JrkXVp/fdd5/bS8eWq6/AjNTVxIkTXQWsKlfV/PlG2lbBqx60pCHtd911lxtSr+sixIykxTIEkl+AIDP57xFniAACCCCAAAIIIIAAAgggUEYB/2RyDYn2oZm6UAWfqicvueQSV42pCj3f/HsNcS7eFPCV1DRMXIGcAjIFdWp62naw+c96crqGa/sWLQTU9hqOrYrJYCWkqho1rFpNoaKexq5j6xzK2l5++WVXnXj88ce7sFIVor4pJL322mvdcHbNC6pqSZ2HjqemOTEVtr799tv2q1/9Khzy+v0jvWoou6oh/f3RNepLFanB5qcDCC5T6KupADQk/fTTT3fD65988sngJhHfq6JTFZ4alq+g+tlnn7Wrr77aza0ZcQcWIoBA0grsqXFP2lPkxBBAAAEEEEAAAQQQQAABBBAom4AqIffdd183TFnhpeaXfPXVV91wZM2vqEBO1Zh66I4qJDWMWkOaFdKp+rKsTeGcHi6k/jSXpAJNH9b5vlTRqTkcFa6qmlDB3CuvvOKGcmsbBZRqs2fPNlUuqrJTlYkaUq6mhwq9/vrrLsBT3zqGKg11TA2L1zmUtal/PZxI80pqnk2dk28axq75M2UiS7Xgeg3z1oOUFAwrzIzWNARcc1kqQFSf7dq1c3OLans/hF2VmQqL9UTzjz/+2N0f76HQVl5+DlFdu9apz1hN+6iiVXNjtg89xEhfaiVVfLoN+AMBBJJSgIrMpLwtnBQCCCCAAAIIIIAAAggggEBFBBRUaq5JhYeqAlSYpuHmfk5J9a2naasKUwGkhicrIFOlX3mahpUrSNSDZVTRqWMrbPPDn32fZ599tr322mtuzk0FkRrOrmpBNc39OGPGDBf2nXHGGe7hNKqU1FyZGk6tY2iYtIa360sPG9IclTqm5uos/pAbf8ySXjUHqObt1PBxPQzHD8nXPhqCLZsHHnjABYsKM1VNqqd/+6bAWI4KIFXB6a/Fr9er5sHUXKEapn/IIYfYgAEDwkO79XAlhaMKQlVVqqBX56Sm4fLqT4GlbDXHpc5JQbEC3H79+rntSvpDlZ3aR36fffaZm+tz4MCBRYb8l7Q/6xBAILkEMkL/4lFyfXw5z3fDxi3l3JPdEEAAAQQQQAABBBBAAAEEEinQqOFPh07H83hr164NzxcZz34r0pcq8LKzsyN2obknFaJFGs4ccYdiCxUkaoi3np6tCsDS9KPgVEPKgw8D8t1qnYaUB5vmjfTzcwaX631pj1l8P/9ZsYCOGe281b/ONdoQeN9PRV5LOgeFmAqmvZXulT6X9XxKMqzIubMvAghUngAVmZVnzZEQQAABBBBAAAEEEEAAAQSqSCBaiKnTUUAWLcQr6+mWtp/iQWXwOJHWRQsxtV9pjxk8RvC9QsGS+ihpXbCfirwv6RyKB5aqZC1PK8mwPP2xDwIIVL5A+X76K/88OSICCCCAAAIIIIAAAggggAACSSmgp3kHn2CelCfJSSGAAALVQIAgsxrcRC4BAQQQQAABBBBAAAEEEECg6gT08CAaAggggEDiBXhqeeKNOQICCCCAAAIIIIAAAggggAACCCCAAAIIVFCAILOCgOyOAAIIIIAAAggggAACCCCAAAIIIIAAAokXIMhMvDFHQAABBBBAAAEEEEAAAQQQQAABBBBAAIEKChBkVhCQ3RFAAAEEEEAAAQQQQAABBBBAAAEEEEAg8QIEmYk35ggIIIAAAggggAACCCCAAAIIIIAAAgggUEEBgswKArI7AggggAACCCCAAAIIIIAAAggggAACCCReICvxh+AICCCAAAIIIIAAAggggAACCFSdwOrVq239+vWWm5tru3btqroT4cgIIIBAigpkZGRYTk6ONW7c2Jo3b15lV0GQWWX0HBgBBBBAAAEEEEAAAQQQQCCRAnl5ebZ48WL3l+/WrVtb3bp1TX8ZpyGAAAIIlE1A/wi0detWW7dunc2fP9/at29v2dnZZeskDlsztDwOiHSBAAIIIIAAAggggAACCCCQfAIKMVU91K5dO6tXrx4hZvLdIs4IAQRSRED/CKTfo/p9qt+r+v1aFY0gsyrUOSYCCCCAAAIIIIAAAggggEBCBTScXMMgq3IIZEIvkM4RQACBKhLQ71X9ftXv2cpuBJmVLc7xEEAAAQQQQAABBBBAAAEEEi6gOTGbNm2a8ONwAAQQQCAdBfT7Vb9nK7sRZFa2OMdDAAEEEEAAAQQQQAABBBBIuIAe7KM5MWkIIIAAAvEX0O9X/Z6t7MbDfipbnOMhgAACCCCAAAIIIIAAAggkXEAPpkjkg30KQ/0XFuyygsLCuF9LjcxMy6yRYZk8mCjutnSIAALxEdDvV/2erexGkFnZ4hwPAQQQQAABBBBAAAEEEEAgpQUUYu7cWZCwa1A4WhDKR2vWrEGYmTBlOkYAgVQUYGh5Kt41zhkBBBBAAAEEEEAAAQQQQKDKBFSJWRmtso5TGdfCMRBAAIF4CBBkxkORPhBAAAEEEEAAAQQQQAABBNJGIBHDySPhVdZxIh2bZQgggEAyChBkJuNd4ZwQQAABBBBAAAEEEEAAAQQQQAABBBBAoIgAQWYRDj4ggAACCCCAAAIIIIAAAggggAACCCCAQDIKEGQm413hnBBAAAEEEEAAAQQQQAABBBBAAAEEEECgiABPLS/CwQcEEEAAAQQQQAABBBBAAAEEyi/w278vsoyMjFAH+lLL+PGz3u5eHlri1vTqXsfOPbWpe88fCCCAAAKxBQgyYxuxBQIIIIAAAggggAACCCCAAAIxBYa/tspmzN0aDjLDgaYLMJVj7h4U6V+/mp9nM+fn2h2/bx2zbzZAID8/37KyiHGq83fCjBkzTF/nn39+db7MCl0bQ8srxMfOCCCAAAIIIIAAAggggAACCOwWmDl/d4ipANOFmD++7v6c6ZYpxFRFpnv12wGY9ALTp0+3v/zlLzZlypS4nestt9xi999/f9T+RowY4Y65detWW7RokbVu3druuuuuqNtXxoqdO3faU089ZVdffbX96U9/svHjx1fGYdPqGMOHD7cbb7wxra65LBdLkFkWLbZFAAEEEEAAAQQQQAABBBBAIIrALrc8w8Y80yv01dPGPL2fvfv0vvbuUz1CX93tnSe7hb662ugnu9joJzpb7261Q3v4IehROk3DxZ06dbJTTz01qa5cQeJjjz1mCxcujNt5/fe//7VXXnklan9jxoxxx8zLy7M6derYAQccYC1btoy6faJXqCL05z//uf3hD3+wd99915544gk7++yz7cknn6zQoR9//HHTPQ+GopGWVeggKbLz/vvv76oxVZVJmBn5phFkRnZhKQIIIIAAAggggAACCCCAAAJlElCl5f496kXcZ8KUDXb7g0vtb/9Zbn9/aKX9/b+rwnNmRtwhzguXLl1qH3/8sW3atMlV902bNs1UXefb5s2bbdKkSbZ48WK/yL1+++23pm0LCgpciDdz5swi6/2HVatW2cSJE23t2rV+kXv96quvbN68eab+FVRt3LjRLVco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CKSoAEFmit44ThsBBBBAAAEEEEAAAQQQQAABBBBAAIF0EiDITKe7zbUigAACCCCAAAIIIIAAAggggAACCCCQogIEmSl64zhtBBBAAAEEEEAAAQQQQAABBBBAAAEE0kmAIDOd7jbXigACCCCAAAIIIIAAAggggAACCCCAQIoKEGSm6I3jtBFAAAEEEEAAAQQQQAABBBBAAAEEEEgnAYLMdLrbXCsCCCCAAAIIIIAAAggggAACCCCAAAIpKkCQmaI3jtNGAAEEEEAAAQQQQAABBBBAAAEEEEAgnQQIMtPpbnOtCCCAAAIIIIAAAggggAACCCCAAAIIpKgAQWaK3jhOGwEEEEAAAQQQQAABBBBAAAEEEEAAgXQSIMhMp7vNtSKAAAIIIIAAAggggAACCCCAAAIIIJCiAgSZKXrjOG0EEEAAAQQQQAABBBBAAAEEEEAAAQTSSYAgM53uNteKAAIIIIAAAggggAACCCCAAAIIIIBAigoQZKbojeO0EUAAAQQQQAABBBBAAAEEEEAAAQQQSCcBgsx0uttcKwIIIIAAAggggAACCCCAAAIIIIAAAikqQJCZojeO00YAAQQQQAABBBBAAAEEEEAAAQQQQCCdBAgy0+luc60IIIAAAggggAACCCCAAAIIIIAAAgikqABBZoreOE4bAQQQQAABBBBAAAEEEEAAAQQQQACBdBIgyEynu821IoAAAggggAACCCCAAAIIIIAAAgggkKICBJkpeuM4bQQQQAABBBBAAAEEEEAAAQQQQAABBNJJgCAzne4214oAAggggAACCCCAAAIIIIAAAggggECKChBkpuiN47QRQAABBBBAAAEEEEAAAQQQQAABBBBIJwGCzHS621wrAggggAACCCCAAAIIIIAAAggggAACKSpAkJmiN47TRgABBBBAAAEEEEAAAQQQQAABBBBAIJ0ECDLT6W5zrQgggAACCCCAAAIIIIAAAggggAACCKSoAEFmit44ThsBBBBAAAEEEEAAAQQQQAABBBBAAIF0EiDITKe7zbUigAACCCCAAAIIIIAAAggggAACCCCQogIEmSl64zhtBBBAAAEEEEAAAQQQQAABBBBAAAEE0kmAIDOd7jbXigACCCCAAAIIIIAAAggggAACCCCAQIoKEGSm6I3jtBFAAAEEEEAAAQQQQAABBBBAAAEEEEgnAYLMdLrbXCsC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+OAD97N/4403hv7ClO1+/h5//HG77rrrrFboKaXJ0r755ht7/fXXbcWKFdauXTs766yzrGXLluHTmz59uo0aNco2bNjgrH/5y1+66wlv8OObu+66KzQcrqFddtll4VULFy604cOH2/nnn29dunQJLy/Nm1mzZtlLL71kV1xxhbVu3bo0u7ANAggggAACMQX0kJ3KfrBPzJMKbaBzKs2T01P9/EtjwTYIIIAAAggku0C1q8gcPXq03X777fbpp5+6QOXtt9+2P/7xj6a/mFdmmzFjhi1btswd8uuvv7a5c+dW5uFT7liaC/OItsdYdlaO+9L7WPNj6iKr+37JdCMVtimMf+2110wBm8I132655RbTz57+4WDLli32f//3f26b0q732+m1In2tXLnSBX933nmnff/99zZ58mTX9QMPPGAHHnhgUoWYOr8//OEP7h9c9t9/f/c76re//a1t27bNnbOM5bh582bn+s477zgbt7LYH7Nnz7Y333zT3n9/zzyzGzdudPdg06ZNxbaO/VH3Vsf35xJ7D7ZAAAEEEEAAAQQQQAABBBBAIPEC1aoi87vvvrOHH37YDj74YFMgkJOT4yqx/vSnP9k//vEPVxk5ceJEUxXUeeedZ5mZmZabm2vPP/+89erVy/r37+/CR1VzKozp16+fW67boCB0ypQpNnjwYBszZowdd9xx1qpVK/v8889NIYKqvo455hi3rLS3bdy4cS4o2G+//ezDDz90lViDBg2yunXr2tq1a10wceSRR9oXX3xhbdu2tcMOO8yWL1/uwhmdnyreglVvuv7x48dbfn6+HX/88S7Q0TXp2kaMGOHCEAUUqg5V5ZeCDgW+ClxVsTVw4MDwv5Kr4k4OMurbt6/pHH2ToYLZZs2a2UEHHRS3ii2FkqUJL/15+Nfqvp+/zqp+/fbbb933gkI3/WOBb1999ZX7+bjkkkts2LBh7vvvwgsvtBdffNF9f8Za7/vRa6xtY63fvn27CytbtGjhKhT1eezYsaEHC9Q0/WwlU1P1qn7W//znP1vz5s2td+/edvPNN7vfJ/q5VUWk1v/tb3+zrKws22uvvUxVpTLQtpHao48+6tZp2+JNvxcU7OpnW7+7Dj30UGvcuHF4M/0e089806ZNrUGDovOX+X31c6+K0aOOOsrq1avn9l2zZo37/aXAtGfPnu73prxpCCCAAAII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\n", - ")\n", - "\n", - "![Census vector ingestion](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABaQAAARrCAYAAAB8E6FxAAABeWlDQ1BrQ0dDb2xvclNwYWNlSVRVUl8yMDIwAAAokXWQv0tCURTHv9oPqYQIhJaGO0mFT0ojHP0RSNAgplBtz6c9BX1eni/CJWhuEfoPKpp0aWqoaK+moCkiKKg9cCm7nfteoRady+F8+HLu9557AHdA5bw8CKBiWGY6GWdr6xvM84JhjNBZhF/VajyWSq1QC35qf7Tv4JL1VpFerH5zPjOxczIePVbaexelv/19MZov1DSqH5RLGjctwBUlTm1bXHKD2GfSUMRHknWHTyXnHL62ezLpBPEjMdOKah5wS/9ArkfXe7hS3tK+Z5DTewtGdpXqNOUU0ihAQxAMy8ggC4UUhjhxECHM2alg/h+PBdsjgSo46jBRgo4iLHKIkcJRJnfpbNhvBIgdz7Dc/e+ddrUm7TJZFULsdrVZ0ppPgKfV1dgAMNYCrj65aqq2RArckWfglf4+SX2SfWe1zXDImd4bB4YehHjzk9c+0GkI8X4gROeQLt8Dl8YXM3lsJwPHewUAAABiZVhJZk1NACoAAAAIAAIBEgADAAAAAQABAACHaQAEAAAAAQAAACYAAAAAAAOShgAHAAAAEgAAAFCgAgAEAAAAAQAABaSgAwAEAAAAAQAABGsAAAAAQVNDSUkAAABTY3JlZW5zaG90v0hTjQAAAj9pVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjIxNjA8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpVc2VyQ29tbWVudD5TY3JlZW5zaG90PC9leGlmOlVzZXJDb21tZW50PgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+Mzg0MDwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgqvGlBtAABAAElEQVR4AezdBZxc1dmA8bNEIBCBkBAgSHAITrGiwYoTCgSHFooXp1CgxYtLcYoUinuRAi1OsSAFgjsECU6AJFiEfHlOvzO9O5nZnd0d293n/JjMzPX7n+Xcc9/73nMbJk8pwaKAAgoooIACCiiggAIKKKCAAgoooIACCiigQIUFuo4YMaLCq3DxCiiggAIKKKCAAgoooIACCiiggAIKKKCAAgqE0GCGtH8GCiiggAIKKKCAAgoooIACCiiggAIKKKCAAtUQmKYaK3EdCiiggAIKKKCAAgoooIACCiiggAIKKKCAAgoYkM78Dfz4449h7NixmSF+VEABBRRQQAEFFFBAAQUUUEABBRRQQAEFFCiXQNdSFvTTTz+FKf+FSfxT4dJlmmnClP+mvMobK2cfTjzxxKJb/4c//CFcdNFF4ZNPPgnHH398eOKJJ8L9998f9t1339CrV6+i83399dfhvPPOy43v379/mH/++cNyyy2Xm+/5558Pd9xxR26aAQMGhCWXXDIsvfTSoWvX4j/BOeecE1je1ltvnZvXDwoooIACCiiggAIKKKCAAgoooIACCiigQHsVaDbqO3HipDBh4k9VCUaDSNCb9bHecpaGhoaw8MILx9fMM88c3nvvvdCvX7/cMNa16aabhh122CGulkxpppk0qentmDhxYpyuS5cuYZ555gkfffRRuO6668Lpp58evv3227iscePGxWnmmGOOsOiii4YxY8aEiy++ODz22GNxfLF/Ro0aFT777LNiox2ugAIKKKCAAgoooIACCiiggAIKKKCAAgq0K4Hi6blTdoOg8KSfJtdkh+J6p6y/a9cuZVk/AenNN988LuuFF14Izz77bFhllVVigDit4K233orBYgLX+YVM6KeffjoQJJ577rnDqquu2ii7mWznddddN8729ttvh1NOOSVce+21YZdddsktarXVVotBawYcdthh4Zlnngmrr756bnxTH1555ZW4zazjkUceiRnkbD9BdQqB8SeffDKwDzPOOGNYeeWVc+OaWq7jFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBagkUzZCmi4taBaPTzrN+tqNa5eWXX45B5/z1kS192mmnxS48Jk+eHG677bZwwQUXBD4XKvPNN18YNGhQDA5nx48fPz589913YcSIEeGrr76K3XYwnn1kXHoVysomEP7www+HCy+8MLz//vvh3nvvjUFvtoHXJZdcEq644orYBzaB6RNOOCEQRLcooIACCiiggAIKKKCAAgoooIACCiiggAL1IlA0Q7qKceAmLdiOMncn3eT6Co2ka43Ro0eHk08+OfYLTZ/Q9Bv96aefNsqSzs674IILhrvvvjsGoNNwuvFIZfDgwWHZZZeNX8l4vvrqq9OosM4664Rhw4blvmc/bLDBBmGZZZYJjz76aAxAk41NdyFkfDMP87KtdBvy8ccfx2zp7Px+VkABBRRQQAEFFFBAAQUUUEABBRRQQAEFaiVQNCBdjQcYlrLTbEfXUDSRu5RFtHka+pImi/nII4+My0qZ0SNHjowPMCy0AuaZYYYZwvTTT58bvd9++4W55porfPDBB+Gqq64KZ5xxRjjmmGPCUkstFWafffbcdDPNNFPuc/6HeeedNw4aOHBgfCfTmj6qKQS5KX379g177bVX/Ow/CiiggAIKKKCAAgoooIACCiiggAIKKKBAvQgUDUjXywbWw3b06dMndO/ePfb7TDZyKgScUzA4DeOdLj7efPPNXIA4jSM43atXrzicLOd77rknZjMTQGYdrS30GU35/PPPA4Fqguesv3///jE43drlOp8CCiiggAIKKKCAAgoooIACCiiggAIKKFBOAQPSJWguvvji4cEHH4wPE1xppZXiwwOfe+65cNBBB+XmJluabjRee+212Ec0wectttgiN54PjKM7Dbr6GD58eAxON5UN3WjmJr7MP//8MRP7zjvvjIHzV199NXYXwvYR7LYooIACCiiggAIKKKCAAgoooIACCiiggAL1IFCxgPRTn0wOA3s2THnVw262bRsWXXTRsM0224S77rorBnoHDBgQ1ltvvdC7d+/wxRdfxIU/88wzgRfjlltuubD22muH2WabrdGKb7nllvidYPWcc84Zttpqq9DQ0NBomtZ8Iet6n332id2AnHXWWWHaaacNQ4cODQsttFBrFuc8CiiggAIKKKCAAgoooIACCiiggAIKKKBARQQapvSHPLnQkn8cP7HQ4JKGjZrSpfGtb095GuGUstyAhrD8rG0Luk7bvWJx85L2JzvRd99916hf6Oy4evjM9vXo0aMsge562B+3QQEFFFBAAQUUUEABBRRQQAEFFFBAAQU6jkBZA9JkRX/0bQijxjWOcZMpPfsModWB6XoKSHecn949UUABBRRQQAEFFFBAAQUUUEABBRRQQAEFqivQpoD0i2+MD384Y3Tc4m026hl6LDLDVMHotDsEpeebNKHR9MxTSjEgXYqS0yiggAIKKKCAAgoooIACCiiggAIKKKCAAvUtUNa+MOieg1excv5FU/rysCiggAIKKKCAAgoooIACCiiggAIKKKCAAgp0SoGyBaSvvWNc4LX4gt0LQpJNbVFAAQUUUEABBRRQQAEFFFBAAQUUUEABBRTovAJlC0gnQgPPScJ3BRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAgazANNkvflZAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoFICZcuQ5gGFpTykcJM9PqnUvrjcCgu88cYb4cgjj4xrOeaYY8JCCy1U4TXW9+LPOuuscOutt4ahQ4eG/fffv7431q1TQAEFFFBAAQUUUEABBRRQQAEFFFCgDgTKFpBOfUjXwT65CRUSOP3008ODDz4Yl967d+9w0UUXVWhN9b/Yt956K5xwwglxQ1955ZWw4YYbhgUWWKD+N9wtVEABBRRQQAEFFFBAAQUUUEABBRRQoIYCdtlRQ/z8VW+88cbhZz/7WXxdddVV+aNr/n2xxRbLbcOiiy6a+9xRPzT1ewwcODDMOOOMcdd557tFAQUUUEABBRRQQAEFFFBAAQUUUEABBZoWKFuGtF12NA1dytiPP/44fPjhh3HSsWPHljJLVafZe++9wzLLLBMmT54cVl555aquuxYra+r36NGjR3j88cfDQw89FIYMGRKmn376Wmyi61RAAQUUUEABBRRQQAEFFFBAAQUUUKBdCZQtIN2Zuuz44osvwkwzzRS6dOlS8o89bty4GMjt1atXyfM0N+HEiRPDmDFjQt++fZubdKrxH330UaDbjZ49e041rtiAhoaGFgWiJ02aFLAaMGBAsUXmhjPt6NGjQ//+/XPDSv0wYcKEgC+/SSmFgPpnn30WpplmmtCvX7/AfrWmzDzzzGHzzTdvdta2/E4tMWx2Q5xAAQUUUEABBRRQQAEFFFBAAQUUUECBGgt0mi47CFryED6Co7yOO+64qeh333333PhVVlml0fgnnngiHHjggWGFFVYIdFex4IILhq222ipcccUVjabLfvnggw/ietZbb724bvoYZrkHHHBA+Oqrr3KTnnTSSXG9TJ/K0UcfHYdtt912aVB8//HHH8PZZ58d1802LLLIIjFI/Lvf/S48+eSTjablyy677JLbp6OOOio89thjYbXVVgtLL710OOKII6aavqkB2WVhlUp2+GmnnRbef//9sNNOO4WFF144LLHEEnHf2WaCq/nl5ZdfDrvttlsYPHhwoEsQpr/22mvDiBEjctvN7/Xpp582mvWHH34IPFRw2LBhYf7554/rwpbfiPUXKuz7lltuGeacc864HtY399xzh5133jm89NJLuVlK+T1ef/31RttHn9LZ0pbfqaWG2fX6WQEFFFBAAQUUUEABBRRQQAEFFFBAgXoWKFuGdKEuO/5wxujw4hvj62L/u3XrFugT+Morr4zbc9999zUKyBIspfuFVDbbbLP0MQZxt9566zB+/P/2hYxcpudF1w6///3vc9Pz4ZNPPgksIz84+uabbwZew4cPD9dcc02Yd955G83X1BeC6r/5zW/Cvffe22gygqG8brjhhhjMLdadBt2A7LPPPmHUqFGN5i/nl2+//Tb86le/CjzoL5Wvv/46HH/88TGL+fDDD0+D43Zss802jYLNBJ7333//8Nvf/jY3Xf4HMo4Jguc7JFt+k1tvvTXMNddcuVlvv/32GPgmOzpbCBzfeeed8WGNf//732OgPju+NZ/b+ju1xLA12+c8CiiggAIKKKCAAgoooIACCiiggAIK1EqgbBnSdNmxyR6fNHrVSzA64WaDzK+99lqjwOwzzzwTCJym8stf/jJ+fPHFF8OOO+6YC0aTVXvMMcfEzNzpppsuTnPGGWeEiy++OM0au9EgEzcFo/v06RPIKN52221D6rLj3Xffjdm8zLTqqquGgw8+ODBdKvRLzLBslxD77rtvLghLgJ2gLFnPSy21VJyN4OoOO+wQXnjhhbSYRu/XXXdd3Ge2YaWVVgqz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jBs3Luyxxx7h3nvvLbh5AwYMCOeff37gwZIWBRRQQAEFFFBAAQUUUEABBRRQQAEFFGj/Agak2/9v2O734OWXXw733Xdf7NeZrOkFFlggLLzwwmHZZZcNffr0aff75w4ooIACCiiggAIKKKCAAgoooIACCiigwH8FDEj7l6CAAgoooIACCiiggAIKKKCAAgoooIACCihQFQE7ha4KsytRQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUMCDt34ACCiiggAIKKKCAAgoooIACCiiggAIKKKBAVQQMSFeF2ZUooIACCiiggAIKKKCAAgoooIACCiiggAIKGJD2b0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgKgIGpKvC7EoUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDEj7N6CAAgoooIACCiiggAIKKKCAAgoooIACCihQFQED0lVhdiUKKKCAAgoooIACCiiggAIKKKCAAgoooIACBqT9G1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRSoioAB6aowuxIFFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABA9L+DSiggAIKKKCAAgoooIACCiiggAIKKKCAAgpURcCAdFWYXYkCCiiggAIKKKCAAgoooIACCiiggAIKKKCAAWn/BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQWqImBAuirMrkQBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFDAgLR/AwoooIACCiiggAIKKKCAAgoooIACCiiggAJVETAgXRVmV6KAAgoooIACCiiggAIKKKCAAgoooIACCihgQNq/AQUUUEABBRRQQAEFFFBAAQUUUEABBRRQQIGqCBiQrgqzK1FAAQUUUEABBRRQQAEFFFBAAQUUUEABBRToKoECCiiggAIKKKCAAgoooIACCiiggAIKdB6BsWPHhtGjR4dx48aFCRMmdJ4d76R72q1bt9CzZ8/Qt2/f0KtXr5orNEyeUmq+FW6AAgoooIACCiiggAIKKKCAAgoooIACClRcYNSoUeGbb74Js8wyS+jdu3fo3r17xdfpCmorMH78+DBmzJjw2WefhT59+oSBAwfWdIMMSNeU35UroIACCiiggAIKKKCAAgoooIACCihQHQGC0QQnBw0aFBoaGqqzUtdSNwLkJY8cOTJehKhlUNo+pOvmT8INUUABBRRQQAEFFFBAAQUUUEABBRRQoDICdNNBZrTB6Mr4toelchGC35+/A/4ealUMSNdK3vUqoIACCiiggAIKKKCAAgoooIACCihQJQH6jKabDjOjqwRep6vh9+fvgL+HWhUD0rWSd70KKKCAAgoooIACCiiggAIKKKCAAgpUSYAHGNJntEUB/g74e6hVMSBdK3nXq4ACCiiggAIKKKCAAgoooIACCiigQJUEJkyY4AMMq2Rd76vhQZb8PdSqGJCulbzrVUABBRRQQAEFFFBAAQUUUEABBRRQQAEFOpmAAelO9oO7uwoooIACCiiggAIKKKCAAgoooIACCiigQK0EDEjXSt71KqCAAgoooIACCiiggAIKKKCAAgoooIACnUzAgHQn+8HdXQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoFYCBqRrJe96FVBAAQUUUEABBRRQQAEFFFBAAQUUUECBTiZgQLqT/eDurgIKKKCAAgoooIACCiiggAIKKKCAAgooUCsBA9K1kne9CiiggAIKKKCAAgoooIACCiiggAIKKKBAJxMwIN3JfnB3VwEFFFBAAQUUUEABBRRQQAEFFFBAAQUUqJWAAelaybteBRRQQAEFFFBAAQUUUEABBRRQQAEFFFDg/wWef/75wKujFwPSHf0Xdv8UUEABBRRQQAEFFFBAAQUUUEABBRRQoGSByZMnh4kTJ5Y8fTkmJBB90EEHxVdHD0p3LQeYy1BAAQUUUEABBRRQQAEFFFBAAQUUUECBziFw6aWXho8//ji3sz169AjzzjtvWHfddQOfq1XSduyyyy5hwIABZVktwehNNtkkvPLKK+Gpp54KM888c1mW29RCUjA6TUNg+vTTTw9LLrlkGtSh3g1Id6if051RQAEFFFBAAQUUUEABBRRQQAEFFFCgsgLXX399GDFixFQrmX322cOdd94ZeK9GSdux2WablS0gzXZPmjQpbn7Kkj777LPDLbfcEg4//PCwzjrrlHXX8oPRaeEdOShtlx3pV/ZdAQUUUEABBRRQQAEFFFBAAQUUUEABBUoWuPDCC8Ojjz4aeB88eHD46KOPwkknnTTV/BMmTJhqWHbA+PHjs19b/bm59bDg/Gnyvzc0NIQ77rgjvPbaa7kgN/tFxvS4ceNavW2FZiwWjE7TEpTuiN13GJBOv7DvCiiggAIKKKCAAgoooIACCiiggAIKKFCywJxzzhkWWGCBsOmmm4bDDjsszvfEE0/k5r/iiitiNx5zzDFHWGmllcK5556bG8eHq6++Og5nOcsvv3z4wx/+EL799ts4za233hoDwkceeWRunhtuuCEO+9Of/pQbxofhw4eHpZdeOrCejTfeODz77LO58ayX7jzIcE7TEOj9/PPPw9Zbbx3n2WCDDcJDDz2Um2eVVVaJwz/99NOw6667hssuuyyO22OPPeIychO24UNzwei06I4YlDYgnX5d3xVQQAEFFFBAAQUUUEABBRRQQAEFFFCgVQJkEVMGDhwY36+66qpw8MEHh7feeisMGzYsfPPNN+G4444Lf/7zn+P4J598Mhx44IGBoO/ee+8dCEpfcsklufH53WYwUxqWn9VMMLxnz56hX79+sd9n1pe25/vvv4/rI5hMwJrCtq244orhnXfeCfPNN1945plnwiGHHBLH8U+ah/6kCWgzDYVANcsuRyEgveOOO8ZXob6iGZbGd7QsafuQLsdfkMtQQAEFFFBAAQUUUEABBRRQQAEFFFCgkwmQAX3//feHF154Idx7771x79daa634fuKJJ8Z3xg8aNCh8/fXXYaGFFopB5wMOOCB2gcEEQ4YMidnVBH9vvvnmXNA4zlziP9tvv3049dRTA11/bLPNNuHxxx8P9913XwzopkWcd955YYsttggXXHBBOProo+PDCsnmJsi98MILh/feey+88cYbYcEFF0yzxPeddtopvP766+Htt98OrOeXv/xlo/Gt/UKwORUc84POKSCdpulI7wakO9Kv6b4ooIACCiiggAIKKKCAAgoooIACCihQJYHrrruu0Zr23HPPsPvuu4dPPvkkfPHFF3HcXnvt1WgahjN+3XXXDYceemjsr5lA9ZprrhnWWGONsMIKKzSavpQv6623XphmmmnCdNNNF9Zff/0YkCZIni1kOlMWWWSR+E6GNPPwWmqppWJf2GPHjo3j/KeyAgakK+vr0hVQQAEFFFBAAQUUUEABBRRQQAEFFOiQAueff35YdNFFwz777BOzpOmruVu3bjFTOe3wMssskz6G7OfZZ589PPfcczFj+sEHHwy33357fP3zn/8MV155ZW6eiRMn5j7/8MMPuc/ZDwSVU0mfU/ce+cPTd99rJ/C/X6t22+CaFVBAAQUUUEABBRRQQAEFFFBAAQUUUKCdCdAVB91d8DBCymmnnRa75qA/aPp0puy2226BhxAee+yxMRN59dVXD3379o3B6Icffjhsu+22gYD0Aw88EKe/55574oMNCVhTeNggQemffvopN00ckfmHbkEoTMf8lMUXXzy+l/Of7777rpyL67TLMkO60/707rgCCiiggAIKKKCAAgoooIACCiiggAJtFxgypR9oHvj36KOPhnPOOSccccQR8UGFJ510UuxCY+utt479MNPP9DrrrBPWXnvt2G3HfvvtFx8YuN122+X6UB48eHCYYYYZwnLLLReD2vTtzOcZZ5wx1+90/hb/9a9/DSNGjIjBcPp6Jhie+rLOn7Y131n/ZZddFgPuPCyRhzWWs9BfdKEHG5ZzHfW0LDOk6+nXcFsUUEABBRRQQAEFFFBAAQUUUEABBRSoc4EuXbrELUzdY/CFIDTl3HPPDQRteXDhIYccErp37x6HDR8+PAwbNiyceeaZoaGhIQaqGU8he/q2224L9PN8+eWXx2Fdu3aNDyCkf2eWR0A6PSgxrT+9H3fccbkHD84333zhb3/7W5h77rnjcuhChJLd1jgg809aDttFyZ9no402Cr/4xS/idpAFnu1GJLOYVn8kGH366ac3emUfetjqBdfpjA1TnmA5uU63zc1SQAEFFFBAAQUUUEABBRRQQAEFFFBAgTIIkEFMcLcW5csvvwwzzTRT0aAwDzrs3bt3DF4X2r4ff/wxTDvttIVG5YbRZ/Q333wTuwPJDSzzh++//z4usUePHm1e8hVXXNGiZZQ7QF3Lvwe77GjRT+/ECiiggAIKKKCAAgoooIACCiiggAIKKNASgZlnnrnJyfv169fk+OaC0cxMljN9U1eylCMQnbav1gHptB21eDcgXQt116mAAgoooIACCiiggAIKKKCAAgoooIACnVaALjo6azEg3Vl/efdbAQUUUEABBRRQQAEFFFBAAQUUUEABBWoi0JkeYpgP7EMN80X8roACCiiggAIKKKCAAgoooIACCiiggAIKKFARAQPSFWF1oQoooIACCiiggAIKKKCAAgoooIACCiiggAL5Agak80X8roACCiiggAIKKKCAAgoooIACCiiggAIKKFARAQPSFWF1oQoooIACCiiggAIKKKCAAgoooIACCiiggAL5Agak80X8roACCiiggAIKKKCAAgoooIACCiiggAIKKFARAQPS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QAEFFFBAgQoLGJCuMLCLV0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFPivgAFp/xIUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFqiJgQLoqzK5EAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQwIC0fwMKKKCAAgoooIACCiiggAIKKKCAAgoooIACVREwIF0VZleigAIKKKCAAgoooIACCiiggAIKKKCAAgooYEDavwEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBqggYkK4KsytRQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUMCDt34ACCiiggAIKKKCAAgoooIACCiiggAIKKKBAVQQMSFeF2ZUooIACCiiggAIKKKCAAgoooIACCiiggAIKGJD2b0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgKgIGpKvC7EoUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDEj7N6CAAgoooIACCiiggAIKKKCAAgoooIACCihQFQED0lVhdiUKKKCAAgoooIACCiiggAIKKKCAAgoooIACBqT9G1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRSoioAB6aowuxIFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBrtUg+PDDD8PDDz8c3n///dC/f/+w7LLLhiWXXLIaq3YdCiiggAJFBMaPHx8uueSS3NguXbrEOnqVVVYJs8wyS254uT6MHDky3HXXXWHIkCFh8ODB5Vqsy1FAAQU6ncA333wT/vOf/4QXX3wxdO/ePSy00EJhjTXWCNNMY65Jp/tjcIcVqLHAt99+G+65557w9ttvh+mmmy4sssgiYc011wwNDQ013rKpV//OO++Ef/3rX3H7Fl544akncIgCCiigQNUEuhw9pRRa24QJEwoNbvGw559/PhxxxBGxwdy1a9cwYsSIcP/994fpp58+Np5Z4Pnnnx/OOuussMEGGwSmaa588sknYY899gg//PBDWHzxxZub3PEKKKBAuxYg2JAt5aqfCUiffPLJYdSoUWHs2LHhzTffDE899VS4++67w2KLLRaD09n1tvUzy7/sssviicp8883X1sU5vwIKKFC3ApWqt9nhL774Ihx88MHhwQcfDF999VV44403wvDhw8Nrr70WVlhhhdCtW7c2u+y9997hiSeeiEHuNi/MBSigQE0F8usjNqZcbckvv/wyHHLIIeHRRx8NkyZNCu+++25MRCMJYdVVV4373dJz/WJY1HnEFeaZZ54w22yzFZusyeHUk5dffnlMjJh33nmbnNaRCiigQGcRKHScqMa+VzyN4rbbbosHvHPPPTeceeaZ4corrwwDBgwIN998c5g8eXIguPzZZ5/FYAhXLL/++uvcfv/000/hrbfeikESPlMIoHCAI3jy6aefBuahsAyuyqbpWDbfmSYVDpLvvfdeHM54iwIKKKBACEsttVS44IILYv182GGHxXr26quvjjTN1a1pPBOPHj063glTium4cePCq6++Gi8spuk5HlBvT5w4MQ0KnOhQz3///fe5YX5QQAEFOqsA7dcjjzwykCFNYOaKK66IdfdGG20USAL55z//2YiGupMAzHfffddoOF+KtYsJKLF86l/qZBJALAoooEAhgX//+9/xfH6fffaJSWYEe1dbbbV4QeuDDz5o8bk+6+A8n7qH+osLcCQ0UCelBAruvv74448bbQ71FRfnsm3INAHxA+pBlmFRQAEFFKgfgebTkdu4rTR2uV0n3UI47bTTxoMVBwuGc9B67rnn4loIhOy4445h8803j1dZzzvvvFwDmiD2scceGwMlJ554Ypz+oYceCo8//ni48cYbw7XXXhseeOCBQBClZ8+eMQh+4IEHBm49J4uEA+Kf/vSneFBk5l69eoX99tsvLLfccnFZ/qOAAgp0dgHq5BVXXDHMMMMM8SIfHs3VrYwnY2W77bYLV111VSRcYIEFAjffUBcXKq+//nq49NJLY/1OJh91MVk0ZOORQc2xgO2gcDGTIAvDe/ToUWhxDlNAAQU6jQDd3xGU+dnPfha7wGPHqRt/9atfxeDNjz/+mLO48MIL4x0vtMVph6+11lrht7/9bWx/N9UuJuA9ZsyY+KItfeqpp4YFF1wwt1w/KKCAAkmA+oVCt28U2pIHHHBA4C4L2njUHy0515911lnj3Xpnn3122HDDDcOdd94ZEye4+4NzfgrdzT377LPhqKOOim1JYgQkOVCINXDun87xmY7YAUFpMgCpBy0KKKCAAvUhUPEM6U022SRmQu+7777h+OOPj/2H0s8UBwvKXnvtFW8v5DO389BtB41p+nair2mCEH/84x9jpvPf//73MHDgwHDCCScweVh33XXDX/7yl/i5uX9uueWWuAwOigRNllhiiXg7UXPzOV4BBRToLAJkwdFdB3V0S4IPZOwRZKZuXmeddWImC8HlYoVxu+66a/j9738fZppppsBJB9nVBKU5kaHbEArbQ/+oSy+9dOjTp0+xxTlcAQUU6DQC1LWUFGxJO06ghbb2tttuGwfdfvvtsc1N5jSB6c022yzce++9gbY0pal2Md3oUecOGjQoXjz0tvZI5j8KKFBA4Be/+EVMQKDeOPTQQ8P1118fE8A41+dCWEvP9bOrePLJJ2PSws477xz7fCZxjUJdR9Cbwnq5k442JbEEuvM86aSTYruSDOtTTjkldhXK9CRAsEyLAgoooEB9CFQ8Q5oMDoLGNHw5ABBoIMjMgYTgA5nKKTg988wzxwchQEM2M7cXjpzSPcdHH30UgxTcmsPVVwIYFPqhZp5SCtMRNCGTb6WVVgr7779/vEpayrxOo4ACCnRkAerlLbfcMt5ZQrdHPNCQ7y0pO+ywQ5h77rnDnHPOGYMeZMOsvfbaBRdBHczDbijU69xyzm2WZEVzIsGDuqivyWqhj8MhQ4bEaf1HAQUU6OwCZC5T+vXr1yQF9Sh3qfz617+OQaHtt98+3HfffbF+5U7EptrFffv2jfPwXJdS29lNbowjFVCgwwpw8YqMZTKZ6b7jmmuuia+hQ4eGnXbaqcXn+lkolpHaiwxPd96xzt69e8duh2grkkTBnSJ0I8czUKj/6KKD6QhKr7feerm2JF0S3XTTTdnV+FkBBRRQoEYCFQ9Is18EN3bffff4eumll+KVSm7DJvhQ6MEr3FJzzjnnhEceeSTeOs6DC7jCSoCitYUDGsvlCcB33XVXPIhttdVWgcwRiwIKKNCZBWafffbYUCcoTHCaYAXB5ZaUFLTgIiOlqYflzDXXXLlFp8+cRFBWX331WP+TBci2cIKx/PLL56b3gwIKKNCZBegSiULAJT9Lmm44uMtkjjnmiMkc1Mu0nykM5ztJHhTbxZHBfxRQoAwCtNW22GKL+KJLIc7zeY7Uz3/+8/gg6/xVlHquTwyhqUL/0iyLIHP2rmm6/eDOu9T/fWprsqzs56aW7TgFFFBAgcoLVLTLDg4C9B9FNxmpcNVy8ODB8QCRAhBpXAo4c6Xz4YcfDmTc0b0GXXbQkM4v6QGGDKfPU0p6iGH+gw44UA4bNiz2MX366afHzBL6MPXhBpHNfxRQoBMLELygfuTOEbJP6KOPBj6lubq1NWzplnPmTZ/ZBgrZ01yoHD58eHj66afjhct0F02cwH8UUECBTixAQJogM/VjCrbA8cILL8Q2N7fLU7ioSJs49SlNnc6DYwdN6YaDUkq7OLXL4wz+o4ACChQQOPnkkwN9zfOwagrda6688srxM33eZ0uqU0o918/Om/2clkPAerrpposZ0nRNxItuO0hsI+mMu/Yoqa2Z/zmO9B8FFFBAgZoJVDRDmgMEt8o8+uijsfG86KKLxj6e6D+UK5ezzTZb3PF0pZJ+7bjFO2XY8YRduuzgFqDsE3O5lZDuOjiYEdwm05oHHfzjH/+IB6D0cKys6plnnhkfmMUBk20imM2tiGyjRQEFFFDgv8FnsqN52Owdd9wR+xxtrm5tjVvquomACOuhTk59VlO3k/XHnSwEUIbYXUdriJ1HAQU6qAB1JMkeBFzSw7vJEqRbPNq0m266adxz7jYhi/qMM86IbWu6rOP5AKuttloc31y7mLY5Dwmj32nm8cJgB/2DcrcUaKMAdcXjjz8eu9skEP3VV1/FeoPzbM79KS091y+2SWk5dD+U2o6rrLJKeOCBB2I3ISS+ETcgRkDf0lyY69+/fxxPggVdfz700EPFFu9wBRRQQIEqC3Q5ekoptM6mbrcuNH2xYfQhTXbzK6+8Eu6///5AkJlGMg+04kBCITOORi9Z0QSj11hjjZjVwfR0sbHwwguHL7/8Mo6jHykOcDy8hT5K6auKB7UQ4ObKLF2CcNsOfeYRCOfKKAfHRRZZJAa3CVrz0C7mJxswXTkttv0OV0ABBWotQH2VLeWqn7nQRz961MFcyKPMN998seFOth0PjmVcU3UrQRDqXALZaTuvu+66RstM286t4tTz3NbJyQtZ0AMGDAgHHXRQzKhJ01HHU7fzvIDddtut4B0yaVrfFVBAgXoUSPVh2rZy1dssj4cMEmShiw66t/vwww8D3dvxUK/0AEICMdzxQl3Lg8J5Lgtd1fHwcEpz7WL6qH755Zdj250HyzZ363xcqP8ooEBdCuTXR2xkueokgs4kGNDG4wIWWdFLLbVU7D86JRu09FyfdiXtS9qmzJsK9R53QXOHCF2DEBdYdtllw+effx7brsQNaEPy8EOeSUIAeokllojxAdqc3J29ySabhOeffz4ms6X6Mi3fdwUUUKCzChQ6TlTDomHKLS8FO2Ymi6LchaBGehhBoWVz6yEZGKl7Dm4z5HMxHDadabJZzgRYOBAVK5MmTYoPN2hqO4rN63AFFFCgFgKp24y07krUz2nZxd6bq1uLzdfUcPYjf9+YnsyWY445JvZxypPVLQoooEB7E8iv2ypVb9N2ppsjAi/FCskg6e7D/GmaaxcTyCYr26KAAu1XIL8+Yk8qUSdRX3Benvquzxdr6bl+/vzpewqmZ59FRVyAfSp2jl+szZmW6bsCCijQmQUKHSeq4VHVgHQ1dsh1KKCAAh1NIP8AUYmTiHoxO3rKTTv09cdJBrekpztp6mX73A4FFFCgFIHOVG+X4uE0CihQO4H8+ogt6chtydpJu2YFFFCgfQoUOk5UY0+KpxJXY+2uQwEFFFBAgf8XILOmd+/e8UE0dO1kMNo/DQUUUEABBRRQQAEFFFBAAQU6noAZ0h3vN3WPFFCggwnkX7E0q6WD/cDujgIKdDgB6+0O95O6Qwq0W4H8+ogdsS3Zbn9ON1wBBRQou0Ch40TZV1JggdMUGOYgBRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQXKLmBAuuykLlABBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgkIAB6UIqDlNAAQUUUEABBRRQQAEFFFBAAQUUUEABBRQou4AB6bKTukAFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBQgIGpAupOEwBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCg7AIGpMtO6gIVUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFCgkYkC6k4jAFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBsgsYkC47qQtUQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUKCRgQLqQisMUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFyi5gQLrspC5QAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoJCAAelCKg5TQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUKLtA17IvscACu3TpEhoappnyaigwtvWDJk+eHCZP/ilMmjSp9QtxTgUUUEABBRRQQAEFFFBAAQUUUEABBRRQQIGqCFQ8IN21a7eyB6KTDAHuhob/BrsnTpyQBvuugAIKKKCAAgoooIACCiiggAIKKKCAAgooUIcCFe2y47+Z0eXNii5kSGCadVkUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEF6legogFpuumoVqnmuqq1T65HAQUUUEABBRRQQAEFFFBAAQUUUEABBRToSAIVjRiXu8/opuCrua6mtsNxCiiggAIKKKCAAgoooIACCiiggAIKKKCAAoUFKhqQLrxKhyqggAIKKKCAAgoooIACCiiggAIKKKCAAgp0RgED0p3xV3efFVBAAQUUUEABBdq9wFVXXRWefPLJdr8f7oACCiiggAIKKKBA5xLo2rl2t/HeTpo0Kbz11lvhk08+CfPPP38YOHBgowlGjRoVvvnmmzD77LOHGWecsdE45hk9enSYddZZQ9++fRuN48tnn30WXnvttTDvvPOGOeaYY6rx2QETJ04ML7zwQpg8eXIYPHhw6NGjR3Z0+Oqrr8LHH3/caFj60q1bt7DAAguE8ePHx31Jw/Pf2b/u3buHtE9pfJ8+faba7zQuf9o0nPc0X/56p5lmmjBo0KAw3XTTZSf3swIKtGOBu+++OzzyyCPh4IMPjv/vv/fee+Hbb7+N/69PP/30rd6zV155Jc5LvWcphZL1kgAAQABJREFULjBu3Lhw0kknhZVXXjmsv/764fvvvw/vvvtuwJ76Nn988SU5RgEFOpIAbc1bb701LLvssmGJJZaYqv2Y9nXMmDHh5ZdfjnXGwgsvHKaddto0qsl32p4vvfRS6N+/f1hkkUWKzvfTTz+FZ599NkyYMCFuxwwzzFBwuc1NR7ua9nWhwnbTxrQooEB9CvD/N+e+lEL/v7a0HnrzzTdjnZL2drbZZgszzTRT+lrVd87FU13IeXeXLl0Krp/664033oixA2IAxeqsDz74ILzzzjthvvnmazZOQHubdjdlzjnnDL169Sq47mIDOU588cUXYeaZZw4DBgxoNBmxELb3yy+/DIsuumjJvqXOR/uUtj4OHEOKHRuyG/Xhhx8G/lbyC8ctvLKF5b///vvx2DfPPPNkR/lZAQXaiUCnDUjfdddd4eijjw7fffdd7qfiwHH22WfHE3wG8vnOO+8Mxx57bNhss81y0/HhkksuCdddd1045JBDwo477pgbd++994azzjorjBw5MjesX79+4eSTTw4rrLBCbhgfWPcf//jHGOghwEChwt5www3jtqUThvvvvz9+jxPk/cOBhfGcNGy55ZZ5Y//39Z///Gc8iKV9+t+YENi+ZZZZJuy+++5hoYUWyo0qNG0audFGG8UASaH1du3aNR50hgwZEnbbbbdg/95JzXcF2qfA1VdfHYMN6623XlhllVXCcccdF5544onwt7/9LQZCWrtX22yzTaBRSyPfUlwAH4JOb7/9dgxIc8K3ww47hOWWWy5cdtll0S87vviSHKOAAh1BgODIQQcdFJ566qm4O9QJ119/fWyP7r///o3aXX/5y1/Cueeem9ttLmTRJl1jjTVyw/I/fP3112HPPfcML774Ym4UyRUnnHBCbC/mBk75wPHhggsuCMxDIVBz5JFHhs033zx+T/+UMh37cN5556VZGr0/9thj8YJoo4F+UUCBuhAgeHzEEUfk2nPctZENPramHuIc8vPPP2+0f1yEp+1z4IEHtjgw22hBJX4h8erQQw8N99xzT26O3r17hz//+c+Nzus5p//9738fHnzwwdx0c801Vzj//PNzcQVGELDeY489GiWREeBmOgLuhQpxCOIRlDPPPDOsvfbahSabahgJb5deemmsn7lY+Ktf/SomlqQJ+Y04XowdOzYNCrTzjz/++KIXH5mwlPm4OEEcgXhJKsQD9tlnn7Drrrs2Okal8emd40c6tqVhvON0yy235AYR/+B8hGA7we4bb7wxN84PCijQfgTqJiD9+ufPhgffuinw/t2EcWH6bj3DQv2XCWvMv0V8LycpmX4EkmmUDxs2LGYxDx8+PDz88MNh++23Dw899FAgqNrS8uijj8aKngPAWmutFQ9AVKg06DmocvBac80142I5wO27774xqENmNsFbDgj//ve/wz/+8Y8Y0Kbxnr2yuuCCC8blZrcr/yopB/9sgDxNS0Zztqy00koxK5wrkJzIcKBlWy+//PKprj5y0sKV7mzJ/47lFltsEYNLZFb/5z//ifvNQeIPf/hDdlY/K6BAOxM49dRTYwYF9Yal+gJczORkLj8zJG1Jc+PTdL4roEDHECCBgKyzpZZaKp6M047kgtVf//rXeEffTjvtFHeU7jwIRpN4wDCCxlzEov15zTXXhMUXX7wgyC677BLbhrRZSUBgXSyb+UhwSG3P5557Lga3uVOQcbQpb7rppnDUUUfFDMGf//zncfmlTkcmH4UkkPzgjHfeRRr/UaDuBEjQ4i4u7sQtVFpbD6Vl/fKXv4x1DsHpESNGxMAj564EO7NB7zR9Od9PPPHEeI5MXUm9xJ3VXDijDubc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rbO/zpT3Bx10UEwwO+WUUxq8/eeeey6MHTt2uoC03xUaTOqCCiigQNkINHlAGgkylS+55JLpUAjybr/99qFLly7xs++//z788ssvYZFFFomB51GjRoWFFloot9ziiy8eevToEVq1apWbNnLkyPDVV1/F4Pbss8+em5598+WXX8ZBeKEBN1df+SEo3rZtdQ5uEyKYzv7XtO7sdnyvgAIKKKBAcxbYeeedwx/+8IcYjH711VfDeeedF0444YRw7rnnhvbt24fPPvsstGnTJiywwALxMMaMGRO++eabMPfcc4fOnTvHz+krucj8wQcfhJ49e8Y+kpnpj7/44osw33zzxQEq07799tuQ+nb6Uz7jDqds3898NAakbJ9+n343tbR8Td8N0ny+KqCAAgoo0BIFVlhhhXDMMcdMd2gjRoyIY2b6ZAK4NPrRKVOmhF69euXmr228y0yMlUm6ov/lOwCNMTn9b3bdzMf4nb7/k08+if0+4+WPP/44zD///DFwzrIE0pnG2LvQ+JvvBqNHj662jyyXbXzXyH5X8LtAVsf3CiigQMsQqB6BLfExke182GGHha222irss88+4aabbgoDBgwIDJj/97//xb0hK/qkk06KA1g+p2THDTfcEH+/7rrrwp133hnoCAlSk23NwLp162mlsemMTzvttPDKK6/Ez9dee+1wxBFHxPUyyOZq7nvvvRd/55ZlPiNzm0Y2GR1/KjdCWRGbAgoooIACLUGAAefqq68euOWXclgfffRRWHrppWOfSTCYQDWNPpK+cv/99w+bbbZZ/Lxr166x32WZs846K17QPfnkk8M777wTl6EP3mGHHWJffu2114Y33ngjTqdP3W233cK6665bre/nw0svvTRmgTGIZXlKYx144IGx767ru0Fcuf9RQAEFFFCgwgS4kHvkkUcGxriMqYcMGRIOP/zweOF5r732CnWNdwle038TsKaRhX3ssccGksBefvnlcP7558fx8BprrBE/5+I1Y2P69n/84x/xbivuuGLbZ599dlyOsTyJaJS7pDE+Z51c9KaPP/XUU3PfC1ZaaaUYPI8z5v2nvnGCvMX9VQEFFFCgDARK8lBD6kLRcaUfakXV1Aguk3V1+umnB+pMM+B98cUXp5udzvCOO+4Ia621VmB9DHTpuNKAmAVYliwv1rXMMsuEgQMHxqvGfMZgm2yto446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UECB0gnk92Ol2nKLCEiXCsvtKKCAAgoo0JQC+V8GZlZAuimP0XUroIACCijQkgTsu1vS2fRYFFBAgcoTyO/HSiXQulQbcjsKKKCAAgoooIACCiiggAIKKKCAAgoooIAClS1gQLqyz79Hr4ACCiiggAIKKKCAAgoooIACCiiggAIKlEzAgHTJqN2QAgoooIACCiiggAIKKKCAAgoooIACCihQ2QIGpCv7/Hv0CiiggAIKKKCAAgoooIACCiiggAIKKKBAyQQMSJeM2g0poIACCiiggAIKKKCAAgoooIACCiiggAKVLWBAurLPv0evgAIKKKCAAgoooIACCiiggAIKKKCAAgqUTMCAdMmo3ZACCiiggAIKKKCAAgoooIACCiiggAIKKFDZAgakK/v8e/QKKKCAAgoooIACCiiggAIKKKCAAgoooEDJBAxIl4zaDSmggAIKKKCAAgoooIACCiiggAIKKKCAApUtYEC6ss+/R6+AAgoooIACCiiggAIKKKCAAgoooIACCpRMwIB0yajdkAIKKKCAAgoooIACCiiggAIKKKCAAgooUNkCBqQr+/x79AoooIACCiiggAIKKKCAAgoooIACCiigQMkEDEiXjNoNKaCAAgoooIACCiiggAIKKKCAAgoooIAClS1gQLqyz79Hr4ACCiiggAIKKKCAAgoooIACCiiggAIKlEzAgHTJqN2QAgoooIACCiiggAIKKKCAAgoooIACCihQ2QIGpCv7/Hv0CiiggAIKKKCAAgoooIACCiiggAIKKKBAyQQMSJeM2g0poIACCiiggAIKKKCAAgoooIACCiiggAKVLdC2VIc/atSo8Pnnn4dZZpkl9OrVa7rN/vzzz2Hw4MGhU6dOYckllwwdOnSYbp40YcKECWHIkCHp19C6devQs2fP0LFjx9y0Ur754osvwtChQ8MiiywSFlhggRo3/e2334YPP/wwzDfffOF3v/td3O9CMxe7Ppb9/vvvw7Bhw+JqcMOiPi0tP9dcc4V555232qJjx46N56RVq1Zh6aWXLsr3yy+/DJzL/Mb5xCe1Dz74IEyePDn9mnudc845Q/fu3XO/1/Zm9OjR4bPPPouzLLjggmH22WeP7z/66KMwceLEgovy98Xfik0BBRSoVIFi+xj6ljfffDMsuuiiYeGFFw70BY3dLrroojBp0qTw17/+tbFXPVPX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AQUUUEABBRRQQAEFFFBAAQUUUEABBQxI+zeggAIKKKCAAgoooIACCiiggAIKKKCAAgooUBIBA9IlYXYjCiiggAIKKKCAAgoooIACCiiggAIKKKCAAgak/RtQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUKImAAemSMLsRBRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQPS/g0ooIACCiiggAIKKKCAAgoooIACCiiggAIKlETAgHRJmN2IAgoooIACCiiggAIKKKCAAgoooIACCiiggAFp/wYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFSiJgQLokzG5EAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQwIC0fwMKKKCAAgoooIACCiiggAIKKKCAAgoooIACJREwIF0SZjeigAIKKKCAAgoooIACCiiggAIKKKCAAgooYEDavwEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUECBkggYkC4JsxtRQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUMCDt34ACCiiggAIKKKCAAgoooIACCiiggAIKKKBASQQMSJeE2Y0ooIACCiiggAIKKKCAAgoooIACCiiggAIKGJD2b0ABBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCgJAIGpEvC7EYUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFDEj7N6CAAgoooIACCiiggAIKKKCAAgoooIACCihQEgED0iVhdiMKKKCAAgoooIACCiiggAIKKKCAAgoooIACBqT9G1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRQoiYAB6ZIwuxEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUEABA9L+DSiggAIKKKCAAgoooIACCiiggAIKKKCAAgqURMCAdEmY3YgCCiiggAIKKKCAAgoooIACCiiggAIKKKCAAWn/BhRQQAEFFFBAAQUUUEABBRRQQAEFFFBAAQVKImBAuiTMbkQBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFDAgLR/AwoooIACCiiggAIKKKCAAgoooIACCiiggAIlETAgXRJmN6KAAgoooIACCiiggAIKKKCAAgoooIACCihQa0B62223DVtvvXV46qmnCkodeeSR8fPrrruu4OcNnbjzzjvH9Q4cOLChq2hRyx144IHR48knn2xRx+XBKKCAAgoooIACCiiggAIKKKCAAgoooEBlCdQakB48eHB45513wlFHHRVGjBgxnczQoUPj599+++10n83IhHfffTeud+TIkTOymhaz7EcffRQ9Cp2DFnOQHogCCiiggAIKKKCAAgoooIACCiiggAIKtHiBWgPS6eh/+OGHcNxxx6VffVVAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRQoN4CbYtd4uGHHw533XVX2G677epcZPTo0YFyGy+++GLg/RprrBHWWWedMM8880y37JtvvhmeeOKJ8Nlnn4VVVlklUK6jpkYm9rPPPhteeOGFMOecc8b5f//734c2bdpUW4R1PfDAA+GDDz4Ic889d9z26quvHmaZZZZq8+X/8vPPP4dHH300PPfcc2GOOeYIf/rTn+L+33nnnXE9hx56aFzkvPPOC99//338nGXuueeesOSSS4a99947fv7111+H559/Ph7/pEmTwvLLLx922GGHMPvss+c2mdax/fbbh1lnnTXceuutMQsdJ46pc+fOuXmzbzimhx56KHz44YdhiSWWCHvuuWe19Wbn9b0CCiiggAIKKKCAAgoooIACCiiggAIKKNCcBIoKSK+55poxCHzSSSfF4HKPHj1qPAbKbOy4444xYJpmuv3220PXrl3DLbfcEhZbbLE0Odx///3hr3/9a5g6dWqcxu8EqAs1Sof0798/BojT51dddVXYdNNNwwUXXBDatp12KAMGDAgHH3xwGDNmTGjVqlVcN/OxXYLUab60jvTK/LvsskssjZGm3XzzzTHofNNNN4VFFlkkpIA06xkyZEjo0KFDuP7668PkyZMD9bZp7Ocf//jHMHHixLSacO+994Zrr7024NCtW7c4Pa2jffv20WXcuHFxOsHt5ZZbLrDN/AD6J598Ek499dRAEJzGRYK77747Bqg7duwYp/kfBRRQQAEFFFBAAQUUUEABBRRQQAEFFFCguQoUVbKDrOX1118//PLLL+Hwww/PBZALHdQ+++wTg9FkDPOwQ4KxZPz+9NNPYffdd8/Vov7000/DEUccEde12Wabxezra665Jrzxxhshv3Y0JUP22GOPGIzu169fePDBB8Oll14allpqqfDII4+Es846K7crF110UQxGEyB+9dVX4wMZV1111UAdZgLTNTWC7QSTyWI+55xzYrD8z3/+czwGlklB8+zy7O9G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f7epgAIK5AvUGpAeP2Fi/vz+roACCiiggAIKKKCAAgoooECLE2D8a0D6t9M6bty48N///jeWtGjduvabqynlMWjQoNC+ffuw7LLLhm7duv22ol/fDRs2LJANzbrWWGON6T5PE0aOHBnX9fPPP4ellloq9OrVK7Rq1Sp9XO31k08+CcOHDw8jRowIc845Z3jllVfi7+uuu2748ccfw5tvvhk6deoU1l577aoHWHaMy5JRTdkRGvtEJvimm26a20ZtxzJ06NCYjc1+cRwvv/xyPJZZZ501EOQmeL/ooovG4xw/fnxYddVVQ9euXeN23njjjfh+5ZVXjsvGHfj1P99++2085rFjx4Yll1wyLLHEEvETzsFTTz1Vddf6tNgMmdLzzTdfYB35x57WV8z+L7300mG22WYLr7/+emCbq622WphnnnnSKnxVQAEFmlygxoD0lClTLdXR5PxuQAEFFFBAAQUUUEABBRRQoDkIULqDcXDr1oWDn81hH0u5D4ssskh47733wh133BH69u1bcNNTp04N5513XiybkZ1h5513Dv369ctNIlh7+umnB+an3XLLLWHhhRfOfZ7ePPbYY+GCCy7Izcd0gsUHHnhgLmCc5uX13nvvjUHnBRZYIAak0++jRo0K1113XW49t912W7j44ovjOig7MmbMmLga5qdtvPHGoU2bNnUeC+U9rr/++rDZZpuFJ598MkyYMCGw7c6dO4eLLroorL766jH4nGpwE5j/+9//Hk455ZQY+GVb3bt3D5dcckncHr9TA5sgebb9/ve/D4ccckjgOFhvauw7wWh+0rGmYy/mXKT933777QPWqfb2tddeG/dj/vnnT5vyVQEFFGhSgRovc9IZ2xRQQAEFFFBAAQUUUEABBRSoFAHHwb+d6f333z9m9FLrmczgQo1AL8FUMnp5QOAZZ5wRs4RvuOGG8Mwzz8RFyFT+97//Hd9vscUWMeOa+ckuzrbBgweHCy+8MGYAn3DCCTEwTYD3kUceicHX7Lx1vX/ooYdiHezDDz88Zmt/9dVXubrXBLyXW265uApqZV9xxRWxDEYxx5K2yz5tsskm4aSTTgqLLbZYmhyoTc26Tz311EBAnwzs448/Puy2226B2tzzzjtvIBuazG0ar88++2zMUL788svjMc8xxxwxWMzDJcn6Zv/IwKax7+xzoVaf/SeYTVCa/e/d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YPHFF48B6bZt24ZevRo3Y7/+e9O0S/zrX/8KH3zwQdzIeeedF2abbbYGbfDHH39s0HIupIACClSqgAHpSj3zHrcCCiiggAIKKKCAAgooUEKBxX7XoWprvxS1xWwJj6IWcKZGE9hiiy3CCiusEIOznTt3brT1NscV/fTTT+H777+PuzZ16tQG72I2IL3tttuGeeedt+C6WrpnwYN2ogIKKFBAwIB0ARQnKaCAAgoooIACCiiggAIKNI1AeoBhbWsf9O64+LHlOmpTarrP5ptvvqJXTlCXzGIyqutqY8aMCa1btw4dO9avJAzB4pEjR4auXbvWtYnc5+wX2ypFEDgbkCagb1mO3GnwjQIKKFBQoO4eo+BiTlRAAQUUUEABBRRQQAEFFFCgeIEtN549PPXcqPiwQkpy1FQ3moA15U14sKGt9AJXXXVVuOuuu+KGTz755LDSSivF94cddlj46KOP4sMOr7322nDdddeF5557LnzzzTcxGL3iiiuGAw44IHTr1m26nX744YfD008/Hd57770wZcqUsMgii8Sayy+//HK4/vrr4/wnnHBCWG211aot+8wzz4QXXnghDBo0KPz8889hrrnmCr179w59+/YtWE7k66+/DpdffnncTwLYtFlmmSVstNFGoV+/fqFLly5xGsfHcWbbTjvtFH/de++9wzbbbJP9qM73w4cPz83DPtoUUEABBWoXaF37x36qgAIKKKCAAgoooIACCiigQOMI7LLDHHFF1NIm8JxtBKGZdv1tP8Vg9a59p82bncf3zUPgxhtvDLfffnsMRrNHkyZNCq+88ko45phjwoQJE6rt5IMPPhguuuii8M4774TJkycHsp2HDBkSjj766DBs2LBq82Z/eeCBB8LZZ58dBg4cGIPRfEbg99lnnw3HHXdc+Pjjj7Ozx6A1DxZ89dVXYzZ1q1bTHuY5duzYcP/994fjjz8+kKHdFC1lSM8+++yhXbt24c0334w+BOIJ2NsUUEABBaoLmCFd3cPfFFBAAQUUUEABBRRQQIEmFajkzF+yos8+sUf43+3TAs8p+EwwOjV8DEYnjeb3OmLEiHDHHXeE9dZbL6y55pox+PrUU0+F8ePHh2+//TY89thjYcstt4w7Pnjw4HDppZfG95TP6N+/f6xP/cMPP8QM64ceeih3gNkazs8//3xuuSWXXDLsueeeMTOb7RCophwHQelLLrkkV8aDoPO4cdP+jshyJit61KhR4dZbb4379Omnn8aHNf7hD38IG264YdyPCy64IGZTsxOnn356LD0y55xz5vap2DcpIN2+fftw7LHHxuB7dlkeFEm2eUMfmphdl+8VUECBliBgQLolnEWPQQEFFFBAAQUUUEABBZq9AMHYR2/t1ez3s6l3EIfll+4R3v9ofLj7oZ/j5jZcZ7aw5KI89DCEbbdo2Q/SiwdZ5v/ZaqutYpCYw1hnnXViKQwCv7Rs5vKLL74YS3QwfYcddohlM3hPkPl3v/td2G+//fh1unbffffFTOo2bdrETOpUBoOyG3PPPXc499xzw+jRo8O7774b1lprrbj822+/HV87deoUA+LUtCYAvP/++wcCwgSaF1xwwTgPpTv4yday7tmzZyDDuSEtBaTJ4CZYzrrYj6FDh8Yg+YcffhhOOumkcOqpp8YSIg3ZhssooIACLUnAgHRLOpseiwIKKKCAAgoooIACCihQJgJLLtYhHL3Y3GWyt+5mVmD99dfP/hqDwikgnS3DQWmO1FZZZZX0Nr7OP//8Yd555w3fffddtenUmKZWNW3ZZZcNEydOjJnXaSbqTxNspkzI+++/nwtId+/ePZYCoSwHgd/NN988LL300jHIvNlmm6XFi3595JFHwr333ltw/qWWWiocdNBBuc8IrH/22WexBMl2220XODYawWkyr6md/cEHH4RHH3203vWpcxvxjQIKKNCCBAxIt6CT6aEooIACCiiggAIKKKCAAgoo0NQCCy20ULVNpAxmJqbSG7ySIUzjwYJkKee3FVZYIRD4zTZKa1D+g0Yt5n322Sf7cbX3ZB6ntscee8SyGNSwfv311+MPnxEcXn311QOlOgo9cDEtn//KQxQ///zz/Mnx9+zxMoHSJfzkt65du4a///3vgRIiNDK66/vAxPx1+rsCCijQEgQMSLeEs+gxKKCAAgoooIACCiiggAIKKNCMBHioICU3aDzMkJ/0e9rN/AcgMp2M6NQIINcWRM7We15uueXC+eefH7OaX3755dwDE7/66qtw5513Bh4weMom4h13AABAAElEQVQpp4Qlllgirb7WV7Krd9ppp4LzkI1dbCMLnGMgc5yMbpsCCiigQAgGpP0rUEABBRRQQAEFFFBAAQUUUECBRhegvAZZzgSeyQ4mIzrb+Cy/UVs6leRYccUVwyGHHJI/S42/kw1NzWh+qOv8zjvvhHvuuSeQSU0pj6uvvjqceeaZNS6f/aB3796Bn7oamdRvvPFGnI1AdaGA99ixY+Pn1L+2KaCAAgoYkPZvQAEFFFBAAQUUUEABBRSoJtCq2m/+Us4CnsuZe/YWW2yxGJBmL5555plqAWmCxSNGjJhuB9u1axd69eoV60hTemPcuHHVHj44atSoWOaDshk8PJCfFBQmCN2jR4+wxhprxIcYrrfeerEO9W677Ra388MPP0y3vTSB9TbkoYbt27ePmdkE3Tt37hyuuOKKag8ufP755+MDGNnO8ssvnzbnqwIKKFDRAmZIV/Tp9+AVUEABBRRQQAEFFFBgOoFWhjGnMynXCZ7LmXrm+vTpEx588MEYkH3sscfiQ/54UOHw4cNjUJngc7ZER9rZjTfeOAakme+0006LNZgXWGCB8Mknn4RrrrkmDBo0KM5KJjQBacqDnHvuufFBhx06dAgnnHBCfKAhmcnZBxPmP1gxWw7k5ptvDhtttFEgQ3u22WZLu1Lna8eOHQOZ3C+99FIMjJ988slhk002ifvFft5www1xHWR9Eyi3KaCAAgqYIe3fgAIKKKCAAgoooIACCiiQEyCwRZs0aVIsG5D7wDdlJ8A5pKVzWnYH0AJ2eMEFFwzHH398OPHEE2PZjldeeSXwQ1t44YXDSiutFO666674e/Y8bbHFFjFofeutt4a33norHHzwwfE8pgcmsgCBbQLXNDKbd9xxxxj85YGIbJPMZYLdaRnqTbPebCNAPGDAgDjpySefDPwcdthhgUB6fdp+++0XyL7mIY6DBw+OP9nlCbwfffTRgYxxmwIKKKCAAWn/BhRQQAEFFFBAAQUUUECBasEuAmPjqoJas1VlNNrKV4BzmA1yZt+X71GV354vs8wyMXuZBw2mzGbqLG+//fa5YHSho9p1111Dly5dYuYxDwNMD0Ak+ExguW/fvjHonJbt169foIzHHXfcEXiQYXZ+HnhINjXry7a11lor7LvvvuGmm24Kv/zyS/yIoHJ9A9JkWp911lmxRjV1sb/55psYCGd71KHeaqutAvtgU0ABBRSYJtCq6mrh1EIYP40cVWiy0xRQQAEFFFBAAQUUUECBFikwZcqUMHny5BjIate2TZhnnm4t8jgr5aC+/35YmDhpcgxatmnTJrRu3bqoQ+/apfhyDUWtsJaZhg0bFrJlI2qZtUV+RBB34MCB8djOOeecGjOIyXb/4osvYiY0Qee6Li5QUxpbajoX40tYhHrW/BtQzPrrOhnUoybATT1rmwIKKKDA9AJe8p/exCkKKKCAAgoooIACCihQgQIEufghcDlm7LgwfvyE0KFD+wqUKP9D5txxDqknnM5r+R9V+R3BkCFDwtNPPx1LWJDBvNpqq+UOggcQvvDCC/F3MokXXXTR3Gf5b6i/zIMOi20EovkptvE3QkmPxmrUoK5PHerG2q7rUUABBcpFwIB0uZwp91MBBRRQQAEFFFBAAQWaXIBgNNm0/AyvCpjN16N7k2/TDTS+AOcuncdiM6Mbfy9cI5nH99xzTyxfccYZZ4SllloqlrCgpMYbb7wR70hAae21164z61lNBRRQQIGWI2DJjpZzLj0SBRRQQAEFFFBAAQUUmEEBbtnnh4ehTZgwPnSsyrCdd965Z3CtLl5Kge+++yHWAG/fvkPgYXIEpOsTlLZkR+Oereeffz7WkB47dux0KyYzmYcR9u/fv17naLoVOUEBBRRQoKwEDEiX1elyZxVQQAEFFFBAAQUUUKApBcjo5Ida0iko3a6qXEC3bnPG8g9NuW3XPWMC46seYjhs2I9VdaMnVdWNnhaMJku6viU7DEjP2HkotPSYMWNi6Y7PP/881mqmrvPCCy8cFl988fhaaBmnKaCAAgq0XAED0i333HpkCiiggAIKKKCAAgoo0AABAtLpAYc8TG3ixAkxOD1rp05VdWE7hY4dZ6nKvLX6YQNoG32RiRMnhXHjxoZRo8aE0VVBTzKi27VrH6g5TDCazGgC0vVpBqTro+W8CiiggAIK1F/Ab1H1N3MJBRRQQAEFFFBAAQUUaMECBDBTiYeUXdu6dZswfsLEMOaHH6uC1ZOrfqZWCZBN3YIhmvGhTYsxc574mVbzu0OHjjEQTTA6lemobzC6GR+yu6aAAgoooECLETAg3WJOpQeigAIKKKCAAgoooIACjSWQgtIpIE22LWU8Uo1psqhj+/XVuHRjyde+nlyu869Zz+k8EYBOGdEpK9pgdO2WfqqAAgoooMDMEjAgPbPk3a4CCiiggAIKKKCAAgo0a4EU0EzZtrymGtPseC4o3ayPouXuXDo/vPLD+aGl31vukXtkCiiggAIKlLeAAenyPn/uvQIKKKCAAgoooIACCjShQApuEnwmA9cgdBNiz8CqOU+09DoDq3JRBRRQQAEFFGhiAQPSTQzs6hVQQAEFFFBAAQUUUKD8BVKgM70amG4e5zSdj+axN+6FAgoooIACChQjYEC6GCXnUUABBRRQQAEFFFBAAQUyAgZCMxi+VUABBRRQQAEF6iEwrchWPRZwVgUUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFGiJgQLohai6jgAIKKKCAAgoooIACCiiggAIKKKCAAgooUG8BA9L1JnMBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAgYYIGJBuiJrLKKCAAgoooIACCiiggAIKKKCAAgoooIACCtRbwIB0vclcQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUKAhAgakG6LmMgoooIACCiiggAIKKKCAAgoooIACCiiggAL1FjAgXW8yF1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRoiIAB6YaouYwCCiiggAIKKKCAAgoooIACCiiggAIKKKBAvQUMSNebzAUUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFGiJgQLohai6jgAIKKKCAAgoooIACCiiggAIKKKCAAgooUG8BA9L1JnMBBRRQQAEFFFBAAQUUUEABBRRQQAEFFFBAgYYIGJBuiJrLKKCAAgoooIACCiiggAIKKKCAAgoooIACCtRbwIB0vclcQAEFFFBAAQUUUEABBRRQQAEFFFBAAQUUUKAhAgakG6LmMgoooIACCiiggAIKKKCAAgoooIACCiiggAL1FjAgXW8yF1BAAQUUUEABBRRQQAEFFFBAAQUUUEABBRRoiIAB6YaouYwCCiiggAIKKKCAAgoooIACCiiggAIKKKBAvQUMSNebzAUUUEABBRRQQAEFFFBAAQUUUEABBRRQQAEFGiLQtiELuYwCCiiggAIKKKCAAgoooIACCrRMgaFDh4YhQ4aEkSNHhrnnnjsss8wyoVu3bi3zYD0qBRRQQIGSC5ghXXJyN6iAAgoooIACCiiggAIKKKBA8xR47rnnwg033BBef/31MGLEiDBw4MBw5ZVXhi+++CLuMNP+/e9/h6effrroA3jggQfiMhMnTix6GWdUQAEFFGi5Ai0iQ3rq1Kl5Z4jfW4XA9FZVr5nWKu/3zEe+VUABBRRQQAEFFFBAAQUUUKBiBaZMmRIISM8555xhv/32C23atAnff/99uPzyy8PLL78cevToEb777rswduzYGKz+9ttvQ/fu3XNeo0ePDsOGDYvLzz777HE6AWwyrVmG+Vl3x44d43pnnXXW0Llz5zjfL7/8EkaNGhUzstu2nRaqmDBhQvjhhx9Cp06dwhxzzJHbjm8UUEABBcpboGwD0r8FoaeG1q1bhdZVgebWbaoSvqcLTjNpapgyhZ9Q9TOlKkbdKv6U96lz7xVQQAEFFFBAAQUUUEABBRRoPAHGyzQCwpMnT44B6XnmmSccddRRcTrB5dtuuy2+f/vtt8N7770XjjnmmDBp0qRw4403hs8++yx+xph7nXXWCRtssEF44oknwscffxynX3PNNWGjjTYKvXv3DldccUVYbbXVwqabbho/I+D9/PPPh/333z+WB2Hd9957byAoTSOQveuuu+YC2HGi/1FAAQUUKEuBsivZQXB5WjB6alXnGEL7dm1C26pANEHpQsFozgqdYZuqedq1a101f9W8VbPS0f4W1C7Lc+dOK6CAAgoooIACCiiggAIKKNBoAgSiV1111Zi9fMEFF8SAMIFhxtR8Ntdcc4Xdd989bm+llVYKBx10UHz/7rvvBjKc+/XrFw477LDQs2fP8Oyzz8aM5y233DIsscQScb4DDjggrLLKKkXt7+OPPx4zo1kfy5FVPXjw4KKWdSYFFFBAgeYtUFYZ0ikY3boqjN6ubVU0ugFtWkdalSFdFZCeMnla9jTTbAoooIACCiiggAIKKKCAAgpUukCfPn3CYostFl544YXw/vvvh7feeit06dIlBpvJlqbMBq1Dhw4hleVYbrnlAj/Dhw8PX375ZcyYZp4ff/wxLLTQQlXJYe34NWY3837MmDHx99r+w7op8cH2e/XqFfbaa6/aZvczBRRQQIEyEiibgHQMRlcFkdu2bR2znWfUuE1VVJsKHxMmTo7lPFoT5bYpoIACCiiggAIKKKCAAgooUOECCyywQOjbt28s2zFo0KBw//33h0cffTTssssuBWUoyXHffffFjGiyqKk9PaNtq622Ck899VQYMGBALPvRrVu3sNlmm8Xg9Iyu2+UVUEABBWauQFlEYadlRk+puqraplGC0VlySn60akV96Wm1srKf+V4BBRRQQAEFFFBAAQUUUECBShH49NNPw8UXXxxefPHFeMgElpdffvmYFc3DBbMtWwKTOtEkeR16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YJgpZNufHheLGKaHTPvS4+B3tmtk25+eRqbrZNqXfh5/kwAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkICfCdBC2s+1VwF5twsXwmc0LKVhGQ0x2u6fr4h24UL4bYalNKyWIQjb/fOdi2N28ULruxmCsN2X61x7jcW4dq688TgJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJlCuBKp2uldEB3dDwWM4841R84vG4RCIR6R8al7NPPyHneYxAAiRQPgQeffJZttsSVgd5lxB22qXAfkl7k9TX16vfzHDgXXak4eFPEiABEiABEiCBWQLtbc0lY9HX1yddXV0lux4vRAIkQAIkQALlQIAuO8qhFpgHEiABEiABEiABEiABEiABEiABEiABEiABEiABEggAAQrSAahkFpEESIAESIAESIAESIAESIAESIAESIAESIAESIAEyoEABelyqAXmgQRIgARIgARIgARIgARIgARIgARIgARIgARIgAQCQICLGgagkllEEiABEiABEiABEiABEiCBxScQiUzK6OiIRCYnZWoqsagZqqkJSX1Dg7S0tOr6Cg155aXSypMXBJ5EAiRAAiRAAiTgmQAFac/IeAIJkAAJkAAJkAAJkAAJkAAJeCMwMNAnE+Pj0tbWLh0dSyQUWtxXsUQiIZMT49LX2yONTU3S2eltYb1KK4+32mRsEiABEiABEiCBQggs7l9BheSc51YMgRvv/Kncdt/d0jc0KF3tHXL1JZfJtVde5ap8hZyLC3z1pu/JXdseNNe64twL5S2veb2r6yLSYl7bdSYZkQRIgARIgARIgARIYNEJQLxNxOOyes06qaqqWvT8IAMQxFta26RZLaR7e44I8uhWlK608pRFhTATJEACJEACJBAgAjUf05CpvJFoLNPujPump6fFjLBH4rJy+ZKMcbiTBDIRgKh73e03y0QkYg7j+/FdOySsfyCfsnFzplNS+wo5F4lAjIYQntDpkvg8u3+PDI+Nynknn5a6RraNxbx2tjzlu/9wdz/bbb7w8jiPvPOAVqRTwL6xvta8gNfU1BhBoFxEgSIVkcmQAAmQAAmUIQG4tRgeGpIVK1eXjRjtxIRnYWNTswz090ltXZ0+J8POw8dsV1p5jimg7qjXvxdKFSYmJqSxsbFUl+N1SIAESIAESKAsCHBRw7KohuBmAoJwppBtvzNutjjZ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\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "3", - "metadata": {}, - "source": [ - "## Similarity Search \n", - "\n", - "First, lets open the vector index." - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "id": "4", - "metadata": {}, - "outputs": [], - "source": [ - "index = object_index.ObjectIndex(\n", - " uri=index_uri,\n", - " config=config,\n", - " memory_budget=1_000_000,\n", - " load_metadata_in_memory=False,\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "5", - "metadata": {}, - "source": [ - "Load the **pbmc3k** cell sample consiting of 3k individual cells." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "id": "6", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "AnnData object with n_obs × n_vars = 2700 × 32738\n", - " var: 'gene_ids', 'feature_id'" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def get_pbmc3k():\n", - " adata = sc.datasets.pbmc3k()\n", - " adata.var[\"feature_id\"] = adata.var[\"gene_ids\"]\n", - " return adata\n", - "\n", - "\n", - "adata = get_pbmc3k()\n", - "adata" - ] - }, - { - "cell_type": "markdown", - "id": "7", - "metadata": {}, - "source": [ - "## Sample reference mapping \n", - "\n", - "Query Census to retrieve the *k* most similar cells for each of the sample cells. \n", - "\n", - "This is using the TileDB-Vector-Search object level query interface to:\n", - "- Compute sample cell embeddings.\n", - "- Retrieve similar cell ids from the vector search index.\n", - "- Fetch observations of the similar cell ids from Census." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "id": "8", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n", - "CPU times: user 26.9 s, sys: 11.8 s, total: 38.7 s\n", - "Wall time: 53.5 s\n" - ] - } - ], - "source": [ - "%%time\n", - "distances, neighbour_ids, neighbour_obs = index.query(\n", - " {\"anndata\": adata}, k=10, nprobe=1, return_objects=False\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "9", - "metadata": {}, - "source": [ - "Here are the results for a random cell" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "id": "10", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
    \n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
    soma_joinidcell_typetissuedisease
    021651228CD8-positive, alpha-beta memory T cellbloodCOVID-19
    135014199effector memory CD8-positive, alpha-beta T cellbloodnormal
    244414446CD8-positive, alpha-beta T cellbloodCOVID-19
    321680805CD8-positive, alpha-beta memory T cellbloodCOVID-19
    458301278CD8-positive, alpha-beta T celllunglung adenocarcinoma
    555062865CD8-positive, alpha-beta T celllunglung adenocarcinoma
    635524070effector memory CD4-positive, alpha-beta T cellbloodnormal
    711498231CD8-positive, alpha-beta memory T cellbloodCOVID-19
    850479431effector memory CD4-positive, alpha-beta T cellbloodnormal
    940312561CD4-positive, alpha-beta T cellbloodCOVID-19
    \n", - "
    " - ], - "text/plain": [ - " soma_joinid cell_type tissue \\\n", - "0 21651228 CD8-positive, alpha-beta memory T cell blood \n", - "1 35014199 effector memory CD8-positive, alpha-beta T cell blood \n", - "2 44414446 CD8-positive, alpha-beta T cell blood \n", - "3 21680805 CD8-positive, alpha-beta memory T cell blood \n", - "4 58301278 CD8-positive, alpha-beta T cell lung \n", - "5 55062865 CD8-positive, alpha-beta T cell lung \n", - "6 35524070 effector memory CD4-positive, alpha-beta T cell blood \n", - "7 11498231 CD8-positive, alpha-beta memory T cell blood \n", - "8 50479431 effector memory CD4-positive, alpha-beta T cell blood \n", - "9 40312561 CD4-positive, alpha-beta T cell blood \n", - "\n", - " disease \n", - "0 COVID-19 \n", - "1 normal \n", - "2 COVID-19 \n", - "3 COVID-19 \n", - "4 lung adenocarcinoma \n", - "5 lung adenocarcinoma \n", - "6 normal \n", - "7 COVID-19 \n", - "8 normal \n", - "9 COVID-19 " - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def tiledb_to_pandas(obs, cell_id):\n", - " new_obs = {}\n", - " column_names = [\"soma_joinid\", \"cell_type\", \"tissue\", \"disease\"]\n", - " for column_name in column_names:\n", - " new_obs[column_name] = obs[column_name][cell_id]\n", - " return pd.DataFrame(data=new_obs)\n", - "\n", - "\n", - "tiledb_to_pandas(neighbour_obs, 42)" - ] - }, - { - "cell_type": "markdown", - "id": "11", - "metadata": {}, - "source": [ - "### Predict cell types\n", - "\n", - "Use the similar cell annotations to predict each cell type using a majority vote." - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "id": "12", - "metadata": {}, - "outputs": [], - "source": [ - "cell_predictions = []\n", - "for idx in range(neighbour_obs[\"cell_type\"].shape[0]):\n", - " annotations, counts = np.unique(neighbour_obs[\"cell_type\"][idx], return_counts=True)\n", - " annotation = annotations[np.argsort(-counts)][0]\n", - " cell_predictions.append(annotation)" - ] - }, - { - "cell_type": "markdown", - "id": "13", - "metadata": {}, - "source": [ - "Display the cell annotated types using a UMAP plot based on the scVI embeddings and the predicted cell_types." - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "id": "14", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n" - ] - }, - { - "data": { - "image/png": "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Hz+epePY2trSrVs3hg0bRlBQEGfPnsXPzw8Tk5f/WclYPZiam5sbnTt3pmvXrmzYsIHLly+ze/du1qxZYzTOzML37duXe/fu0bZtW44ePcoff/zBjh076Nq1a6aN0kL815hnMgrIy4Z7nfr06cO1a9fo378/58+fZ+PGjYwfP54hQ4ZkuXzKSnk+fvx4Vq5cyfjx4wkPD+fMmTPMmDHDIJ7u3buza9cutm3blmbYVzc3N06fPk1ERAR3797l+fPnct8thBApSEOlEEKI1yYi+ip+i6Zx46O70BloDqfWQMvPoPNo2P0AWheHMQWSph+sdwU6j4TAxed49uN0rq9syL1Ti/juTKrGg59Bp9dxy3D0FhIS4V7Mm8mbyEaeQMZteJD/RbhsVqRIEU6cOEHt2rX57LPPeO+99/jwww8JCgpi3rx5BmHHjRuHs7MzxYsXp2PHjjx8+JCgoCBGjBiRLWkpXrw4LVq0oFGjRtSvX5/33nuP77//Xts+YMAAPvvsMz777DPKli1LYGAgmzZtokSJEkDSD4jTp0+nUqVKVK5cmcjISLZu3Wr0C7qZmRnffPMN8+fPx8XFhWbNmqWbrjp16pA7d24iIiJo166dwTZfX182b97Mzp07qVy5MlWrVuXrr7+mcOHCWhg/Pz98fHzSjb937960aNGC1q1b88EHHxAdHW3QuzI9nTp14unTp1SpUoW+ffvSv39/evbsmel+yZo1a8bgwYPp168fnp6eHDx4kLFjx2Zp37p161KiRAlq1apFq1ataNKkCRMmTNC2T548mXHjxvHll1/i4eGBr68vv/76q9ZwXaBAASZOnMjnn39O/vz5tUbOVatWERISwnvvvcfgwYP56quvspyflzF27Fg+++wzxo0bh4eHB61bt9bm6LG2tmbv3r0UKlSIFi1a4OHhQdeuXXn69Kk86S3EP4S7eyly5cp4uOrcuXPj7l4q24+dWfmyfft27t27R+XKlfnkk0+oW7cu//d///fSx2nZsiXR0dE8efIkzfDt3bt358cffyQgIICyZcvi7e1NQECAVgZnRbVq1ejduzetW7cmb968aX6MhqRhAzds2ECuXLmoVasW9erVo2jRoqxevTrLx8must/f35+CBQvi7e1NixYt6Nmzp8EDUjqdjq1bt1KrVi26du2Ku7s7bdq0ITIy8qUaib/66itq1apF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", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "adata = get_pbmc3k()\n", - "adata.obsm[\"scvi\"] = index.embedding.embed({\"anndata\": adata}, None)\n", - "adata.obs[\"predicted_cell_type\"] = cell_predictions\n", - "\n", - "sc.pp.neighbors(adata, n_neighbors=15, use_rep=\"scvi\")\n", - "sc.tl.umap(adata)\n", - "sc.tl.leiden(adata)\n", - "sc.pl.umap(adata, color=\"predicted_cell_type\")" - ] - }, - { - "cell_type": "markdown", - "id": "15", - "metadata": {}, - "source": [ - "You can reduce the `cell_type` label noise by annotating the leiden clusters by popular vote, whereby each cluster gets assigned the most common predicted cell type from the previous step." - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "id": "16", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA5kAAAGtCAYAAACcIrC0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3wUxfvA8c/V9F5IQkISeu8dpIqAUhQRGyp2QH72roCgfm0gYu8VGxYsICBVeu+9JpQU0nu5sr8/JrnkcpeCAqI+79crcrs7Ozu7Fzmem5lndJqmaQghhBBCCCGEEOeA/u9ugBBCCCGEEEKIfw8JMoUQQgghhBBCnDMSZAohhBBCCCGEOGckyBRCCCGEEEIIcc5IkCmEEEIIIYQQ4pyRIFMIIYQQQgghxDkjQaYQQgghhBBCiHNGgkwhhBBCCCGEEOeMBJlCCCGEEEIIIc4ZCTLFP05CQgI6nY5PP/3Use+ZZ55Bp9OddV1fffUVr7322rlrXCVxcXGMGzfuvNR9sVq5ciU6nY6VK1c69p3Ne/Nnn1lhYSHPPPOM03XPFXf3dKFVfS7u/h+ozfl8RkIIIYQQlUmQKf4V7rjjDtavX3/W553PIFMof/a9ORuFhYVMmzZNAqgayDMSQgghxIVi/LsbIP5bioqK8PLyOuf1RkdHEx0dfc7rFX+dvDdCCCGEEP8t0pMpzlr58Mft27czatQo/P39CQgIYOzYsaSlpTnKxcXFMWzYMH788Uc6dOiAp6cn06ZNAyAlJYW7776b6OhozGYz8fHxTJs2DavV6nStpKQkxowZg5+fHwEBAVx77bWkpKRU26aqvvrqK3r06IGvry++vr60b9+ejz76CIB+/fqxYMECEhMT0el0jp9ypaWlPPfcczRv3hwPDw/CwsK49dZbne4RwGKx8OijjxIREYG3tze9e/dm06ZNf+rZ2u123njjDdq3b4+XlxeBgYF0796dX375xanMyy+/7GhXeHg4N998M6dOnXKqq1+/frRu3ZrNmzdzySWX4O3tTcOGDXnxxRex2+1O9T333HM0a9bMcc22bdsye/Zsp/rWrFnDwIED8fPzw9vbm549e7JgwYJa78nde1PXZ5aWlsbEiRNp2bIlvr6+hIeHM2DAAFavXu0ok5CQQFhYGADTpk1zvI+Vh5cePnyYG264gfDwcDw8PGjRogVvvfWWy/UOHDjAkCFD8Pb2JjQ0lPHjx5OXl1frPbpz+vRp7rrrLmJiYjCbzURFRTF69GhSU1MdZXJzc3n44YeJj4/HbDZTv3597r//fgoKCv7UNatT0zNavXo1Op2Or7/+2uW8zz//HJ1Ox+bNmwEYN24cvr6+7N27l4EDB+Lj40NYWBiTJk2isLDQ6VxN03j77bcdv8tBQUGMHj2aY8eOndN7E0IIIcTFR3oyxZ921VVXMWbMGMaPH8/evXuZPHky+/btY+PGjZhMJgC2bdvG/v37efrpp4mPj8fHx4eUlBS6du2KXq9nypQpNGrUiPXr1/Pcc8+RkJDAJ598Aqhez0svvZSkpCReeOEFmjZtyoIFC7j22mvr1L4pU6bw7LPPMmrUKB566CECAgLYs2cPiYmJALz99tvcddddHD16lHnz5jmda7fbGTlyJKtXr+bRRx+lZ8+eJCYmMnXqVPr168eWLVscPbJ33nknn3/+OQ8//DCDBg1iz549jBo16k8FJ+PGjWPOnDncfvvtTJ8+HbPZzLZt20hISHCUmTBhAu+//z6TJk1i2LBhJCQkMHnyZFauXMm2bdsIDQ11lE1JSeHGG2/koYceYurUqcybN48nnniCqKgobr75ZgBefvllnnnmGZ5++mn69OmDxWLhwIEDZGdnO+r5448/GDRoEG3btuWjjz7Cw8ODt99+m+HDh/P111/X+T0pV9dnlpmZCcDUqVOJiIggPz+fefPm0a9fP5YtW0a/fv2IjIxk0aJFDBkyhNtvv5077rgDwBFU7du3j549e9KgQQNmzpxJREQEixcv5t577yU9PZ2pU6cCkJqaSt++fTGZTLz99tvUq1ePL7/8kkmTJp3VvYEKMLt06YLFYuHJJ5+kbdu2ZGRksHjxYrKysqhXrx6FhYX07duXU6dOOcrs3buXKVOmsHv3bpYuXfqn5hm7U9MzatSoER06dOCtt97i+uuvdzrvzTffpEuXLnTp0sWxz2KxcPnll3P33Xfz+OOPs27dOp577jkSExP59ddfHeXuvvtuPv30U+69915eeuklMjMzmT59Oj179mTnzp3Uq1fvnNybEEIIIS5CmhBnaerUqRqgPfDAA077v/zySw3Q5syZo2mapsXGxmoGg0E7ePCgU7m7775b8/X11RITE532z5gxQwO0vXv3apqmae+8844GaD///LNTuTvvvFMDtE8++cSlTeWOHTumGQwG7cYbb6zxXq644gotNjbWZf/XX3+tAdoPP/zgtH/z5s0aoL399tuapmna/v37a3wWt9xyS43Xr2zVqlUaoD311FPVlim/3sSJE532b9y4UQO0J5980rGvb9++GqBt3LjRqWzLli21wYMHO7aHDRumtW/fvsa2de/eXQsPD9fy8vIc+6xWq9a6dWstOjpas9vtmqZp2ooVKzRAW7FihaNc1ffmrzwzq9WqWSwWbeDAgdpVV13l2J+WlqYB2tSpU13OGTx4sBYdHa3l5OQ47Z80aZLm6empZWZmapqmaY899pim0+m0HTt2OJUbNGiQyz3V5rbbbtNMJpO2b9++asu88MILml6v1zZv3uy0//vvv9cA7bfffnPsi42NdXoux48fd/l/oDY1PaNPPvlEA7Tt27c79m3atEkDtM8++8yx75ZbbtEAbfbs2U7nP//88xqgrVmzRtM0TVu/fr0GaDNnznQqd/LkSc3Ly0t79NFH69xuIYQQQvzzyHBZ8afdeOONTttjxozBaDSyYsUKx762bdvStGlTp3Lz58+nf//+REVFYbVaHT9Dhw4FVK8ZwIoVK/Dz82PEiBFO599www21tm3JkiXYbDbuueeeP3Vv8+fPJzAwkOHDhzu1sX379kRERDiSp5Tfa3XP4mwsXLgQoMY2l1+vagbWrl270qJFC5YtW+a0PyIigq5duzrta9u2raM3t/zcnTt3MnHiRBYvXkxubq5T+YKCAjZu3Mjo0aPx9fV17DcYDNx0002cOnWKgwcP1vk+z/aZvfvuu3Ts2BFPT0+MRiMmk4lly5axf//+Wq9VXFzMsmXLuOqqq/D29nZ6Ly+//HKKi4vZsGGDo12tWrWiXbt2TnXU5fetqoULF9K/f39atGhRbZn58+fTunVr2rdv79SuwYMHX/Bsttdffz3h4eFOQ4jfeOMNwsLC3PZSV33vyp9R+Xs7f/58dDodY8eOdbq3iIgI2rVrJ8mHhBBCiH85CTLFnxYREeG0bTQaCQkJISMjw7EvMjLS5bzU1FR+/fVXTCaT00+rVq0ASE9PByAjI8PtkLqq13WnfN7kn004k5qaSnZ2Nmaz2aWdKSkpTm1016byZ3E20tLSMBgMNd5f+fXcPdeoqCinZw+4bYOHhwdFRUWO7SeeeIIZM2awYcMGhg4dSkhICAMHDmTLli0AZGVloWlatdes3K66OJtn9uqrrzJhwgS6devGDz/8wIYNG9i8eTNDhgxxuoearmW1WnnjjTdc3sfLL78ccP59c/fs6/L7VlVaWlqtv3upqans2rXLpV1+fn5omuZo14Xg4eHB3XffzVdffUV2djZpaWnMnTuXO+64Aw8PD6ey7t6n8mdU/t6mpqaiaRr16tVzub8NGzZc0HsTQgghxIUnczLFn5aSkkL9+vUd21arlYyMDKd/gLqbUxYaGkrbtm15/vnn3dZbHriEhIS4TQbjLvFPVeXz8U6dOkVMTEyt5d21MSQkhEWLFrk97ufn52hjeZvcPYuzERYWhs1mIyUlxW1AV/l6ycnJLkFMUlKS03zMujIajTz44IM8+OCDZGdns3TpUp588kkGDx7MyZMnCQoKQq/Xk5yc7HJuUlISwFld92ye2Zw5c+jXrx/vvPOO0/66zncNCgpy9LhW10McHx/vaJe73626/L5VFRYW5pKIqarQ0FC8vLz4+OOPqz1+IU2YMIEXX3yRjz/+mOLiYqxWK+PHj3cp5+7/8/JnVL4vNDQUnU7H6tWrXYJUwO0+IYQQQvx7SE+m+NO+/PJLp+25c+ditVrp169fjecNGzaMPXv20KhRIzp37uzyUx5k9u/fn7y8PKfMqqAyxtbmsssuw2AwuAQnVVXt1avcxoyMDGw2m9s2NmvWDMBxr9U9i7NRPly4pjYPGDAAUMFXZZs3b2b//v0MHDjwrK5ZVWBgIKNHj+aee+4hMzOThIQEfHx86NatGz/++KPTs7Lb7cyZM4fo6GiXIdE1OZtnptPpXAKSXbt2uay7WV6m6nvp7e1N//792b59O23btnX7XpYHRv3792fv3r3s3LnTqY66/L5VNXToUFasWFHjMOJhw4Zx9OhRQkJC3LYrLi7urK9bk+qeUbnIyEiuueYa3n77bd59912GDx9OgwYN3Jat+t6VP6Py93bYsGFomsbp06fd3lubNm3O0V0JIYQQ4mIkPZniT/vxxx8xGo0MGjTIkV22Xbt2jBkzpsbzpk+fzpIlS+jZsyf33nsvzZo1o7i4mISEBH777TfeffddoqOjufnmm5k1axY333wzzz//PE2aNOG3335j8eLFtbYtLi6OJ598kmeffZaioiKuv/56AgIC2LdvH+np6Y6lVNq0acOPP/7IO++8Q6dOndDr9XTu3JnrrruOL7/8kssvv5z77ruPrl27YjKZOHXqFCtWrGDkyJFcddVVtGjRgrFjx/Laa69hMpm49NJL2bNnDzNmzMDf3/+snucll1zCTTfdxHPPPUdqairDhg3Dw8OD7du34+3tzf/93//RrFkz7rrrLt544w30ej1Dhw51ZJeNiYnhgQceOKtrAgwfPpzWrVvTuXNnwsLCSExM5LXXXiM2NpYmTZoA8MILLzBo0CD69+/Pww8/jNls5u2332bPnj18/fXXZ5UF9Wye2bBhw3j22WeZOnUqffv25eDBg0yfPp34+HingNTPz4/Y2Fh+/vlnBg4cSHBwMKGhocTFxTF79mx69+7NJZdcwoQJE4iLiyMvL48jR47w66+/snz5cgDuv/9+Pv74Y6644gqee+45R3bZAwcOnPUznT59OgsXLqRPnz48+eSTtGnThuzsbBYtWsSDDz5I8+bNuf/++/nhhx/o06cPDzzwAG3btsVut3PixAl+//13HnroIbp163bW165OTc+o3H333ee4ZnmW56rMZjMzZ84kPz+fLl26OLLLDh06lN69ewPQq1cv7rrrLm699Va2bNlCnz598PHxITk5mTVr1tCmTRsmTJhwzu5NCCGEEBeZvzfvkPgnKs8WunXrVm348OGar6+v5ufnp11//fVaamqqo1xsbKx2xRVXuK0jLS1Nu/fee7X4+HjNZDJpwcHBWqdOnbSnnnpKy8/Pd5Q7deqUdvXVVzuucfXVV2vr1q2rNbtsuc8//1zr0qWL5unpqfn6+modOnRwOi8zM1MbPXq0FhgYqOl0Oqc6LBaLNmPGDK1du3aO85s3b67dfffd2uHDhx3lSkpKtIceekgLDw/XPD09te7du2vr1693yQhaFzabTZs1a5bWunVrzWw2awEBAVqPHj20X3/91anMSy+9pDVt2lQzmUxaaGioNnbsWO3kyZNOdfXt21dr1aqVyzVuueUWp4y6M2fO1Hr27KmFhoZqZrNZa9CggXb77bdrCQkJTuetXr1aGzBggObj46N5eXlp3bt3d2qXptUtu+zZPLOSkhLt4Ycf1urXr695enpqHTt21H766SeXe9A0TVu6dKnWoUMHzcPDwyVL7fHjx7XbbrtNq1+/vmYymbSwsDCtZ8+e2nPPPedUx759+7RBgwZpnp6eWnBwsHb77bdrP//881lnl9U0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cOxY7VmMyxUXF/PZZ58RHR0NwBtvvMEVV1zBzJkziYiIYMaMGTz22GNcd51KePXSSy+xYsUKXnvtNd566y1OnDhBkyZN6N27NzqdjtjY6rMih4WFARASElLtMNrg4GCGDBnCV199xcCBar3Y7777juDgYMf2888/z+OPP+7o2WzYsCHPPvssjz76KFOnTq3TfZtMJqcALT4+nnXr1jF37lzGjHE/HB8gJiaGWbNmodPpaNasGbt372bWrFnceeedjjKXX345EydOBFSv5axZs1i5cqXjPX/66acdZePi4njooYf49ttvefTRR2tss9ls5uOPP8bb25tWrVoxffp0HnnkEZ599lmKiop49dVXWb58OT169HA8lzVr1vDee+/Rt29fgoODAQgPD3f6MuPqq692us5HH31EeHg4+/bto3Xrc5PwMS8vj9mzZ/Pmm2863rdGjRrRu3dvAL755hv0ej0ffvghOp36Uu6TTz4hMDCQlStXctlll52Tdoh/t/9UT2Z+VolLgOnla6L/TS0Ia+AHqPmYNdHp1NxJg0FP0671aNghDJNHzR948e1C6Xx5HDc/15PifItLgAkQ2zqE8W/0JyCsYnhWDWuEAxAQ7kXS4awaA8zKSgqtrPjiAHvX1G29OSHEv5PZYOa+jvfRMLBhtWXs2LHYLdWue9ktqhvLrllGfd/6bo8Pazis2rqjfKO4LO4yHuvyWLXnN/BrQKGlsIa7UHToGN5oOABNgprw8ZCPeaH3C3St19WlrJfRi6ZBTXmw84OEe4UDEOQRxMNd6jacUZxHietcezCdaJB7WpU7h8qHVpb/Q/qv1FNexxNPPEGLFi0YO3ZsteV9fX0dP+PHV2R/btCggSPABOjRowd2u52DBw+Sm5tLUlISvXr1cqqrV69e7N+/H1BDXXfs2EGzZs249957+f333//SfQHceOON/PDDD5SUqC98vvzyS6677joMBvVvn61btzJ9+nSne7rzzjtJTk6msLD2/4fLvfvuu3Tu3JmwsDB8fX354IMPOHHiRI3ndO/e3em969GjB4cPH8Zmq/h7q23bto7X5UNJz5yp6Aj4/vvv6d27NxEREfj6+jJ58mTHdU+cOOF0X//7X8USTe3atcPbu2JkR48ePcjPz+fkyZPs27eP4uJiBg0a5HT+559/XuPQV4CjR49yww030LBhQ/z9/R3D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+fMolUoyMw0tDnK5nPT0dFatWkVSUhIymcwgKL+EkhtnalwOmmJQFvvr23JSi7BxsDTaRxAEugwNoeNLwUikwn1ZICUS3RhdhobUeF8REZHaxczdCgQwSv1aDpmrpUGdy/tCrTUaR5BJ0FZSXFObp6I4IQdpgH2FfUREHhRWNtVb0Khuv+oSGBiIQqFgz549Jt0yy3Po0CHatm3LW2+9pd9myhrZpEkTmjRpwocffkibNm1YuXIlrVu3BiAoKIigoCAmTpzISy+9xJIlS3juueeMxmjUqBF79uzh1VdfNWq7cuUKKSkpzJo1C29vnedTSQKhB01ISAiHDx/mlVde0W87evQoISHVf9aoX78+69atMxCbR48exdraGk9PT5ydnat8Xxo2bEjz5s1ZuHAhK1eu5McffzRoNzc3R602vOc1bdqUy5cvExAQUO25ioiI3B81smQmJCQwevRoVq1ahZubG88//zzr169/LF0wL168aODCUpHABJ2bh6naVTdv3mThwoV69w+VSsWWLVvw9/c36NekSRMAHD2USGWll9xcLsXO1VhglkUqkzyW11dERMQQwUwCZqXff6mLJS5jwrAI+meiTp+5ttxtQp1dpHezldiYY1HXsESRkVutREBmL8YjiTwc3APtqsw5oLTXlTOpTeRyOZMnT+b9999n+fLlREdHc/z4cRYtWmSyf0BAAKdPn2bHjh1cu3aNqVOncurUKX37rVu3+PDDDzl27Bi3b99m586dXLt2jZCQEPLz8xk7diz79+/n9u3bHDlyhFOnTlUozj755BNWrVrFJ598QlRUFBEREXz11VeArm65ubk5P/74Izdv3mTTpk36+McHzXvvvcfSpUv5v//7P65fv86cOXP4888/effdd6s9xltvvcWdO3cYN24cV65cYePGjXzyySdMmjQJiURS7fdl5MiRzJo1C7VabSTU/fz8OHjwIHFxcaSkpAAwefJkjh07xpgxYzh//jzXr19n06ZNjBs37p9fGBEREQNqJDLlcjlDhgxh7969REREEBISwvjx41GpVHz++efs2rXLaNXoUaWs24cpStw8LC0tadmyJZcvXzbZr8RFtoTi4mKGDBlCx44dqVu3Lj179qRPnz4A2Lla0uvNhrgH2OIZbMcz48KwtDGvhbMRERF51Mk9kQBl3F41GQWYe1vj9Ep9zMpkf1Xd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MGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIREREREZHJMGQSERERERGRyTBkEhERERERkckwZBIR3aPvEr/DqL2jMP3/piNDldHSzSEiIiJqUWYt3QAioofZobRD+Cj2I91xxqEM7PnbnhZsEREREVHLYk8mEdE9SMxP1DtOVaWitKq0hVpDRERE1PLYk0lEfxlarYid524gp7gCTwW6oa2LzT3XGeISonfczqEdrM2t77leIiIiooeVIIqieL8fqlKpoFAooFQqYWdnd78fT0R/UW9si8dP524AAGxkZtg2tQcECfDN8Wv4+UIWnOQyrBoViu6+jk2qd2fyTuy9uheOlo6YEzYH7nL35mg+UYvj9zcRETUGQyYR/SWUV2nQ4b39eucUVuZQllXpnXOUWyBu/hMAgJJKDWxkfw74iEvLx8HEW/BUWGHcY61hJr27GQfXckuwPyELGhEYHuoJLwf2fNLDgd/fRETUGBwuS0R/CRqNCKkAaGr9Wq1uwASA/JJKvLLpDC7cUCFLWQ5LcwmsLczQp50z/nc+C2ptdQU/nbuBXdN7QRAEgzoKSiohCIC9tYXBtXPpBRi5/hSqbjdkVfQVbJwUjn4BLiZ6pUREREQtiwv/ENEjr6xSg7d++l0vYDbkYGI2spTlAIDyKi3ySyqxOz5TFzAB4PeMQnx+5A+9+0oq1JgcGYsuS6MRuiQaKw9e1ruu1YqYvvmsLmACgEYrYmX0Fd1xUXkVMvJLob39LGVpFUor1U16vUREREQtiT2ZRPRIO/lHLl7ZFIeiCsOgJhEA7T1MGIhOvIXuvk7wc5FDZi5FxKe/ID2/THd9zeE/EBHsgQ7udiir1CAhU6kLr7XVNGF/wk28tu0cyqu06OKtgI+zDXaeuwGpRMCiYZ3wYo82d99YIiIiovuEczKJ6JHW/99HkJZnuKWIg7U51o7pgkxlOW4qy7AyOvmOddlZmkFV/mdYNZMIUGtF2FqaYWJPH3xWp2cTALa/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iYiIiJobQyYRUQuoOwx3zlMByFKW4fTVPAS42eLD54NbqGVERERE94Yhk4joASCXmWHd+G4t3QwiIiKie2Z8l24iIiIiIiKiu8CQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmY9YSDxVFEQCgUqla4vFERER0F2q+t2u+x4mIiIxpkZBZVFQEAPD29m6JxxMREdE9KCoqgkKhaOlmEBHRA0oQW+DXkVqtFpmZmbC1tYUgCPf78URERHQXRFFEUVERPD09IZFwxg0RERnXIiGTiIiIiIiIHk38NSQRERERERGZDEMmERERERERmQxDJhEREREREZkMQyYRERERERGZDEMm0V/QgAED8Nprrxmc37Vrl27F58jISAiCgI4dOxqU2759OwRBgI+Pj8G1srIyODg4wNHREWVlZQbXfXx8IAgCBEGAtbU1OnfujPXr1+uuZ2VlYezYsWjfvj0kEonRdhIRERHRg4shk4jqJZfLkZ2djVOnTumd37BhA1q3bm30nh07dqBz584IDAzETz/9ZLTMkiVLkJWVhfPnz2P48OGYNm0atm3bBgCoqKiAi4sL3n33XYSEhJj2BRERERFRs2PIJKJ6mZmZYezYsdiwYYPu3PXr13H06FGMHTvW6D3ffPMNxo8fj/Hjx+Obb74xWsbW1hbu7u7w9/fH+++/j3bt2mHXrl0Aqns6P/30U0yYMIGbvRMRERE9hBgyiahBU6ZMwbZt21BaWgqgehjtkCFD4ObmZlA2JSUFp06dwsiRIzFy5EicPHkSV69eveMzLC0tUVVVZfK2ExEREdH9x5BJRA0KDQ2Fn58ffvzxR4iiiMjISEyePNlo2Q0bNmDo0KG6OZlDhgzR6wWtS61WIzIyEhcuXMCgQYOa6yUQERER0X3EkElEdzR58mRs3LgRx44dQ3FxMSIiIgzKaDQaREVFYfz48bpz48ePR1RUFDQajV7Zt956CzY2NrCyssKMGTPw5ptv4pVXXmn210FEREREzc+spRtARPefnZ0dlEqlwfnCwkLY2dkZnB83bhzmzZuHRYsWYcKECTAzM/zRceDAAdy4cQOjRo3SO6/RaHDw4EEMHTpUd+7NN9/EpEmTYG1tDQ8PD92KtkRERET08GNPJtFfUIcOHXDmzBmD87GxsWjfvr3BeUdHRwwbNgzHjh2rd6jsN998g9GjRyM+Pl7vz7hx4wwWAHJ2doa/vz88PT0ZMImIiIgeMezJJPoLmj59Oj777DPMmDEDU6dOhZWVFaKjo/HNN99g06ZNRu+JjIzEF198AScnJ4NrOTk52LNnD3bv3o3OnTvrXZs4cSKefvpp5OTkwMXFpVHti4+PBwAUFxcjJycH8fHxsLCwQGBgYNNeKBERERHddwyZRH9BPj4+OH78ON5991089dRTKC8vR0BAACIjIzFixAij91hZWcHKysrotW+//RZyudzo4j0DBw6Era0tNm3ahDfeeKNR7evSpYvu73Fxcfj+++/Rpk0bpKamNup+IiIiImo5giiKYks3goiIiIiIiB4NnJNJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQmw5BJREREREREJsOQSURERERERCbDkElEREREREQm8//1F70jUSfpyQAAAABJRU5ErkJggg==", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "adata.obs[\"predicted_consolidated_cell_type\"] = \"\"\n", - "for leiden_cluster in adata.obs[\"leiden\"].drop_duplicates():\n", - " most_popular_type = (\n", - " adata.obs.loc[adata.obs[\"leiden\"] == leiden_cluster,]\n", - " .value_counts(\"predicted_cell_type\")\n", - " .index[0]\n", - " )\n", - " adata.obs.loc[\n", - " adata.obs[\"leiden\"] == leiden_cluster, \"predicted_consolidated_cell_type\"\n", - " ] = most_popular_type\n", - "sc.pl.umap(adata, color=\"predicted_consolidated_cell_type\")" - ] - }, - { - "cell_type": "markdown", - "id": "17", - "metadata": {}, - "source": [ - "## Cell interactive analysis \n", - "\n", - "Load the **pbmc3k** cell sample and pick a random cell of interest." - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "id": "18", - "metadata": {}, - "outputs": [], - "source": [ - "adata = get_pbmc3k()\n", - "cell_id = 42\n", - "cell_adata = adata[cell_id]" - ] - }, - { - "cell_type": "markdown", - "id": "19", - "metadata": {}, - "source": [ - "Fetch similar cells from Census" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "id": "20", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n", - "CPU times: user 6.85 s, sys: 3.37 s, total: 10.2 s\n", - "Wall time: 6.75 s\n" - ] - } - ], - "source": [ - "%%time\n", - "distances, neighbour_ids, neighbour_obs = index.query(\n", - " {\"anndata\": cell_adata}, k=100, nprobe=1, return_objects=False\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "21", - "metadata": {}, - "source": [ - "### Analyse the similar cells " - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "id": "22", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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5pdffrH3Wbx4scP349afE2OMWbVqlfntHwFfX18TFxd32/P+1uTJk42kHK/AqE9Mzeh1OV4AAKDwSUtLM5JMWlqaZT+nzTAfPXpU165dU8eOHeXj42N/LV26NMd/t4eHh9u/Llu2rOrWraukpKR8nzM0NNT+denSpeXr66tz585J+nXWdtu2bQ611KtXT5Jy1PO/+m0dlSpVkre3t4KDgx22ZdeVm6SkJLVu3dphW+vWrXXixAndvHkzz3UcOHBAb7zxhsM1Dx48WKmpqbp69ap69uypX375RcHBwRo8eLBWrVplX66RlJQkV1dXPfjgg/bjlStXLsf3xtXVVWFhYfb39erVU0BAgEOfoKAg+fr62t9XqVLF4fpPnTqlvn37Kjg4WH5+frrvvvskScnJyZKkY8eOKTQ0VJ6envZ9WrRokedxyDZq1CgNGjRIHTp0UExMjOX3ffz48UpLS7O/cltmAgAAigen3fSX/d/p69evV7Vq1RzaPDw87rj/b9ee5tWt/71us9nsdWRlZenxxx/Xn/70pxz7ValS5Y7HdnH59d8exhj7ttyWjdxah81ms6wrN8aYHNf/2/PmVVZWlqZOnaoePXrkaPP09FRgYKCOHTumLVu2aOvWrRoyZIjeeust7dix47bny6223L5Xv912p+t//PHHFRgYqMWLF6tq1arKyspSgwYNlJmZedtz3lqfi4tLjm23fn+mTJmivn37av369dqwYYMmT56s+Ph4Pfnkkznq9/DwyNPPKQAAKPqcFphDQkLk4eGh5ORktWvXzrLvnj17VKNGDUm/3mh2/Phx++zvrdzd3fM1y5qtadOmWrlypYKCguTqmv9hyX5iRmpqqpo0aSJJDjcAFqSQkBDt3LnTYduuXbtUp04dlSpVKs/Hadq0qY4dO6ZatWrdto+Xl5eeeOIJPfHEExo6dKjq1aunxMREhYSE6MaNG9q7d69atWolSbpw4YKOHz+u+vXr2/e/ceOG9u/fb5/xPXbsmH7++efbfv9udeHCBSUlJWnRokV66KGHJCnHtderV0/Lly9XRkaGPcTeerNehQoVdOnSJV25ckWlS5eWlPv3p06dOqpTp45GjhypPn36KDY2NtfADAAASg6nBWZfX1+NGTNGI0eOVFZWltq0aaP09HTt2rVLPj4+eu655+x933jjDZUrV06VKlXShAkTVL58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ZrPleXu27DabzWavY/HixXrwwQcd+pUqVeq25/3tcfJ63t+jX79+GjFihObPn6+PPvpIDzzwgBo1aiTp1zEsVaqUDhw4kKPW3z6Vw8vL6451eXh43NWbDQEAQOFRYtYw165dW15eXvr8889zbf/6669Vs2ZNTZgwQWFhYapdu3aOm70qVKig1NRUh20JCQn2r2vVqiU3Nzft2bPHvu3ixYs6fvy4/f2//vUvnT9/XjExMXrooYdUr149+w1/2dzd3SX9+oSGbNk3oCUnJ6tWrVoOr7zObIaEhCg5OVkpKSn2bUePHlVaWprq169v35acnKwff/zR/n737t1ycXFRnTp1VKlSJVWrVk3ff/99jjruu+++XM9bq1Ytubu7a+fOnfZt169f1/79+x3OWxC6d++ua9euaePGjfroo4/0zDPP2NuaNGmimzdv6ty5czlqr1y5coHWAQAAio8SM8Ps6emp6OhojRs3Tu7u7mrdurX++9//6siRIxo4cKBq1aql5ORkxcfHq3nz5lq/fr1WrVrlcIyHH35Yb731lpYuXarw8HAtW7ZM3333nX1JhI+PjwYOHKixY8eqXLlyqlSpkiZMmCAXl///75IaNWrI3d1d8+fP18svv6zvvvtO06ZNczhPzZo1ZbPZtG7dOnXp0kVeXl7y9fXVmDFjNHLkSGVlZalNmzZKT0/Xrl275OPjo+eee+6OY9ChQweFhoaqX79+mjdvnm7cuKEhQ4aoXbt2CgsLcxir5557TrNnz1Z6erqGDx+uXr162UPllClTNHz4cPn5+alz587KyMjQ/v37dfHiRYdlCtlKly6tV155RWPHjlXZsmVVo0YNzZo1S1evXtXAgQPz/k3Mg9KlS6tbt26aOHGikpKS1LdvX3tbnTp11K9fP/Xv319z5sxRkyZNdP78eX3xxRdq2LChunTpUqC1AACA4uF3zzBnZmbq2LFjunHjRkHWc1dNnDhRo0eP1qRJk1S/fn317t3bPrvbrVs3jRw5UsOGDVPjxo21a9cuTZw40WH/yMhITZw4UePGjVPz5s116dIl9e/f36HPW2+9pbZt2+qJJ55Qhw4d1KZNGzVr1szeXqFCBcXFxenvf/+7QkJCFBMTo9mzZzsco1q1apo6dapee+01VapUScOGDZMkTZs2TZMmTdLMmTNVv359RUZGau3atbed2b1V9iPYypQpo7Zt26pDhw4KDg7WihUrHPrVqlVLPXr0UJcuXdSpUyc1aNDA4bFxgwYN0gcffKC4uDg1bNhQ7dq1U1xcnGUdMTExeuqpp/Tss8+qadOmOnnypDZt2nRXPnSkX79+Onz4sB566CHVqFHDoS02Nlb9+/fX6NGjVbduXT3xxBPau3cv648BAMBt2UxeFt7+xtWrV/Xqq6/aHyF2/PhxBQcHa/jw4apatWqO5+ACJUF6err8/f0VGPWJXDy8c7SfienqhKoAAICV7N/faWlplg96yPcM8/jx43X48GFt375dnp6e9u0dOnTIMVMJAAAAFHX5XsO8evVqrVixQi1btnR4kkBISIhOnTpVoMUBAAAAzpbvGeb//ve/uX7y2ZUrVwr8EWEAAACAs+U7MGc/QSJbdkhevHixwwd2AAAAAMVBvpdkzJw5U48++qiOHj2qGzdu6J133tGRI0e0e/du7dix427UCAAAADhNvp+SIUmJiYmaPXu2Dhw4oKysLDVt2lTR0dFq2LDh3agRKPTyepctAAAoPPL6+/t3BWYAjgjMAAAUPXn9/Z3vJRnJycmW7bd+UAQAAABQlOU7MAcFBVk+DePmzZv/U0EAAABAYZLvwHzo0CGH99evX9ehQ4f09ttva/r06QVWGAAAAFAY5DswN2rUKMe2sLAwVa1aVW+99ZZ69OhRIIUBAAAAhUG+n8N8O3Xq1NG+ffsK6nAAAABAoZDvGeb09HSH98YYpaamasqUKapdu3aBFQYAAAAUBvkOzAEBATlu+jPGKDAwUPHx8QVWGAAAAFAY5Dswb9u2zeG9i4uLKlSooFq1asnVNd+HAwAAAAq1fCfcdu3a3Y06AAAAgEIp3zf9LVmyROvXr7e/HzdunAICAtSqVSv98MMPBVocAAAA4Gz5DswzZsyQl5eXJGn37t1asGCBZs2apfLly2vkyJEFXiAAAADgTPlekpGSkqJatWpJklavXq0//OEPevHFF9W6dWtFREQUdH0AAACAU+V7htnHx0cXLlyQJG3evFkdOnSQJHl6euqXX34p2OoAAAAAJ8v3DHPHjh01aNAgNWnSRMePH1fXrl0lSUeOHFFQUFBB1wcAAAA4Vb5nmP/85z8rPDxc//3vf7Vy5UqVK1dOknTgwAH16dOnwAsEAAAAnMlmjDHOLgIo6tLT0+Xv76+0tDT5+fk5uxwAAJAHef39ne8Z5o0bN2rnzp3293/+85/VuHFj9e3bVxcvXvx91QIAAACFVL4D89ixY5Weni5JSkxM1OjRo9WlSxd9//33GjVqVIEXCAAAADhTvm/6O336tEJCQiRJK1eu1GOPPaYZM2bo4MGD6tKlS4EXCAAAADhTvmeY3d3ddfXqVUnS1q1b1alTJ0lS2bJl7TPPAAAAQHGR7xnmNm3aaNSoUWrdurW++eYbrVixQpJ0/PhxVa9evcALBAAAAJwp34F5wYIFGjJkiD799FMtXLhQ1apVkyRt2LBBjz76aIEXCBQlDSZvkouHd772ORPT9S5VAwAACkK+A3ONGjW0bt26HNvnzp1bIAUBAAAAhUmeAnN6err92XR3WqfMM2gBAABQnOQpMJcpU0apqamqWLGiAgICZLPZcvQxxshms+nmzZsFXiQAAADgLHkKzF988YXKli0rSYqNjVVgYKBKlSrl0CcrK0vJyckFXyEAAADgRPn+aOxSpUrZZ5t/68KFC6pYsSIzzCiRsj9aMzDqE276AwCgiLhrH42dvfTiVpcvX5anp2d+D4cSJiIiQlFRUbm2DRgwQN27d//d+wMAANwNeX5KRvbHXttsNk2cOFHe3v9/Fu3mzZvau3evGjduXOAFouR45513lM//8AAAALjr8hyYDx06JOnXGebExES5u7vb29zd3dWoUSONGTOm4CtEieHv7+/sEgAAAHLI85KMbdu2adu2bXruuee0YcMG+/tt27Zp06ZNWrRokWrXrn03a0UxtHHjRvn7+2vp0qU5lmRcuXJF/fv3l4+Pj6pUqaI5c+bk2D8oKEgzZszQCy+8IF9fX9WoUUN/+ctfHPr8+9//Vu/evVWmTBmVK1dO3bp105kzZyRJX375pdzc3HT27FmHfUaPHq22bdsW+PUCAICiJ99rmGNjY3nWMgpEfHy8evXqpaVLl6p///452seOHatt27Zp1apV2rx5s7Zv364DBw7k6DdnzhyFhYXp0KFDGjJkiF555RX961//kiRdvXpV7du3l4+Pj7788kvt3LlTPj4+evTRR5WZmam2bdsqODhYH374of14N27c0LJly/T888/fvYsHAABFRr4DM1AQ3nvvPb388sv6xz/+oW7duuVov3z5sv76179q9uzZ6tixoxo2bKglS5bk+hSWLl26aMiQIapVq5aio6NVvnx5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", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = tiledb_to_pandas(neighbour_obs, 0).value_counts(\"tissue\").plot.barh()" - ] - }, - { - "cell_type": "markdown", - "id": "23", - "metadata": {}, - "source": [ - "### Refine similarity query\n", - "\n", - "Now you can fetch similar cells only from blood tissue" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "id": "24", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[34mINFO \u001b[0m Found \u001b[1;36m54.675\u001b[0m% reference vars in query data. \n", - "CPU times: user 17 s, sys: 10.6 s, total: 27.6 s\n", - "Wall time: 10.2 s\n" - ] - } - ], - "source": [ - "%%time\n", - "adata = get_pbmc3k()\n", - "cell_adata = adata[cell_id]\n", - "\n", - "\n", - "def tissue_filter_fn(row):\n", - " return row[\"tissue\"] == \"blood\"\n", - "\n", - "\n", - "distances, cells, neighbour_obs = index.query(\n", - " {\"anndata\": cell_adata},\n", - " metadata_df_filter_fn=tissue_filter_fn,\n", - " k=100,\n", - " nprobe=1,\n", - " return_objects=False,\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "25", - "metadata": {}, - "source": [ - "And analyse the similar cells disease histogram." - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "id": "26", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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AAA5yTa3C3geFC5cOLdLyJPu3LmjAgUK5HYZAAAAz71cnalftmyZKlasKHt7exUpUkQNGjTQjRs3tG3bNuXPn1/nz5+3at+/f3/VrVtXknTu3Dk1a9ZMbm5ucnR0VPny5bVu3TolJiaqfv36kiQ3NzeZTCZFRkZKksxmsyZOnCgfHx/Z29srKChIy5Yts/T/YIb/+++/V5UqVWRvb69XX31VFy5c0Pr161WuXDm5uLiobdu2unnzpuW4h2dtb9++rY8++kienp6ys7OTn5+f/vGPf2Tpmjxq2cmVK1dkMpm0detWqzq/++47BQUFqWDBgqpZs6bi4+Mtx4wcOVKVK1e26nvatGny8vKyer81atSQo6OjChUqpDp16ujcuXOPre3nn39W69at5ebmpiJFiig8PFyJiYmW/Q9m3MePH6+SJUvK399fo0ePVsWKFTP0FRwcrOHDh2vkyJFauHChVq1aJZPJZPU+JenMmTOqX7++HBwcFBQUpF27dln1s3PnTtWtW1f29vby9PRU7969dePGDct+Ly8vjRkzRh06dJCTk5PKlCmjVatW6bffflN4eLicnJxUsWJF7du3z3LMpUuX1LZtW5UqVUoODg6qWLGiFi9ebPU+Y2NjNX36dEvND65DbGysatSoITs7O5UoUUKDBw/WvXv3LMc+7nteevTsf4sWLSzfv5I0e/Zs+fn5qWDBgipevLjeeuutx44XAAB4ceRaqE9JSVHbtm3VuXNnJSQkaOvWrWrZsqXMZrPq1q0rHx8fLVq0yNL+3r17+uc//6lOnTpJknr27Knbt29r27Ztio+P16effionJyd5enpq+fLlkqTjx48rJSVF06dPlyQNHTpU0dHRioqK0pEjR/Thhx/q3XffVWxsrFVtI0eO1KxZs7Rz504lJycrIiJC06ZN09dff63vvvtOMTExmjlz5mPfW4cOHbRkyRLNmDFDCQkJmjNnjpycnHL6EmrgwIH6+9//rr1796pYsWJq3ry57t69m6Vj7927pxYtWqhevXo6dOiQdu3apffee08mk+mR7W/evKn69evLyclJ27Zt044dO+Tk5KQ33nhDd+7csbTbtGmTEhISFBMTo7Vr16pz5846evSo9u7da2lz6NAhHTx4UJGRkRowYIAiIiL0xhtvKCUlRSkpKapdu7al7ccff6wBAwYoLi5O/v7+atu2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", - "text/plain": [ - "
    " - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = tiledb_to_pandas(neighbour_obs, 0).value_counts(\"disease\").plot.barh()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "27", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.12.8" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/demo/src/App.css b/demo/src/App.css deleted file mode 100644 index b9d355d..0000000 --- a/demo/src/App.css +++ /dev/null @@ -1,42 +0,0 @@ -#root { - max-width: 1280px; - margin: 0 auto; - padding: 2rem; - text-align: center; -} - -.logo { - height: 6em; - padding: 1.5em; - will-change: filter; - transition: filter 300ms; -} -.logo:hover { - filter: drop-shadow(0 0 2em #646cffaa); -} -.logo.react:hover { - filter: drop-shadow(0 0 2em #61dafbaa); -} - -@keyframes logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } -} - -@media (prefers-reduced-motion: no-preference) { - a:nth-of-type(2) .logo { - animation: logo-spin infinite 20s linear; - } -} - -.card { - padding: 2em; -} - -.read-the-docs { - color: #888; -} diff --git a/demo/src/App.tsx b/demo/src/App.tsx deleted file mode 100644 index 87ec06c..0000000 --- a/demo/src/App.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { BrowserRouter, Route, Routes } from 'react-router'; -import Home from './components/Home'; -import NotebookPage from './components/NotebookPage'; - -function App() { - return ( - - - } /> - } /> - - - ); -} - -export default App; diff --git a/demo/src/assets/react.svg b/demo/src/assets/react.svg deleted file mode 100644 index 6c87de9..0000000 --- a/demo/src/assets/react.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/demo/src/components/CssLoader.tsx b/demo/src/components/CssLoader.tsx deleted file mode 100644 index f3201f0..0000000 --- a/demo/src/components/CssLoader.tsx +++ /dev/null @@ -1,37 +0,0 @@ -interface ICssLoaderProps { - submitCommand: (command: string, args: string) => void; -} - -const CssLoader = ({ submitCommand }: ICssLoaderProps) => { - const handleSubmit = () => { - const command = 'jupyter-import-css'; - // from MDN - const getAllCss = [...document.styleSheets] - .map(styleSheet => { - try { - return [...styleSheet.cssRules].map(rule => rule.cssText).join(''); - } catch (e) { - console.log( - 'Access to stylesheet %s is denied. Ignoring…', - styleSheet.href - ); - } - }) - .filter(Boolean) - .join('\n'); - - const parsedCSS = getAllCss.replace(/'/g, '"'); - - submitCommand(command, JSON.stringify({ parsedCSS })); - }; - - return ( -
    - -
    - ); -}; - -export default CssLoader; diff --git a/demo/src/components/DemoTop.tsx b/demo/src/components/DemoTop.tsx deleted file mode 100644 index 33bb2bd..0000000 --- a/demo/src/components/DemoTop.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import InputArea from './InputArea'; -import Instructions from './Instructions'; -import ListCommands from './ListCommands'; - -interface IDemoTopProps { - getBridge: () => ICommandBridgeRemote; - submitCommand: (command: string, args: string) => void; -} - -const DemoTop = ({ getBridge, submitCommand }: IDemoTopProps) => { - return ( - <> -
    -

    {import.meta.env.VITE_TITLE} Demo

    -
    - - - {/* */} - {/* */} -
    - -
    - - ); -}; - -export default DemoTop; diff --git a/demo/src/components/Error.tsx b/demo/src/components/Error.tsx deleted file mode 100644 index 3be0495..0000000 --- a/demo/src/components/Error.tsx +++ /dev/null @@ -1,36 +0,0 @@ -import { forwardRef, useImperativeHandle, useRef } from 'react'; - -interface IErrorProps { - message: string; -} - -const ErrorDialog = forwardRef(({ message }: IErrorProps, ref) => { - const dialogRef = useRef(null); - - useImperativeHandle(ref, () => ({ - showModal: () => dialogRef.current?.showModal(), - close: () => dialogRef.current?.close() - })); - - return ( - -
    -

    âš  Error

    -
    - {message} -
    -
    - -
    -
    -
    - ); -}); - -export default ErrorDialog; diff --git a/demo/src/components/FileMenuBar/AddCellButton.tsx b/demo/src/components/FileMenuBar/AddCellButton.tsx deleted file mode 100644 index 1808b79..0000000 --- a/demo/src/components/FileMenuBar/AddCellButton.tsx +++ /dev/null @@ -1,51 +0,0 @@ -import { useCallback } from 'react'; -import codeUrl from '../../../icons/code.svg'; -import markdownUrl from '../../../icons/markdown.svg'; -import plusUrl from '../../../icons/plus.svg'; -import { usePopover } from '../usePopover'; -import PopoverListItem from '../PopoverListItem'; - -interface IAddCellButtonProps { - submitCommand: (command: string, args: string) => void; -} - -const AddCellButton = ({ submitCommand }: IAddCellButtonProps) => { - const { isOpen, toggle, close, ref } = usePopover(); - - const handleOptionClick = useCallback((option: string) => { - console.log(`${option} option clicked`); - close(); - - submitCommand('notebook:insert-cell-below', ''); - submitCommand(`notebook:change-cell-to-${option}`, ''); - }, []); - - return ( -
    - - - {isOpen && ( -
    -
    - - -
    -
    - )} -
    - ); -}; - -export default AddCellButton; diff --git a/demo/src/components/FileMenuBar/AvailableCommands.tsx b/demo/src/components/FileMenuBar/AvailableCommands.tsx deleted file mode 100644 index cea253c..0000000 --- a/demo/src/components/FileMenuBar/AvailableCommands.tsx +++ /dev/null @@ -1,93 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { ChangeEvent, useCallback, useState } from 'react'; -import keyboardUrl from '../../../icons/keyboard.svg'; -import { usePopover } from '../usePopover'; - -interface IAvailableCommandsProps { - bridge: () => ICommandBridgeRemote; -} - -// type CommandOption = { label: string; command: string }; -const commandList = [ - { label: 'Create new notebook...', command: 'notebook:create-new' }, - { label: 'Open terminal...', command: 'terminal:create-new' }, - { label: 'Undo last operation', command: 'notebook:undo-cell-action' }, - { label: 'Redo last operation...', command: 'notebook:redo-cell-action' }, - { label: 'Run selected cell', command: 'notebook:run-cell-and-select-next' }, - { label: 'Run all blocks', command: 'notebook:run-all-cells' }, - { label: 'Restart Kernel', command: 'notebook:restart-kernel' }, - { - label: 'Restart kernel and clear all outputs', - command: 'notebook:restart-clear-output' - }, - { label: 'Add code block below', command: 'notebook:insert-cell-below' }, - { label: 'Add code block above', command: 'notebook:insert-cell-above' } -]; - -const AvailableCommands = ({ bridge }: IAvailableCommandsProps) => { - const [searchQuery, setSearchQuery] = useState(''); - const { isOpen, toggle, close, ref } = usePopover(); - - // Handle option click - const handleOptionClick = useCallback((option: string): void => { - console.log(`${option} option clicked`); - close(); - setSearchQuery(''); // Reset search query after selection - bridge().execute(option, {}); - }, []); - - // Update the search query as the user types - const handleSearchChange = useCallback( - (e: ChangeEvent): void => { - setSearchQuery(e.target.value); - }, - [] - ); - - // Filter items based on the search query - const filteredItems = commandList.filter(item => - item.label.toLowerCase().includes(searchQuery.toLowerCase()) - ); - - return ( -
    - - - {isOpen && ( -
    -
    -
    -
    -
    - {/* Search bar */} - -
    -
    - {/* Render filtered options */} -
    - {filteredItems.map(option => ( -
    handleOptionClick(option.command)} - > - {option.label} -
    - ))} -
    -
    -
    -
    - )} -
    - ); -}; - -export default AvailableCommands; diff --git a/demo/src/components/FileMenuBar/BulletsButton.tsx b/demo/src/components/FileMenuBar/BulletsButton.tsx deleted file mode 100644 index 2447d68..0000000 --- a/demo/src/components/FileMenuBar/BulletsButton.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { useCallback } from 'react'; -import bulletsUrl from '../../../icons/bullets.svg'; -import { usePopover } from '../usePopover'; - -interface IAvailableCommandsProps { - bridge: () => ICommandBridgeRemote; -} - -const commandList = [ - { label: 'Undo', command: 'notebook:undo-cell-action' }, - { label: 'Redo', command: 'notebook:redo-cell-action' }, - { label: 'Paste cell', command: 'notebook:paste-cell-below' }, - { label: 'Configure kernel', command: 'notebook:change-kernel' } -]; - -const BulletsButton = ({ bridge }: IAvailableCommandsProps) => { - const { isOpen, toggle, close, ref } = usePopover(); - - const handleOptionClick = useCallback((option: string): void => { - console.log(`${option} option clicked`); - close(); - bridge().execute(option, {}); - }, []); - - return ( -
    - - - {isOpen && ( -
    -
    -
    - {/* Render filtered options */} -
    - {commandList.map(option => ( -
    handleOptionClick(option.command)} - > - {option.label} -
    - ))} -
    -
    -
    -
    - )} -
    - ); -}; - -export default BulletsButton; diff --git a/demo/src/components/FileMenuBar/FileMenuBar.tsx b/demo/src/components/FileMenuBar/FileMenuBar.tsx deleted file mode 100644 index bceeb79..0000000 --- a/demo/src/components/FileMenuBar/FileMenuBar.tsx +++ /dev/null @@ -1,93 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import clipboardUrl from '../../../icons/clipboard.svg'; -import fullscreenUrl from '../../../icons/fullscreen.svg'; -import redoUrl from '../../../icons/redo.svg'; -import saveUrl from '../../../icons/save.svg'; -import undoUrl from '../../../icons/undo.svg'; -import { useWindowSize } from '../useWindowSize'; -import AddCellButton from './AddCellButton'; -import AvailableCommands from './AvailableCommands'; -import BulletsButton from './BulletsButton'; -import KernelInfo from './KernelInfo'; -import RunButton from './RunButton'; -import './fileMenuBar.css'; -interface IFileMenuBarProps { - bridge: () => ICommandBridgeRemote; - submitCommand: (command: string, args: string) => void; -} - -const FileMenuBar = ({ bridge, submitCommand }: IFileMenuBarProps) => { - const { width } = useWindowSize(); - - const handleSave = () => { - submitCommand('docmanager:save', ''); - }; - - const handleUndo = () => { - // ? cell action or no cell action? - submitCommand('notebook:undo-cell-action', ''); - }; - - const handleRedo = () => { - // ? cell action or no cell action? - submitCommand('notebook:redo-cell-action', ''); - }; - - const handlePaste = () => { - submitCommand('notebook:paste-cell-below', ''); - }; - - return ( -
    -
    -
    - - - {width > 550 ? ( - <> - - - - - - ) : ( - - )} -
    - -
    - - {width > 550 ? ( - <> - -
    - - - ) : null} -
    -
    -
    - ); -}; - -export default FileMenuBar; diff --git a/demo/src/components/FileMenuBar/KernelInfo.tsx b/demo/src/components/FileMenuBar/KernelInfo.tsx deleted file mode 100644 index d8bf227..0000000 --- a/demo/src/components/FileMenuBar/KernelInfo.tsx +++ /dev/null @@ -1,63 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { useEffect, useState } from 'react'; -import { useGetJupyterInfo } from './useGetJupyterInfo'; - -interface IKernelInfoProps { - bridge: () => ICommandBridgeRemote; -} - -const KernelInfo = ({ bridge }: IKernelInfoProps) => { - const [kernelName, setKernelName] = useState(''); - const [className, setClassName] = useState('idle'); - - const kernelInfo = useGetJupyterInfo(state => state.kernelInfo); - - useEffect(() => { - setClassName(kernelInfo.isKernelBusy ? 'busy' : 'idle'); - setKernelName(kernelInfo.kernelName); - }, [kernelInfo]); - - const handleClick = async () => { - bridge().execute('notebook:change-kernel', {}); - }; - - return ( -
    -
    - -
    -
    - ); -}; - -export default KernelInfo; diff --git a/demo/src/components/FileMenuBar/RunButton.tsx b/demo/src/components/FileMenuBar/RunButton.tsx deleted file mode 100644 index c79eca0..0000000 --- a/demo/src/components/FileMenuBar/RunButton.tsx +++ /dev/null @@ -1,78 +0,0 @@ -import { useCallback } from 'react'; -import arrowDownUrl from '../../../icons/arrowDown.svg'; -import playUrl from '../../../icons/play.svg'; -import { usePopover } from '../usePopover'; - -interface IRunButtonProps { - submitCommand: (command: string, args: string) => void; -} - -const popoverOptions = [ - { label: 'Run all', command: 'notebook:run-all-cells' }, - { label: 'Run selected cell', command: 'notebook:run-cell-and-select-next' }, - { - label: 'Run from selected cell and above', - command: 'notebook:run-all-above' - }, - { - label: 'Run from selected cell and below', - command: 'notebook:run-all-below' - } -]; -const RunButton = ({ submitCommand }: IRunButtonProps) => { - const { isOpen, toggle, close, ref } = usePopover(); - - const handleOptionClick = useCallback((option: string): void => { - console.log(`${option} option clicked`); - close(); - submitCommand(option, ''); - }, []); - - return ( -
    -
    - {/* Run Button */} - - - {/* Options Button */} - -
    - - {/* Popover Menu */} - {isOpen && ( -
    -
    - {popoverOptions.map((option, index) => ( -
    { - handleOptionClick(option.command); - }} - className="popover-list-item" - > - {option.label} -
    - ))} -
    -
    - )} -
    - ); -}; - -export default RunButton; diff --git a/demo/src/components/FileMenuBar/fileMenuBar.css b/demo/src/components/FileMenuBar/fileMenuBar.css deleted file mode 100644 index 6380fde..0000000 --- a/demo/src/components/FileMenuBar/fileMenuBar.css +++ /dev/null @@ -1,703 +0,0 @@ -.file-menu-bar-container { - /* display: flex; - justify-content: space-between; - border-bottom: 1px solid #ededed; - background-color: #ffffff; - padding: 6px; - height: 32px; - border-radius: 8px 8px 0 0; - gap: 8px; */ - border-radius: 8px 8px 0 0; - - box-sizing: border-box; - - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - padding: 6px; - - /* width: auto; */ - height: 44px; - - background: #ffffff; - border-bottom: 1px solid #ededed; - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 0; -} - -.file-menu-bar-wrapper { - /* Auto layout */ - display: flex; - flex-direction: row; - flex-wrap: wrap; - justify-content: space-between; - align-items: center; - align-content: flex-start; - padding: 0px; - gap: 8px; - - /* width: auto; */ - height: 32px; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 1; -} - -.file-menu-bar-commands { - /* display: flex; - gap: 1rem; */ - - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - padding: 0px; - gap: 8px; - - /* width: 232px; */ - height: 32px; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 0; -} - -.file-menu-bar-buttons > button, -.file-menu-bar-commands button { - /* width: 32px; - height: 32px; - padding: 6px; - border: 1px solid transparent; - background-color: #ffffff; */ - - /* Auto layout */ - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - padding: 4px; - gap: 8px; - - width: 32px; - height: 32px; - - border-radius: 6px; - - border: 1px solid transparent; - background-color: #ffffff; - cursor: pointer; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 0; -} - -.button-name { - width: 16px; - height: 16px; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 0; -} - -.button-name svg { - stroke: #525252; -} - -.file-menu-bar-buttons { - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - padding: 0px; - gap: 8px; - - /* width: 299px; */ - /* height: 32px; */ - - /* Inside auto layout */ - flex: none; - order: 2; - flex-grow: 0; -} - -/* .file-menu-button-text { - display: flex; - flex-direction: column; -} - -.file-menu-button-text > label { - font-weight: bold; -} - -.file-menu-button-text > span { - font-size: 13px; - color: #737373; -} */ - -.file-menu-popover-container { - /* position: absolute; - top: 100%; - left: 0; - margin-top: 4px; - background-color: white; - border: 1px solid #ddd; - border-radius: 4px; - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); - min-width: 150px; - z-index: 1000; - text-wrap: nowrap; */ - - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 0px; - - position: absolute; - width: 246px; - height: 124px; - /* left: 18px; */ - top: 35px; - - /* Inside auto layout */ - flex: none; - order: 2; - flex-grow: 0; - z-index: 2; -} - -.file-menu-popover-wrapper { - box-sizing: border-box; - - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 10px; - gap: 8px; - - width: 246px; - height: 124px; - - background: #ffffff; - /* shadow/400 */ - box-shadow: 0px 5px 16px rgba(0, 0, 0, 0.15); - border-radius: 8px; - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 0; -} - -.popover-list-item { - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: flex-start; - padding: 0 12px; - gap: 6px; - - /* width: 226px; */ - height: 48px; - - border-radius: 6px; - - cursor: pointer; - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 0; -} - -.popover-list-item:first-child { - padding-top: 8px; -} - -.popover-list-item:last-child { - padding-bottom: 8px; -} - -.popover-icon { - width: 16px; - height: 16px; - - /* Inside auto layout */ - flex: none; - order: 1; - flex-grow: 0; -} - -.popover-icon svg { - background: #000000; -} - -.popover-text { - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 0px; - gap: 2px; - cursor: pointer; - - width: 180px; - height: 32px; - - /* Inside auto layout */ - flex: none; - order: 2; - flex-grow: 1; -} -.popover-text > label { - width: 180px; - height: 16px; - cursor: pointer; - - /* body/md/500 */ - font-family: 'Inter'; - font-style: normal; - font-weight: 700; - font-size: 13px; - line-height: 16px; - /* identical to box height, or 123% */ - display: flex; - align-items: center; - - color: #262626; - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 0; -} -.popover-text > span { - width: 180px; - height: 14px; - - /* body/xs/500 */ - font-family: 'Inter'; - font-style: normal; - font-weight: 500; - font-size: 11px; - line-height: 14px; - /* identical to box height, or 127% */ - display: flex; - align-items: center; - - color: #737373; - - /* Inside auto layout */ - flex: none; - order: 1; - align-self: stretch; - flex-grow: 0; -} - -/* additional commands */ -.available-commands-popover { - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 0px; - - position: absolute; - width: 320px; - /* height: 474px; */ - left: 0; - top: 100%; - - /* Inside auto layout */ - flex: none; - order: 2; - flex-grow: 0; - z-index: 2; -} - -.filter-pop-overs { - box-sizing: border-box; - - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 10px; - padding-bottom: 0; - gap: 8px; - - /* width: 320px; */ - /* height: 474px; */ - - background: #ffffff; - /* shadow/400 */ - box-shadow: 0px 5px 16px rgba(0, 0, 0, 0.15); - border-radius: 8px; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 0; -} - -.popovers-wrapper { - /* Auto layout */ - /* display: flex; */ - /* flex-direction: column; */ - /* align-items: flex-start; */ - padding: 0px; - gap: 8px; - - /* width: 300px; */ - /* height: 32px; */ - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 0; -} -.input-controls { - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 0px; - gap: 4px; - - width: 300px; - /* height: 60px; */ - - /* Inside auto layout */ - flex: none; - order: 1; - flex-grow: 1; -} - -.input-field { - box-sizing: border-box; - - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - /* padding: 10px; */ - - /* width: 300px; */ - /* height: 60px; */ - - background: #ffffff; - /* border: 1px solid #d4d4d4; */ - border-radius: 6px; - - /* Inside auto layout */ - flex: none; - order: 1; - align-self: stretch; - flex-grow: 1; -} - -.input-field input { - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - padding: 5px 10px; - gap: 10px; - - /* width: 300px; */ - /* height: 32px; */ - - /* Inside auto layout */ - flex: none; - order: 2; - align-self: stretch; - flex-grow: 1; -} - -.input-field input::placeholder { - width: 254px; - height: 20px; - - /* body-text/md/500 */ - font-family: 'Inter'; - font-style: normal; - font-weight: 500; - font-size: 13px; - line-height: 20px; - /* identical to box height, or 154% */ - - color: #a3a3a3; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 1; -} - -.list-of-options { - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 0px; - gap: 6px; - - /* width: 300px; */ - max-height: 414px; - overflow-y: scroll; - - /* Inside auto layout */ - flex: none; - order: 1; - align-self: stretch; - flex-grow: 1; -} - -.list-of-options-item { - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: flex-start; - padding: 8px 12px; - gap: 6px; - - /* width: 300px; */ - /* height: 32px; */ - - border-radius: 6px; - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 0; -} - -.list-of-options > .popover-list-item { - height: 32px; -} - -.buttons-grouped { - display: flex; - flex-direction: row; - align-items: flex-start; - padding: 0px; - gap: 1px; - - /* width: 105px; */ - /* height: 32px; */ - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 0; -} - -.left-half { - /* Auto layout */ - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - padding: 8px 12px; - gap: 8px; - border: none; - /* width: 72px; */ - /* height: 32px; */ - - background: #0e0e0e; - border-radius: 6px 0px 0px 6px; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 0; -} - -.left-half > span { - /* width: 24px; */ - /* height: 16px; */ - - /* body/md/500 */ - font-family: 'Inter'; - font-style: normal; - font-weight: 500; - font-size: 13px; - line-height: 16px; - /* identical to box height, or 123% */ - display: flex; - align-items: center; - - color: #fafafa; -} -.right-half { - /* Auto layout */ - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - padding: 4px; - gap: 8px; - border: none; - - width: 32px; - height: 32px; - - background: #0e0e0e; - border-radius: 0px 6px 6px 0px; - - /* Inside auto layout */ - flex: none; - order: 1; - flex-grow: 0; -} - -.filter-pop-overs > .popover-list-item { - height: 32px; -} - -.notebook-extra-actions { - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - padding: 0px; - gap: 8px; - - width: 138px; - height: 32px; - - /* Inside auto layout */ - flex: none; - order: 1; - flex-grow: 0; -} - -.kernel-info-and-actions { - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - padding: 0px; - gap: 4px; - - width: 138px; - height: 32px; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 1; -} - -.kernel-button { - box-sizing: border-box; - - /* Auto layout */ - display: flex; - flex-direction: row; - align-items: center; - padding: 8px 12px; - gap: 8px; - - /* width: 138px; */ - /* height: 32px; */ - - border: 1px solid #d4d4d4; - border-radius: 6px; - - background-color: #ffffff; - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 1; -} - -.indicator { - width: 16px; - height: 16px; - - /* Inside auto layout */ - flex: none; - order: 0; - flex-grow: 0; -} - -.indicator.idle rect:first-child { - fill: #f2f6f8; -} - -.indicator.idle rect:last-child { - fill: #b3c4d8; -} - -.indicator.busy rect:last-child { - stroke: red; - fill: red; -} - -.kernel-text { - display: flex; - flex-direction: column; - justify-content: center; - align-items: flex-start; - padding: 0px; - width: 90px; - height: 16px; - - /* Inside auto layout */ - flex: none; - order: 1; - flex-grow: 1; -} - -.kernel-text > span { - width: 90px; - height: 16px; - - /* body/md/500 */ - font-family: 'Inter'; - font-style: normal; - font-weight: 500; - font-size: 13px; - line-height: 16px; - /* identical to box height, or 123% */ - text-overflow: ellipsis; - white-space: nowrap; - color: #262626; - overflow: hidden; - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 0; -} - -.separator { - display: inline-block; - width: 1px; - height: 16px; - background-color: #ededed; - vertical-align: middle; - flex: none; - order: 2; - flex-grow: 0; -} diff --git a/demo/src/components/FileMenuBar/useGetJupyterInfo.ts b/demo/src/components/FileMenuBar/useGetJupyterInfo.ts deleted file mode 100644 index af3b999..0000000 --- a/demo/src/components/FileMenuBar/useGetJupyterInfo.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { IJupyterInfo, jupyterInfo } from 'jupyter-iframe-commands-host'; -import { useCallback, useSyncExternalStore } from 'react'; - -export function useGetJupyterInfo(selector: (state: IJupyterInfo) => T): T { - const getSnapshot = useCallback(() => { - const snapshot = selector(jupyterInfo.getState()); - - return snapshot; - }, [selector]); - - return useSyncExternalStore(jupyterInfo.subscribe, getSnapshot); -} diff --git a/demo/src/components/Home.tsx b/demo/src/components/Home.tsx deleted file mode 100644 index 387095e..0000000 --- a/demo/src/components/Home.tsx +++ /dev/null @@ -1,33 +0,0 @@ -import { NavLink } from 'react-router'; - -const sampleNotebooks = ['example.ipynb', 'soma.ipynb']; -const sampleTerminals = ['1', '2']; - -function Home() { - return ( - <> -
    -
    List of notebooks
    - {sampleNotebooks.map(nb => { - return ( - - {nb} - - ); - })} -
    -
    -
    List of terminals
    - {sampleTerminals.map(terminal => { - return ( - - {terminal} - - ); - })} -
    - - ); -} - -export default Home; diff --git a/demo/src/components/InputArea.tsx b/demo/src/components/InputArea.tsx deleted file mode 100644 index fa16fa7..0000000 --- a/demo/src/components/InputArea.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { FormEvent, useState } from 'react'; - -interface IInputAreaProps { - submitCommand: (command: string, args: string) => void; -} - -const InputArea = ({ submitCommand }: IInputAreaProps) => { - const [command, setCommand] = useState(''); - const [args, setArgs] = useState(''); - - const submit = async (e: FormEvent) => { - e.preventDefault(); - - // Single quotes cause an error - submitCommand(command, args.replace(/'/g, '"')); - }; - - return ( -
    -
    - { - setCommand(e.target.value); - }} - required - value={command} - /> - { - setArgs(e.target.value); - }} - value={args} - /> - -
    -
    - ); -}; - -export default InputArea; diff --git a/demo/src/components/Instructions.tsx b/demo/src/components/Instructions.tsx deleted file mode 100644 index a08da54..0000000 --- a/demo/src/components/Instructions.tsx +++ /dev/null @@ -1,185 +0,0 @@ -import { FormEvent, useRef, useState } from 'react'; - -interface IIinstructionProps { - submitCommand: (command: string, args: string) => void; -} - -const Instructions = ({ submitCommand }: IIinstructionProps) => { - const dialogRef = useRef(null); - - const [selectValue, setSelectValue] = useState(''); - - const handleSubmit = (e: FormEvent) => { - e.preventDefault(); - - if (selectValue) { - let args = ''; - let select = ''; - if (selectValue.includes('Light') || selectValue.includes('Dark')) { - args = `{"theme": "${selectValue}"}`; - select = 'apputils:change-theme'; - } else { - select = selectValue; - } - submitCommand(select, args); - } - dialogRef.current?.close(); - }; - - return ( -
    - - - -
    -
    -

    Instructions

    -

    - To use this demo simply enter a command in the command input and - any arguments for that command in the args input. -

    -

    - Click the{' '} - - List Available Commands - {' '} - button to see a list of available commands. -

    -
    -

    - Some commands are listed here for convenience: -

    -
    -
      -
    • application:toggle-left-area
    • -
    • apputils:activate-command-palette
    • -
    • apputils:display-shortcuts
    • -
    • notebook:create-new
    • -
    -
    -

    - And some with arguments: -

    -
    -
      -
    • - Command:{' '} - apputils:change-theme -
    • -
    • - Args:{' '} - {JSON.stringify({ theme: 'JupyterLab Light' })} -
    • -
      -
    • - Command:{' '} - apputils:change-theme -
    • -
    • - Args:{' '} - {JSON.stringify({ theme: 'JupyterLab Dark' })} -
    • -
    -
    -
    -

    - For even more convenience you can also select a command from the - dropdown: -

    - -
    -
    - - -
    -
    -
    - Check the{' '} - - README - {' '} - for more detailed instructions. -
    -
    -
    - ); -}; - -export default Instructions; diff --git a/demo/src/components/JupyterIframe.tsx b/demo/src/components/JupyterIframe.tsx deleted file mode 100644 index c66f505..0000000 --- a/demo/src/components/JupyterIframe.tsx +++ /dev/null @@ -1,68 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { createBridge, exposeApi } from 'jupyter-iframe-commands-host'; -import { forwardRef, useEffect, useImperativeHandle, useRef } from 'react'; -import { useGetJupyterInfo } from './FileMenuBar/useGetJupyterInfo'; - -interface IProps { - iframeSrc: string; -} - -const JupyterIframe = forwardRef(({ iframeSrc }: IProps, ref) => { - const iframeRef = useRef(null); - const bridgeRef = useRef(null); - - const isBridgeReady = useGetJupyterInfo(state => state.isBridgeReady); - - const exportCss = () => { - const command = 'jupyter-import-css'; - // from MDN - const getAllCss = [...document.styleSheets] - .map(styleSheet => { - try { - return [...styleSheet.cssRules].map(rule => rule.cssText).join(''); - } catch (e) { - console.log( - 'Access to stylesheet %s is denied. Ignoring…', - styleSheet.href - ); - } - }) - .filter(Boolean) - .join('\n'); - - const parsedCSS = getAllCss.replace(/'/g, '"'); - - bridgeRef.current?.execute(command, { parsedCSS }); - }; - - useEffect(() => { - exposeApi({ iframeId: 'jupyterlab' }); - }, []); - - useEffect(() => { - if (isBridgeReady) { - bridgeRef.current = createBridge({ iframeId: 'jupyterlab' }); - exportCss(); - } - }, [isBridgeReady]); - - useImperativeHandle(ref, () => ({ - getBridge: () => bridgeRef.current, - listCommands: async () => await bridgeRef.current?.listCommands() - })); - - return ( - <> - - - ); -}); - -export default JupyterIframe; diff --git a/demo/src/components/ListCommands.tsx b/demo/src/components/ListCommands.tsx deleted file mode 100644 index 2925aea..0000000 --- a/demo/src/components/ListCommands.tsx +++ /dev/null @@ -1,62 +0,0 @@ -// import { createBridge } from 'jupyter-iframe-commands-host'; -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { useRef, useState } from 'react'; - -interface IListCommandsProps { - bridge: () => ICommandBridgeRemote; -} - -const ListCommands = ({ bridge }: IListCommandsProps) => { - const dialogRef = useRef(null); - - const [commands, setCommands] = useState([]); - - const handleOpenDialog = async () => { - const fromBridge = await bridge().listCommands(); - - if (dialogRef.current) { - dialogRef.current.showModal(); - } - - setCommands(fromBridge); - }; - - const handleCloseDialog = () => { - if (dialogRef.current) { - dialogRef.current.close(); - } - }; - - return ( -
    - - - -

    Available Commands

    -
    - {commands.map(command => { - return
    {command}
    ; - })} -
    -
    - -
    -
    -
    - ); -}; - -export default ListCommands; diff --git a/demo/src/components/ModeToggle.tsx b/demo/src/components/ModeToggle.tsx deleted file mode 100644 index 35f0536..0000000 --- a/demo/src/components/ModeToggle.tsx +++ /dev/null @@ -1,62 +0,0 @@ -import { ChangeEvent, useEffect, useState } from 'react'; - -const ModeToggle = () => { - const [mode, setMode] = useState('lab'); - - useEffect(() => { - const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; - - if (!iframe) { - return; - } - - // Update iframe source when mode changes - const isNotebookView = mode === 'notebook'; - let currentUrl: any = new URL(iframe.src); - const isLite = currentUrl.pathname.includes('lite'); - - if (isLite) { - currentUrl = `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'index.html'}`; - } else { - currentUrl.pathname = isNotebookView - ? '/notebooks/example.ipynb' - : '/lab'; - currentUrl.search = ''; - } - - iframe.src = currentUrl.toString(); - }, [mode]); - - const handleModeChange = (e: ChangeEvent) => { - setMode(e.target.value); - }; - - return ( -
    -
    - - -
    -
    - ); -}; - -export default ModeToggle; diff --git a/demo/src/components/NoteBookBrowser.tsx b/demo/src/components/NoteBookBrowser.tsx deleted file mode 100644 index 910d577..0000000 --- a/demo/src/components/NoteBookBrowser.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import { jupyterInfo } from 'jupyter-iframe-commands-host'; -import { useRef } from 'react'; - -const sampleNotebooks = ['example.ipynb', 'soma.ipynb']; - -const NoteBookBrowser = () => { - const dialogRef = useRef(null); - - const handleOpenDialog = async () => { - if (dialogRef.current) { - dialogRef.current.showModal(); - } - }; - - const handleCloseDialog = () => { - if (dialogRef.current) { - dialogRef.current.close(); - } - }; - - const handleClick = (filename: string) => { - const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; - jupyterInfo.setState({ isBridgeReady: false }); - - iframe.src = `http://localhost:8888/notebooks/${filename}`; - dialogRef.current?.close(); - }; - - return ( -
    - - - -

    Available Commands

    -
    - {sampleNotebooks.map(nb => { - return ( - - ); - })} -
    -
    - -
    -
    -
    - ); -}; - -export default NoteBookBrowser; diff --git a/demo/src/components/NotebookPage.tsx b/demo/src/components/NotebookPage.tsx deleted file mode 100644 index 3b9f63f..0000000 --- a/demo/src/components/NotebookPage.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { useCallback, useRef, useState } from 'react'; -import { useParams } from 'react-router'; -import DemoTop from './DemoTop'; -import ErrorDialog from './Error'; -import FileMenuBar from './FileMenuBar/FileMenuBar'; -import { useGetJupyterInfo } from './FileMenuBar/useGetJupyterInfo'; -import JupyterIframe from './JupyterIframe'; -import TerminalMenu from './TerminalBar/TerminalMenu'; - -const NotebookPage = () => { - const params = useParams(); - const iframeRef = useRef(null); - const dialogRef = useRef(null); - - const [errorMessage, setErrorMessage] = useState(''); - - const isBridgeReady = useGetJupyterInfo(state => state.isBridgeReady); - - const getBridge = useCallback((): ICommandBridgeRemote => { - //@ts-expect-error wip - return iframeRef.current?.getBridge(); - }, [isBridgeReady]); - - const submitCommand = async (command: string, args: string) => { - const bridge = getBridge(); - - try { - bridge.execute(command, args ? JSON.parse(args) : {}); - } catch (e: any) { - setErrorMessage(e instanceof Error ? e.message : String(e)); - dialogRef.current?.showModal(); - } - }; - - return ( - <> - - -
    - {params.type === 'notebooks' ? ( - - ) : ( - - )} - -
    - - - ); -}; - -export default NotebookPage; diff --git a/demo/src/components/PopoverListItem.tsx b/demo/src/components/PopoverListItem.tsx deleted file mode 100644 index cc8f543..0000000 --- a/demo/src/components/PopoverListItem.tsx +++ /dev/null @@ -1,30 +0,0 @@ -interface IPopoverListItemProps { - label: string; - content?: string; - iconUrl: string; - handleOptionClick: (option: string) => void; -} - -const PopoverListItem = ({ - label, - content, - iconUrl, - handleOptionClick -}: IPopoverListItemProps) => { - return ( -
    handleOptionClick(label.toLowerCase())} - > -
    - -
    -
    - - {content} -
    -
    - ); -}; - -export default PopoverListItem; diff --git a/demo/src/components/TerminalBar/TerminalMenu.tsx b/demo/src/components/TerminalBar/TerminalMenu.tsx deleted file mode 100644 index 464aa4d..0000000 --- a/demo/src/components/TerminalBar/TerminalMenu.tsx +++ /dev/null @@ -1,107 +0,0 @@ -import { ICommandBridgeRemote } from 'jupyter-iframe-commands'; -import { useEffect, useState } from 'react'; -import { usePopover } from '../usePopover'; - -interface IAvailableCommandsProps { - bridge: () => ICommandBridgeRemote; -} - -const TerminalMenu = ({ bridge }: IAvailableCommandsProps) => { - const { isOpen, toggle, close, ref } = usePopover(); - - const [activeTerminal, setActiveTerminal] = useState(1); - const [runningTerminals, setRunningTerminals] = useState([]); - - useEffect(() => { - console.log('activeTerminal', activeTerminal); - console.log('runningTerminals.length', runningTerminals.length); - }, [activeTerminal, runningTerminals]); - - const iframe = document.getElementById('jupyterlab') as HTMLIFrameElement; - if (!iframe) { - return; - } - - const setIframeSrc = (terminal: number) => { - setActiveTerminal(terminal); - iframe.src = `http://localhost:8888/terminals/${terminal}`; - }; - - // Handle option click - const handleOptionClick = (terminal: string): void => { - setIframeSrc(+terminal); - close(); - }; - - const handleOpen = async () => { - const running = await bridge().listRunning(); - const termName = Object.values(running.terminals) - .map(term => term.name) - .sort(); - setRunningTerminals( - termName.length > 0 ? termName : ['No terminals running'] - ); - - toggle(); - }; - - const handleShutdown = () => { - runningTerminals.forEach(term => { - bridge().execute('shutdown-all-terminals', { name: term }); - }); - }; - - const handlePrev = () => { - setIframeSrc(activeTerminal - 1); - }; - const handleNext = () => { - setIframeSrc(activeTerminal + 1); - }; - - return ( -
    -
    Using Terminal-0{activeTerminal}
    - - - - - - - {isOpen && ( -
    -
    -
    - {/* Render filtered options */} -
    - {runningTerminals.map(term => ( -
    handleOptionClick(term)} - > - Terminal-{term} -
    - ))} -
    -
    -
    -
    - )} -
    - ); -}; - -export default TerminalMenu; diff --git a/demo/src/components/usePopover.ts b/demo/src/components/usePopover.ts deleted file mode 100644 index a8e8d8a..0000000 --- a/demo/src/components/usePopover.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { useCallback, useEffect, useRef, useState } from 'react'; - -export function usePopover(initialOpen = false) { - const [isOpen, setIsOpen] = useState(initialOpen); - const ref = useRef(null); - - const open = useCallback(() => setIsOpen(true), []); - const close = useCallback(() => setIsOpen(false), []); - const toggle = useCallback(() => setIsOpen(prev => !prev), []); - - useEffect(() => { - const handleClickOutside = (event: MouseEvent) => { - if (ref.current && !ref.current.contains(event.target as Node)) { - setIsOpen(false); - } - }; - - if (isOpen) { - document.addEventListener('mousedown', handleClickOutside); - } - - return () => { - document.removeEventListener('mousedown', handleClickOutside); - }; - }, [isOpen]); - - return { isOpen, open, close, toggle, ref }; -} diff --git a/demo/src/components/useWindowSize.ts b/demo/src/components/useWindowSize.ts deleted file mode 100644 index b2ff5f5..0000000 --- a/demo/src/components/useWindowSize.ts +++ /dev/null @@ -1,27 +0,0 @@ -// From https://github.com/uidotdev/usehooks/blob/main/index.js -import { useLayoutEffect, useState } from 'react'; - -export function useWindowSize() { - const [size, setSize] = useState({ - width: 0, - height: 0 - }); - - useLayoutEffect(() => { - const handleResize = () => { - setSize({ - width: window.innerWidth, - height: window.innerHeight - }); - }; - - handleResize(); - window.addEventListener('resize', handleResize); - - return () => { - window.removeEventListener('resize', handleResize); - }; - }, []); - - return size; -} diff --git a/demo/src/index.css b/demo/src/index.css deleted file mode 100644 index f0f8862..0000000 --- a/demo/src/index.css +++ /dev/null @@ -1,320 +0,0 @@ -:root { - --primary-color: #3498db; - --primary-hover: #2980b9; - --background-color: #f8f9fa; - --text-color: #2c3e50; - --border-color: #e0e0e0; -} - -body { - margin: 0; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, - 'Helvetica Neue', Arial, sans-serif; - color: var(--text-color); - background-color: var(--background-color); - display: flex; - flex-direction: column; -} - -.notebook-list { - display: flex; - flex-direction: column; - gap: 1rem; - padding: 2rem; -} - -.demo-top { - display: flex; - flex-direction: column; - align-items: center; - padding: 1.5rem; - background-color: white; - /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */ -} - -h1 { - margin: 0 0 1.5rem 0; - color: var(--text-color); - font-size: 2rem; - font-weight: 600; -} - -.input-area { - display: flex; - flex-direction: column; - gap: 1rem; - width: 100%; - max-width: 800px; -} - -#commands { - display: flex; - gap: 1rem; - width: 100%; - flex-wrap: wrap; -} - -input[type='text'] { - flex: 1; - min-width: 200px; - padding: 0.75rem 1rem; - border: 1px solid var(--border-color); - border-radius: 6px; - font-size: 1rem; - transition: - border-color 0.2s, - box-shadow 0.2s; -} - -input[type='text']:focus { - outline: none; - border-color: var(--primary-color); - box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); -} - -.button-row { - display: flex; - gap: 1rem; - margin-bottom: 1.5rem; - justify-content: center; -} - -.button-row button { - padding: 0.5rem 1rem; - border: none; - border-radius: 4px; - cursor: pointer; - font-size: 1rem; - display: inline-flex; - align-items: center; - gap: 0.5rem; - color: inherit; -} - -.demo-button { - padding: 0.75rem 1.5rem; - background-color: var(--primary-color); - color: white; - border: none; - border-radius: 6px; - font-size: 1rem; - font-weight: 500; - cursor: pointer; - transition: - background-color 0.2s, - transform 0.1s; -} - -button { - cursor: pointer; -} - -button:active { - transform: translateY(1px); -} - -#list-commands { - background-color: transparent; - color: var(--primary-color); - border: 1px solid var(--primary-color); -} - -#list-commands:hover { - background-color: rgba(52, 152, 219, 0.1); -} - -#instructions { - background-color: transparent; - color: var(--primary-color); - border: 1px solid var(--primary-color); -} - -#instructions:hover { - background-color: rgba(52, 152, 219, 0.1); -} - -/* Dialog styles */ -dialog { - padding: 2rem; - /* max-width: 600px; */ - border: none; - border-radius: 12px; - box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); - background: white; -} - -dialog::backdrop { - background: rgba(0, 0, 0, 0.6); - backdrop-filter: blur(2px); -} - -dialog form { - display: flex; - flex-direction: column; - gap: 1.5rem; -} - -dialog select { - width: 100%; - padding: 0.75rem; - border: 1px solid var(--border-color); - border-radius: 6px; - font-size: 1rem; - background-color: white; -} - -dialog select:focus { - outline: none; - border-color: var(--primary-color); - box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); -} - -dialog button[value='cancel'], -dialog button[value='close'] { - background-color: transparent; - color: var(--text-color); - border: 1px solid var(--border-color); - align-items: right; -} - -dialog button[value='cancel']:hover, -dialog button[value='close']:hover { - background-color: rgba(0, 0, 0, 0.05); -} - -.dialog-buttons { - display: flex; - justify-content: flex-end; - gap: 0.5rem; - margin-top: 1rem; -} - -#commands-list { - max-height: 300px; - overflow-y: auto; - padding: 0.5rem; - margin: -0.5rem 0; - font-family: monospace; -} - -#notebook-list { - max-height: 300px; - overflow-y: auto; - padding: 0.5rem; - margin: -0.5rem 0; - font-family: monospace; - display: flex; - flex-direction: column; - gap: 0.5rem; -} - -#notebook-list button { - display: flex; - justify-content: center; -} - -#commands-list div { - padding: 0.25rem 0; -} - -/* Responsive iframe */ -#jupyterlab { - width: calc(100%); - /* width: calc(100% - 0.5vw); */ - height: calc(100vh - 200px); - border: none; - /* border-radius: 8px; */ - /* margin-top: 0.25vw; */ - /* background-color: white; */ - /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */ - /* align-self: center; */ -} - -.mode-toggle { - display: flex; - gap: 0; - align-items: center; - border-radius: 6px; - background-color: #f0f0f0; - border: 1px solid #e0e0e0; -} - -.mode-toggle label { - display: flex; - height: 100%; - align-items: center; - gap: 0.5rem; - cursor: pointer; - padding: 4px 12px; - border-radius: 4px; - transition: - background-color 0.2s, - color 0.2s; -} - -.mode-toggle label:hover { - background-color: #e4e4e4; -} - -.mode-toggle input[type='radio'] { - position: absolute; - opacity: 0; - width: 0; - height: 0; -} - -.mode-toggle input[type='radio']:checked + span { - color: white; -} - -.mode-toggle input[type='radio']:focus + span { - outline: 2px solid #3498db; - outline-offset: 2px; -} - -.mode-toggle label:has(input[type='radio']:checked) { - background-color: #3498db; - color: white; -} - -.mode-toggle span { - font-size: 0.9rem; - font-weight: 500; - user-select: none; -} - -/* .lm-TabBar-tabLabel { - background-color: #2980b9; - font-size: 125px; -} - -.jp-Launcher-body, -.jp-WindowedPanel-outer { - background-color: rgb(110, 49, 49) !important; -} */ - -.iframe-container { - /* border: 1px solid #d4d4d4; - margin: 0 1rem; - border-radius: 8px; */ - box-sizing: border-box; - margin: 0 1rem; - - /* Auto layout */ - display: flex; - flex-direction: column; - align-items: flex-start; - padding: 0px; - - /* width: 1168px; */ - /* height: 880px; */ - - border: 1px solid #ededed; - border-radius: 8px; - - /* Inside auto layout */ - flex: none; - order: 0; - align-self: stretch; - flex-grow: 1; -} diff --git a/demo/src/jupyter.css b/demo/src/jupyter.css deleted file mode 100644 index 4dc12c1..0000000 --- a/demo/src/jupyter.css +++ /dev/null @@ -1,297 +0,0 @@ -:root { - --jp-mirror-editor-keyword-color: #581c87 !important; - --jp-mirror-editor-builtin-color: #2563eb !important; - --jp-mirror-editor-link-color: #644120 !important; - --jp-content-font-color1: #525252 !important; - --jp-cell-editor-background: #fdfafc !important; - --jp-cell-editor-border-color: #ededed !important; - --jp-cell-editor-active-background: #f5f5f5 !important; - --jp-cell-editor-active-border-color: #d4d4d4 !important; - --jp-code-font-size: 12px !important; - --jp-code-font-family: 'Fira Code' !important; - --jp-code-font-family-default: 'Fira Code' !important; - --jp-cell-inprompt-font-color: #525252 !important; - --jp-cell-prompt-not-active-font-color: #737373 !important; - --jp-content-font-size1: 12px !important; - --jp-content-font-size5: 24px !important; - --jp-content-font-color1: #262626 !important; - --jp-content-font-family: Inter !important; - --jp-content-line-height: 16px !important; - --jp-mirror-editor-header-color: #2463eb !important; - --jp-input-border-color: #d4d4d4 !important; - --jp-input-background: #ffffff !important; - --jp-accept-color-normal: #0e0e0e !important; - --jp-accept-color-hover: #282828 !important; - --jp-reject-color-hover: #d8d8d8 !important; -} - -#menu-panel-wrapper { - display: none; -} - -#main-panel { - top: unset !important; - box-shadow: #2980b9; -} - -.jp-InputArea-editor { - border-radius: 6px; -} - -.jp-MarkdownOutput { - border-radius: 0.5rem; - border: 1px solid #ededed; - padding: 0 0.3rem; - /* border: 0; */ - margin: 0; - /* padding: 0; */ - background-color: #ffffff; - text-shadow: none; -} - -.jp-MarkdownOutput > h1 { - /* font-family: 'Inter'; */ - font-weight: 700; - line-height: 30px; - - color: #262626; -} - -.jp-mod-selected .jp-MarkdownOutput { - background-color: #f5f5f5; -} - -.jp-Notebook.jp-mod-commandMode .jp-Cell.jp-mod-active:focus-visible { - box-shadow: unset; -} - -.lm-SplitPanel-child { - background-color: #ffffff; -} - -.jp-WindowedPanel-outer { - background-color: #ffffff !important; - padding: 0; -} - -body[data-notebook='notebooks'] .jp-WindowedPanel-viewport { - box-shadow: none; -} - -.jp-NotebookPanel-toolbar { - display: none; -} - -.jp-NotebookPanel-notebook { - top: 0 !important; -} - -.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser { - visibility: hidden; -} - -.jp-cell-toolbar { - padding: 2px; - border: 1px solid #ededed; - border-radius: 4px; - background-color: #ffffff !important; - right: 12px; - top: -14px; - box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.08) !important; - border-radius: 4px; -} - -.jp-cell-toolbar svg path { - fill: #525252 !important; -} - -.jp-Cell-inputArea { - overflow: visible; -} - -.jp-MarkdownOutput:hover, -.jp-InputArea-editor:hover { - filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.08)); - background-color: #fafafa !important; -} - -.cm-gutter.cm-lineNumbers { - background: #e5e5e5; -} - -.cm-lineNumbers > .cm-gutterElement { - font-family: 'Fira Code'; - color: #525252; -} - -.jp-InputArea-editor .cm-gutters { - border-right: 0; -} - -.jp-Dialog-content { - min-width: 400px; - border-radius: 16px; - background-color: #ffffff; - box-shadow: 0px 16px 20px -4px rgba(0, 0, 0, 0.15); - padding: 0; - border: 1px solid transparent; - resize: none; -} - -.jp-Dialog-header { - padding: 16px 24px; - /* font-style: normal; */ - /* line-height: 24px; */ - color: #262626; - font-family: 'Inter'; - font-weight: 700; - font-size: 20px; -} - -:not(.jp-mod-styled).jp-Dialog-body { - border-top: 1px solid #d4d4d4; - border-bottom: 1px solid #d4d4d4; - padding: 16px 48px 32px; - margin: 0 -24px; - gap: 4px; -} - -input.jp-mod-styled.jp-Dialog-body { - margin: 16px; -} - -.jp-Dialog-body > label { - height: 19px; - font-family: 'Inter'; - /* font-style: normal; */ - font-weight: 600; - font-size: 12px; - line-height: 19px; - color: #525252; -} - -.jp-Dialog-body > .jp-select-wrapper { - height: 40px; -} - -.jp-Dialog-body > .jp-select-wrapper > select { - /* body-text/md/500 */ - font-family: 'Inter'; - /* font-style: normal; */ - font-weight: 500; - font-size: 13px; - /* line-height: 20px; */ - /* identical to box height, or 154% */ - color: #262626; -} - -.jp-Dialog-body > .jp-select-wrapper svg { - top: 11px; - stroke: #737373; -} - -.jp-Dialog-footer { - padding: 16px 24px; - background-color: #f5f5f5; - margin: 0; -} - -label[title~='kernel'] { - position: absolute; - top: -35px; - left: 21px; - height: 16px; - /* body/sm/500 */ - font-family: 'Inter'; - font-style: normal; - font-weight: 500; - font-size: 12px; - line-height: 16px; - /* identical to box height, or 133% */ - display: flex; - align-items: center; - text-align: center; - color: #262626; -} - -label[title~='kernel'] > input[type='checkbox'] { - height: 16px !important; - width: 16px; - background-color: #fff; - outline: 1px solid #d4d4d4; - border-radius: 4px; - margin-right: 8px; - border: none; - outline: none; - accent-color: #282828; -} - -input.jp-mod-styled:focus { - border-color: #0e0e0e; -} - -input[type='checkbox'].jp-mod-styled:focus-visible { - outline-color: #0e0e0e; -} - -.jp-mod-focused { - outline-color: #0e0e0e !important; - border-color: #0e0e0e !important; - /* background-color: red; */ - color: green; -} - -dialog select:focus { - border-color: #0e0e0e; -} - -button.jp-mod-styled { - height: 40px; - display: flex; - padding: 12px 16px; - align-items: center; - width: 69px; - justify-content: center; -} - -.jp-Dialog-buttonLabel { - font-family: 'Inter'; - font-style: normal; - font-weight: 600; - font-size: 13px; - line-height: 16px; - /* identical to box height, or 123% */ - display: flex; - align-items: center; - color: #fafafa; -} - -.jp-Dialog-button.jp-mod-reject.jp-mod-styled { - background-color: transparent; -} - -.jp-Dialog-button.jp-mod-reject > .jp-Dialog-buttonLabel { - color: #262626; -} - -.jp-select-wrapper > .jp-mod-styled > optgroup { - font-family: Inter; - font-weight: 600; - font-size: 12px; - line-height: 19px; - letter-spacing: 0%; -} - -.jp-select-wrapper > .jp-mod-styled > optgroup > option { - font-family: Inter; - font-weight: 400; - font-size: 13px; - line-height: 20px; - letter-spacing: 0%; - color: #000000de; -} - -.jp-ThemedContainer { - border-top-left-radius: 0; - border-top-right-radius: 0; -} diff --git a/demo/src/main.tsx b/demo/src/main.tsx deleted file mode 100644 index 81d5d5c..0000000 --- a/demo/src/main.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import { StrictMode } from 'react'; -import { createRoot } from 'react-dom/client'; -import App from './App.tsx'; -import './index.css'; -import './jupyter.css'; - -createRoot(document.getElementById('root')!).render( - - - -); diff --git a/demo/src/vite-env.d.ts b/demo/src/vite-env.d.ts deleted file mode 100644 index 11f02fe..0000000 --- a/demo/src/vite-env.d.ts +++ /dev/null @@ -1 +0,0 @@ -/// diff --git a/demo/tsconfig.app.json b/demo/tsconfig.app.json deleted file mode 100644 index c2d501f..0000000 --- a/demo/tsconfig.app.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "compilerOptions": { - "incremental": true, - "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", - "target": "ES2020", - "useDefineForClassFields": true, - "lib": ["ES2020", "DOM", "DOM.Iterable"], - "module": "ESNext", - "skipLibCheck": true, - - /* Bundler mode */ - "moduleResolution": "bundler", - "allowImportingTsExtensions": true, - "isolatedModules": true, - "moduleDetection": "force", - "noEmit": true, - "jsx": "react-jsx", - - /* Linting */ - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true - }, - "include": ["src"] -} diff --git a/demo/tsconfig.json b/demo/tsconfig.json deleted file mode 100644 index 1ffef60..0000000 --- a/demo/tsconfig.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "files": [], - "references": [ - { "path": "./tsconfig.app.json" }, - { "path": "./tsconfig.node.json" } - ] -} diff --git a/demo/tsconfig.node.json b/demo/tsconfig.node.json deleted file mode 100644 index a464d80..0000000 --- a/demo/tsconfig.node.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "compilerOptions": { - "incremental": true, - "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", - "target": "ES2022", - "lib": ["ES2023"], - "module": "ESNext", - "skipLibCheck": true, - - /* Bundler mode */ - "moduleResolution": "bundler", - "allowImportingTsExtensions": true, - "isolatedModules": true, - "moduleDetection": "force", - "noEmit": true, - - /* Linting */ - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true - }, - "include": ["vite.config.ts"] -} diff --git a/demo/vite.config.ts b/demo/vite.config.ts deleted file mode 100644 index 4ae1e57..0000000 --- a/demo/vite.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineConfig } from 'vite'; -import react from '@vitejs/plugin-react'; - -// https://vite.dev/config/ -export default defineConfig({ - plugins: [react()] -}); diff --git a/package.json b/package.json index 65f9cd1..3f107f0 100644 --- a/package.json +++ b/package.json @@ -15,9 +15,7 @@ "license": "BSD-3-Clause", "author": "QuantStack", "workspaces": [ - "packages/*", - "demo", - "demo-react" + "packages/*" ], "scripts": { "build": "lerna run build", diff --git a/packages/css-extension/.copier-answers.yml b/packages/css-extension/.copier-answers.yml deleted file mode 100644 index 6d8633b..0000000 --- a/packages/css-extension/.copier-answers.yml +++ /dev/null @@ -1,14 +0,0 @@ -# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY -_commit: v4.3.8 -_src_path: https://github.com/jupyterlab/extension-template -author_email: '' -author_name: gjmooney -has_binder: false -has_settings: false -kind: frontend -labextension_name: jupyter-css-loader -project_short_description: A JupyterLab extension. -python_name: jupyter_css_loader -repository: '' -test: true - diff --git a/packages/css-extension/.github/workflows/build.yml b/packages/css-extension/.github/workflows/build.yml deleted file mode 100644 index b073659..0000000 --- a/packages/css-extension/.github/workflows/build.yml +++ /dev/null @@ -1,153 +0,0 @@ -name: Build - -on: - push: - branches: main - pull_request: - branches: '*' - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Base Setup - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - - name: Install dependencies - run: python -m pip install -U "jupyterlab>=4.0.0,<5" - - - name: Lint the extension - run: | - set -eux - jlpm - jlpm run lint:check - - - name: Test the extension - run: | - set -eux - jlpm run test - - - name: Build the extension - run: | - set -eux - python -m pip install .[test] - - jupyter labextension list - jupyter labextension list 2>&1 | grep -ie "jupyter-css-loader.*OK" - python -m jupyterlab.browser_check - - - name: Package the extension - run: | - set -eux - - pip install build - python -m build - pip uninstall -y "jupyter_css_loader" jupyterlab - - - name: Upload extension packages - uses: actions/upload-artifact@v4 - with: - name: extension-artifacts - path: dist/jupyter_css_loader* - if-no-files-found: error - - test_isolated: - needs: build - runs-on: ubuntu-latest - - steps: - - name: Install Python - uses: actions/setup-python@v5 - with: - python-version: '3.9' - architecture: 'x64' - - uses: actions/download-artifact@v4 - with: - name: extension-artifacts - - name: Install and Test - run: | - set -eux - # Remove NodeJS, twice to take care of system and locally installed node versions. - sudo rm -rf $(which node) - sudo rm -rf $(which node) - - pip install "jupyterlab>=4.0.0,<5" jupyter_css_loader*.whl - - - jupyter labextension list - jupyter labextension list 2>&1 | grep -ie "jupyter-css-loader.*OK" - python -m jupyterlab.browser_check --no-browser-test - - integration-tests: - name: Integration tests - needs: build - runs-on: ubuntu-latest - - env: - PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/pw-browsers - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Base Setup - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - - name: Download extension package - uses: actions/download-artifact@v4 - with: - name: extension-artifacts - - - name: Install the extension - run: | - set -eux - python -m pip install "jupyterlab>=4.0.0,<5" jupyter_css_loader*.whl - - - name: Install dependencies - working-directory: ui-tests - env: - YARN_ENABLE_IMMUTABLE_INSTALLS: 0 - PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1 - run: jlpm install - - - name: Set up browser cache - uses: actions/cache@v4 - with: - path: | - ${{ github.workspace }}/pw-browsers - key: ${{ runner.os }}-${{ hashFiles('ui-tests/yarn.lock') }} - - - name: Install browser - run: jlpm playwright install chromium - working-directory: ui-tests - - - name: Execute integration tests - working-directory: ui-tests - run: | - jlpm playwright test - - - name: Upload Playwright Test report - if: always() - uses: actions/upload-artifact@v4 - with: - name: jupyter_css_loader-playwright-tests - path: | - ui-tests/test-results - ui-tests/playwright-report - - check_links: - name: Check Links - runs-on: ubuntu-latest - timeout-minutes: 15 - steps: - - uses: actions/checkout@v4 - - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1 diff --git a/packages/css-extension/.github/workflows/check-release.yml b/packages/css-extension/.github/workflows/check-release.yml deleted file mode 100644 index c744278..0000000 --- a/packages/css-extension/.github/workflows/check-release.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: Check Release -on: - push: - branches: ["main"] - pull_request: - branches: ["*"] - -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -jobs: - check_release: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Base Setup - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - name: Check Release - uses: jupyter-server/jupyter_releaser/.github/actions/check-release@v2 - with: - - token: ${{ secrets.GITHUB_TOKEN }} - - - name: Upload Distributions - uses: actions/upload-artifact@v4 - with: - name: jupyter_css_loader-releaser-dist-${{ github.run_number }} - path: .jupyter_releaser_checkout/dist diff --git a/packages/css-extension/.github/workflows/enforce-label.yml b/packages/css-extension/.github/workflows/enforce-label.yml deleted file mode 100644 index 725feab..0000000 --- a/packages/css-extension/.github/workflows/enforce-label.yml +++ /dev/null @@ -1,13 +0,0 @@ -name: Enforce PR label - -on: - pull_request: - types: [labeled, unlabeled, opened, edited, synchronize] -jobs: - enforce-label: - runs-on: ubuntu-latest - permissions: - pull-requests: write - steps: - - name: enforce-triage-label - uses: jupyterlab/maintainer-tools/.github/actions/enforce-label@v1 diff --git a/packages/css-extension/.github/workflows/prep-release.yml b/packages/css-extension/.github/workflows/prep-release.yml deleted file mode 100644 index 67ecd98..0000000 --- a/packages/css-extension/.github/workflows/prep-release.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: "Step 1: Prep Release" -on: - workflow_dispatch: - inputs: - version_spec: - description: "New Version Specifier" - default: "next" - required: false - branch: - description: "The branch to target" - required: false - post_version_spec: - description: "Post Version Specifier" - required: false - # silent: - # description: "Set a placeholder in the changelog and don't publish the release." - # required: false - # type: boolean - since: - description: "Use PRs with activity since this date or git reference" - required: false - since_last_stable: - description: "Use PRs with activity since the last stable git tag" - required: false - type: boolean -jobs: - prep_release: - runs-on: ubuntu-latest - permissions: - contents: write - steps: - - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - - name: Prep Release - id: prep-release - uses: jupyter-server/jupyter_releaser/.github/actions/prep-release@v2 - with: - token: ${{ secrets.GITHUB_TOKEN }} - version_spec: ${{ github.event.inputs.version_spec }} - # silent: ${{ github.event.inputs.silent }} - post_version_spec: ${{ github.event.inputs.post_version_spec }} - branch: ${{ github.event.inputs.branch }} - since: ${{ github.event.inputs.since }} - since_last_stable: ${{ github.event.inputs.since_last_stable }} - - - name: "** Next Step **" - run: | - echo "Optional): Review Draft Release: ${{ steps.prep-release.outputs.release_url }}" diff --git a/packages/css-extension/.github/workflows/publish-release.yml b/packages/css-extension/.github/workflows/publish-release.yml deleted file mode 100644 index c188106..0000000 --- a/packages/css-extension/.github/workflows/publish-release.yml +++ /dev/null @@ -1,58 +0,0 @@ -name: "Step 2: Publish Release" -on: - workflow_dispatch: - inputs: - branch: - description: "The target branch" - required: false - release_url: - description: "The URL of the draft GitHub release" - required: false - steps_to_skip: - description: "Comma separated list of steps to skip" - required: false - -jobs: - publish_release: - runs-on: ubuntu-latest - environment: release - permissions: - id-token: write - steps: - - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - - uses: actions/create-github-app-token@v1 - id: app-token - with: - app-id: ${{ vars.APP_ID }} - private-key: ${{ secrets.APP_PRIVATE_KEY }} - - - name: Populate Release - id: populate-release - uses: jupyter-server/jupyter_releaser/.github/actions/populate-release@v2 - with: - token: ${{ steps.app-token.outputs.token }} - branch: ${{ github.event.inputs.branch }} - release_url: ${{ github.event.inputs.release_url }} - steps_to_skip: ${{ github.event.inputs.steps_to_skip }} - - - name: Finalize Release - id: finalize-release - env: - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - uses: jupyter-server/jupyter_releaser/.github/actions/finalize-release@v2 - with: - token: ${{ steps.app-token.outputs.token }} - release_url: ${{ steps.populate-release.outputs.release_url }} - - - name: "** Next Step **" - if: ${{ success() }} - run: | - echo "Verify the final release" - echo ${{ steps.finalize-release.outputs.release_url }} - - - name: "** Failure Message **" - if: ${{ failure() }} - run: | - echo "Failed to Publish the Draft Release Url:" - echo ${{ steps.populate-release.outputs.release_url }} diff --git a/packages/css-extension/.github/workflows/update-integration-tests.yml b/packages/css-extension/.github/workflows/update-integration-tests.yml deleted file mode 100644 index 68a4168..0000000 --- a/packages/css-extension/.github/workflows/update-integration-tests.yml +++ /dev/null @@ -1,89 +0,0 @@ -name: Update Playwright Snapshots - -on: - issue_comment: - types: [created, edited] - -permissions: - contents: write - pull-requests: write - -jobs: - update-snapshots: - if: > - ( - github.event.issue.author_association == 'OWNER' || - github.event.issue.author_association == 'COLLABORATOR' || - github.event.issue.author_association == 'MEMBER' || - github.event.comment.author_association == 'OWNER' || - github.event.comment.author_association == 'COLLABORATOR' || - github.event.comment.author_association == 'MEMBER' - ) && github.event.issue.pull_request && contains(github.event.comment.body, 'please update snapshots') - runs-on: ubuntu-latest - - steps: - - name: React to the triggering comment - run: | - gh api repos/${{ github.repository }}/issues/comments/${{ github.event.comment.id }}/reactions --raw-field 'content=+1' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Checkout - uses: actions/checkout@v4 - with: - token: ${{ secrets.GITHUB_TOKEN }} - - - name: Get PR Info - id: pr - env: - PR_NUMBER: ${{ github.event.issue.number }} - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - GH_REPO: ${{ github.repository }} - COMMENT_AT: ${{ github.event.comment.created_at }} - run: | - pr="$(gh api /repos/${GH_REPO}/pulls/${PR_NUMBER})" - head_sha="$(echo "$pr" | jq -r .head.sha)" - pushed_at="$(echo "$pr" | jq -r .pushed_at)" - - if [[ $(date -d "$pushed_at" +%s) -gt $(date -d "$COMMENT_AT" +%s) ]]; then - echo "Updating is not allowed because the PR was pushed to (at $pushed_at) after the triggering comment was issued (at $COMMENT_AT)" - exit 1 - fi - - echo "head_sha=$head_sha" >> $GITHUB_OUTPUT - - - name: Checkout the branch from the PR that triggered the job - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: gh pr checkout ${{ github.event.issue.number }} - - - name: Validate the fetched branch HEAD revision - env: - EXPECTED_SHA: ${{ steps.pr.outputs.head_sha }} - run: | - actual_sha="$(git rev-parse HEAD)" - - if [[ "$actual_sha" != "$EXPECTED_SHA" ]]; then - echo "The HEAD of the checked out branch ($actual_sha) differs from the HEAD commit available at the time when trigger comment was submitted ($EXPECTED_SHA)" - exit 1 - fi - - - name: Base Setup - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 - - - name: Install dependencies - run: python -m pip install -U "jupyterlab>=4.0.0,<5" - - - name: Install extension - run: | - set -eux - jlpm - python -m pip install . - - - uses: jupyterlab/maintainer-tools/.github/actions/update-snapshots@v1 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - # Playwright knows how to start JupyterLab server - start_server_script: 'null' - test_folder: ui-tests - npm_client: jlpm diff --git a/packages/css-extension/.gitignore b/packages/css-extension/.gitignore deleted file mode 100644 index fd42c24..0000000 --- a/packages/css-extension/.gitignore +++ /dev/null @@ -1,125 +0,0 @@ -*.bundle.* -lib/ -node_modules/ -*.log -.eslintcache -.stylelintcache -*.egg-info/ -.ipynb_checkpoints -*.tsbuildinfo -jupyter_css_loader/labextension -# Version file is handled by hatchling -jupyter_css_loader/_version.py - -# Integration tests -ui-tests/test-results/ -ui-tests/playwright-report/ - -# Created by https://www.gitignore.io/api/python -# Edit at https://www.gitignore.io/?templates=python - -### Python ### -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -pip-wheel-metadata/ -share/python-wheels/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.nox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage/ -coverage.xml -*.cover -.hypothesis/ -.pytest_cache/ - -# Translations -*.mo -*.pot - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# pyenv -.python-version - -# celery beat schedule file -celerybeat-schedule - -# SageMath parsed files -*.sage.py - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# Mr Developer -.mr.developer.cfg -.project -.pydevproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -.dmypy.json -dmypy.json - -# Pyre type checker -.pyre/ - -# End of https://www.gitignore.io/api/python - -# OSX files -.DS_Store - -# Yarn cache -.yarn/ diff --git a/packages/css-extension/.prettierignore b/packages/css-extension/.prettierignore deleted file mode 100644 index 9051da5..0000000 --- a/packages/css-extension/.prettierignore +++ /dev/null @@ -1,6 +0,0 @@ -node_modules -**/node_modules -**/lib -**/package.json -!/package.json -jupyter_css_loader diff --git a/packages/css-extension/.yarnrc.yml b/packages/css-extension/.yarnrc.yml deleted file mode 100644 index 3186f3f..0000000 --- a/packages/css-extension/.yarnrc.yml +++ /dev/null @@ -1 +0,0 @@ -nodeLinker: node-modules diff --git a/packages/css-extension/CHANGELOG.md b/packages/css-extension/CHANGELOG.md deleted file mode 100644 index 2d352af..0000000 --- a/packages/css-extension/CHANGELOG.md +++ /dev/null @@ -1,5 +0,0 @@ -# Changelog - - - - diff --git a/packages/css-extension/LICENSE b/packages/css-extension/LICENSE deleted file mode 100644 index ff05796..0000000 --- a/packages/css-extension/LICENSE +++ /dev/null @@ -1,29 +0,0 @@ -BSD 3-Clause License - -Copyright (c) 2025, gjmooney -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/packages/css-extension/README.md b/packages/css-extension/README.md deleted file mode 100644 index fb41a71..0000000 --- a/packages/css-extension/README.md +++ /dev/null @@ -1,97 +0,0 @@ -# jupyter_css_loader - - - -A JupyterLab extension. - -## Requirements - -- JupyterLab >= 4.0.0 - -## Install - -To install the extension, execute: - -```bash -pip install jupyter_css_loader -``` - -## Uninstall - -To remove the extension, execute: - -```bash -pip uninstall jupyter_css_loader -``` - -## Contributing - -### Development install - -Note: You will need NodeJS to build the extension package. - -The `jlpm` command is JupyterLab's pinned version of -[yarn](https://yarnpkg.com/) that is installed with JupyterLab. You may use -`yarn` or `npm` in lieu of `jlpm` below. - -```bash -# Clone the repo to your local environment -# Change directory to the jupyter_css_loader directory -# Install package in development mode -pip install -e "." -# Link your development version of the extension with JupyterLab -jupyter labextension develop . --overwrite -# Rebuild extension Typescript source after making changes -jlpm build -``` - -You can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension. - -```bash -# Watch the source directory in one terminal, automatically rebuilding when needed -jlpm watch -# Run JupyterLab in another terminal -jupyter lab -``` - -With the watch command running, every saved change will immediately be built locally and available in your running JupyterLab. Refresh JupyterLab to load the change in your browser (you may need to wait several seconds for the extension to be rebuilt). - -By default, the `jlpm build` command generates the source maps for this extension to make it easier to debug using the browser dev tools. To also generate source maps for the JupyterLab core extensions, you can run the following command: - -```bash -jupyter lab build --minimize=False -``` - -### Development uninstall - -```bash -pip uninstall jupyter_css_loader -``` - -In development mode, you will also need to remove the symlink created by `jupyter labextension develop` -command. To find its location, you can run `jupyter labextension list` to figure out where the `labextensions` -folder is located. Then you can remove the symlink named `jupyter-css-loader` within that folder. - -### Testing the extension - -#### Frontend tests - -This extension is using [Jest](https://jestjs.io/) for JavaScript code testing. - -To execute them, execute: - -```sh -jlpm -jlpm test -``` - -#### Integration tests - -This extension uses [Playwright](https://playwright.dev/docs/intro) for the integration tests (aka user level tests). -More precisely, the JupyterLab helper [Galata](https://github.com/jupyterlab/jupyterlab/tree/master/galata) is used to handle testing the extension in JupyterLab. - -More information are provided within the [ui-tests](./ui-tests/README.md) README. - -### Packaging the extension - -See [RELEASE](RELEASE.md) diff --git a/packages/css-extension/RELEASE.md b/packages/css-extension/RELEASE.md deleted file mode 100644 index 5989a1c..0000000 --- a/packages/css-extension/RELEASE.md +++ /dev/null @@ -1,80 +0,0 @@ -# Making a new release of jupyter_css_loader - -The extension can be published to `PyPI` and `npm` manually or using the [Jupyter Releaser](https://github.com/jupyter-server/jupyter_releaser). - -## Manual release - -### Python package - -This extension can be distributed as Python packages. All of the Python -packaging instructions are in the `pyproject.toml` file to wrap your extension in a -Python package. Before generating a package, you first need to install some tools: - -```bash -pip install build twine hatch -``` - -Bump the version using `hatch`. By default this will create a tag. -See the docs on [hatch-nodejs-version](https://github.com/agoose77/hatch-nodejs-version#semver) for details. - -```bash -hatch version -``` - -Make sure to clean up all the development files before building the package: - -```bash -jlpm clean:all -``` - -You could also clean up the local git repository: - -```bash -git clean -dfX -``` - -To create a Python source package (`.tar.gz`) and the binary package (`.whl`) in the `dist/` directory, do: - -```bash -python -m build -``` - -> `python setup.py sdist bdist_wheel` is deprecated and will not work for this package. - -Then to upload the package to PyPI, do: - -```bash -twine upload dist/* -``` - -### NPM package - -To publish the frontend part of the extension as a NPM package, do: - -```bash -npm login -npm publish --access public -``` - -## Automated releases with the Jupyter Releaser - -The extension repository should already be compatible with the Jupyter Releaser. But -the GitHub repository and the package managers need to be properly set up. Please -follow the instructions of the Jupyter Releaser [checklist](https://jupyter-releaser.readthedocs.io/en/latest/how_to_guides/convert_repo_from_repo.html). - -Here is a summary of the steps to cut a new release: - -- Go to the Actions panel -- Run the "Step 1: Prep Release" workflow -- Check the draft changelog -- Run the "Step 2: Publish Release" workflow - -> [!NOTE] -> Check out the [workflow documentation](https://jupyter-releaser.readthedocs.io/en/latest/get_started/making_release_from_repo.html) -> for more information. - -## Publishing to `conda-forge` - -If the package is not on conda forge yet, check the documentation to learn how to add it: https://conda-forge.org/docs/maintainer/adding_pkgs.html - -Otherwise a bot should pick up the new version publish to PyPI, and open a new PR on the feedstock repository automatically. diff --git a/packages/css-extension/babel.config.js b/packages/css-extension/babel.config.js deleted file mode 100644 index 8b5c764..0000000 --- a/packages/css-extension/babel.config.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('@jupyterlab/testutils/lib/babel.config'); diff --git a/packages/css-extension/install.json b/packages/css-extension/install.json deleted file mode 100644 index d826ad4..0000000 --- a/packages/css-extension/install.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "packageManager": "python", - "packageName": "jupyter_css_loader", - "uninstallInstructions": "Use your Python package manager (pip, conda, etc.) to uninstall the package jupyter_css_loader" -} diff --git a/packages/css-extension/jest.config.js b/packages/css-extension/jest.config.js deleted file mode 100644 index b0471e6..0000000 --- a/packages/css-extension/jest.config.js +++ /dev/null @@ -1,28 +0,0 @@ -const jestJupyterLab = require('@jupyterlab/testutils/lib/jest-config'); - -const esModules = [ - '@codemirror', - '@jupyter/ydoc', - '@jupyterlab/', - 'lib0', - 'nanoid', - 'vscode-ws-jsonrpc', - 'y-protocols', - 'y-websocket', - 'yjs' -].join('|'); - -const baseConfig = jestJupyterLab(__dirname); - -module.exports = { - ...baseConfig, - automock: false, - collectCoverageFrom: [ - 'src/**/*.{ts,tsx}', - '!src/**/*.d.ts', - '!src/**/.ipynb_checkpoints/*' - ], - coverageReporters: ['lcov', 'text'], - testRegex: 'src/.*/.*.spec.ts[x]?$', - transformIgnorePatterns: [`/node_modules/(?!${esModules}).+`] -}; diff --git a/packages/css-extension/jupyter_css_loader/__init__.py b/packages/css-extension/jupyter_css_loader/__init__.py deleted file mode 100644 index b1ae025..0000000 --- a/packages/css-extension/jupyter_css_loader/__init__.py +++ /dev/null @@ -1,16 +0,0 @@ -try: - from ._version import __version__ -except ImportError: - # Fallback when using the package in dev mode without installing - # in editable mode with pip. It is highly recommended to install - # the package from a stable release or in editable mode: https://pip.pypa.io/en/stable/topics/local-project-installs/#editable-installs - import warnings - warnings.warn("Importing 'jupyter_css_loader' outside a proper installation.") - __version__ = "dev" - - -def _jupyter_labextension_paths(): - return [{ - "src": "labextension", - "dest": "jupyter-css-loader" - }] diff --git a/packages/css-extension/package.json b/packages/css-extension/package.json deleted file mode 100644 index 7b9a2ef..0000000 --- a/packages/css-extension/package.json +++ /dev/null @@ -1,191 +0,0 @@ -{ - "name": "jupyter-css-loader", - "version": "0.1.0", - "description": "A JupyterLab extension.", - "keywords": [ - "jupyter", - "jupyterlab", - "jupyterlab-extension" - ], - "homepage": "", - "bugs": { - "url": "https://github.com/TileDB-Inc/jupyter-iframe-commands/issues" - }, - "license": "BSD-3-Clause", - "author": "gjmooney", - "files": [ - "lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}", - "style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}", - "src/**/*.{ts,tsx}" - ], - "main": "lib/index.js", - "types": "lib/index.d.ts", - "style": "style/index.css", - "repository": { - "type": "git", - "url": "https://github.com/TileDB-Inc/jupyter-iframe-commands.git" - }, - "scripts": { - "build": "jlpm build:lib && jlpm build:labextension:dev", - "build:prod": "jlpm clean && jlpm build:lib:prod && jlpm build:labextension", - "build:labextension": "jupyter labextension build .", - "build:labextension:dev": "jupyter labextension build --development True .", - "build:lib": "tsc --sourceMap", - "build:lib:prod": "tsc", - "clean": "jlpm clean:lib", - "clean:lib": "rimraf lib tsconfig.tsbuildinfo", - "clean:lintcache": "rimraf .eslintcache .stylelintcache", - "clean:labextension": "rimraf jupyter_css_loader/labextension jupyter_css_loader/_version.py", - "clean:all": "jlpm clean:lib && jlpm clean:labextension && jlpm clean:lintcache", - "eslint": "jlpm eslint:check --fix", - "eslint:check": "eslint . --cache --ext .ts,.tsx", - "install:extension": "jlpm build", - "lint": "jlpm stylelint && jlpm prettier && jlpm eslint", - "lint:check": "jlpm stylelint:check && jlpm prettier:check && jlpm eslint:check", - "prettier": "jlpm prettier:base --write --list-different", - "prettier:base": "prettier \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", - "prettier:check": "jlpm prettier:base --check", - "stylelint": "jlpm stylelint:check --fix", - "stylelint:check": "stylelint --cache \"style/**/*.css\"", - "test": "jest --coverage", - "watch": "run-p watch:src watch:labextension", - "watch:src": "tsc -w --sourceMap", - "watch:labextension": "jupyter labextension watch ." - }, - "dependencies": { - "@jupyterlab/application": "^4.0.0" - }, - "devDependencies": { - "@jupyterlab/builder": "^4.0.0", - "@jupyterlab/testutils": "^4.0.0", - "@types/jest": "^29.2.0", - "@types/json-schema": "^7.0.11", - "@types/react": "^18.0.26", - "@types/react-addons-linked-state-mixin": "^0.14.22", - "@typescript-eslint/eslint-plugin": "^6.1.0", - "@typescript-eslint/parser": "^6.1.0", - "css-loader": "^6.7.1", - "eslint": "^8.36.0", - "eslint-config-prettier": "^8.8.0", - "eslint-plugin-prettier": "^5.0.0", - "jest": "^29.2.0", - "npm-run-all2": "^7.0.1", - "prettier": "^3.0.0", - "rimraf": "^5.0.1", - "source-map-loader": "^1.0.2", - "style-loader": "^3.3.1", - "stylelint": "^15.10.1", - "stylelint-config-recommended": "^13.0.0", - "stylelint-config-standard": "^34.0.0", - "stylelint-csstree-validator": "^3.0.0", - "stylelint-prettier": "^4.0.0", - "typescript": "~5.0.2", - "yjs": "^13.5.0" - }, - "sideEffects": [ - "style/*.css", - "style/index.js" - ], - "styleModule": "style/index.js", - "publishConfig": { - "access": "public" - }, - "jupyterlab": { - "extension": true, - "outputDir": "jupyter_css_loader/labextension" - }, - "eslintIgnore": [ - "node_modules", - "dist", - "coverage", - "**/*.d.ts", - "tests", - "**/__tests__", - "ui-tests" - ], - "eslintConfig": { - "extends": [ - "eslint:recommended", - "plugin:@typescript-eslint/eslint-recommended", - "plugin:@typescript-eslint/recommended", - "plugin:prettier/recommended" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "project": "tsconfig.json", - "sourceType": "module" - }, - "plugins": [ - "@typescript-eslint" - ], - "rules": { - "@typescript-eslint/naming-convention": [ - "error", - { - "selector": "interface", - "format": [ - "PascalCase" - ], - "custom": { - "regex": "^I[A-Z]", - "match": true - } - } - ], - "@typescript-eslint/no-unused-vars": [ - "warn", - { - "args": "none" - } - ], - "@typescript-eslint/no-explicit-any": "off", - "@typescript-eslint/no-namespace": "off", - "@typescript-eslint/no-use-before-define": "off", - "@typescript-eslint/quotes": [ - "error", - "single", - { - "avoidEscape": true, - "allowTemplateLiterals": false - } - ], - "curly": [ - "error", - "all" - ], - "eqeqeq": "error", - "prefer-arrow-callback": "error" - } - }, - "prettier": { - "singleQuote": true, - "trailingComma": "none", - "arrowParens": "avoid", - "endOfLine": "auto", - "overrides": [ - { - "files": "package.json", - "options": { - "tabWidth": 4 - } - } - ] - }, - "stylelint": { - "extends": [ - "stylelint-config-recommended", - "stylelint-config-standard", - "stylelint-prettier/recommended" - ], - "plugins": [ - "stylelint-csstree-validator" - ], - "rules": { - "csstree/validator": true, - "property-no-vendor-prefix": null, - "selector-class-pattern": "^([a-z][A-z\\d]*)(-[A-z\\d]+)*$", - "selector-no-vendor-prefix": null, - "value-no-vendor-prefix": null - } - } -} diff --git a/packages/css-extension/pyproject.toml b/packages/css-extension/pyproject.toml deleted file mode 100644 index 8828e60..0000000 --- a/packages/css-extension/pyproject.toml +++ /dev/null @@ -1,77 +0,0 @@ -[build-system] -requires = ["hatchling>=1.5.0", "jupyterlab>=4.0.0,<5", "hatch-nodejs-version>=0.3.2"] -build-backend = "hatchling.build" - -[project] -name = "jupyter_css_loader" -readme = "README.md" -license = { file = "LICENSE" } -requires-python = ">=3.9" -classifiers = [ - "Framework :: Jupyter", - "Framework :: Jupyter :: JupyterLab", - "Framework :: Jupyter :: JupyterLab :: 4", - "Framework :: Jupyter :: JupyterLab :: Extensions", - "Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt", - "License :: OSI Approved :: BSD License", - "Programming Language :: Python", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", - "Programming Language :: Python :: 3.13", -] -dependencies = [ -] -dynamic = ["version", "description", "authors", "urls", "keywords"] - -[tool.hatch.version] -source = "nodejs" - -[tool.hatch.metadata.hooks.nodejs] -fields = ["description", "authors", "urls", "keywords"] - -[tool.hatch.build.targets.sdist] -artifacts = ["jupyter_css_loader/labextension"] -exclude = [".github", "binder"] - -[tool.hatch.build.targets.wheel.shared-data] -"jupyter_css_loader/labextension" = "share/jupyter/labextensions/jupyter-css-loader" -"install.json" = "share/jupyter/labextensions/jupyter-css-loader/install.json" - -[tool.hatch.build.hooks.version] -path = "jupyter_css_loader/_version.py" - -[tool.hatch.build.hooks.jupyter-builder] -dependencies = ["hatch-jupyter-builder>=0.5"] -build-function = "hatch_jupyter_builder.npm_builder" -ensured-targets = [ - "jupyter_css_loader/labextension/static/style.js", - "jupyter_css_loader/labextension/package.json", -] -skip-if-exists = ["jupyter_css_loader/labextension/static/style.js"] - -[tool.hatch.build.hooks.jupyter-builder.build-kwargs] -build_cmd = "build:prod" -npm = ["jlpm"] - -[tool.hatch.build.hooks.jupyter-builder.editable-build-kwargs] -build_cmd = "install:extension" -npm = ["jlpm"] -source_dir = "src" -build_dir = "jupyter_css_loader/labextension" - -[tool.jupyter-releaser.options] -version_cmd = "hatch version" - -[tool.jupyter-releaser.hooks] -before-build-npm = [ - "python -m pip install 'jupyterlab>=4.0.0,<5'", - "jlpm", - "jlpm build:prod" -] -before-build-python = ["jlpm clean:all"] - -[tool.check-wheel-contents] -ignore = ["W002"] diff --git a/packages/css-extension/setup.py b/packages/css-extension/setup.py deleted file mode 100644 index aefdf20..0000000 --- a/packages/css-extension/setup.py +++ /dev/null @@ -1 +0,0 @@ -__import__("setuptools").setup() diff --git a/packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts b/packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts deleted file mode 100644 index 65ade7e..0000000 --- a/packages/css-extension/src/__tests__/jupyter_css_loader.spec.ts +++ /dev/null @@ -1,9 +0,0 @@ -/** - * Example of [Jest](https://jestjs.io/docs/getting-started) unit tests - */ - -describe('jupyter-css-loader', () => { - it('should be tested', () => { - expect(1 + 1).toEqual(2); - }); -}); diff --git a/packages/css-extension/src/index.ts b/packages/css-extension/src/index.ts deleted file mode 100644 index d2b1ab3..0000000 --- a/packages/css-extension/src/index.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { - JupyterFrontEnd, - JupyterFrontEndPlugin -} from '@jupyterlab/application'; -import { TerminalAPI } from '@jupyterlab/services'; - -/** - * Initialization data for the jupyter-css-loader extension. - */ -const plugin: JupyterFrontEndPlugin = { - id: 'jupyter-css-loader:plugin', - description: 'A JupyterLab extension.', - autoStart: true, - activate: (app: JupyterFrontEnd) => { - console.log('JupyterLab extension jupyter-css-loader is activated!'); - const { commands } = app; - - commands.addCommand('jupyter-import-css', { - execute: args => { - const styleTag = document.createElement('style'); - - styleTag.id = 'searchText'; - styleTag.innerText = args['parsedCSS'] as string; - - document.head.appendChild(styleTag); - } - }); - - commands.addCommand('shutdown-all-terminals', { - execute: args => { - console.log('args', args); - console.log('args', args['name'] as string); - TerminalAPI.shutdownTerminal(args['name'] as string); - } - }); - } -}; - -export default plugin; diff --git a/packages/css-extension/style/base.css b/packages/css-extension/style/base.css deleted file mode 100644 index e11f457..0000000 --- a/packages/css-extension/style/base.css +++ /dev/null @@ -1,5 +0,0 @@ -/* - See the JupyterLab Developer Guide for useful CSS Patterns: - - https://jupyterlab.readthedocs.io/en/stable/developer/css.html -*/ diff --git a/packages/css-extension/style/index.css b/packages/css-extension/style/index.css deleted file mode 100644 index 8a7ea29..0000000 --- a/packages/css-extension/style/index.css +++ /dev/null @@ -1 +0,0 @@ -@import url('base.css'); diff --git a/packages/css-extension/style/index.js b/packages/css-extension/style/index.js deleted file mode 100644 index a028a76..0000000 --- a/packages/css-extension/style/index.js +++ /dev/null @@ -1 +0,0 @@ -import './base.css'; diff --git a/packages/css-extension/tsconfig.json b/packages/css-extension/tsconfig.json deleted file mode 100644 index 25af040..0000000 --- a/packages/css-extension/tsconfig.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "compilerOptions": { - "allowSyntheticDefaultImports": true, - "composite": true, - "declaration": true, - "esModuleInterop": true, - "incremental": true, - "jsx": "react", - "lib": ["DOM", "ES2018", "ES2020.Intl"], - "module": "esnext", - "moduleResolution": "node", - "noEmitOnError": true, - "noImplicitAny": true, - "noUnusedLocals": true, - "preserveWatchOutput": true, - "resolveJsonModule": true, - "outDir": "lib", - "rootDir": "src", - "strict": true, - "strictNullChecks": true, - "target": "ES2018", - "types": ["jest"] - }, - "include": ["src/*"] -} diff --git a/packages/css-extension/tsconfig.test.json b/packages/css-extension/tsconfig.test.json deleted file mode 100644 index 1c66acf..0000000 --- a/packages/css-extension/tsconfig.test.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "./tsconfig" -} diff --git a/packages/css-extension/ui-tests/README.md b/packages/css-extension/ui-tests/README.md deleted file mode 100644 index 9182514..0000000 --- a/packages/css-extension/ui-tests/README.md +++ /dev/null @@ -1,167 +0,0 @@ -# Integration Testing - -This folder contains the integration tests of the extension. - -They are defined using [Playwright](https://playwright.dev/docs/intro) test runner -and [Galata](https://github.com/jupyterlab/jupyterlab/tree/main/galata) helper. - -The Playwright configuration is defined in [playwright.config.js](./playwright.config.js). - -The JupyterLab server configuration to use for the integration test is defined -in [jupyter_server_test_config.py](./jupyter_server_test_config.py). - -The default configuration will produce video for failing tests and an HTML report. - -> There is a UI mode that you may like; see [that video](https://www.youtube.com/watch?v=jF0yA-JLQW0). - -## Run the tests - -> All commands are assumed to be executed from the root directory - -To run the tests, you need to: - -1. Compile the extension: - -```sh -jlpm install -jlpm build:prod -``` - -> Check the extension is installed in JupyterLab. - -2. Install test dependencies (needed only once): - -```sh -cd ./ui-tests -jlpm install -jlpm playwright install -cd .. -``` - -3. Execute the [Playwright](https://playwright.dev/docs/intro) tests: - -```sh -cd ./ui-tests -jlpm playwright test -``` - -Test results will be shown in the terminal. In case of any test failures, the test report -will be opened in your browser at the end of the tests execution; see -[Playwright documentation](https://playwright.dev/docs/test-reporters#html-reporter) -for configuring that behavior. - -## Update the tests snapshots - -> All commands are assumed to be executed from the root directory - -If you are comparing snapshots to validate your tests, you may need to update -the reference snapshots stored in the repository. To do that, you need to: - -1. Compile the extension: - -```sh -jlpm install -jlpm build:prod -``` - -> Check the extension is installed in JupyterLab. - -2. Install test dependencies (needed only once): - -```sh -cd ./ui-tests -jlpm install -jlpm playwright install -cd .. -``` - -3. Execute the [Playwright](https://playwright.dev/docs/intro) command: - -```sh -cd ./ui-tests -jlpm playwright test -u -``` - -> Some discrepancy may occurs between the snapshots generated on your computer and -> the one generated on the CI. To ease updating the snapshots on a PR, you can -> type `please update playwright snapshots` to trigger the update by a bot on the CI. -> Once the bot has computed new snapshots, it will commit them to the PR branch. - -## Create tests - -> All commands are assumed to be executed from the root directory - -To create tests, the easiest way is to use the code generator tool of playwright: - -1. Compile the extension: - -```sh -jlpm install -jlpm build:prod -``` - -> Check the extension is installed in JupyterLab. - -2. Install test dependencies (needed only once): - -```sh -cd ./ui-tests -jlpm install -jlpm playwright install -cd .. -``` - -3. Start the server: - -```sh -cd ./ui-tests -jlpm start -``` - -4. Execute the [Playwright code generator](https://playwright.dev/docs/codegen) in **another terminal**: - -```sh -cd ./ui-tests -jlpm playwright codegen localhost:8888 -``` - -## Debug tests - -> All commands are assumed to be executed from the root directory - -To debug tests, a good way is to use the inspector tool of playwright: - -1. Compile the extension: - -```sh -jlpm install -jlpm build:prod -``` - -> Check the extension is installed in JupyterLab. - -2. Install test dependencies (needed only once): - -```sh -cd ./ui-tests -jlpm install -jlpm playwright install -cd .. -``` - -3. Execute the Playwright tests in [debug mode](https://playwright.dev/docs/debug): - -```sh -cd ./ui-tests -jlpm playwright test --debug -``` - -## Upgrade Playwright and the browsers - -To update the web browser versions, you must update the package `@playwright/test`: - -```sh -cd ./ui-tests -jlpm up "@playwright/test" -jlpm playwright install -``` diff --git a/packages/css-extension/ui-tests/jupyter_server_test_config.py b/packages/css-extension/ui-tests/jupyter_server_test_config.py deleted file mode 100644 index f2a9478..0000000 --- a/packages/css-extension/ui-tests/jupyter_server_test_config.py +++ /dev/null @@ -1,12 +0,0 @@ -"""Server configuration for integration tests. - -!! Never use this configuration in production because it -opens the server to the world and provide access to JupyterLab -JavaScript objects through the global window variable. -""" -from jupyterlab.galata import configure_jupyter_server - -configure_jupyter_server(c) - -# Uncomment to set server log level to debug level -# c.ServerApp.log_level = "DEBUG" diff --git a/packages/css-extension/ui-tests/package.json b/packages/css-extension/ui-tests/package.json deleted file mode 100644 index f7e193c..0000000 --- a/packages/css-extension/ui-tests/package.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "jupyter-css-loader-ui-tests", - "version": "1.0.0", - "description": "JupyterLab jupyter-css-loader Integration Tests", - "private": true, - "scripts": { - "start": "jupyter lab --config jupyter_server_test_config.py", - "test": "jlpm playwright test", - "test:update": "jlpm playwright test --update-snapshots" - }, - "devDependencies": { - "@jupyterlab/galata": "^5.0.5", - "@playwright/test": "^1.37.0" - } -} diff --git a/packages/css-extension/ui-tests/playwright.config.js b/packages/css-extension/ui-tests/playwright.config.js deleted file mode 100644 index 9ece6fa..0000000 --- a/packages/css-extension/ui-tests/playwright.config.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Configuration for Playwright using default from @jupyterlab/galata - */ -const baseConfig = require('@jupyterlab/galata/lib/playwright-config'); - -module.exports = { - ...baseConfig, - webServer: { - command: 'jlpm start', - url: 'http://localhost:8888/lab', - timeout: 120 * 1000, - reuseExistingServer: !process.env.CI - } -}; diff --git a/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts b/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts deleted file mode 100644 index 121787e..0000000 --- a/packages/css-extension/ui-tests/tests/jupyter_css_loader.spec.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { expect, test } from '@jupyterlab/galata'; - -/** - * Don't load JupyterLab webpage before running the tests. - * This is required to ensure we capture all log messages. - */ -test.use({ autoGoto: false }); - -test('should emit an activation console message', async ({ page }) => { - const logs: string[] = []; - - page.on('console', message => { - logs.push(message.text()); - }); - - await page.goto(); - - expect( - logs.filter( - s => s === 'JupyterLab extension jupyter-css-loader is activated!' - ) - ).toHaveLength(1); -}); diff --git a/packages/css-extension/ui-tests/yarn.lock b/packages/css-extension/ui-tests/yarn.lock deleted file mode 100644 index e69de29..0000000 diff --git a/yarn.lock b/yarn.lock index 8492c41..54bc79a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,17 +5,7 @@ __metadata: version: 6 cacheKey: 8 -"@ampproject/remapping@npm:^2.2.0": - version: 2.3.0 - resolution: "@ampproject/remapping@npm:2.3.0" - dependencies: - "@jridgewell/gen-mapping": ^0.3.5 - "@jridgewell/trace-mapping": ^0.3.24 - checksum: d3ad7b89d973df059c4e8e6d7c972cbeb1bb2f18f002a3bd04ae0707da214cb06cc06929b65aa2313b9347463df2914772298bae8b1d7973f246bb3f2ab3e8f0 - languageName: node - linkType: hard - -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.26.2": +"@babel/code-frame@npm:^7.0.0": version: 7.26.2 resolution: "@babel/code-frame@npm:7.26.2" dependencies: @@ -26,2230 +16,280 @@ __metadata: languageName: node linkType: hard -"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.26.5, @babel/compat-data@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/compat-data@npm:7.26.8" - checksum: 1bb04c6860c8c9555b933cb9c3caf5ef1dac331a37a351efb67956fc679f695d487aea76e792dd43823702c1300f7906f2a298e50b4a8d7ec199ada9c340c365 - languageName: node - linkType: hard - -"@babel/core@npm:^7.10.2, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.9, @babel/core@npm:^7.26.0": - version: 7.26.10 - resolution: "@babel/core@npm:7.26.10" - dependencies: - "@ampproject/remapping": ^2.2.0 - "@babel/code-frame": ^7.26.2 - "@babel/generator": ^7.26.10 - "@babel/helper-compilation-targets": ^7.26.5 - "@babel/helper-module-transforms": ^7.26.0 - "@babel/helpers": ^7.26.10 - "@babel/parser": ^7.26.10 - "@babel/template": ^7.26.9 - "@babel/traverse": ^7.26.10 - "@babel/types": ^7.26.10 - convert-source-map: ^2.0.0 - debug: ^4.1.0 - gensync: ^1.0.0-beta.2 - json5: ^2.2.3 - semver: ^6.3.1 - checksum: 0217325bd46fb9c828331c14dbe3f015ee13d9aecec423ef5acc0ce8b51a3d2a2d55f2ede252b99d0ab9b2f1a06e2881694a890f92006aeac9ebe5be2914c089 - languageName: node - linkType: hard - -"@babel/generator@npm:^7.26.10, @babel/generator@npm:^7.7.2": - version: 7.26.10 - resolution: "@babel/generator@npm:7.26.10" - dependencies: - "@babel/parser": ^7.26.10 - "@babel/types": ^7.26.10 - "@jridgewell/gen-mapping": ^0.3.5 - "@jridgewell/trace-mapping": ^0.3.25 - jsesc: ^3.0.2 - checksum: b047378cb4fdb54adae53a7e9648f1585c2e3ddd3a4019e36bf4b4554029c84872891234fc9c9519570448a1cb47430b2bf46524cf618c94d6d09985cf6428e1 - languageName: node - linkType: hard - -"@babel/helper-annotate-as-pure@npm:^7.25.9": +"@babel/helper-validator-identifier@npm:^7.25.9": version: 7.25.9 - resolution: "@babel/helper-annotate-as-pure@npm:7.25.9" - dependencies: - "@babel/types": ^7.25.9 - checksum: 41edda10df1ae106a9b4fe617bf7c6df77db992992afd46192534f5cff29f9e49a303231733782dd65c5f9409714a529f215325569f14282046e9d3b7a1ffb6c + resolution: "@babel/helper-validator-identifier@npm:7.25.9" + checksum: 5b85918cb1a92a7f3f508ea02699e8d2422fe17ea8e82acd445006c0ef7520fbf48e3dbcdaf7b0a1d571fc3a2715a29719e5226636cb6042e15fe6ed2a590944 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.25.9, @babel/helper-compilation-targets@npm:^7.26.5": - version: 7.26.5 - resolution: "@babel/helper-compilation-targets@npm:7.26.5" +"@codemirror/state@npm:^6.4.1": + version: 6.5.2 + resolution: "@codemirror/state@npm:6.5.2" dependencies: - "@babel/compat-data": ^7.26.5 - "@babel/helper-validator-option": ^7.25.9 - browserslist: ^4.24.0 - lru-cache: ^5.1.1 - semver: ^6.3.1 - checksum: 6bc0107613bf1d4d21913606e8e517194e5099a24db2a8374568e56ef4626e8140f9b8f8a4aabc35479f5904459a0aead2a91ee0dc63aae110ccbc2bc4b4fda1 + "@marijn/find-cluster-break": ^1.0.0 + checksum: 4473a79475070d73f2e72f2eaaee5b69d2833b5020faa9714609d95dd03f0e5ad02cad8031a541dcd748436842a300332a2925317b39ffa09e3b4831145d98bc languageName: node linkType: hard -"@babel/helper-create-class-features-plugin@npm:^7.25.9": - version: 7.26.9 - resolution: "@babel/helper-create-class-features-plugin@npm:7.26.9" - dependencies: - "@babel/helper-annotate-as-pure": ^7.25.9 - "@babel/helper-member-expression-to-functions": ^7.25.9 - "@babel/helper-optimise-call-expression": ^7.25.9 - "@babel/helper-replace-supers": ^7.26.5 - "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 - "@babel/traverse": ^7.26.9 - semver: ^6.3.1 +"@csstools/css-parser-algorithms@npm:^2.3.1": + version: 2.7.1 + resolution: "@csstools/css-parser-algorithms@npm:2.7.1" peerDependencies: - "@babel/core": ^7.0.0 - checksum: d445a660d2cdd92e83c04a60f52a304e54e5cc338796b6add9dec00048f1ad12125f78145ab688d029569a9559ef64f8e0de86f456b9e2630ea46f664ffb8e45 + "@csstools/css-tokenizer": ^2.4.1 + checksum: 304e6f92e583042c310e368a82b694af563a395e5c55911caefe52765c5acb000b9daa17356ea8a4dd37d4d50132b76de48ced75159b169b53e134ff78b362ba languageName: node linkType: hard -"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.25.9": - version: 7.26.3 - resolution: "@babel/helper-create-regexp-features-plugin@npm:7.26.3" - dependencies: - "@babel/helper-annotate-as-pure": ^7.25.9 - regexpu-core: ^6.2.0 - semver: ^6.3.1 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 50a27d8ce6da5c2fa0c62c132c4d27cfeb36e3233ff1e5220d643de3dafe49423b507382f0b72a696fce7486014b134c1e742f55438590f9405d26765b009af0 +"@csstools/css-tokenizer@npm:^2.2.0": + version: 2.4.1 + resolution: "@csstools/css-tokenizer@npm:2.4.1" + checksum: 395c51f8724ddc4851d836f484346bb3ea6a67af936dde12cbf9a57ae321372e79dee717cbe4823599eb0e6fd2d5405cf8873450e986c2fca6e6ed82e7b10219 languageName: node linkType: hard -"@babel/helper-define-polyfill-provider@npm:^0.6.3": - version: 0.6.3 - resolution: "@babel/helper-define-polyfill-provider@npm:0.6.3" - dependencies: - "@babel/helper-compilation-targets": ^7.22.6 - "@babel/helper-plugin-utils": ^7.22.5 - debug: ^4.1.1 - lodash.debounce: ^4.0.8 - resolve: ^1.14.2 +"@csstools/media-query-list-parser@npm:^2.1.4": + version: 2.1.13 + resolution: "@csstools/media-query-list-parser@npm:2.1.13" peerDependencies: - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 710e6d8a5391736b9f53f09d0494575c2e03de199ad8d1349bc8e514cb85251ea1f1842c2ff44830849d482052ddb42ae931101002a87a263b12f649c2e57c01 + "@csstools/css-parser-algorithms": ^2.7.1 + "@csstools/css-tokenizer": ^2.4.1 + checksum: 7754b4b9fcc749a51a2bcd34a167ad16e7227ff087f6c4e15b3593d3342413446b72dad37f1adb99c62538730c77e3e47842987ce453fbb3849d329a39ba9ad7 languageName: node linkType: hard -"@babel/helper-member-expression-to-functions@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-member-expression-to-functions@npm:7.25.9" - dependencies: - "@babel/traverse": ^7.25.9 - "@babel/types": ^7.25.9 - checksum: 8e2f1979b6d596ac2a8cbf17f2cf709180fefc274ac3331408b48203fe19134ed87800774ef18838d0275c3965130bae22980d90caed756b7493631d4b2cf961 +"@csstools/selector-specificity@npm:^3.0.0": + version: 3.1.1 + resolution: "@csstools/selector-specificity@npm:3.1.1" + peerDependencies: + postcss-selector-parser: ^6.0.13 + checksum: 3786a6afea97b08ad739ee8f4004f7e0a9e25049cee13af809dbda6462090744012a54bd9275a44712791e8f103f85d21641f14e81799f9dab946b0459a5e1ef languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-module-imports@npm:7.25.9" - dependencies: - "@babel/traverse": ^7.25.9 - "@babel/types": ^7.25.9 - checksum: 1b411ce4ca825422ef7065dffae7d8acef52023e51ad096351e3e2c05837e9bf9fca2af9ca7f28dc26d596a588863d0fedd40711a88e350b736c619a80e704e6 +"@discoveryjs/json-ext@npm:^0.5.0": + version: 0.5.7 + resolution: "@discoveryjs/json-ext@npm:0.5.7" + checksum: 2176d301cc258ea5c2324402997cf8134ebb212469c0d397591636cea8d3c02f2b3cf9fd58dcb748c7a0dade77ebdc1b10284fa63e608c033a1db52fddc69918 languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.25.9, @babel/helper-module-transforms@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/helper-module-transforms@npm:7.26.0" +"@emnapi/core@npm:^1.1.0": + version: 1.3.1 + resolution: "@emnapi/core@npm:1.3.1" dependencies: - "@babel/helper-module-imports": ^7.25.9 - "@babel/helper-validator-identifier": ^7.25.9 - "@babel/traverse": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 942eee3adf2b387443c247a2c190c17c4fd45ba92a23087abab4c804f40541790d51ad5277e4b5b1ed8d5ba5b62de73857446b7742f835c18ebd350384e63917 + "@emnapi/wasi-threads": 1.0.1 + tslib: ^2.4.0 + checksum: 9b4e4bc37e09d901f5d95ca998c4936432a7a2207f33e98e15ae8c9bb34803baa444cef66b8acc80fd701f6634c2718f43709e82432052ea2aa7a71a58cb9164 languageName: node linkType: hard -"@babel/helper-optimise-call-expression@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-optimise-call-expression@npm:7.25.9" +"@emnapi/runtime@npm:^1.1.0": + version: 1.3.1 + resolution: "@emnapi/runtime@npm:1.3.1" dependencies: - "@babel/types": ^7.25.9 - checksum: f09d0ad60c0715b9a60c31841b3246b47d67650c512ce85bbe24a3124f1a4d66377df793af393273bc6e1015b0a9c799626c48e53747581c1582b99167cc65dc - languageName: node - linkType: hard - -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.25.9, @babel/helper-plugin-utils@npm:^7.26.5, @babel/helper-plugin-utils@npm:^7.8.0": - version: 7.26.5 - resolution: "@babel/helper-plugin-utils@npm:7.26.5" - checksum: 4771fbb1711c624c62d12deabc2ed7435a6e6994b6ce09d5ede1bc1bf19be59c3775461a1e693bdd596af865685e87bb2abc778f62ceadc1b2095a8e2aa74180 + tslib: ^2.4.0 + checksum: 9a16ae7905a9c0e8956cf1854ef74e5087fbf36739abdba7aa6b308485aafdc993da07c19d7af104cd5f8e425121120852851bb3a0f78e2160e420a36d47f42f languageName: node linkType: hard -"@babel/helper-remap-async-to-generator@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-remap-async-to-generator@npm:7.25.9" +"@emnapi/wasi-threads@npm:1.0.1": + version: 1.0.1 + resolution: "@emnapi/wasi-threads@npm:1.0.1" dependencies: - "@babel/helper-annotate-as-pure": ^7.25.9 - "@babel/helper-wrap-function": ^7.25.9 - "@babel/traverse": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: ea37ad9f8f7bcc27c109963b8ebb9d22bac7a5db2a51de199cb560e251d5593fe721e46aab2ca7d3e7a24b0aa4aff0eaf9c7307af9c2fd3a1d84268579073052 + tslib: ^2.4.0 + checksum: e154880440ff9bfe67b417f30134f0ff6fee28913dbf4a22de2e67dda5bf5b51055647c5d1565281df17ef5dfcc89256546bdf9b8ccfd07e07566617e7ce1498 languageName: node linkType: hard -"@babel/helper-replace-supers@npm:^7.25.9, @babel/helper-replace-supers@npm:^7.26.5": - version: 7.26.5 - resolution: "@babel/helper-replace-supers@npm:7.26.5" +"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": + version: 4.5.0 + resolution: "@eslint-community/eslint-utils@npm:4.5.0" dependencies: - "@babel/helper-member-expression-to-functions": ^7.25.9 - "@babel/helper-optimise-call-expression": ^7.25.9 - "@babel/traverse": ^7.26.5 + eslint-visitor-keys: ^3.4.3 peerDependencies: - "@babel/core": ^7.0.0 - checksum: c5ab31b29c7cc09e30278f8860ecdb873ce6c84b5c08bc5239c369c7c4fe9f0a63cda61b55b7bbd20edb4e5dc32e73087cc3c57d85264834bd191551d1499185 - languageName: node - linkType: hard - -"@babel/helper-skip-transparent-expression-wrappers@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.25.9" - dependencies: - "@babel/traverse": ^7.25.9 - "@babel/types": ^7.25.9 - checksum: fdbb5248932198bc26daa6abf0d2ac42cab9c2dbb75b7e9f40d425c8f28f09620b886d40e7f9e4e08ffc7aaa2cefe6fc2c44be7c20e81f7526634702fb615bdc - languageName: node - linkType: hard - -"@babel/helper-string-parser@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-string-parser@npm:7.25.9" - checksum: 6435ee0849e101681c1849868278b5aee82686ba2c1e27280e5e8aca6233af6810d39f8e4e693d2f2a44a3728a6ccfd66f72d71826a94105b86b731697cdfa99 - languageName: node - linkType: hard - -"@babel/helper-validator-identifier@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-validator-identifier@npm:7.25.9" - checksum: 5b85918cb1a92a7f3f508ea02699e8d2422fe17ea8e82acd445006c0ef7520fbf48e3dbcdaf7b0a1d571fc3a2715a29719e5226636cb6042e15fe6ed2a590944 + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + checksum: b05ca7881b1db4ac4f29131d4ca07ace219d497f44eafc434331d3d30d2f6452436d96f6fd3fc77761254a79e62f53967e3dd2741678ef3dfe99ad6c01065201 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-validator-option@npm:7.25.9" - checksum: 9491b2755948ebbdd68f87da907283698e663b5af2d2b1b02a2765761974b1120d5d8d49e9175b167f16f72748ffceec8c9cf62acfbee73f4904507b246e2b3d +"@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": + version: 4.12.1 + resolution: "@eslint-community/regexpp@npm:4.12.1" + checksum: 0d628680e204bc316d545b4993d3658427ca404ae646ce541fcc65306b8c712c340e5e573e30fb9f85f4855c0c5f6dca9868931f2fcced06417fbe1a0c6cd2d6 languageName: node linkType: hard -"@babel/helper-wrap-function@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/helper-wrap-function@npm:7.25.9" +"@eslint/eslintrc@npm:^2.1.4": + version: 2.1.4 + resolution: "@eslint/eslintrc@npm:2.1.4" dependencies: - "@babel/template": ^7.25.9 - "@babel/traverse": ^7.25.9 - "@babel/types": ^7.25.9 - checksum: 8ec1701e60ae004415800c4a7a188f5564c73b4e4f3fdf58dd3f34a3feaa9753173f39bbd6d02e7ecc974f48155efc7940e62584435b3092c07728ee46a604ea + ajv: ^6.12.4 + debug: ^4.3.2 + espree: ^9.6.0 + globals: ^13.19.0 + ignore: ^5.2.0 + import-fresh: ^3.2.1 + js-yaml: ^4.1.0 + minimatch: ^3.1.2 + strip-json-comments: ^3.1.1 + checksum: 10957c7592b20ca0089262d8c2a8accbad14b4f6507e35416c32ee6b4dbf9cad67dfb77096bbd405405e9ada2b107f3797fe94362e1c55e0b09d6e90dd149127 languageName: node linkType: hard -"@babel/helpers@npm:^7.26.10": - version: 7.26.10 - resolution: "@babel/helpers@npm:7.26.10" - dependencies: - "@babel/template": ^7.26.9 - "@babel/types": ^7.26.10 - checksum: daa3689024a4fc5e024fea382915c6fb0fde15cf1b2f6093435725c79edccbef7646d4a656b199c046ff5c61846d1b3876d6096b7bf0635823de6aaff2a1e1a4 +"@eslint/js@npm:8.57.1": + version: 8.57.1 + resolution: "@eslint/js@npm:8.57.1" + checksum: 2afb77454c06e8316793d2e8e79a0154854d35e6782a1217da274ca60b5044d2c69d6091155234ed0551a1e408f86f09dd4ece02752c59568fa403e60611e880 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.26.10, @babel/parser@npm:^7.26.9": - version: 7.26.10 - resolution: "@babel/parser@npm:7.26.10" - dependencies: - "@babel/types": ^7.26.10 - bin: - parser: ./bin/babel-parser.js - checksum: 81f9af962aea55a2973d213dffc6191939df7eba0511ba585d23f0d838931f5fca2efb83ae382e4b9bb486f20ae1b2607cb1b8be49af89e9f011fb4355727f47 +"@fortawesome/fontawesome-free@npm:^5.12.0": + version: 5.15.4 + resolution: "@fortawesome/fontawesome-free@npm:5.15.4" + checksum: 32281c3df4075290d9a96dfc22f72fadb3da7055d4117e48d34046b8c98032a55fa260ae351b0af5d6f6fb57a2f5d79a4abe52af456da35195f7cb7dda27b4a2 languageName: node linkType: hard -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.9" +"@humanwhocodes/config-array@npm:^0.13.0": + version: 0.13.0 + resolution: "@humanwhocodes/config-array@npm:0.13.0" dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/traverse": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: b33d37dacf98a9c74f53959999adc37a258057668b62dba557e6865689433c53764673109eaba9102bf73b2ac4db162f0d9b89a6cca6f1b71d12f5908ec11da9 + "@humanwhocodes/object-schema": ^2.0.3 + debug: ^4.3.1 + minimatch: ^3.0.5 + checksum: eae69ff9134025dd2924f0b430eb324981494be26f0fddd267a33c28711c4db643242cf9fddf7dadb9d16c96b54b2d2c073e60a56477df86e0173149313bd5d6 languageName: node linkType: hard -"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: d3e14ab1cb9cb50246d20cab9539f2fbd1e7ef1ded73980c8ad7c0561b4d5e0b144d362225f0976d47898e04cbd40f2000e208b0913bd788346cf7791b96af91 +"@humanwhocodes/module-importer@npm:^1.0.1": + version: 1.0.1 + resolution: "@humanwhocodes/module-importer@npm:1.0.1" + checksum: 0fd22007db8034a2cdf2c764b140d37d9020bbfce8a49d3ec5c05290e77d4b0263b1b972b752df8c89e5eaa94073408f2b7d977aed131faf6cf396ebb5d7fb61 languageName: node linkType: hard -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: a9d1ee3fd100d3eb6799a2f2bbd785296f356c531d75c9369f71541811fa324270258a374db103ce159156d006da2f33370330558d0133e6f7584152c34997ca +"@humanwhocodes/object-schema@npm:^2.0.3": + version: 2.0.3 + resolution: "@humanwhocodes/object-schema@npm:2.0.3" + checksum: d3b78f6c5831888c6ecc899df0d03bcc25d46f3ad26a11d7ea52944dc36a35ef543fad965322174238d677a43d5c694434f6607532cff7077062513ad7022631 languageName: node linkType: hard -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 - "@babel/plugin-transform-optional-chaining": ^7.25.9 - peerDependencies: - "@babel/core": ^7.13.0 - checksum: 5b298b28e156f64de51cdb03a2c5b80c7f978815ef1026f3ae8b9fc48d28bf0a83817d8fbecb61ef8fb94a7201f62cca5103cc6e7b9e8f28e38f766d7905b378 +"@hutson/parse-repository-url@npm:^3.0.0": + version: 3.0.2 + resolution: "@hutson/parse-repository-url@npm:3.0.2" + checksum: 39992c5f183c5ca3d761d6ed9dfabcb79b5f3750bf1b7f3532e1dc439ca370138bbd426ee250fdaba460bc948e6761fbefd484b8f4f36885d71ded96138340d1 languageName: node linkType: hard -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.25.9" +"@isaacs/cliui@npm:^8.0.2": + version: 8.0.2 + resolution: "@isaacs/cliui@npm:8.0.2" dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/traverse": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: c684593952ab1b40dfa4e64e98a07e7227c6db175c21bd0e6d71d2ad5d240fef4e4a984d56f05a494876542a022244fe1c1098f4116109fd90d06615e8a269b1 + string-width: ^5.1.2 + string-width-cjs: "npm:string-width@^4.2.0" + strip-ansi: ^7.0.1 + strip-ansi-cjs: "npm:strip-ansi@^6.0.1" + wrap-ansi: ^8.1.0 + wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" + checksum: 4a473b9b32a7d4d3cfb7a614226e555091ff0c5a29a1734c28c72a182c2f6699b26fc6b5c2131dfd841e86b185aea714c72201d7c98c2fba5f17709333a67aeb languageName: node linkType: hard -"@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2": - version: 7.21.0-placeholder-for-preset-env.2 - resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: d97745d098b835d55033ff3a7fb2b895b9c5295b08a5759e4f20df325aa385a3e0bc9bd5ad8f2ec554a44d4e6525acfc257b8c5848a1345cb40f26a30e277e91 +"@isaacs/string-locale-compare@npm:^1.1.0": + version: 1.1.0 + resolution: "@isaacs/string-locale-compare@npm:1.1.0" + checksum: 7287da5d11497b82c542d3c2abe534808015be4f4883e71c26853277b5456f6bbe4108535db847a29f385ad6dc9318ffb0f55ee79bb5f39993233d7dccf8751d languageName: node linkType: hard -"@babel/plugin-syntax-async-generators@npm:^7.8.4": - version: 7.8.4 - resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" +"@jest/schemas@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/schemas@npm:29.6.3" dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 + "@sinclair/typebox": ^0.27.8 + checksum: 910040425f0fc93cd13e68c750b7885590b8839066dfa0cd78e7def07bbb708ad869381f725945d66f2284de5663bbecf63e8fdd856e2ae6e261ba30b1687e93 languageName: node linkType: hard -"@babel/plugin-syntax-bigint@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-bigint@npm:7.8.3" +"@jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.8 + resolution: "@jridgewell/gen-mapping@npm:0.3.8" dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 3a10849d83e47aec50f367a9e56a6b22d662ddce643334b087f9828f4c3dd73bdc5909aaeabe123fed78515767f9ca43498a0e621c438d1cd2802d7fae3c9648 + "@jridgewell/set-array": ^1.2.1 + "@jridgewell/sourcemap-codec": ^1.4.10 + "@jridgewell/trace-mapping": ^0.3.24 + checksum: c0687b5227461717aa537fe71a42e356bcd1c43293b3353796a148bf3b0d6f59109def46c22f05b60e29a46f19b2e4676d027959a7c53a6c92b9d5b0d87d0420 languageName: node linkType: hard -"@babel/plugin-syntax-class-properties@npm:^7.12.13": - version: 7.12.13 - resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" - dependencies: - "@babel/helper-plugin-utils": ^7.12.13 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc +"@jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.2 + resolution: "@jridgewell/resolve-uri@npm:3.1.2" + checksum: 83b85f72c59d1c080b4cbec0fef84528963a1b5db34e4370fa4bd1e3ff64a0d80e0cee7369d11d73c704e0286fb2865b530acac7a871088fbe92b5edf1000870 languageName: node linkType: hard -"@babel/plugin-syntax-class-static-block@npm:^7.14.5": - version: 7.14.5 - resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" - dependencies: - "@babel/helper-plugin-utils": ^7.14.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 3e80814b5b6d4fe17826093918680a351c2d34398a914ce6e55d8083d72a9bdde4fbaf6a2dcea0e23a03de26dc2917ae3efd603d27099e2b98380345703bf948 +"@jridgewell/set-array@npm:^1.2.1": + version: 1.2.1 + resolution: "@jridgewell/set-array@npm:1.2.1" + checksum: 832e513a85a588f8ed4f27d1279420d8547743cc37fcad5a5a76fc74bb895b013dfe614d0eed9cb860048e6546b798f8f2652020b4b2ba0561b05caa8c654b10 languageName: node linkType: hard -"@babel/plugin-syntax-import-assertions@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/plugin-syntax-import-assertions@npm:7.26.0" +"@jridgewell/source-map@npm:^0.3.3": + version: 0.3.6 + resolution: "@jridgewell/source-map@npm:0.3.6" dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b58f2306df4a690ca90b763d832ec05202c50af787158ff8b50cdf3354359710bce2e1eb2b5135fcabf284756ac8eadf09ca74764aa7e76d12a5cac5f6b21e67 + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.25 + checksum: c9dc7d899397df95e3c9ec287b93c0b56f8e4453cd20743e2b9c8e779b1949bc3cccf6c01bb302779e46560eb45f62ea38d19fedd25370d814734268450a9f30 languageName: node linkType: hard -"@babel/plugin-syntax-import-attributes@npm:^7.24.7, @babel/plugin-syntax-import-attributes@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/plugin-syntax-import-attributes@npm:7.26.0" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: c122aa577166c80ee67f75aebebeef4150a132c4d3109d25d7fc058bf802946f883e330f20b78c1d3e3a5ada631c8780c263d2d01b5dbaecc69efefeedd42916 +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": + version: 1.5.0 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" + checksum: 05df4f2538b3b0f998ea4c1cd34574d0feba216fa5d4ccaef0187d12abf82eafe6021cec8b49f9bb4d90f2ba4582ccc581e72986a5fcf4176ae0cfeb04cf52ec languageName: node linkType: hard -"@babel/plugin-syntax-import-meta@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" +"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": + version: 0.3.25 + resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 166ac1125d10b9c0c430e4156249a13858c0366d38844883d75d27389621ebe651115cb2ceb6dc011534d5055719fa1727b59f39e1ab3ca97820eef3dcab5b9b + "@jridgewell/resolve-uri": ^3.1.0 + "@jridgewell/sourcemap-codec": ^1.4.14 + checksum: 9d3c40d225e139987b50c48988f8717a54a8c994d8a948ee42e1412e08988761d0754d7d10b803061cc3aebf35f92a5dbbab493bd0e1a9ef9e89a2130e83ba34 languageName: node linkType: hard -"@babel/plugin-syntax-json-strings@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" +"@jupyter/react-components@npm:^0.16.6": + version: 0.16.7 + resolution: "@jupyter/react-components@npm:0.16.7" dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: bf5aea1f3188c9a507e16efe030efb996853ca3cadd6512c51db7233cc58f3ac89ff8c6bdfb01d30843b161cfe7d321e1bf28da82f7ab8d7e6bc5464666f354a + "@jupyter/web-components": ^0.16.7 + react: ">=17.0.0 <19.0.0" + checksum: 37894347e63ebb528725e8b8b4038d138019823f5c9e28e3f6abb93b46d771b2ee3cc004d5ff7d9a06a93f2d90e41000bd2abae14364be34ba99c5e05864810e languageName: node linkType: hard -"@babel/plugin-syntax-jsx@npm:^7.7.2": - version: 7.25.9 - resolution: "@babel/plugin-syntax-jsx@npm:7.25.9" +"@jupyter/web-components@npm:^0.16.6, @jupyter/web-components@npm:^0.16.7": + version: 0.16.7 + resolution: "@jupyter/web-components@npm:0.16.7" dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: bb609d1ffb50b58f0c1bac8810d0e46a4f6c922aa171c458f3a19d66ee545d36e782d3bffbbc1fed0dc65a558bdce1caf5279316583c0fff5a2c1658982a8563 + "@microsoft/fast-colors": ^5.3.1 + "@microsoft/fast-element": ^1.12.0 + "@microsoft/fast-foundation": ^2.49.4 + "@microsoft/fast-web-utilities": ^5.4.1 + checksum: ec3336247bbabb2e2587c2cf8b9d0e80786b454916dd600b3d6791bf08c3d1e45a7ec1becf366a5491ab56b0be020baa8c50a5b6067961faf5ec904de31243aa languageName: node linkType: hard -"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: aff33577037e34e515911255cdbb1fd39efee33658aa00b8a5fd3a4b903585112d037cce1cc9e4632f0487dc554486106b79ccd5ea63a2e00df4363f6d4ff886 - languageName: node - linkType: hard - -"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 87aca4918916020d1fedba54c0e232de408df2644a425d153be368313fdde40d96088feed6c4e5ab72aac89be5d07fef2ddf329a15109c5eb65df006bf2580d1 - languageName: node - linkType: hard - -"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": - version: 7.10.4 - resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" - dependencies: - "@babel/helper-plugin-utils": ^7.10.4 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 01ec5547bd0497f76cc903ff4d6b02abc8c05f301c88d2622b6d834e33a5651aa7c7a3d80d8d57656a4588f7276eba357f6b7e006482f5b564b7a6488de493a1 - languageName: node - linkType: hard - -"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: fddcf581a57f77e80eb6b981b10658421bc321ba5f0a5b754118c6a92a5448f12a0c336f77b8abf734841e102e5126d69110a306eadb03ca3e1547cab31f5cbf - languageName: node - linkType: hard - -"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 910d90e72bc90ea1ce698e89c1027fed8845212d5ab588e35ef91f13b93143845f94e2539d831dc8d8ededc14ec02f04f7bd6a8179edd43a326c784e7ed7f0b9 - languageName: node - linkType: hard - -"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": - version: 7.8.3 - resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" - dependencies: - "@babel/helper-plugin-utils": ^7.8.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: eef94d53a1453361553c1f98b68d17782861a04a392840341bc91780838dd4e695209c783631cf0de14c635758beafb6a3a65399846ffa4386bff90639347f30 - languageName: node - linkType: hard - -"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": - version: 7.14.5 - resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" - dependencies: - "@babel/helper-plugin-utils": ^7.14.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b317174783e6e96029b743ccff2a67d63d38756876e7e5d0ba53a322e38d9ca452c13354a57de1ad476b4c066dbae699e0ca157441da611117a47af88985ecda - languageName: node - linkType: hard - -"@babel/plugin-syntax-top-level-await@npm:^7.14.5": - version: 7.14.5 - resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" - dependencies: - "@babel/helper-plugin-utils": ^7.14.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: bbd1a56b095be7820029b209677b194db9b1d26691fe999856462e66b25b281f031f3dfd91b1619e9dcf95bebe336211833b854d0fb8780d618e35667c2d0d7e - languageName: node - linkType: hard - -"@babel/plugin-syntax-typescript@npm:^7.7.2": - version: 7.25.9 - resolution: "@babel/plugin-syntax-typescript@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 0e9821e8ba7d660c36c919654e4144a70546942ae184e85b8102f2322451eae102cbfadbcadd52ce077a2b44b400ee52394c616feab7b5b9f791b910e933fd33 - languageName: node - linkType: hard - -"@babel/plugin-syntax-unicode-sets-regex@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/plugin-syntax-unicode-sets-regex@npm:7.18.6" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.18.6 - "@babel/helper-plugin-utils": ^7.18.6 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: a651d700fe63ff0ddfd7186f4ebc24447ca734f114433139e3c027bc94a900d013cf1ef2e2db8430425ba542e39ae160c3b05f06b59fd4656273a3df97679e9c - languageName: node - linkType: hard - -"@babel/plugin-transform-arrow-functions@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-arrow-functions@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: c29f081224859483accf55fb4d091db2aac0dcd0d7954bac5ca889030cc498d3f771aa20eb2e9cd8310084ec394d85fa084b97faf09298b6bc9541182b3eb5bb - languageName: node - linkType: hard - -"@babel/plugin-transform-async-generator-functions@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/plugin-transform-async-generator-functions@npm:7.26.8" - dependencies: - "@babel/helper-plugin-utils": ^7.26.5 - "@babel/helper-remap-async-to-generator": ^7.25.9 - "@babel/traverse": ^7.26.8 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 10424a1bbfbc7ffdb13cef1e832f76bb2d393a9fbfaa1eaa3091a8f6ec3e2ac0b66cf04fca9cb3fb4dbf3d1bd404d72dfce4a3742b4ef21f6271aca7076a65ef - languageName: node - linkType: hard - -"@babel/plugin-transform-async-to-generator@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-async-to-generator@npm:7.25.9" - dependencies: - "@babel/helper-module-imports": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/helper-remap-async-to-generator": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b3ad50fb93c171644d501864620ed23952a46648c4df10dc9c62cc9ad08031b66bd272cfdd708faeee07c23b6251b16f29ce0350473e4c79f0c32178d38ce3a6 - languageName: node - linkType: hard - -"@babel/plugin-transform-block-scoped-functions@npm:^7.26.5": - version: 7.26.5 - resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.26.5" - dependencies: - "@babel/helper-plugin-utils": ^7.26.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: f2046c09bf8e588bfb1a6342d0eee733189102cf663ade27adb0130f3865123af5816b40a55ec8d8fa09271b54dfdaf977cd2f8e0b3dc97f18e690188d5a2174 - languageName: node - linkType: hard - -"@babel/plugin-transform-block-scoping@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-block-scoping@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e869500cfb1995e06e64c9608543b56468639809febfcdd6fcf683bc0bf1be2431cacf2981a168a1a14f4766393e37bc9f7c96d25bc5b5f39a64a8a8ad0bf8e0 - languageName: node - linkType: hard - -"@babel/plugin-transform-class-properties@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-class-properties@npm:7.25.9" - dependencies: - "@babel/helper-create-class-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a8d69e2c285486b63f49193cbcf7a15e1d3a5f632c1c07d7a97f65306df7f554b30270b7378dde143f8b557d1f8f6336c643377943dec8ec405e4cd11e90b9ea - languageName: node - linkType: hard - -"@babel/plugin-transform-class-static-block@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/plugin-transform-class-static-block@npm:7.26.0" - dependencies: - "@babel/helper-create-class-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.12.0 - checksum: d779d4d3a6f8d363f67fcbd928c15baa72be8d3b86c6d05e0300b50e66e2c4be9e99398b803d13064bc79d90ae36e37a505e3dc8af11904459804dec07660246 - languageName: node - linkType: hard - -"@babel/plugin-transform-classes@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-classes@npm:7.25.9" - dependencies: - "@babel/helper-annotate-as-pure": ^7.25.9 - "@babel/helper-compilation-targets": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/helper-replace-supers": ^7.25.9 - "@babel/traverse": ^7.25.9 - globals: ^11.1.0 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: d12584f72125314cc0fa8c77586ece2888d677788ac75f7393f5da574dfe4e45a556f7e3488fab29c8777ab3e5856d7a2d79f6df02834083aaa9d766440e3c68 - languageName: node - linkType: hard - -"@babel/plugin-transform-computed-properties@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-computed-properties@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/template": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: f77fa4bc0c1e0031068172df28852388db6b0f91c268d037905f459607cf1e8ebab00015f9f179f4ad96e11c5f381b635cd5dc4e147a48c7ac79d195ae7542de - languageName: node - linkType: hard - -"@babel/plugin-transform-destructuring@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-destructuring@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 965f63077a904828f4adee91393f83644098533442b8217d5a135c23a759a4c252c714074c965676a60d2c33f610f579a4eeb59ffd783724393af61c0ca45fef - languageName: node - linkType: hard - -"@babel/plugin-transform-dotall-regex@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-dotall-regex@npm:7.25.9" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 8bdf1bb9e6e3a2cc8154ae88a3872faa6dc346d6901994505fb43ac85f858728781f1219f40b67f7bb0687c507450236cb7838ac68d457e65637f98500aa161b - languageName: node - linkType: hard - -"@babel/plugin-transform-duplicate-keys@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-duplicate-keys@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b553eebc328797ead6be5ba5bdaf2f1222cea8a5bd33fb4ed625975d4f9b510bfb0d688d97e314cd4b4a48b279bea7b3634ad68c1b41ee143c3082db0ae74037 - languageName: node - linkType: hard - -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.25.9" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: f7233cf596be8c6843d31951afaf2464a62a610cb89c72c818c044765827fab78403ab8a7d3a6386f838c8df574668e2a48f6c206b1d7da965aff9c6886cb8e6 - languageName: node - linkType: hard - -"@babel/plugin-transform-dynamic-import@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-dynamic-import@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: aaca1ccda819be9b2b85af47ba08ddd2210ff2dbea222f26e4cd33f97ab020884bf81a66197e50872721e9daf36ceb5659502c82199884ea74d5d75ecda5c58b - languageName: node - linkType: hard - -"@babel/plugin-transform-exponentiation-operator@npm:^7.26.3": - version: 7.26.3 - resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.26.3" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b369ffad07e02e259c43a09d309a5ca86cb9da6b43b1df6256463a810b172cedc4254742605eec0fc2418371c3f7430430f5abd36f21717281e79142308c13ba - languageName: node - linkType: hard - -"@babel/plugin-transform-export-namespace-from@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-export-namespace-from@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 4dfe8df86c5b1d085d591290874bb2d78a9063090d71567ed657a418010ad333c3f48af2c974b865f53bbb718987a065f89828d43279a7751db1a56c9229078d - languageName: node - linkType: hard - -"@babel/plugin-transform-for-of@npm:^7.26.9": - version: 7.26.9 - resolution: "@babel/plugin-transform-for-of@npm:7.26.9" - dependencies: - "@babel/helper-plugin-utils": ^7.26.5 - "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 361323cfc1d9e9dc0bf0d68326b5e7f4da5b8a8be8931f6cacda749d39b88ee1b0f9b4d8b771a5a4d52bb881a90da97950c8a9e6fb47f2c9db11d91f6351768e - languageName: node - linkType: hard - -"@babel/plugin-transform-function-name@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-function-name@npm:7.25.9" - dependencies: - "@babel/helper-compilation-targets": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/traverse": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a8d7c8d019a6eb57eab5ca1be3e3236f175557d55b1f3b11f8ad7999e3fbb1cf37905fd8cb3a349bffb4163a558e9f33b63f631597fdc97c858757deac1b2fd7 - languageName: node - linkType: hard - -"@babel/plugin-transform-json-strings@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-json-strings@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e2498d84761cfd05aaea53799933d55af309c9d6204e66b38778792d171e4d1311ad34f334259a3aa3407dd0446f6bd3e390a1fcb8ce2e42fe5aabed0e41bee1 - languageName: node - linkType: hard - -"@babel/plugin-transform-literals@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-literals@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 3cca75823a38aab599bc151b0fa4d816b5e1b62d6e49c156aa90436deb6e13649f5505973151a10418b64f3f9d1c3da53e38a186402e0ed7ad98e482e70c0c14 - languageName: node - linkType: hard - -"@babel/plugin-transform-logical-assignment-operators@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 8c6febb4ac53852314d28b5e2c23d5dbbff7bf1e57d61f9672e0d97531ef7778b3f0ad698dcf1179f5486e626c77127508916a65eb846a89e98a92f70ed3537b - languageName: node - linkType: hard - -"@babel/plugin-transform-member-expression-literals@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-member-expression-literals@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: db92041ae87b8f59f98b50359e0bb172480f6ba22e5e76b13bdfe07122cbf0daa9cd8ad2e78dcb47939938fed88ad57ab5989346f64b3a16953fc73dea3a9b1f - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-amd@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-modules-amd@npm:7.25.9" - dependencies: - "@babel/helper-module-transforms": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: baad1f6fd0e0d38e9a9c1086a06abdc014c4c653fd452337cadfe23fb5bd8bf4368d1bc433a5ac8e6421bc0732ebb7c044cf3fb39c1b7ebe967d66e26c4e5cec - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-commonjs@npm:^7.26.3": - version: 7.26.3 - resolution: "@babel/plugin-transform-modules-commonjs@npm:7.26.3" - dependencies: - "@babel/helper-module-transforms": ^7.26.0 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 0ac9aa4e5fe9fe34b58ee174881631e5e1c89eee5b1ebfd1147934686be92fc5fbfdc11119f0b607b3743d36a1cbcb7c36f18e0dd4424d6d7b749b1b9a18808a - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-systemjs@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-modules-systemjs@npm:7.25.9" - dependencies: - "@babel/helper-module-transforms": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/helper-validator-identifier": ^7.25.9 - "@babel/traverse": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: bf446202f372ba92dc0db32b24b56225b6e3ad3b227e31074de8b86fdec01c273ae2536873e38dbe3ceb1cd0894209343adeaa37df208e3fa88c0c7dffec7924 - languageName: node - linkType: hard - -"@babel/plugin-transform-modules-umd@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-modules-umd@npm:7.25.9" - dependencies: - "@babel/helper-module-transforms": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 946db66be5f04ab9ee56c424b00257276ec094aa2f148508927e6085239f76b00304fa1e33026d29eccdbe312efea15ca3d92e74a12689d7f0cdd9a7ba1a6c54 - languageName: node - linkType: hard - -"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.25.9" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 434346ba05cf74e3f4704b3bdd439287b95cd2a8676afcdc607810b8c38b6f4798cd69c1419726b2e4c7204e62e4a04d31b0360e91ca57a930521c9211e07789 - languageName: node - linkType: hard - -"@babel/plugin-transform-new-target@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-new-target@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: f8113539919aafce52f07b2bd182c771a476fe1d5d96d813460b33a16f173f038929369c595572cadc1f7bd8cb816ce89439d056e007770ddd7b7a0878e7895f - languageName: node - linkType: hard - -"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.26.6": - version: 7.26.6 - resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.26.6" - dependencies: - "@babel/helper-plugin-utils": ^7.26.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 752837d532b85c41f6bb868e83809605f513bc9a3b8e88ac3d43757c9bf839af4f246874c1c6d6902bb2844d355efccae602c3856098911f8abdd603672f8379 - languageName: node - linkType: hard - -"@babel/plugin-transform-numeric-separator@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-numeric-separator@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 0528ef041ed88e8c3f51624ee87b8182a7f246fe4013f0572788e0727d20795b558f2b82e3989b5dd416cbd339500f0d88857de41b6d3b6fdacb1d5344bcc5b1 - languageName: node - linkType: hard - -"@babel/plugin-transform-object-rest-spread@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-object-rest-spread@npm:7.25.9" - dependencies: - "@babel/helper-compilation-targets": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/plugin-transform-parameters": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a8ff73e1c46a03056b3a2236bafd6b3a4b83da93afe7ee24a50d0a8088150bf85bc5e5977daa04e66ff5fb7613d02d63ad49b91ebb64cf3f3022598d722e3a7a - languageName: node - linkType: hard - -"@babel/plugin-transform-object-super@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-object-super@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/helper-replace-supers": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 1817b5d8b80e451ae1ad9080cca884f4f16df75880a158947df76a2ed8ab404d567a7dce71dd8051ef95f90fbe3513154086a32aba55cc76027f6cbabfbd7f98 - languageName: node - linkType: hard - -"@babel/plugin-transform-optional-catch-binding@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: b46a8d1e91829f3db5c252583eb00d05a779b4660abeea5500fda0f8ffa3584fd18299443c22f7fddf0ed9dfdb73c782c43b445dc468d4f89803f2356963b406 - languageName: node - linkType: hard - -"@babel/plugin-transform-optional-chaining@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-optional-chaining@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: f1642a7094456067e82b176e1e9fd426fda7ed9df54cb6d10109fc512b622bf4b3c83acc5875125732b8622565107fdbe2d60fe3ec8685e1d1c22c38c1b57782 - languageName: node - linkType: hard - -"@babel/plugin-transform-parameters@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-parameters@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: d7ba2a7d05edbc85aed741289b0ff3d6289a1c25d82ac4be32c565f88a66391f46631aad59ceeed40824037f7eeaa7a0de1998db491f50e65a565cd964f78786 - languageName: node - linkType: hard - -"@babel/plugin-transform-private-methods@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-private-methods@npm:7.25.9" - dependencies: - "@babel/helper-create-class-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 6e3671b352c267847c53a170a1937210fa8151764d70d25005e711ef9b21969aaf422acc14f9f7fb86bc0e4ec43e7aefcc0ad9196ae02d262ec10f509f126a58 - languageName: node - linkType: hard - -"@babel/plugin-transform-private-property-in-object@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-private-property-in-object@npm:7.25.9" - dependencies: - "@babel/helper-annotate-as-pure": ^7.25.9 - "@babel/helper-create-class-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 9ce3e983fea9b9ba677c192aa065c0b42ebdc7774be4c02135df09029ad92a55c35b004650c75952cb64d650872ed18f13ab64422c6fc891d06333762caa8a0a - languageName: node - linkType: hard - -"@babel/plugin-transform-property-literals@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-property-literals@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 436046ab07d54a9b44a384eeffec701d4e959a37a7547dda72e069e751ca7ff753d1782a8339e354b97c78a868b49ea97bf41bf5a44c6d7a3c0a05ad40eeb49c - languageName: node - linkType: hard - -"@babel/plugin-transform-react-jsx-self@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 41c833cd7f91b1432710f91b1325706e57979b2e8da44e83d86312c78bbe96cd9ef778b4e79e4e17ab25fa32c72b909f2be7f28e876779ede28e27506c41f4ae - languageName: node - linkType: hard - -"@babel/plugin-transform-react-jsx-source@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: a3e0e5672e344e9d01fb20b504fe29a84918eaa70cec512c4d4b1b035f72803261257343d8e93673365b72c371f35cf34bb0d129720bf178a4c87812c8b9c662 - languageName: node - linkType: hard - -"@babel/plugin-transform-regenerator@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-regenerator@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - regenerator-transform: ^0.15.2 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 1c09e8087b476c5967282c9790fb8710e065eda77c60f6cb5da541edd59ded9d003d96f8ef640928faab4a0b35bf997673499a194973da4f0c97f0935807a482 - languageName: node - linkType: hard - -"@babel/plugin-transform-regexp-modifiers@npm:^7.26.0": - version: 7.26.0 - resolution: "@babel/plugin-transform-regexp-modifiers@npm:7.26.0" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 726deca486bbd4b176f8a966eb0f4aabc19d9def3b8dabb8b3a656778eca0df1fda3f3c92b213aa5a184232fdafd5b7bd73b4e24ca4345c498ef6baff2bda4e1 - languageName: node - linkType: hard - -"@babel/plugin-transform-reserved-words@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-reserved-words@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 8beda04481b25767acbd1f6b9ef7b3a9c12fbd9dcb24df45a6ad120e1dc4b247c073db60ac742f9093657d6d8c050501fc0606af042f81a3bb6a3ff862cddc47 - languageName: node - linkType: hard - -"@babel/plugin-transform-shorthand-properties@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-shorthand-properties@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: f774995d58d4e3a992b732cf3a9b8823552d471040e280264dd15e0735433d51b468fef04d75853d061309389c66bda10ce1b298297ce83999220eb0ad62741d - languageName: node - linkType: hard - -"@babel/plugin-transform-spread@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-spread@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - "@babel/helper-skip-transparent-expression-wrappers": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 2403a5d49171b7714d5e5ecb1f598c61575a4dbe5e33e5a5f08c0ea990b75e693ca1ea983b6a96b2e3e5e7da48c8238333f525e47498c53b577c5d094d964c06 - languageName: node - linkType: hard - -"@babel/plugin-transform-sticky-regex@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-sticky-regex@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 7454b00844dbe924030dd15e2b3615b36e196500c4c47e98dabc6b37a054c5b1038ecd437e910aabf0e43bf56b973cb148d3437d50f6e2332d8309568e3e979b - languageName: node - linkType: hard - -"@babel/plugin-transform-template-literals@npm:^7.26.8": - version: 7.26.8 - resolution: "@babel/plugin-transform-template-literals@npm:7.26.8" - dependencies: - "@babel/helper-plugin-utils": ^7.26.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 65874c8844ce906507cd5b9c78950d6173f8339b6416a2a9e763021db5a7045315a6f0e58976ec4af5e960c003ef322576c105130a644addb8f94d1a0821a972 - languageName: node - linkType: hard - -"@babel/plugin-transform-typeof-symbol@npm:^7.26.7": - version: 7.26.7 - resolution: "@babel/plugin-transform-typeof-symbol@npm:7.26.7" - dependencies: - "@babel/helper-plugin-utils": ^7.26.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 1fcc48bde1426527d9905d561884e1ecaf3c03eb5abb507d33f71591f8da0c384e92097feaf91cc30692e04fb7f5e6ff1cb172acc5de7675d93fdb42db850d6a - languageName: node - linkType: hard - -"@babel/plugin-transform-unicode-escapes@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-unicode-escapes@npm:7.25.9" - dependencies: - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: be067e07488d804e3e82d7771f23666539d2ae5af03bf6eb8480406adf3dabd776e60c1fd5c6078dc5714b73cd80bbaca70e71d4f5d154c5c57200581602ca2f - languageName: node - linkType: hard - -"@babel/plugin-transform-unicode-property-regex@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.25.9" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 201f6f46c1beb399e79aa208b94c5d54412047511795ce1e790edcd189cef73752e6a099fdfc01b3ad12205f139ae344143b62f21f44bbe02338a95e8506a911 - languageName: node - linkType: hard - -"@babel/plugin-transform-unicode-regex@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-unicode-regex@npm:7.25.9" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: e8baae867526e179467c6ef5280d70390fa7388f8763a19a27c21302dd59b121032568be080749514b097097ceb9af716bf4b90638f1b3cf689aa837ba20150f - languageName: node - linkType: hard - -"@babel/plugin-transform-unicode-sets-regex@npm:^7.25.9": - version: 7.25.9 - resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.25.9" - dependencies: - "@babel/helper-create-regexp-features-plugin": ^7.25.9 - "@babel/helper-plugin-utils": ^7.25.9 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 4445ef20de687cb4dcc95169742a8d9013d680aa5eee9186d8e25875bbfa7ee5e2de26a91177ccf70b1db518e36886abcd44750d28db5d7a9539f0efa6839f4b - languageName: node - linkType: hard - -"@babel/preset-env@npm:^7.10.2": - version: 7.26.9 - resolution: "@babel/preset-env@npm:7.26.9" - dependencies: - "@babel/compat-data": ^7.26.8 - "@babel/helper-compilation-targets": ^7.26.5 - "@babel/helper-plugin-utils": ^7.26.5 - "@babel/helper-validator-option": ^7.25.9 - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": ^7.25.9 - "@babel/plugin-bugfix-safari-class-field-initializer-scope": ^7.25.9 - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.25.9 - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.25.9 - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": ^7.25.9 - "@babel/plugin-proposal-private-property-in-object": 7.21.0-placeholder-for-preset-env.2 - "@babel/plugin-syntax-import-assertions": ^7.26.0 - "@babel/plugin-syntax-import-attributes": ^7.26.0 - "@babel/plugin-syntax-unicode-sets-regex": ^7.18.6 - "@babel/plugin-transform-arrow-functions": ^7.25.9 - "@babel/plugin-transform-async-generator-functions": ^7.26.8 - "@babel/plugin-transform-async-to-generator": ^7.25.9 - "@babel/plugin-transform-block-scoped-functions": ^7.26.5 - "@babel/plugin-transform-block-scoping": ^7.25.9 - "@babel/plugin-transform-class-properties": ^7.25.9 - "@babel/plugin-transform-class-static-block": ^7.26.0 - "@babel/plugin-transform-classes": ^7.25.9 - "@babel/plugin-transform-computed-properties": ^7.25.9 - "@babel/plugin-transform-destructuring": ^7.25.9 - "@babel/plugin-transform-dotall-regex": ^7.25.9 - "@babel/plugin-transform-duplicate-keys": ^7.25.9 - "@babel/plugin-transform-duplicate-named-capturing-groups-regex": ^7.25.9 - "@babel/plugin-transform-dynamic-import": ^7.25.9 - "@babel/plugin-transform-exponentiation-operator": ^7.26.3 - "@babel/plugin-transform-export-namespace-from": ^7.25.9 - "@babel/plugin-transform-for-of": ^7.26.9 - "@babel/plugin-transform-function-name": ^7.25.9 - "@babel/plugin-transform-json-strings": ^7.25.9 - "@babel/plugin-transform-literals": ^7.25.9 - "@babel/plugin-transform-logical-assignment-operators": ^7.25.9 - "@babel/plugin-transform-member-expression-literals": ^7.25.9 - "@babel/plugin-transform-modules-amd": ^7.25.9 - "@babel/plugin-transform-modules-commonjs": ^7.26.3 - "@babel/plugin-transform-modules-systemjs": ^7.25.9 - "@babel/plugin-transform-modules-umd": ^7.25.9 - "@babel/plugin-transform-named-capturing-groups-regex": ^7.25.9 - "@babel/plugin-transform-new-target": ^7.25.9 - "@babel/plugin-transform-nullish-coalescing-operator": ^7.26.6 - "@babel/plugin-transform-numeric-separator": ^7.25.9 - "@babel/plugin-transform-object-rest-spread": ^7.25.9 - "@babel/plugin-transform-object-super": ^7.25.9 - "@babel/plugin-transform-optional-catch-binding": ^7.25.9 - "@babel/plugin-transform-optional-chaining": ^7.25.9 - "@babel/plugin-transform-parameters": ^7.25.9 - "@babel/plugin-transform-private-methods": ^7.25.9 - "@babel/plugin-transform-private-property-in-object": ^7.25.9 - "@babel/plugin-transform-property-literals": ^7.25.9 - "@babel/plugin-transform-regenerator": ^7.25.9 - "@babel/plugin-transform-regexp-modifiers": ^7.26.0 - "@babel/plugin-transform-reserved-words": ^7.25.9 - "@babel/plugin-transform-shorthand-properties": ^7.25.9 - "@babel/plugin-transform-spread": ^7.25.9 - "@babel/plugin-transform-sticky-regex": ^7.25.9 - "@babel/plugin-transform-template-literals": ^7.26.8 - "@babel/plugin-transform-typeof-symbol": ^7.26.7 - "@babel/plugin-transform-unicode-escapes": ^7.25.9 - "@babel/plugin-transform-unicode-property-regex": ^7.25.9 - "@babel/plugin-transform-unicode-regex": ^7.25.9 - "@babel/plugin-transform-unicode-sets-regex": ^7.25.9 - "@babel/preset-modules": 0.1.6-no-external-plugins - babel-plugin-polyfill-corejs2: ^0.4.10 - babel-plugin-polyfill-corejs3: ^0.11.0 - babel-plugin-polyfill-regenerator: ^0.6.1 - core-js-compat: ^3.40.0 - semver: ^6.3.1 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 7a657f947d069b7a27b02258012ce3ceb9383a8c10c249d4a3565c486294c3fe63ed08128ca3d124444d17eb821cfbf64a91fe8160af2e39f70d5cd2232f079e - languageName: node - linkType: hard - -"@babel/preset-modules@npm:0.1.6-no-external-plugins": - version: 0.1.6-no-external-plugins - resolution: "@babel/preset-modules@npm:0.1.6-no-external-plugins" - dependencies: - "@babel/helper-plugin-utils": ^7.0.0 - "@babel/types": ^7.4.4 - esutils: ^2.0.2 - peerDependencies: - "@babel/core": ^7.0.0-0 || ^8.0.0-0 <8.0.0 - checksum: 4855e799bc50f2449fb5210f78ea9e8fd46cf4f242243f1e2ed838e2bd702e25e73e822e7f8447722a5f4baa5e67a8f7a0e403f3e7ce04540ff743a9c411c375 - languageName: node - linkType: hard - -"@babel/runtime@npm:^7.8.4": - version: 7.26.10 - resolution: "@babel/runtime@npm:7.26.10" - dependencies: - regenerator-runtime: ^0.14.0 - checksum: 22d2e0abb86e90de489ab16bb578db6fe2b63a88696db431198b24963749820c723f1982298cdbbea187f7b2b80fb4d98a514faf114ddb2fdc14a4b96277b955 - languageName: node - linkType: hard - -"@babel/template@npm:^7.25.9, @babel/template@npm:^7.26.9, @babel/template@npm:^7.3.3": - version: 7.26.9 - resolution: "@babel/template@npm:7.26.9" - dependencies: - "@babel/code-frame": ^7.26.2 - "@babel/parser": ^7.26.9 - "@babel/types": ^7.26.9 - checksum: 32259298c775e543ab994daff0c758b3d6a184349b146d6497aa46cec5907bc47a6bc09e7295a81a5eccfbd023d4811a9777cb5d698d582d09a87cabf5b576e7 - languageName: node - linkType: hard - -"@babel/traverse@npm:^7.25.9, @babel/traverse@npm:^7.26.10, @babel/traverse@npm:^7.26.5, @babel/traverse@npm:^7.26.8, @babel/traverse@npm:^7.26.9": - version: 7.26.10 - resolution: "@babel/traverse@npm:7.26.10" - dependencies: - "@babel/code-frame": ^7.26.2 - "@babel/generator": ^7.26.10 - "@babel/parser": ^7.26.10 - "@babel/template": ^7.26.9 - "@babel/types": ^7.26.10 - debug: ^4.3.1 - globals: ^11.1.0 - checksum: 9b58039cf388ea0f6758204a31678753f3e3d9f62cd8bfb814cdcb2af81a0df35a23b7573719345b425faaaec1c1400f253d50054bac3db5952e389f71b19bc6 - languageName: node - linkType: hard - -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.10, @babel/types@npm:^7.26.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4": - version: 7.26.10 - resolution: "@babel/types@npm:7.26.10" - dependencies: - "@babel/helper-string-parser": ^7.25.9 - "@babel/helper-validator-identifier": ^7.25.9 - checksum: 07340068ea3824dcaccf702dfc9628175c9926912ad6efba182d8b07e20953297d0a514f6fb103a61b9d5c555c8b87fc2237ddb06efebe14794eefc921dfa114 - languageName: node - linkType: hard - -"@bcoe/v8-coverage@npm:^0.2.3": - version: 0.2.3 - resolution: "@bcoe/v8-coverage@npm:0.2.3" - checksum: 850f9305536d0f2bd13e9e0881cb5f02e4f93fad1189f7b2d4bebf694e3206924eadee1068130d43c11b750efcc9405f88a8e42ef098b6d75239c0f047de1a27 - languageName: node - linkType: hard - -"@codemirror/autocomplete@npm:^6.0.0, @codemirror/autocomplete@npm:^6.16.0, @codemirror/autocomplete@npm:^6.3.2, @codemirror/autocomplete@npm:^6.7.1": - version: 6.18.6 - resolution: "@codemirror/autocomplete@npm:6.18.6" - dependencies: - "@codemirror/language": ^6.0.0 - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.17.0 - "@lezer/common": ^1.0.0 - checksum: 1d3657d5fbd2bbf983edf7fb14568b1f813a15f03848bef3833835dd3a30985d881e093842f7b3def23789b542db4eb81ec07bfa313d1ee1d54cb1b273027dea - languageName: node - linkType: hard - -"@codemirror/commands@npm:^6.5.0": - version: 6.8.0 - resolution: "@codemirror/commands@npm:6.8.0" - dependencies: - "@codemirror/language": ^6.0.0 - "@codemirror/state": ^6.4.0 - "@codemirror/view": ^6.27.0 - "@lezer/common": ^1.1.0 - checksum: 7d819bab4830ec7b8c5dffdec4b035dfa664bfd1d2675e639e08a459df65f45be111e1b8b569b1a8a3253d5980cf2ecf4394d8a13509996cca1b65cc16d47a4e - languageName: node - linkType: hard - -"@codemirror/lang-cpp@npm:^6.0.2": - version: 6.0.2 - resolution: "@codemirror/lang-cpp@npm:6.0.2" - dependencies: - "@codemirror/language": ^6.0.0 - "@lezer/cpp": ^1.0.0 - checksum: bb9eba482cca80037ce30c7b193cf45eff19ccbb773764fddf2071756468ecc25aa53c777c943635054f89095b0247b9b50c339e107e41e68d34d12a7295f9a9 - languageName: node - linkType: hard - -"@codemirror/lang-css@npm:^6.0.0, @codemirror/lang-css@npm:^6.2.1": - version: 6.3.1 - resolution: "@codemirror/lang-css@npm:6.3.1" - dependencies: - "@codemirror/autocomplete": ^6.0.0 - "@codemirror/language": ^6.0.0 - "@codemirror/state": ^6.0.0 - "@lezer/common": ^1.0.2 - "@lezer/css": ^1.1.7 - checksum: ed175d75d75bc0a059d1e60b3dcd8464d570da14fc97388439943c9c43e1e9146e37b83fe2ccaad9cd387420b7b411ea1d24ede78ecd1f2045a38acbb4dd36bc - languageName: node - linkType: hard - -"@codemirror/lang-html@npm:^6.0.0, @codemirror/lang-html@npm:^6.4.9": - version: 6.4.9 - resolution: "@codemirror/lang-html@npm:6.4.9" - dependencies: - "@codemirror/autocomplete": ^6.0.0 - "@codemirror/lang-css": ^6.0.0 - "@codemirror/lang-javascript": ^6.0.0 - "@codemirror/language": ^6.4.0 - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.17.0 - "@lezer/common": ^1.0.0 - "@lezer/css": ^1.1.0 - "@lezer/html": ^1.3.0 - checksum: ac8c3ceb0396f2e032752c5079bd950124dca708bc64e96fc147dc5fe7133e5cee0814fe951abdb953ec1d11fa540e4b30a712b5149d9a36016a197a28de45d7 - languageName: node - linkType: hard - -"@codemirror/lang-java@npm:^6.0.1": - version: 6.0.1 - resolution: "@codemirror/lang-java@npm:6.0.1" - dependencies: - "@codemirror/language": ^6.0.0 - "@lezer/java": ^1.0.0 - checksum: 4679104683cbffcd224ac04c7e5d144b787494697b26470b07017259035b7bb3fa62609d9a61bfbc566f1756d9f972f9f26d96a3c1362dd48881c1172f9a914d - languageName: node - linkType: hard - -"@codemirror/lang-javascript@npm:^6.0.0, @codemirror/lang-javascript@npm:^6.2.2": - version: 6.2.3 - resolution: "@codemirror/lang-javascript@npm:6.2.3" - dependencies: - "@codemirror/autocomplete": ^6.0.0 - "@codemirror/language": ^6.6.0 - "@codemirror/lint": ^6.0.0 - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.17.0 - "@lezer/common": ^1.0.0 - "@lezer/javascript": ^1.0.0 - checksum: c56407ddedc80e417dd105a39f11f837fad6fd4d91fe7934c61e48c54227350e4e8f940f81d26030a6c4ff9da16f734361cd1eaed63ba22aadf71fcf6172cbd5 - languageName: node - linkType: hard - -"@codemirror/lang-json@npm:^6.0.1": - version: 6.0.1 - resolution: "@codemirror/lang-json@npm:6.0.1" - dependencies: - "@codemirror/language": ^6.0.0 - "@lezer/json": ^1.0.0 - checksum: e9e87d50ff7b81bd56a6ab50740b1dd54e9a93f1be585e1d59d0642e2148842ea1528ac7b7221eb4ddc7fe84bbc28065144cc3ab86f6e06c6aeb2d4b4e62acf1 - languageName: node - linkType: hard - -"@codemirror/lang-markdown@npm:^6.2.5": - version: 6.3.2 - resolution: "@codemirror/lang-markdown@npm:6.3.2" - dependencies: - "@codemirror/autocomplete": ^6.7.1 - "@codemirror/lang-html": ^6.0.0 - "@codemirror/language": ^6.3.0 - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.0.0 - "@lezer/common": ^1.2.1 - "@lezer/markdown": ^1.0.0 - checksum: f136d50156f13619d7ceb4fae28fc2342064be371a6cb057ba304658d885cf029d2d0d69b03b3c591c86a2c9b46bb2b3820549d5ff936a9b6aabaf692923c84a - languageName: node - linkType: hard - -"@codemirror/lang-php@npm:^6.0.1": - version: 6.0.1 - resolution: "@codemirror/lang-php@npm:6.0.1" - dependencies: - "@codemirror/lang-html": ^6.0.0 - "@codemirror/language": ^6.0.0 - "@codemirror/state": ^6.0.0 - "@lezer/common": ^1.0.0 - "@lezer/php": ^1.0.0 - checksum: c003a29a426486453fdfddbf7302982fa2aa7f059bf6f1ce4cbf08341b0162eee5e2f50e0d71c418dcd358491631780156d846fe352754d042576172c5d86721 - languageName: node - linkType: hard - -"@codemirror/lang-python@npm:^6.1.6": - version: 6.1.7 - resolution: "@codemirror/lang-python@npm:6.1.7" - dependencies: - "@codemirror/autocomplete": ^6.3.2 - "@codemirror/language": ^6.8.0 - "@codemirror/state": ^6.0.0 - "@lezer/common": ^1.2.1 - "@lezer/python": ^1.1.4 - checksum: a3015abf8035b0c30e5bfc1e8b1bd43c5d9d4ec908b9c3f1e293e755256b41f6e48ad19b2e39c9f91c67264b9061235d9dc293acfe39175d4c2edaab951ceae2 - languageName: node - linkType: hard - -"@codemirror/lang-rust@npm:^6.0.1": - version: 6.0.1 - resolution: "@codemirror/lang-rust@npm:6.0.1" - dependencies: - "@codemirror/language": ^6.0.0 - "@lezer/rust": ^1.0.0 - checksum: 8a439944cb22159b0b3465ca4fa4294c69843219d5d30e278ae6df8e48f30a7a9256129723c025ec9b5e694d31a3560fb004300b125ffcd81c22d13825845170 - languageName: node - linkType: hard - -"@codemirror/lang-sql@npm:^6.6.4": - version: 6.8.0 - resolution: "@codemirror/lang-sql@npm:6.8.0" - dependencies: - "@codemirror/autocomplete": ^6.0.0 - "@codemirror/language": ^6.0.0 - "@codemirror/state": ^6.0.0 - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: 1b5a3c8129b09f24039d8c0906fc4cb8d0f706a424a1d56721057bd1e647797c2b1240bb53eed9bf2bac5806a4e0363e555a3963f04c478efa05829890c537f7 - languageName: node - linkType: hard - -"@codemirror/lang-wast@npm:^6.0.2": - version: 6.0.2 - resolution: "@codemirror/lang-wast@npm:6.0.2" - dependencies: - "@codemirror/language": ^6.0.0 - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: 72119d4a7d726c54167aa227c982ae9fa785c8ad97a158d8350ae95eecfbd8028a803eef939f7e6c5c6e626fcecda1dc37e9dffc6d5d6ec105f686aeda6b2c24 - languageName: node - linkType: hard - -"@codemirror/lang-xml@npm:^6.1.0": - version: 6.1.0 - resolution: "@codemirror/lang-xml@npm:6.1.0" - dependencies: - "@codemirror/autocomplete": ^6.0.0 - "@codemirror/language": ^6.4.0 - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.0.0 - "@lezer/common": ^1.0.0 - "@lezer/xml": ^1.0.0 - checksum: 3a1b7af07b29ad7e53b77bf584245580b613bc92256059f175f2b1d7c28c4e39b75654fe169b9a8a330a60164b53ff5254bdb5b8ee8c6e6766427ee115c4e229 - languageName: node - linkType: hard - -"@codemirror/language@npm:^6.0.0, @codemirror/language@npm:^6.10.1, @codemirror/language@npm:^6.3.0, @codemirror/language@npm:^6.4.0, @codemirror/language@npm:^6.6.0, @codemirror/language@npm:^6.8.0": - version: 6.10.8 - resolution: "@codemirror/language@npm:6.10.8" - dependencies: - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.23.0 - "@lezer/common": ^1.1.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - style-mod: ^4.0.0 - checksum: 679b69d69faa94f028f996a7005d0c6c2a2e4cd7a7a2614f615c23d7b642c31fc1837915248e864cb1ad59a2f032d1a7a8ef486b5f9904e5f6fbe6f7d2882c38 - languageName: node - linkType: hard - -"@codemirror/legacy-modes@npm:^6.4.0": - version: 6.4.3 - resolution: "@codemirror/legacy-modes@npm:6.4.3" - dependencies: - "@codemirror/language": ^6.0.0 - checksum: 2534946d2f3c1dbde4e7bc16c9c8ce595ab217b0a5b509a15b04b3b74fcabf307c11457a80fd2fb0d352822e70eda5ad993eb48cd5b33d50cd712e4e20714f2b - languageName: node - linkType: hard - -"@codemirror/lint@npm:^6.0.0": - version: 6.8.4 - resolution: "@codemirror/lint@npm:6.8.4" - dependencies: - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.35.0 - crelt: ^1.0.5 - checksum: 640e3dd44eb167d952eb5c5b8518919ba46e164aa3471776342f7f9361e676b4627a76a9f01d51b22127b97413f2bc9b8c60299d8dfdd5fc8ad0225d42de7669 - languageName: node - linkType: hard - -"@codemirror/search@npm:^6.5.6": - version: 6.5.10 - resolution: "@codemirror/search@npm:6.5.10" - dependencies: - "@codemirror/state": ^6.0.0 - "@codemirror/view": ^6.0.0 - crelt: ^1.0.5 - checksum: a30048004ce7cc1ee77a7618485ab5399939eab72b64329d57be98245ea39cb68ba54ad944ee679cc2aeac5bf9f202b2073ad0916f0788497fb64a07073399e8 - languageName: node - linkType: hard - -"@codemirror/state@npm:^6.0.0, @codemirror/state@npm:^6.4.0, @codemirror/state@npm:^6.4.1, @codemirror/state@npm:^6.5.0": - version: 6.5.2 - resolution: "@codemirror/state@npm:6.5.2" - dependencies: - "@marijn/find-cluster-break": ^1.0.0 - checksum: 4473a79475070d73f2e72f2eaaee5b69d2833b5020faa9714609d95dd03f0e5ad02cad8031a541dcd748436842a300332a2925317b39ffa09e3b4831145d98bc - languageName: node - linkType: hard - -"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.26.3, @codemirror/view@npm:^6.27.0, @codemirror/view@npm:^6.35.0": - version: 6.36.4 - resolution: "@codemirror/view@npm:6.36.4" - dependencies: - "@codemirror/state": ^6.5.0 - style-mod: ^4.1.0 - w3c-keyname: ^2.2.4 - checksum: d78f733fa8e3ffff56b676edc4973fa308bb97b0c4f8620a40a0d7a9e18224103c75e0bb462c6e690177fcd36144cafda9045eb9953afc27d7351755e5218e16 - languageName: node - linkType: hard - -"@csstools/css-parser-algorithms@npm:^2.3.1": - version: 2.7.1 - resolution: "@csstools/css-parser-algorithms@npm:2.7.1" - peerDependencies: - "@csstools/css-tokenizer": ^2.4.1 - checksum: 304e6f92e583042c310e368a82b694af563a395e5c55911caefe52765c5acb000b9daa17356ea8a4dd37d4d50132b76de48ced75159b169b53e134ff78b362ba - languageName: node - linkType: hard - -"@csstools/css-tokenizer@npm:^2.2.0": - version: 2.4.1 - resolution: "@csstools/css-tokenizer@npm:2.4.1" - checksum: 395c51f8724ddc4851d836f484346bb3ea6a67af936dde12cbf9a57ae321372e79dee717cbe4823599eb0e6fd2d5405cf8873450e986c2fca6e6ed82e7b10219 - languageName: node - linkType: hard - -"@csstools/media-query-list-parser@npm:^2.1.4": - version: 2.1.13 - resolution: "@csstools/media-query-list-parser@npm:2.1.13" - peerDependencies: - "@csstools/css-parser-algorithms": ^2.7.1 - "@csstools/css-tokenizer": ^2.4.1 - checksum: 7754b4b9fcc749a51a2bcd34a167ad16e7227ff087f6c4e15b3593d3342413446b72dad37f1adb99c62538730c77e3e47842987ce453fbb3849d329a39ba9ad7 - languageName: node - linkType: hard - -"@csstools/selector-specificity@npm:^3.0.0": - version: 3.1.1 - resolution: "@csstools/selector-specificity@npm:3.1.1" - peerDependencies: - postcss-selector-parser: ^6.0.13 - checksum: 3786a6afea97b08ad739ee8f4004f7e0a9e25049cee13af809dbda6462090744012a54bd9275a44712791e8f103f85d21641f14e81799f9dab946b0459a5e1ef - languageName: node - linkType: hard - -"@discoveryjs/json-ext@npm:^0.5.0": - version: 0.5.7 - resolution: "@discoveryjs/json-ext@npm:0.5.7" - checksum: 2176d301cc258ea5c2324402997cf8134ebb212469c0d397591636cea8d3c02f2b3cf9fd58dcb748c7a0dade77ebdc1b10284fa63e608c033a1db52fddc69918 - languageName: node - linkType: hard - -"@emnapi/core@npm:^1.1.0": - version: 1.3.1 - resolution: "@emnapi/core@npm:1.3.1" - dependencies: - "@emnapi/wasi-threads": 1.0.1 - tslib: ^2.4.0 - checksum: 9b4e4bc37e09d901f5d95ca998c4936432a7a2207f33e98e15ae8c9bb34803baa444cef66b8acc80fd701f6634c2718f43709e82432052ea2aa7a71a58cb9164 - languageName: node - linkType: hard - -"@emnapi/runtime@npm:^1.1.0": - version: 1.3.1 - resolution: "@emnapi/runtime@npm:1.3.1" - dependencies: - tslib: ^2.4.0 - checksum: 9a16ae7905a9c0e8956cf1854ef74e5087fbf36739abdba7aa6b308485aafdc993da07c19d7af104cd5f8e425121120852851bb3a0f78e2160e420a36d47f42f - languageName: node - linkType: hard - -"@emnapi/wasi-threads@npm:1.0.1": - version: 1.0.1 - resolution: "@emnapi/wasi-threads@npm:1.0.1" - dependencies: - tslib: ^2.4.0 - checksum: e154880440ff9bfe67b417f30134f0ff6fee28913dbf4a22de2e67dda5bf5b51055647c5d1565281df17ef5dfcc89256546bdf9b8ccfd07e07566617e7ce1498 - languageName: node - linkType: hard - -"@esbuild/aix-ppc64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/aix-ppc64@npm:0.25.1" - conditions: os=aix & cpu=ppc64 - languageName: node - linkType: hard - -"@esbuild/android-arm64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/android-arm64@npm:0.25.1" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/android-arm@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/android-arm@npm:0.25.1" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - -"@esbuild/android-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/android-x64@npm:0.25.1" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/darwin-arm64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/darwin-arm64@npm:0.25.1" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/darwin-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/darwin-x64@npm:0.25.1" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/freebsd-arm64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/freebsd-arm64@npm:0.25.1" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/freebsd-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/freebsd-x64@npm:0.25.1" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/linux-arm64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-arm64@npm:0.25.1" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/linux-arm@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-arm@npm:0.25.1" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"@esbuild/linux-ia32@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-ia32@npm:0.25.1" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - -"@esbuild/linux-loong64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-loong64@npm:0.25.1" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - -"@esbuild/linux-mips64el@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-mips64el@npm:0.25.1" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - -"@esbuild/linux-ppc64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-ppc64@npm:0.25.1" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - -"@esbuild/linux-riscv64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-riscv64@npm:0.25.1" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - -"@esbuild/linux-s390x@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-s390x@npm:0.25.1" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - -"@esbuild/linux-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/linux-x64@npm:0.25.1" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/netbsd-arm64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/netbsd-arm64@npm:0.25.1" - conditions: os=netbsd & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/netbsd-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/netbsd-x64@npm:0.25.1" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/openbsd-arm64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/openbsd-arm64@npm:0.25.1" - conditions: os=openbsd & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/openbsd-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/openbsd-x64@npm:0.25.1" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/sunos-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/sunos-x64@npm:0.25.1" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - -"@esbuild/win32-arm64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/win32-arm64@npm:0.25.1" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"@esbuild/win32-ia32@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/win32-ia32@npm:0.25.1" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"@esbuild/win32-x64@npm:0.25.1": - version: 0.25.1 - resolution: "@esbuild/win32-x64@npm:0.25.1" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": - version: 4.5.0 - resolution: "@eslint-community/eslint-utils@npm:4.5.0" - dependencies: - eslint-visitor-keys: ^3.4.3 - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: b05ca7881b1db4ac4f29131d4ca07ace219d497f44eafc434331d3d30d2f6452436d96f6fd3fc77761254a79e62f53967e3dd2741678ef3dfe99ad6c01065201 - languageName: node - linkType: hard - -"@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": - version: 4.12.1 - resolution: "@eslint-community/regexpp@npm:4.12.1" - checksum: 0d628680e204bc316d545b4993d3658427ca404ae646ce541fcc65306b8c712c340e5e573e30fb9f85f4855c0c5f6dca9868931f2fcced06417fbe1a0c6cd2d6 - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^2.1.4": - version: 2.1.4 - resolution: "@eslint/eslintrc@npm:2.1.4" - dependencies: - ajv: ^6.12.4 - debug: ^4.3.2 - espree: ^9.6.0 - globals: ^13.19.0 - ignore: ^5.2.0 - import-fresh: ^3.2.1 - js-yaml: ^4.1.0 - minimatch: ^3.1.2 - strip-json-comments: ^3.1.1 - checksum: 10957c7592b20ca0089262d8c2a8accbad14b4f6507e35416c32ee6b4dbf9cad67dfb77096bbd405405e9ada2b107f3797fe94362e1c55e0b09d6e90dd149127 - languageName: node - linkType: hard - -"@eslint/js@npm:8.57.1": - version: 8.57.1 - resolution: "@eslint/js@npm:8.57.1" - checksum: 2afb77454c06e8316793d2e8e79a0154854d35e6782a1217da274ca60b5044d2c69d6091155234ed0551a1e408f86f09dd4ece02752c59568fa403e60611e880 - languageName: node - linkType: hard - -"@eslint/js@npm:^9.19.0": - version: 9.22.0 - resolution: "@eslint/js@npm:9.22.0" - checksum: 3eb6ed01c31f185b1822b78a872af5b87daa4aaf2ed753ce81c0c7227c852a09e1c7356103259f35f09e77d9e116c796cec6958702044d057f0c179b53b783ec - languageName: node - linkType: hard - -"@fortawesome/fontawesome-free@npm:^5.12.0": - version: 5.15.4 - resolution: "@fortawesome/fontawesome-free@npm:5.15.4" - checksum: 32281c3df4075290d9a96dfc22f72fadb3da7055d4117e48d34046b8c98032a55fa260ae351b0af5d6f6fb57a2f5d79a4abe52af456da35195f7cb7dda27b4a2 - languageName: node - linkType: hard - -"@humanwhocodes/config-array@npm:^0.13.0": - version: 0.13.0 - resolution: "@humanwhocodes/config-array@npm:0.13.0" - dependencies: - "@humanwhocodes/object-schema": ^2.0.3 - debug: ^4.3.1 - minimatch: ^3.0.5 - checksum: eae69ff9134025dd2924f0b430eb324981494be26f0fddd267a33c28711c4db643242cf9fddf7dadb9d16c96b54b2d2c073e60a56477df86e0173149313bd5d6 - languageName: node - linkType: hard - -"@humanwhocodes/module-importer@npm:^1.0.1": - version: 1.0.1 - resolution: "@humanwhocodes/module-importer@npm:1.0.1" - checksum: 0fd22007db8034a2cdf2c764b140d37d9020bbfce8a49d3ec5c05290e77d4b0263b1b972b752df8c89e5eaa94073408f2b7d977aed131faf6cf396ebb5d7fb61 - languageName: node - linkType: hard - -"@humanwhocodes/object-schema@npm:^2.0.3": - version: 2.0.3 - resolution: "@humanwhocodes/object-schema@npm:2.0.3" - checksum: d3b78f6c5831888c6ecc899df0d03bcc25d46f3ad26a11d7ea52944dc36a35ef543fad965322174238d677a43d5c694434f6607532cff7077062513ad7022631 - languageName: node - linkType: hard - -"@hutson/parse-repository-url@npm:^3.0.0": - version: 3.0.2 - resolution: "@hutson/parse-repository-url@npm:3.0.2" - checksum: 39992c5f183c5ca3d761d6ed9dfabcb79b5f3750bf1b7f3532e1dc439ca370138bbd426ee250fdaba460bc948e6761fbefd484b8f4f36885d71ded96138340d1 - languageName: node - linkType: hard - -"@isaacs/cliui@npm:^8.0.2": - version: 8.0.2 - resolution: "@isaacs/cliui@npm:8.0.2" - dependencies: - string-width: ^5.1.2 - string-width-cjs: "npm:string-width@^4.2.0" - strip-ansi: ^7.0.1 - strip-ansi-cjs: "npm:strip-ansi@^6.0.1" - wrap-ansi: ^8.1.0 - wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: 4a473b9b32a7d4d3cfb7a614226e555091ff0c5a29a1734c28c72a182c2f6699b26fc6b5c2131dfd841e86b185aea714c72201d7c98c2fba5f17709333a67aeb - languageName: node - linkType: hard - -"@isaacs/fs-minipass@npm:^4.0.0": - version: 4.0.1 - resolution: "@isaacs/fs-minipass@npm:4.0.1" - dependencies: - minipass: ^7.0.4 - checksum: 5d36d289960e886484362d9eb6a51d1ea28baed5f5d0140bbe62b99bac52eaf06cc01c2bc0d3575977962f84f6b2c4387b043ee632216643d4787b0999465bf2 - languageName: node - linkType: hard - -"@isaacs/string-locale-compare@npm:^1.1.0": - version: 1.1.0 - resolution: "@isaacs/string-locale-compare@npm:1.1.0" - checksum: 7287da5d11497b82c542d3c2abe534808015be4f4883e71c26853277b5456f6bbe4108535db847a29f385ad6dc9318ffb0f55ee79bb5f39993233d7dccf8751d - languageName: node - linkType: hard - -"@istanbuljs/load-nyc-config@npm:^1.0.0": - version: 1.1.0 - resolution: "@istanbuljs/load-nyc-config@npm:1.1.0" - dependencies: - camelcase: ^5.3.1 - find-up: ^4.1.0 - get-package-type: ^0.1.0 - js-yaml: ^3.13.1 - resolve-from: ^5.0.0 - checksum: d578da5e2e804d5c93228450a1380e1a3c691de4953acc162f387b717258512a3e07b83510a936d9fab03eac90817473917e24f5d16297af3867f59328d58568 - languageName: node - linkType: hard - -"@istanbuljs/schema@npm:^0.1.2, @istanbuljs/schema@npm:^0.1.3": - version: 0.1.3 - resolution: "@istanbuljs/schema@npm:0.1.3" - checksum: 5282759d961d61350f33d9118d16bcaed914ebf8061a52f4fa474b2cb08720c9c81d165e13b82f2e5a8a212cc5af482f0c6fc1ac27b9e067e5394c9a6ed186c9 - languageName: node - linkType: hard - -"@jest/console@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/console@npm:29.7.0" - dependencies: - "@jest/types": ^29.6.3 - "@types/node": "*" - chalk: ^4.0.0 - jest-message-util: ^29.7.0 - jest-util: ^29.7.0 - slash: ^3.0.0 - checksum: 0e3624e32c5a8e7361e889db70b170876401b7d70f509a2538c31d5cd50deb0c1ae4b92dc63fe18a0902e0a48c590c21d53787a0df41a52b34fa7cab96c384d6 - languageName: node - linkType: hard - -"@jest/core@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/core@npm:29.7.0" - dependencies: - "@jest/console": ^29.7.0 - "@jest/reporters": ^29.7.0 - "@jest/test-result": ^29.7.0 - "@jest/transform": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/node": "*" - ansi-escapes: ^4.2.1 - chalk: ^4.0.0 - ci-info: ^3.2.0 - exit: ^0.1.2 - graceful-fs: ^4.2.9 - jest-changed-files: ^29.7.0 - jest-config: ^29.7.0 - jest-haste-map: ^29.7.0 - jest-message-util: ^29.7.0 - jest-regex-util: ^29.6.3 - jest-resolve: ^29.7.0 - jest-resolve-dependencies: ^29.7.0 - jest-runner: ^29.7.0 - jest-runtime: ^29.7.0 - jest-snapshot: ^29.7.0 - jest-util: ^29.7.0 - jest-validate: ^29.7.0 - jest-watcher: ^29.7.0 - micromatch: ^4.0.4 - pretty-format: ^29.7.0 - slash: ^3.0.0 - strip-ansi: ^6.0.0 - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - checksum: af759c9781cfc914553320446ce4e47775ae42779e73621c438feb1e4231a5d4862f84b1d8565926f2d1aab29b3ec3dcfdc84db28608bdf5f29867124ebcfc0d - languageName: node - linkType: hard - -"@jest/environment@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/environment@npm:29.7.0" - dependencies: - "@jest/fake-timers": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/node": "*" - jest-mock: ^29.7.0 - checksum: 6fb398143b2543d4b9b8d1c6dbce83fa5247f84f550330604be744e24c2bd2178bb893657d62d1b97cf2f24baf85c450223f8237cccb71192c36a38ea2272934 - languageName: node - linkType: hard - -"@jest/expect-utils@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/expect-utils@npm:29.7.0" - dependencies: - jest-get-type: ^29.6.3 - checksum: 75eb177f3d00b6331bcaa057e07c0ccb0733a1d0a1943e1d8db346779039cb7f103789f16e502f888a3096fb58c2300c38d1f3748b36a7fa762eb6f6d1b160ed - languageName: node - linkType: hard - -"@jest/expect@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/expect@npm:29.7.0" - dependencies: - expect: ^29.7.0 - jest-snapshot: ^29.7.0 - checksum: a01cb85fd9401bab3370618f4b9013b90c93536562222d920e702a0b575d239d74cecfe98010aaec7ad464f67cf534a353d92d181646a4b792acaa7e912ae55e - languageName: node - linkType: hard - -"@jest/fake-timers@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/fake-timers@npm:29.7.0" - dependencies: - "@jest/types": ^29.6.3 - "@sinonjs/fake-timers": ^10.0.2 - "@types/node": "*" - jest-message-util: ^29.7.0 - jest-mock: ^29.7.0 - jest-util: ^29.7.0 - checksum: caf2bbd11f71c9241b458d1b5a66cbe95debc5a15d96442444b5d5c7ba774f523c76627c6931cca5e10e76f0d08761f6f1f01a608898f4751a0eee54fc3d8d00 - languageName: node - linkType: hard - -"@jest/globals@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/globals@npm:29.7.0" - dependencies: - "@jest/environment": ^29.7.0 - "@jest/expect": ^29.7.0 - "@jest/types": ^29.6.3 - jest-mock: ^29.7.0 - checksum: 97dbb9459135693ad3a422e65ca1c250f03d82b2a77f6207e7fa0edd2c9d2015fbe4346f3dc9ebff1678b9d8da74754d4d440b7837497f8927059c0642a22123 - languageName: node - linkType: hard - -"@jest/reporters@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/reporters@npm:29.7.0" - dependencies: - "@bcoe/v8-coverage": ^0.2.3 - "@jest/console": ^29.7.0 - "@jest/test-result": ^29.7.0 - "@jest/transform": ^29.7.0 - "@jest/types": ^29.6.3 - "@jridgewell/trace-mapping": ^0.3.18 - "@types/node": "*" - chalk: ^4.0.0 - collect-v8-coverage: ^1.0.0 - exit: ^0.1.2 - glob: ^7.1.3 - graceful-fs: ^4.2.9 - istanbul-lib-coverage: ^3.0.0 - istanbul-lib-instrument: ^6.0.0 - istanbul-lib-report: ^3.0.0 - istanbul-lib-source-maps: ^4.0.0 - istanbul-reports: ^3.1.3 - jest-message-util: ^29.7.0 - jest-util: ^29.7.0 - jest-worker: ^29.7.0 - slash: ^3.0.0 - string-length: ^4.0.1 - strip-ansi: ^6.0.0 - v8-to-istanbul: ^9.0.1 - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - checksum: 7eadabd62cc344f629024b8a268ecc8367dba756152b761bdcb7b7e570a3864fc51b2a9810cd310d85e0a0173ef002ba4528d5ea0329fbf66ee2a3ada9c40455 - languageName: node - linkType: hard - -"@jest/schemas@npm:^29.6.3": - version: 29.6.3 - resolution: "@jest/schemas@npm:29.6.3" - dependencies: - "@sinclair/typebox": ^0.27.8 - checksum: 910040425f0fc93cd13e68c750b7885590b8839066dfa0cd78e7def07bbb708ad869381f725945d66f2284de5663bbecf63e8fdd856e2ae6e261ba30b1687e93 - languageName: node - linkType: hard - -"@jest/source-map@npm:^29.6.3": - version: 29.6.3 - resolution: "@jest/source-map@npm:29.6.3" - dependencies: - "@jridgewell/trace-mapping": ^0.3.18 - callsites: ^3.0.0 - graceful-fs: ^4.2.9 - checksum: bcc5a8697d471396c0003b0bfa09722c3cd879ad697eb9c431e6164e2ea7008238a01a07193dfe3cbb48b1d258eb7251f6efcea36f64e1ebc464ea3c03ae2deb - languageName: node - linkType: hard - -"@jest/test-result@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/test-result@npm:29.7.0" - dependencies: - "@jest/console": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/istanbul-lib-coverage": ^2.0.0 - collect-v8-coverage: ^1.0.0 - checksum: 67b6317d526e335212e5da0e768e3b8ab8a53df110361b80761353ad23b6aea4432b7c5665bdeb87658ea373b90fb1afe02ed3611ef6c858c7fba377505057fa - languageName: node - linkType: hard - -"@jest/test-sequencer@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/test-sequencer@npm:29.7.0" - dependencies: - "@jest/test-result": ^29.7.0 - graceful-fs: ^4.2.9 - jest-haste-map: ^29.7.0 - slash: ^3.0.0 - checksum: 73f43599017946be85c0b6357993b038f875b796e2f0950487a82f4ebcb115fa12131932dd9904026b4ad8be131fe6e28bd8d0aa93b1563705185f9804bff8bd - languageName: node - linkType: hard - -"@jest/transform@npm:^29.7.0": - version: 29.7.0 - resolution: "@jest/transform@npm:29.7.0" - dependencies: - "@babel/core": ^7.11.6 - "@jest/types": ^29.6.3 - "@jridgewell/trace-mapping": ^0.3.18 - babel-plugin-istanbul: ^6.1.1 - chalk: ^4.0.0 - convert-source-map: ^2.0.0 - fast-json-stable-stringify: ^2.1.0 - graceful-fs: ^4.2.9 - jest-haste-map: ^29.7.0 - jest-regex-util: ^29.6.3 - jest-util: ^29.7.0 - micromatch: ^4.0.4 - pirates: ^4.0.4 - slash: ^3.0.0 - write-file-atomic: ^4.0.2 - checksum: 0f8ac9f413903b3cb6d240102db848f2a354f63971ab885833799a9964999dd51c388162106a807f810071f864302cdd8e3f0c241c29ce02d85a36f18f3f40ab - languageName: node - linkType: hard - -"@jest/types@npm:^29.6.3": - version: 29.6.3 - resolution: "@jest/types@npm:29.6.3" - dependencies: - "@jest/schemas": ^29.6.3 - "@types/istanbul-lib-coverage": ^2.0.0 - "@types/istanbul-reports": ^3.0.0 - "@types/node": "*" - "@types/yargs": ^17.0.8 - chalk: ^4.0.0 - checksum: a0bcf15dbb0eca6bdd8ce61a3fb055349d40268622a7670a3b2eb3c3dbafe9eb26af59938366d520b86907b9505b0f9b29b85cec11579a9e580694b87cd90fcc - languageName: node - linkType: hard - -"@jridgewell/gen-mapping@npm:^0.3.5": - version: 0.3.8 - resolution: "@jridgewell/gen-mapping@npm:0.3.8" - dependencies: - "@jridgewell/set-array": ^1.2.1 - "@jridgewell/sourcemap-codec": ^1.4.10 - "@jridgewell/trace-mapping": ^0.3.24 - checksum: c0687b5227461717aa537fe71a42e356bcd1c43293b3353796a148bf3b0d6f59109def46c22f05b60e29a46f19b2e4676d027959a7c53a6c92b9d5b0d87d0420 - languageName: node - linkType: hard - -"@jridgewell/resolve-uri@npm:^3.1.0": - version: 3.1.2 - resolution: "@jridgewell/resolve-uri@npm:3.1.2" - checksum: 83b85f72c59d1c080b4cbec0fef84528963a1b5db34e4370fa4bd1e3ff64a0d80e0cee7369d11d73c704e0286fb2865b530acac7a871088fbe92b5edf1000870 - languageName: node - linkType: hard - -"@jridgewell/set-array@npm:^1.2.1": - version: 1.2.1 - resolution: "@jridgewell/set-array@npm:1.2.1" - checksum: 832e513a85a588f8ed4f27d1279420d8547743cc37fcad5a5a76fc74bb895b013dfe614d0eed9cb860048e6546b798f8f2652020b4b2ba0561b05caa8c654b10 - languageName: node - linkType: hard - -"@jridgewell/source-map@npm:^0.3.3": - version: 0.3.6 - resolution: "@jridgewell/source-map@npm:0.3.6" - dependencies: - "@jridgewell/gen-mapping": ^0.3.5 - "@jridgewell/trace-mapping": ^0.3.25 - checksum: c9dc7d899397df95e3c9ec287b93c0b56f8e4453cd20743e2b9c8e779b1949bc3cccf6c01bb302779e46560eb45f62ea38d19fedd25370d814734268450a9f30 - languageName: node - linkType: hard - -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": - version: 1.5.0 - resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" - checksum: 05df4f2538b3b0f998ea4c1cd34574d0feba216fa5d4ccaef0187d12abf82eafe6021cec8b49f9bb4d90f2ba4582ccc581e72986a5fcf4176ae0cfeb04cf52ec - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": - version: 0.3.25 - resolution: "@jridgewell/trace-mapping@npm:0.3.25" - dependencies: - "@jridgewell/resolve-uri": ^3.1.0 - "@jridgewell/sourcemap-codec": ^1.4.14 - checksum: 9d3c40d225e139987b50c48988f8717a54a8c994d8a948ee42e1412e08988761d0754d7d10b803061cc3aebf35f92a5dbbab493bd0e1a9ef9e89a2130e83ba34 - languageName: node - linkType: hard - -"@jupyter/react-components@npm:^0.16.6": - version: 0.16.7 - resolution: "@jupyter/react-components@npm:0.16.7" - dependencies: - "@jupyter/web-components": ^0.16.7 - react: ">=17.0.0 <19.0.0" - checksum: 37894347e63ebb528725e8b8b4038d138019823f5c9e28e3f6abb93b46d771b2ee3cc004d5ff7d9a06a93f2d90e41000bd2abae14364be34ba99c5e05864810e - languageName: node - linkType: hard - -"@jupyter/web-components@npm:^0.16.6, @jupyter/web-components@npm:^0.16.7": - version: 0.16.7 - resolution: "@jupyter/web-components@npm:0.16.7" - dependencies: - "@microsoft/fast-colors": ^5.3.1 - "@microsoft/fast-element": ^1.12.0 - "@microsoft/fast-foundation": ^2.49.4 - "@microsoft/fast-web-utilities": ^5.4.1 - checksum: ec3336247bbabb2e2587c2cf8b9d0e80786b454916dd600b3d6791bf08c3d1e45a7ec1becf366a5491ab56b0be020baa8c50a5b6067961faf5ec904de31243aa - languageName: node - linkType: hard - -"@jupyter/ydoc@npm:^3.0.0": - version: 3.0.3 - resolution: "@jupyter/ydoc@npm:3.0.3" +"@jupyter/ydoc@npm:^3.0.0": + version: 3.0.3 + resolution: "@jupyter/ydoc@npm:3.0.3" dependencies: "@jupyterlab/nbformat": ^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0 "@lumino/coreutils": ^1.11.0 || ^2.0.0 @@ -2257,251 +297,27 @@ __metadata: "@lumino/signaling": ^1.10.0 || ^2.0.0 y-protocols: ^1.0.5 yjs: ^13.5.40 - checksum: e12f03689449053a2cd2a0b34b86b421794422f8dd74a9b5ffbb375ef65a2ee07ce973f3a01fb2d7d3357a01096c89e36e50c145c1e843374c4ce2cf16253daa - languageName: node - linkType: hard - -"@jupyterlab/application@npm:^4.0.0, @jupyterlab/application@npm:^4.3.2, @jupyterlab/application@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/application@npm:4.3.5" - dependencies: - "@fortawesome/fontawesome-free": ^5.12.0 - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/docregistry": ^4.3.5 - "@jupyterlab/rendermime": ^4.3.5 - "@jupyterlab/rendermime-interfaces": ^3.11.5 - "@jupyterlab/services": ^7.3.5 - "@jupyterlab/statedb": ^4.3.5 - "@jupyterlab/translation": ^4.3.5 - "@jupyterlab/ui-components": ^4.3.5 - "@lumino/algorithm": ^2.0.2 - "@lumino/application": ^2.4.1 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 - "@lumino/polling": ^2.1.3 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - checksum: 2111efe2caafed74a78c2ddd6220baa6ccc459c27bde3cc80a0a53a403ad08ae2f0b3ea2e56e24b13440bc6fb3d254fc5519536127f47bd50a496bc44458aeb1 - languageName: node - linkType: hard - -"@jupyterlab/apputils@npm:^4.4.5": - version: 4.4.5 - resolution: "@jupyterlab/apputils@npm:4.4.5" - dependencies: - "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/observables": ^5.3.5 - "@jupyterlab/rendermime-interfaces": ^3.11.5 - "@jupyterlab/services": ^7.3.5 - "@jupyterlab/settingregistry": ^4.3.5 - "@jupyterlab/statedb": ^4.3.5 - "@jupyterlab/statusbar": ^4.3.5 - "@jupyterlab/translation": ^4.3.5 - "@jupyterlab/ui-components": ^4.3.5 - "@lumino/algorithm": ^2.0.2 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/domutils": ^2.0.2 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 - "@lumino/widgets": ^2.5.0 - "@types/react": ^18.0.26 - react: ^18.2.0 - sanitize-html: ~2.12.1 - checksum: 541e063f820413294f08900e60b34a992bfb5ee29f3c9bc575b59518e2b9b82d9d38ed22e3ca7afa1a871db9873528d0830178d63884736477fcc2d777a78068 - languageName: node - linkType: hard - -"@jupyterlab/attachments@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/attachments@npm:4.3.5" - dependencies: - "@jupyterlab/nbformat": ^4.3.5 - "@jupyterlab/observables": ^5.3.5 - "@jupyterlab/rendermime": ^4.3.5 - "@jupyterlab/rendermime-interfaces": ^3.11.5 - "@lumino/disposable": ^2.1.3 - "@lumino/signaling": ^2.1.3 - checksum: ed4d826174a4bd1223cf64691824c90162951cc6829d5c284c79eac6abc7cd04e4606591b9d1e8d874535639dcc3361d9aee428f9d9ead8bd83aaff2894ba699 - languageName: node - linkType: hard - -"@jupyterlab/builder@npm:^4.0.0, @jupyterlab/builder@npm:^4.3.2": - version: 4.3.5 - resolution: "@jupyterlab/builder@npm:4.3.5" - dependencies: - "@lumino/algorithm": ^2.0.2 - "@lumino/application": ^2.4.1 - "@lumino/commands": ^2.3.1 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/domutils": ^2.0.2 - "@lumino/dragdrop": ^2.1.5 - "@lumino/messaging": ^2.0.2 - "@lumino/properties": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 - "@lumino/widgets": ^2.5.0 - ajv: ^8.12.0 - commander: ^9.4.1 - css-loader: ^6.7.1 - duplicate-package-checker-webpack-plugin: ^3.0.0 - fs-extra: ^10.1.0 - glob: ~7.1.6 - license-webpack-plugin: ^2.3.14 - mini-css-extract-plugin: ^2.7.0 - mini-svg-data-uri: ^1.4.4 - path-browserify: ^1.0.0 - process: ^0.11.10 - source-map-loader: ~1.0.2 - style-loader: ~3.3.1 - supports-color: ^7.2.0 - terser-webpack-plugin: ^5.3.7 - webpack: ^5.76.1 - webpack-cli: ^5.0.1 - webpack-merge: ^5.8.0 - worker-loader: ^3.0.2 - bin: - build-labextension: lib/build-labextension.js - checksum: 8f7e546d07deae7c624b208a9fecde1e7cc04e10aa47ac83fdfd4e37738642f3c41d766a6a04053d9d194bb512bc95ae2283298ccec57c36bbcb27b74efca90d - languageName: node - linkType: hard - -"@jupyterlab/cells@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/cells@npm:4.3.5" - dependencies: - "@codemirror/state": ^6.4.1 - "@codemirror/view": ^6.26.3 - "@jupyter/ydoc": ^3.0.0 - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/attachments": ^4.3.5 - "@jupyterlab/codeeditor": ^4.3.5 - "@jupyterlab/codemirror": ^4.3.5 - "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/documentsearch": ^4.3.5 - "@jupyterlab/filebrowser": ^4.3.5 - "@jupyterlab/nbformat": ^4.3.5 - "@jupyterlab/observables": ^5.3.5 - "@jupyterlab/outputarea": ^4.3.5 - "@jupyterlab/rendermime": ^4.3.5 - "@jupyterlab/services": ^7.3.5 - "@jupyterlab/toc": ^6.3.5 - "@jupyterlab/translation": ^4.3.5 - "@jupyterlab/ui-components": ^4.3.5 - "@lumino/algorithm": ^2.0.2 - "@lumino/coreutils": ^2.2.0 - "@lumino/domutils": ^2.0.2 - "@lumino/dragdrop": ^2.1.5 - "@lumino/messaging": ^2.0.2 - "@lumino/polling": ^2.1.3 - "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 - "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: 349d09e0edea165c4f7d490d91b65a135c1f7423601fd0642627449b69c5a8c2030d123e600ccb94603ae9ec145724a3c5168e149bf620d8100322b7ed5f80f1 - languageName: node - linkType: hard - -"@jupyterlab/codeeditor@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/codeeditor@npm:4.3.5" - dependencies: - "@codemirror/state": ^6.4.1 - "@jupyter/ydoc": ^3.0.0 - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/nbformat": ^4.3.5 - "@jupyterlab/observables": ^5.3.5 - "@jupyterlab/statusbar": ^4.3.5 - "@jupyterlab/translation": ^4.3.5 - "@jupyterlab/ui-components": ^4.3.5 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/dragdrop": ^2.1.5 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: 6308f41523351ca6a2a24cf55094a1effcefaf11c00a3d297fe59237ce87ded8a1b54834661398d44666cbcbb6a134432adc01c4ef7857a4a94692c5093cb77d - languageName: node - linkType: hard - -"@jupyterlab/codemirror@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/codemirror@npm:4.3.5" - dependencies: - "@codemirror/autocomplete": ^6.16.0 - "@codemirror/commands": ^6.5.0 - "@codemirror/lang-cpp": ^6.0.2 - "@codemirror/lang-css": ^6.2.1 - "@codemirror/lang-html": ^6.4.9 - "@codemirror/lang-java": ^6.0.1 - "@codemirror/lang-javascript": ^6.2.2 - "@codemirror/lang-json": ^6.0.1 - "@codemirror/lang-markdown": ^6.2.5 - "@codemirror/lang-php": ^6.0.1 - "@codemirror/lang-python": ^6.1.6 - "@codemirror/lang-rust": ^6.0.1 - "@codemirror/lang-sql": ^6.6.4 - "@codemirror/lang-wast": ^6.0.2 - "@codemirror/lang-xml": ^6.1.0 - "@codemirror/language": ^6.10.1 - "@codemirror/legacy-modes": ^6.4.0 - "@codemirror/search": ^6.5.6 - "@codemirror/state": ^6.4.1 - "@codemirror/view": ^6.26.3 - "@jupyter/ydoc": ^3.0.0 - "@jupyterlab/codeeditor": ^4.3.5 - "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/documentsearch": ^4.3.5 - "@jupyterlab/nbformat": ^4.3.5 - "@jupyterlab/translation": ^4.3.5 - "@lezer/common": ^1.2.1 - "@lezer/generator": ^1.7.0 - "@lezer/highlight": ^1.2.0 - "@lezer/markdown": ^1.3.0 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/signaling": ^2.1.3 - yjs: ^13.5.40 - checksum: 62d863a161c130a5b56872d8e67d75c1168323f60d389523490fd77a576ee731bc067b36a380e9652606671f29dc032399fcbab9a6d02e2c3901f1b0b03144f1 - languageName: node - linkType: hard - -"@jupyterlab/coreutils@npm:^6.3.5": - version: 6.3.5 - resolution: "@jupyterlab/coreutils@npm:6.3.5" - dependencies: - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/signaling": ^2.1.3 - minimist: ~1.2.0 - path-browserify: ^1.0.0 - url-parse: ~1.5.4 - checksum: a35a96821dccee732de01ade677d5e94b0620db74f3c0a56b71ffe8acf221d41e899ed3ea6c4e4653ec5e46d5eb8889b660e7560a8c1909dfeaeda4db95d855e + checksum: e12f03689449053a2cd2a0b34b86b421794422f8dd74a9b5ffbb375ef65a2ee07ce973f3a01fb2d7d3357a01096c89e36e50c145c1e843374c4ce2cf16253daa languageName: node linkType: hard -"@jupyterlab/docmanager@npm:^4.3.5": +"@jupyterlab/application@npm:^4.3.2": version: 4.3.5 - resolution: "@jupyterlab/docmanager@npm:4.3.5" + resolution: "@jupyterlab/application@npm:4.3.5" dependencies: + "@fortawesome/fontawesome-free": ^5.12.0 "@jupyterlab/apputils": ^4.4.5 "@jupyterlab/coreutils": ^6.3.5 "@jupyterlab/docregistry": ^4.3.5 + "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 "@jupyterlab/services": ^7.3.5 "@jupyterlab/statedb": ^4.3.5 - "@jupyterlab/statusbar": ^4.3.5 "@jupyterlab/translation": ^4.3.5 "@jupyterlab/ui-components": ^4.3.5 "@lumino/algorithm": ^2.0.2 + "@lumino/application": ^2.4.1 + "@lumino/commands": ^2.3.1 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 "@lumino/messaging": ^2.0.2 @@ -2509,186 +325,163 @@ __metadata: "@lumino/properties": ^2.0.2 "@lumino/signaling": ^2.1.3 "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: 49b904837d9ace4b4fd7445e5ca743aa29a2c7cb29cb888a9fb8a12649be4e69ede7a7f192b04909c672839c35ecf7eae2e584fb2ab8a6d51aab9519acaef3aa + checksum: 2111efe2caafed74a78c2ddd6220baa6ccc459c27bde3cc80a0a53a403ad08ae2f0b3ea2e56e24b13440bc6fb3d254fc5519536127f47bd50a496bc44458aeb1 languageName: node linkType: hard -"@jupyterlab/docregistry@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/docregistry@npm:4.3.5" +"@jupyterlab/apputils@npm:^4.4.5": + version: 4.4.5 + resolution: "@jupyterlab/apputils@npm:4.4.5" dependencies: - "@jupyter/ydoc": ^3.0.0 - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/codeeditor": ^4.3.5 "@jupyterlab/coreutils": ^6.3.5 "@jupyterlab/observables": ^5.3.5 - "@jupyterlab/rendermime": ^4.3.5 "@jupyterlab/rendermime-interfaces": ^3.11.5 "@jupyterlab/services": ^7.3.5 + "@jupyterlab/settingregistry": ^4.3.5 + "@jupyterlab/statedb": ^4.3.5 + "@jupyterlab/statusbar": ^4.3.5 "@jupyterlab/translation": ^4.3.5 "@jupyterlab/ui-components": ^4.3.5 "@lumino/algorithm": ^2.0.2 + "@lumino/commands": ^2.3.1 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 "@lumino/messaging": ^2.0.2 - "@lumino/properties": ^2.0.2 "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 "@lumino/widgets": ^2.5.0 + "@types/react": ^18.0.26 react: ^18.2.0 - checksum: d8503ed73737610d6b2d7bb26a9565547069bdf2e41413ede1d2b6d3bd8f1423681eae32388561897de3d457873ecdea382ad431952a61db0f8f6645154b21be + sanitize-html: ~2.12.1 + checksum: 541e063f820413294f08900e60b34a992bfb5ee29f3c9bc575b59518e2b9b82d9d38ed22e3ca7afa1a871db9873528d0830178d63884736477fcc2d777a78068 languageName: node linkType: hard -"@jupyterlab/documentsearch@npm:^4.3.5": +"@jupyterlab/builder@npm:^4.3.2": version: 4.3.5 - resolution: "@jupyterlab/documentsearch@npm:4.3.5" + resolution: "@jupyterlab/builder@npm:4.3.5" dependencies: - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/translation": ^4.3.5 - "@jupyterlab/ui-components": ^4.3.5 + "@lumino/algorithm": ^2.0.2 + "@lumino/application": ^2.4.1 "@lumino/commands": ^2.3.1 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 "@lumino/messaging": ^2.0.2 - "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: c1a3c3277b5b114603e47c4e9f8091a9482f0a529db3adb0a864adf54549ad8a1e9332ddefc05dba628982b1a2f5f9f86680b50bb6bc1176e82edbbdf69a9fc1 + ajv: ^8.12.0 + commander: ^9.4.1 + css-loader: ^6.7.1 + duplicate-package-checker-webpack-plugin: ^3.0.0 + fs-extra: ^10.1.0 + glob: ~7.1.6 + license-webpack-plugin: ^2.3.14 + mini-css-extract-plugin: ^2.7.0 + mini-svg-data-uri: ^1.4.4 + path-browserify: ^1.0.0 + process: ^0.11.10 + source-map-loader: ~1.0.2 + style-loader: ~3.3.1 + supports-color: ^7.2.0 + terser-webpack-plugin: ^5.3.7 + webpack: ^5.76.1 + webpack-cli: ^5.0.1 + webpack-merge: ^5.8.0 + worker-loader: ^3.0.2 + bin: + build-labextension: lib/build-labextension.js + checksum: 8f7e546d07deae7c624b208a9fecde1e7cc04e10aa47ac83fdfd4e37738642f3c41d766a6a04053d9d194bb512bc95ae2283298ccec57c36bbcb27b74efca90d languageName: node linkType: hard -"@jupyterlab/filebrowser@npm:^4.3.5": +"@jupyterlab/codeeditor@npm:^4.3.5": version: 4.3.5 - resolution: "@jupyterlab/filebrowser@npm:4.3.5" + resolution: "@jupyterlab/codeeditor@npm:4.3.5" dependencies: + "@codemirror/state": ^6.4.1 + "@jupyter/ydoc": ^3.0.0 "@jupyterlab/apputils": ^4.4.5 "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/docmanager": ^4.3.5 - "@jupyterlab/docregistry": ^4.3.5 - "@jupyterlab/services": ^7.3.5 - "@jupyterlab/statedb": ^4.3.5 + "@jupyterlab/nbformat": ^4.3.5 + "@jupyterlab/observables": ^5.3.5 "@jupyterlab/statusbar": ^4.3.5 "@jupyterlab/translation": ^4.3.5 "@jupyterlab/ui-components": ^4.3.5 - "@lumino/algorithm": ^2.0.2 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 - "@lumino/domutils": ^2.0.2 "@lumino/dragdrop": ^2.1.5 "@lumino/messaging": ^2.0.2 - "@lumino/polling": ^2.1.3 "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 "@lumino/widgets": ^2.5.0 react: ^18.2.0 - checksum: ad35532ef36c932e622254cb301f7a7881e317194c337f87c15b5a543eb7b9910920cb6713f3cf0d6d4413196e1f9c7fff805a4e13bbc075ff081bc13d201fc5 + checksum: 6308f41523351ca6a2a24cf55094a1effcefaf11c00a3d297fe59237ce87ded8a1b54834661398d44666cbcbb6a134432adc01c4ef7857a4a94692c5093cb77d languageName: node linkType: hard -"@jupyterlab/lsp@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/lsp@npm:4.3.5" +"@jupyterlab/coreutils@npm:^6.3.5": + version: 6.3.5 + resolution: "@jupyterlab/coreutils@npm:6.3.5" dependencies: - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/codeeditor": ^4.3.5 - "@jupyterlab/codemirror": ^4.3.5 - "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/docregistry": ^4.3.5 - "@jupyterlab/services": ^7.3.5 - "@jupyterlab/translation": ^4.3.5 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - lodash.mergewith: ^4.6.1 - vscode-jsonrpc: ^6.0.0 - vscode-languageserver-protocol: ^3.17.0 - vscode-ws-jsonrpc: ~1.0.2 - checksum: 5cc155dc2a208b6064b99bbc0a58db15a746503221edee765233c4196a1e23a000824a597f4ae2eb64b7fe6e8365225ec957a554c8b9faa3e1a4b878f6074c01 - languageName: node - linkType: hard - -"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/nbformat@npm:4.3.5" - dependencies: - "@lumino/coreutils": ^2.2.0 - checksum: 2334846b3c3cf56f0c00dc046bb301f1463efa3f5ca6a79d1301cfe2b380a4050bc906520024ec4a11fc58b2510c12ec98eb021a417f126817623aad36a9f8d8 + minimist: ~1.2.0 + path-browserify: ^1.0.0 + url-parse: ~1.5.4 + checksum: a35a96821dccee732de01ade677d5e94b0620db74f3c0a56b71ffe8acf221d41e899ed3ea6c4e4653ec5e46d5eb8889b660e7560a8c1909dfeaeda4db95d855e languageName: node linkType: hard -"@jupyterlab/notebook@npm:^4.3.5": +"@jupyterlab/docregistry@npm:^4.3.5": version: 4.3.5 - resolution: "@jupyterlab/notebook@npm:4.3.5" + resolution: "@jupyterlab/docregistry@npm:4.3.5" dependencies: "@jupyter/ydoc": ^3.0.0 "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/cells": ^4.3.5 "@jupyterlab/codeeditor": ^4.3.5 - "@jupyterlab/codemirror": ^4.3.5 "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/docregistry": ^4.3.5 - "@jupyterlab/documentsearch": ^4.3.5 - "@jupyterlab/lsp": ^4.3.5 - "@jupyterlab/nbformat": ^4.3.5 "@jupyterlab/observables": ^5.3.5 "@jupyterlab/rendermime": ^4.3.5 + "@jupyterlab/rendermime-interfaces": ^3.11.5 "@jupyterlab/services": ^7.3.5 - "@jupyterlab/settingregistry": ^4.3.5 - "@jupyterlab/statusbar": ^4.3.5 - "@jupyterlab/toc": ^6.3.5 "@jupyterlab/translation": ^4.3.5 "@jupyterlab/ui-components": ^4.3.5 "@lumino/algorithm": ^2.0.2 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 - "@lumino/domutils": ^2.0.2 - "@lumino/dragdrop": ^2.1.5 "@lumino/messaging": ^2.0.2 - "@lumino/polling": ^2.1.3 "@lumino/properties": ^2.0.2 "@lumino/signaling": ^2.1.3 - "@lumino/virtualdom": ^2.0.2 "@lumino/widgets": ^2.5.0 react: ^18.2.0 - checksum: def635ef290186eb2d078e13758fe11cddb86246b141279c7f8e316d9b250d9536fd033f0b55144fc58ae81229edcced2c2c8dd9144f4fd7b8c265405488b3ff + checksum: d8503ed73737610d6b2d7bb26a9565547069bdf2e41413ede1d2b6d3bd8f1423681eae32388561897de3d457873ecdea382ad431952a61db0f8f6645154b21be languageName: node linkType: hard -"@jupyterlab/observables@npm:^5.3.5": - version: 5.3.5 - resolution: "@jupyterlab/observables@npm:5.3.5" +"@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.3.5": + version: 4.3.5 + resolution: "@jupyterlab/nbformat@npm:4.3.5" dependencies: - "@lumino/algorithm": ^2.0.2 "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - checksum: eea903c1b6ebf869850b83172b4edb91caea4a3d0f3b2b3397af2aacbaaaa415dda4df09a0ece88c24e2ef4a3caf5680333cd639a16611c5c1625cc8dbeff1b1 + checksum: 2334846b3c3cf56f0c00dc046bb301f1463efa3f5ca6a79d1301cfe2b380a4050bc906520024ec4a11fc58b2510c12ec98eb021a417f126817623aad36a9f8d8 languageName: node linkType: hard -"@jupyterlab/outputarea@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/outputarea@npm:4.3.5" +"@jupyterlab/observables@npm:^5.3.5": + version: 5.3.5 + resolution: "@jupyterlab/observables@npm:5.3.5" dependencies: - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/nbformat": ^4.3.5 - "@jupyterlab/observables": ^5.3.5 - "@jupyterlab/rendermime": ^4.3.5 - "@jupyterlab/rendermime-interfaces": ^3.11.5 - "@jupyterlab/services": ^7.3.5 - "@jupyterlab/translation": ^4.3.5 "@lumino/algorithm": ^2.0.2 "@lumino/coreutils": ^2.2.0 "@lumino/disposable": ^2.1.3 "@lumino/messaging": ^2.0.2 - "@lumino/properties": ^2.0.2 "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - checksum: 078503d04ad1ecfa727abc50d79f40ee7d7cab2326ed84fdc823bf6a28ff92c9fe0de2a6d258f97ead47c802799c659d705daabe435a08b0fbd91475f1b79979 + checksum: eea903c1b6ebf869850b83172b4edb91caea4a3d0f3b2b3397af2aacbaaaa415dda4df09a0ece88c24e2ef4a3caf5680333cd639a16611c5c1625cc8dbeff1b1 languageName: node linkType: hard @@ -2789,65 +582,6 @@ __metadata: languageName: node linkType: hard -"@jupyterlab/testing@npm:^4.3.5": - version: 4.3.5 - resolution: "@jupyterlab/testing@npm:4.3.5" - dependencies: - "@babel/core": ^7.10.2 - "@babel/preset-env": ^7.10.2 - "@jupyterlab/coreutils": ^6.3.5 - "@lumino/coreutils": ^2.2.0 - "@lumino/signaling": ^2.1.3 - deepmerge: ^4.2.2 - fs-extra: ^10.1.0 - identity-obj-proxy: ^3.0.0 - jest: ^29.2.0 - jest-environment-jsdom: ^29.3.0 - jest-junit: ^15.0.0 - simulate-event: ~1.4.0 - ts-jest: ^29.1.0 - peerDependencies: - typescript: ">=4.3" - checksum: 560067f69f5778f11594609dff0aeca5326a91a48d870b807790b368bc7cb89bcb9d4c1c154a234fe6963bf230a01cd0cd52106c497b6b7f0ff67bb99e491424 - languageName: node - linkType: hard - -"@jupyterlab/testutils@npm:^4.0.0": - version: 4.3.5 - resolution: "@jupyterlab/testutils@npm:4.3.5" - dependencies: - "@jupyterlab/application": ^4.3.5 - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/notebook": ^4.3.5 - "@jupyterlab/rendermime": ^4.3.5 - "@jupyterlab/testing": ^4.3.5 - checksum: 23760c5f570d05fade6e36ff3b0db14bf7e00a9b43b3e89739b5af50a28f37d3f2a2b5ea7e2e96daa6e7e5d5bd1021dff497b0584ef4e0a4820e5bd072b560d2 - languageName: node - linkType: hard - -"@jupyterlab/toc@npm:^6.3.5": - version: 6.3.5 - resolution: "@jupyterlab/toc@npm:6.3.5" - dependencies: - "@jupyter/react-components": ^0.16.6 - "@jupyterlab/apputils": ^4.4.5 - "@jupyterlab/coreutils": ^6.3.5 - "@jupyterlab/docregistry": ^4.3.5 - "@jupyterlab/observables": ^5.3.5 - "@jupyterlab/rendermime": ^4.3.5 - "@jupyterlab/rendermime-interfaces": ^3.11.5 - "@jupyterlab/translation": ^4.3.5 - "@jupyterlab/ui-components": ^4.3.5 - "@lumino/coreutils": ^2.2.0 - "@lumino/disposable": ^2.1.3 - "@lumino/messaging": ^2.0.2 - "@lumino/signaling": ^2.1.3 - "@lumino/widgets": ^2.5.0 - react: ^18.2.0 - checksum: 378625dc3f647f524304e050da4bd753872b9d6cb2a4ff52f1846acd59d51c24fe935ea35c7bc758c3dfe66b5908955b5ed2ebeaa78fcf25b23ffdcde59d6b28 - languageName: node - linkType: hard - "@jupyterlab/translation@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/translation@npm:4.3.5" @@ -2958,172 +692,15 @@ __metadata: tar: 6.2.1 temp-dir: 1.0.0 upath: 2.0.1 - uuid: ^10.0.0 - validate-npm-package-license: ^3.0.4 - validate-npm-package-name: 5.0.1 - wide-align: 1.1.5 - write-file-atomic: 5.0.1 - write-pkg: 4.0.0 - yargs: 17.7.2 - yargs-parser: 21.1.1 - checksum: 4e38df87c896eb5b9c7d83cb8a80275bb85a82bd8fdad748b51e826e9ac92b58e80b6062095b6927d81b1ac8a6f8678b61a546441f9c57eb544e537e6ff94a27 - languageName: node - linkType: hard - -"@lezer/common@npm:^1.0.0, @lezer/common@npm:^1.0.2, @lezer/common@npm:^1.1.0, @lezer/common@npm:^1.2.0, @lezer/common@npm:^1.2.1": - version: 1.2.3 - resolution: "@lezer/common@npm:1.2.3" - checksum: 9b5f52d949adae69d077f56c0b1c2295923108c3dfb241dd9f17654ff708f3eab81ff9fa7f0d0e4a668eabdcb9d961c73e75caca87c966ca1436e30e49130fcb - languageName: node - linkType: hard - -"@lezer/cpp@npm:^1.0.0": - version: 1.1.2 - resolution: "@lezer/cpp@npm:1.1.2" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: a319cd46fd32affc07c9432e9b2b9954becf7766be0361176c525d03474bb794cc051aad9932f48c9df33833eee1d6bfdccab12e571f2b137b4ca765c60c75de - languageName: node - linkType: hard - -"@lezer/css@npm:^1.1.0, @lezer/css@npm:^1.1.7": - version: 1.1.10 - resolution: "@lezer/css@npm:1.1.10" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: 67f302f0b2c84adc8380e77635c225c8eb3a773402e89f85180eb9fdc90ba3fee19ee4ba915523bfbe346ea07746a1b5832e369adfcfb222eedd7b1b1556bf9a - languageName: node - linkType: hard - -"@lezer/generator@npm:^1.7.0": - version: 1.7.2 - resolution: "@lezer/generator@npm:1.7.2" - dependencies: - "@lezer/common": ^1.1.0 - "@lezer/lr": ^1.3.0 - bin: - lezer-generator: src/lezer-generator.cjs - checksum: b5d282c7c749d816f373478ebebbcad839125918ac2038d870d880fc0fb1c932b278b3652beb5854d9a0b5aa8e1a9ba24f8359c5ce4c2b9a5393f85c395a2a91 - languageName: node - linkType: hard - -"@lezer/highlight@npm:^1.0.0, @lezer/highlight@npm:^1.1.3, @lezer/highlight@npm:^1.2.0": - version: 1.2.1 - resolution: "@lezer/highlight@npm:1.2.1" - dependencies: - "@lezer/common": ^1.0.0 - checksum: a8822d7e37f79ff64669eb2df4a9f9d16580e88f2b276a646092e19a9bdccac304e92510e200e35869a8b1f6c27eba5972c508d347a277e9b722d582ab7a23d5 - languageName: node - linkType: hard - -"@lezer/html@npm:^1.3.0": - version: 1.3.10 - resolution: "@lezer/html@npm:1.3.10" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: cce391aab9259704ae3079b3209f74b2f248594dd8b851c28aaff26765e00ebb890a5ff1fe600f2d03aaf4ade0e36de8048d9632b12bfbccd47b3e649c3b0ecd - languageName: node - linkType: hard - -"@lezer/java@npm:^1.0.0": - version: 1.1.3 - resolution: "@lezer/java@npm:1.1.3" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: a4b8a348ab08465cff6e54ec80e397d2629e0911decb4c6a47fd56cd74f6978fae478879b15a2e239203b9e53aef41ecaeba675f8013e290165249abdab7da74 - languageName: node - linkType: hard - -"@lezer/javascript@npm:^1.0.0": - version: 1.4.21 - resolution: "@lezer/javascript@npm:1.4.21" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.1.3 - "@lezer/lr": ^1.3.0 - checksum: 5ff9edaf53fe399d5e1c0c2196837325ca5cf81b59fda546e8ae81a4748f7cbcc4d258202fe77bbb3d5d9561ce8fb2b79cb87f0922c5f5d1117eb6f545fc1055 - languageName: node - linkType: hard - -"@lezer/json@npm:^1.0.0": - version: 1.0.3 - resolution: "@lezer/json@npm:1.0.3" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: 48e7b945fdfa2b5b6f862e27bc31f3991cba93f18df7fed0059b25f119b64dedd50bbc709d279e16e2b3eee10e7758d7d80c6d98d21bc15c284809d268837897 - languageName: node - linkType: hard - -"@lezer/lr@npm:^1.0.0, @lezer/lr@npm:^1.1.0, @lezer/lr@npm:^1.3.0": - version: 1.4.2 - resolution: "@lezer/lr@npm:1.4.2" - dependencies: - "@lezer/common": ^1.0.0 - checksum: 94318ad046c7dfcc8d37e26cb85b99623c39aef60aa51ec2abb30928e7a649f38fa5520f34bd5b356f1db11b6991999589f039e87c8949b0f163be3764f029d8 - languageName: node - linkType: hard - -"@lezer/markdown@npm:^1.0.0, @lezer/markdown@npm:^1.3.0": - version: 1.4.2 - resolution: "@lezer/markdown@npm:1.4.2" - dependencies: - "@lezer/common": ^1.0.0 - "@lezer/highlight": ^1.0.0 - checksum: 3429594eff63a927cc61f315022d0cacd9ca4b1c3c7491128520575a59232d564eb54b9908af082cc6689a9182db2b452cffa58d17c06f9812dd961e93b4130d - languageName: node - linkType: hard - -"@lezer/php@npm:^1.0.0": - version: 1.0.2 - resolution: "@lezer/php@npm:1.0.2" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.1.0 - checksum: c85ef18571d37826b687dd141a0fe110f5814adaf9d1a391e7e482020d7f81df189ca89ec0dd141c1433d48eff4c6e53648b46f008dea8ad2dc574f35f1d4d79 - languageName: node - linkType: hard - -"@lezer/python@npm:^1.1.4": - version: 1.1.16 - resolution: "@lezer/python@npm:1.1.16" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: fb48c64a496c1878248554a82a1a7ba7f8e3f9c73ca0aa1288efe4795b53227fca8d8d3666a7fe0fb1407a730e08da172f0a48daec11d50a686bba7f073ebee6 - languageName: node - linkType: hard - -"@lezer/rust@npm:^1.0.0": - version: 1.0.2 - resolution: "@lezer/rust@npm:1.0.2" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: fc5e97852b42beeb44a0ebe316dc64e3cc49ff481c22e3e67d6003fc4a5c257fcd94959cfcc76cd154fa172db9b3b4b28de5c09f10550d6e5f14869ddc274e5b - languageName: node - linkType: hard - -"@lezer/xml@npm:^1.0.0": - version: 1.0.6 - resolution: "@lezer/xml@npm:1.0.6" - dependencies: - "@lezer/common": ^1.2.0 - "@lezer/highlight": ^1.0.0 - "@lezer/lr": ^1.0.0 - checksum: 71217d49b9207bd19d69ae98ad406d0c7ff395b6ad118528f3f81455f973e01597cac1ffa2741f2c6739d4ede17edb49573eaa3246f8f5a6da4d97dcb940309d + uuid: ^10.0.0 + validate-npm-package-license: ^3.0.4 + validate-npm-package-name: 5.0.1 + wide-align: 1.1.5 + write-file-atomic: 5.0.1 + write-pkg: 4.0.0 + yargs: 17.7.2 + yargs-parser: 21.1.1 + checksum: 4e38df87c896eb5b9c7d83cb8a80275bb85a82bd8fdad748b51e826e9ac92b58e80b6062095b6927d81b1ac8a6f8678b61a546441f9c57eb544e537e6ff94a27 languageName: node linkType: hard @@ -3370,19 +947,6 @@ __metadata: languageName: node linkType: hard -"@npmcli/agent@npm:^3.0.0": - version: 3.0.0 - resolution: "@npmcli/agent@npm:3.0.0" - dependencies: - agent-base: ^7.1.0 - http-proxy-agent: ^7.0.0 - https-proxy-agent: ^7.0.1 - lru-cache: ^10.0.1 - socks-proxy-agent: ^8.0.3 - checksum: e8fc25d536250ed3e669813b36e8c6d805628b472353c57afd8c4fde0fcfcf3dda4ffe22f7af8c9070812ec2e7a03fb41d7151547cef3508efe661a5a3add20f - languageName: node - linkType: hard - "@npmcli/arborist@npm:7.5.4": version: 7.5.4 resolution: "@npmcli/arborist@npm:7.5.4" @@ -3437,15 +1001,6 @@ __metadata: languageName: node linkType: hard -"@npmcli/fs@npm:^4.0.0": - version: 4.0.0 - resolution: "@npmcli/fs@npm:4.0.0" - dependencies: - semver: ^7.3.5 - checksum: 68951c589e9a4328698a35fd82fe71909a257d6f2ede0434d236fa55634f0fbcad9bb8755553ce5849bd25ee6f019f4d435921ac715c853582c4a7f5983c8d4a - languageName: node - linkType: hard - "@npmcli/git@npm:^5.0.0": version: 5.0.8 resolution: "@npmcli/git@npm:5.0.8" @@ -3848,139 +1403,6 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.35.0" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - -"@rollup/rollup-android-arm64@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-android-arm64@npm:4.35.0" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-darwin-arm64@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-darwin-arm64@npm:4.35.0" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-darwin-x64@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-darwin-x64@npm:4.35.0" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-freebsd-arm64@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-freebsd-arm64@npm:4.35.0" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-freebsd-x64@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-freebsd-x64@npm:4.35.0" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0" - conditions: os=linux & cpu=arm & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm-musleabihf@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.35.0" - conditions: os=linux & cpu=arm & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-gnu@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.35.0" - conditions: os=linux & cpu=arm64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-arm64-musl@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.35.0" - conditions: os=linux & cpu=arm64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0" - conditions: os=linux & cpu=loong64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0" - conditions: os=linux & cpu=ppc64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-riscv64-gnu@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.35.0" - conditions: os=linux & cpu=riscv64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-s390x-gnu@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.35.0" - conditions: os=linux & cpu=s390x & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-x64-gnu@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.35.0" - conditions: os=linux & cpu=x64 & libc=glibc - languageName: node - linkType: hard - -"@rollup/rollup-linux-x64-musl@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.35.0" - conditions: os=linux & cpu=x64 & libc=musl - languageName: node - linkType: hard - -"@rollup/rollup-win32-arm64-msvc@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.35.0" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"@rollup/rollup-win32-ia32-msvc@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.35.0" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"@rollup/rollup-win32-x64-msvc@npm:4.35.0": - version: 4.35.0 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.35.0" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@sigstore/bundle@npm:^2.3.2": version: 2.3.2 resolution: "@sigstore/bundle@npm:2.3.2" @@ -4046,31 +1468,6 @@ __metadata: languageName: node linkType: hard -"@sinonjs/commons@npm:^3.0.0": - version: 3.0.1 - resolution: "@sinonjs/commons@npm:3.0.1" - dependencies: - type-detect: 4.0.8 - checksum: a7c3e7cc612352f4004873747d9d8b2d4d90b13a6d483f685598c945a70e734e255f1ca5dc49702515533c403b32725defff148177453b3f3915bcb60e9d4601 - languageName: node - linkType: hard - -"@sinonjs/fake-timers@npm:^10.0.2": - version: 10.3.0 - resolution: "@sinonjs/fake-timers@npm:10.3.0" - dependencies: - "@sinonjs/commons": ^3.0.0 - checksum: 614d30cb4d5201550c940945d44c9e0b6d64a888ff2cd5b357f95ad6721070d6b8839cd10e15b76bf5e14af0bcc1d8f9ec00d49a46318f1f669a4bec1d7f3148 - languageName: node - linkType: hard - -"@tootallnate/once@npm:2": - version: 2.0.0 - resolution: "@tootallnate/once@npm:2.0.0" - checksum: ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 - languageName: node - linkType: hard - "@tufjs/canonical-json@npm:2.0.0": version: 2.0.0 resolution: "@tufjs/canonical-json@npm:2.0.0" @@ -4097,54 +1494,6 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.20.5": - version: 7.20.5 - resolution: "@types/babel__core@npm:7.20.5" - dependencies: - "@babel/parser": ^7.20.7 - "@babel/types": ^7.20.7 - "@types/babel__generator": "*" - "@types/babel__template": "*" - "@types/babel__traverse": "*" - checksum: a3226f7930b635ee7a5e72c8d51a357e799d19cbf9d445710fa39ab13804f79ab1a54b72ea7d8e504659c7dfc50675db974b526142c754398d7413aa4bc30845 - languageName: node - linkType: hard - -"@types/babel__generator@npm:*": - version: 7.6.8 - resolution: "@types/babel__generator@npm:7.6.8" - dependencies: - "@babel/types": ^7.0.0 - checksum: 5b332ea336a2efffbdeedb92b6781949b73498606ddd4205462f7d96dafd45ff3618770b41de04c4881e333dd84388bfb8afbdf6f2764cbd98be550d85c6bb48 - languageName: node - linkType: hard - -"@types/babel__template@npm:*": - version: 7.4.4 - resolution: "@types/babel__template@npm:7.4.4" - dependencies: - "@babel/parser": ^7.1.0 - "@babel/types": ^7.0.0 - checksum: d7a02d2a9b67e822694d8e6a7ddb8f2b71a1d6962dfd266554d2513eefbb205b33ca71a0d163b1caea3981ccf849211f9964d8bd0727124d18ace45aa6c9ae29 - languageName: node - linkType: hard - -"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": - version: 7.20.6 - resolution: "@types/babel__traverse@npm:7.20.6" - dependencies: - "@babel/types": ^7.20.7 - checksum: 2bdc65eb62232c2d5c1086adeb0c31e7980e6fd7e50a3483b4a724a1a1029c84d9cb59749cf8de612f9afa2bc14c85b8f50e64e21f8a4398fa77eb9059a4283c - languageName: node - linkType: hard - -"@types/cookie@npm:^0.6.0": - version: 0.6.0 - resolution: "@types/cookie@npm:0.6.0" - checksum: 5edce7995775b0b196b142883e4d4f71fd93c294eaec973670f1fa2540b70ea7390408ed513ddefef5fcb12a578100c76596e8f2a714b0c2ae9f70ee773f4510 - languageName: node - linkType: hard - "@types/create-react-class@npm:*": version: 15.6.9 resolution: "@types/create-react-class@npm:15.6.9" @@ -4174,68 +1523,13 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:*, @types/estree@npm:1.0.6, @types/estree@npm:^1.0.6": +"@types/estree@npm:*, @types/estree@npm:^1.0.6": version: 1.0.6 resolution: "@types/estree@npm:1.0.6" checksum: 8825d6e729e16445d9a1dd2fb1db2edc5ed400799064cd4d028150701031af012ba30d6d03fe9df40f4d7a437d0de6d2b256020152b7b09bde9f2e420afdffd9 languageName: node linkType: hard -"@types/graceful-fs@npm:^4.1.3": - version: 4.1.9 - resolution: "@types/graceful-fs@npm:4.1.9" - dependencies: - "@types/node": "*" - checksum: 79d746a8f053954bba36bd3d94a90c78de995d126289d656fb3271dd9f1229d33f678da04d10bce6be440494a5a73438e2e363e92802d16b8315b051036c5256 - languageName: node - linkType: hard - -"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": - version: 2.0.6 - resolution: "@types/istanbul-lib-coverage@npm:2.0.6" - checksum: 3feac423fd3e5449485afac999dcfcb3d44a37c830af898b689fadc65d26526460bedb889db278e0d4d815a670331796494d073a10ee6e3a6526301fe7415778 - languageName: node - linkType: hard - -"@types/istanbul-lib-report@npm:*": - version: 3.0.3 - resolution: "@types/istanbul-lib-report@npm:3.0.3" - dependencies: - "@types/istanbul-lib-coverage": "*" - checksum: b91e9b60f865ff08cb35667a427b70f6c2c63e88105eadd29a112582942af47ed99c60610180aa8dcc22382fa405033f141c119c69b95db78c4c709fbadfeeb4 - languageName: node - linkType: hard - -"@types/istanbul-reports@npm:^3.0.0": - version: 3.0.4 - resolution: "@types/istanbul-reports@npm:3.0.4" - dependencies: - "@types/istanbul-lib-report": "*" - checksum: 93eb18835770b3431f68ae9ac1ca91741ab85f7606f310a34b3586b5a34450ec038c3eed7ab19266635499594de52ff73723a54a72a75b9f7d6a956f01edee95 - languageName: node - linkType: hard - -"@types/jest@npm:^29.2.0": - version: 29.5.14 - resolution: "@types/jest@npm:29.5.14" - dependencies: - expect: ^29.0.0 - pretty-format: ^29.0.0 - checksum: 18dba4623f26661641d757c63da2db45e9524c9be96a29ef713c703a9a53792df9ecee9f7365a0858ddbd6440d98fe6b65ca67895ca5884b73cbc7ffc11f3838 - languageName: node - linkType: hard - -"@types/jsdom@npm:^20.0.0": - version: 20.0.1 - resolution: "@types/jsdom@npm:20.0.1" - dependencies: - "@types/node": "*" - "@types/tough-cookie": "*" - parse5: ^7.0.0 - checksum: d55402c5256ef451f93a6e3d3881f98339fe73a5ac2030588df056d6835df8367b5a857b48d27528289057e26dcdd3f502edc00cb877c79174cb3a4c7f2198c1 - languageName: node - linkType: hard - "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" @@ -4290,16 +1584,7 @@ __metadata: languageName: node linkType: hard -"@types/react-dom@npm:^19.0.3": - version: 19.0.4 - resolution: "@types/react-dom@npm:19.0.4" - peerDependencies: - "@types/react": ^19.0.0 - checksum: 2d0c74769ddcb4a9f404a62b3241d3e550ca962ff80c8c5b624f6626cd39f8b18aadee8e447424b52cffdd9165b1f02eb51020fc486584c8395236d97d4abedf - languageName: node - linkType: hard - -"@types/react@npm:*, @types/react@npm:^19.0.8": +"@types/react@npm:*": version: 19.0.10 resolution: "@types/react@npm:19.0.10" dependencies: @@ -4332,20 +1617,6 @@ __metadata: languageName: node linkType: hard -"@types/stack-utils@npm:^2.0.0": - version: 2.0.3 - resolution: "@types/stack-utils@npm:2.0.3" - checksum: 72576cc1522090fe497337c2b99d9838e320659ac57fa5560fcbdcbafcf5d0216c6b3a0a8a4ee4fdb3b1f5e3420aa4f6223ab57b82fef3578bec3206425c6cf5 - languageName: node - linkType: hard - -"@types/tough-cookie@npm:*": - version: 4.0.5 - resolution: "@types/tough-cookie@npm:4.0.5" - checksum: f19409d0190b179331586365912920d192733112a195e870c7f18d20ac8adb7ad0b0ff69dad430dba8bc2be09593453a719cfea92dc3bda19748fd158fe1498d - languageName: node - linkType: hard - "@types/webpack-sources@npm:^0.1.5": version: 0.1.12 resolution: "@types/webpack-sources@npm:0.1.12" @@ -4357,22 +1628,6 @@ __metadata: languageName: node linkType: hard -"@types/yargs-parser@npm:*": - version: 21.0.3 - resolution: "@types/yargs-parser@npm:21.0.3" - checksum: ef236c27f9432983e91432d974243e6c4cdae227cb673740320eff32d04d853eed59c92ca6f1142a335cfdc0e17cccafa62e95886a8154ca8891cc2dec4ee6fc - languageName: node - linkType: hard - -"@types/yargs@npm:^17.0.8": - version: 17.0.33 - resolution: "@types/yargs@npm:17.0.33" - dependencies: - "@types/yargs-parser": "*" - checksum: ee013f257472ab643cb0584cf3e1ff9b0c44bca1c9ba662395300a7f1a6c55fa9d41bd40ddff42d99f5d95febb3907c9ff600fbcb92dadbec22c6a76de7e1236 - languageName: node - linkType: hard - "@typescript-eslint/eslint-plugin@npm:^6.1.0": version: 6.21.0 resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" @@ -4503,21 +1758,6 @@ __metadata: languageName: node linkType: hard -"@vitejs/plugin-react@npm:^4.3.4": - version: 4.3.4 - resolution: "@vitejs/plugin-react@npm:4.3.4" - dependencies: - "@babel/core": ^7.26.0 - "@babel/plugin-transform-react-jsx-self": ^7.25.9 - "@babel/plugin-transform-react-jsx-source": ^7.25.9 - "@types/babel__core": ^7.20.5 - react-refresh: ^0.14.2 - peerDependencies: - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 - checksum: d417f40d9259a1d5193152f7d9fee081d5bf41cbeef9662ae1123ccc1e26aa4b6b04bc82ebb8c4fbfde9516a746fb3af7da19fdd449819c30f0631daaa10a44b - languageName: node - linkType: hard - "@webassemblyjs/ast@npm:1.14.1, @webassemblyjs/ast@npm:^1.14.1": version: 1.14.1 resolution: "@webassemblyjs/ast@npm:1.14.1" @@ -4756,7 +1996,7 @@ __metadata: languageName: node linkType: hard -"abab@npm:^2.0.3, abab@npm:^2.0.5, abab@npm:^2.0.6": +"abab@npm:^2.0.3, abab@npm:^2.0.5": version: 2.0.6 resolution: "abab@npm:2.0.6" checksum: 6ffc1af4ff315066c62600123990d87551ceb0aafa01e6539da77b0f5987ac7019466780bf480f1787576d4385e3690c81ccc37cfda12819bf510b8ab47e5a3e @@ -4770,23 +2010,6 @@ __metadata: languageName: node linkType: hard -"abbrev@npm:^3.0.0": - version: 3.0.0 - resolution: "abbrev@npm:3.0.0" - checksum: 2500075b5ef85e97c095ab6ab2ea640dcf90bb388f46398f4d347b296f53399f984ec9462c74bee81df6bba56ef5fd9dbc2fb29076b1feb0023e0f52d43eb984 - languageName: node - linkType: hard - -"acorn-globals@npm:^7.0.0": - version: 7.0.1 - resolution: "acorn-globals@npm:7.0.1" - dependencies: - acorn: ^8.1.0 - acorn-walk: ^8.0.2 - checksum: 2a2998a547af6d0db5f0cdb90acaa7c3cbca6709010e02121fb8b8617c0fbd8bab0b869579903fde358ac78454356a14fadcc1a672ecb97b04b1c2ccba955ce8 - languageName: node - linkType: hard - "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -4796,16 +2019,7 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:^8.0.2": - version: 8.3.4 - resolution: "acorn-walk@npm:8.3.4" - dependencies: - acorn: ^8.11.0 - checksum: 4ff03f42323e7cf90f1683e08606b0f460e1e6ac263d2730e3df91c7665b6f64e696db6ea27ee4bed18c2599569be61f28a8399fa170c611161a348c402ca19c - languageName: node - linkType: hard - -"acorn@npm:^8.1.0, acorn@npm:^8.11.0, acorn@npm:^8.14.0, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": +"acorn@npm:^8.14.0, acorn@npm:^8.8.2, acorn@npm:^8.9.0": version: 8.14.1 resolution: "acorn@npm:8.14.1" bin: @@ -4821,15 +2035,6 @@ __metadata: languageName: node linkType: hard -"agent-base@npm:6": - version: 6.0.2 - resolution: "agent-base@npm:6.0.2" - dependencies: - debug: 4 - checksum: f52b6872cc96fd5f622071b71ef200e01c7c4c454ee68bc9accca90c98cfb39f2810e3e9aa330435835eedc8c23f4f8a15267f67c6e245d2b33757575bdac49d - languageName: node - linkType: hard - "agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": version: 7.1.3 resolution: "agent-base@npm:7.1.3" @@ -4960,23 +2165,13 @@ __metadata: languageName: node linkType: hard -"ansi-styles@npm:^6.1.0, ansi-styles@npm:^6.2.1": +"ansi-styles@npm:^6.1.0": version: 6.2.1 resolution: "ansi-styles@npm:6.2.1" checksum: ef940f2f0ced1a6347398da88a91da7930c33ecac3c77b72c5905f8b8fe402c52e6fde304ff5347f616e27a742da3f1dc76de98f6866c69251ad0b07a66776d9 languageName: node linkType: hard -"anymatch@npm:^3.0.3": - version: 3.1.3 - resolution: "anymatch@npm:3.1.3" - dependencies: - normalize-path: ^3.0.0 - picomatch: ^2.0.4 - checksum: 3e044fd6d1d26545f235a9fe4d7a534e2029d8e59fa7fd9f2a6eb21230f6b5380ea1eaf55136e60cbf8e613544b3b766e7a6fa2102e2a3a117505466e3025dc2 - languageName: node - linkType: hard - "aproba@npm:2.0.0": version: 2.0.0 resolution: "aproba@npm:2.0.0" @@ -5082,144 +2277,29 @@ __metadata: linkType: hard "asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be - languageName: node - linkType: hard - -"available-typed-arrays@npm:^1.0.7": - version: 1.0.7 - resolution: "available-typed-arrays@npm:1.0.7" - dependencies: - possible-typed-array-names: ^1.0.0 - checksum: 1aa3ffbfe6578276996de660848b6e95669d9a95ad149e3dd0c0cda77db6ee1dbd9d1dd723b65b6d277b882dd0c4b91a654ae9d3cf9e1254b7e93e4908d78fd3 - languageName: node - linkType: hard - -"axios@npm:^1.7.4": - version: 1.8.3 - resolution: "axios@npm:1.8.3" - dependencies: - follow-redirects: ^1.15.6 - form-data: ^4.0.0 - proxy-from-env: ^1.1.0 - checksum: 85fc8ad7d968e43ea9da5513310637d29654b181411012ee14cc0a4b3662782e6c81ac25eea40b5684f86ed2d8a01fa6fc20b9b48c4da14ef4eaee848fea43bc - languageName: node - linkType: hard - -"babel-jest@npm:^29.7.0": - version: 29.7.0 - resolution: "babel-jest@npm:29.7.0" - dependencies: - "@jest/transform": ^29.7.0 - "@types/babel__core": ^7.1.14 - babel-plugin-istanbul: ^6.1.1 - babel-preset-jest: ^29.6.3 - chalk: ^4.0.0 - graceful-fs: ^4.2.9 - slash: ^3.0.0 - peerDependencies: - "@babel/core": ^7.8.0 - checksum: ee6f8e0495afee07cac5e4ee167be705c711a8cc8a737e05a587a131fdae2b3c8f9aa55dfd4d9c03009ac2d27f2de63d8ba96d3e8460da4d00e8af19ef9a83f7 - languageName: node - linkType: hard - -"babel-plugin-istanbul@npm:^6.1.1": - version: 6.1.1 - resolution: "babel-plugin-istanbul@npm:6.1.1" - dependencies: - "@babel/helper-plugin-utils": ^7.0.0 - "@istanbuljs/load-nyc-config": ^1.0.0 - "@istanbuljs/schema": ^0.1.2 - istanbul-lib-instrument: ^5.0.4 - test-exclude: ^6.0.0 - checksum: cb4fd95738219f232f0aece1116628cccff16db891713c4ccb501cddbbf9272951a5df81f2f2658dfdf4b3e7b236a9d5cbcf04d5d8c07dd5077297339598061a - languageName: node - linkType: hard - -"babel-plugin-jest-hoist@npm:^29.6.3": - version: 29.6.3 - resolution: "babel-plugin-jest-hoist@npm:29.6.3" - dependencies: - "@babel/template": ^7.3.3 - "@babel/types": ^7.3.3 - "@types/babel__core": ^7.1.14 - "@types/babel__traverse": ^7.0.6 - checksum: 51250f22815a7318f17214a9d44650ba89551e6d4f47a2dc259128428324b52f5a73979d010cefd921fd5a720d8c1d55ad74ff601cd94c7bd44d5f6292fde2d1 - languageName: node - linkType: hard - -"babel-plugin-polyfill-corejs2@npm:^0.4.10": - version: 0.4.12 - resolution: "babel-plugin-polyfill-corejs2@npm:0.4.12" - dependencies: - "@babel/compat-data": ^7.22.6 - "@babel/helper-define-polyfill-provider": ^0.6.3 - semver: ^6.3.1 - peerDependencies: - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 6e6e6a8b85fec80a310ded2f5c151385e4ac59118909dd6a952e1025e4a478eb79dda45a5a6322cc2e598fd696eb07d4e2fa52418b4101f3dc370bdf8c8939ba - languageName: node - linkType: hard - -"babel-plugin-polyfill-corejs3@npm:^0.11.0": - version: 0.11.1 - resolution: "babel-plugin-polyfill-corejs3@npm:0.11.1" - dependencies: - "@babel/helper-define-polyfill-provider": ^0.6.3 - core-js-compat: ^3.40.0 - peerDependencies: - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: ee39440475ef377a1570ccbc06b1a1d274cbfbbe2e7c3d4c60f38781a47f00a28bd10d8e23430828b965820c41beb2c93c84596baf72583a2c9c3fdfa4397994 - languageName: node - linkType: hard - -"babel-plugin-polyfill-regenerator@npm:^0.6.1": - version: 0.6.3 - resolution: "babel-plugin-polyfill-regenerator@npm:0.6.3" - dependencies: - "@babel/helper-define-polyfill-provider": ^0.6.3 - peerDependencies: - "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: d12696e6b3f280eb78fac551619ca4389262db62c7352cd54bf679d830df8b35596eef2de77cf00db6648eada1c99d49c4f40636dbc9c335a1e5420cfef96750 + version: 0.4.0 + resolution: "asynckit@npm:0.4.0" + checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be languageName: node linkType: hard -"babel-preset-current-node-syntax@npm:^1.0.0": - version: 1.1.0 - resolution: "babel-preset-current-node-syntax@npm:1.1.0" - dependencies: - "@babel/plugin-syntax-async-generators": ^7.8.4 - "@babel/plugin-syntax-bigint": ^7.8.3 - "@babel/plugin-syntax-class-properties": ^7.12.13 - "@babel/plugin-syntax-class-static-block": ^7.14.5 - "@babel/plugin-syntax-import-attributes": ^7.24.7 - "@babel/plugin-syntax-import-meta": ^7.10.4 - "@babel/plugin-syntax-json-strings": ^7.8.3 - "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 - "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 - "@babel/plugin-syntax-numeric-separator": ^7.10.4 - "@babel/plugin-syntax-object-rest-spread": ^7.8.3 - "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 - "@babel/plugin-syntax-optional-chaining": ^7.8.3 - "@babel/plugin-syntax-private-property-in-object": ^7.14.5 - "@babel/plugin-syntax-top-level-await": ^7.14.5 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: 9f93fac975eaba296c436feeca1031ca0539143c4066eaf5d1ba23525a31850f03b651a1049caea7287df837a409588c8252c15627ad3903f17864c8e25ed64b +"available-typed-arrays@npm:^1.0.7": + version: 1.0.7 + resolution: "available-typed-arrays@npm:1.0.7" + dependencies: + possible-typed-array-names: ^1.0.0 + checksum: 1aa3ffbfe6578276996de660848b6e95669d9a95ad149e3dd0c0cda77db6ee1dbd9d1dd723b65b6d277b882dd0c4b91a654ae9d3cf9e1254b7e93e4908d78fd3 languageName: node linkType: hard -"babel-preset-jest@npm:^29.6.3": - version: 29.6.3 - resolution: "babel-preset-jest@npm:29.6.3" +"axios@npm:^1.7.4": + version: 1.8.3 + resolution: "axios@npm:1.8.3" dependencies: - babel-plugin-jest-hoist: ^29.6.3 - babel-preset-current-node-syntax: ^1.0.0 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: aa4ff2a8a728d9d698ed521e3461a109a1e66202b13d3494e41eea30729a5e7cc03b3a2d56c594423a135429c37bf63a9fa8b0b9ce275298be3095a88c69f6fb + follow-redirects: ^1.15.6 + form-data: ^4.0.0 + proxy-from-env: ^1.1.0 + checksum: 85fc8ad7d968e43ea9da5513310637d29654b181411012ee14cc0a4b3662782e6c81ac25eea40b5684f86ed2d8a01fa6fc20b9b48c4da14ef4eaee848fea43bc languageName: node linkType: hard @@ -5309,7 +2389,7 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.24.0, browserslist@npm:^4.24.4": +"browserslist@npm:^4.24.0": version: 4.24.4 resolution: "browserslist@npm:4.24.4" dependencies: @@ -5323,24 +2403,6 @@ __metadata: languageName: node linkType: hard -"bs-logger@npm:^0.2.6": - version: 0.2.6 - resolution: "bs-logger@npm:0.2.6" - dependencies: - fast-json-stable-stringify: 2.x - checksum: d34bdaf68c64bd099ab97c3ea608c9ae7d3f5faa1178b3f3f345acd94e852e608b2d4f9103fb2e503f5e69780e98293df41691b84be909b41cf5045374d54606 - languageName: node - linkType: hard - -"bser@npm:2.1.1": - version: 2.1.1 - resolution: "bser@npm:2.1.1" - dependencies: - node-int64: ^0.4.0 - checksum: 9ba4dc58ce86300c862bffc3ae91f00b2a03b01ee07f3564beeeaf82aa243b8b03ba53f123b0b842c190d4399b94697970c8e7cf7b1ea44b61aa28c3526a4449 - languageName: node - linkType: hard - "buffer-from@npm:^1.0.0": version: 1.1.2 resolution: "buffer-from@npm:1.1.2" @@ -5385,26 +2447,6 @@ __metadata: languageName: node linkType: hard -"cacache@npm:^19.0.1": - version: 19.0.1 - resolution: "cacache@npm:19.0.1" - dependencies: - "@npmcli/fs": ^4.0.0 - fs-minipass: ^3.0.0 - glob: ^10.2.2 - lru-cache: ^10.0.1 - minipass: ^7.0.3 - minipass-collect: ^2.0.1 - minipass-flush: ^1.0.5 - minipass-pipeline: ^1.2.4 - p-map: ^7.0.2 - ssri: ^12.0.0 - tar: ^7.4.3 - unique-filename: ^4.0.0 - checksum: e95684717de6881b4cdaa949fa7574e3171946421cd8291769dd3d2417dbf7abf4aa557d1f968cca83dcbc95bed2a281072b09abfc977c942413146ef7ed4525 - languageName: node - linkType: hard - "call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": version: 1.0.2 resolution: "call-bind-apply-helpers@npm:1.0.2" @@ -5474,7 +2516,7 @@ __metadata: languageName: node linkType: hard -"camelcase@npm:^6.2.0, camelcase@npm:^6.3.0": +"camelcase@npm:^6.3.0": version: 6.3.0 resolution: "camelcase@npm:6.3.0" checksum: 8c96818a9076434998511251dcb2761a94817ea17dbdc37f47ac080bd088fc62c7369429a19e2178b993497132c8cbcf5cc1f44ba963e76782ba469c0474938d @@ -5519,13 +2561,6 @@ __metadata: languageName: node linkType: hard -"char-regex@npm:^1.0.2": - version: 1.0.2 - resolution: "char-regex@npm:1.0.2" - checksum: b563e4b6039b15213114626621e7a3d12f31008bdce20f9c741d69987f62aeaace7ec30f6018890ad77b2e9b4d95324c9f5acfca58a9441e3b1dcdd1e2525d17 - languageName: node - linkType: hard - "chardet@npm:^0.7.0": version: 0.7.0 resolution: "chardet@npm:0.7.0" @@ -5540,13 +2575,6 @@ __metadata: languageName: node linkType: hard -"chownr@npm:^3.0.0": - version: 3.0.0 - resolution: "chownr@npm:3.0.0" - checksum: fd73a4bab48b79e66903fe1cafbdc208956f41ea4f856df883d0c7277b7ab29fd33ee65f93b2ec9192fc0169238f2f8307b7735d27c155821d886b84aa97aa8d - languageName: node - linkType: hard - "chrome-trace-event@npm:^1.0.2": version: 1.0.4 resolution: "chrome-trace-event@npm:1.0.4" @@ -5568,13 +2596,6 @@ __metadata: languageName: node linkType: hard -"cjs-module-lexer@npm:^1.0.0": - version: 1.4.3 - resolution: "cjs-module-lexer@npm:1.4.3" - checksum: 221a1661a9ff4944b472c85ac7cd5029b2f2dc7f6c5f4ecf887f261503611110b43a48acb6c07f8f04109c772d1637fdb20b31252bf27058f35aa97bf5ad8b12 - languageName: node - linkType: hard - "clean-stack@npm:^2.0.0": version: 2.2.0 resolution: "clean-stack@npm:2.2.0" @@ -5659,20 +2680,6 @@ __metadata: languageName: node linkType: hard -"co@npm:^4.6.0": - version: 4.6.0 - resolution: "co@npm:4.6.0" - checksum: 5210d9223010eb95b29df06a91116f2cf7c8e0748a9013ed853b53f362ea0e822f1e5bb054fb3cefc645239a4cf966af1f6133a3b43f40d591f3b68ed6cf0510 - languageName: node - linkType: hard - -"collect-v8-coverage@npm:^1.0.0": - version: 1.0.2 - resolution: "collect-v8-coverage@npm:1.0.2" - checksum: c10f41c39ab84629d16f9f6137bc8a63d332244383fc368caf2d2052b5e04c20cd1fd70f66fcf4e2422b84c8226598b776d39d5f2d2a51867cc1ed5d1982b4da - languageName: node - linkType: hard - "color-convert@npm:^1.9.0": version: 1.9.3 resolution: "color-convert@npm:1.9.3" @@ -5934,29 +2941,6 @@ __metadata: languageName: node linkType: hard -"convert-source-map@npm:^2.0.0": - version: 2.0.0 - resolution: "convert-source-map@npm:2.0.0" - checksum: 63ae9933be5a2b8d4509daca5124e20c14d023c820258e484e32dc324d34c2754e71297c94a05784064ad27615037ef677e3f0c00469fb55f409d2bb21261035 - languageName: node - linkType: hard - -"cookie@npm:^1.0.1": - version: 1.0.2 - resolution: "cookie@npm:1.0.2" - checksum: 2c5a6214147ffa7135ce41860c781de17e93128689b0d080d3116468274b3593b607bcd462ac210d3a61f081db3d3b09ae106e18d60b1f529580e95cf2db8a55 - languageName: node - linkType: hard - -"core-js-compat@npm:^3.40.0": - version: 3.41.0 - resolution: "core-js-compat@npm:3.41.0" - dependencies: - browserslist: ^4.24.4 - checksum: 060f6d6ede3a5f201462ae6f54975ca4eefdb731c4983950c54bc81411fc1c2865a9e916091d034b5229d4dcb79e0f5f8aeda5eeb7a31d940550a5c14e8e8729 - languageName: node - linkType: hard - "core-util-is@npm:~1.0.0": version: 1.0.3 resolution: "core-util-is@npm:1.0.3" @@ -5998,30 +2982,6 @@ __metadata: languageName: node linkType: hard -"create-jest@npm:^29.7.0": - version: 29.7.0 - resolution: "create-jest@npm:29.7.0" - dependencies: - "@jest/types": ^29.6.3 - chalk: ^4.0.0 - exit: ^0.1.2 - graceful-fs: ^4.2.9 - jest-config: ^29.7.0 - jest-util: ^29.7.0 - prompts: ^2.0.1 - bin: - create-jest: bin/create-jest.js - checksum: 1427d49458adcd88547ef6fa39041e1fe9033a661293aa8d2c3aa1b4967cb5bf4f0c00436c7a61816558f28ba2ba81a94d5c962e8022ea9a883978fc8e1f2945 - languageName: node - linkType: hard - -"crelt@npm:^1.0.5": - version: 1.0.6 - resolution: "crelt@npm:1.0.6" - checksum: dad842093371ad702afbc0531bfca2b0a8dd920b23a42f26e66dabbed9aad9acd5b9030496359545ef3937c3aced0fd4ac39f7a2d280a23ddf9eb7fdcb94a69f - languageName: node - linkType: hard - "cross-spawn@npm:^6.0.5": version: 6.0.6 resolution: "cross-spawn@npm:6.0.6" @@ -6096,29 +3056,6 @@ __metadata: languageName: node linkType: hard -"cssom@npm:^0.5.0": - version: 0.5.0 - resolution: "cssom@npm:0.5.0" - checksum: 823471aa30091c59e0a305927c30e7768939b6af70405808f8d2ce1ca778cddcb24722717392438329d1691f9a87cb0183b64b8d779b56a961546d54854fde01 - languageName: node - linkType: hard - -"cssom@npm:~0.3.6": - version: 0.3.8 - resolution: "cssom@npm:0.3.8" - checksum: 24beb3087c76c0d52dd458be9ee1fbc80ac771478a9baef35dd258cdeb527c68eb43204dd439692bb2b1ae5272fa5f2946d10946edab0d04f1078f85e06bc7f6 - languageName: node - linkType: hard - -"cssstyle@npm:^2.3.0": - version: 2.3.0 - resolution: "cssstyle@npm:2.3.0" - dependencies: - cssom: ~0.3.6 - checksum: 5f05e6fd2e3df0b44695c2f08b9ef38b011862b274e320665176467c0725e44a53e341bc4959a41176e83b66064ab786262e7380fd1cabeae6efee0d255bb4e3 - languageName: node - linkType: hard - "csstype@npm:3.0.10": version: 3.0.10 resolution: "csstype@npm:3.0.10" @@ -6151,17 +3088,6 @@ __metadata: languageName: node linkType: hard -"data-urls@npm:^3.0.2": - version: 3.0.2 - resolution: "data-urls@npm:3.0.2" - dependencies: - abab: ^2.0.6 - whatwg-mimetype: ^3.0.0 - whatwg-url: ^11.0.0 - checksum: 033fc3dd0fba6d24bc9a024ddcf9923691dd24f90a3d26f6545d6a2f71ec6956f93462f2cdf2183cc46f10dc01ed3bcb36731a8208456eb1a08147e571fe2a76 - languageName: node - linkType: hard - "data-view-buffer@npm:^1.0.2": version: 1.0.2 resolution: "data-view-buffer@npm:1.0.2" @@ -6202,7 +3128,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, 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, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": version: 4.4.0 resolution: "debug@npm:4.4.0" dependencies: @@ -6238,14 +3164,7 @@ __metadata: languageName: node linkType: hard -"decimal.js@npm:^10.4.2": - version: 10.5.0 - resolution: "decimal.js@npm:10.5.0" - checksum: 91c6b53b5dd2f39a05535349ced6840f591d1f914e3c025c6dcec6ffada6e3cfc8dc3f560d304b716be9a9aece3567a7f80f6aff8f38d11ab6f78541c3a91a01 - languageName: node - linkType: hard - -"dedent@npm:1.5.3, dedent@npm:^1.0.0": +"dedent@npm:1.5.3": version: 1.5.3 resolution: "dedent@npm:1.5.3" peerDependencies: @@ -6316,26 +3235,6 @@ __metadata: languageName: node linkType: hard -"demo-react@workspace:demo": - version: 0.0.0-use.local - resolution: "demo-react@workspace:demo" - dependencies: - "@eslint/js": ^9.19.0 - "@types/react": ^19.0.8 - "@types/react-dom": ^19.0.3 - "@vitejs/plugin-react": ^4.3.4 - eslint-plugin-react-hooks: ^5.0.0 - eslint-plugin-react-refresh: ^0.4.18 - globals: ^15.14.0 - jupyter-iframe-commands-host: ^0.1.0 - react: ^19.0.0 - react-dom: ^19.0.0 - react-router: ^7.3.0 - typescript: ~5.7.2 - vite: ^6.1.0 - languageName: unknown - linkType: soft - "deprecation@npm:^2.0.0": version: 2.3.1 resolution: "deprecation@npm:2.3.1" @@ -6350,13 +3249,6 @@ __metadata: languageName: node linkType: hard -"detect-newline@npm:^3.0.0": - version: 3.1.0 - resolution: "detect-newline@npm:3.1.0" - checksum: ae6cd429c41ad01b164c59ea36f264a2c479598e61cba7c99da24175a7ab80ddf066420f2bec9a1c57a6bead411b4655ff15ad7d281c000a89791f48cbe939e7 - languageName: node - linkType: hard - "diff-sequences@npm:^29.6.3": version: 29.6.3 resolution: "diff-sequences@npm:29.6.3" @@ -6400,15 +3292,6 @@ __metadata: languageName: node linkType: hard -"domexception@npm:^4.0.0": - version: 4.0.0 - resolution: "domexception@npm:4.0.0" - dependencies: - webidl-conversions: ^7.0.0 - checksum: ddbc1268edf33a8ba02ccc596735ede80375ee0cf124b30d2f05df5b464ba78ef4f49889b6391df4a04954e63d42d5631c7fcf8b1c4f12bc531252977a5f13d5 - languageName: node - linkType: hard - "domhandler@npm:^5.0.2, domhandler@npm:^5.0.3": version: 5.0.3 resolution: "domhandler@npm:5.0.3" @@ -6491,7 +3374,7 @@ __metadata: languageName: node linkType: hard -"ejs@npm:^3.1.10, ejs@npm:^3.1.7": +"ejs@npm:^3.1.7": version: 3.1.10 resolution: "ejs@npm:3.1.10" dependencies: @@ -6509,13 +3392,6 @@ __metadata: languageName: node linkType: hard -"emittery@npm:^0.13.1": - version: 0.13.1 - resolution: "emittery@npm:0.13.1" - checksum: 2b089ab6306f38feaabf4f6f02792f9ec85fc054fda79f44f6790e61bbf6bc4e1616afb9b232e0c5ec5289a8a452f79bfa6d905a6fd64e94b49981f0934001c6 - languageName: node - linkType: hard - "emoji-regex@npm:^8.0.0": version: 8.0.0 resolution: "emoji-regex@npm:8.0.0" @@ -6574,7 +3450,7 @@ __metadata: languageName: node linkType: hard -"entities@npm:^4.2.0, entities@npm:^4.4.0, entities@npm:^4.5.0": +"entities@npm:^4.2.0, entities@npm:^4.4.0": version: 4.5.0 resolution: "entities@npm:4.5.0" checksum: 853f8ebd5b425d350bffa97dd6958143179a5938352ccae092c62d1267c4e392a039be1bae7d51b6e4ffad25f51f9617531fedf5237f15df302ccfb452cbf2d7 @@ -6734,92 +3610,6 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.25.0": - version: 0.25.1 - resolution: "esbuild@npm:0.25.1" - dependencies: - "@esbuild/aix-ppc64": 0.25.1 - "@esbuild/android-arm": 0.25.1 - "@esbuild/android-arm64": 0.25.1 - "@esbuild/android-x64": 0.25.1 - "@esbuild/darwin-arm64": 0.25.1 - "@esbuild/darwin-x64": 0.25.1 - "@esbuild/freebsd-arm64": 0.25.1 - "@esbuild/freebsd-x64": 0.25.1 - "@esbuild/linux-arm": 0.25.1 - "@esbuild/linux-arm64": 0.25.1 - "@esbuild/linux-ia32": 0.25.1 - "@esbuild/linux-loong64": 0.25.1 - "@esbuild/linux-mips64el": 0.25.1 - "@esbuild/linux-ppc64": 0.25.1 - "@esbuild/linux-riscv64": 0.25.1 - "@esbuild/linux-s390x": 0.25.1 - "@esbuild/linux-x64": 0.25.1 - "@esbuild/netbsd-arm64": 0.25.1 - "@esbuild/netbsd-x64": 0.25.1 - "@esbuild/openbsd-arm64": 0.25.1 - "@esbuild/openbsd-x64": 0.25.1 - "@esbuild/sunos-x64": 0.25.1 - "@esbuild/win32-arm64": 0.25.1 - "@esbuild/win32-ia32": 0.25.1 - "@esbuild/win32-x64": 0.25.1 - dependenciesMeta: - "@esbuild/aix-ppc64": - optional: true - "@esbuild/android-arm": - optional: true - "@esbuild/android-arm64": - optional: true - "@esbuild/android-x64": - optional: true - "@esbuild/darwin-arm64": - optional: true - "@esbuild/darwin-x64": - optional: true - "@esbuild/freebsd-arm64": - optional: true - "@esbuild/freebsd-x64": - optional: true - "@esbuild/linux-arm": - optional: true - "@esbuild/linux-arm64": - optional: true - "@esbuild/linux-ia32": - optional: true - "@esbuild/linux-loong64": - optional: true - "@esbuild/linux-mips64el": - optional: true - "@esbuild/linux-ppc64": - optional: true - "@esbuild/linux-riscv64": - optional: true - "@esbuild/linux-s390x": - optional: true - "@esbuild/linux-x64": - optional: true - "@esbuild/netbsd-arm64": - optional: true - "@esbuild/netbsd-x64": - optional: true - "@esbuild/openbsd-arm64": - optional: true - "@esbuild/openbsd-x64": - optional: true - "@esbuild/sunos-x64": - optional: true - "@esbuild/win32-arm64": - optional: true - "@esbuild/win32-ia32": - optional: true - "@esbuild/win32-x64": - optional: true - bin: - esbuild: bin/esbuild - checksum: c84e209259273fca0f8ba7cd00974dfff53eb3fcce5ff0f987d8231a5b49f22c16fa954f0bf06f07b00bd368270d8274feb5a09d7d5dfae0891a47dda24455a2 - languageName: node - linkType: hard - "escalade@npm:^3.1.1, escalade@npm:^3.2.0": version: 3.2.0 resolution: "escalade@npm:3.2.0" @@ -6834,13 +3624,6 @@ __metadata: languageName: node linkType: hard -"escape-string-regexp@npm:^2.0.0": - version: 2.0.0 - resolution: "escape-string-regexp@npm:2.0.0" - checksum: 9f8a2d5743677c16e85c810e3024d54f0c8dea6424fad3c79ef6666e81dd0846f7437f5e729dfcdac8981bc9e5294c39b4580814d114076b8d36318f46ae4395 - languageName: node - linkType: hard - "escape-string-regexp@npm:^4.0.0": version: 4.0.0 resolution: "escape-string-regexp@npm:4.0.0" @@ -6848,24 +3631,6 @@ __metadata: languageName: node linkType: hard -"escodegen@npm:^2.0.0": - version: 2.1.0 - resolution: "escodegen@npm:2.1.0" - dependencies: - esprima: ^4.0.1 - estraverse: ^5.2.0 - esutils: ^2.0.2 - source-map: ~0.6.1 - dependenciesMeta: - source-map: - optional: true - bin: - escodegen: bin/escodegen.js - esgenerate: bin/esgenerate.js - checksum: 096696407e161305cd05aebb95134ad176708bc5cb13d0dcc89a5fcbb959b8ed757e7f2591a5f8036f8f4952d4a724de0df14cd419e29212729fa6df5ce16bf6 - languageName: node - linkType: hard - "eslint-config-prettier@npm:^8.8.0": version: 8.10.0 resolution: "eslint-config-prettier@npm:8.10.0" @@ -6897,24 +3662,6 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-react-hooks@npm:^5.0.0": - version: 5.2.0 - resolution: "eslint-plugin-react-hooks@npm:5.2.0" - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 - checksum: 5920736a78c0075488e7e30e04fbe5dba5b6b5a6c8c4b5742fdae6f9b8adf4ee387bc45dc6e03b4012865e6fd39d134da7b83a40f57c90cc9eecf80692824e3a - languageName: node - linkType: hard - -"eslint-plugin-react-refresh@npm:^0.4.18": - version: 0.4.19 - resolution: "eslint-plugin-react-refresh@npm:0.4.19" - peerDependencies: - eslint: ">=8.40" - checksum: b676d7d5a149329d4eb7359711d1efa553e3b83f4070e8ae03121ba26bd051b7e3d70d89fa847e97abdc91319066c443ac72d86976d3844012e72e32dad9e883 - languageName: node - linkType: hard - "eslint-scope@npm:5.1.1": version: 5.1.1 resolution: "eslint-scope@npm:5.1.1" @@ -7001,7 +3748,7 @@ __metadata: languageName: node linkType: hard -"esprima@npm:^4.0.0, esprima@npm:^4.0.1": +"esprima@npm:^4.0.0": version: 4.0.1 resolution: "esprima@npm:4.0.1" bin: @@ -7081,23 +3828,6 @@ __metadata: languageName: node linkType: hard -"execa@npm:^5.0.0": - version: 5.1.1 - resolution: "execa@npm:5.1.1" - dependencies: - cross-spawn: ^7.0.3 - get-stream: ^6.0.0 - human-signals: ^2.1.0 - is-stream: ^2.0.0 - merge-stream: ^2.0.0 - npm-run-path: ^4.0.1 - onetime: ^5.1.2 - signal-exit: ^3.0.3 - strip-final-newline: ^2.0.0 - checksum: fba9022c8c8c15ed862847e94c252b3d946036d7547af310e344a527e59021fd8b6bb0723883ea87044dc4f0201f949046993124a42ccb0855cae5bf8c786343 - languageName: node - linkType: hard - "exenv-es6@npm:^1.1.1": version: 1.1.1 resolution: "exenv-es6@npm:1.1.1" @@ -7105,26 +3835,6 @@ __metadata: languageName: node linkType: hard -"exit@npm:^0.1.2": - version: 0.1.2 - resolution: "exit@npm:0.1.2" - checksum: abc407f07a875c3961e4781dfcb743b58d6c93de9ab263f4f8c9d23bb6da5f9b7764fc773f86b43dd88030444d5ab8abcb611cb680fba8ca075362b77114bba3 - languageName: node - linkType: hard - -"expect@npm:^29.0.0, expect@npm:^29.7.0": - version: 29.7.0 - resolution: "expect@npm:29.7.0" - dependencies: - "@jest/expect-utils": ^29.7.0 - jest-get-type: ^29.6.3 - jest-matcher-utils: ^29.7.0 - jest-message-util: ^29.7.0 - jest-util: ^29.7.0 - checksum: 9257f10288e149b81254a0fda8ffe8d54a7061cd61d7515779998b012579d2b8c22354b0eb901daf0145f347403da582f75f359f4810c007182ad3fb318b5c0c - languageName: node - linkType: hard - "exponential-backoff@npm:^3.1.1": version: 3.1.2 resolution: "exponential-backoff@npm:3.1.2" @@ -7170,7 +3880,7 @@ __metadata: languageName: node linkType: hard -"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": +"fast-json-stable-stringify@npm:^2.0.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" checksum: b191531e36c607977e5b1c47811158733c34ccb3bfde92c44798929e9b4154884378536d26ad90dfecd32e1ffc09c545d23535ad91b3161a27ddbb8ebe0cbecb @@ -7207,15 +3917,6 @@ __metadata: languageName: node linkType: hard -"fb-watchman@npm:^2.0.0": - version: 2.0.2 - resolution: "fb-watchman@npm:2.0.2" - dependencies: - bser: 2.1.1 - checksum: b15a124cef28916fe07b400eb87cbc73ca082c142abf7ca8e8de6af43eca79ca7bd13eb4d4d48240b3bd3136eaac40d16e42d6edf87a8e5d1dd8070626860c78 - languageName: node - linkType: hard - "figures@npm:3.2.0, figures@npm:^3.0.0": version: 3.2.0 resolution: "figures@npm:3.2.0" @@ -7435,25 +4136,6 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:^2.3.2, fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": - version: 2.3.3 - resolution: "fsevents@npm:2.3.3" - dependencies: - node-gyp: latest - checksum: 11e6ea6fea15e42461fc55b4b0e4a0a3c654faa567f1877dbd353f39156f69def97a69936d1746619d656c4b93de2238bf731f6085a03a50cabf287c9d024317 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@^2.3.2#~builtin, fsevents@patch:fsevents@~2.3.2#~builtin, fsevents@patch:fsevents@~2.3.3#~builtin": - version: 2.3.3 - resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=df0bf1" - dependencies: - node-gyp: latest - conditions: os=darwin - languageName: node - linkType: hard - "function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" @@ -7482,13 +4164,6 @@ __metadata: languageName: node linkType: hard -"gensync@npm:^1.0.0-beta.2": - version: 1.0.0-beta.2 - resolution: "gensync@npm:1.0.0-beta.2" - checksum: a7437e58c6be12aa6c90f7730eac7fa9833dc78872b4ad2963d2031b00a3367a93f98aec75f9aaac7220848e4026d67a8655e870b24f20a543d103c0d65952ec - languageName: node - linkType: hard - "get-caller-file@npm:^2.0.5": version: 2.0.5 resolution: "get-caller-file@npm:2.0.5" @@ -7514,13 +4189,6 @@ __metadata: languageName: node linkType: hard -"get-package-type@npm:^0.1.0": - version: 0.1.0 - resolution: "get-package-type@npm:0.1.0" - checksum: bba0811116d11e56d702682ddef7c73ba3481f114590e705fc549f4d868972263896af313c57a25c076e3c0d567e11d919a64ba1b30c879be985fc9d44f96148 - languageName: node - linkType: hard - "get-pkg-repo@npm:^4.2.1": version: 4.2.1 resolution: "get-pkg-repo@npm:4.2.1" @@ -7681,7 +4349,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^7.1.3, glob@npm:^7.1.4": +"glob@npm:^7.1.3": version: 7.2.3 resolution: "glob@npm:7.2.3" dependencies: @@ -7741,13 +4409,6 @@ __metadata: languageName: node linkType: hard -"globals@npm:^11.1.0": - version: 11.12.0 - resolution: "globals@npm:11.12.0" - checksum: 67051a45eca3db904aee189dfc7cd53c20c7d881679c93f6146ddd4c9f4ab2268e68a919df740d39c71f4445d2b38ee360fc234428baea1dbdfe68bbcb46979e - languageName: node - linkType: hard - "globals@npm:^13.19.0": version: 13.24.0 resolution: "globals@npm:13.24.0" @@ -7757,13 +4418,6 @@ __metadata: languageName: node linkType: hard -"globals@npm:^15.14.0": - version: 15.15.0 - resolution: "globals@npm:15.15.0" - checksum: a2a92199a112db00562a2f85eeef2a7e3943e171f7f7d9b17dfa9231e35fd612588f3c199d1509ab1757273467e413b08c80424cf6e399e96acdaf93deb3ee88 - languageName: node - linkType: hard - "globalthis@npm:^1.0.4": version: 1.0.4 resolution: "globalthis@npm:1.0.4" @@ -7802,7 +4456,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:4.2.11, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": +"graceful-fs@npm:4.2.11, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 @@ -7841,13 +4495,6 @@ __metadata: languageName: node linkType: hard -"harmony-reflect@npm:^1.4.6": - version: 1.6.2 - resolution: "harmony-reflect@npm:1.6.2" - checksum: 2e5bae414cd2bfae5476147f9935dc69ee9b9a413206994dcb94c5b3208d4555da3d4313aff6fd14bd9991c1e3ef69cdda5c8fac1eb1d7afc064925839339b8c - languageName: node - linkType: hard - "has-bigints@npm:^1.0.2": version: 1.1.0 resolution: "has-bigints@npm:1.1.0" @@ -7944,22 +4591,6 @@ __metadata: languageName: node linkType: hard -"html-encoding-sniffer@npm:^3.0.0": - version: 3.0.0 - resolution: "html-encoding-sniffer@npm:3.0.0" - dependencies: - whatwg-encoding: ^2.0.0 - checksum: 8d806aa00487e279e5ccb573366a951a9f68f65c90298eac9c3a2b440a7ffe46615aff2995a2f61c6746c639234e6179a97e18ca5ccbbf93d3725ef2099a4502 - languageName: node - linkType: hard - -"html-escaper@npm:^2.0.0": - version: 2.0.2 - resolution: "html-escaper@npm:2.0.2" - checksum: d2df2da3ad40ca9ee3a39c5cc6475ef67c8f83c234475f24d8e9ce0dc80a2c82df8e1d6fa78ddd1e9022a586ea1bd247a615e80a5cd9273d90111ddda7d9e974 - languageName: node - linkType: hard - "html-tags@npm:^3.3.1": version: 3.3.1 resolution: "html-tags@npm:3.3.1" @@ -7986,17 +4617,6 @@ __metadata: languageName: node linkType: hard -"http-proxy-agent@npm:^5.0.0": - version: 5.0.0 - resolution: "http-proxy-agent@npm:5.0.0" - dependencies: - "@tootallnate/once": 2 - agent-base: 6 - debug: 4 - checksum: e2ee1ff1656a131953839b2a19cd1f3a52d97c25ba87bd2559af6ae87114abf60971e498021f9b73f9fd78aea8876d1fb0d4656aac8a03c6caa9fc175f22b786 - languageName: node - linkType: hard - "http-proxy-agent@npm:^7.0.0": version: 7.0.2 resolution: "http-proxy-agent@npm:7.0.2" @@ -8007,16 +4627,6 @@ __metadata: languageName: node linkType: hard -"https-proxy-agent@npm:^5.0.1": - version: 5.0.1 - resolution: "https-proxy-agent@npm:5.0.1" - dependencies: - agent-base: 6 - debug: 4 - checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765 - languageName: node - linkType: hard - "https-proxy-agent@npm:^7.0.1": version: 7.0.6 resolution: "https-proxy-agent@npm:7.0.6" @@ -8029,17 +4639,8 @@ __metadata: "human-signals@npm:^2.1.0": version: 2.1.0 - resolution: "human-signals@npm:2.1.0" - checksum: b87fd89fce72391625271454e70f67fe405277415b48bcc0117ca73d31fa23a4241787afdc8d67f5a116cf37258c052f59ea82daffa72364d61351423848e3b8 - languageName: node - linkType: hard - -"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: ">= 2.1.2 < 3.0.0" - checksum: 3f60d47a5c8fc3313317edfd29a00a692cc87a19cac0159e2ce711d0ebc9019064108323b5e493625e25594f11c6236647d8e256fbe7a58f4a3b33b89e6d30bf + resolution: "human-signals@npm:2.1.0" + checksum: b87fd89fce72391625271454e70f67fe405277415b48bcc0117ca73d31fa23a4241787afdc8d67f5a116cf37258c052f59ea82daffa72364d61351423848e3b8 languageName: node linkType: hard @@ -8052,6 +4653,15 @@ __metadata: languageName: node linkType: hard +"iconv-lite@npm:^0.6.2": + version: 0.6.3 + resolution: "iconv-lite@npm:0.6.3" + dependencies: + safer-buffer: ">= 2.1.2 < 3.0.0" + checksum: 3f60d47a5c8fc3313317edfd29a00a692cc87a19cac0159e2ce711d0ebc9019064108323b5e493625e25594f11c6236647d8e256fbe7a58f4a3b33b89e6d30bf + languageName: node + linkType: hard + "icss-utils@npm:^5.0.0, icss-utils@npm:^5.1.0": version: 5.1.0 resolution: "icss-utils@npm:5.1.0" @@ -8061,15 +4671,6 @@ __metadata: languageName: node linkType: hard -"identity-obj-proxy@npm:^3.0.0": - version: 3.0.0 - resolution: "identity-obj-proxy@npm:3.0.0" - dependencies: - harmony-reflect: ^1.4.6 - checksum: 97559f8ea2aeaa1a880d279d8c49550dce01148321e00a2102cda5ddf9ce622fa1d7f3efc7bed63458af78889de888fdaebaf31c816312298bb3fdd0ef8aaf2c - languageName: node - linkType: hard - "ieee754@npm:^1.1.13": version: 1.2.1 resolution: "ieee754@npm:1.2.1" @@ -8382,13 +4983,6 @@ __metadata: languageName: node linkType: hard -"is-generator-fn@npm:^2.0.0": - version: 2.1.0 - resolution: "is-generator-fn@npm:2.1.0" - checksum: a6ad5492cf9d1746f73b6744e0c43c0020510b59d56ddcb78a91cbc173f09b5e6beff53d75c9c5a29feb618bfef2bf458e025ecf3a57ad2268e2fb2569f56215 - languageName: node - linkType: hard - "is-generator-function@npm:^1.0.10": version: 1.1.0 resolution: "is-generator-function@npm:1.1.0" @@ -8485,13 +5079,6 @@ __metadata: languageName: node linkType: hard -"is-potential-custom-element-name@npm:^1.0.1": - version: 1.0.1 - resolution: "is-potential-custom-element-name@npm:1.0.1" - checksum: ced7bbbb6433a5b684af581872afe0e1767e2d1146b2207ca0068a648fb5cab9d898495d1ac0583524faaf24ca98176a7d9876363097c2d14fee6dd324f3a1ab - languageName: node - linkType: hard - "is-regex@npm:^1.2.1": version: 1.2.1 resolution: "is-regex@npm:1.2.1" @@ -8548,654 +5135,167 @@ __metadata: resolution: "is-string@npm:1.1.1" dependencies: call-bound: ^1.0.3 - has-tostringtag: ^1.0.2 - checksum: 2eeaaff605250f5e836ea3500d33d1a5d3aa98d008641d9d42fb941e929ffd25972326c2ef912987e54c95b6f10416281aaf1b35cdf81992cfb7524c5de8e193 - languageName: node - linkType: hard - -"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": - version: 1.1.1 - resolution: "is-symbol@npm:1.1.1" - dependencies: - call-bound: ^1.0.2 - has-symbols: ^1.1.0 - safe-regex-test: ^1.1.0 - checksum: bfafacf037af6f3c9d68820b74be4ae8a736a658a3344072df9642a090016e281797ba8edbeb1c83425879aae55d1cb1f30b38bf132d703692b2570367358032 - languageName: node - linkType: hard - -"is-text-path@npm:^1.0.1": - version: 1.0.1 - resolution: "is-text-path@npm:1.0.1" - dependencies: - text-extensions: ^1.0.0 - checksum: fb5d78752c22b3f73a7c9540768f765ffcfa38c9e421e2b9af869565307fa1ae5e3d3a2ba016a43549742856846566d327da406e94a5846ec838a288b1704fd2 - languageName: node - linkType: hard - -"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15": - version: 1.1.15 - resolution: "is-typed-array@npm:1.1.15" - dependencies: - which-typed-array: ^1.1.16 - checksum: ea7cfc46c282f805d19a9ab2084fd4542fed99219ee9dbfbc26284728bd713a51eac66daa74eca00ae0a43b61322920ba334793607dc39907465913e921e0892 - languageName: node - linkType: hard - -"is-unicode-supported@npm:^0.1.0": - version: 0.1.0 - resolution: "is-unicode-supported@npm:0.1.0" - checksum: a2aab86ee7712f5c2f999180daaba5f361bdad1efadc9610ff5b8ab5495b86e4f627839d085c6530363c6d6d4ecbde340fb8e54bdb83da4ba8e0865ed5513c52 - languageName: node - linkType: hard - -"is-weakmap@npm:^2.0.2": - version: 2.0.2 - resolution: "is-weakmap@npm:2.0.2" - checksum: f36aef758b46990e0d3c37269619c0a08c5b29428c0bb11ecba7f75203442d6c7801239c2f31314bc79199217ef08263787f3837d9e22610ad1da62970d6616d - languageName: node - linkType: hard - -"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.0": - version: 1.1.1 - resolution: "is-weakref@npm:1.1.1" - dependencies: - call-bound: ^1.0.3 - checksum: 1769b9aed5d435a3a989ffc18fc4ad1947d2acdaf530eb2bd6af844861b545047ea51102f75901f89043bed0267ed61d914ee21e6e8b9aa734ec201cdfc0726f - languageName: node - linkType: hard - -"is-weakset@npm:^2.0.3": - version: 2.0.4 - resolution: "is-weakset@npm:2.0.4" - dependencies: - call-bound: ^1.0.3 - get-intrinsic: ^1.2.6 - checksum: 5c6c8415a06065d78bdd5e3a771483aa1cd928df19138aa73c4c51333226f203f22117b4325df55cc8b3085a6716870a320c2d757efee92d7a7091a039082041 - languageName: node - linkType: hard - -"is-wsl@npm:^2.2.0": - version: 2.2.0 - resolution: "is-wsl@npm:2.2.0" - dependencies: - is-docker: ^2.0.0 - checksum: 20849846ae414997d290b75e16868e5261e86ff5047f104027026fd61d8b5a9b0b3ade16239f35e1a067b3c7cc02f70183cb661010ed16f4b6c7c93dad1b19d8 - languageName: node - linkType: hard - -"isarray@npm:^2.0.5": - version: 2.0.5 - resolution: "isarray@npm:2.0.5" - checksum: bd5bbe4104438c4196ba58a54650116007fa0262eccef13a4c55b2e09a5b36b59f1e75b9fcc49883dd9d4953892e6fc007eef9e9155648ceea036e184b0f930a - languageName: node - linkType: hard - -"isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab - languageName: node - linkType: hard - -"isexe@npm:^2.0.0": - version: 2.0.0 - resolution: "isexe@npm:2.0.0" - checksum: 26bf6c5480dda5161c820c5b5c751ae1e766c587b1f951ea3fcfc973bafb7831ae5b54a31a69bd670220e42e99ec154475025a468eae58ea262f813fdc8d1c62 - languageName: node - linkType: hard - -"isexe@npm:^3.1.1": - version: 3.1.1 - resolution: "isexe@npm:3.1.1" - checksum: 7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e - languageName: node - linkType: hard - -"isobject@npm:^3.0.1": - version: 3.0.1 - resolution: "isobject@npm:3.0.1" - checksum: db85c4c970ce30693676487cca0e61da2ca34e8d4967c2e1309143ff910c207133a969f9e4ddb2dc6aba670aabce4e0e307146c310350b298e74a31f7d464703 - languageName: node - linkType: hard - -"isomorphic.js@npm:^0.2.4": - version: 0.2.5 - resolution: "isomorphic.js@npm:0.2.5" - checksum: d8d1b083f05f3c337a06628b982ac3ce6db953bbef14a9de8ad49131250c3592f864b73c12030fdc9ef138ce97b76ef55c7d96a849561ac215b1b4b9d301c8e9 - languageName: node - linkType: hard - -"istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": - version: 3.2.2 - resolution: "istanbul-lib-coverage@npm:3.2.2" - checksum: 2367407a8d13982d8f7a859a35e7f8dd5d8f75aae4bb5484ede3a9ea1b426dc245aff28b976a2af48ee759fdd9be374ce2bd2669b644f31e76c5f46a2e29a831 - languageName: node - linkType: hard - -"istanbul-lib-instrument@npm:^5.0.4": - version: 5.2.1 - resolution: "istanbul-lib-instrument@npm:5.2.1" - dependencies: - "@babel/core": ^7.12.3 - "@babel/parser": ^7.14.7 - "@istanbuljs/schema": ^0.1.2 - istanbul-lib-coverage: ^3.2.0 - semver: ^6.3.0 - checksum: bf16f1803ba5e51b28bbd49ed955a736488381e09375d830e42ddeb403855b2006f850711d95ad726f2ba3f1ae8e7366de7e51d2b9ac67dc4d80191ef7ddf272 - languageName: node - linkType: hard - -"istanbul-lib-instrument@npm:^6.0.0": - version: 6.0.3 - resolution: "istanbul-lib-instrument@npm:6.0.3" - dependencies: - "@babel/core": ^7.23.9 - "@babel/parser": ^7.23.9 - "@istanbuljs/schema": ^0.1.3 - istanbul-lib-coverage: ^3.2.0 - semver: ^7.5.4 - checksum: 74104c60c65c4fa0e97cc76f039226c356123893929f067bfad5f86fe839e08f5d680354a68fead3bc9c1e2f3fa6f3f53cded70778e821d911e851d349f3545a - languageName: node - linkType: hard - -"istanbul-lib-report@npm:^3.0.0": - version: 3.0.1 - resolution: "istanbul-lib-report@npm:3.0.1" - dependencies: - istanbul-lib-coverage: ^3.0.0 - make-dir: ^4.0.0 - supports-color: ^7.1.0 - checksum: fd17a1b879e7faf9bb1dc8f80b2a16e9f5b7b8498fe6ed580a618c34df0bfe53d2abd35bf8a0a00e628fb7405462576427c7df20bbe4148d19c14b431c974b21 - languageName: node - linkType: hard - -"istanbul-lib-source-maps@npm:^4.0.0": - version: 4.0.1 - resolution: "istanbul-lib-source-maps@npm:4.0.1" - dependencies: - debug: ^4.1.1 - istanbul-lib-coverage: ^3.0.0 - source-map: ^0.6.1 - checksum: 21ad3df45db4b81852b662b8d4161f6446cd250c1ddc70ef96a585e2e85c26ed7cd9c2a396a71533cfb981d1a645508bc9618cae431e55d01a0628e7dec62ef2 - languageName: node - linkType: hard - -"istanbul-reports@npm:^3.1.3": - version: 3.1.7 - resolution: "istanbul-reports@npm:3.1.7" - dependencies: - html-escaper: ^2.0.0 - istanbul-lib-report: ^3.0.0 - checksum: 2072db6e07bfbb4d0eb30e2700250636182398c1af811aea5032acb219d2080f7586923c09fa194029efd6b92361afb3dcbe1ebcc3ee6651d13340f7c6c4ed95 - languageName: node - linkType: hard - -"jackspeak@npm:^3.1.2": - version: 3.4.3 - resolution: "jackspeak@npm:3.4.3" - dependencies: - "@isaacs/cliui": ^8.0.2 - "@pkgjs/parseargs": ^0.11.0 - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: be31027fc72e7cc726206b9f560395604b82e0fddb46c4cbf9f97d049bcef607491a5afc0699612eaa4213ca5be8fd3e1e7cd187b3040988b65c9489838a7c00 - languageName: node - linkType: hard - -"jake@npm:^10.8.5": - version: 10.9.2 - resolution: "jake@npm:10.9.2" - dependencies: - async: ^3.2.3 - chalk: ^4.0.2 - filelist: ^1.0.4 - minimatch: ^3.1.2 - bin: - jake: bin/cli.js - checksum: f2dc4a086b4f58446d02cb9be913c39710d9ea570218d7681bb861f7eeaecab7b458256c946aeaa7e548c5e0686cc293e6435501e4047174a3b6a504dcbfcaae - languageName: node - linkType: hard - -"jest-changed-files@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-changed-files@npm:29.7.0" - dependencies: - execa: ^5.0.0 - jest-util: ^29.7.0 - p-limit: ^3.1.0 - checksum: 963e203893c396c5dfc75e00a49426688efea7361b0f0e040035809cecd2d46b3c01c02be2d9e8d38b1138357d2de7719ea5b5be21f66c10f2e9685a5a73bb99 - languageName: node - linkType: hard - -"jest-circus@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-circus@npm:29.7.0" - dependencies: - "@jest/environment": ^29.7.0 - "@jest/expect": ^29.7.0 - "@jest/test-result": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/node": "*" - chalk: ^4.0.0 - co: ^4.6.0 - dedent: ^1.0.0 - is-generator-fn: ^2.0.0 - jest-each: ^29.7.0 - jest-matcher-utils: ^29.7.0 - jest-message-util: ^29.7.0 - jest-runtime: ^29.7.0 - jest-snapshot: ^29.7.0 - jest-util: ^29.7.0 - p-limit: ^3.1.0 - pretty-format: ^29.7.0 - pure-rand: ^6.0.0 - slash: ^3.0.0 - stack-utils: ^2.0.3 - checksum: 349437148924a5a109c9b8aad6d393a9591b4dac1918fc97d81b7fc515bc905af9918495055071404af1fab4e48e4b04ac3593477b1d5dcf48c4e71b527c70a7 - languageName: node - linkType: hard - -"jest-cli@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-cli@npm:29.7.0" - dependencies: - "@jest/core": ^29.7.0 - "@jest/test-result": ^29.7.0 - "@jest/types": ^29.6.3 - chalk: ^4.0.0 - create-jest: ^29.7.0 - exit: ^0.1.2 - import-local: ^3.0.2 - jest-config: ^29.7.0 - jest-util: ^29.7.0 - jest-validate: ^29.7.0 - yargs: ^17.3.1 - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - bin: - jest: bin/jest.js - checksum: 664901277a3f5007ea4870632ed6e7889db9da35b2434e7cb488443e6bf5513889b344b7fddf15112135495b9875892b156faeb2d7391ddb9e2a849dcb7b6c36 - languageName: node - linkType: hard - -"jest-config@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-config@npm:29.7.0" - dependencies: - "@babel/core": ^7.11.6 - "@jest/test-sequencer": ^29.7.0 - "@jest/types": ^29.6.3 - babel-jest: ^29.7.0 - chalk: ^4.0.0 - ci-info: ^3.2.0 - deepmerge: ^4.2.2 - glob: ^7.1.3 - graceful-fs: ^4.2.9 - jest-circus: ^29.7.0 - jest-environment-node: ^29.7.0 - jest-get-type: ^29.6.3 - jest-regex-util: ^29.6.3 - jest-resolve: ^29.7.0 - jest-runner: ^29.7.0 - jest-util: ^29.7.0 - jest-validate: ^29.7.0 - micromatch: ^4.0.4 - parse-json: ^5.2.0 - pretty-format: ^29.7.0 - slash: ^3.0.0 - strip-json-comments: ^3.1.1 - peerDependencies: - "@types/node": "*" - ts-node: ">=9.0.0" - peerDependenciesMeta: - "@types/node": - optional: true - ts-node: - optional: true - checksum: 4cabf8f894c180cac80b7df1038912a3fc88f96f2622de33832f4b3314f83e22b08fb751da570c0ab2b7988f21604bdabade95e3c0c041068ac578c085cf7dff - languageName: node - linkType: hard - -"jest-diff@npm:>=29.4.3 < 30, jest-diff@npm:^29.4.1, jest-diff@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-diff@npm:29.7.0" - dependencies: - chalk: ^4.0.0 - diff-sequences: ^29.6.3 - jest-get-type: ^29.6.3 - pretty-format: ^29.7.0 - checksum: 08e24a9dd43bfba1ef07a6374e5af138f53137b79ec3d5cc71a2303515335898888fa5409959172e1e05de966c9e714368d15e8994b0af7441f0721ee8e1bb77 - languageName: node - linkType: hard - -"jest-docblock@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-docblock@npm:29.7.0" - dependencies: - detect-newline: ^3.0.0 - checksum: 66390c3e9451f8d96c5da62f577a1dad701180cfa9b071c5025acab2f94d7a3efc2515cfa1654ebe707213241541ce9c5530232cdc8017c91ed64eea1bd3b192 + has-tostringtag: ^1.0.2 + checksum: 2eeaaff605250f5e836ea3500d33d1a5d3aa98d008641d9d42fb941e929ffd25972326c2ef912987e54c95b6f10416281aaf1b35cdf81992cfb7524c5de8e193 languageName: node linkType: hard -"jest-each@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-each@npm:29.7.0" +"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": + version: 1.1.1 + resolution: "is-symbol@npm:1.1.1" dependencies: - "@jest/types": ^29.6.3 - chalk: ^4.0.0 - jest-get-type: ^29.6.3 - jest-util: ^29.7.0 - pretty-format: ^29.7.0 - checksum: e88f99f0184000fc8813f2a0aa79e29deeb63700a3b9b7928b8a418d7d93cd24933608591dbbdea732b473eb2021c72991b5cc51a17966842841c6e28e6f691c + call-bound: ^1.0.2 + has-symbols: ^1.1.0 + safe-regex-test: ^1.1.0 + checksum: bfafacf037af6f3c9d68820b74be4ae8a736a658a3344072df9642a090016e281797ba8edbeb1c83425879aae55d1cb1f30b38bf132d703692b2570367358032 languageName: node linkType: hard -"jest-environment-jsdom@npm:^29.3.0": - version: 29.7.0 - resolution: "jest-environment-jsdom@npm:29.7.0" +"is-text-path@npm:^1.0.1": + version: 1.0.1 + resolution: "is-text-path@npm:1.0.1" dependencies: - "@jest/environment": ^29.7.0 - "@jest/fake-timers": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/jsdom": ^20.0.0 - "@types/node": "*" - jest-mock: ^29.7.0 - jest-util: ^29.7.0 - jsdom: ^20.0.0 - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true - checksum: 559aac134c196fccc1dfc794d8fc87377e9f78e894bb13012b0831d88dec0abd7ece99abec69da564b8073803be4f04a9eb4f4d1bb80e29eec0cb252c254deb8 + text-extensions: ^1.0.0 + checksum: fb5d78752c22b3f73a7c9540768f765ffcfa38c9e421e2b9af869565307fa1ae5e3d3a2ba016a43549742856846566d327da406e94a5846ec838a288b1704fd2 languageName: node linkType: hard -"jest-environment-node@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-environment-node@npm:29.7.0" +"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15": + version: 1.1.15 + resolution: "is-typed-array@npm:1.1.15" dependencies: - "@jest/environment": ^29.7.0 - "@jest/fake-timers": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/node": "*" - jest-mock: ^29.7.0 - jest-util: ^29.7.0 - checksum: 501a9966292cbe0ca3f40057a37587cb6def25e1e0c5e39ac6c650fe78d3c70a2428304341d084ac0cced5041483acef41c477abac47e9a290d5545fd2f15646 + which-typed-array: ^1.1.16 + checksum: ea7cfc46c282f805d19a9ab2084fd4542fed99219ee9dbfbc26284728bd713a51eac66daa74eca00ae0a43b61322920ba334793607dc39907465913e921e0892 languageName: node linkType: hard -"jest-get-type@npm:^29.6.3": - version: 29.6.3 - resolution: "jest-get-type@npm:29.6.3" - checksum: 88ac9102d4679d768accae29f1e75f592b760b44277df288ad76ce5bf038c3f5ce3719dea8aa0f035dac30e9eb034b848ce716b9183ad7cc222d029f03e92205 +"is-unicode-supported@npm:^0.1.0": + version: 0.1.0 + resolution: "is-unicode-supported@npm:0.1.0" + checksum: a2aab86ee7712f5c2f999180daaba5f361bdad1efadc9610ff5b8ab5495b86e4f627839d085c6530363c6d6d4ecbde340fb8e54bdb83da4ba8e0865ed5513c52 languageName: node linkType: hard -"jest-haste-map@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-haste-map@npm:29.7.0" - dependencies: - "@jest/types": ^29.6.3 - "@types/graceful-fs": ^4.1.3 - "@types/node": "*" - anymatch: ^3.0.3 - fb-watchman: ^2.0.0 - fsevents: ^2.3.2 - graceful-fs: ^4.2.9 - jest-regex-util: ^29.6.3 - jest-util: ^29.7.0 - jest-worker: ^29.7.0 - micromatch: ^4.0.4 - walker: ^1.0.8 - dependenciesMeta: - fsevents: - optional: true - checksum: c2c8f2d3e792a963940fbdfa563ce14ef9e14d4d86da645b96d3cd346b8d35c5ce0b992ee08593939b5f718cf0a1f5a90011a056548a1dbf58397d4356786f01 +"is-weakmap@npm:^2.0.2": + version: 2.0.2 + resolution: "is-weakmap@npm:2.0.2" + checksum: f36aef758b46990e0d3c37269619c0a08c5b29428c0bb11ecba7f75203442d6c7801239c2f31314bc79199217ef08263787f3837d9e22610ad1da62970d6616d languageName: node linkType: hard -"jest-junit@npm:^15.0.0": - version: 15.0.0 - resolution: "jest-junit@npm:15.0.0" +"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.0": + version: 1.1.1 + resolution: "is-weakref@npm:1.1.1" dependencies: - mkdirp: ^1.0.4 - strip-ansi: ^6.0.1 - uuid: ^8.3.2 - xml: ^1.0.1 - checksum: e8fe4d2f2ab843383ac41820a6fe495739d154ec435cd44ba590b44ec7fd62095676f3eef13f98392f81d4a3727ea58b4f4fad231fe367ac31243952b9ad716f + call-bound: ^1.0.3 + checksum: 1769b9aed5d435a3a989ffc18fc4ad1947d2acdaf530eb2bd6af844861b545047ea51102f75901f89043bed0267ed61d914ee21e6e8b9aa734ec201cdfc0726f languageName: node linkType: hard -"jest-leak-detector@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-leak-detector@npm:29.7.0" +"is-weakset@npm:^2.0.3": + version: 2.0.4 + resolution: "is-weakset@npm:2.0.4" dependencies: - jest-get-type: ^29.6.3 - pretty-format: ^29.7.0 - checksum: e3950e3ddd71e1d0c22924c51a300a1c2db6cf69ec1e51f95ccf424bcc070f78664813bef7aed4b16b96dfbdeea53fe358f8aeaaea84346ae15c3735758f1605 + call-bound: ^1.0.3 + get-intrinsic: ^1.2.6 + checksum: 5c6c8415a06065d78bdd5e3a771483aa1cd928df19138aa73c4c51333226f203f22117b4325df55cc8b3085a6716870a320c2d757efee92d7a7091a039082041 languageName: node linkType: hard -"jest-matcher-utils@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-matcher-utils@npm:29.7.0" +"is-wsl@npm:^2.2.0": + version: 2.2.0 + resolution: "is-wsl@npm:2.2.0" dependencies: - chalk: ^4.0.0 - jest-diff: ^29.7.0 - jest-get-type: ^29.6.3 - pretty-format: ^29.7.0 - checksum: d7259e5f995d915e8a37a8fd494cb7d6af24cd2a287b200f831717ba0d015190375f9f5dc35393b8ba2aae9b2ebd60984635269c7f8cff7d85b077543b7744cd + is-docker: ^2.0.0 + checksum: 20849846ae414997d290b75e16868e5261e86ff5047f104027026fd61d8b5a9b0b3ade16239f35e1a067b3c7cc02f70183cb661010ed16f4b6c7c93dad1b19d8 languageName: node linkType: hard -"jest-message-util@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-message-util@npm:29.7.0" - dependencies: - "@babel/code-frame": ^7.12.13 - "@jest/types": ^29.6.3 - "@types/stack-utils": ^2.0.0 - chalk: ^4.0.0 - graceful-fs: ^4.2.9 - micromatch: ^4.0.4 - pretty-format: ^29.7.0 - slash: ^3.0.0 - stack-utils: ^2.0.3 - checksum: a9d025b1c6726a2ff17d54cc694de088b0489456c69106be6b615db7a51b7beb66788bea7a59991a019d924fbf20f67d085a445aedb9a4d6760363f4d7d09930 +"isarray@npm:^2.0.5": + version: 2.0.5 + resolution: "isarray@npm:2.0.5" + checksum: bd5bbe4104438c4196ba58a54650116007fa0262eccef13a4c55b2e09a5b36b59f1e75b9fcc49883dd9d4953892e6fc007eef9e9155648ceea036e184b0f930a languageName: node linkType: hard -"jest-mock@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-mock@npm:29.7.0" - dependencies: - "@jest/types": ^29.6.3 - "@types/node": "*" - jest-util: ^29.7.0 - checksum: 81ba9b68689a60be1482212878973700347cb72833c5e5af09895882b9eb5c4e02843a1bbdf23f94c52d42708bab53a30c45a3482952c9eec173d1eaac5b86c5 +"isarray@npm:~1.0.0": + version: 1.0.0 + resolution: "isarray@npm:1.0.0" + checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab languageName: node linkType: hard -"jest-pnp-resolver@npm:^1.2.2": - version: 1.2.3 - resolution: "jest-pnp-resolver@npm:1.2.3" - peerDependencies: - jest-resolve: "*" - peerDependenciesMeta: - jest-resolve: - optional: true - checksum: db1a8ab2cb97ca19c01b1cfa9a9c8c69a143fde833c14df1fab0766f411b1148ff0df878adea09007ac6a2085ec116ba9a996a6ad104b1e58c20adbf88eed9b2 +"isexe@npm:^2.0.0": + version: 2.0.0 + resolution: "isexe@npm:2.0.0" + checksum: 26bf6c5480dda5161c820c5b5c751ae1e766c587b1f951ea3fcfc973bafb7831ae5b54a31a69bd670220e42e99ec154475025a468eae58ea262f813fdc8d1c62 languageName: node linkType: hard -"jest-regex-util@npm:^29.6.3": - version: 29.6.3 - resolution: "jest-regex-util@npm:29.6.3" - checksum: 0518beeb9bf1228261695e54f0feaad3606df26a19764bc19541e0fc6e2a3737191904607fb72f3f2ce85d9c16b28df79b7b1ec9443aa08c3ef0e9efda6f8f2a +"isexe@npm:^3.1.1": + version: 3.1.1 + resolution: "isexe@npm:3.1.1" + checksum: 7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e languageName: node linkType: hard -"jest-resolve-dependencies@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-resolve-dependencies@npm:29.7.0" - dependencies: - jest-regex-util: ^29.6.3 - jest-snapshot: ^29.7.0 - checksum: aeb75d8150aaae60ca2bb345a0d198f23496494677cd6aefa26fc005faf354061f073982175daaf32b4b9d86b26ca928586344516e3e6969aa614cb13b883984 +"isobject@npm:^3.0.1": + version: 3.0.1 + resolution: "isobject@npm:3.0.1" + checksum: db85c4c970ce30693676487cca0e61da2ca34e8d4967c2e1309143ff910c207133a969f9e4ddb2dc6aba670aabce4e0e307146c310350b298e74a31f7d464703 languageName: node linkType: hard -"jest-resolve@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-resolve@npm:29.7.0" - dependencies: - chalk: ^4.0.0 - graceful-fs: ^4.2.9 - jest-haste-map: ^29.7.0 - jest-pnp-resolver: ^1.2.2 - jest-util: ^29.7.0 - jest-validate: ^29.7.0 - resolve: ^1.20.0 - resolve.exports: ^2.0.0 - slash: ^3.0.0 - checksum: 0ca218e10731aa17920526ec39deaec59ab9b966237905ffc4545444481112cd422f01581230eceb7e82d86f44a543d520a71391ec66e1b4ef1a578bd5c73487 +"isomorphic.js@npm:^0.2.4": + version: 0.2.5 + resolution: "isomorphic.js@npm:0.2.5" + checksum: d8d1b083f05f3c337a06628b982ac3ce6db953bbef14a9de8ad49131250c3592f864b73c12030fdc9ef138ce97b76ef55c7d96a849561ac215b1b4b9d301c8e9 languageName: node linkType: hard -"jest-runner@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-runner@npm:29.7.0" +"jackspeak@npm:^3.1.2": + version: 3.4.3 + resolution: "jackspeak@npm:3.4.3" dependencies: - "@jest/console": ^29.7.0 - "@jest/environment": ^29.7.0 - "@jest/test-result": ^29.7.0 - "@jest/transform": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/node": "*" - chalk: ^4.0.0 - emittery: ^0.13.1 - graceful-fs: ^4.2.9 - jest-docblock: ^29.7.0 - jest-environment-node: ^29.7.0 - jest-haste-map: ^29.7.0 - jest-leak-detector: ^29.7.0 - jest-message-util: ^29.7.0 - jest-resolve: ^29.7.0 - jest-runtime: ^29.7.0 - jest-util: ^29.7.0 - jest-watcher: ^29.7.0 - jest-worker: ^29.7.0 - p-limit: ^3.1.0 - source-map-support: 0.5.13 - checksum: f0405778ea64812bf9b5c50b598850d94ccf95d7ba21f090c64827b41decd680ee19fcbb494007cdd7f5d0d8906bfc9eceddd8fa583e753e736ecd462d4682fb - languageName: node - linkType: hard - -"jest-runtime@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-runtime@npm:29.7.0" - dependencies: - "@jest/environment": ^29.7.0 - "@jest/fake-timers": ^29.7.0 - "@jest/globals": ^29.7.0 - "@jest/source-map": ^29.6.3 - "@jest/test-result": ^29.7.0 - "@jest/transform": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/node": "*" - chalk: ^4.0.0 - cjs-module-lexer: ^1.0.0 - collect-v8-coverage: ^1.0.0 - glob: ^7.1.3 - graceful-fs: ^4.2.9 - jest-haste-map: ^29.7.0 - jest-message-util: ^29.7.0 - jest-mock: ^29.7.0 - jest-regex-util: ^29.6.3 - jest-resolve: ^29.7.0 - jest-snapshot: ^29.7.0 - jest-util: ^29.7.0 - slash: ^3.0.0 - strip-bom: ^4.0.0 - checksum: d19f113d013e80691e07047f68e1e3448ef024ff2c6b586ce4f90cd7d4c62a2cd1d460110491019719f3c59bfebe16f0e201ed005ef9f80e2cf798c374eed54e - languageName: node - linkType: hard - -"jest-snapshot@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-snapshot@npm:29.7.0" - dependencies: - "@babel/core": ^7.11.6 - "@babel/generator": ^7.7.2 - "@babel/plugin-syntax-jsx": ^7.7.2 - "@babel/plugin-syntax-typescript": ^7.7.2 - "@babel/types": ^7.3.3 - "@jest/expect-utils": ^29.7.0 - "@jest/transform": ^29.7.0 - "@jest/types": ^29.6.3 - babel-preset-current-node-syntax: ^1.0.0 - chalk: ^4.0.0 - expect: ^29.7.0 - graceful-fs: ^4.2.9 - jest-diff: ^29.7.0 - jest-get-type: ^29.6.3 - jest-matcher-utils: ^29.7.0 - jest-message-util: ^29.7.0 - jest-util: ^29.7.0 - natural-compare: ^1.4.0 - pretty-format: ^29.7.0 - semver: ^7.5.3 - checksum: 86821c3ad0b6899521ce75ee1ae7b01b17e6dfeff9166f2cf17f012e0c5d8c798f30f9e4f8f7f5bed01ea7b55a6bc159f5eda778311162cbfa48785447c237ad + "@isaacs/cliui": ^8.0.2 + "@pkgjs/parseargs": ^0.11.0 + dependenciesMeta: + "@pkgjs/parseargs": + optional: true + checksum: be31027fc72e7cc726206b9f560395604b82e0fddb46c4cbf9f97d049bcef607491a5afc0699612eaa4213ca5be8fd3e1e7cd187b3040988b65c9489838a7c00 languageName: node linkType: hard -"jest-util@npm:^29.0.0, jest-util@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-util@npm:29.7.0" +"jake@npm:^10.8.5": + version: 10.9.2 + resolution: "jake@npm:10.9.2" dependencies: - "@jest/types": ^29.6.3 - "@types/node": "*" - chalk: ^4.0.0 - ci-info: ^3.2.0 - graceful-fs: ^4.2.9 - picomatch: ^2.2.3 - checksum: 042ab4980f4ccd4d50226e01e5c7376a8556b472442ca6091a8f102488c0f22e6e8b89ea874111d2328a2080083bf3225c86f3788c52af0bd0345a00eb57a3ca + async: ^3.2.3 + chalk: ^4.0.2 + filelist: ^1.0.4 + minimatch: ^3.1.2 + bin: + jake: bin/cli.js + checksum: f2dc4a086b4f58446d02cb9be913c39710d9ea570218d7681bb861f7eeaecab7b458256c946aeaa7e548c5e0686cc293e6435501e4047174a3b6a504dcbfcaae languageName: node linkType: hard -"jest-validate@npm:^29.7.0": +"jest-diff@npm:>=29.4.3 < 30, jest-diff@npm:^29.4.1": version: 29.7.0 - resolution: "jest-validate@npm:29.7.0" + resolution: "jest-diff@npm:29.7.0" dependencies: - "@jest/types": ^29.6.3 - camelcase: ^6.2.0 chalk: ^4.0.0 + diff-sequences: ^29.6.3 jest-get-type: ^29.6.3 - leven: ^3.1.0 pretty-format: ^29.7.0 - checksum: 191fcdc980f8a0de4dbdd879fa276435d00eb157a48683af7b3b1b98b0f7d9de7ffe12689b617779097ff1ed77601b9f7126b0871bba4f776e222c40f62e9dae + checksum: 08e24a9dd43bfba1ef07a6374e5af138f53137b79ec3d5cc71a2303515335898888fa5409959172e1e05de966c9e714368d15e8994b0af7441f0721ee8e1bb77 languageName: node linkType: hard -"jest-watcher@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-watcher@npm:29.7.0" - dependencies: - "@jest/test-result": ^29.7.0 - "@jest/types": ^29.6.3 - "@types/node": "*" - ansi-escapes: ^4.2.1 - chalk: ^4.0.0 - emittery: ^0.13.1 - jest-util: ^29.7.0 - string-length: ^4.0.1 - checksum: 67e6e7fe695416deff96b93a14a561a6db69389a0667e9489f24485bb85e5b54e12f3b2ba511ec0b777eca1e727235b073e3ebcdd473d68888650489f88df92f +"jest-get-type@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-get-type@npm:29.6.3" + checksum: 88ac9102d4679d768accae29f1e75f592b760b44277df288ad76ce5bf038c3f5ce3719dea8aa0f035dac30e9eb034b848ce716b9183ad7cc222d029f03e92205 languageName: node linkType: hard @@ -9210,37 +5310,6 @@ __metadata: languageName: node linkType: hard -"jest-worker@npm:^29.7.0": - version: 29.7.0 - resolution: "jest-worker@npm:29.7.0" - dependencies: - "@types/node": "*" - jest-util: ^29.7.0 - merge-stream: ^2.0.0 - supports-color: ^8.0.0 - checksum: 30fff60af49675273644d408b650fc2eb4b5dcafc5a0a455f238322a8f9d8a98d847baca9d51ff197b6747f54c7901daa2287799230b856a0f48287d131f8c13 - languageName: node - linkType: hard - -"jest@npm:^29.2.0": - version: 29.7.0 - resolution: "jest@npm:29.7.0" - dependencies: - "@jest/core": ^29.7.0 - "@jest/types": ^29.6.3 - import-local: ^3.0.2 - jest-cli: ^29.7.0 - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - bin: - jest: bin/jest.js - checksum: 17ca8d67504a7dbb1998cf3c3077ec9031ba3eb512da8d71cb91bcabb2b8995c4e4b292b740cb9bf1cbff5ce3e110b3f7c777b0cefb6f41ab05445f248d0ee0b - languageName: node - linkType: hard - "js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" @@ -9278,63 +5347,6 @@ __metadata: languageName: node linkType: hard -"jsdom@npm:^20.0.0": - version: 20.0.3 - resolution: "jsdom@npm:20.0.3" - dependencies: - abab: ^2.0.6 - acorn: ^8.8.1 - acorn-globals: ^7.0.0 - cssom: ^0.5.0 - cssstyle: ^2.3.0 - data-urls: ^3.0.2 - decimal.js: ^10.4.2 - domexception: ^4.0.0 - escodegen: ^2.0.0 - form-data: ^4.0.0 - html-encoding-sniffer: ^3.0.0 - http-proxy-agent: ^5.0.0 - https-proxy-agent: ^5.0.1 - is-potential-custom-element-name: ^1.0.1 - nwsapi: ^2.2.2 - parse5: ^7.1.1 - saxes: ^6.0.0 - symbol-tree: ^3.2.4 - tough-cookie: ^4.1.2 - w3c-xmlserializer: ^4.0.0 - webidl-conversions: ^7.0.0 - whatwg-encoding: ^2.0.0 - whatwg-mimetype: ^3.0.0 - whatwg-url: ^11.0.0 - ws: ^8.11.0 - xml-name-validator: ^4.0.0 - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true - checksum: 6e2ae21db397133a061b270c26d2dbc0b9051733ea3b896a7ece78d79f475ff0974f766a413c1198a79c793159119169f2335ddb23150348fbfdcfa6f3105536 - languageName: node - linkType: hard - -"jsesc@npm:^3.0.2": - version: 3.1.0 - resolution: "jsesc@npm:3.1.0" - bin: - jsesc: bin/jsesc - checksum: 19c94095ea026725540c0d29da33ab03144f6bcf2d4159e4833d534976e99e0c09c38cefa9a575279a51fc36b31166f8d6d05c9fe2645d5f15851d690b41f17f - languageName: node - linkType: hard - -"jsesc@npm:~3.0.2": - version: 3.0.2 - resolution: "jsesc@npm:3.0.2" - bin: - jsesc: bin/jsesc - checksum: a36d3ca40574a974d9c2063bf68c2b6141c20da8f2a36bd3279fc802563f35f0527a6c828801295bdfb2803952cf2cf387786c2c90ed564f88d5782475abfe3c - languageName: node - linkType: hard - "json-buffer@npm:3.0.1": version: 3.0.1 resolution: "json-buffer@npm:3.0.1" @@ -9363,13 +5375,6 @@ __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: da1ae7ef0cc9db02972a06a71322f26bdcda5d7f648c23b28ce7f158ba35707461bcbd91945d8aace10d8d79c383b896725c65ffa410242352692328aa9b5edf - languageName: node - linkType: hard - "json-schema-compare@npm:^0.2.2": version: 0.2.2 resolution: "json-schema-compare@npm:0.2.2" @@ -9445,63 +5450,30 @@ __metadata: version: 6.1.0 resolution: "jsonfile@npm:6.1.0" dependencies: - graceful-fs: ^4.1.6 - universalify: ^2.0.0 - dependenciesMeta: - graceful-fs: - optional: true - checksum: 7af3b8e1ac8fe7f1eccc6263c6ca14e1966fcbc74b618d3c78a0a2075579487547b94f72b7a1114e844a1e15bb00d440e5d1720bfc4612d790a6f285d5ea8354 - languageName: node - linkType: hard - -"jsonparse@npm:^1.2.0, jsonparse@npm:^1.3.1": - version: 1.3.1 - resolution: "jsonparse@npm:1.3.1" - checksum: 6514a7be4674ebf407afca0eda3ba284b69b07f9958a8d3113ef1005f7ec610860c312be067e450c569aab8b89635e332cee3696789c750692bb60daba627f4d - languageName: node - linkType: hard - -"jsonpointer@npm:^5.0.1": - version: 5.0.1 - resolution: "jsonpointer@npm:5.0.1" - checksum: 0b40f712900ad0c846681ea2db23b6684b9d5eedf55807b4708c656f5894b63507d0e28ae10aa1bddbea551241035afe62b6df0800fc94c2e2806a7f3adecd7c - languageName: node - linkType: hard - -"jupyter-css-loader@workspace:packages/css-extension": - version: 0.0.0-use.local - resolution: "jupyter-css-loader@workspace:packages/css-extension" - dependencies: - "@jupyterlab/application": ^4.0.0 - "@jupyterlab/builder": ^4.0.0 - "@jupyterlab/testutils": ^4.0.0 - "@types/jest": ^29.2.0 - "@types/json-schema": ^7.0.11 - "@types/react": ^18.0.26 - "@types/react-addons-linked-state-mixin": ^0.14.22 - "@typescript-eslint/eslint-plugin": ^6.1.0 - "@typescript-eslint/parser": ^6.1.0 - css-loader: ^6.7.1 - eslint: ^8.36.0 - eslint-config-prettier: ^8.8.0 - eslint-plugin-prettier: ^5.0.0 - jest: ^29.2.0 - npm-run-all2: ^7.0.1 - prettier: ^3.0.0 - rimraf: ^5.0.1 - source-map-loader: ^1.0.2 - style-loader: ^3.3.1 - stylelint: ^15.10.1 - stylelint-config-recommended: ^13.0.0 - stylelint-config-standard: ^34.0.0 - stylelint-csstree-validator: ^3.0.0 - stylelint-prettier: ^4.0.0 - typescript: ~5.0.2 - yjs: ^13.5.0 - languageName: unknown - linkType: soft + graceful-fs: ^4.1.6 + universalify: ^2.0.0 + dependenciesMeta: + graceful-fs: + optional: true + checksum: 7af3b8e1ac8fe7f1eccc6263c6ca14e1966fcbc74b618d3c78a0a2075579487547b94f72b7a1114e844a1e15bb00d440e5d1720bfc4612d790a6f285d5ea8354 + languageName: node + linkType: hard + +"jsonparse@npm:^1.2.0, jsonparse@npm:^1.3.1": + version: 1.3.1 + resolution: "jsonparse@npm:1.3.1" + checksum: 6514a7be4674ebf407afca0eda3ba284b69b07f9958a8d3113ef1005f7ec610860c312be067e450c569aab8b89635e332cee3696789c750692bb60daba627f4d + languageName: node + linkType: hard + +"jsonpointer@npm:^5.0.1": + version: 5.0.1 + resolution: "jsonpointer@npm:5.0.1" + checksum: 0b40f712900ad0c846681ea2db23b6684b9d5eedf55807b4708c656f5894b63507d0e28ae10aa1bddbea551241035afe62b6df0800fc94c2e2806a7f3adecd7c + languageName: node + linkType: hard -"jupyter-iframe-commands-host@^0.1.0, jupyter-iframe-commands-host@workspace:packages/host": +"jupyter-iframe-commands-host@workspace:packages/host": version: 0.0.0-use.local resolution: "jupyter-iframe-commands-host@workspace:packages/host" dependencies: @@ -9581,13 +5553,6 @@ __metadata: languageName: node linkType: hard -"kleur@npm:^3.0.3": - version: 3.0.3 - resolution: "kleur@npm:3.0.3" - checksum: df82cd1e172f957bae9c536286265a5cdbd5eeca487cb0a3b2a7b41ef959fc61f8e7c0e9aeea9c114ccf2c166b6a8dd45a46fd619c1c569d210ecd2765ad5169 - languageName: node - linkType: hard - "known-css-properties@npm:^0.29.0": version: 0.29.0 resolution: "known-css-properties@npm:0.29.0" @@ -9685,13 +5650,6 @@ __metadata: languageName: node linkType: hard -"leven@npm:^3.1.0": - version: 3.1.0 - resolution: "leven@npm:3.1.0" - checksum: 638401d534585261b6003db9d99afd244dfe82d75ddb6db5c0df412842d5ab30b2ef18de471aaec70fe69a46f17b4ae3c7f01d8a4e6580ef7adb9f4273ad1e55 - languageName: node - linkType: hard - "levn@npm:^0.4.1": version: 0.4.1 resolution: "levn@npm:0.4.1" @@ -9845,13 +5803,6 @@ __metadata: languageName: node linkType: hard -"lodash.debounce@npm:^4.0.8": - version: 4.0.8 - resolution: "lodash.debounce@npm:4.0.8" - checksum: a3f527d22c548f43ae31c861ada88b2637eb48ac6aa3eb56e82d44917971b8aa96fbb37aa60efea674dc4ee8c42074f90f7b1f772e9db375435f6c83a19b3bc6 - languageName: node - linkType: hard - "lodash.escape@npm:^4.0.1": version: 4.0.1 resolution: "lodash.escape@npm:4.0.1" @@ -9866,13 +5817,6 @@ __metadata: languageName: node linkType: hard -"lodash.memoize@npm:^4.1.2": - version: 4.1.2 - resolution: "lodash.memoize@npm:4.1.2" - checksum: 9ff3942feeccffa4f1fafa88d32f0d24fdc62fd15ded5a74a5f950ff5f0c6f61916157246744c620173dddf38d37095a92327d5fd3861e2063e736a5c207d089 - languageName: node - linkType: hard - "lodash.merge@npm:^4.6.2": version: 4.6.2 resolution: "lodash.merge@npm:4.6.2" @@ -9880,13 +5824,6 @@ __metadata: languageName: node linkType: hard -"lodash.mergewith@npm:^4.6.1": - version: 4.6.2 - resolution: "lodash.mergewith@npm:4.6.2" - checksum: a6db2a9339752411f21b956908c404ec1e088e783a65c8b29e30ae5b3b6384f82517662d6f425cc97c2070b546cc2c7daaa8d33f78db7b6e9be06cd834abdeb8 - languageName: node - linkType: hard - "lodash.truncate@npm:^4.4.2": version: 4.4.2 resolution: "lodash.truncate@npm:4.4.2" @@ -9929,15 +5866,6 @@ __metadata: languageName: node linkType: hard -"lru-cache@npm:^5.1.1": - version: 5.1.1 - resolution: "lru-cache@npm:5.1.1" - dependencies: - yallist: ^3.0.2 - checksum: c154ae1cbb0c2206d1501a0e94df349653c92c8cbb25236d7e85190bcaf4567a03ac6eb43166fabfa36fd35623694da7233e88d9601fbf411a9a481d85dbd2cb - languageName: node - linkType: hard - "lru-cache@npm:^6.0.0": version: 6.0.0 resolution: "lru-cache@npm:6.0.0" @@ -9947,7 +5875,7 @@ __metadata: languageName: node linkType: hard -"make-dir@npm:4.0.0, make-dir@npm:^4.0.0": +"make-dir@npm:4.0.0": version: 4.0.0 resolution: "make-dir@npm:4.0.0" dependencies: @@ -9966,13 +5894,6 @@ __metadata: languageName: node linkType: hard -"make-error@npm:^1.3.6": - version: 1.3.6 - resolution: "make-error@npm:1.3.6" - checksum: b86e5e0e25f7f777b77fabd8e2cbf15737972869d852a22b7e73c17623928fccb826d8e46b9951501d3f20e51ad74ba8c59ed584f610526a48f8ccf88aaec402 - languageName: node - linkType: hard - "make-fetch-happen@npm:^13.0.0, make-fetch-happen@npm:^13.0.1": version: 13.0.1 resolution: "make-fetch-happen@npm:13.0.1" @@ -9993,34 +5914,6 @@ __metadata: languageName: node linkType: hard -"make-fetch-happen@npm:^14.0.3": - version: 14.0.3 - resolution: "make-fetch-happen@npm:14.0.3" - dependencies: - "@npmcli/agent": ^3.0.0 - cacache: ^19.0.1 - http-cache-semantics: ^4.1.1 - minipass: ^7.0.2 - minipass-fetch: ^4.0.0 - minipass-flush: ^1.0.5 - minipass-pipeline: ^1.2.4 - negotiator: ^1.0.0 - proc-log: ^5.0.0 - promise-retry: ^2.0.1 - ssri: ^12.0.0 - checksum: 6fb2fee6da3d98f1953b03d315826b5c5a4ea1f908481afc113782d8027e19f080c85ae998454de4e5f27a681d3ec58d57278f0868d4e0b736f51d396b661691 - languageName: node - linkType: hard - -"makeerror@npm:1.0.12": - version: 1.0.12 - resolution: "makeerror@npm:1.0.12" - dependencies: - tmpl: 1.0.5 - checksum: b38a025a12c8146d6eeea5a7f2bf27d51d8ad6064da8ca9405fcf7bf9b54acd43e3b30ddd7abb9b1bfa4ddb266019133313482570ddb207de568f71ecfcf6060 - languageName: node - linkType: hard - "map-obj@npm:^1.0.0": version: 1.0.1 resolution: "map-obj@npm:1.0.1" @@ -10125,7 +6018,7 @@ __metadata: languageName: node linkType: hard -"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": +"micromatch@npm:^4.0.5, micromatch@npm:^4.0.8": version: 4.0.8 resolution: "micromatch@npm:4.0.8" dependencies: @@ -10282,21 +6175,6 @@ __metadata: languageName: node linkType: hard -"minipass-fetch@npm:^4.0.0": - version: 4.0.1 - resolution: "minipass-fetch@npm:4.0.1" - dependencies: - encoding: ^0.1.13 - minipass: ^7.0.3 - minipass-sized: ^1.0.3 - minizlib: ^3.0.1 - dependenciesMeta: - encoding: - optional: true - checksum: 3dfca705ce887ca9ff14d73e8d8593996dea1a1ecd8101fdbb9c10549d1f9670bc8fb66ad0192769ead4c2dc01b4f9ca1cf567ded365adff17827a303b948140 - languageName: node - linkType: hard - "minipass-flush@npm:^1.0.5": version: 1.0.5 resolution: "minipass-flush@npm:1.0.5" @@ -10347,7 +6225,7 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.1.2": version: 7.1.2 resolution: "minipass@npm:7.1.2" checksum: 2bfd325b95c555f2b4d2814d49325691c7bee937d753814861b0b49d5edcda55cbbf22b6b6a60bb91eddac8668771f03c5ff647dcd9d0f798e9548b9cdc46ee3 @@ -10364,17 +6242,7 @@ __metadata: languageName: node linkType: hard -"minizlib@npm:^3.0.1": - version: 3.0.1 - resolution: "minizlib@npm:3.0.1" - dependencies: - minipass: ^7.0.4 - rimraf: ^5.0.5 - checksum: da0a53899252380475240c587e52c824f8998d9720982ba5c4693c68e89230718884a209858c156c6e08d51aad35700a3589987e540593c36f6713fe30cd7338 - languageName: node - linkType: hard - -"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": +"mkdirp@npm:^1.0.3": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" bin: @@ -10383,15 +6251,6 @@ __metadata: languageName: node linkType: hard -"mkdirp@npm:^3.0.1": - version: 3.0.1 - resolution: "mkdirp@npm:3.0.1" - bin: - mkdirp: dist/cjs/src/bin.js - checksum: 972deb188e8fb55547f1e58d66bd6b4a3623bf0c7137802582602d73e6480c1c2268dcbafbfb1be466e00cc7e56ac514d7fd9334b7cf33e3e2ab547c16f83a8d - languageName: node - linkType: hard - "modify-values@npm:^1.0.1": version: 1.0.1 resolution: "modify-values@npm:1.0.1" @@ -10456,13 +6315,6 @@ __metadata: languageName: node linkType: hard -"negotiator@npm:^1.0.0": - version: 1.0.0 - resolution: "negotiator@npm:1.0.0" - checksum: 20ebfe79b2d2e7cf9cbc8239a72662b584f71164096e6e8896c8325055497c96f6b80cd22c258e8a2f2aa382a787795ec3ee8b37b422a302c7d4381b0d5ecfbb - languageName: node - linkType: hard - "neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" @@ -10511,33 +6363,6 @@ __metadata: languageName: node linkType: hard -"node-gyp@npm:latest": - version: 11.1.0 - resolution: "node-gyp@npm:11.1.0" - dependencies: - env-paths: ^2.2.0 - exponential-backoff: ^3.1.1 - glob: ^10.3.10 - graceful-fs: ^4.2.6 - make-fetch-happen: ^14.0.3 - nopt: ^8.0.0 - proc-log: ^5.0.0 - semver: ^7.3.5 - tar: ^7.4.3 - which: ^5.0.0 - bin: - node-gyp: bin/node-gyp.js - checksum: b196da39a7a45f302d6e03cfdb579eeecbfffa1ab3796de45652c2c0dcbf46b83fde715b054e4d00aa53da5f33033ac5791e20cbb7cc11267dac4f8975ef276c - languageName: node - linkType: hard - -"node-int64@npm:^0.4.0": - version: 0.4.0 - resolution: "node-int64@npm:0.4.0" - checksum: d0b30b1ee6d961851c60d5eaa745d30b5c95d94bc0e74b81e5292f7c42a49e3af87f1eb9e89f59456f80645d679202537de751b7d72e9e40ceea40c5e449057e - languageName: node - linkType: hard - "node-machine-id@npm:1.1.12": version: 1.1.12 resolution: "node-machine-id@npm:1.1.12" @@ -10563,17 +6388,6 @@ __metadata: languageName: node linkType: hard -"nopt@npm:^8.0.0": - version: 8.1.0 - resolution: "nopt@npm:8.1.0" - dependencies: - abbrev: ^3.0.0 - bin: - nopt: bin/nopt.js - checksum: 49cfd3eb6f565e292bf61f2ff1373a457238804d5a5a63a8d786c923007498cba89f3648e3b952bc10203e3e7285752abf5b14eaf012edb821e84f24e881a92a - languageName: node - linkType: hard - "normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.5.0": version: 2.5.0 resolution: "normalize-package-data@npm:2.5.0" @@ -10641,13 +6455,6 @@ __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: e1a0971e5640bc116c5197f9707d86dc404b6d8e13da2c7ea82baa5583b8da279a3c8607234aa1d733c2baac3b3eba87b156f021f20ae183dc4806530e61675d - languageName: node - linkType: hard - "npm-package-arg@npm:11.0.2": version: 11.0.2 resolution: "npm-package-arg@npm:11.0.2" @@ -10709,27 +6516,6 @@ __metadata: languageName: node linkType: hard -"npm-run-all2@npm:^7.0.1": - version: 7.0.2 - resolution: "npm-run-all2@npm:7.0.2" - dependencies: - ansi-styles: ^6.2.1 - cross-spawn: ^7.0.6 - memorystream: ^0.3.1 - minimatch: ^9.0.0 - pidtree: ^0.6.0 - read-package-json-fast: ^4.0.0 - shell-quote: ^1.7.3 - which: ^5.0.0 - bin: - npm-run-all: bin/npm-run-all/index.js - npm-run-all2: bin/npm-run-all/index.js - run-p: bin/run-p/index.js - run-s: bin/run-s/index.js - checksum: ef8f46b61482fccc2e4acef0001f841d0bffb134e1a6955d411bdbe80ae73de9773a83acefb2b7fc3c6a936244f7b9b145c703b16f9f06226e64dde616d42f11 - languageName: node - linkType: hard - "npm-run-all@npm:^4.1.5": version: 4.1.5 resolution: "npm-run-all@npm:4.1.5" @@ -10760,13 +6546,6 @@ __metadata: languageName: node linkType: hard -"nwsapi@npm:^2.2.2": - version: 2.2.18 - resolution: "nwsapi@npm:2.2.18" - checksum: 19dab3b9e86d45c6b856540fa55058b2a13d7dbd4b4b9d05232435879cc3449917fcac4855574d5fa49186caf78ead2103b53f96b76dd0181e13b61444668add - languageName: node - linkType: hard - "nx@npm:>=17.1.2 < 21": version: 20.5.0 resolution: "nx@npm:20.5.0" @@ -11005,7 +6784,7 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^3.0.2, p-limit@npm:^3.1.0": +"p-limit@npm:^3.0.2": version: 3.1.0 resolution: "p-limit@npm:3.1.0" dependencies: @@ -11057,13 +6836,6 @@ __metadata: languageName: node linkType: hard -"p-map@npm:^7.0.2": - version: 7.0.3 - resolution: "p-map@npm:7.0.3" - checksum: 8c92d533acf82f0d12f7e196edccff773f384098bbb048acdd55a08778ce4fc8889d8f1bde72969487bd96f9c63212698d79744c20bedfce36c5b00b46d369f8 - languageName: node - linkType: hard - "p-pipe@npm:3.1.0": version: 3.1.0 resolution: "p-pipe@npm:3.1.0" @@ -11221,15 +6993,6 @@ __metadata: languageName: node linkType: hard -"parse5@npm:^7.0.0, parse5@npm:^7.1.1": - version: 7.2.1 - resolution: "parse5@npm:7.2.1" - dependencies: - entities: ^4.5.0 - checksum: 11253cf8aa2e7fc41c004c64cba6f2c255f809663365db65bd7ad0e8cf7b89e436a563c20059346371cc543a6c1b567032088883ca6a2cbc88276c666b68236d - languageName: node - linkType: hard - "path-browserify@npm:^1.0.0": version: 1.0.1 resolution: "path-browserify@npm:1.0.1" @@ -11312,7 +7075,7 @@ __metadata: languageName: node linkType: hard -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": +"picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf @@ -11328,15 +7091,6 @@ __metadata: languageName: node linkType: hard -"pidtree@npm:^0.6.0": - version: 0.6.0 - resolution: "pidtree@npm:0.6.0" - bin: - pidtree: bin/pidtree.js - checksum: 8fbc073ede9209dd15e80d616e65eb674986c93be49f42d9ddde8dbbd141bb53d628a7ca4e58ab5c370bb00383f67d75df59a9a226dede8fa801267a7030c27a - languageName: node - linkType: hard - "pify@npm:5.0.0": version: 5.0.0 resolution: "pify@npm:5.0.0" @@ -11365,13 +7119,6 @@ __metadata: languageName: node linkType: hard -"pirates@npm:^4.0.4": - version: 4.0.6 - resolution: "pirates@npm:4.0.6" - checksum: 46a65fefaf19c6f57460388a5af9ab81e3d7fd0e7bc44ca59d753cb5c4d0df97c6c6e583674869762101836d68675f027d60f841c105d72734df9dfca97cbcc6 - languageName: node - linkType: hard - "pkg-dir@npm:^4.2.0": version: 4.2.0 resolution: "pkg-dir@npm:4.2.0" @@ -11475,7 +7222,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33, postcss@npm:^8.5.3": +"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33": version: 8.5.3 resolution: "postcss@npm:8.5.3" dependencies: @@ -11511,7 +7258,7 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": +"pretty-format@npm:^29.7.0": version: 29.7.0 resolution: "pretty-format@npm:29.7.0" dependencies: @@ -11529,13 +7276,6 @@ __metadata: languageName: node linkType: hard -"proc-log@npm:^5.0.0": - version: 5.0.0 - resolution: "proc-log@npm:5.0.0" - checksum: c78b26ecef6d5cce4a7489a1e9923d7b4b1679028c8654aef0463b27f4a90b0946cd598f55799da602895c52feb085ec76381d007ab8dcceebd40b89c2f9dfe0 - languageName: node - linkType: hard - "process-nextick-args@npm:~2.0.0": version: 2.0.1 resolution: "process-nextick-args@npm:2.0.1" @@ -11588,16 +7328,6 @@ __metadata: languageName: node linkType: hard -"prompts@npm:^2.0.1": - version: 2.4.2 - resolution: "prompts@npm:2.4.2" - dependencies: - kleur: ^3.0.3 - sisteransi: ^1.0.5 - checksum: d8fd1fe63820be2412c13bfc5d0a01909acc1f0367e32396962e737cb2fc52d004f3302475d5ce7d18a1e8a79985f93ff04ee03007d091029c3f9104bffc007d - languageName: node - linkType: hard - "promzard@npm:^1.0.0": version: 1.0.2 resolution: "promzard@npm:1.0.2" @@ -11632,29 +7362,13 @@ __metadata: languageName: node linkType: hard -"psl@npm:^1.1.33": - version: 1.15.0 - resolution: "psl@npm:1.15.0" - dependencies: - punycode: ^2.3.1 - checksum: 6f777d82eecfe1c2406dadbc15e77467b186fec13202ec887a45d0209a2c6fca530af94a462a477c3c4a767ad892ec9ede7c482d98f61f653dd838b50e89dc15 - languageName: node - linkType: hard - -"punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1": +"punycode@npm:^2.1.0, punycode@npm:^2.1.1": version: 2.3.1 resolution: "punycode@npm:2.3.1" checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 languageName: node linkType: hard -"pure-rand@npm:^6.0.0": - version: 6.1.0 - resolution: "pure-rand@npm:6.1.0" - checksum: 8d53bc02bed99eca0b65b505090152ee7e9bd67dd74f8ff32ba1c883b87234067c5bf68d2614759fb217d82594d7a92919e6df80f97885e7b12b42af4bd3316a - languageName: node - linkType: hard - "querystringify@npm:^2.1.1": version: 2.2.0 resolution: "querystringify@npm:2.2.0" @@ -11704,17 +7418,6 @@ __metadata: languageName: node linkType: hard -"react-dom@npm:^19.0.0": - version: 19.0.0 - resolution: "react-dom@npm:19.0.0" - dependencies: - scheduler: ^0.25.0 - peerDependencies: - react: ^19.0.0 - checksum: 009cc6e575263a0d1906f9dd4aa6532d2d3d0d71e4c2b7777c8fe4de585fa06b5b77cdc2e0fbaa2f3a4a5e5d3305c189ba152153f358ee7da4d9d9ba5d3a8975 - languageName: node - linkType: hard - "react-is@npm:^16.13.1": version: 16.13.1 resolution: "react-is@npm:16.13.1" @@ -11729,31 +7432,6 @@ __metadata: languageName: node linkType: hard -"react-refresh@npm:^0.14.2": - version: 0.14.2 - resolution: "react-refresh@npm:0.14.2" - checksum: d80db4bd40a36dab79010dc8aa317a5b931f960c0d83c4f3b81f0552cbcf7f29e115b84bb7908ec6a1eb67720fff7023084eff73ece8a7ddc694882478464382 - languageName: node - linkType: hard - -"react-router@npm:^7.3.0": - version: 7.3.0 - resolution: "react-router@npm:7.3.0" - dependencies: - "@types/cookie": ^0.6.0 - cookie: ^1.0.1 - set-cookie-parser: ^2.6.0 - turbo-stream: 2.4.0 - peerDependencies: - react: ">=18" - react-dom: ">=18" - peerDependenciesMeta: - react-dom: - optional: true - checksum: 15ba42b346ffe1421f2194970ffb46d1e356310647af0b240f941f3f58746788274f53dbc8909f51074f9ff3488c3a82f5d923fb62aaff66e13f769d9cf5a5af - languageName: node - linkType: hard - "react@npm:>=17.0.0 <19.0.0, react@npm:^18.2.0": version: 18.3.1 resolution: "react@npm:18.3.1" @@ -11763,13 +7441,6 @@ __metadata: languageName: node linkType: hard -"react@npm:^19.0.0": - version: 19.0.0 - resolution: "react@npm:19.0.0" - checksum: 86de15d85b2465feb40297a90319c325cb07cf27191a361d47bcfe8c6126c973d660125aa67b8f4cbbe39f15a2f32efd0c814e98196d8e5b68c567ba40a399c6 - languageName: node - linkType: hard - "read-cmd-shim@npm:4.0.0, read-cmd-shim@npm:^4.0.0": version: 4.0.0 resolution: "read-cmd-shim@npm:4.0.0" @@ -11787,16 +7458,6 @@ __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: ^4.0.0 - npm-normalize-package-bin: ^4.0.0 - checksum: bf0becd7d0b652dcc5874b466d1dbd98313180e89505c072f35ff48a1ad6bdaf2427143301e1924d64e4af5064cda8be5df16f14de882f03130e29051bbaab87 - languageName: node - linkType: hard - "read-pkg-up@npm:^3.0.0": version: 3.0.0 resolution: "read-pkg-up@npm:3.0.0" @@ -11944,38 +7605,6 @@ __metadata: languageName: node linkType: hard -"regenerate-unicode-properties@npm:^10.2.0": - version: 10.2.0 - resolution: "regenerate-unicode-properties@npm:10.2.0" - dependencies: - regenerate: ^1.4.2 - checksum: d5c5fc13f8b8d7e16e791637a4bfef741f8d70e267d51845ee7d5404a32fa14c75b181c4efba33e4bff8b0000a2f13e9773593713dfe5b66597df4259275ce63 - languageName: node - linkType: hard - -"regenerate@npm:^1.4.2": - version: 1.4.2 - resolution: "regenerate@npm:1.4.2" - checksum: 3317a09b2f802da8db09aa276e469b57a6c0dd818347e05b8862959c6193408242f150db5de83c12c3fa99091ad95fb42a6db2c3329bfaa12a0ea4cbbeb30cb0 - languageName: node - linkType: hard - -"regenerator-runtime@npm:^0.14.0": - version: 0.14.1 - resolution: "regenerator-runtime@npm:0.14.1" - checksum: 9f57c93277b5585d3c83b0cf76be47b473ae8c6d9142a46ce8b0291a04bb2cf902059f0f8445dcabb3fb7378e5fe4bb4ea1e008876343d42e46d3b484534ce38 - languageName: node - linkType: hard - -"regenerator-transform@npm:^0.15.2": - version: 0.15.2 - resolution: "regenerator-transform@npm:0.15.2" - dependencies: - "@babel/runtime": ^7.8.4 - checksum: 20b6f9377d65954980fe044cfdd160de98df415b4bff38fbade67b3337efaf078308c4fed943067cd759827cc8cfeca9cb28ccda1f08333b85d6a2acbd022c27 - languageName: node - linkType: hard - "regexp.prototype.flags@npm:^1.5.3": version: 1.5.4 resolution: "regexp.prototype.flags@npm:1.5.4" @@ -11990,38 +7619,6 @@ __metadata: languageName: node linkType: hard -"regexpu-core@npm:^6.2.0": - version: 6.2.0 - resolution: "regexpu-core@npm:6.2.0" - dependencies: - regenerate: ^1.4.2 - regenerate-unicode-properties: ^10.2.0 - regjsgen: ^0.8.0 - regjsparser: ^0.12.0 - unicode-match-property-ecmascript: ^2.0.0 - unicode-match-property-value-ecmascript: ^2.1.0 - checksum: 67d3c4a3f6c99bc80b5d690074a27e6f675be1c1739f8a9acf028fbc36f1a468472574ea65e331e217995198ba4404d7878f3cb3739a73552dd3c70d3fb7f8e6 - languageName: node - linkType: hard - -"regjsgen@npm:^0.8.0": - version: 0.8.0 - resolution: "regjsgen@npm:0.8.0" - checksum: a1d925ff14a4b2be774e45775ee6b33b256f89c42d480e6d85152d2133f18bd3d6af662161b226fa57466f7efec367eaf7ccd2a58c0ec2a1306667ba2ad07b0d - languageName: node - linkType: hard - -"regjsparser@npm:^0.12.0": - version: 0.12.0 - resolution: "regjsparser@npm:0.12.0" - dependencies: - jsesc: ~3.0.2 - bin: - regjsparser: bin/parser - checksum: 094b55b0ab3e1fd58f8ce5132a1d44dab08d91f7b0eea4132b0157b303ebb8ded20a9cbd893d25402d2aeddb23fac1f428ab4947b295d6fa51dd1c334a9e76f0 - languageName: node - linkType: hard - "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -12066,14 +7663,14 @@ __metadata: languageName: node linkType: hard -"resolve.exports@npm:2.0.3, resolve.exports@npm:^2.0.0": +"resolve.exports@npm:2.0.3": version: 2.0.3 resolution: "resolve.exports@npm:2.0.3" checksum: abfb9f98278dcd0c19b8a49bb486abfafa23df4636d49128ea270dc982053c3ef230a530aecda1fae1322873fdfa6c97674fc539651ddfdb375ac58e0b8ef6df languageName: node linkType: hard -"resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.20.0": +"resolve@npm:^1.10.0, resolve@npm:^1.20.0": version: 1.22.10 resolution: "resolve@npm:1.22.10" dependencies: @@ -12086,7 +7683,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.20.0#~builtin": +"resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin": version: 1.22.10 resolution: "resolve@patch:resolve@npm%3A1.22.10#~builtin::version=1.22.10&hash=c3c19d" dependencies: @@ -12145,7 +7742,7 @@ __metadata: languageName: node linkType: hard -"rimraf@npm:^5.0.1, rimraf@npm:^5.0.5": +"rimraf@npm:^5.0.1": version: 5.0.10 resolution: "rimraf@npm:5.0.10" dependencies: @@ -12156,78 +7753,6 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^4.30.1": - version: 4.35.0 - resolution: "rollup@npm:4.35.0" - dependencies: - "@rollup/rollup-android-arm-eabi": 4.35.0 - "@rollup/rollup-android-arm64": 4.35.0 - "@rollup/rollup-darwin-arm64": 4.35.0 - "@rollup/rollup-darwin-x64": 4.35.0 - "@rollup/rollup-freebsd-arm64": 4.35.0 - "@rollup/rollup-freebsd-x64": 4.35.0 - "@rollup/rollup-linux-arm-gnueabihf": 4.35.0 - "@rollup/rollup-linux-arm-musleabihf": 4.35.0 - "@rollup/rollup-linux-arm64-gnu": 4.35.0 - "@rollup/rollup-linux-arm64-musl": 4.35.0 - "@rollup/rollup-linux-loongarch64-gnu": 4.35.0 - "@rollup/rollup-linux-powerpc64le-gnu": 4.35.0 - "@rollup/rollup-linux-riscv64-gnu": 4.35.0 - "@rollup/rollup-linux-s390x-gnu": 4.35.0 - "@rollup/rollup-linux-x64-gnu": 4.35.0 - "@rollup/rollup-linux-x64-musl": 4.35.0 - "@rollup/rollup-win32-arm64-msvc": 4.35.0 - "@rollup/rollup-win32-ia32-msvc": 4.35.0 - "@rollup/rollup-win32-x64-msvc": 4.35.0 - "@types/estree": 1.0.6 - fsevents: ~2.3.2 - dependenciesMeta: - "@rollup/rollup-android-arm-eabi": - optional: true - "@rollup/rollup-android-arm64": - optional: true - "@rollup/rollup-darwin-arm64": - optional: true - "@rollup/rollup-darwin-x64": - optional: true - "@rollup/rollup-freebsd-arm64": - optional: true - "@rollup/rollup-freebsd-x64": - optional: true - "@rollup/rollup-linux-arm-gnueabihf": - optional: true - "@rollup/rollup-linux-arm-musleabihf": - optional: true - "@rollup/rollup-linux-arm64-gnu": - optional: true - "@rollup/rollup-linux-arm64-musl": - optional: true - "@rollup/rollup-linux-loongarch64-gnu": - optional: true - "@rollup/rollup-linux-powerpc64le-gnu": - optional: true - "@rollup/rollup-linux-riscv64-gnu": - optional: true - "@rollup/rollup-linux-s390x-gnu": - optional: true - "@rollup/rollup-linux-x64-gnu": - optional: true - "@rollup/rollup-linux-x64-musl": - optional: true - "@rollup/rollup-win32-arm64-msvc": - optional: true - "@rollup/rollup-win32-ia32-msvc": - optional: true - "@rollup/rollup-win32-x64-msvc": - optional: true - fsevents: - optional: true - bin: - rollup: dist/bin/rollup - checksum: 1139d35809d1aa4ac8bff49fd0c819bcce86ce6e8e259fd0cacac086998938b5ad44f523d4414b6565ebc0338e7d2de0ad3efa03e26738fe8bd05f1baf72e980 - languageName: node - linkType: hard - "run-async@npm:^2.4.0": version: 2.4.1 resolution: "run-async@npm:2.4.1" @@ -12322,15 +7847,6 @@ __metadata: languageName: node linkType: hard -"saxes@npm:^6.0.0": - version: 6.0.0 - resolution: "saxes@npm:6.0.0" - dependencies: - xmlchars: ^2.2.0 - checksum: d3fa3e2aaf6c65ed52ee993aff1891fc47d5e47d515164b5449cbf5da2cbdc396137e55590472e64c5c436c14ae64a8a03c29b9e7389fc6f14035cf4e982ef3b - languageName: node - linkType: hard - "scheduler@npm:^0.23.2": version: 0.23.2 resolution: "scheduler@npm:0.23.2" @@ -12340,13 +7856,6 @@ __metadata: languageName: node linkType: hard -"scheduler@npm:^0.25.0": - version: 0.25.0 - resolution: "scheduler@npm:0.25.0" - checksum: b7bb9fddbf743e521e9aaa5198a03ae823f5e104ebee0cb9ec625392bb7da0baa1c28ab29cee4b1e407a94e76acc6eee91eeb749614f91f853efda2613531566 - languageName: node - linkType: hard - "schema-utils@npm:^2.7.0": version: 2.7.1 resolution: "schema-utils@npm:2.7.1" @@ -12383,23 +7892,14 @@ __metadata: "semver@npm:2 || 3 || 4 || 5, semver@npm:^5.4.1, semver@npm:^5.5.0, semver@npm:^5.6.0": version: 5.7.2 - resolution: "semver@npm:5.7.2" - bin: - semver: bin/semver - checksum: fb4ab5e0dd1c22ce0c937ea390b4a822147a9c53dbd2a9a0132f12fe382902beef4fbf12cf51bb955248d8d15874ce8cd89532569756384f994309825f10b686 - languageName: node - linkType: hard - -"semver@npm:^6.3.0, semver@npm:^6.3.1": - version: 6.3.1 - resolution: "semver@npm:6.3.1" + resolution: "semver@npm:5.7.2" bin: - semver: bin/semver.js - checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2 + semver: bin/semver + checksum: fb4ab5e0dd1c22ce0c937ea390b4a822147a9c53dbd2a9a0132f12fe382902beef4fbf12cf51bb955248d8d15874ce8cd89532569756384f994309825f10b686 languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.7.1": +"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": version: 7.7.1 resolution: "semver@npm:7.7.1" bin: @@ -12424,13 +7924,6 @@ __metadata: languageName: node linkType: hard -"set-cookie-parser@npm:^2.6.0": - version: 2.7.1 - resolution: "set-cookie-parser@npm:2.7.1" - checksum: 2ef8b351094712f8f7df6d63ed4b10350b24a5b515772690e7dec227df85fcef5bc451c7765f484fd9f36694ece5438d1456407d017f237d0d3351d7dbbd3587 - languageName: node - linkType: hard - "set-function-length@npm:^1.2.2": version: 1.2.2 resolution: "set-function-length@npm:1.2.2" @@ -12509,7 +8002,7 @@ __metadata: languageName: node linkType: hard -"shell-quote@npm:^1.6.1, shell-quote@npm:^1.7.3": +"shell-quote@npm:^1.6.1": version: 1.8.2 resolution: "shell-quote@npm:1.8.2" checksum: 1e97b62ced1c4c5135015978ebf273bed1f425a68cf84163e83fbb0f34b3ff9471e656720dab2b7cbb4ae0f58998e686d17d166c28dfb3662acd009e8bd7faed @@ -12564,7 +8057,7 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:3.0.7, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": +"signal-exit@npm:3.0.7, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -12592,22 +8085,6 @@ __metadata: languageName: node linkType: hard -"simulate-event@npm:~1.4.0": - version: 1.4.0 - resolution: "simulate-event@npm:1.4.0" - dependencies: - xtend: ^4.0.1 - checksum: d2cbb62f7a0c22aa1964e4df7a01b717c3c437df40dde70112fc06046cb8c7a03ca582571754653abc7c8c06df43d28c57b4f0bdf7a587094e4d6282357eb506 - languageName: node - linkType: hard - -"sisteransi@npm:^1.0.5": - version: 1.0.5 - resolution: "sisteransi@npm:1.0.5" - checksum: aba6438f46d2bfcef94cf112c835ab395172c75f67453fe05c340c770d3c402363018ae1ab4172a1026a90c47eaccf3af7b6ff6fa749a680c2929bd7fa2b37a4 - languageName: node - linkType: hard - "slash@npm:3.0.0, slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" @@ -12708,16 +8185,6 @@ __metadata: languageName: node linkType: hard -"source-map-support@npm:0.5.13": - version: 0.5.13 - resolution: "source-map-support@npm:0.5.13" - dependencies: - buffer-from: ^1.0.0 - source-map: ^0.6.0 - checksum: 933550047b6c1a2328599a21d8b7666507427c0f5ef5eaadd56b5da0fd9505e239053c66fe181bf1df469a3b7af9d775778eee283cbb7ae16b902ddc09e93a97 - languageName: node - linkType: hard - "source-map-support@npm:~0.5.20": version: 0.5.21 resolution: "source-map-support@npm:0.5.21" @@ -12810,34 +8277,6 @@ __metadata: languageName: node linkType: hard -"ssri@npm:^12.0.0": - version: 12.0.0 - resolution: "ssri@npm:12.0.0" - dependencies: - minipass: ^7.0.3 - checksum: ef4b6b0ae47b4a69896f5f1c4375f953b9435388c053c36d27998bc3d73e046969ccde61ab659e679142971a0b08e50478a1228f62edb994105b280f17900c98 - languageName: node - linkType: hard - -"stack-utils@npm:^2.0.3": - version: 2.0.6 - resolution: "stack-utils@npm:2.0.6" - dependencies: - escape-string-regexp: ^2.0.0 - checksum: 052bf4d25bbf5f78e06c1d5e67de2e088b06871fa04107ca8d3f0e9d9263326e2942c8bedee3545795fc77d787d443a538345eef74db2f8e35db3558c6f91ff7 - languageName: node - linkType: hard - -"string-length@npm:^4.0.1": - version: 4.0.2 - resolution: "string-length@npm:4.0.2" - dependencies: - char-regex: ^1.0.2 - strip-ansi: ^6.0.0 - checksum: ce85533ef5113fcb7e522bcf9e62cb33871aa99b3729cec5595f4447f660b0cefd542ca6df4150c97a677d58b0cb727a3fe09ac1de94071d05526c73579bf505 - languageName: node - linkType: hard - "string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -13014,13 +8453,6 @@ __metadata: languageName: node linkType: hard -"style-mod@npm:^4.0.0, style-mod@npm:^4.1.0": - version: 4.1.2 - resolution: "style-mod@npm:4.1.2" - checksum: 7c5c3e82747f9bcf5f288d8d07f50848e4630fe5ff7bfe4d94cc87d6b6a2588227cbf21b4c792ac6406e5852293300a75e710714479a5c59a06af677f0825ef8 - languageName: node - linkType: hard - "style-search@npm:^0.1.0": version: 0.1.0 resolution: "style-search@npm:0.1.0" @@ -13172,13 +8604,6 @@ __metadata: languageName: node linkType: hard -"symbol-tree@npm:^3.2.4": - version: 3.2.4 - resolution: "symbol-tree@npm:3.2.4" - checksum: 6e8fc7e1486b8b54bea91199d9535bb72f10842e40c79e882fc94fb7b14b89866adf2fd79efa5ebb5b658bc07fb459ccce5ac0e99ef3d72f474e74aaf284029d - languageName: node - linkType: hard - "synckit@npm:^0.9.1": version: 0.9.2 resolution: "synckit@npm:0.9.2" @@ -13243,20 +8668,6 @@ __metadata: languageName: node linkType: hard -"tar@npm:^7.4.3": - version: 7.4.3 - resolution: "tar@npm:7.4.3" - dependencies: - "@isaacs/fs-minipass": ^4.0.0 - chownr: ^3.0.0 - minipass: ^7.1.2 - minizlib: ^3.0.1 - mkdirp: ^3.0.1 - yallist: ^5.0.0 - checksum: 8485350c0688331c94493031f417df069b778aadb25598abdad51862e007c39d1dd5310702c7be4a6784731a174799d8885d2fde0484269aea205b724d7b2ffa - languageName: node - linkType: hard - "temp-dir@npm:1.0.0": version: 1.0.0 resolution: "temp-dir@npm:1.0.0" @@ -13300,17 +8711,6 @@ __metadata: languageName: node linkType: hard -"test-exclude@npm:^6.0.0": - version: 6.0.0 - resolution: "test-exclude@npm:6.0.0" - dependencies: - "@istanbuljs/schema": ^0.1.2 - glob: ^7.1.4 - minimatch: ^3.0.4 - checksum: 3b34a3d77165a2cb82b34014b3aba93b1c4637a5011807557dc2f3da826c59975a5ccad765721c4648b39817e3472789f9b0fa98fc854c5c1c7a1e632aacdc28 - languageName: node - linkType: hard - "text-extensions@npm:^1.0.0": version: 1.9.0 resolution: "text-extensions@npm:1.9.0" @@ -13358,13 +8758,6 @@ __metadata: languageName: node linkType: hard -"tmpl@npm:1.0.5": - version: 1.0.5 - resolution: "tmpl@npm:1.0.5" - checksum: cd922d9b853c00fe414c5a774817be65b058d54a2d01ebb415840960406c669a0fc632f66df885e24cb022ec812739199ccbdb8d1164c3e513f85bfca5ab2873 - languageName: node - linkType: hard - "to-regex-range@npm:^5.0.1": version: 5.0.1 resolution: "to-regex-range@npm:5.0.1" @@ -13374,18 +8767,6 @@ __metadata: languageName: node linkType: hard -"tough-cookie@npm:^4.1.2": - version: 4.1.4 - resolution: "tough-cookie@npm:4.1.4" - dependencies: - psl: ^1.1.33 - punycode: ^2.1.1 - universalify: ^0.2.0 - url-parse: ^1.5.3 - checksum: 5815059f014c31179a303c673f753f7899a6fce94ac93712c88ea5f3c26e0c042b5f0c7a599a00f8e0feeca4615dba75c3dffc54f3c1a489978aa8205e09307c - languageName: node - linkType: hard - "tr46@npm:^2.1.0": version: 2.1.0 resolution: "tr46@npm:2.1.0" @@ -13395,15 +8776,6 @@ __metadata: languageName: node linkType: hard -"tr46@npm:^3.0.0": - version: 3.0.0 - resolution: "tr46@npm:3.0.0" - dependencies: - punycode: ^2.1.1 - checksum: 44c3cc6767fb800490e6e9fd64fd49041aa4e49e1f6a012b34a75de739cc9ed3a6405296072c1df8b6389ae139c5e7c6496f659cfe13a04a4bff3a1422981270 - languageName: node - linkType: hard - "tr46@npm:~0.0.3": version: 0.0.3 resolution: "tr46@npm:0.0.3" @@ -13441,43 +8813,6 @@ __metadata: languageName: node linkType: hard -"ts-jest@npm:^29.1.0": - version: 29.2.6 - resolution: "ts-jest@npm:29.2.6" - dependencies: - bs-logger: ^0.2.6 - ejs: ^3.1.10 - fast-json-stable-stringify: ^2.1.0 - jest-util: ^29.0.0 - json5: ^2.2.3 - lodash.memoize: ^4.1.2 - make-error: ^1.3.6 - semver: ^7.7.1 - yargs-parser: ^21.1.1 - peerDependencies: - "@babel/core": ">=7.0.0-beta.0 <8" - "@jest/transform": ^29.0.0 - "@jest/types": ^29.0.0 - babel-jest: ^29.0.0 - jest: ^29.0.0 - typescript: ">=4.3 <6" - peerDependenciesMeta: - "@babel/core": - optional: true - "@jest/transform": - optional: true - "@jest/types": - optional: true - babel-jest: - optional: true - esbuild: - optional: true - bin: - ts-jest: cli.js - checksum: ff71b27e997e4c5e6bcf2d38804b188eb1c7eec78570329f058f434ba1bd112a4806cdc4e7baac0e0e834bd20ca3be16e03d5c546304aa28e5cfeaccca82139e - languageName: node - linkType: hard - "tsconfig-paths@npm:^4.1.2": version: 4.2.0 resolution: "tsconfig-paths@npm:4.2.0" @@ -13514,13 +8849,6 @@ __metadata: languageName: node linkType: hard -"turbo-stream@npm:2.4.0": - version: 2.4.0 - resolution: "turbo-stream@npm:2.4.0" - checksum: e36f52ed40589f01bede79757a143bef484914d579927235be1fd0c205618994cb5779a39ff8c2a80a87a1464d05771cd75320a9412b15bca03c7ff432e3cdf7 - languageName: node - linkType: hard - "type-check@npm:^0.4.0, type-check@npm:~0.4.0": version: 0.4.0 resolution: "type-check@npm:0.4.0" @@ -13530,13 +8858,6 @@ __metadata: languageName: node linkType: hard -"type-detect@npm:4.0.8": - version: 4.0.8 - resolution: "type-detect@npm:4.0.8" - checksum: 62b5628bff67c0eb0b66afa371bd73e230399a8d2ad30d852716efcc4656a7516904570cd8631a49a3ce57c10225adf5d0cbdcb47f6b0255fe6557c453925a15 - languageName: node - linkType: hard - "type-fest@npm:^0.18.0": version: 0.18.1 resolution: "type-fest@npm:0.18.1" @@ -13666,16 +8987,6 @@ __metadata: languageName: node linkType: hard -"typescript@npm:~5.7.2": - version: 5.7.3 - resolution: "typescript@npm:5.7.3" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 6c38b1e989918e576f0307e6ee013522ea480dfce5f3ca85c9b2d8adb1edeffd37f4f30cd68de0c38a44563d12ba922bdb7e36aa2dac9c51de5d561e6e9a2e9c - languageName: node - linkType: hard - "typescript@patch:typescript@>=3 < 6#~builtin": version: 5.8.2 resolution: "typescript@patch:typescript@npm%3A5.8.2#~builtin::version=5.8.2&hash=85af82" @@ -13696,16 +9007,6 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@~5.7.2#~builtin": - version: 5.7.3 - resolution: "typescript@patch:typescript@npm%3A5.7.3#~builtin::version=5.7.3&hash=85af82" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 633cd749d6cd7bc842c6b6245847173bba99742a60776fae3c0fbcc0d1733cd51a733995e5f4dadd8afb0e64e57d3c7dbbeae953a072ee303940eca69e22f311 - languageName: node - linkType: hard - "typestyle@npm:^2.0.4": version: 2.4.0 resolution: "typestyle@npm:2.4.0" @@ -13744,37 +9045,6 @@ __metadata: languageName: node linkType: hard -"unicode-canonical-property-names-ecmascript@npm:^2.0.0": - version: 2.0.1 - resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.1" - checksum: 3c3dabdb1d22aef4904399f9e810d0b71c0b12b3815169d96fac97e56d5642840c6071cf709adcace2252bc6bb80242396c2ec74b37224eb015c5f7aca40bad7 - languageName: node - linkType: hard - -"unicode-match-property-ecmascript@npm:^2.0.0": - version: 2.0.0 - resolution: "unicode-match-property-ecmascript@npm:2.0.0" - dependencies: - unicode-canonical-property-names-ecmascript: ^2.0.0 - unicode-property-aliases-ecmascript: ^2.0.0 - checksum: 1f34a7434a23df4885b5890ac36c5b2161a809887000be560f56ad4b11126d433c0c1c39baf1016bdabed4ec54829a6190ee37aa24919aa116dc1a5a8a62965a - languageName: node - linkType: hard - -"unicode-match-property-value-ecmascript@npm:^2.1.0": - version: 2.2.0 - resolution: "unicode-match-property-value-ecmascript@npm:2.2.0" - checksum: 9e3151e1d0bc6be35c4cef105e317c04090364173e8462005b5cde08a1e7c858b6586486cfebac39dc2c6c8c9ee24afb245de6d527604866edfa454fe2a35fae - languageName: node - linkType: hard - -"unicode-property-aliases-ecmascript@npm:^2.0.0": - version: 2.1.0 - resolution: "unicode-property-aliases-ecmascript@npm:2.1.0" - checksum: 243524431893649b62cc674d877bd64ef292d6071dd2fd01ab4d5ad26efbc104ffcd064f93f8a06b7e4ec54c172bf03f6417921a0d8c3a9994161fe1f88f815b - languageName: node - linkType: hard - "unique-filename@npm:^3.0.0": version: 3.0.0 resolution: "unique-filename@npm:3.0.0" @@ -13784,15 +9054,6 @@ __metadata: languageName: node linkType: hard -"unique-filename@npm:^4.0.0": - version: 4.0.0 - resolution: "unique-filename@npm:4.0.0" - dependencies: - unique-slug: ^5.0.0 - checksum: 6a62094fcac286b9ec39edbd1f8f64ff92383baa430af303dfed1ffda5e47a08a6b316408554abfddd9730c78b6106bef4ca4d02c1231a735ddd56ced77573df - languageName: node - linkType: hard - "unique-slug@npm:^4.0.0": version: 4.0.0 resolution: "unique-slug@npm:4.0.0" @@ -13802,15 +9063,6 @@ __metadata: languageName: node linkType: hard -"unique-slug@npm:^5.0.0": - version: 5.0.0 - resolution: "unique-slug@npm:5.0.0" - dependencies: - imurmurhash: ^0.1.4 - checksum: 222d0322bc7bbf6e45c08967863212398313ef73423f4125e075f893a02405a5ffdbaaf150f7dd1e99f8861348a486dd079186d27c5f2c60e465b7dcbb1d3e5b - languageName: node - linkType: hard - "universal-user-agent@npm:^6.0.0": version: 6.0.1 resolution: "universal-user-agent@npm:6.0.1" @@ -13818,13 +9070,6 @@ __metadata: languageName: node linkType: hard -"universalify@npm:^0.2.0": - version: 0.2.0 - resolution: "universalify@npm:0.2.0" - checksum: e86134cb12919d177c2353196a4cc09981524ee87abf621f7bc8d249dbbbebaec5e7d1314b96061497981350df786e4c5128dbf442eba104d6e765bc260678b5 - languageName: node - linkType: hard - "universalify@npm:^2.0.0": version: 2.0.1 resolution: "universalify@npm:2.0.1" @@ -13862,7 +9107,7 @@ __metadata: languageName: node linkType: hard -"url-parse@npm:^1.5.3, url-parse@npm:~1.5.4": +"url-parse@npm:~1.5.4": version: 1.5.10 resolution: "url-parse@npm:1.5.10" dependencies: @@ -13888,26 +9133,6 @@ __metadata: languageName: node linkType: hard -"uuid@npm:^8.3.2": - version: 8.3.2 - resolution: "uuid@npm:8.3.2" - bin: - uuid: dist/bin/uuid - checksum: 5575a8a75c13120e2f10e6ddc801b2c7ed7d8f3c8ac22c7ed0c7b2ba6383ec0abda88c905085d630e251719e0777045ae3236f04c812184b7c765f63a70e58df - languageName: node - linkType: hard - -"v8-to-istanbul@npm:^9.0.1": - version: 9.3.0 - resolution: "v8-to-istanbul@npm:9.3.0" - dependencies: - "@jridgewell/trace-mapping": ^0.3.12 - "@types/istanbul-lib-coverage": ^2.0.1 - convert-source-map: ^2.0.0 - checksum: ded42cd535d92b7fd09a71c4c67fb067487ef5551cc227bfbf2a1f159a842e4e4acddaef20b955789b8d3b455b9779d036853f4a27ce15007f6364a4d30317ae - languageName: node - linkType: hard - "validate-npm-package-license@npm:3.0.4, validate-npm-package-license@npm:^3.0.1, validate-npm-package-license@npm:^3.0.4": version: 3.0.4 resolution: "validate-npm-package-license@npm:3.0.4" @@ -13965,121 +9190,6 @@ __metadata: languageName: node linkType: hard -"vite@npm:^6.1.0": - version: 6.2.1 - resolution: "vite@npm:6.2.1" - dependencies: - esbuild: ^0.25.0 - fsevents: ~2.3.3 - postcss: ^8.5.3 - rollup: ^4.30.1 - peerDependencies: - "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 - jiti: ">=1.21.0" - less: "*" - lightningcss: ^1.21.0 - sass: "*" - sass-embedded: "*" - stylus: "*" - sugarss: "*" - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - dependenciesMeta: - fsevents: - optional: true - peerDependenciesMeta: - "@types/node": - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - bin: - vite: bin/vite.js - checksum: d7379a9870c888681f7e4a861095e7f568ecd4cb99a5eed2dec65dc205ce863783d45c66a1a275868e23732087009533eadec999061c1ddef96aa8aaa0dcf6d2 - languageName: node - linkType: hard - -"vscode-jsonrpc@npm:8.2.0": - version: 8.2.0 - resolution: "vscode-jsonrpc@npm:8.2.0" - checksum: f302a01e59272adc1ae6494581fa31c15499f9278df76366e3b97b2236c7c53ebfc71efbace9041cfd2caa7f91675b9e56f2407871a1b3c7f760a2e2ee61484a - languageName: node - linkType: hard - -"vscode-jsonrpc@npm:^6.0.0": - version: 6.0.0 - resolution: "vscode-jsonrpc@npm:6.0.0" - checksum: 3a67a56f287e8c449f2d9752eedf91e704dc7b9a326f47fb56ac07667631deb45ca52192e9bccb2ab108764e48409d70fa64b930d46fc3822f75270b111c5f53 - languageName: node - linkType: hard - -"vscode-jsonrpc@npm:^8.0.2": - version: 8.2.1 - resolution: "vscode-jsonrpc@npm:8.2.1" - checksum: 2af2c333d73f6587896a7077978b8d4b430e55c674d5dbb90597a84a6647057c1655a3bff398a9b08f1f8ba57dbd2deabf05164315829c297b0debba3b8bc19e - languageName: node - linkType: hard - -"vscode-languageserver-protocol@npm:^3.17.0": - version: 3.17.5 - resolution: "vscode-languageserver-protocol@npm:3.17.5" - dependencies: - vscode-jsonrpc: 8.2.0 - vscode-languageserver-types: 3.17.5 - checksum: dfb42d276df5dfea728267885b99872ecff62f6c20448b8539fae71bb196b420f5351c5aca7c1047bf8fb1f89fa94a961dce2bc5bf7e726198f4be0bb86a1e71 - languageName: node - linkType: hard - -"vscode-languageserver-types@npm:3.17.5": - version: 3.17.5 - resolution: "vscode-languageserver-types@npm:3.17.5" - checksum: 79b420e7576398d396579ca3a461c9ed70e78db4403cd28bbdf4d3ed2b66a2b4114031172e51fad49f0baa60a2180132d7cb2ea35aa3157d7af3c325528210ac - languageName: node - linkType: hard - -"vscode-ws-jsonrpc@npm:~1.0.2": - version: 1.0.2 - resolution: "vscode-ws-jsonrpc@npm:1.0.2" - dependencies: - vscode-jsonrpc: ^8.0.2 - checksum: eb2fdb5c96f124326505f06564dfc6584318b748fd6e39b4c0ba16a0d383d13ba0e9433596abdb841428dfc2a5501994c3206723d1cb38c6af5fcac1faf4be26 - languageName: node - linkType: hard - -"w3c-keyname@npm:^2.2.4": - version: 2.2.8 - resolution: "w3c-keyname@npm:2.2.8" - checksum: 95bafa4c04fa2f685a86ca1000069c1ec43ace1f8776c10f226a73296caeddd83f893db885c2c220ebeb6c52d424e3b54d7c0c1e963bbf204038ff1a944fbb07 - languageName: node - linkType: hard - -"w3c-xmlserializer@npm:^4.0.0": - version: 4.0.0 - resolution: "w3c-xmlserializer@npm:4.0.0" - dependencies: - xml-name-validator: ^4.0.0 - checksum: eba070e78deb408ae8defa4d36b429f084b2b47a4741c4a9be3f27a0a3d1845e277e3072b04391a138f7e43776842627d1334e448ff13ff90ad9fb1214ee7091 - languageName: node - linkType: hard - "walk-up-path@npm:^3.0.1": version: 3.0.1 resolution: "walk-up-path@npm:3.0.1" @@ -14087,15 +9197,6 @@ __metadata: languageName: node linkType: hard -"walker@npm:^1.0.8": - version: 1.0.8 - resolution: "walker@npm:1.0.8" - dependencies: - makeerror: 1.0.12 - checksum: ad7a257ea1e662e57ef2e018f97b3c02a7240ad5093c392186ce0bcf1f1a60bbadd520d073b9beb921ed99f64f065efb63dfc8eec689a80e569f93c1c5d5e16c - languageName: node - linkType: hard - "watchpack@npm:^2.4.1": version: 2.4.2 resolution: "watchpack@npm:2.4.2" @@ -14129,13 +9230,6 @@ __metadata: languageName: node linkType: hard -"webidl-conversions@npm:^7.0.0": - version: 7.0.0 - resolution: "webidl-conversions@npm:7.0.0" - checksum: f05588567a2a76428515333eff87200fae6c83c3948a7482ebb109562971e77ef6dc49749afa58abb993391227c5697b3ecca52018793e0cb4620a48f10bd21b - languageName: node - linkType: hard - "webpack-cli@npm:^5.0.1": version: 5.1.4 resolution: "webpack-cli@npm:5.1.4" @@ -14232,15 +9326,6 @@ __metadata: languageName: node linkType: hard -"whatwg-encoding@npm:^2.0.0": - version: 2.0.0 - resolution: "whatwg-encoding@npm:2.0.0" - dependencies: - iconv-lite: 0.6.3 - checksum: 7087810c410aa9b689cbd6af8773341a53cdc1f3aae2a882c163bd5522ec8ca4cdfc269aef417a5792f411807d5d77d50df4c24e3abb00bb60192858a40cc675 - languageName: node - linkType: hard - "whatwg-mimetype@npm:^2.3.0": version: 2.3.0 resolution: "whatwg-mimetype@npm:2.3.0" @@ -14248,23 +9333,6 @@ __metadata: languageName: node linkType: hard -"whatwg-mimetype@npm:^3.0.0": - version: 3.0.0 - resolution: "whatwg-mimetype@npm:3.0.0" - checksum: ce08bbb36b6aaf64f3a84da89707e3e6a31e5ab1c1a2379fd68df79ba712a4ab090904f0b50e6693b0dafc8e6343a6157e40bf18fdffd26e513cf95ee2a59824 - languageName: node - linkType: hard - -"whatwg-url@npm:^11.0.0": - version: 11.0.0 - resolution: "whatwg-url@npm:11.0.0" - dependencies: - tr46: ^3.0.0 - webidl-conversions: ^7.0.0 - checksum: ed4826aaa57e66bb3488a4b25c9cd476c46ba96052747388b5801f137dd740b73fde91ad207d96baf9f17fbcc80fc1a477ad65181b5eb5fa718d27c69501d7af - languageName: node - linkType: hard - "whatwg-url@npm:^5.0.0": version: 5.0.0 resolution: "whatwg-url@npm:5.0.0" @@ -14380,17 +9448,6 @@ __metadata: languageName: node linkType: hard -"which@npm:^5.0.0": - version: 5.0.0 - resolution: "which@npm:5.0.0" - dependencies: - isexe: ^3.1.1 - bin: - node-which: bin/which.js - checksum: 6ec99e89ba32c7e748b8a3144e64bfc74aa63e2b2eacbb61a0060ad0b961eb1a632b08fb1de067ed59b002cec3e21de18299216ebf2325ef0f78e0f121e14e90 - languageName: node - linkType: hard - "wide-align@npm:1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" @@ -14494,16 +9551,6 @@ __metadata: languageName: node linkType: hard -"write-file-atomic@npm:^4.0.2": - version: 4.0.2 - resolution: "write-file-atomic@npm:4.0.2" - dependencies: - imurmurhash: ^0.1.4 - signal-exit: ^3.0.7 - checksum: 5da60bd4eeeb935eec97ead3df6e28e5917a6bd317478e4a85a5285e8480b8ed96032bbcc6ecd07b236142a24f3ca871c924ec4a6575e623ec1b11bf8c1c253c - languageName: node - linkType: hard - "write-json-file@npm:^3.2.0": version: 3.2.0 resolution: "write-json-file@npm:3.2.0" @@ -14544,28 +9591,7 @@ __metadata: languageName: node linkType: hard -"xml-name-validator@npm:^4.0.0": - version: 4.0.0 - resolution: "xml-name-validator@npm:4.0.0" - checksum: af100b79c29804f05fa35aa3683e29a321db9b9685d5e5febda3fa1e40f13f85abc40f45a6b2bf7bee33f68a1dc5e8eaef4cec100a304a9db565e6061d4cb5ad - languageName: node - linkType: hard - -"xml@npm:^1.0.1": - version: 1.0.1 - resolution: "xml@npm:1.0.1" - checksum: 11b5545ef3f8fec3fa29ce251f50ad7b6c97c103ed4d851306ec23366f5fa4699dd6a942262df52313a0cd1840ab26256da253c023bad3309d8ce46fe6020ca0 - languageName: node - linkType: hard - -"xmlchars@npm:^2.2.0": - version: 2.2.0 - resolution: "xmlchars@npm:2.2.0" - checksum: 8c70ac94070ccca03f47a81fcce3b271bd1f37a591bf5424e787ae313fcb9c212f5f6786e1fa82076a2c632c0141552babcd85698c437506dfa6ae2d58723062 - languageName: node - linkType: hard - -"xtend@npm:^4.0.1, xtend@npm:~4.0.1": +"xtend@npm:~4.0.1": version: 4.0.2 resolution: "xtend@npm:4.0.2" checksum: ac5dfa738b21f6e7f0dd6e65e1b3155036d68104e67e5d5d1bde74892e327d7e5636a076f625599dc394330a731861e87343ff184b0047fef1360a7ec0a5a36a @@ -14590,13 +9616,6 @@ __metadata: languageName: node linkType: hard -"yallist@npm:^3.0.2": - version: 3.1.1 - resolution: "yallist@npm:3.1.1" - checksum: 48f7bb00dc19fc635a13a39fe547f527b10c9290e7b3e836b9a8f1ca04d4d342e85714416b3c2ab74949c9c66f9cebb0473e6bc353b79035356103b47641285d - languageName: node - linkType: hard - "yallist@npm:^4.0.0": version: 4.0.0 resolution: "yallist@npm:4.0.0" @@ -14604,13 +9623,6 @@ __metadata: languageName: node linkType: hard -"yallist@npm:^5.0.0": - version: 5.0.0 - resolution: "yallist@npm:5.0.0" - checksum: eba51182400b9f35b017daa7f419f434424410691bbc5de4f4240cc830fdef906b504424992700dc047f16b4d99100a6f8b8b11175c193f38008e9c96322b6a5 - languageName: node - linkType: hard - "yaml@npm:^2.6.0": version: 2.7.0 resolution: "yaml@npm:2.7.0" @@ -14634,7 +9646,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:17.7.2, yargs@npm:^17.3.1, yargs@npm:^17.6.2": +"yargs@npm:17.7.2, yargs@npm:^17.6.2": version: 17.7.2 resolution: "yargs@npm:17.7.2" dependencies: From 9e433e978c79a48c94eda464956bfd50e645ca24 Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 19 Mar 2025 16:44:13 +0100 Subject: [PATCH 32/38] Remove host page tests --- ui-tests/tests/hostpage-tests.spec.ts | 104 ------------------ .../dark-theme-linux.png | Bin 46694 -> 0 bytes .../light-theme-linux.png | Bin 47250 -> 0 bytes 3 files changed, 104 deletions(-) delete mode 100644 ui-tests/tests/hostpage-tests.spec.ts delete mode 100644 ui-tests/tests/hostpage-tests.spec.ts-snapshots/dark-theme-linux.png delete mode 100644 ui-tests/tests/hostpage-tests.spec.ts-snapshots/light-theme-linux.png diff --git a/ui-tests/tests/hostpage-tests.spec.ts b/ui-tests/tests/hostpage-tests.spec.ts deleted file mode 100644 index 19fc1f8..0000000 --- a/ui-tests/tests/hostpage-tests.spec.ts +++ /dev/null @@ -1,104 +0,0 @@ -import { test, expect, Page } from '@playwright/test'; - -const waitForApp = async (page: Page) => { - const iframe = page.locator('#jupyterlab').contentFrame(); - - await iframe.locator('#jupyterlab-splash').waitFor({ state: 'detached' }); - await iframe.locator('#galaxy').waitFor({ state: 'detached' }); - await iframe.locator('#main-logo').waitFor({ state: 'detached' }); -}; - -test.use({ - baseURL: 'http://localhost:8080', - viewport: { - width: 1024, - height: 768 - } -}); -/** - * This test uses the raw Playwright since the host page does not expose window.jupyterapp - */ -test.describe('Commands from host should affect lab in iframe', () => { - test.beforeEach(async ({ page }) => { - await page.goto('index.html'); - - const iframe = page.locator('#jupyterlab').contentFrame(); - - await iframe.locator('.jp-LauncherCard-icon').first().waitFor(); - - // Make sure left sidebar is hidden - await iframe.getByText('View', { exact: true }).click(); - await iframe.getByText('Appearance').hover(); - await iframe - .locator('#jp-mainmenu-view-appearance') - .getByText('Show Left Sidebar') - .waitFor(); - - const leftSidebarOpen = await iframe - .getByRole('menuitem', { name: 'Show Left Sidebar Ctrl+B' }) - .getByRole('img') - .isVisible(); - - if (leftSidebarOpen) { - await iframe - .locator('#jp-mainmenu-view-appearance') - .getByText('Show Left Sidebar') - .click(); - } - - await iframe.locator('#jp-MainLogo').click(); - - await waitForApp(page); - }); - - test('Swich to light theme', async ({ page }) => { - await page - .getByPlaceholder('Enter a command') - .fill('apputils:change-theme'); - await page - .getByPlaceholder('Enter args (optional)') - .fill(" { 'theme': 'JupyterLab Light' }"); - await page.getByRole('button', { name: 'Submit' }).click(); - - await waitForApp(page); - - await expect(page).toHaveScreenshot('light-theme.png', { timeout: 1500 }); - }); - - test('Swich to dark theme', async ({ page }) => { - await page - .getByPlaceholder('Enter a command') - .fill('apputils:change-theme'); - await page - .getByPlaceholder('Enter args (optional)') - .fill(" { 'theme': 'JupyterLab Dark' }"); - await page.getByRole('button', { name: 'Submit' }).click(); - - await waitForApp(page); - - await expect(page).toHaveScreenshot('dark-theme.png', { timeout: 1500 }); - }); - - test('Open a new notebook', async ({ page }) => { - await page.getByPlaceholder('Enter a command').fill('notebook:create-new'); - await page.getByRole('button', { name: 'Submit' }).click(); - - await waitForApp(page); - - const iframe = page.locator('#jupyterlab').contentFrame(); - await expect(iframe.getByText('Select KernelSelect kernel')).toBeVisible(); - - await iframe.getByRole('button', { name: 'Select Kernel' }).click(); - await expect(iframe.getByLabel('Cells', { exact: true })).toBeVisible(); - - // Close all tabs and wait for launcher - await page - .getByPlaceholder('Enter a command') - .fill('application:close-all'); - await page.getByRole('button', { name: 'Submit' }).click(); - await iframe - .getByRole('button', { name: 'Discard changes to file' }) - .click(); - await iframe.locator('.jp-LauncherCard-icon').first().waitFor(); - }); -}); diff --git a/ui-tests/tests/hostpage-tests.spec.ts-snapshots/dark-theme-linux.png b/ui-tests/tests/hostpage-tests.spec.ts-snapshots/dark-theme-linux.png deleted file mode 100644 index 1dae5f59c49b047e4ff49908ddcb738a41923d8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46694 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
  • |2}FsSUR0? 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 I$JGD-0oM*>Jpcdz From 8038d15b68c23be97b68c636b0f78e3589d22636 Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 19 Mar 2025 17:12:22 +0100 Subject: [PATCH 33/38] Remove lite build action --- .github/workflows/build.yml | 66 ------------------------------------- 1 file changed, 66 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 24c9083..78108f7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -157,69 +157,3 @@ jobs: - uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1 with: ignore_links: https://github.com/TileDB-Inc/jupyter-iframe-commands/.* - - build-lite: - name: Build JupyterLite - needs: build - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup Python - uses: actions/setup-python@v5 - with: - python-version: '3.12' - - - name: Set up Node - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: 'yarn' - - - name: Install the dependencies - run: | - set -eux - python -m pip install -r requirements.txt - jlpm - jlpm build - python -m pip install . - - - name: Build the JupyterLite assets - working-directory: demo - run: | - jlpm clean:lite - jlpm build:lite - - - name: Install and build Vite dependencies - working-directory: demo - run: | - jlpm - jlpm build:ghpages - - - name: Setup Pages - uses: actions/configure-pages@v4 - - - name: Upload artifact - id: deployment - uses: actions/upload-pages-artifact@v3 - with: - path: ./demo/dist - - deploy: - needs: build-lite - if: github.ref == 'refs/heads/main' - permissions: - contents: read - pages: write - id-token: write - - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - - runs-on: ubuntu-latest - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 From 8e2679583d75e3a2b99389c4264ff31889a680a5 Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 19 Mar 2025 17:26:02 +0100 Subject: [PATCH 34/38] Add notebook package --- packages/extension/package.json | 1 + yarn.lock | 1007 ++++++++++++++++++++++++++++++- 2 files changed, 1007 insertions(+), 1 deletion(-) diff --git a/packages/extension/package.json b/packages/extension/package.json index 7879a40..3286de1 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -54,6 +54,7 @@ }, "dependencies": { "@jupyterlab/application": "^4.3.2", + "@jupyterlab/notebook": "^4.3.2", "@jupyterlab/settingregistry": "^4.3.2", "@lumino/coreutils": "^2.2.0" }, diff --git a/yarn.lock b/yarn.lock index 54bc79a..0dfb496 100644 --- a/yarn.lock +++ b/yarn.lock @@ -23,7 +23,242 @@ __metadata: languageName: node linkType: hard -"@codemirror/state@npm:^6.4.1": +"@codemirror/autocomplete@npm:^6.0.0, @codemirror/autocomplete@npm:^6.16.0, @codemirror/autocomplete@npm:^6.3.2, @codemirror/autocomplete@npm:^6.7.1": + version: 6.18.6 + resolution: "@codemirror/autocomplete@npm:6.18.6" + dependencies: + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + checksum: 1d3657d5fbd2bbf983edf7fb14568b1f813a15f03848bef3833835dd3a30985d881e093842f7b3def23789b542db4eb81ec07bfa313d1ee1d54cb1b273027dea + languageName: node + linkType: hard + +"@codemirror/commands@npm:^6.5.0": + version: 6.8.0 + resolution: "@codemirror/commands@npm:6.8.0" + dependencies: + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.4.0 + "@codemirror/view": ^6.27.0 + "@lezer/common": ^1.1.0 + checksum: 7d819bab4830ec7b8c5dffdec4b035dfa664bfd1d2675e639e08a459df65f45be111e1b8b569b1a8a3253d5980cf2ecf4394d8a13509996cca1b65cc16d47a4e + languageName: node + linkType: hard + +"@codemirror/lang-cpp@npm:^6.0.2": + version: 6.0.2 + resolution: "@codemirror/lang-cpp@npm:6.0.2" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/cpp": ^1.0.0 + checksum: bb9eba482cca80037ce30c7b193cf45eff19ccbb773764fddf2071756468ecc25aa53c777c943635054f89095b0247b9b50c339e107e41e68d34d12a7295f9a9 + languageName: node + linkType: hard + +"@codemirror/lang-css@npm:^6.0.0, @codemirror/lang-css@npm:^6.2.1": + version: 6.3.1 + resolution: "@codemirror/lang-css@npm:6.3.1" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.0.2 + "@lezer/css": ^1.1.7 + checksum: ed175d75d75bc0a059d1e60b3dcd8464d570da14fc97388439943c9c43e1e9146e37b83fe2ccaad9cd387420b7b411ea1d24ede78ecd1f2045a38acbb4dd36bc + languageName: node + linkType: hard + +"@codemirror/lang-html@npm:^6.0.0, @codemirror/lang-html@npm:^6.4.9": + version: 6.4.9 + resolution: "@codemirror/lang-html@npm:6.4.9" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/lang-css": ^6.0.0 + "@codemirror/lang-javascript": ^6.0.0 + "@codemirror/language": ^6.4.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + "@lezer/css": ^1.1.0 + "@lezer/html": ^1.3.0 + checksum: ac8c3ceb0396f2e032752c5079bd950124dca708bc64e96fc147dc5fe7133e5cee0814fe951abdb953ec1d11fa540e4b30a712b5149d9a36016a197a28de45d7 + languageName: node + linkType: hard + +"@codemirror/lang-java@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-java@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/java": ^1.0.0 + checksum: 4679104683cbffcd224ac04c7e5d144b787494697b26470b07017259035b7bb3fa62609d9a61bfbc566f1756d9f972f9f26d96a3c1362dd48881c1172f9a914d + languageName: node + linkType: hard + +"@codemirror/lang-javascript@npm:^6.0.0, @codemirror/lang-javascript@npm:^6.2.2": + version: 6.2.3 + resolution: "@codemirror/lang-javascript@npm:6.2.3" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.6.0 + "@codemirror/lint": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.17.0 + "@lezer/common": ^1.0.0 + "@lezer/javascript": ^1.0.0 + checksum: c56407ddedc80e417dd105a39f11f837fad6fd4d91fe7934c61e48c54227350e4e8f940f81d26030a6c4ff9da16f734361cd1eaed63ba22aadf71fcf6172cbd5 + languageName: node + linkType: hard + +"@codemirror/lang-json@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-json@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/json": ^1.0.0 + checksum: e9e87d50ff7b81bd56a6ab50740b1dd54e9a93f1be585e1d59d0642e2148842ea1528ac7b7221eb4ddc7fe84bbc28065144cc3ab86f6e06c6aeb2d4b4e62acf1 + languageName: node + linkType: hard + +"@codemirror/lang-markdown@npm:^6.2.5": + version: 6.3.2 + resolution: "@codemirror/lang-markdown@npm:6.3.2" + dependencies: + "@codemirror/autocomplete": ^6.7.1 + "@codemirror/lang-html": ^6.0.0 + "@codemirror/language": ^6.3.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + "@lezer/common": ^1.2.1 + "@lezer/markdown": ^1.0.0 + checksum: f136d50156f13619d7ceb4fae28fc2342064be371a6cb057ba304658d885cf029d2d0d69b03b3c591c86a2c9b46bb2b3820549d5ff936a9b6aabaf692923c84a + languageName: node + linkType: hard + +"@codemirror/lang-php@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-php@npm:6.0.1" + dependencies: + "@codemirror/lang-html": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.0.0 + "@lezer/php": ^1.0.0 + checksum: c003a29a426486453fdfddbf7302982fa2aa7f059bf6f1ce4cbf08341b0162eee5e2f50e0d71c418dcd358491631780156d846fe352754d042576172c5d86721 + languageName: node + linkType: hard + +"@codemirror/lang-python@npm:^6.1.6": + version: 6.1.7 + resolution: "@codemirror/lang-python@npm:6.1.7" + dependencies: + "@codemirror/autocomplete": ^6.3.2 + "@codemirror/language": ^6.8.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.2.1 + "@lezer/python": ^1.1.4 + checksum: a3015abf8035b0c30e5bfc1e8b1bd43c5d9d4ec908b9c3f1e293e755256b41f6e48ad19b2e39c9f91c67264b9061235d9dc293acfe39175d4c2edaab951ceae2 + languageName: node + linkType: hard + +"@codemirror/lang-rust@npm:^6.0.1": + version: 6.0.1 + resolution: "@codemirror/lang-rust@npm:6.0.1" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/rust": ^1.0.0 + checksum: 8a439944cb22159b0b3465ca4fa4294c69843219d5d30e278ae6df8e48f30a7a9256129723c025ec9b5e694d31a3560fb004300b125ffcd81c22d13825845170 + languageName: node + linkType: hard + +"@codemirror/lang-sql@npm:^6.6.4": + version: 6.8.0 + resolution: "@codemirror/lang-sql@npm:6.8.0" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.0.0 + "@codemirror/state": ^6.0.0 + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 1b5a3c8129b09f24039d8c0906fc4cb8d0f706a424a1d56721057bd1e647797c2b1240bb53eed9bf2bac5806a4e0363e555a3963f04c478efa05829890c537f7 + languageName: node + linkType: hard + +"@codemirror/lang-wast@npm:^6.0.2": + version: 6.0.2 + resolution: "@codemirror/lang-wast@npm:6.0.2" + dependencies: + "@codemirror/language": ^6.0.0 + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 72119d4a7d726c54167aa227c982ae9fa785c8ad97a158d8350ae95eecfbd8028a803eef939f7e6c5c6e626fcecda1dc37e9dffc6d5d6ec105f686aeda6b2c24 + languageName: node + linkType: hard + +"@codemirror/lang-xml@npm:^6.1.0": + version: 6.1.0 + resolution: "@codemirror/lang-xml@npm:6.1.0" + dependencies: + "@codemirror/autocomplete": ^6.0.0 + "@codemirror/language": ^6.4.0 + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + "@lezer/common": ^1.0.0 + "@lezer/xml": ^1.0.0 + checksum: 3a1b7af07b29ad7e53b77bf584245580b613bc92256059f175f2b1d7c28c4e39b75654fe169b9a8a330a60164b53ff5254bdb5b8ee8c6e6766427ee115c4e229 + languageName: node + linkType: hard + +"@codemirror/language@npm:^6.0.0, @codemirror/language@npm:^6.10.1, @codemirror/language@npm:^6.3.0, @codemirror/language@npm:^6.4.0, @codemirror/language@npm:^6.6.0, @codemirror/language@npm:^6.8.0": + version: 6.11.0 + resolution: "@codemirror/language@npm:6.11.0" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.23.0 + "@lezer/common": ^1.1.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + style-mod: ^4.0.0 + checksum: 5556dc163d5bd1d771a4f64e2750d3d1dc1f39030bc6e4b9a4704e4de7501e8d3511002e0f8f96cd8deef782730e0b49b576e30f0ea820e1c632995bd75caddd + languageName: node + linkType: hard + +"@codemirror/legacy-modes@npm:^6.4.0": + version: 6.5.0 + resolution: "@codemirror/legacy-modes@npm:6.5.0" + dependencies: + "@codemirror/language": ^6.0.0 + checksum: a7579e95ca0db80f9e07aa99c207bab7e073299aa5463ab6f2f24a42d3e433f8444d5ee3a950bd228ac2f6bd1547156aaa4082dbbc8b1d4e0cc39877e09ed6e0 + languageName: node + linkType: hard + +"@codemirror/lint@npm:^6.0.0": + version: 6.8.4 + resolution: "@codemirror/lint@npm:6.8.4" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.35.0 + crelt: ^1.0.5 + checksum: 640e3dd44eb167d952eb5c5b8518919ba46e164aa3471776342f7f9361e676b4627a76a9f01d51b22127b97413f2bc9b8c60299d8dfdd5fc8ad0225d42de7669 + languageName: node + linkType: hard + +"@codemirror/search@npm:^6.5.6": + version: 6.5.10 + resolution: "@codemirror/search@npm:6.5.10" + dependencies: + "@codemirror/state": ^6.0.0 + "@codemirror/view": ^6.0.0 + crelt: ^1.0.5 + checksum: a30048004ce7cc1ee77a7618485ab5399939eab72b64329d57be98245ea39cb68ba54ad944ee679cc2aeac5bf9f202b2073ad0916f0788497fb64a07073399e8 + languageName: node + linkType: hard + +"@codemirror/state@npm:^6.0.0, @codemirror/state@npm:^6.4.0, @codemirror/state@npm:^6.4.1, @codemirror/state@npm:^6.5.0": version: 6.5.2 resolution: "@codemirror/state@npm:6.5.2" dependencies: @@ -32,6 +267,17 @@ __metadata: languageName: node linkType: hard +"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.26.3, @codemirror/view@npm:^6.27.0, @codemirror/view@npm:^6.35.0": + version: 6.36.4 + resolution: "@codemirror/view@npm:6.36.4" + dependencies: + "@codemirror/state": ^6.5.0 + style-mod: ^4.1.0 + w3c-keyname: ^2.2.4 + checksum: d78f733fa8e3ffff56b676edc4973fa308bb97b0c4f8620a40a0d7a9e18224103c75e0bb462c6e690177fcd36144cafda9045eb9953afc27d7351755e5218e16 + languageName: node + linkType: hard + "@csstools/css-parser-algorithms@npm:^2.3.1": version: 2.7.1 resolution: "@csstools/css-parser-algorithms@npm:2.7.1" @@ -358,6 +604,49 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/apputils@npm:^4.4.6": + version: 4.4.6 + resolution: "@jupyterlab/apputils@npm:4.4.6" + dependencies: + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/settingregistry": ^4.3.6 + "@jupyterlab/statedb": ^4.3.6 + "@jupyterlab/statusbar": ^4.3.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + "@types/react": ^18.0.26 + react: ^18.2.0 + sanitize-html: ~2.12.1 + checksum: 188a0346e2f8ff6326ebfb9551f1f405c34d48181b233fe67e48388aa047f378ddcd9c951b7fe1b003ce1934af33ce25f61f49bf888589554ed1de2c593106c2 + languageName: node + linkType: hard + +"@jupyterlab/attachments@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/attachments@npm:4.3.6" + dependencies: + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime": ^4.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + checksum: 7e17eae3919ab3a00bbfa59524c2f6263318ec28ee1b930ab5fb33b0331014a0b2ad1c6fe0a1b59a724a481bbdb6847178ad6947511a6da7ed4a3a0f8e621a22 + languageName: node + linkType: hard + "@jupyterlab/builder@npm:^4.3.2": version: 4.3.5 resolution: "@jupyterlab/builder@npm:4.3.5" @@ -399,6 +688,42 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/cells@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/cells@npm:4.3.6" + dependencies: + "@codemirror/state": ^6.4.1 + "@codemirror/view": ^6.26.3 + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/attachments": ^4.3.6 + "@jupyterlab/codeeditor": ^4.3.6 + "@jupyterlab/codemirror": ^4.3.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/documentsearch": ^4.3.6 + "@jupyterlab/filebrowser": ^4.3.6 + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/outputarea": ^4.3.6 + "@jupyterlab/rendermime": ^4.3.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/toc": ^6.3.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 4bcfe8c12aa55872762706e582cbc7ed16b1e275ccad2cedc0930b0bb276f6dd66f5cb69a2371a53c89e88f22ee39dcc02fb555abdb0e6cc2ae12cfffcc050df + languageName: node + linkType: hard + "@jupyterlab/codeeditor@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/codeeditor@npm:4.3.5" @@ -423,6 +748,72 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/codeeditor@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/codeeditor@npm:4.3.6" + dependencies: + "@codemirror/state": ^6.4.1 + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/statusbar": ^4.3.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 3ad4096f6ffd8197fd9ac832876aecf8d880694047c34b6c338e76a3a868397ba0c9854f39392fe1df11f8aa9d500934185c1616cb961853ab1e3e2cf461e952 + languageName: node + linkType: hard + +"@jupyterlab/codemirror@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/codemirror@npm:4.3.6" + dependencies: + "@codemirror/autocomplete": ^6.16.0 + "@codemirror/commands": ^6.5.0 + "@codemirror/lang-cpp": ^6.0.2 + "@codemirror/lang-css": ^6.2.1 + "@codemirror/lang-html": ^6.4.9 + "@codemirror/lang-java": ^6.0.1 + "@codemirror/lang-javascript": ^6.2.2 + "@codemirror/lang-json": ^6.0.1 + "@codemirror/lang-markdown": ^6.2.5 + "@codemirror/lang-php": ^6.0.1 + "@codemirror/lang-python": ^6.1.6 + "@codemirror/lang-rust": ^6.0.1 + "@codemirror/lang-sql": ^6.6.4 + "@codemirror/lang-wast": ^6.0.2 + "@codemirror/lang-xml": ^6.1.0 + "@codemirror/language": ^6.10.1 + "@codemirror/legacy-modes": ^6.4.0 + "@codemirror/search": ^6.5.6 + "@codemirror/state": ^6.4.1 + "@codemirror/view": ^6.26.3 + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/codeeditor": ^4.3.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/documentsearch": ^4.3.6 + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/translation": ^4.3.6 + "@lezer/common": ^1.2.1 + "@lezer/generator": ^1.7.0 + "@lezer/highlight": ^1.2.0 + "@lezer/markdown": ^1.3.0 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + yjs: ^13.5.40 + checksum: 87e38ee9d0914b82d8bcbf202609e80e02a5c5deba77a9638e550e7f4167abe35fc37231731ca340a10d40fbf7dd399f33dfc63e49d4161605a82c8a872ed33d + languageName: node + linkType: hard + "@jupyterlab/coreutils@npm:^6.3.5": version: 6.3.5 resolution: "@jupyterlab/coreutils@npm:6.3.5" @@ -437,6 +828,45 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/coreutils@npm:^6.3.6": + version: 6.3.6 + resolution: "@jupyterlab/coreutils@npm:6.3.6" + dependencies: + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + minimist: ~1.2.0 + path-browserify: ^1.0.0 + url-parse: ~1.5.4 + checksum: 6e76dbc798e69d5e813bd624eb9804a93d9fb88f6908708fefb3b55d87115b6820c06ad1da9810f7044cfff55f1d7ceff28799aa09d47d7de63d1deb9d23109d + languageName: node + linkType: hard + +"@jupyterlab/docmanager@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/docmanager@npm:4.3.6" + dependencies: + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/docregistry": ^4.3.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/statedb": ^4.3.6 + "@jupyterlab/statusbar": ^4.3.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 46406c7f005066768cae0bfb80c85043a6f1cdbbd0b65b6d06ee8d9c29ca1af89a38fb6315cb12145dc1f9d668aec02442fdf12be70df6da5d03bfa268884f83 + languageName: node + linkType: hard + "@jupyterlab/docregistry@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/docregistry@npm:4.3.5" @@ -463,6 +893,102 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/docregistry@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/docregistry@npm:4.3.6" + dependencies: + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/codeeditor": ^4.3.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime": ^4.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 721d99bbe6fcbd34f3d38720c6ab247082c25f4705a7b9521e7ae3f810b59d108320ecd5b32833963f6e7478d657919db9feee0b262f641c062ad87ce6ae777e + languageName: node + linkType: hard + +"@jupyterlab/documentsearch@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/documentsearch@npm:4.3.6" + dependencies: + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 5362ec8711bd7af6d0d50746d7b47080f8f51a745747061efce5d5183acbacb5d37c6c1223cd9b1c3c64e74826e5a4ec046ccadf646584a7c0f4bc4c2298c834 + languageName: node + linkType: hard + +"@jupyterlab/filebrowser@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/filebrowser@npm:4.3.6" + dependencies: + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/docmanager": ^4.3.6 + "@jupyterlab/docregistry": ^4.3.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/statedb": ^4.3.6 + "@jupyterlab/statusbar": ^4.3.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 6352a6fde456d38d5e0f42290f438579927d16534b2ebe5cb16cbadd9f2720a76aa753a1cdf2976ae0cc114c3c893018e990e2dd471026586209c0e34718a9b9 + languageName: node + linkType: hard + +"@jupyterlab/lsp@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/lsp@npm:4.3.6" + dependencies: + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/codeeditor": ^4.3.6 + "@jupyterlab/codemirror": ^4.3.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/docregistry": ^4.3.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/translation": ^4.3.6 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + lodash.mergewith: ^4.6.1 + vscode-jsonrpc: ^6.0.0 + vscode-languageserver-protocol: ^3.17.0 + vscode-ws-jsonrpc: ~1.0.2 + checksum: 65973a2b5074058f905d22a414a72e7fd1e279cb612a72c002cb80b47307d7948029a4a31789bdef05655c97e8f0b78a1458861fac2b0af33e4883877b1a314f + languageName: node + linkType: hard + "@jupyterlab/nbformat@npm:^3.0.0 || ^4.0.0-alpha.21 || ^4.0.0, @jupyterlab/nbformat@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/nbformat@npm:4.3.5" @@ -472,6 +998,53 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/nbformat@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/nbformat@npm:4.3.6" + dependencies: + "@lumino/coreutils": ^2.2.0 + checksum: fff4e06469a438d29eb9353d9fe57bdcc580224a36c94f875ac6450fbd9445c0cdd1e6c1ccd02f5f1c48d51016ab1b44b2213c8e71f803fad3ef7c21bcc3b31d + languageName: node + linkType: hard + +"@jupyterlab/notebook@npm:^4.3.2": + version: 4.3.6 + resolution: "@jupyterlab/notebook@npm:4.3.6" + dependencies: + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/cells": ^4.3.6 + "@jupyterlab/codeeditor": ^4.3.6 + "@jupyterlab/codemirror": ^4.3.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/docregistry": ^4.3.6 + "@jupyterlab/documentsearch": ^4.3.6 + "@jupyterlab/lsp": ^4.3.6 + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime": ^4.3.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/settingregistry": ^4.3.6 + "@jupyterlab/statusbar": ^4.3.6 + "@jupyterlab/toc": ^6.3.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/domutils": ^2.0.2 + "@lumino/dragdrop": ^2.1.5 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: e623dae5aaca2ffd3ebed35a4491439d68fb84717f228da4f64aeaf709ed6270e271be2e9a558e988716f70669256adce50ea008bf9eba680c70f010fe62b23e + languageName: node + linkType: hard + "@jupyterlab/observables@npm:^5.3.5": version: 5.3.5 resolution: "@jupyterlab/observables@npm:5.3.5" @@ -485,6 +1058,41 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/observables@npm:^5.3.6": + version: 5.3.6 + resolution: "@jupyterlab/observables@npm:5.3.6" + dependencies: + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + checksum: fcc9cbd6b2e73245a1daf5ea098adbf141883a835aab56b81476d9aa84d58079bac0b8786291d07b94bc4f4d545358283f114a759f4e607f8e57464551b74c41 + languageName: node + linkType: hard + +"@jupyterlab/outputarea@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/outputarea@npm:4.3.6" + dependencies: + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime": ^4.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/translation": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + checksum: 858786891f7b7727752a9f0cf4b6fc5ffd11e6b52e1e7af358c7179e5218b1d10864653224e03cb63325e1676e0bd8b12d9b8d9ec0db6ccde939f407e3bce13b + languageName: node + linkType: hard + "@jupyterlab/rendermime-interfaces@npm:^3.11.5": version: 3.11.5 resolution: "@jupyterlab/rendermime-interfaces@npm:3.11.5" @@ -495,6 +1103,16 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/rendermime-interfaces@npm:^3.11.6": + version: 3.11.6 + resolution: "@jupyterlab/rendermime-interfaces@npm:3.11.6" + dependencies: + "@lumino/coreutils": ^1.11.0 || ^2.2.0 + "@lumino/widgets": ^1.37.2 || ^2.5.0 + checksum: 85c6124ffb48be32348d0c56afd0a7a7b773c79f9ac42b157a84a3344eb58654cdc9860fc69052e52d0a6da0a3f82802686cebab34cec58071951a228c65d98c + languageName: node + linkType: hard + "@jupyterlab/rendermime@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/rendermime@npm:4.3.5" @@ -515,6 +1133,26 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/rendermime@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/rendermime@npm:4.3.6" + dependencies: + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/translation": ^4.3.6 + "@lumino/coreutils": ^2.2.0 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + lodash.escape: ^4.0.1 + checksum: d2c03893d558003a8ce29e372ab6e7877d4d0b3dced47f8b8c11e2ae25093c13fbce10f4a5e1eabd60d6528d7a8988a4542ed4dfcf575cd9ab16b17907373bac + languageName: node + linkType: hard + "@jupyterlab/services@npm:^7.3.5": version: 7.3.5 resolution: "@jupyterlab/services@npm:7.3.5" @@ -534,6 +1172,25 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/services@npm:^7.3.6": + version: 7.3.6 + resolution: "@jupyterlab/services@npm:7.3.6" + dependencies: + "@jupyter/ydoc": ^3.0.0 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/settingregistry": ^4.3.6 + "@jupyterlab/statedb": ^4.3.6 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + ws: ^8.11.0 + checksum: defa7346eb1a9ed28c246c515c736b33b2e3204da6f542830b5e5e698bac0e890f4050ebee1ca91377f999b938912626ae029d51b54bf78b926223e05fcedb21 + languageName: node + linkType: hard + "@jupyterlab/settingregistry@npm:^4.3.2, @jupyterlab/settingregistry@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/settingregistry@npm:4.3.5" @@ -553,6 +1210,25 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/settingregistry@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/settingregistry@npm:4.3.6" + dependencies: + "@jupyterlab/nbformat": ^4.3.6 + "@jupyterlab/statedb": ^4.3.6 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/signaling": ^2.1.3 + "@rjsf/utils": ^5.13.4 + ajv: ^8.12.0 + json5: ^2.2.3 + peerDependencies: + react: ">=16" + checksum: 45208f594b7a3dc050e347216ddafc5283b67c234ed73c4444c2098900d0894c28e2df9d7cc04d2d40296856779860cd62dea4662cb402ce6cdf1128c10ae6dd + languageName: node + linkType: hard + "@jupyterlab/statedb@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/statedb@npm:4.3.5" @@ -566,6 +1242,19 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/statedb@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/statedb@npm:4.3.6" + dependencies: + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + checksum: 1bb62cb1af42df243ce1ddb37510ba7c1f5fc1b1804f8a49999ba8fe29f0487dcee80f6bcb746b2df67ab83016b202d2aeb01621a9ca16864097f1b190e1be66 + languageName: node + linkType: hard + "@jupyterlab/statusbar@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/statusbar@npm:4.3.5" @@ -582,6 +1271,45 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/statusbar@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/statusbar@npm:4.3.6" + dependencies: + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 742b8aafee668ef4cb18fbcef47542fa156c6c28be85064e61f3e0bb7e0ca7a15128c2b075b7c6e77cc821e524f22f46893c67d2148e245e4ae13ba18fd8ca58 + languageName: node + linkType: hard + +"@jupyterlab/toc@npm:^6.3.6": + version: 6.3.6 + resolution: "@jupyterlab/toc@npm:6.3.6" + dependencies: + "@jupyter/react-components": ^0.16.6 + "@jupyterlab/apputils": ^4.4.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/docregistry": ^4.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime": ^4.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@jupyterlab/translation": ^4.3.6 + "@jupyterlab/ui-components": ^4.3.6 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/widgets": ^2.5.0 + react: ^18.2.0 + checksum: 078d21219959c89d11cfa221973715b3acc0bf87ee9240ba552a1cab6b272f6b1aa83b8674bb96e243eff98e64342059a42372973bd7965af16fdbaa2e969d3a + languageName: node + linkType: hard + "@jupyterlab/translation@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/translation@npm:4.3.5" @@ -595,6 +1323,19 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/translation@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/translation@npm:4.3.6" + dependencies: + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@jupyterlab/services": ^7.3.6 + "@jupyterlab/statedb": ^4.3.6 + "@lumino/coreutils": ^2.2.0 + checksum: d6f46c8e84c54b792305e85083ffbf7dcf2c95c9f2b5304ed5ffc16d0256bde1efbce73e7641ce2e62f96ef21ef0dc555d2f19ab40287044ef291161a50a5e9c + languageName: node + linkType: hard + "@jupyterlab/ui-components@npm:^4.3.5": version: 4.3.5 resolution: "@jupyterlab/ui-components@npm:4.3.5" @@ -626,6 +1367,37 @@ __metadata: languageName: node linkType: hard +"@jupyterlab/ui-components@npm:^4.3.6": + version: 4.3.6 + resolution: "@jupyterlab/ui-components@npm:4.3.6" + dependencies: + "@jupyter/react-components": ^0.16.6 + "@jupyter/web-components": ^0.16.6 + "@jupyterlab/coreutils": ^6.3.6 + "@jupyterlab/observables": ^5.3.6 + "@jupyterlab/rendermime-interfaces": ^3.11.6 + "@jupyterlab/translation": ^4.3.6 + "@lumino/algorithm": ^2.0.2 + "@lumino/commands": ^2.3.1 + "@lumino/coreutils": ^2.2.0 + "@lumino/disposable": ^2.1.3 + "@lumino/messaging": ^2.0.2 + "@lumino/polling": ^2.1.3 + "@lumino/properties": ^2.0.2 + "@lumino/signaling": ^2.1.3 + "@lumino/virtualdom": ^2.0.2 + "@lumino/widgets": ^2.5.0 + "@rjsf/core": ^5.13.4 + "@rjsf/utils": ^5.13.4 + react: ^18.2.0 + react-dom: ^18.2.0 + typestyle: ^2.0.4 + peerDependencies: + react: ^18.2.0 + checksum: f716dfe9ac939bae7e99e62b70070af38cb56dc4872168282bcb10ac7f368718b02781b1ace487e47effa1d18d6a12513c682e270effb47eb2abd5c6736c455f + languageName: node + linkType: hard + "@lerna/create@npm:8.2.1": version: 8.2.1 resolution: "@lerna/create@npm:8.2.1" @@ -704,6 +1476,163 @@ __metadata: languageName: node linkType: hard +"@lezer/common@npm:^1.0.0, @lezer/common@npm:^1.0.2, @lezer/common@npm:^1.1.0, @lezer/common@npm:^1.2.0, @lezer/common@npm:^1.2.1": + version: 1.2.3 + resolution: "@lezer/common@npm:1.2.3" + checksum: 9b5f52d949adae69d077f56c0b1c2295923108c3dfb241dd9f17654ff708f3eab81ff9fa7f0d0e4a668eabdcb9d961c73e75caca87c966ca1436e30e49130fcb + languageName: node + linkType: hard + +"@lezer/cpp@npm:^1.0.0": + version: 1.1.3 + resolution: "@lezer/cpp@npm:1.1.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 87b48d89f3cd60c5a5c4368ea394fe7e27abb6ec9e6f8b7b4d005e3dd4d5268eb4e1c3a8a58807f63d18043ccfdc864965b9787c1274260999167d447cf562c3 + languageName: node + linkType: hard + +"@lezer/css@npm:^1.1.0, @lezer/css@npm:^1.1.7": + version: 1.1.10 + resolution: "@lezer/css@npm:1.1.10" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 67f302f0b2c84adc8380e77635c225c8eb3a773402e89f85180eb9fdc90ba3fee19ee4ba915523bfbe346ea07746a1b5832e369adfcfb222eedd7b1b1556bf9a + languageName: node + linkType: hard + +"@lezer/generator@npm:^1.7.0": + version: 1.7.2 + resolution: "@lezer/generator@npm:1.7.2" + dependencies: + "@lezer/common": ^1.1.0 + "@lezer/lr": ^1.3.0 + bin: + lezer-generator: src/lezer-generator.cjs + checksum: b5d282c7c749d816f373478ebebbcad839125918ac2038d870d880fc0fb1c932b278b3652beb5854d9a0b5aa8e1a9ba24f8359c5ce4c2b9a5393f85c395a2a91 + languageName: node + linkType: hard + +"@lezer/highlight@npm:^1.0.0, @lezer/highlight@npm:^1.1.3, @lezer/highlight@npm:^1.2.0": + version: 1.2.1 + resolution: "@lezer/highlight@npm:1.2.1" + dependencies: + "@lezer/common": ^1.0.0 + checksum: a8822d7e37f79ff64669eb2df4a9f9d16580e88f2b276a646092e19a9bdccac304e92510e200e35869a8b1f6c27eba5972c508d347a277e9b722d582ab7a23d5 + languageName: node + linkType: hard + +"@lezer/html@npm:^1.3.0": + version: 1.3.10 + resolution: "@lezer/html@npm:1.3.10" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: cce391aab9259704ae3079b3209f74b2f248594dd8b851c28aaff26765e00ebb890a5ff1fe600f2d03aaf4ade0e36de8048d9632b12bfbccd47b3e649c3b0ecd + languageName: node + linkType: hard + +"@lezer/java@npm:^1.0.0": + version: 1.1.3 + resolution: "@lezer/java@npm:1.1.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: a4b8a348ab08465cff6e54ec80e397d2629e0911decb4c6a47fd56cd74f6978fae478879b15a2e239203b9e53aef41ecaeba675f8013e290165249abdab7da74 + languageName: node + linkType: hard + +"@lezer/javascript@npm:^1.0.0": + version: 1.4.21 + resolution: "@lezer/javascript@npm:1.4.21" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.1.3 + "@lezer/lr": ^1.3.0 + checksum: 5ff9edaf53fe399d5e1c0c2196837325ca5cf81b59fda546e8ae81a4748f7cbcc4d258202fe77bbb3d5d9561ce8fb2b79cb87f0922c5f5d1117eb6f545fc1055 + languageName: node + linkType: hard + +"@lezer/json@npm:^1.0.0": + version: 1.0.3 + resolution: "@lezer/json@npm:1.0.3" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 48e7b945fdfa2b5b6f862e27bc31f3991cba93f18df7fed0059b25f119b64dedd50bbc709d279e16e2b3eee10e7758d7d80c6d98d21bc15c284809d268837897 + languageName: node + linkType: hard + +"@lezer/lr@npm:^1.0.0, @lezer/lr@npm:^1.1.0, @lezer/lr@npm:^1.3.0": + version: 1.4.2 + resolution: "@lezer/lr@npm:1.4.2" + dependencies: + "@lezer/common": ^1.0.0 + checksum: 94318ad046c7dfcc8d37e26cb85b99623c39aef60aa51ec2abb30928e7a649f38fa5520f34bd5b356f1db11b6991999589f039e87c8949b0f163be3764f029d8 + languageName: node + linkType: hard + +"@lezer/markdown@npm:^1.0.0, @lezer/markdown@npm:^1.3.0": + version: 1.4.2 + resolution: "@lezer/markdown@npm:1.4.2" + dependencies: + "@lezer/common": ^1.0.0 + "@lezer/highlight": ^1.0.0 + checksum: 3429594eff63a927cc61f315022d0cacd9ca4b1c3c7491128520575a59232d564eb54b9908af082cc6689a9182db2b452cffa58d17c06f9812dd961e93b4130d + languageName: node + linkType: hard + +"@lezer/php@npm:^1.0.0": + version: 1.0.2 + resolution: "@lezer/php@npm:1.0.2" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.1.0 + checksum: c85ef18571d37826b687dd141a0fe110f5814adaf9d1a391e7e482020d7f81df189ca89ec0dd141c1433d48eff4c6e53648b46f008dea8ad2dc574f35f1d4d79 + languageName: node + linkType: hard + +"@lezer/python@npm:^1.1.4": + version: 1.1.16 + resolution: "@lezer/python@npm:1.1.16" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: fb48c64a496c1878248554a82a1a7ba7f8e3f9c73ca0aa1288efe4795b53227fca8d8d3666a7fe0fb1407a730e08da172f0a48daec11d50a686bba7f073ebee6 + languageName: node + linkType: hard + +"@lezer/rust@npm:^1.0.0": + version: 1.0.2 + resolution: "@lezer/rust@npm:1.0.2" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: fc5e97852b42beeb44a0ebe316dc64e3cc49ff481c22e3e67d6003fc4a5c257fcd94959cfcc76cd154fa172db9b3b4b28de5c09f10550d6e5f14869ddc274e5b + languageName: node + linkType: hard + +"@lezer/xml@npm:^1.0.0": + version: 1.0.6 + resolution: "@lezer/xml@npm:1.0.6" + dependencies: + "@lezer/common": ^1.2.0 + "@lezer/highlight": ^1.0.0 + "@lezer/lr": ^1.0.0 + checksum: 71217d49b9207bd19d69ae98ad406d0c7ff395b6ad118528f3f81455f973e01597cac1ffa2741f2c6739d4ede17edb49573eaa3246f8f5a6da4d97dcb940309d + languageName: node + linkType: hard + "@lumino/algorithm@npm:^2.0.2": version: 2.0.2 resolution: "@lumino/algorithm@npm:2.0.2" @@ -2982,6 +3911,13 @@ __metadata: languageName: node linkType: hard +"crelt@npm:^1.0.5": + version: 1.0.6 + resolution: "crelt@npm:1.0.6" + checksum: dad842093371ad702afbc0531bfca2b0a8dd920b23a42f26e66dabbed9aad9acd5b9030496359545ef3937c3aced0fd4ac39f7a2d280a23ddf9eb7fdcb94a69f + languageName: node + linkType: hard + "cross-spawn@npm:^6.0.5": version: 6.0.6 resolution: "cross-spawn@npm:6.0.6" @@ -5518,6 +6454,7 @@ __metadata: dependencies: "@jupyterlab/application": ^4.3.2 "@jupyterlab/builder": ^4.3.2 + "@jupyterlab/notebook": ^4.3.2 "@jupyterlab/settingregistry": ^4.3.2 "@lumino/coreutils": ^2.2.0 languageName: unknown @@ -5824,6 +6761,13 @@ __metadata: languageName: node linkType: hard +"lodash.mergewith@npm:^4.6.1": + version: 4.6.2 + resolution: "lodash.mergewith@npm:4.6.2" + checksum: a6db2a9339752411f21b956908c404ec1e088e783a65c8b29e30ae5b3b6384f82517662d6f425cc97c2070b546cc2c7daaa8d33f78db7b6e9be06cd834abdeb8 + languageName: node + linkType: hard + "lodash.truncate@npm:^4.4.2": version: 4.4.2 resolution: "lodash.truncate@npm:4.4.2" @@ -8453,6 +9397,13 @@ __metadata: languageName: node linkType: hard +"style-mod@npm:^4.0.0, style-mod@npm:^4.1.0": + version: 4.1.2 + resolution: "style-mod@npm:4.1.2" + checksum: 7c5c3e82747f9bcf5f288d8d07f50848e4630fe5ff7bfe4d94cc87d6b6a2588227cbf21b4c792ac6406e5852293300a75e710714479a5c59a06af677f0825ef8 + languageName: node + linkType: hard + "style-search@npm:^0.1.0": version: 0.1.0 resolution: "style-search@npm:0.1.0" @@ -9190,6 +10141,60 @@ __metadata: languageName: node linkType: hard +"vscode-jsonrpc@npm:8.2.0": + version: 8.2.0 + resolution: "vscode-jsonrpc@npm:8.2.0" + checksum: f302a01e59272adc1ae6494581fa31c15499f9278df76366e3b97b2236c7c53ebfc71efbace9041cfd2caa7f91675b9e56f2407871a1b3c7f760a2e2ee61484a + languageName: node + linkType: hard + +"vscode-jsonrpc@npm:^6.0.0": + version: 6.0.0 + resolution: "vscode-jsonrpc@npm:6.0.0" + checksum: 3a67a56f287e8c449f2d9752eedf91e704dc7b9a326f47fb56ac07667631deb45ca52192e9bccb2ab108764e48409d70fa64b930d46fc3822f75270b111c5f53 + languageName: node + linkType: hard + +"vscode-jsonrpc@npm:^8.0.2": + version: 8.2.1 + resolution: "vscode-jsonrpc@npm:8.2.1" + checksum: 2af2c333d73f6587896a7077978b8d4b430e55c674d5dbb90597a84a6647057c1655a3bff398a9b08f1f8ba57dbd2deabf05164315829c297b0debba3b8bc19e + languageName: node + linkType: hard + +"vscode-languageserver-protocol@npm:^3.17.0": + version: 3.17.5 + resolution: "vscode-languageserver-protocol@npm:3.17.5" + dependencies: + vscode-jsonrpc: 8.2.0 + vscode-languageserver-types: 3.17.5 + checksum: dfb42d276df5dfea728267885b99872ecff62f6c20448b8539fae71bb196b420f5351c5aca7c1047bf8fb1f89fa94a961dce2bc5bf7e726198f4be0bb86a1e71 + languageName: node + linkType: hard + +"vscode-languageserver-types@npm:3.17.5": + version: 3.17.5 + resolution: "vscode-languageserver-types@npm:3.17.5" + checksum: 79b420e7576398d396579ca3a461c9ed70e78db4403cd28bbdf4d3ed2b66a2b4114031172e51fad49f0baa60a2180132d7cb2ea35aa3157d7af3c325528210ac + languageName: node + linkType: hard + +"vscode-ws-jsonrpc@npm:~1.0.2": + version: 1.0.2 + resolution: "vscode-ws-jsonrpc@npm:1.0.2" + dependencies: + vscode-jsonrpc: ^8.0.2 + checksum: eb2fdb5c96f124326505f06564dfc6584318b748fd6e39b4c0ba16a0d383d13ba0e9433596abdb841428dfc2a5501994c3206723d1cb38c6af5fcac1faf4be26 + languageName: node + linkType: hard + +"w3c-keyname@npm:^2.2.4": + version: 2.2.8 + resolution: "w3c-keyname@npm:2.2.8" + checksum: 95bafa4c04fa2f685a86ca1000069c1ec43ace1f8776c10f226a73296caeddd83f893db885c2c220ebeb6c52d424e3b54d7c0c1e963bbf204038ff1a944fbb07 + languageName: node + linkType: hard + "walk-up-path@npm:^3.0.1": version: 3.0.1 resolution: "walk-up-path@npm:3.0.1" From 29c32b02d6a9487b6d1ce1dced089fc712e416ae Mon Sep 17 00:00:00 2001 From: Greg Date: Wed, 19 Mar 2025 17:36:58 +0100 Subject: [PATCH 35/38] Remove demo stuff from tests --- ui-tests/package.json | 3 +-- ui-tests/playwright.config.js | 8 +------- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/ui-tests/package.json b/ui-tests/package.json index e83f07d..0eb61e1 100644 --- a/ui-tests/package.json +++ b/ui-tests/package.json @@ -4,8 +4,7 @@ "description": "JupyterLab jupyter-iframe-commands Integration Tests", "private": true, "scripts": { - "start:lab": "jupyter lab --config jupyter_server_test_config.py", - "start:server": "jlpm --cwd ../demo start:local", + "start": "jupyter lab --config jupyter_server_test_config.py", "test": "jlpm playwright test", "test:update": "jlpm playwright test --update-snapshots" }, diff --git a/ui-tests/playwright.config.js b/ui-tests/playwright.config.js index d4b01f5..d5e11cf 100644 --- a/ui-tests/playwright.config.js +++ b/ui-tests/playwright.config.js @@ -11,16 +11,10 @@ module.exports = { }, webServer: [ { - command: 'jlpm start:lab', + command: 'jlpm start', url: 'http://localhost:8888/lab', timeout: 120 * 1000, reuseExistingServer: !process.env.CI - }, - { - command: 'jlpm start:server', - url: 'http://localhost:8080', - timeout: 120 * 1000, - reuseExistingServer: !process.env.CI } ] }; From e726bfa69a2a49f93e173e7a652942b609174156 Mon Sep 17 00:00:00 2001 From: Greg Date: Mon, 31 Mar 2025 13:35:04 +0200 Subject: [PATCH 36/38] Restore demo --- .github/workflows/build.yml | 66 +++ demo/config/jupyter-lite.json | 11 + demo/config/overrides.json | 5 + demo/example.ipynb | 73 +++ demo/index.html | 64 +++ demo/jupyter_server_config.py | 15 + demo/package.json | 24 + demo/src/main.js | 159 +++++++ demo/src/style.css | 260 +++++++++++ demo/src/vite-env.d.ts | 1 + demo/tsconfig.json | 23 + package.json | 3 +- yarn.lock | 821 +++++++++++++++++++++++++++++++++- 13 files changed, 1520 insertions(+), 5 deletions(-) create mode 100644 demo/config/jupyter-lite.json create mode 100644 demo/config/overrides.json create mode 100644 demo/example.ipynb create mode 100644 demo/index.html create mode 100644 demo/jupyter_server_config.py create mode 100644 demo/package.json create mode 100644 demo/src/main.js create mode 100644 demo/src/style.css create mode 100644 demo/src/vite-env.d.ts create mode 100644 demo/tsconfig.json diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 78108f7..24c9083 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -157,3 +157,69 @@ jobs: - uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1 with: ignore_links: https://github.com/TileDB-Inc/jupyter-iframe-commands/.* + + build-lite: + name: Build JupyterLite + needs: build + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Python + uses: actions/setup-python@v5 + with: + python-version: '3.12' + + - name: Set up Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'yarn' + + - name: Install the dependencies + run: | + set -eux + python -m pip install -r requirements.txt + jlpm + jlpm build + python -m pip install . + + - name: Build the JupyterLite assets + working-directory: demo + run: | + jlpm clean:lite + jlpm build:lite + + - name: Install and build Vite dependencies + working-directory: demo + run: | + jlpm + jlpm build:ghpages + + - name: Setup Pages + uses: actions/configure-pages@v4 + + - name: Upload artifact + id: deployment + uses: actions/upload-pages-artifact@v3 + with: + path: ./demo/dist + + deploy: + needs: build-lite + if: github.ref == 'refs/heads/main' + permissions: + contents: read + pages: write + id-token: write + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/demo/config/jupyter-lite.json b/demo/config/jupyter-lite.json new file mode 100644 index 0000000..7ae9232 --- /dev/null +++ b/demo/config/jupyter-lite.json @@ -0,0 +1,11 @@ +{ + "jupyter-lite-schema-version": 0, + "jupyter-config-data": { + "disabledExtensions": [ + "@jupyterlab/mainmenu-extension", + "@jupyterlite/application-extension:logo", + "@jupyterlab/help-extension:resources", + "@jupyter-notebook/lab-extension" + ] + } +} diff --git a/demo/config/overrides.json b/demo/config/overrides.json new file mode 100644 index 0000000..c49df8f --- /dev/null +++ b/demo/config/overrides.json @@ -0,0 +1,5 @@ +{ + "@jupyter-notebook/application-extension:top": { + "visible": "no" + } +} diff --git a/demo/example.ipynb b/demo/example.ipynb new file mode 100644 index 0000000..8f7e275 --- /dev/null +++ b/demo/example.ipynb @@ -0,0 +1,73 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example Notebook\n", + "\n", + "This is a simple example notebook that demonstrates basic Python functionality." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Create a simple list of numbers\n", + "numbers = list(range(1, 6))\n", + "print(f\"Numbers: {numbers}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Calculate the sum and average\n", + "total = sum(numbers)\n", + "average = total / len(numbers)\n", + "\n", + "print(f\"Sum: {total}\")\n", + "print(f\"Average: {average}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Create a simple multiplication table\n", + "n = 5\n", + "for i in range(1, n + 1):\n", + " for j in range(1, n + 1):\n", + " print(f\"{i * j:3}\", end=\" \")\n", + " print()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.8" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/demo/index.html b/demo/index.html new file mode 100644 index 0000000..da97418 --- /dev/null +++ b/demo/index.html @@ -0,0 +1,64 @@ + + + + + + + + + Jupyter IFrame Commands Demo + + + +

    + + + + diff --git a/demo/jupyter_server_config.py b/demo/jupyter_server_config.py new file mode 100644 index 0000000..414d82b --- /dev/null +++ b/demo/jupyter_server_config.py @@ -0,0 +1,15 @@ +# do not open JupyterLab in a browser after starting +c.ServerApp.open_browser = False + +# disable the token for easier testing in an IFrame +c.ServerApp.token = "" + +# Allow embedding JupyterLab in an IFrame from a specific host +c.ServerApp.tornado_settings = { + "headers": { + "Content-Security-Policy": "frame-ancestors 'self' http://localhost:8080 http://127.0.0.1:8080" + } +} +c.ServerApp.allow_origin = "http://localhost:8080" + +c.ServerApp.disable_check_xsrf = True diff --git a/demo/package.json b/demo/package.json new file mode 100644 index 0000000..67028c0 --- /dev/null +++ b/demo/package.json @@ -0,0 +1,24 @@ +{ + "name": "jupyter-iframe-commands-demo", + "private": true, + "version": "0.1.0", + "type": "module", + "scripts": { + "dev": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite", + "build": "tsc && VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite build --base=./", + "build:ghpages": "tsc && VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite build --base=./", + "build:lite": "jlpm clean:lite && jupyter lite build --contents ../README.md --contents ./example.ipynb --lite-dir ./config --output-dir ./public/lite", + "clean:lite": "rm -rf public/lite", + "preview": "VITE_DEMO_SRC='./lite/index.html' VITE_TITLE='Lite' vite preview", + "start:lab": "jupyter lab --config jupyter_server_config.py", + "start:lite": "jlpm dev", + "start:local": "VITE_DEMO_SRC='http://localhost:8888' VITE_TITLE='Local' vite --port 8080" + }, + "dependencies": { + "jupyter-iframe-commands-host": "^0.1.0" + }, + "devDependencies": { + "typescript": "~5.6.2", + "vite": "^6.0.1" + } +} diff --git a/demo/src/main.js b/demo/src/main.js new file mode 100644 index 0000000..06a4ba1 --- /dev/null +++ b/demo/src/main.js @@ -0,0 +1,159 @@ +/* eslint-disable @typescript-eslint/quotes */ +/* eslint-disable no-undef */ +import { createBridge } from 'jupyter-iframe-commands-host'; + +const commandBridge = createBridge({ iframeId: 'jupyterlab' }); + +const submitCommand = async (command, args) => { + try { + await commandBridge.execute(command, args ? JSON.parse(args) : {}); + } catch (e) { + document.getElementById('error-dialog').innerHTML = `${e}`; + errorDialog.showModal(); + } +}; + +// Create and append dialogs to the document +const instructionsDialog = document.createElement('dialog'); +instructionsDialog.innerHTML = ` +
    +
    +

    Instructions

    +

    To use this demo simply enter a command in the command input and any arguments for that command in the args input.

    +

    Click the List Available Commands button to see a list of available commands.

    +
    +

    Some commands are listed here for convenience:

    +
    +
      +
    • application:toggle-left-area
    • +
    • apputils:activate-command-palette
    • +
    • apputils:display-shortcuts
    • +
    • notebook:create-new
    • +
    +
    +

    And some with arguments:

    +
    +
      +
    • Command: apputils:change-theme
    • +
    • Args: { 'theme': 'JupyterLab Light' }
    • +
      +
    • Command: apputils:change-theme
    • +
    • Args: { 'theme': 'JupyterLab Dark' }
    • +
    +
    +
    +

    For even more convenience you can also select a command from the dropdown:

    + +
    +
    + + +
    +
    +
    + Check the README for more detailed instructions. +
    +`; + +const listCommandsDialog = document.createElement('dialog'); +listCommandsDialog.innerHTML = ` +
    +

    Available Commands

    +
    +
    + +
    +
    +`; + +const errorDialog = document.createElement('dialog'); +errorDialog.innerHTML = ` +
    +

    âš  Error

    +
    +
    + +
    +
    +`; + +document.body.appendChild(instructionsDialog); +document.body.appendChild(listCommandsDialog); +document.body.appendChild(errorDialog); + +document.getElementById('instructions').addEventListener('click', () => { + instructionsDialog.showModal(); +}); + +document + .getElementById('command-select-submit') + .addEventListener('click', async e => { + e.preventDefault(); + const select = document.getElementById('command-select'); + let command = select.value; + + if (command) { + let args; + if (command.includes('Light') || command.includes('Dark')) { + args = `{"theme": "${command}"}`; + command = 'apputils:change-theme'; + } + await submitCommand(command, args); + } + instructionsDialog.close(); + }); + +document.getElementById('list-commands').addEventListener('click', async () => { + const commands = await commandBridge.listCommands(); + commands.sort(); + document.getElementById('commands-list').innerHTML = commands + .map(item => `
    ${item}
    `) + .join(''); + listCommandsDialog.showModal(); +}); + +document.getElementById('commands').addEventListener('submit', async e => { + e.preventDefault(); + const command = document.querySelector('input[name="command"]').value; + + // Single quotes cause an error + const args = document + .querySelector('input[name="args"]') + .value.replace(/'/g, '"'); + + await submitCommand(command, args); +}); + +// Handle mode toggle +const iframe = document.getElementById('jupyterlab'); +const modeRadios = document.querySelectorAll('input[name="mode"]'); + +modeRadios.forEach(radio => { + radio.addEventListener('change', e => { + const isNotebookView = e.target.value === 'notebook'; + let currentUrl = new URL(iframe.src); + const isLite = currentUrl.pathname.includes('lite'); + + if (isLite) { + currentUrl = `./lite/${isNotebookView ? 'notebooks/index.html?path=example.ipynb' : 'lab'}`; + } else { + currentUrl.pathname = isNotebookView + ? '/notebooks/example.ipynb' + : '/lab'; + currentUrl.search = ''; + } + + iframe.src = currentUrl.toString(); + }); +}); diff --git a/demo/src/style.css b/demo/src/style.css new file mode 100644 index 0000000..73ca349 --- /dev/null +++ b/demo/src/style.css @@ -0,0 +1,260 @@ +:root { + --primary-color: #3498db; + --primary-hover: #2980b9; + --background-color: #f8f9fa; + --text-color: #2c3e50; + --border-color: #e0e0e0; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, + 'Helvetica Neue', Arial, sans-serif; + color: var(--text-color); + background-color: var(--background-color); + display: flex; + flex-direction: column; +} + +.demo-top { + display: flex; + flex-direction: column; + align-items: center; + padding: 1.5rem; + background-color: white; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); +} + +h1 { + margin: 0 0 1.5rem 0; + color: var(--text-color); + font-size: 2rem; + font-weight: 600; +} + +.input-area { + display: flex; + flex-direction: column; + gap: 1rem; + width: 100%; + max-width: 800px; +} + +#commands { + display: flex; + gap: 1rem; + width: 100%; + flex-wrap: wrap; +} + +input[type='text'] { + flex: 1; + min-width: 200px; + padding: 0.75rem 1rem; + border: 1px solid var(--border-color); + border-radius: 6px; + font-size: 1rem; + transition: + border-color 0.2s, + box-shadow 0.2s; +} + +input[type='text']:focus { + outline: none; + border-color: var(--primary-color); + box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); +} + +.button-row { + display: flex; + gap: 1rem; + margin-bottom: 1.5rem; + justify-content: center; +} + +.button-row button { + padding: 0.5rem 1rem; + border: none; + border-radius: 4px; + cursor: pointer; + font-size: 1rem; + display: inline-flex; + align-items: center; + gap: 0.5rem; + color: inherit; +} + +button { + padding: 0.75rem 1.5rem; + background-color: var(--primary-color); + color: white; + border: none; + border-radius: 6px; + font-size: 1rem; + font-weight: 500; + cursor: pointer; + transition: + background-color 0.2s, + transform 0.1s; +} + +button:hover { + background-color: var(--primary-hover); +} + +button:active { + transform: translateY(1px); +} + +#list-commands { + background-color: transparent; + color: var(--primary-color); + border: 1px solid var(--primary-color); +} + +#list-commands:hover { + background-color: rgba(52, 152, 219, 0.1); +} + +#instructions { + background-color: transparent; + color: var(--primary-color); + border: 1px solid var(--primary-color); +} + +#instructions:hover { + background-color: rgba(52, 152, 219, 0.1); +} + +/* Dialog styles */ +dialog { + padding: 2rem; + max-width: 600px; + border: none; + border-radius: 12px; + box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); + background: white; +} + +dialog::backdrop { + background: rgba(0, 0, 0, 0.6); + backdrop-filter: blur(2px); +} + +dialog form { + display: flex; + flex-direction: column; + gap: 1.5rem; +} + +dialog select { + width: 100%; + padding: 0.75rem; + border: 1px solid var(--border-color); + border-radius: 6px; + font-size: 1rem; + background-color: white; +} + +dialog select:focus { + outline: none; + border-color: var(--primary-color); + box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1); +} + +dialog button[value='cancel'], +dialog button[value='close'] { + background-color: transparent; + color: var(--text-color); + border: 1px solid var(--border-color); + align-items: right; +} + +dialog button[value='cancel']:hover, +dialog button[value='close']:hover { + background-color: rgba(0, 0, 0, 0.05); +} + +.dialog-buttons { + display: flex; + justify-content: flex-end; + gap: 0.5rem; + margin-top: 1rem; +} + +#commands-list { + max-height: 300px; + overflow-y: auto; + padding: 0.5rem; + margin: -0.5rem 0; + font-family: monospace; +} + +#commands-list div { + padding: 0.25rem 0; +} + +/* Responsive iframe */ +#jupyterlab { + width: calc(100% - 0.5vw); + height: calc(100vh - 200px); + border: none; + border-radius: 8px; + margin-top: 0.25vw; + background-color: white; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); + align-self: center; +} + +.mode-toggle { + display: flex; + gap: 0; + align-items: center; + border-radius: 6px; + background-color: #f0f0f0; + border: 1px solid #e0e0e0; +} + +.mode-toggle label { + display: flex; + height: 100%; + align-items: center; + gap: 0.5rem; + cursor: pointer; + padding: 4px 12px; + border-radius: 4px; + transition: + background-color 0.2s, + color 0.2s; +} + +.mode-toggle label:hover { + background-color: #e4e4e4; +} + +.mode-toggle input[type='radio'] { + position: absolute; + opacity: 0; + width: 0; + height: 0; +} + +.mode-toggle input[type='radio']:checked + span { + color: white; +} + +.mode-toggle input[type='radio']:focus + span { + outline: 2px solid #3498db; + outline-offset: 2px; +} + +.mode-toggle label:has(input[type='radio']:checked) { + background-color: #3498db; + color: white; +} + +.mode-toggle span { + font-size: 0.9rem; + font-weight: 500; + user-select: none; +} diff --git a/demo/src/vite-env.d.ts b/demo/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/demo/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/demo/tsconfig.json b/demo/tsconfig.json new file mode 100644 index 0000000..0511b9f --- /dev/null +++ b/demo/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "target": "ES2020", + "useDefineForClassFields": true, + "module": "ESNext", + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"] +} diff --git a/package.json b/package.json index 3f107f0..99b440d 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,8 @@ "license": "BSD-3-Clause", "author": "QuantStack", "workspaces": [ - "packages/*" + "packages/*", + "demo/" ], "scripts": { "build": "lerna run build", diff --git a/yarn.lock b/yarn.lock index 0dfb496..b3184d7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -348,6 +348,181 @@ __metadata: languageName: node linkType: hard +"@esbuild/aix-ppc64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/aix-ppc64@npm:0.25.2" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/android-arm64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/android-arm64@npm:0.25.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/android-arm@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/android-arm@npm:0.25.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@esbuild/android-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/android-x64@npm:0.25.2" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/darwin-arm64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/darwin-arm64@npm:0.25.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/darwin-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/darwin-x64@npm:0.25.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/freebsd-arm64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/freebsd-arm64@npm:0.25.2" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/freebsd-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/freebsd-x64@npm:0.25.2" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/linux-arm64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-arm64@npm:0.25.2" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/linux-arm@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-arm@npm:0.25.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@esbuild/linux-ia32@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-ia32@npm:0.25.2" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/linux-loong64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-loong64@npm:0.25.2" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + +"@esbuild/linux-mips64el@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-mips64el@npm:0.25.2" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + +"@esbuild/linux-ppc64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-ppc64@npm:0.25.2" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/linux-riscv64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-riscv64@npm:0.25.2" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"@esbuild/linux-s390x@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-s390x@npm:0.25.2" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + +"@esbuild/linux-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/linux-x64@npm:0.25.2" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/netbsd-arm64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/netbsd-arm64@npm:0.25.2" + conditions: os=netbsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/netbsd-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/netbsd-x64@npm:0.25.2" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/openbsd-arm64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/openbsd-arm64@npm:0.25.2" + conditions: os=openbsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/openbsd-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/openbsd-x64@npm:0.25.2" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/sunos-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/sunos-x64@npm:0.25.2" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/win32-arm64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/win32-arm64@npm:0.25.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/win32-ia32@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/win32-ia32@npm:0.25.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/win32-x64@npm:0.25.2": + version: 0.25.2 + resolution: "@esbuild/win32-x64@npm:0.25.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": version: 4.5.0 resolution: "@eslint-community/eslint-utils@npm:4.5.0" @@ -443,6 +618,15 @@ __metadata: languageName: node linkType: hard +"@isaacs/fs-minipass@npm:^4.0.0": + version: 4.0.1 + resolution: "@isaacs/fs-minipass@npm:4.0.1" + dependencies: + minipass: ^7.0.4 + checksum: 5d36d289960e886484362d9eb6a51d1ea28baed5f5d0140bbe62b99bac52eaf06cc01c2bc0d3575977962f84f6b2c4387b043ee632216643d4787b0999465bf2 + languageName: node + linkType: hard + "@isaacs/string-locale-compare@npm:^1.1.0": version: 1.1.0 resolution: "@isaacs/string-locale-compare@npm:1.1.0" @@ -1876,6 +2060,19 @@ __metadata: languageName: node linkType: hard +"@npmcli/agent@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/agent@npm:3.0.0" + dependencies: + agent-base: ^7.1.0 + http-proxy-agent: ^7.0.0 + https-proxy-agent: ^7.0.1 + lru-cache: ^10.0.1 + socks-proxy-agent: ^8.0.3 + checksum: e8fc25d536250ed3e669813b36e8c6d805628b472353c57afd8c4fde0fcfcf3dda4ffe22f7af8c9070812ec2e7a03fb41d7151547cef3508efe661a5a3add20f + languageName: node + linkType: hard + "@npmcli/arborist@npm:7.5.4": version: 7.5.4 resolution: "@npmcli/arborist@npm:7.5.4" @@ -1930,6 +2127,15 @@ __metadata: languageName: node linkType: hard +"@npmcli/fs@npm:^4.0.0": + version: 4.0.0 + resolution: "@npmcli/fs@npm:4.0.0" + dependencies: + semver: ^7.3.5 + checksum: 68951c589e9a4328698a35fd82fe71909a257d6f2ede0434d236fa55634f0fbcad9bb8755553ce5849bd25ee6f019f4d435921ac715c853582c4a7f5983c8d4a + languageName: node + linkType: hard + "@npmcli/git@npm:^5.0.0": version: 5.0.8 resolution: "@npmcli/git@npm:5.0.8" @@ -2332,6 +2538,146 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.38.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-android-arm64@npm:4.38.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-darwin-arm64@npm:4.38.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-darwin-x64@npm:4.38.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-freebsd-arm64@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.38.0" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-freebsd-x64@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-freebsd-x64@npm:4.38.0" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.38.0" + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-musleabihf@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.38.0" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.38.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.38.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-loongarch64-gnu@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.38.0" + conditions: os=linux & cpu=loong64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.38.0" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.38.0" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-musl@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.38.0" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-s390x-gnu@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.38.0" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.38.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.38.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.38.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.38.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.38.0": + version: 4.38.0 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.38.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@sigstore/bundle@npm:^2.3.2": version: 2.3.2 resolution: "@sigstore/bundle@npm:2.3.2" @@ -2459,6 +2805,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:1.0.7": + version: 1.0.7 + resolution: "@types/estree@npm:1.0.7" + checksum: d9312b7075bdd08f3c9e1bb477102f5458aaa42a8eec31a169481ce314ca99ac716645cff4fca81ea65a2294b0276a0de63159d1baca0f8e7b5050a92de950ad + languageName: node + linkType: hard + "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" @@ -2939,6 +3292,13 @@ __metadata: languageName: node linkType: hard +"abbrev@npm:^3.0.0": + version: 3.0.0 + resolution: "abbrev@npm:3.0.0" + checksum: 2500075b5ef85e97c095ab6ab2ea640dcf90bb388f46398f4d347b296f53399f984ec9462c74bee81df6bba56ef5fd9dbc2fb29076b1feb0023e0f52d43eb984 + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -3376,6 +3736,26 @@ __metadata: languageName: node linkType: hard +"cacache@npm:^19.0.1": + version: 19.0.1 + resolution: "cacache@npm:19.0.1" + dependencies: + "@npmcli/fs": ^4.0.0 + fs-minipass: ^3.0.0 + glob: ^10.2.2 + lru-cache: ^10.0.1 + minipass: ^7.0.3 + minipass-collect: ^2.0.1 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + p-map: ^7.0.2 + ssri: ^12.0.0 + tar: ^7.4.3 + unique-filename: ^4.0.0 + checksum: e95684717de6881b4cdaa949fa7574e3171946421cd8291769dd3d2417dbf7abf4aa557d1f968cca83dcbc95bed2a281072b09abfc977c942413146ef7ed4525 + languageName: node + linkType: hard + "call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": version: 1.0.2 resolution: "call-bind-apply-helpers@npm:1.0.2" @@ -3504,6 +3884,13 @@ __metadata: languageName: node linkType: hard +"chownr@npm:^3.0.0": + version: 3.0.0 + resolution: "chownr@npm:3.0.0" + checksum: fd73a4bab48b79e66903fe1cafbdc208956f41ea4f856df883d0c7277b7ab29fd33ee65f93b2ec9192fc0169238f2f8307b7735d27c155821d886b84aa97aa8d + languageName: node + linkType: hard + "chrome-trace-event@npm:^1.0.2": version: 1.0.4 resolution: "chrome-trace-event@npm:1.0.4" @@ -4546,6 +4933,92 @@ __metadata: languageName: node linkType: hard +"esbuild@npm:^0.25.0": + version: 0.25.2 + resolution: "esbuild@npm:0.25.2" + dependencies: + "@esbuild/aix-ppc64": 0.25.2 + "@esbuild/android-arm": 0.25.2 + "@esbuild/android-arm64": 0.25.2 + "@esbuild/android-x64": 0.25.2 + "@esbuild/darwin-arm64": 0.25.2 + "@esbuild/darwin-x64": 0.25.2 + "@esbuild/freebsd-arm64": 0.25.2 + "@esbuild/freebsd-x64": 0.25.2 + "@esbuild/linux-arm": 0.25.2 + "@esbuild/linux-arm64": 0.25.2 + "@esbuild/linux-ia32": 0.25.2 + "@esbuild/linux-loong64": 0.25.2 + "@esbuild/linux-mips64el": 0.25.2 + "@esbuild/linux-ppc64": 0.25.2 + "@esbuild/linux-riscv64": 0.25.2 + "@esbuild/linux-s390x": 0.25.2 + "@esbuild/linux-x64": 0.25.2 + "@esbuild/netbsd-arm64": 0.25.2 + "@esbuild/netbsd-x64": 0.25.2 + "@esbuild/openbsd-arm64": 0.25.2 + "@esbuild/openbsd-x64": 0.25.2 + "@esbuild/sunos-x64": 0.25.2 + "@esbuild/win32-arm64": 0.25.2 + "@esbuild/win32-ia32": 0.25.2 + "@esbuild/win32-x64": 0.25.2 + dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-arm64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-arm64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: 2c4e91948b939e711e9342e692fc3c8b0a95acbc1fc9c7628db6092c4aef7c32aa643b2782111625871756084536cebc4831b3f1d5c3b6bd4e4774e21bc4bbea + languageName: node + linkType: hard + "escalade@npm:^3.1.1, escalade@npm:^3.2.0": version: 3.2.0 resolution: "escalade@npm:3.2.0" @@ -5072,6 +5545,25 @@ __metadata: languageName: node linkType: hard +"fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" + dependencies: + node-gyp: latest + checksum: 11e6ea6fea15e42461fc55b4b0e4a0a3c654faa567f1877dbd353f39156f69def97a69936d1746619d656c4b93de2238bf731f6085a03a50cabf287c9d024317 + conditions: os=darwin + languageName: node + linkType: hard + +"fsevents@patch:fsevents@~2.3.2#~builtin, fsevents@patch:fsevents@~2.3.3#~builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=df0bf1" + dependencies: + node-gyp: latest + conditions: os=darwin + languageName: node + linkType: hard + "function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" @@ -6409,7 +6901,17 @@ __metadata: languageName: node linkType: hard -"jupyter-iframe-commands-host@workspace:packages/host": +"jupyter-iframe-commands-demo@workspace:demo": + version: 0.0.0-use.local + resolution: "jupyter-iframe-commands-demo@workspace:demo" + dependencies: + jupyter-iframe-commands-host: ^0.1.0 + typescript: ~5.6.2 + vite: ^6.0.1 + languageName: unknown + linkType: soft + +"jupyter-iframe-commands-host@^0.1.0, jupyter-iframe-commands-host@workspace:packages/host": version: 0.0.0-use.local resolution: "jupyter-iframe-commands-host@workspace:packages/host" dependencies: @@ -6858,6 +7360,25 @@ __metadata: languageName: node linkType: hard +"make-fetch-happen@npm:^14.0.3": + version: 14.0.3 + resolution: "make-fetch-happen@npm:14.0.3" + dependencies: + "@npmcli/agent": ^3.0.0 + cacache: ^19.0.1 + http-cache-semantics: ^4.1.1 + minipass: ^7.0.2 + minipass-fetch: ^4.0.0 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + negotiator: ^1.0.0 + proc-log: ^5.0.0 + promise-retry: ^2.0.1 + ssri: ^12.0.0 + checksum: 6fb2fee6da3d98f1953b03d315826b5c5a4ea1f908481afc113782d8027e19f080c85ae998454de4e5f27a681d3ec58d57278f0868d4e0b736f51d396b661691 + languageName: node + linkType: hard + "map-obj@npm:^1.0.0": version: 1.0.1 resolution: "map-obj@npm:1.0.1" @@ -7119,6 +7640,21 @@ __metadata: languageName: node linkType: hard +"minipass-fetch@npm:^4.0.0": + version: 4.0.1 + resolution: "minipass-fetch@npm:4.0.1" + dependencies: + encoding: ^0.1.13 + minipass: ^7.0.3 + minipass-sized: ^1.0.3 + minizlib: ^3.0.1 + dependenciesMeta: + encoding: + optional: true + checksum: 3dfca705ce887ca9ff14d73e8d8593996dea1a1ecd8101fdbb9c10549d1f9670bc8fb66ad0192769ead4c2dc01b4f9ca1cf567ded365adff17827a303b948140 + languageName: node + linkType: hard + "minipass-flush@npm:^1.0.5": version: 1.0.5 resolution: "minipass-flush@npm:1.0.5" @@ -7169,7 +7705,7 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.1.2": +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": version: 7.1.2 resolution: "minipass@npm:7.1.2" checksum: 2bfd325b95c555f2b4d2814d49325691c7bee937d753814861b0b49d5edcda55cbbf22b6b6a60bb91eddac8668771f03c5ff647dcd9d0f798e9548b9cdc46ee3 @@ -7186,6 +7722,16 @@ __metadata: languageName: node linkType: hard +"minizlib@npm:^3.0.1": + version: 3.0.1 + resolution: "minizlib@npm:3.0.1" + dependencies: + minipass: ^7.0.4 + rimraf: ^5.0.5 + checksum: da0a53899252380475240c587e52c824f8998d9720982ba5c4693c68e89230718884a209858c156c6e08d51aad35700a3589987e540593c36f6713fe30cd7338 + languageName: node + linkType: hard + "mkdirp@npm:^1.0.3": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" @@ -7195,6 +7741,15 @@ __metadata: languageName: node linkType: hard +"mkdirp@npm:^3.0.1": + version: 3.0.1 + resolution: "mkdirp@npm:3.0.1" + bin: + mkdirp: dist/cjs/src/bin.js + checksum: 972deb188e8fb55547f1e58d66bd6b4a3623bf0c7137802582602d73e6480c1c2268dcbafbfb1be466e00cc7e56ac514d7fd9334b7cf33e3e2ab547c16f83a8d + languageName: node + linkType: hard + "modify-values@npm:^1.0.1": version: 1.0.1 resolution: "modify-values@npm:1.0.1" @@ -7259,6 +7814,13 @@ __metadata: languageName: node linkType: hard +"negotiator@npm:^1.0.0": + version: 1.0.0 + resolution: "negotiator@npm:1.0.0" + checksum: 20ebfe79b2d2e7cf9cbc8239a72662b584f71164096e6e8896c8325055497c96f6b80cd22c258e8a2f2aa382a787795ec3ee8b37b422a302c7d4381b0d5ecfbb + languageName: node + linkType: hard + "neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" @@ -7307,6 +7869,26 @@ __metadata: languageName: node linkType: hard +"node-gyp@npm:latest": + version: 11.1.0 + resolution: "node-gyp@npm:11.1.0" + dependencies: + env-paths: ^2.2.0 + exponential-backoff: ^3.1.1 + glob: ^10.3.10 + graceful-fs: ^4.2.6 + make-fetch-happen: ^14.0.3 + nopt: ^8.0.0 + proc-log: ^5.0.0 + semver: ^7.3.5 + tar: ^7.4.3 + which: ^5.0.0 + bin: + node-gyp: bin/node-gyp.js + checksum: b196da39a7a45f302d6e03cfdb579eeecbfffa1ab3796de45652c2c0dcbf46b83fde715b054e4d00aa53da5f33033ac5791e20cbb7cc11267dac4f8975ef276c + languageName: node + linkType: hard + "node-machine-id@npm:1.1.12": version: 1.1.12 resolution: "node-machine-id@npm:1.1.12" @@ -7332,6 +7914,17 @@ __metadata: languageName: node linkType: hard +"nopt@npm:^8.0.0": + version: 8.1.0 + resolution: "nopt@npm:8.1.0" + dependencies: + abbrev: ^3.0.0 + bin: + nopt: bin/nopt.js + checksum: 49cfd3eb6f565e292bf61f2ff1373a457238804d5a5a63a8d786c923007498cba89f3648e3b952bc10203e3e7285752abf5b14eaf012edb821e84f24e881a92a + languageName: node + linkType: hard + "normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.5.0": version: 2.5.0 resolution: "normalize-package-data@npm:2.5.0" @@ -7780,6 +8373,13 @@ __metadata: languageName: node linkType: hard +"p-map@npm:^7.0.2": + version: 7.0.3 + resolution: "p-map@npm:7.0.3" + checksum: 8c92d533acf82f0d12f7e196edccff773f384098bbb048acdd55a08778ce4fc8889d8f1bde72969487bd96f9c63212698d79744c20bedfce36c5b00b46d369f8 + languageName: node + linkType: hard + "p-pipe@npm:3.1.0": version: 3.1.0 resolution: "p-pipe@npm:3.1.0" @@ -8166,7 +8766,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33": +"postcss@npm:^8.3.11, postcss@npm:^8.4.28, postcss@npm:^8.4.33, postcss@npm:^8.5.3": version: 8.5.3 resolution: "postcss@npm:8.5.3" dependencies: @@ -8220,6 +8820,13 @@ __metadata: languageName: node linkType: hard +"proc-log@npm:^5.0.0": + version: 5.0.0 + resolution: "proc-log@npm:5.0.0" + checksum: c78b26ecef6d5cce4a7489a1e9923d7b4b1679028c8654aef0463b27f4a90b0946cd598f55799da602895c52feb085ec76381d007ab8dcceebd40b89c2f9dfe0 + languageName: node + linkType: hard + "process-nextick-args@npm:~2.0.0": version: 2.0.1 resolution: "process-nextick-args@npm:2.0.1" @@ -8686,7 +9293,7 @@ __metadata: languageName: node linkType: hard -"rimraf@npm:^5.0.1": +"rimraf@npm:^5.0.1, rimraf@npm:^5.0.5": version: 5.0.10 resolution: "rimraf@npm:5.0.10" dependencies: @@ -8697,6 +9304,81 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.30.1": + version: 4.38.0 + resolution: "rollup@npm:4.38.0" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.38.0 + "@rollup/rollup-android-arm64": 4.38.0 + "@rollup/rollup-darwin-arm64": 4.38.0 + "@rollup/rollup-darwin-x64": 4.38.0 + "@rollup/rollup-freebsd-arm64": 4.38.0 + "@rollup/rollup-freebsd-x64": 4.38.0 + "@rollup/rollup-linux-arm-gnueabihf": 4.38.0 + "@rollup/rollup-linux-arm-musleabihf": 4.38.0 + "@rollup/rollup-linux-arm64-gnu": 4.38.0 + "@rollup/rollup-linux-arm64-musl": 4.38.0 + "@rollup/rollup-linux-loongarch64-gnu": 4.38.0 + "@rollup/rollup-linux-powerpc64le-gnu": 4.38.0 + "@rollup/rollup-linux-riscv64-gnu": 4.38.0 + "@rollup/rollup-linux-riscv64-musl": 4.38.0 + "@rollup/rollup-linux-s390x-gnu": 4.38.0 + "@rollup/rollup-linux-x64-gnu": 4.38.0 + "@rollup/rollup-linux-x64-musl": 4.38.0 + "@rollup/rollup-win32-arm64-msvc": 4.38.0 + "@rollup/rollup-win32-ia32-msvc": 4.38.0 + "@rollup/rollup-win32-x64-msvc": 4.38.0 + "@types/estree": 1.0.7 + fsevents: ~2.3.2 + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-freebsd-arm64": + optional: true + "@rollup/rollup-freebsd-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm-musleabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-loongarch64-gnu": + optional: true + "@rollup/rollup-linux-powerpc64le-gnu": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-riscv64-musl": + optional: true + "@rollup/rollup-linux-s390x-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: b2c44611bb99c2023dcca48ab804aff2fdad5bc8e3ca0693a6971c1fcfb421d6cd48dfb7dc7f836e234ec8b2b5e3392b8ae2d9b9d090d826730225a7d1ae8af2 + languageName: node + linkType: hard + "run-async@npm:^2.4.0": version: 2.4.1 resolution: "run-async@npm:2.4.1" @@ -9221,6 +9903,15 @@ __metadata: languageName: node linkType: hard +"ssri@npm:^12.0.0": + version: 12.0.0 + resolution: "ssri@npm:12.0.0" + dependencies: + minipass: ^7.0.3 + checksum: ef4b6b0ae47b4a69896f5f1c4375f953b9435388c053c36d27998bc3d73e046969ccde61ab659e679142971a0b08e50478a1228f62edb994105b280f17900c98 + languageName: node + linkType: hard + "string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -9619,6 +10310,20 @@ __metadata: languageName: node linkType: hard +"tar@npm:^7.4.3": + version: 7.4.3 + resolution: "tar@npm:7.4.3" + dependencies: + "@isaacs/fs-minipass": ^4.0.0 + chownr: ^3.0.0 + minipass: ^7.1.2 + minizlib: ^3.0.1 + mkdirp: ^3.0.1 + yallist: ^5.0.0 + checksum: 8485350c0688331c94493031f417df069b778aadb25598abdad51862e007c39d1dd5310702c7be4a6784731a174799d8885d2fde0484269aea205b724d7b2ffa + languageName: node + linkType: hard + "temp-dir@npm:1.0.0": version: 1.0.0 resolution: "temp-dir@npm:1.0.0" @@ -9938,6 +10643,16 @@ __metadata: languageName: node linkType: hard +"typescript@npm:~5.6.2": + version: 5.6.3 + resolution: "typescript@npm:5.6.3" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: ba302f8822777ebefb28b554105f3e074466b671e7444ec6b75dadc008a62f46f373d9e57ceced1c433756d06c8b7dc569a7eefdf3a9573122a49205ff99021a + languageName: node + linkType: hard + "typescript@patch:typescript@>=3 < 6#~builtin": version: 5.8.2 resolution: "typescript@patch:typescript@npm%3A5.8.2#~builtin::version=5.8.2&hash=85af82" @@ -9958,6 +10673,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@~5.6.2#~builtin": + version: 5.6.3 + resolution: "typescript@patch:typescript@npm%3A5.6.3#~builtin::version=5.6.3&hash=85af82" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: ade87bce2363ee963eed0e4ca8a312ea02c81873ebd53609bc3f6dc0a57f6e61ad7e3fb8cbb7f7ab8b5081cbee801b023f7c4823ee70b1c447eae050e6c7622b + languageName: node + linkType: hard + "typestyle@npm:^2.0.4": version: 2.4.0 resolution: "typestyle@npm:2.4.0" @@ -10005,6 +10730,15 @@ __metadata: languageName: node linkType: hard +"unique-filename@npm:^4.0.0": + version: 4.0.0 + resolution: "unique-filename@npm:4.0.0" + dependencies: + unique-slug: ^5.0.0 + checksum: 6a62094fcac286b9ec39edbd1f8f64ff92383baa430af303dfed1ffda5e47a08a6b316408554abfddd9730c78b6106bef4ca4d02c1231a735ddd56ced77573df + languageName: node + linkType: hard + "unique-slug@npm:^4.0.0": version: 4.0.0 resolution: "unique-slug@npm:4.0.0" @@ -10014,6 +10748,15 @@ __metadata: languageName: node linkType: hard +"unique-slug@npm:^5.0.0": + version: 5.0.0 + resolution: "unique-slug@npm:5.0.0" + dependencies: + imurmurhash: ^0.1.4 + checksum: 222d0322bc7bbf6e45c08967863212398313ef73423f4125e075f893a02405a5ffdbaaf150f7dd1e99f8861348a486dd079186d27c5f2c60e465b7dcbb1d3e5b + languageName: node + linkType: hard + "universal-user-agent@npm:^6.0.0": version: 6.0.1 resolution: "universal-user-agent@npm:6.0.1" @@ -10141,6 +10884,58 @@ __metadata: languageName: node linkType: hard +"vite@npm:^6.0.1": + version: 6.2.4 + resolution: "vite@npm:6.2.4" + dependencies: + esbuild: ^0.25.0 + fsevents: ~2.3.3 + postcss: ^8.5.3 + rollup: ^4.30.1 + peerDependencies: + "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: ">=1.21.0" + less: "*" + lightningcss: ^1.21.0 + sass: "*" + sass-embedded: "*" + stylus: "*" + sugarss: "*" + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + "@types/node": + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + bin: + vite: bin/vite.js + checksum: 1b3692e1b599481c06875b462e3613b19cd5f3f3890cd418b43d4b5c2dd575e1ea6ed540448c083f1d664c912c42f80d881bc6f3f0c823f0ad2323dc762c8d6b + languageName: node + linkType: hard + "vscode-jsonrpc@npm:8.2.0": version: 8.2.0 resolution: "vscode-jsonrpc@npm:8.2.0" @@ -10453,6 +11248,17 @@ __metadata: languageName: node linkType: hard +"which@npm:^5.0.0": + version: 5.0.0 + resolution: "which@npm:5.0.0" + dependencies: + isexe: ^3.1.1 + bin: + node-which: bin/which.js + checksum: 6ec99e89ba32c7e748b8a3144e64bfc74aa63e2b2eacbb61a0060ad0b961eb1a632b08fb1de067ed59b002cec3e21de18299216ebf2325ef0f78e0f121e14e90 + languageName: node + linkType: hard + "wide-align@npm:1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" @@ -10628,6 +11434,13 @@ __metadata: languageName: node linkType: hard +"yallist@npm:^5.0.0": + version: 5.0.0 + resolution: "yallist@npm:5.0.0" + checksum: eba51182400b9f35b017daa7f419f434424410691bbc5de4f4240cc830fdef906b504424992700dc047f16b4d99100a6f8b8b11175c193f38008e9c96322b6a5 + languageName: node + linkType: hard + "yaml@npm:^2.6.0": version: 2.7.0 resolution: "yaml@npm:2.7.0" From fb5fb4beebe13b04be9e846bcf0df22c31c36dfe Mon Sep 17 00:00:00 2001 From: Greg Date: Tue, 1 Apr 2025 13:16:16 +0200 Subject: [PATCH 37/38] Lint --- demo/src/style.css | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/demo/src/style.css b/demo/src/style.css index 73ca349..335aa3e 100644 --- a/demo/src/style.css +++ b/demo/src/style.css @@ -8,8 +8,9 @@ body { margin: 0; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, - 'Helvetica Neue', Arial, sans-serif; + font-family: + -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', + Arial, sans-serif; color: var(--text-color); background-color: var(--background-color); display: flex; From 1bcb5383300295e392c955b46a470410056c2d7b Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Wed, 23 Apr 2025 14:51:01 +0200 Subject: [PATCH 38/38] remove comments --- packages/extension/src/index.ts | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/packages/extension/src/index.ts b/packages/extension/src/index.ts index ba7d801..51a5c38 100644 --- a/packages/extension/src/index.ts +++ b/packages/extension/src/index.ts @@ -62,21 +62,6 @@ const plugin: JupyterFrontEndPlugin = { const sessions = await SessionAPI.listRunning(); const kernels = await KernelAPI.listRunning(); - // ! also works - // const terminalssm = app.serviceManager.terminals.running(); - // const kernelssm = app.serviceManager.kernels.running(); - // const sessionssm = app.serviceManager.sessions.running(); - - // for (const terminal of terminalssm) { - // console.log('terminal', terminal); - // } - // for (const kernel of kernelssm) { - // console.log('kernel', kernel); - // } - // for (const session of sessionssm) { - // console.log('session', session); - // } - return { terminals, sessions, kernels }; } };