From 0124e3598e036223e5220e170c23640e9faa0bf9 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 22 Aug 2023 15:18:26 +0200 Subject: [PATCH 01/36] meta: add support for TypeScript plugins --- .eslintignore | 1 + .gitignore | 1 + bin/build-lib.js | 45 ++--- e2e/package.json | 2 +- examples/svelte-example/package.json | 2 +- package.json | 3 +- packages/@uppy/companion/package.json | 2 +- private/remark-lint-uppy/package.json | 2 +- tsconfig.json | 27 ++- yarn.lock | 265 ++++++++++++++++++++++++-- 10 files changed, 294 insertions(+), 56 deletions(-) diff --git a/.eslintignore b/.eslintignore index 26bf2ac7b2..7e29261f71 100644 --- a/.eslintignore +++ b/.eslintignore @@ -6,3 +6,4 @@ test/lib/** test/endtoend/*/build examples/svelte-example/public/build/ bundle-legacy.js +packages/@uppy/*/src/*.d.ts diff --git a/.gitignore b/.gitignore index c95631cf94..221ceee099 100644 --- a/.gitignore +++ b/.gitignore @@ -24,6 +24,7 @@ test/endtoend/create-react-app/build/ test/endtoend/create-react-app/coverage/ uppy-*.tgz generatedLocale.d.ts +packages/@uppy/*/src/*.d.ts **/output/* !output/.keep diff --git a/bin/build-lib.js b/bin/build-lib.js index 69985ef2d6..4945955822 100644 --- a/bin/build-lib.js +++ b/bin/build-lib.js @@ -8,9 +8,9 @@ const path = require('node:path') const { mkdir, stat, writeFile } = fs.promises const PACKAGE_JSON_IMPORT = /^\..*\/package.json$/ -const SOURCE = 'packages/{*,@uppy/*}/src/**/*.js?(x)' +const SOURCE = 'packages/{*,@uppy/*}/src/**/*.{js,ts}?(x)' // Files not to build (such as tests) -const IGNORE = /\.test\.js$|__mocks__|svelte|angular|companion\// +const IGNORE = /\.test\.[jt]s$|__mocks__|svelte|angular|companion\// // Files that should trigger a rebuild of everything on change const META_FILES = [ 'babel.config.js', @@ -32,32 +32,28 @@ function lastModified (file, createParentDir = false) { }) } -const moduleTypeCache = new Map() const versionCache = new Map() -async function isTypeModule (file) { - const packageFolder = file.slice(0, file.indexOf('/src/')) - const cachedValue = moduleTypeCache.get(packageFolder) - if (cachedValue != null) return cachedValue +async function preparePackage (file) { + const packageFolder = file.slice(0, file.indexOf('/src/')) + if (versionCache.has(packageFolder)) return // eslint-disable-next-line import/no-dynamic-require, global-require - const { type, version } = require(path.join(__dirname, '..', packageFolder, 'package.json')) - const typeModule = type === 'module' + const { version } = require(path.join(__dirname, '..', packageFolder, 'package.json')) if (process.env.FRESH) { // in case it hasn't been done before. await mkdir(path.join(packageFolder, 'lib'), { recursive: true }) } - moduleTypeCache.set(packageFolder, typeModule) versionCache.set(packageFolder, version) - return typeModule } +const nonJSImport = /^\.\.?\/.+\.([jt]sx|ts)$/ // eslint-disable-next-line no-shadow -function transformJSXImportsToJS (path) { - const { value } = path.node.source - if (value.endsWith('.jsx') && (value.startsWith('./') || value.startsWith('../'))) { - // Rewrite .jsx imports to .js: - path.node.source.value = value.slice(0, -1) // eslint-disable-line no-param-reassign +function rewriteNonJSImportsToJS (path) { + const match = nonJSImport.exec(path.node.source.value) + if (match) { + // eslint-disable-next-line no-param-reassign + path.node.source.value = `${match[0].slice(0, -match[1].length)}js` } } @@ -71,7 +67,8 @@ async function buildLib () { if (IGNORE.test(file)) { continue } - const libFile = file.replace('/src/', '/lib/').replace(/\.jsx$/, '.js') + await preparePackage(file) + const libFile = file.replace('/src/', '/lib/').replace(/\.[jt]sx?$/, '.js') // on a fresh build, rebuild everything. if (!process.env.FRESH) { @@ -85,16 +82,17 @@ async function buildLib () { } } - const plugins = await isTypeModule(file) ? [{ + const plugins = [{ visitor: { // eslint-disable-next-line no-shadow ImportDeclaration (path) { - transformJSXImportsToJS(path) + rewriteNonJSImportsToJS(path) if (PACKAGE_JSON_IMPORT.test(path.node.source.value) && path.node.specifiers.length === 1 && path.node.specifiers[0].type === 'ImportDefaultSpecifier') { // Vendor-in version number from package.json files: const version = versionCache.get(file.slice(0, file.indexOf('/src/'))) + console.log({ version }) if (version != null) { const [{ local }] = path.node.specifiers path.replaceWith( @@ -107,15 +105,18 @@ async function buildLib () { } }, - ExportAllDeclaration: transformJSXImportsToJS, + ExportAllDeclaration: rewriteNonJSImportsToJS, // eslint-disable-next-line no-shadow ExportNamedDeclaration (path) { if (path.node.source != null) { - transformJSXImportsToJS(path) + rewriteNonJSImportsToJS(path) } }, }, - }] : undefined + }] + const isTSX = file.endsWith('.tsx') + if (isTSX || file.endsWith('.ts')) { plugins.push(['@babel/plugin-transform-typescript', { disallowAmbiguousJSXLike: true, isTSX, jsxPragma: 'h' }]) } + const { code, map } = await babel.transformFileAsync(file, { sourceMaps: true, plugins }) const [{ default: chalk }] = await Promise.all([ import('chalk'), diff --git a/e2e/package.json b/e2e/package.json index 0afe2839fb..99e2d219b9 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -53,7 +53,7 @@ "prompts": "^2.4.2", "react": "^18.1.0", "react-dom": "^18.1.0", - "typescript": "~4.8", + "typescript": "~5.1", "vue": "^3.2.33" } } diff --git a/examples/svelte-example/package.json b/examples/svelte-example/package.json index 0cb8115489..d9b2274a71 100644 --- a/examples/svelte-example/package.json +++ b/examples/svelte-example/package.json @@ -28,7 +28,7 @@ "svelte-check": "^1.6.0", "svelte-preprocess": "^4.6.1", "tslib": "^2.0.0", - "typescript": "~4.8" + "typescript": "~5.1" }, "dependencies": { "@uppy/core": "workspace:*", diff --git a/package.json b/package.json index a752f892b1..c28e05ff51 100644 --- a/package.json +++ b/package.json @@ -41,6 +41,7 @@ "@babel/plugin-proposal-optional-chaining": "^7.16.0", "@babel/plugin-transform-modules-commonjs": "^7.16.8", "@babel/plugin-transform-react-jsx": "^7.10.4", + "@babel/plugin-transform-typescript": "^7.22.10", "@babel/preset-env": "^7.14.7", "@babel/register": "^7.10.5", "@babel/types": "^7.17.0", @@ -103,7 +104,7 @@ "stylelint-config-standard-scss": "^10.0.0", "tar": "^6.1.0", "tsd": "^0.22.0", - "typescript": "~4.8", + "typescript": "~5.1", "vue-template-compiler": "workspace:*" }, "scripts": { diff --git a/packages/@uppy/companion/package.json b/packages/@uppy/companion/package.json index c10ea6a063..9f033b5740 100644 --- a/packages/@uppy/companion/package.json +++ b/packages/@uppy/companion/package.json @@ -89,7 +89,7 @@ "jest": "^29.0.0", "nock": "^13.1.3", "supertest": "6.2.4", - "typescript": "~4.8" + "typescript": "~5.1" }, "files": [ "bin/", diff --git a/private/remark-lint-uppy/package.json b/private/remark-lint-uppy/package.json index 2259e55dc8..804e02864a 100644 --- a/private/remark-lint-uppy/package.json +++ b/private/remark-lint-uppy/package.json @@ -28,7 +28,7 @@ "retext-quotes": "^5.0.0", "retext-simplify": "^7.0.0", "retext-syntax-mentions": "^3.1.0", - "unified": "^10.0.0", + "unified": "^11.0.0", "unified-message-control": "^4.0.0" }, "type": "module", diff --git a/tsconfig.json b/tsconfig.json index d4e8419daf..32d9be55cc 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,28 +1,35 @@ { "compilerOptions": { - "target": "esnext", - "module": "commonjs", + "target": "ESnext", + "module": "NodeNext", + "moduleResolution": "NodeNext", "lib": [ "dom", - "esnext" + "ESnext" ], "resolveJsonModule": true, - "allowJs": true, + "allowImportingTsExtensions": true, + "allowJs": false, + "jsx": "preserve", + "declaration": true, + "emitDeclarationOnly":true, "noImplicitAny": true, "noImplicitThis": true, "strictNullChecks": true, "types": [], - "noEmit": true, "esModuleInterop": true, "allowSyntheticDefaultImports": false, "strictFunctionTypes": true, "forceConsistentCasingInFileNames": true }, - "include": [ - "packages/*/types/index.d.ts", - "packages/@uppy/*/types/index.d.ts" - ], + "include": ["packages/"], "exclude": [ - "packages/@uppy/companion" + "node_modules/", + "packages/@uppy/angular", + "packages/@uppy/companion", + "packages/@uppy/*/types", + "packages/uppy/types", + "private/", + "bin/", ] } diff --git a/yarn.lock b/yarn.lock index 5501eb5e5b..e0a740d36d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,6 +1,3 @@ -# This file is generated by running "yarn install" inside your project. -# Manual changes might be lost - proceed with caution! - __metadata: version: 6 cacheKey: 8 @@ -2237,6 +2234,25 @@ __metadata: languageName: node linkType: hard +"@babel/helper-create-class-features-plugin@npm:^7.22.10": + version: 7.22.10 + resolution: "@babel/helper-create-class-features-plugin@npm:7.22.10" + dependencies: + "@babel/helper-annotate-as-pure": ^7.22.5 + "@babel/helper-environment-visitor": ^7.22.5 + "@babel/helper-function-name": ^7.22.5 + "@babel/helper-member-expression-to-functions": ^7.22.5 + "@babel/helper-optimise-call-expression": ^7.22.5 + "@babel/helper-replace-supers": ^7.22.9 + "@babel/helper-skip-transparent-expression-wrappers": ^7.22.5 + "@babel/helper-split-export-declaration": ^7.22.6 + semver: ^6.3.1 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 9683edbf73889abce183b06eac29524448aaab1dba7bdccdd6c26cf03e5ade3903b581b4d681da88fbff824fa117b840cc945bebf7db3c1f8c745f3c5a8a2595 + languageName: node + linkType: hard + "@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-create-regexp-features-plugin@npm:7.22.5" @@ -2400,6 +2416,19 @@ __metadata: languageName: node linkType: hard +"@babel/helper-replace-supers@npm:^7.22.9": + version: 7.22.9 + resolution: "@babel/helper-replace-supers@npm:7.22.9" + dependencies: + "@babel/helper-environment-visitor": ^7.22.5 + "@babel/helper-member-expression-to-functions": ^7.22.5 + "@babel/helper-optimise-call-expression": ^7.22.5 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: d41471f56ff2616459d35a5df1900d5f0756ae78b1027040365325ef332d66e08e3be02a9489756d870887585ff222403a228546e93dd7019e19e59c0c0fe586 + languageName: node + linkType: hard + "@babel/helper-simple-access@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-simple-access@npm:7.22.5" @@ -3639,6 +3668,31 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-transform-typescript@npm:^7.22.10": + version: 7.22.10 + resolution: "@babel/plugin-transform-typescript@npm:7.22.10" + dependencies: + "@babel/helper-annotate-as-pure": ^7.22.5 + "@babel/helper-create-class-features-plugin": ^7.22.10 + "@babel/helper-plugin-utils": ^7.22.5 + "@babel/plugin-syntax-typescript": ^7.22.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e15ca8cd9f9715db5ca42a4b7883bc85356424497a711ea01ccb39793e647c54d9bd8ab37d9953ed9bed5d06b705fca681dce1f41d121bc47638f50a5b5ce9ee + languageName: node + linkType: hard + +"@babel/plugin-transform-unicode-escapes@npm:^7.18.10, @babel/plugin-transform-unicode-escapes@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/plugin-transform-unicode-escapes@npm:7.22.5" + dependencies: + "@babel/helper-plugin-utils": ^7.22.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: da5e85ab3bb33a75cbf6181bfd236b208dc934702fd304db127232f17b4e0f42c6d3f238de8589470b4190906967eea8ca27adf3ae9d8ee4de2a2eae906ed186 + languageName: node + linkType: hard + "@babel/plugin-transform-unicode-escapes@npm:^7.22.5": version: 7.22.5 resolution: "@babel/plugin-transform-unicode-escapes@npm:7.22.5" @@ -8562,24 +8616,41 @@ __metadata: languageName: node linkType: hard +"@types/node-fetch@npm:^2.5.7": + version: 2.6.2 + resolution: "@types/node-fetch@npm:2.6.2" + dependencies: + "@types/node": "*" + form-data: ^3.0.0 + checksum: 6f73b1470000d303d25a6fb92875ea837a216656cb7474f66cdd67bb014aa81a5a11e7ac9c21fe19bee9ecb2ef87c1962bceeaec31386119d1ac86e4c30ad7a6 + languageName: node + linkType: hard + "@types/node@npm:*, @types/node@npm:>=10.0.0": - version: 20.5.3 - resolution: "@types/node@npm:20.5.3" - checksum: fe67a0fd7402218bdf91523a2b1c2e41d619f7294b1a471e0a778b8bc7bb3fcf291aed12041bcbe9622d50a3d1295a9adea0e7e19bb9386a246bf66071404721 + version: 20.5.2 + resolution: "@types/node@npm:20.5.2" + checksum: 46d032bb9a1db687693f6351702572d2f1e12face32caf8182323413918de27d4ac16cc2b15ff6b891651313e602da18edbdd095d16d2b5a26588c2edffca892 + languageName: node + linkType: hard + +"@types/node@npm:^14.0.10 || ^16.0.0, @types/node@npm:^14.14.20 || ^16.0.0": + version: 16.18.42 + resolution: "@types/node@npm:16.18.42" + checksum: 8a06c4c422bff046b3ca4daae2b34be0448b14c3bc02d921d527e3e22d39c906a03ff52e71d8af5c0e46a42351fff682c481c20a79904b4bc6cefd0e8a4f1562 languageName: node linkType: hard "@types/node@npm:^14.14.31": - version: 14.18.55 - resolution: "@types/node@npm:14.18.55" - checksum: a1b731095616ac34a6dac3fd8758060be13f1b145e09d3dde71427baf5aaacf1760f48d79a879a26f5d293fa537134de4ad188efa9f4c9a2e17abd9fff094d6a + version: 14.18.54 + resolution: "@types/node@npm:14.18.54" + checksum: 9fd66f91fcd8e9b25067f784a9c60bd710ef86a89c838c131ab2b1921398adc53b1c70d741bceed48bb2403b75c434b1bbbb255240773819cde36295c4b6abf1 languageName: node linkType: hard "@types/node@npm:^18.0.0, @types/node@npm:^18.0.3": - version: 18.17.8 - resolution: "@types/node@npm:18.17.8" - checksum: ebb71526368c9c58f03e2c2408bfda4aa686c13d84226e2c9b48d9c4aee244fb82e672aaf4aa8ccb6e4993b4274d5f4b2b3d52d0a2e57ab187ae653903376411 + version: 18.17.7 + resolution: "@types/node@npm:18.17.7" + checksum: cb327da222eb9dc2a8e86c957bef58b16f20a2f6b109e43ff10267e83b342bcba5257e800438dd54deb2bd66bb7815539a759c6dcf91e1b0b08b3add1d5886c8 languageName: node linkType: hard @@ -8787,6 +8858,45 @@ __metadata: languageName: node linkType: hard +"@types/unist@npm:^3.0.0": + version: 3.0.0 + resolution: "@types/unist@npm:3.0.0" + checksum: e9d21a8fb5e332be0acef29192d82632875b2ef3e700f1bc64fdfc1520189542de85c3d4f3bcfbc2f4afdb210f4c23f68061f3fbf10744e920d4f18430d19f49 + languageName: node + linkType: hard + +"@types/webpack-env@npm:^1.16.0": + version: 1.18.0 + resolution: "@types/webpack-env@npm:1.18.0" + checksum: ecf4daa31cb37d474ac0ce058d83a3cadeb9881ca8107ae93c2299eaa9954943aae09b43e143c62ccbe4288a14db00c918c9debd707afe17c3998f873eaabc59 + languageName: node + linkType: hard + +"@types/webpack-sources@npm:*": + version: 3.2.0 + resolution: "@types/webpack-sources@npm:3.2.0" + dependencies: + "@types/node": "*" + "@types/source-list-map": "*" + source-map: ^0.7.3 + checksum: fa23dcfb99f79cc0ba8e6ca41cb8dedb406f8d7772e8e3d3d9b443bfb36557a1a78f4de2b97905554db98beee1a2ef6f930e188977adde6452392a64dd4b7c2a + languageName: node + linkType: hard + +"@types/webpack@npm:^4.41.26, @types/webpack@npm:^4.41.8": + version: 4.41.32 + resolution: "@types/webpack@npm:4.41.32" + dependencies: + "@types/node": "*" + "@types/tapable": ^1 + "@types/uglify-js": "*" + "@types/webpack-sources": "*" + anymatch: ^3.0.0 + source-map: ^0.6.0 + checksum: e594a1357cbbc2f7c6ca47785c5a11adb5591a774a69afaeab07cd6f6bff6c6aea2030bd37b32bdd19d0ec2336a346db754e8d8d236ba8effeab542716fb32b7 + languageName: node + linkType: hard + "@types/webpack@npm:^5.28.0": version: 5.28.0 resolution: "@types/webpack@npm:5.28.0" @@ -8971,6 +9081,13 @@ __metadata: languageName: node linkType: hard +"@ungap/structured-clone@npm:^1.0.0": + version: 1.2.0 + resolution: "@ungap/structured-clone@npm:1.2.0" + checksum: 4f656b7b4672f2ce6e272f2427d8b0824ed11546a601d8d5412b9d7704e83db38a8d9f402ecdf2b9063fc164af842ad0ec4a55819f621ed7e7ea4d1efcc74524 + languageName: node + linkType: hard + "@uppy-dev/build@workspace:.": version: 0.0.0-use.local resolution: "@uppy-dev/build@workspace:." @@ -8983,6 +9100,7 @@ __metadata: "@babel/plugin-proposal-optional-chaining": ^7.16.0 "@babel/plugin-transform-modules-commonjs": ^7.16.8 "@babel/plugin-transform-react-jsx": ^7.10.4 + "@babel/plugin-transform-typescript": ^7.22.10 "@babel/preset-env": ^7.14.7 "@babel/register": ^7.10.5 "@babel/types": ^7.17.0 @@ -9045,7 +9163,7 @@ __metadata: stylelint-config-standard-scss: ^10.0.0 tar: ^6.1.0 tsd: ^0.22.0 - typescript: ~4.8 + typescript: ~5.1 vue-template-compiler: "workspace:*" languageName: unknown linkType: soft @@ -9111,7 +9229,7 @@ __metadata: retext-quotes: ^5.0.0 retext-simplify: ^7.0.0 retext-syntax-mentions: ^3.1.0 - unified: ^10.0.0 + unified: ^11.0.0 unified-message-control: ^4.0.0 languageName: unknown linkType: soft @@ -9156,7 +9274,7 @@ __metadata: rxjs: ~7.8.0 tslib: ^2.3.0 typescript: ~5.1 - zone.js: ~0.13.0 + zone.js: ~0.11.4 languageName: unknown linkType: soft @@ -9402,7 +9520,7 @@ __metadata: svelte-check: ^1.6.0 svelte-preprocess: ^4.6.1 tslib: ^2.0.0 - typescript: ~4.8 + typescript: ~5.1 languageName: unknown linkType: soft @@ -9648,7 +9766,7 @@ __metadata: serialize-javascript: ^6.0.0 supertest: 6.2.4 tus-js-client: ^3.0.0 - typescript: ~4.8 + typescript: ~5.1 validator: ^13.0.0 ws: 8.8.1 bin: @@ -11100,7 +11218,9 @@ __metadata: rxjs: ~7.8.0 tslib: ^2.3.0 typescript: ~5.1 - zone.js: ~0.13.0 + zone.js: ~0.11.4 + peerDependencies: + "@uppy/core": "workspace:^" languageName: unknown linkType: soft @@ -14438,6 +14558,37 @@ __metadata: languageName: node linkType: hard +"detect-package-manager@npm:^2.0.1": + version: 2.0.1 + resolution: "detect-package-manager@npm:2.0.1" + dependencies: + execa: ^5.1.1 + checksum: e72b910182d5ad479198d4235be206ac64a479257b32201bb06f3c842cc34c65ea851d46f72cc1d4bf535bcc6c4b44b5b86bb29fe1192b8c9c07b46883672f28 + languageName: node + linkType: hard + +"detect-port@npm:^1.3.0": + version: 1.3.0 + resolution: "detect-port@npm:1.3.0" + dependencies: + address: ^1.0.1 + debug: ^2.6.0 + bin: + detect: ./bin/detect-port + detect-port: ./bin/detect-port + checksum: 93c40febe714f56711d1fedc2b7a9cc4cbaa0fcddec0509876c46b9dd6099ed6bfd6662a4f35e5fa0301660f48ed516829253ab0fc90b9e79b823dd77786b379 + languageName: node + linkType: hard + +"devlop@npm:^1.0.0": + version: 1.1.0 + resolution: "devlop@npm:1.1.0" + dependencies: + dequal: ^2.0.0 + checksum: d2ff650bac0bb6ef08c48f3ba98640bb5fec5cce81e9957eb620408d1bab1204d382a45b785c6b3314dc867bb0684936b84c6867820da6db97cbb5d3c15dd185 + languageName: node + linkType: hard + "dezalgo@npm:1.0.3": version: 1.0.3 resolution: "dezalgo@npm:1.0.3" @@ -14701,7 +14852,7 @@ __metadata: prompts: ^2.4.2 react: ^18.1.0 react-dom: ^18.1.0 - typescript: ~4.8 + typescript: ~5.1 vue: ^3.2.33 languageName: unknown linkType: soft @@ -28153,6 +28304,17 @@ __metadata: languageName: node linkType: hard +"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.2, 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": + version: 7.5.4 + resolution: "semver@npm:7.5.4" + dependencies: + lru-cache: ^6.0.0 + bin: + semver: bin/semver.js + checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2 + languageName: node + linkType: hard + "semver@npm:~7.0.0": version: 7.0.0 resolution: "semver@npm:7.0.0" @@ -30488,6 +30650,16 @@ __metadata: languageName: node linkType: hard +"typescript@npm:*, typescript@npm:^4.0.3": + version: 4.8.2 + resolution: "typescript@npm:4.8.2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 7f5b81d0d558c9067f952c7af52ab7f19c2e70a916817929e4a5b256c93990bf3178eccb1ac8a850bc75df35f6781b6f4cb3370ce20d8b1ded92ed462348f628 + languageName: node + linkType: hard + "typescript@npm:~4.8": version: 4.8.4 resolution: "typescript@npm:4.8.4" @@ -30518,6 +30690,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@*#~builtin, typescript@patch:typescript@^4.0.3#~builtin": + version: 4.8.2 + resolution: "typescript@patch:typescript@npm%3A4.8.2#~builtin::version=4.8.2&hash=3b564f" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 28e130a49d9330b64b8229ad336247bf980e9a705c5850f30a859a68c051e8e68e367b3275f119da4a825dca71ad0fe315964a1315d4a381c0021bca5eeeb62e + languageName: node + linkType: hard + "typescript@patch:typescript@~4.8#~builtin": version: 4.8.4 resolution: "typescript@patch:typescript@npm%3A4.8.4#~builtin::version=4.8.4&hash=1a91c8" @@ -30725,6 +30907,21 @@ __metadata: languageName: node linkType: hard +"unified@npm:^11.0.0": + version: 11.0.2 + resolution: "unified@npm:11.0.2" + dependencies: + "@types/unist": ^3.0.0 + "@ungap/structured-clone": ^1.0.0 + bail: ^2.0.0 + devlop: ^1.0.0 + is-plain-obj: ^4.0.0 + trough: ^2.0.0 + vfile: ^6.0.0 + checksum: 51a7a61116d69a1ab74d15ebb2da3c9e7bc112e95242d88dc14bb8c025420a2eaf00416890670f755d1c157cdb54adb9be955f8f2813f8efb3e230e06d071d1b + languageName: node + linkType: hard + "union-value@npm:^1.0.0": version: 1.0.1 resolution: "union-value@npm:1.0.1" @@ -30832,6 +31029,15 @@ __metadata: languageName: node linkType: hard +"unist-util-stringify-position@npm:^4.0.0": + version: 4.0.0 + resolution: "unist-util-stringify-position@npm:4.0.0" + dependencies: + "@types/unist": ^3.0.0 + checksum: e2e7aee4b92ddb64d314b4ac89eef7a46e4c829cbd3ee4aee516d100772b490eb6b4974f653ba0717a0071ca6ea0770bf22b0a2ea62c65fcba1d071285e96324 + languageName: node + linkType: hard + "unist-util-visit-children@npm:^1.0.0": version: 1.1.4 resolution: "unist-util-visit-children@npm:1.1.4" @@ -31304,6 +31510,16 @@ __metadata: languageName: node linkType: hard +"vfile-message@npm:^4.0.0": + version: 4.0.2 + resolution: "vfile-message@npm:4.0.2" + dependencies: + "@types/unist": ^3.0.0 + unist-util-stringify-position: ^4.0.0 + checksum: 964e7e119f4c0e0270fc269119c41c96da20afa01acb7c9809a88365c8e0c64aa692fafbd952669382b978002ecd7ad31ef4446d85e8a22cdb62f6df20186c2d + languageName: node + linkType: hard + "vfile-reporter@npm:^7.0.0": version: 7.0.4 resolution: "vfile-reporter@npm:7.0.4" @@ -31348,6 +31564,17 @@ __metadata: languageName: node linkType: hard +"vfile@npm:^6.0.0": + version: 6.0.1 + resolution: "vfile@npm:6.0.1" + dependencies: + "@types/unist": ^3.0.0 + unist-util-stringify-position: ^4.0.0 + vfile-message: ^4.0.0 + checksum: 05ccee73aeb00402bc8a5d0708af299e9f4a33f5132805449099295085e3ca3b0d018328bad9ff44cf2e6f4cd364f1d558d3fb9b394243a25b2739207edcb0ed + languageName: node + linkType: hard + "vite-plugin-vue2@npm:^2.0.1": version: 2.0.3 resolution: "vite-plugin-vue2@npm:2.0.3" From d8a518afa35df13293b9bbb16c4d9d7265cbaff0 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 30 Aug 2023 18:10:01 +0200 Subject: [PATCH 02/36] fixup! meta: add support for TypeScript plugins --- yarn.lock | 161 ++++-------------------------------------------------- 1 file changed, 10 insertions(+), 151 deletions(-) diff --git a/yarn.lock b/yarn.lock index e0a740d36d..f6f359a4d0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,3 +1,6 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + __metadata: version: 6 cacheKey: 8 @@ -3682,17 +3685,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-unicode-escapes@npm:^7.18.10, @babel/plugin-transform-unicode-escapes@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/plugin-transform-unicode-escapes@npm:7.22.5" - dependencies: - "@babel/helper-plugin-utils": ^7.22.5 - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: da5e85ab3bb33a75cbf6181bfd236b208dc934702fd304db127232f17b4e0f42c6d3f238de8589470b4190906967eea8ca27adf3ae9d8ee4de2a2eae906ed186 - languageName: node - linkType: hard - "@babel/plugin-transform-unicode-escapes@npm:^7.22.5": version: 7.22.5 resolution: "@babel/plugin-transform-unicode-escapes@npm:7.22.5" @@ -8616,16 +8608,6 @@ __metadata: languageName: node linkType: hard -"@types/node-fetch@npm:^2.5.7": - version: 2.6.2 - resolution: "@types/node-fetch@npm:2.6.2" - dependencies: - "@types/node": "*" - form-data: ^3.0.0 - checksum: 6f73b1470000d303d25a6fb92875ea837a216656cb7474f66cdd67bb014aa81a5a11e7ac9c21fe19bee9ecb2ef87c1962bceeaec31386119d1ac86e4c30ad7a6 - languageName: node - linkType: hard - "@types/node@npm:*, @types/node@npm:>=10.0.0": version: 20.5.2 resolution: "@types/node@npm:20.5.2" @@ -8633,13 +8615,6 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^14.0.10 || ^16.0.0, @types/node@npm:^14.14.20 || ^16.0.0": - version: 16.18.42 - resolution: "@types/node@npm:16.18.42" - checksum: 8a06c4c422bff046b3ca4daae2b34be0448b14c3bc02d921d527e3e22d39c906a03ff52e71d8af5c0e46a42351fff682c481c20a79904b4bc6cefd0e8a4f1562 - languageName: node - linkType: hard - "@types/node@npm:^14.14.31": version: 14.18.54 resolution: "@types/node@npm:14.18.54" @@ -8865,38 +8840,6 @@ __metadata: languageName: node linkType: hard -"@types/webpack-env@npm:^1.16.0": - version: 1.18.0 - resolution: "@types/webpack-env@npm:1.18.0" - checksum: ecf4daa31cb37d474ac0ce058d83a3cadeb9881ca8107ae93c2299eaa9954943aae09b43e143c62ccbe4288a14db00c918c9debd707afe17c3998f873eaabc59 - languageName: node - linkType: hard - -"@types/webpack-sources@npm:*": - version: 3.2.0 - resolution: "@types/webpack-sources@npm:3.2.0" - dependencies: - "@types/node": "*" - "@types/source-list-map": "*" - source-map: ^0.7.3 - checksum: fa23dcfb99f79cc0ba8e6ca41cb8dedb406f8d7772e8e3d3d9b443bfb36557a1a78f4de2b97905554db98beee1a2ef6f930e188977adde6452392a64dd4b7c2a - languageName: node - linkType: hard - -"@types/webpack@npm:^4.41.26, @types/webpack@npm:^4.41.8": - version: 4.41.32 - resolution: "@types/webpack@npm:4.41.32" - dependencies: - "@types/node": "*" - "@types/tapable": ^1 - "@types/uglify-js": "*" - "@types/webpack-sources": "*" - anymatch: ^3.0.0 - source-map: ^0.6.0 - checksum: e594a1357cbbc2f7c6ca47785c5a11adb5591a774a69afaeab07cd6f6bff6c6aea2030bd37b32bdd19d0ec2336a346db754e8d8d236ba8effeab542716fb32b7 - languageName: node - linkType: hard - "@types/webpack@npm:^5.28.0": version: 5.28.0 resolution: "@types/webpack@npm:5.28.0" @@ -9274,7 +9217,7 @@ __metadata: rxjs: ~7.8.0 tslib: ^2.3.0 typescript: ~5.1 - zone.js: ~0.11.4 + zone.js: ~0.13.0 languageName: unknown linkType: soft @@ -11218,9 +11161,7 @@ __metadata: rxjs: ~7.8.0 tslib: ^2.3.0 typescript: ~5.1 - zone.js: ~0.11.4 - peerDependencies: - "@uppy/core": "workspace:^" + zone.js: ~0.13.0 languageName: unknown linkType: soft @@ -14558,28 +14499,6 @@ __metadata: languageName: node linkType: hard -"detect-package-manager@npm:^2.0.1": - version: 2.0.1 - resolution: "detect-package-manager@npm:2.0.1" - dependencies: - execa: ^5.1.1 - checksum: e72b910182d5ad479198d4235be206ac64a479257b32201bb06f3c842cc34c65ea851d46f72cc1d4bf535bcc6c4b44b5b86bb29fe1192b8c9c07b46883672f28 - languageName: node - linkType: hard - -"detect-port@npm:^1.3.0": - version: 1.3.0 - resolution: "detect-port@npm:1.3.0" - dependencies: - address: ^1.0.1 - debug: ^2.6.0 - bin: - detect: ./bin/detect-port - detect-port: ./bin/detect-port - checksum: 93c40febe714f56711d1fedc2b7a9cc4cbaa0fcddec0509876c46b9dd6099ed6bfd6662a4f35e5fa0301660f48ed516829253ab0fc90b9e79b823dd77786b379 - languageName: node - linkType: hard - "devlop@npm:^1.0.0": version: 1.1.0 resolution: "devlop@npm:1.1.0" @@ -28236,11 +28155,11 @@ __metadata: linkType: hard "semver@npm:2 || 3 || 4 || 5, semver@npm:^5.5.0, semver@npm:^5.6.0, semver@npm:^5.7.0, semver@npm:^5.7.1": - version: 5.7.1 - resolution: "semver@npm:5.7.1" + version: 5.7.2 + resolution: "semver@npm:5.7.2" bin: - semver: ./bin/semver - checksum: 57fd0acfd0bac382ee87cd52cd0aaa5af086a7dc8d60379dfe65fea491fb2489b6016400813930ecd61fd0952dae75c115287a1b16c234b1550887117744dfaf + semver: bin/semver + checksum: fb4ab5e0dd1c22ce0c937ea390b4a822147a9c53dbd2a9a0132f12fe382902beef4fbf12cf51bb955248d8d15874ce8cd89532569756384f994309825f10b686 languageName: node linkType: hard @@ -28286,16 +28205,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.1.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.3.0": - version: 6.3.0 - resolution: "semver@npm:6.3.0" - bin: - semver: ./bin/semver.js - checksum: 1b26ecf6db9e8292dd90df4e781d91875c0dcc1b1909e70f5d12959a23c7eebb8f01ea581c00783bbee72ceeaad9505797c381756326073850dc36ed284b21b9 - languageName: node - linkType: hard - -"semver@npm:^6.3.1": +"semver@npm:^6.0.0, semver@npm:^6.1.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.3.0, semver@npm:^6.3.1": version: 6.3.1 resolution: "semver@npm:6.3.1" bin: @@ -28304,17 +28214,6 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.2, 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": - version: 7.5.4 - resolution: "semver@npm:7.5.4" - dependencies: - lru-cache: ^6.0.0 - bin: - semver: bin/semver.js - checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2 - languageName: node - linkType: hard - "semver@npm:~7.0.0": version: 7.0.0 resolution: "semver@npm:7.0.0" @@ -30650,26 +30549,6 @@ __metadata: languageName: node linkType: hard -"typescript@npm:*, typescript@npm:^4.0.3": - version: 4.8.2 - resolution: "typescript@npm:4.8.2" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 7f5b81d0d558c9067f952c7af52ab7f19c2e70a916817929e4a5b256c93990bf3178eccb1ac8a850bc75df35f6781b6f4cb3370ce20d8b1ded92ed462348f628 - languageName: node - linkType: hard - -"typescript@npm:~4.8": - version: 4.8.4 - resolution: "typescript@npm:4.8.4" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 3e4f061658e0c8f36c820802fa809e0fd812b85687a9a2f5430bc3d0368e37d1c9605c3ce9b39df9a05af2ece67b1d844f9f6ea8ff42819f13bcb80f85629af0 - languageName: node - linkType: hard - "typescript@npm:~5.1": version: 5.1.6 resolution: "typescript@npm:5.1.6" @@ -30690,26 +30569,6 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@*#~builtin, typescript@patch:typescript@^4.0.3#~builtin": - version: 4.8.2 - resolution: "typescript@patch:typescript@npm%3A4.8.2#~builtin::version=4.8.2&hash=3b564f" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 28e130a49d9330b64b8229ad336247bf980e9a705c5850f30a859a68c051e8e68e367b3275f119da4a825dca71ad0fe315964a1315d4a381c0021bca5eeeb62e - languageName: node - linkType: hard - -"typescript@patch:typescript@~4.8#~builtin": - version: 4.8.4 - resolution: "typescript@patch:typescript@npm%3A4.8.4#~builtin::version=4.8.4&hash=1a91c8" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: c981e82b77a5acdcc4e69af9c56cdecf5b934a87a08e7b52120596701e389a878b8e3f860e73ffb287bf649cc47a8c741262ce058148f71de4cdd88bb9c75153 - languageName: node - linkType: hard - "typescript@patch:typescript@~5.1#~builtin": version: 5.1.6 resolution: "typescript@patch:typescript@npm%3A5.1.6#~builtin::version=5.1.6&hash=5da071" From 4e8f732040f8e6a5a928f249913bf9e1befb1b58 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 30 Aug 2023 18:18:57 +0200 Subject: [PATCH 03/36] fixup! meta: add support for TypeScript plugins upgrade svelte-processes --- examples/svelte-example/package.json | 2 +- packages/@uppy/svelte/package.json | 2 +- yarn.lock | 81 +++++++++++++++++++++++++--- 3 files changed, 77 insertions(+), 8 deletions(-) diff --git a/examples/svelte-example/package.json b/examples/svelte-example/package.json index d9b2274a71..17c6d3b256 100644 --- a/examples/svelte-example/package.json +++ b/examples/svelte-example/package.json @@ -26,7 +26,7 @@ "rollup-plugin-terser": "^7.0.0", "svelte": ">=3.24.0", "svelte-check": "^1.6.0", - "svelte-preprocess": "^4.6.1", + "svelte-preprocess": "^5.0.0", "tslib": "^2.0.0", "typescript": "~5.1" }, diff --git a/packages/@uppy/svelte/package.json b/packages/@uppy/svelte/package.json index cb38a64f62..2076fb6a40 100644 --- a/packages/@uppy/svelte/package.json +++ b/packages/@uppy/svelte/package.json @@ -25,7 +25,7 @@ "rollup-plugin-svelte": "^7.0.0", "svelte": "^3.31.0", "svelte-check": "^2.0.0", - "svelte-preprocess": "^4.6.1" + "svelte-preprocess": "^5.0.0" }, "peerDependencies": { "@uppy/core": "workspace:^", diff --git a/yarn.lock b/yarn.lock index f6f359a4d0..52fbe97ea1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5525,7 +5525,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": +"@jridgewell/sourcemap-codec@npm:^1.4.13, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": version: 1.4.15 resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 @@ -8657,7 +8657,7 @@ __metadata: languageName: node linkType: hard -"@types/pug@npm:^2.0.4": +"@types/pug@npm:^2.0.4, @types/pug@npm:^2.0.6": version: 2.0.6 resolution: "@types/pug@npm:2.0.6" checksum: e8d09c3ddc7e6b87050a16d73694518f259a8ed74a0ab79b81b847baf89d92d44959ed68199966ac6f4a218c715c9bb3e4c86c8800d4868a4a674f4b21d2f01d @@ -9461,7 +9461,7 @@ __metadata: sirv-cli: ^1.0.0 svelte: ">=3.24.0" svelte-check: ^1.6.0 - svelte-preprocess: ^4.6.1 + svelte-preprocess: ^5.0.0 tslib: ^2.0.0 typescript: ~5.1 languageName: unknown @@ -10073,7 +10073,7 @@ __metadata: rollup-plugin-svelte: ^7.0.0 svelte: ^3.31.0 svelte-check: ^2.0.0 - svelte-preprocess: ^4.6.1 + svelte-preprocess: ^5.0.0 peerDependencies: "@uppy/core": "workspace:^" "@uppy/dashboard": "workspace:^" @@ -14469,7 +14469,7 @@ __metadata: languageName: node linkType: hard -"detect-indent@npm:^6.0.0": +"detect-indent@npm:^6.0.0, detect-indent@npm:^6.1.0": version: 6.1.0 resolution: "detect-indent@npm:6.1.0" checksum: ab953a73c72dbd4e8fc68e4ed4bfd92c97eb6c43734af3900add963fd3a9316f3bc0578b018b24198d4c31a358571eff5f0656e81a1f3b9ad5c547d58b2d093d @@ -21856,6 +21856,15 @@ __metadata: languageName: node linkType: hard +"magic-string@npm:^0.27.0": + version: 0.27.0 + resolution: "magic-string@npm:0.27.0" + dependencies: + "@jridgewell/sourcemap-codec": ^1.4.13 + checksum: 273faaa50baadb7a2df6e442eac34ad611304fc08fe16e24fe2e472fd944bfcb73ffb50d2dc972dc04e92784222002af46868cb9698b1be181c81830fd95a13e + languageName: node + linkType: hard + "make-dir@npm:^2.0.0, make-dir@npm:^2.1.0": version: 2.1.0 resolution: "make-dir@npm:2.1.0" @@ -28775,6 +28784,20 @@ __metadata: languageName: node linkType: hard +"sorcery@npm:^0.11.0": + version: 0.11.0 + resolution: "sorcery@npm:0.11.0" + dependencies: + "@jridgewell/sourcemap-codec": ^1.4.14 + buffer-crc32: ^0.2.5 + minimist: ^1.2.0 + sander: ^0.5.0 + bin: + sorcery: bin/sorcery + checksum: b79a4194f5ab7ee1d19d5cd2a683bd605762d5cbeeb238f46a71af357a179a6193d64a92ef2af1e05e4261cb3797be8694ad9b7ecfea9ca0d8f14d98f449dff5 + languageName: node + linkType: hard + "sorted-array-functions@npm:^1.3.0": version: 1.3.0 resolution: "sorted-array-functions@npm:1.3.0" @@ -29769,7 +29792,7 @@ __metadata: languageName: node linkType: hard -"svelte-preprocess@npm:^4.0.0, svelte-preprocess@npm:^4.6.1": +"svelte-preprocess@npm:^4.0.0": version: 4.10.7 resolution: "svelte-preprocess@npm:4.10.7" dependencies: @@ -29818,6 +29841,52 @@ __metadata: languageName: node linkType: hard +"svelte-preprocess@npm:^5.0.0": + version: 5.0.4 + resolution: "svelte-preprocess@npm:5.0.4" + dependencies: + "@types/pug": ^2.0.6 + detect-indent: ^6.1.0 + magic-string: ^0.27.0 + sorcery: ^0.11.0 + strip-indent: ^3.0.0 + peerDependencies: + "@babel/core": ^7.10.2 + coffeescript: ^2.5.1 + less: ^3.11.3 || ^4.0.0 + postcss: ^7 || ^8 + postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 + pug: ^3.0.0 + sass: ^1.26.8 + stylus: ^0.55.0 + sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 + svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 + typescript: ">=3.9.5 || ^4.0.0 || ^5.0.0" + peerDependenciesMeta: + "@babel/core": + optional: true + coffeescript: + optional: true + less: + optional: true + postcss: + optional: true + postcss-load-config: + optional: true + pug: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + typescript: + optional: true + checksum: 2acd36ccdf5e8d624e753a3dbcd3ca947e87e01509ab3eb3d862551b4278ca684763baf87f0240eab1646c16b0d59fa82227079cce762908f29dd359d1ac69ca + languageName: node + linkType: hard + "svelte@npm:>=3.24.0, svelte@npm:^3.31.0": version: 3.49.0 resolution: "svelte@npm:3.49.0" From f15b3e341bf4c800637bbeeeaa80cce7a919fc85 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 30 Aug 2023 18:24:22 +0200 Subject: [PATCH 04/36] fixup! meta: add support for TypeScript plugins upgrade tsd and fix ci --- .github/workflows/ci.yml | 1 + package.json | 2 +- yarn.lock | 77 +++++++++++++++++++++++++++++++++------- 3 files changed, 66 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 18e2e18c18..e955d2f568 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,5 +94,6 @@ jobs: corepack yarn run build:lib corepack yarn run build:companion corepack yarn run build:locale-pack + rm tsconfig.json - name: Run type tests run: corepack yarn run test:type diff --git a/package.json b/package.json index c28e05ff51..4b2f3a8fc7 100644 --- a/package.json +++ b/package.json @@ -103,7 +103,7 @@ "stylelint-config-standard": "^34.0.0", "stylelint-config-standard-scss": "^10.0.0", "tar": "^6.1.0", - "tsd": "^0.22.0", + "tsd": "^0.28.0", "typescript": "~5.1", "vue-template-compiler": "workspace:*" }, diff --git a/yarn.lock b/yarn.lock index 52fbe97ea1..9bca966431 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5351,6 +5351,15 @@ __metadata: 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.4.3": version: 29.4.3 resolution: "@jest/source-map@npm:29.4.3" @@ -7886,6 +7895,13 @@ __metadata: languageName: node linkType: hard +"@sinclair/typebox@npm:^0.27.8": + version: 0.27.8 + resolution: "@sinclair/typebox@npm:0.27.8" + checksum: 00bd7362a3439021aa1ea51b0e0d0a0e8ca1351a3d54c606b115fdcc49b51b16db6e5f43b4fe7a28c38688523e22a94d49dd31168868b655f0d4d50f032d07a1 + languageName: node + linkType: hard + "@sindresorhus/is@npm:^4.0.0": version: 4.6.0 resolution: "@sindresorhus/is@npm:4.6.0" @@ -8136,13 +8152,10 @@ __metadata: languageName: node linkType: hard -"@tsd/typescript@npm:~4.7.4": - version: 4.7.4 - resolution: "@tsd/typescript@npm:4.7.4" - bin: - tsc: typescript/bin/tsc - tsserver: typescript/bin/tsserver - checksum: 1a84773cb4bb01898fb0b6011ec5c2fb3e3c91585ea009bbf9d525b46d40f1827417dfc5f7b1efdf534b111a5947b063ae04490d147bda37b038e1a7d264672d +"@tsd/typescript@npm:~5.0.2": + version: 5.0.4 + resolution: "@tsd/typescript@npm:5.0.4" + checksum: 5e4fd1ed623f35681fb7b0ede97ec0102701412f18b8f045f30dce3e3f35731aca4975afa4551818461e69b4350f78052ddace5617b1d4cb339a5c66fbad624e languageName: node linkType: hard @@ -9105,7 +9118,7 @@ __metadata: stylelint-config-standard: ^34.0.0 stylelint-config-standard-scss: ^10.0.0 tar: ^6.1.0 - tsd: ^0.22.0 + tsd: ^0.28.0 typescript: ~5.1 vue-template-compiler: "workspace:*" languageName: unknown @@ -14542,6 +14555,13 @@ __metadata: languageName: node linkType: hard +"diff-sequences@npm:^29.6.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: f4914158e1f2276343d98ff5b31fc004e7304f5470bf0f1adb2ac6955d85a531a6458d33e87667f98f6ae52ebd3891bb47d420bb48a5bd8b7a27ee25b20e33aa + languageName: node + linkType: hard + "diff@npm:^5.0.0": version: 5.1.0 resolution: "diff@npm:5.1.0" @@ -19807,6 +19827,18 @@ __metadata: languageName: node linkType: hard +"jest-diff@npm:^29.0.3": + version: 29.6.4 + resolution: "jest-diff@npm:29.6.4" + dependencies: + chalk: ^4.0.0 + diff-sequences: ^29.6.3 + jest-get-type: ^29.6.3 + pretty-format: ^29.6.3 + checksum: e205c45ab6dbcc660dc2a682cddb20f6a3cbbbdecd2821cce2050619f96dbd7560ee25f7f51d42c302596aeaddbea54390b78be3ab639340d24d67e4d270a8b0 + languageName: node + linkType: hard + "jest-diff@npm:^29.5.0": version: 29.5.0 resolution: "jest-diff@npm:29.5.0" @@ -19911,6 +19943,13 @@ __metadata: 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 + languageName: node + linkType: hard + "jest-haste-map@npm:^26.5.2": version: 26.6.2 resolution: "jest-haste-map@npm:26.6.2" @@ -26113,6 +26152,17 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^29.6.3": + version: 29.6.3 + resolution: "pretty-format@npm:29.6.3" + dependencies: + "@jest/schemas": ^29.6.3 + ansi-styles: ^5.0.0 + react-is: ^18.0.0 + checksum: 4e1c0db48e65571c22e80ff92123925ff8b3a2a89b71c3a1683cfde711004d492de32fe60c6bc10eea8bf6c678e5cbe544ac6c56cb8096e1eb7caf856928b1c4 + languageName: node + linkType: hard + "pretty-format@npm:^3.8.0": version: 3.8.0 resolution: "pretty-format@npm:3.8.0" @@ -30388,19 +30438,20 @@ __metadata: languageName: node linkType: hard -"tsd@npm:^0.22.0": - version: 0.22.0 - resolution: "tsd@npm:0.22.0" +"tsd@npm:^0.28.0": + version: 0.28.1 + resolution: "tsd@npm:0.28.1" dependencies: - "@tsd/typescript": ~4.7.4 + "@tsd/typescript": ~5.0.2 eslint-formatter-pretty: ^4.1.0 globby: ^11.0.1 + jest-diff: ^29.0.3 meow: ^9.0.0 path-exists: ^4.0.0 read-pkg-up: ^7.0.0 bin: tsd: dist/cli.js - checksum: d6977e6cc8de13ae480cdb5599be5f42daec203b94e03d40016072203749d5468cc6a33cdc7bce20efbc00f52ff7071cc1d2b3cc42b361648503dfb55715f647 + checksum: ca0f0d2ba3063a252ac3ecf5799c6dc8c4c35726f0d0683e6577992a9916cfe3e476f9fdbb67bf57ce8e46ef9cd0189bb847d336d1c01679232f1b91828b0fa6 languageName: node linkType: hard From 39857347add2a0dde95ee72718fed0cda4bb0d42 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 30 Aug 2023 19:03:14 +0200 Subject: [PATCH 05/36] fix `yarn dev` --- private/dev/vite.config.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/private/dev/vite.config.js b/private/dev/vite.config.js index 847b7fef4c..f5d28d3e02 100644 --- a/private/dev/vite.config.js +++ b/private/dev/vite.config.js @@ -21,6 +21,7 @@ const config = { }, }, esbuild: { + jsx: 'transform', jsxFactory: 'h', jsxFragment: 'Fragment', }, @@ -32,7 +33,7 @@ const config = { }, { find: /^@uppy\/([^/]+)$/, - replacement: `${PACKAGES_ROOT}@uppy/$1/src/index.js`, + replacement: `${PACKAGES_ROOT}@uppy/$1/src/index`, }, { find: /^@uppy\/([^/]+)\/lib\/(.+)$/, From f00dec962e0ead7752de0ae68f76e58313548efe Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Thu, 31 Aug 2023 12:32:49 +0200 Subject: [PATCH 06/36] resolve e2e build failure --- .../p-queue-npm-7.3.4-c746a7f1ae.patch | 12 + e2e/package.json | 8 +- e2e/start-companion-with-load-balancer.mjs | 42 +- package.json | 2 +- .../src/ProviderView/ProviderView.jsx | 1 - yarn.lock | 2089 +++++++---------- 6 files changed, 944 insertions(+), 1210 deletions(-) create mode 100644 .yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch diff --git a/.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch b/.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch new file mode 100644 index 0000000000..61aeaab25d --- /dev/null +++ b/.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch @@ -0,0 +1,12 @@ +diff --git a/package.json b/package.json +index 9724d458b80411c2fd145b2e9d6db718523ccff9..2902526f4c9170369263e60d3555d11cd9f7f32d 100644 +--- a/package.json ++++ b/package.json +@@ -6,6 +6,7 @@ + "repository": "sindresorhus/p-queue", + "funding": "https://github.com/sponsors/sindresorhus", + "type": "module", ++ "main": "./dist/index.js", + "exports": "./dist/index.js", + "engines": { + "node": ">=12" diff --git a/e2e/package.json b/e2e/package.json index 99e2d219b9..fe94b8b7a3 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -45,11 +45,11 @@ "@uppy/zoom": "workspace:^" }, "devDependencies": { - "cypress": "^12.9.0", - "cypress-terminal-report": "^4.1.2", + "@parcel/transformer-vue": "2.9.3", + "cypress": "^13.0.0", + "cypress-terminal-report": "^5.0.0", "deep-freeze": "^0.0.1", - "execa": "^6.1.0", - "parcel": "2.0.0-nightly.1278", + "parcel": "^2.0.0", "prompts": "^2.4.2", "react": "^18.1.0", "react-dom": "^18.1.0", diff --git a/e2e/start-companion-with-load-balancer.mjs b/e2e/start-companion-with-load-balancer.mjs index 28de8fcc71..b119a17983 100755 --- a/e2e/start-companion-with-load-balancer.mjs +++ b/e2e/start-companion-with-load-balancer.mjs @@ -1,6 +1,6 @@ #!/usr/bin/env node -import { execa } from 'execa' +import { spawn } from 'node:child_process' import http from 'node:http' import httpProxy from 'http-proxy' @@ -45,20 +45,34 @@ function createLoadBalancer (baseUrls) { return server } -const startCompanion = ({ name, port }) => execa('nodemon', [ - '--watch', 'packages/@uppy/companion/src', '--exec', 'node', '-r', 'dotenv/config', './packages/@uppy/companion/src/standalone/start-server.js', -], { - cwd: new URL('../', import.meta.url), - stdio: 'inherit', - env: { +const startCompanion = ({ name, port }) => { + const cp = spawn(process.execPath, [ + '--watch-path', 'packages/@uppy/companion/src', '-r', 'dotenv/config', '--watch', './packages/@uppy/companion/src/standalone/start-server.js', + ], { + cwd: new URL('../', import.meta.url), + stdio: 'inherit', + env: { // Note: these env variables will override anything set in .env - COMPANION_PORT: port, - COMPANION_SECRET: 'development', // multi instance will not work without secret set - COMPANION_PREAUTH_SECRET: 'development', // multi instance will not work without secret set - COMPANION_ALLOW_LOCAL_URLS: 'true', - COMPANION_LOGGER_PROCESS_NAME: name, - }, -}) + COMPANION_PORT: port, + COMPANION_SECRET: 'development', // multi instance will not work without secret set + COMPANION_PREAUTH_SECRET: 'development', // multi instance will not work without secret set + COMPANION_ALLOW_LOCAL_URLS: 'true', + COMPANION_LOGGER_PROCESS_NAME: name, + }, + }) + return Object.defineProperty(cp, 'then', { + __proto__: null, + writable: true, + configurable: true, + value: Promise.prototype.then.bind(new Promise((resolve, reject) => { + cp.on('exit', (code) => { + if (code === 0) resolve(cp) + else reject(new Error(`Non-zero exit code: ${code}`)) + }) + cp.on('error', reject) + })), + }) +} const hosts = Array.from({ length: numInstances }, (_, index) => { const port = companionStartPort + index diff --git a/package.json b/package.json index 4b2f3a8fc7..6dcda3c2de 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,6 @@ "@babel/preset-env": "^7.14.7", "@babel/register": "^7.10.5", "@babel/types": "^7.17.0", - "@parcel/transformer-vue": "2.8.4-nightly.2903+5b901a317", "@types/jasmine": "file:./private/@types/jasmine", "@types/jasminewd2": "file:./private/@types/jasmine", "@typescript-eslint/eslint-plugin": "^5.0.0", @@ -173,6 +172,7 @@ "@types/react": "^17", "@types/webpack-dev-server": "^4", "jest-environment-jsdom": "patch:jest-environment-jsdom@npm:29.5.0#.yarn/patches/jest-environment-jsdom-npm-29.5.0-fc600add1e.patch", + "p-queue": "patch:p-queue@npm%3A7.3.4#./.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch", "pre-commit": "patch:pre-commit@npm:1.2.2#.yarn/patches/pre-commit-npm-1.2.2-f30af83877.patch", "preact": "patch:preact@npm:10.10.0#.yarn/patches/preact-npm-10.10.0-dd04de05e8.patch", "start-server-and-test": "patch:start-server-and-test@npm:1.14.0#.yarn/patches/start-server-and-test-npm-1.14.0-841aa34fdf.patch", diff --git a/packages/@uppy/provider-views/src/ProviderView/ProviderView.jsx b/packages/@uppy/provider-views/src/ProviderView/ProviderView.jsx index e0991350e2..206fe89728 100644 --- a/packages/@uppy/provider-views/src/ProviderView/ProviderView.jsx +++ b/packages/@uppy/provider-views/src/ProviderView/ProviderView.jsx @@ -1,5 +1,4 @@ import { h } from 'preact' -// eslint-disable-next-line import/no-unresolved import PQueue from 'p-queue' import { getSafeFileId } from '@uppy/utils/lib/generateFileID' diff --git a/yarn.lock b/yarn.lock index 9bca966431..d9a7a56ae6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2554,6 +2554,15 @@ __metadata: languageName: node linkType: hard +"@babel/parser@npm:^7.20.15, @babel/parser@npm:^7.21.3": + version: 7.22.14 + resolution: "@babel/parser@npm:7.22.14" + bin: + parser: ./bin/babel-parser.js + checksum: a2293971f0889726a3d5a35fcceedc71d2fa4c8d97f438fc348fe0cf7e739affc6e2665e4c6ddd4900714772e19bfd5d6feb967ca1f623b894c0099ecb148b52 + languageName: node + linkType: hard + "@babel/parser@npm:^7.22.10, @babel/parser@npm:^7.22.7": version: 7.22.10 resolution: "@babel/parser@npm:7.22.10" @@ -4139,9 +4148,9 @@ __metadata: languageName: node linkType: hard -"@cypress/request@npm:^2.88.10": - version: 2.88.11 - resolution: "@cypress/request@npm:2.88.11" +"@cypress/request@npm:^3.0.0": + version: 3.0.0 + resolution: "@cypress/request@npm:3.0.0" dependencies: aws-sign2: ~0.7.0 aws4: ^1.8.0 @@ -4158,10 +4167,10 @@ __metadata: performance-now: ^2.1.0 qs: ~6.10.3 safe-buffer: ^5.1.2 - tough-cookie: ~2.5.0 + tough-cookie: ^4.1.3 tunnel-agent: ^0.6.0 uuid: ^8.3.2 - checksum: e4b3f62e0c41c4ccca6c942828461d8ea717e752fd918d685e9f74e2ebcfa8b7942427f7ce971e502635c3bf3d40011476db84dc753d3dc360c6d08350da6f93 + checksum: 8ec81075b800b84df8a616dce820a194d562a35df251da234f849344022979f3675baa0b82988843f979a488e39bc1eec6204cfe660c75ace9bf4d2951edec43 languageName: node linkType: hard @@ -5584,44 +5593,44 @@ __metadata: languageName: node linkType: hard -"@lmdb/lmdb-darwin-arm64@npm:2.5.2": - version: 2.5.2 - resolution: "@lmdb/lmdb-darwin-arm64@npm:2.5.2" +"@lmdb/lmdb-darwin-arm64@npm:2.7.11": + version: 2.7.11 + resolution: "@lmdb/lmdb-darwin-arm64@npm:2.7.11" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@lmdb/lmdb-darwin-x64@npm:2.5.2": - version: 2.5.2 - resolution: "@lmdb/lmdb-darwin-x64@npm:2.5.2" +"@lmdb/lmdb-darwin-x64@npm:2.7.11": + version: 2.7.11 + resolution: "@lmdb/lmdb-darwin-x64@npm:2.7.11" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@lmdb/lmdb-linux-arm64@npm:2.5.2": - version: 2.5.2 - resolution: "@lmdb/lmdb-linux-arm64@npm:2.5.2" +"@lmdb/lmdb-linux-arm64@npm:2.7.11": + version: 2.7.11 + resolution: "@lmdb/lmdb-linux-arm64@npm:2.7.11" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"@lmdb/lmdb-linux-arm@npm:2.5.2": - version: 2.5.2 - resolution: "@lmdb/lmdb-linux-arm@npm:2.5.2" +"@lmdb/lmdb-linux-arm@npm:2.7.11": + version: 2.7.11 + resolution: "@lmdb/lmdb-linux-arm@npm:2.7.11" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@lmdb/lmdb-linux-x64@npm:2.5.2": - version: 2.5.2 - resolution: "@lmdb/lmdb-linux-x64@npm:2.5.2" +"@lmdb/lmdb-linux-x64@npm:2.7.11": + version: 2.7.11 + resolution: "@lmdb/lmdb-linux-x64@npm:2.7.11" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"@lmdb/lmdb-win32-x64@npm:2.5.2": - version: 2.5.2 - resolution: "@lmdb/lmdb-win32-x64@npm:2.5.2" +"@lmdb/lmdb-win32-x64@npm:2.7.11": + version: 2.7.11 + resolution: "@lmdb/lmdb-win32-x64@npm:2.7.11" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -5658,6 +5667,13 @@ __metadata: languageName: node linkType: hard +"@msgpackr-extract/msgpackr-extract-darwin-arm64@npm:3.0.2": + version: 3.0.2 + resolution: "@msgpackr-extract/msgpackr-extract-darwin-arm64@npm:3.0.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@msgpackr-extract/msgpackr-extract-darwin-x64@npm:2.1.2": version: 2.1.2 resolution: "@msgpackr-extract/msgpackr-extract-darwin-x64@npm:2.1.2" @@ -5665,6 +5681,13 @@ __metadata: languageName: node linkType: hard +"@msgpackr-extract/msgpackr-extract-darwin-x64@npm:3.0.2": + version: 3.0.2 + resolution: "@msgpackr-extract/msgpackr-extract-darwin-x64@npm:3.0.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@msgpackr-extract/msgpackr-extract-linux-arm64@npm:2.1.2": version: 2.1.2 resolution: "@msgpackr-extract/msgpackr-extract-linux-arm64@npm:2.1.2" @@ -5672,6 +5695,13 @@ __metadata: languageName: node linkType: hard +"@msgpackr-extract/msgpackr-extract-linux-arm64@npm:3.0.2": + version: 3.0.2 + resolution: "@msgpackr-extract/msgpackr-extract-linux-arm64@npm:3.0.2" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + "@msgpackr-extract/msgpackr-extract-linux-arm@npm:2.1.2": version: 2.1.2 resolution: "@msgpackr-extract/msgpackr-extract-linux-arm@npm:2.1.2" @@ -5679,6 +5709,13 @@ __metadata: languageName: node linkType: hard +"@msgpackr-extract/msgpackr-extract-linux-arm@npm:3.0.2": + version: 3.0.2 + resolution: "@msgpackr-extract/msgpackr-extract-linux-arm@npm:3.0.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@msgpackr-extract/msgpackr-extract-linux-x64@npm:2.1.2": version: 2.1.2 resolution: "@msgpackr-extract/msgpackr-extract-linux-x64@npm:2.1.2" @@ -5686,6 +5723,13 @@ __metadata: languageName: node linkType: hard +"@msgpackr-extract/msgpackr-extract-linux-x64@npm:3.0.2": + version: 3.0.2 + resolution: "@msgpackr-extract/msgpackr-extract-linux-x64@npm:3.0.2" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + "@msgpackr-extract/msgpackr-extract-win32-x64@npm:2.1.2": version: 2.1.2 resolution: "@msgpackr-extract/msgpackr-extract-win32-x64@npm:2.1.2" @@ -5693,6 +5737,13 @@ __metadata: languageName: node linkType: hard +"@msgpackr-extract/msgpackr-extract-win32-x64@npm:3.0.2": + version: 3.0.2 + resolution: "@msgpackr-extract/msgpackr-extract-win32-x64@npm:3.0.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@ngtools/webpack@npm:16.2.0": version: 16.2.0 resolution: "@ngtools/webpack@npm:16.2.0" @@ -6041,228 +6092,111 @@ __metadata: languageName: node linkType: hard -"@parcel/bundler-default@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/bundler-default@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/graph": 2.8.4-nightly.2903+5b901a317 - "@parcel/hash": 2.8.4-nightly.2903+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - nullthrows: ^1.1.1 - checksum: 936a3ea9adac2641cac0059a2f5927ab660e8f9e5dba946c92e4300beac4804743f642a76545c1d11ad71f6f5e362c654b33af2185e7e222c3a81616c487e29a - languageName: node - linkType: hard - -"@parcel/bundler-default@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/bundler-default@npm:2.8.3" +"@parcel/bundler-default@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/bundler-default@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/graph": 2.8.3 - "@parcel/hash": 2.8.3 - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/graph": 2.9.3 + "@parcel/hash": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 - checksum: 219b2be341cad20991659b7a3031454a081ce0787c161a4da8a73ae8a4af4468667b284caea9488e869b162763d308cfd6495ab35fe386413b14325d6667ea86 - languageName: node - linkType: hard - -"@parcel/cache@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/cache@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/fs": 2.0.0-nightly.1280+5b901a317 - "@parcel/logger": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - lmdb: 2.5.2 - peerDependencies: - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - checksum: 4ae837045250e1415eb7c73787c66a08138cb2e559b3a836a63ede0708a127c6030a7278508020830b0830cd5e2688d0ef70dc90271f24792d1b469f74658b76 + checksum: 271f354e6148ab9abbbc0d7a5c22479f64d53196b1bff562a4235fa308c3dced568f1737d4ecb9ff971cdf0d8a36feee083f5491ce8e889cda5d718ed60eebe4 languageName: node linkType: hard -"@parcel/cache@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/cache@npm:2.8.3" +"@parcel/cache@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/cache@npm:2.9.3" dependencies: - "@parcel/fs": 2.8.3 - "@parcel/logger": 2.8.3 - "@parcel/utils": 2.8.3 - lmdb: 2.5.2 + "@parcel/fs": 2.9.3 + "@parcel/logger": 2.9.3 + "@parcel/utils": 2.9.3 + lmdb: 2.7.11 peerDependencies: - "@parcel/core": ^2.8.3 - checksum: cd679053d229f8d06536a8fc9d857e5fa58905492e1a97c4f6b1da82de0dcef202a609c1e36206d3cdb32e5da3a214525f868b98dfd7aa671a53dacceb004fd9 + "@parcel/core": ^2.9.3 + checksum: 31bb356d2edd6e8aa467753256bd9a8cd158e885528f8407ba8ecf250994e86d66f103ba89c8dbb0419639c4de5e98d906d95663eabc3363a972e8eb9b2d6493 languageName: node linkType: hard -"@parcel/codeframe@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/codeframe@npm:2.0.0-nightly.1280" +"@parcel/codeframe@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/codeframe@npm:2.9.3" dependencies: chalk: ^4.1.0 - checksum: af0d7b78b4779f980c1c4fc1965d085926183c84b1d071c270df37ba973de20bb9e3e8db864ffba0778e8fb8ac41dfc9e2af1faa3eb9fd7f474864b3e77229ae + checksum: f86a4d90eb4c33fd7c5189bf26b1d41e7955433e5a9be7fe1ce267abb74d7ad4bceeecd77db167c971604d4fef6c6fae4f5f12fa7d7f4078913ed7c92396bc14 languageName: node linkType: hard -"@parcel/codeframe@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/codeframe@npm:2.8.3" - dependencies: - chalk: ^4.1.0 - checksum: a6e82c30e6251dcae14f247a14f6cb265f766b8bf18b62dd6a1c4a103cfae364a08897b36c5c379d0d867169647cb72962266f77571f718ff68ef70a16b81c02 - languageName: node - linkType: hard - -"@parcel/compressor-raw@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/compressor-raw@npm:2.8.3" - dependencies: - "@parcel/plugin": 2.8.3 - checksum: ca3b8a4f60e5193cffaa8041e709513df9c6cb54f32c9d20fef993a9af2d84f1e2d8bf8f4092220a8abaec24679498f854e683511876187f35b4f94a5852cf85 - languageName: node - linkType: hard - -"@parcel/compressor-raw@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/compressor-raw@npm:2.8.4-nightly.2903" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - checksum: 02465b01f57504afcb6819fd58f74e969f3db4467aebd63ddf24657241583dbf4d9cd56e5e8d76bdb9ab77518fb53756e9f9317e311937f077f9ce0aba56c281 - languageName: node - linkType: hard - -"@parcel/config-default@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/config-default@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/bundler-default": 2.0.0-nightly.1280+5b901a317 - "@parcel/compressor-raw": 2.8.4-nightly.2903+5b901a317 - "@parcel/namer-default": 2.0.0-nightly.1280+5b901a317 - "@parcel/optimizer-css": 2.8.4-nightly.2903+5b901a317 - "@parcel/optimizer-htmlnano": 2.0.0-nightly.1280+5b901a317 - "@parcel/optimizer-image": 2.8.4-nightly.2903+5b901a317 - "@parcel/optimizer-svgo": 2.8.4-nightly.2903+5b901a317 - "@parcel/optimizer-swc": 2.8.4-nightly.2903+5b901a317 - "@parcel/packager-css": 2.0.0-nightly.1280+5b901a317 - "@parcel/packager-html": 2.0.0-nightly.1280+5b901a317 - "@parcel/packager-js": 2.0.0-nightly.1280+5b901a317 - "@parcel/packager-raw": 2.0.0-nightly.1280+5b901a317 - "@parcel/packager-svg": 2.8.4-nightly.2903+5b901a317 - "@parcel/reporter-dev-server": 2.0.0-nightly.1280+5b901a317 - "@parcel/resolver-default": 2.0.0-nightly.1280+5b901a317 - "@parcel/runtime-browser-hmr": 2.0.0-nightly.1280+5b901a317 - "@parcel/runtime-js": 2.0.0-nightly.1280+5b901a317 - "@parcel/runtime-react-refresh": 2.0.0-nightly.1280+5b901a317 - "@parcel/runtime-service-worker": 2.8.4-nightly.2903+5b901a317 - "@parcel/transformer-babel": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-css": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-html": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-image": 2.8.4-nightly.2903+5b901a317 - "@parcel/transformer-js": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-json": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-postcss": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-posthtml": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-raw": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-react-refresh-wrap": 2.0.0-nightly.1280+5b901a317 - "@parcel/transformer-svg": 2.8.4-nightly.2903+5b901a317 - peerDependencies: - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - checksum: 3d72c1fec22e5e2ddbe1ca11b1460f08247253d6c5e21863f47f31058075fb1804c69c40d99cdab9b47f0a1d9f668b7bd8bef3d87c1e15cb11220f0a32847a15 - languageName: node - linkType: hard - -"@parcel/config-default@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/config-default@npm:2.8.3" - dependencies: - "@parcel/bundler-default": 2.8.3 - "@parcel/compressor-raw": 2.8.3 - "@parcel/namer-default": 2.8.3 - "@parcel/optimizer-css": 2.8.3 - "@parcel/optimizer-htmlnano": 2.8.3 - "@parcel/optimizer-image": 2.8.3 - "@parcel/optimizer-svgo": 2.8.3 - "@parcel/optimizer-terser": 2.8.3 - "@parcel/packager-css": 2.8.3 - "@parcel/packager-html": 2.8.3 - "@parcel/packager-js": 2.8.3 - "@parcel/packager-raw": 2.8.3 - "@parcel/packager-svg": 2.8.3 - "@parcel/reporter-dev-server": 2.8.3 - "@parcel/resolver-default": 2.8.3 - "@parcel/runtime-browser-hmr": 2.8.3 - "@parcel/runtime-js": 2.8.3 - "@parcel/runtime-react-refresh": 2.8.3 - "@parcel/runtime-service-worker": 2.8.3 - "@parcel/transformer-babel": 2.8.3 - "@parcel/transformer-css": 2.8.3 - "@parcel/transformer-html": 2.8.3 - "@parcel/transformer-image": 2.8.3 - "@parcel/transformer-js": 2.8.3 - "@parcel/transformer-json": 2.8.3 - "@parcel/transformer-postcss": 2.8.3 - "@parcel/transformer-posthtml": 2.8.3 - "@parcel/transformer-raw": 2.8.3 - "@parcel/transformer-react-refresh-wrap": 2.8.3 - "@parcel/transformer-svg": 2.8.3 - peerDependencies: - "@parcel/core": ^2.8.3 - checksum: 08c700a7a253f39e84e1d341b3e0f558a2410bb27bf8a128113d8d157c32a7ef6b6ebd95e2c26d9f35c1040b98ff229ab56782247746189b4c41b925d1efd251 - languageName: node - linkType: hard - -"@parcel/core@npm:2.0.0-nightly.1278+5b901a317": - version: 2.0.0-nightly.1278 - resolution: "@parcel/core@npm:2.0.0-nightly.1278" +"@parcel/compressor-raw@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/compressor-raw@npm:2.9.3" dependencies: - "@mischnic/json-sourcemap": ^0.1.0 - "@parcel/cache": 2.0.0-nightly.1280+5b901a317 - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/events": 2.0.0-nightly.1280+5b901a317 - "@parcel/fs": 2.0.0-nightly.1280+5b901a317 - "@parcel/graph": 2.8.4-nightly.2903+5b901a317 - "@parcel/hash": 2.8.4-nightly.2903+5b901a317 - "@parcel/logger": 2.0.0-nightly.1280+5b901a317 - "@parcel/package-manager": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - "@parcel/workers": 2.0.0-nightly.1280+5b901a317 - abortcontroller-polyfill: ^1.1.9 - base-x: ^3.0.8 - browserslist: ^4.6.6 - clone: ^2.1.1 - dotenv: ^7.0.0 - dotenv-expand: ^5.1.0 - json5: ^2.2.0 - msgpackr: ^1.5.4 - nullthrows: ^1.1.1 - semver: ^5.7.1 - checksum: a3348495e20dec77aff5126ac8feaaedf409dd079e85807316696880d2d8d1a96be7e0f2e6f85d831cf675c6bd2a36b5720eaf7eb65f583c5a8215a08ec455c0 + "@parcel/plugin": 2.9.3 + checksum: 2124c347a538b18d880ee0ae9e3e574236e402fec46b8288ccde83fcf81b51eb0d85e39067eff3ff6e8872461cbe5b39de4be5a12669efc33e08f8dd70b2b943 languageName: node linkType: hard -"@parcel/core@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/core@npm:2.8.3" +"@parcel/config-default@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/config-default@npm:2.9.3" + dependencies: + "@parcel/bundler-default": 2.9.3 + "@parcel/compressor-raw": 2.9.3 + "@parcel/namer-default": 2.9.3 + "@parcel/optimizer-css": 2.9.3 + "@parcel/optimizer-htmlnano": 2.9.3 + "@parcel/optimizer-image": 2.9.3 + "@parcel/optimizer-svgo": 2.9.3 + "@parcel/optimizer-swc": 2.9.3 + "@parcel/packager-css": 2.9.3 + "@parcel/packager-html": 2.9.3 + "@parcel/packager-js": 2.9.3 + "@parcel/packager-raw": 2.9.3 + "@parcel/packager-svg": 2.9.3 + "@parcel/reporter-dev-server": 2.9.3 + "@parcel/resolver-default": 2.9.3 + "@parcel/runtime-browser-hmr": 2.9.3 + "@parcel/runtime-js": 2.9.3 + "@parcel/runtime-react-refresh": 2.9.3 + "@parcel/runtime-service-worker": 2.9.3 + "@parcel/transformer-babel": 2.9.3 + "@parcel/transformer-css": 2.9.3 + "@parcel/transformer-html": 2.9.3 + "@parcel/transformer-image": 2.9.3 + "@parcel/transformer-js": 2.9.3 + "@parcel/transformer-json": 2.9.3 + "@parcel/transformer-postcss": 2.9.3 + "@parcel/transformer-posthtml": 2.9.3 + "@parcel/transformer-raw": 2.9.3 + "@parcel/transformer-react-refresh-wrap": 2.9.3 + "@parcel/transformer-svg": 2.9.3 + peerDependencies: + "@parcel/core": ^2.9.3 + checksum: 61ef21351ede9475fbe8e49fecd1bcdd6d50aa323e2f080fdc95a55428f43f0b38929f13252e227267e5ecce933166ede4c1a89c2461c605e37e25e13b7cee13 + languageName: node + linkType: hard + +"@parcel/core@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/core@npm:2.9.3" dependencies: "@mischnic/json-sourcemap": ^0.1.0 - "@parcel/cache": 2.8.3 - "@parcel/diagnostic": 2.8.3 - "@parcel/events": 2.8.3 - "@parcel/fs": 2.8.3 - "@parcel/graph": 2.8.3 - "@parcel/hash": 2.8.3 - "@parcel/logger": 2.8.3 - "@parcel/package-manager": 2.8.3 - "@parcel/plugin": 2.8.3 + "@parcel/cache": 2.9.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/events": 2.9.3 + "@parcel/fs": 2.9.3 + "@parcel/graph": 2.9.3 + "@parcel/hash": 2.9.3 + "@parcel/logger": 2.9.3 + "@parcel/package-manager": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/profiler": 2.9.3 "@parcel/source-map": ^2.1.1 - "@parcel/types": 2.8.3 - "@parcel/utils": 2.8.3 - "@parcel/workers": 2.8.3 + "@parcel/types": 2.9.3 + "@parcel/utils": 2.9.3 + "@parcel/workers": 2.9.3 abortcontroller-polyfill: ^1.1.9 base-x: ^3.0.8 browserslist: ^4.6.6 @@ -6272,674 +6206,367 @@ __metadata: json5: ^2.2.0 msgpackr: ^1.5.4 nullthrows: ^1.1.1 - semver: ^5.7.1 - checksum: 68adceb1b041208fe922bb52da218e6be90d6e016322f4eac5a5dbfbac72838080cf9bbce51785d65556a258293c02dffba4482217dbd9b723258101d925fb0e - languageName: node - linkType: hard - -"@parcel/diagnostic@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/diagnostic@npm:2.0.0-nightly.1280" - dependencies: - "@mischnic/json-sourcemap": ^0.1.0 - nullthrows: ^1.1.1 - checksum: 07918b760d4ce474b5d4a39fd10f9febb82dc6b4562ea4476ae42b972e0cd5bb2d7c782cffa593cd8d3a85b5fcf8f9dc331f755076037010750a20a56c8ea74b + semver: ^7.5.2 + checksum: e4ba4e0909a0d2a097fbb2bdefd388ac19a29ba73e898cdaa18e9fe0ea622d853fcb1033525ab1e9bceb9f8ef544e1fe1b27a2e0228cbb319fe3285e1b59f95b languageName: node linkType: hard -"@parcel/diagnostic@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/diagnostic@npm:2.8.3" +"@parcel/diagnostic@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/diagnostic@npm:2.9.3" dependencies: "@mischnic/json-sourcemap": ^0.1.0 nullthrows: ^1.1.1 - checksum: c24d98a2dbf068ef334c595d51504cd063310c0327477b5d7bcf817af3f8ad79d56593cdf91d8d45cb4a41a48baf9090ae4100a96d2c197d4ed20bc5db9df2d9 - languageName: node - linkType: hard - -"@parcel/events@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/events@npm:2.0.0-nightly.1280" - checksum: 8208e6d05faddef14d19b3e46526ce0b2e5a6ab8878e3d84ba818f8b2191c22369b30ccad0e19f16b756748f3d88d095d1c8b34f1dd443570ed9019193d71551 - languageName: node - linkType: hard - -"@parcel/events@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/events@npm:2.8.3" - checksum: 9d23c6663e9afce1d1094c46d38eba0b0171835201140258c1dcd33f63cfbc20bb1abdc163cbb7a01d407a8cf06c8742c10035c8a835ebca261b19d8ee0fbf7e - languageName: node - linkType: hard - -"@parcel/fs-search@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/fs-search@npm:2.8.3" - dependencies: - detect-libc: ^1.0.3 - checksum: 25e8eda6942fbf28e02cef1f5e94acafb3e33275a20b0a3e553402f04d2d24026be796b645728e872949dc8555b03a7d26d615a4f8eeed03a3af76aed535cc10 + checksum: 5897500e3b86181ca5975ec4fca6a931e27e76943efe4d76b02850a35c2394ed94f6f91f94d1a00faf0be2e4a1bfc087150cea8c17d23bbcd0250a0aa12e32d8 languageName: node linkType: hard -"@parcel/fs-search@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/fs-search@npm:2.8.4-nightly.2903" - checksum: 1e0c5c2d612396c789426a5cc2af201f81a22e55c22f73b04f4372b9437833489beb5043ac62342f474b2d69a3fa0d5a7d46d28d8066f75cc0b9f4584b4f072a +"@parcel/events@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/events@npm:2.9.3" + checksum: c61ac95ce201183f2f0f6398e567b1fb02eba7ccb2e0ccab268b949e03095f08ab58ef82e8c547e1e816561ee9a0d9e83d0e86df2c467ff9f9f66451d84c33ee languageName: node linkType: hard -"@parcel/fs@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/fs@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/fs-search": 2.8.4-nightly.2903+5b901a317 - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - "@parcel/watcher": ^2.0.7 - "@parcel/workers": 2.0.0-nightly.1280+5b901a317 - peerDependencies: - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - checksum: c8460a191854c39777e3da71f09dfe2e57f134202f8c89c801850e2f28e5a0bdbf71a5e0d4ebc5af8365f6c90f76191abf911420aa0f54933c52c42d6d607298 +"@parcel/fs-search@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/fs-search@npm:2.9.3" + checksum: 6e7df35cc20932d20fbbbcc4bb81d346bf142359a308f2bd114a5b681776b9586adc36f88b2b7d7beae33e7b98ef8f30a30ec9f98a35e705477f2282e91efefc languageName: node linkType: hard -"@parcel/fs@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/fs@npm:2.8.3" +"@parcel/fs@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/fs@npm:2.9.3" dependencies: - "@parcel/fs-search": 2.8.3 - "@parcel/types": 2.8.3 - "@parcel/utils": 2.8.3 + "@parcel/fs-search": 2.9.3 + "@parcel/types": 2.9.3 + "@parcel/utils": 2.9.3 "@parcel/watcher": ^2.0.7 - "@parcel/workers": 2.8.3 + "@parcel/workers": 2.9.3 peerDependencies: - "@parcel/core": ^2.8.3 - checksum: cc421552daef3c7676030867a1b4ed45d64d5f4221b0b12d487a86183a39544290fd3e7ed9104b1b58c05f2a6b5ec0698ce37a9cd49c484d94ed6b445f26d598 - languageName: node - linkType: hard - -"@parcel/graph@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/graph@npm:2.8.3" - dependencies: - nullthrows: ^1.1.1 - checksum: ceed8445f5a23396cca001a54ee0620bd7d6ecbb455977c16bd2f446da14c1791817ed715a4cf70d6ba66310991eeee44d692f15f70ff52e75b98b629da25a88 + "@parcel/core": ^2.9.3 + checksum: c9bf9ca9e60364fbf84362dd4a19a4c73b17ac6563e9894beafc8728a811226f67010c08018e774e8a194f1c63e5445a78be757246205427ccd34b299c18c9d2 languageName: node linkType: hard -"@parcel/graph@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/graph@npm:2.8.4-nightly.2903" +"@parcel/graph@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/graph@npm:2.9.3" dependencies: nullthrows: ^1.1.1 - checksum: 639aadb5c859aa09ba914b8889fd13e4705a4dbb1f76a03ce6c8bd5c54f57a498a97f4102a0c5ecc873619cd84e9b8f5de26cbc4d067843db4cfa35ba2c94d91 - languageName: node - linkType: hard - -"@parcel/hash@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/hash@npm:2.8.3" - dependencies: - detect-libc: ^1.0.3 - xxhash-wasm: ^0.4.2 - checksum: 29cef199feda672756c930a8b45ee91e46607aa1b6659c38658758fe2f88870c20e0d4e8738d96ca8b44df60c1b767b5593110e2d24b99382214158c759258d0 + checksum: 7fdd830928cddd56aca9427fb3ea5ad8fd2378876d71a39f4351f37b7e7bfaeef971f45c3b9c710b337e258eea300ad702446169bac3a4bbae8c283f5e1145be languageName: node linkType: hard -"@parcel/hash@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/hash@npm:2.8.4-nightly.2903" +"@parcel/hash@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/hash@npm:2.9.3" dependencies: xxhash-wasm: ^0.4.2 - checksum: 4e1994f815d94a0a0325d899b5cf71fb8fb76cd1156b57b8bc26404a8a10e110ebbbfb40b6ab2f9722964598c6a1efd131045e93f7a3517730f197a0b1191345 - languageName: node - linkType: hard - -"@parcel/logger@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/logger@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/events": 2.0.0-nightly.1280+5b901a317 - checksum: 68ef2004b53f6cd86370a4861e5ab6d19b9e0980993448d0b604e7142ac33c388e580e77bf890741050b3d9ecdac796796b1a3e0d8032c14457ad4f2dbba0b0a + checksum: d5329116c55a62026da8a15a5bb8b8b4fbb2308004bd03c6755ca1e7b83a2dd9b18bd2e7c288d25cefd4f5338d128fccbaf8d3f2a9351e292e7f040b4ba80f69 languageName: node linkType: hard -"@parcel/logger@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/logger@npm:2.8.3" +"@parcel/logger@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/logger@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/events": 2.8.3 - checksum: 04fd46313138ea8e38c5bd051cd79ee245ad0a7bb6d5d12a892cafa79755af81ec1b6ddc83a79224bb74170bc1323f016cf849981326adb391f43920976ec9dc + "@parcel/diagnostic": 2.9.3 + "@parcel/events": 2.9.3 + checksum: eb68996b7be5a8373083b93e8f5655e4e685c1dec15840d3b724af44ecefc101b595263ec53d3f5f7870c29328e25e67065449f1e310f485f9b7bb4c29bf0ee3 languageName: node linkType: hard -"@parcel/markdown-ansi@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/markdown-ansi@npm:2.0.0-nightly.1280" - dependencies: - chalk: ^4.1.0 - checksum: f30557ba0f0143c3013b6d935386641ab3d1bcdf2a468da9686ddf47c7f567a52e2012145094473494d205210b2427e316cc565070e430493ec9f75ad48774f0 - languageName: node - linkType: hard - -"@parcel/markdown-ansi@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/markdown-ansi@npm:2.8.3" +"@parcel/markdown-ansi@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/markdown-ansi@npm:2.9.3" dependencies: chalk: ^4.1.0 - checksum: 1985f149b2ac08347f954230922fdcc45d7ceedba9b7f458078843a018d950a56cb512fb951537b4f995e861b9290b0757cfc0eadf542a13b124175b5ef02945 - languageName: node - linkType: hard - -"@parcel/namer-default@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/namer-default@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - nullthrows: ^1.1.1 - checksum: b5e47d1c3b2ee910805165b9cdde5aac909e0105076f8ad772ce7454f200e174123b01e9efaf4d4bc389786dcd9b70af70552281d3c912cd7335142b8c56de3b - languageName: node - linkType: hard - -"@parcel/namer-default@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/namer-default@npm:2.8.3" - dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 - nullthrows: ^1.1.1 - checksum: 7c2c3434460d8fa6c9d482a9bfc681e47322ad82c8beef193eee9e45831374860d0f89de4c69e2e5cf41301cad19c7e87f5b536ca7d684aa383e783bcce02ef1 + checksum: da1fed88dddb4529ebf489676568ca3bae7b302c96156ec0419811b23ee7056a17c308994cf80cb6952abf3f954933348af75e9fd5394b29ea291182b35cb3b4 languageName: node linkType: hard -"@parcel/node-resolver-core@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/node-resolver-core@npm:2.8.3" +"@parcel/namer-default@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/namer-default@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/utils": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 nullthrows: ^1.1.1 - semver: ^5.7.1 - checksum: 4976d3ecc9acc6ee05c7709291f4576c269bc84f896c8bf9e6171ce6f9fbd9c2dd7e3db4e11542b3b29093c73f5451724c94bf7b0735b9920ddcdeecf1809968 + checksum: 23a588ee0f1460665c773986d5611219418fa1abac7e270613c52ae22f1fed0a9009a57c8ebf1e9fb0e15a000869b4c351186eac2f411c0a6c00b621377c598c languageName: node linkType: hard -"@parcel/node-resolver-core@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/node-resolver-core@npm:2.8.4-nightly.2903" +"@parcel/node-resolver-core@npm:3.0.3": + version: 3.0.3 + resolution: "@parcel/node-resolver-core@npm:3.0.3" dependencies: "@mischnic/json-sourcemap": ^0.1.0 - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/fs": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 + "@parcel/diagnostic": 2.9.3 + "@parcel/fs": 2.9.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 - semver: ^5.7.1 - checksum: 716a08216910fc114c3efc068a2ae0958d17064a15d74324d0b7ea819b5722840f4f53c2f506c57b46ca90048e506263478db2c70837c722e1e9425282b9ab89 + semver: ^7.5.2 + checksum: 871f09066f9226f56ff21da16971c8046fb86fdfb465eba6930038b9a6ca9b288f561b268007e3b812236c2ea0dd2391055cbc1aa35178b356fcdd5fc0066b03 languageName: node linkType: hard -"@parcel/optimizer-css@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/optimizer-css@npm:2.8.3" - dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.8.3 - browserslist: ^4.6.6 - lightningcss: ^1.16.1 - nullthrows: ^1.1.1 - checksum: ffac43a2c20243d57b8627257b5a74462ebc0f4aa780b3117237240c9c3e9ca37ddcc8312296be9fe571a78f5a44cc14fa47ca9490d3796d673d8313d6cd8c9a - languageName: node - linkType: hard - -"@parcel/optimizer-css@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/optimizer-css@npm:2.8.4-nightly.2903" +"@parcel/optimizer-css@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/optimizer-css@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 + "@parcel/utils": 2.9.3 browserslist: ^4.6.6 lightningcss: ^1.16.1 nullthrows: ^1.1.1 - checksum: c25cf960eda5e3bcd066aa3c7cca990d938bb6cc2387bbe384060f60b23c8a0ff4085627c70ad226c09ca81cc6ee611da788cc2e7f0a780dfef7ccaf4a5510f6 + checksum: 09cdfb81911ba474f9076a24d08074206e6ade2ffc04ded9724f09677ec60e70fb9bb87685c35717c50b465d77183cb664cd43589506c63400befdac19d96170 languageName: node linkType: hard -"@parcel/optimizer-htmlnano@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/optimizer-htmlnano@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - htmlnano: ^2.0.0 - nullthrows: ^1.1.1 - posthtml: ^0.16.5 - svgo: ^2.4.0 - checksum: 1daacb2b5727a0f88d60df56daef565e1d49ee38f0a53e6cbf1545d8890c2240779bf473cc76118619308161f3fb7443bd459daa9e246a583425637e62480963 - languageName: node - linkType: hard - -"@parcel/optimizer-htmlnano@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/optimizer-htmlnano@npm:2.8.3" +"@parcel/optimizer-htmlnano@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/optimizer-htmlnano@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 + "@parcel/plugin": 2.9.3 htmlnano: ^2.0.0 nullthrows: ^1.1.1 posthtml: ^0.16.5 svgo: ^2.4.0 - checksum: ca1cab7b1ecc16f209ad867fbdd8b2f446fd831d8688db068491fa22786a5aa3a0debb4290e0f003830c6b06c6f3a4c3a3cd9cdb033e7fa6cded8a19887d5f23 - languageName: node - linkType: hard - -"@parcel/optimizer-image@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/optimizer-image@npm:2.8.3" - dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - "@parcel/workers": 2.8.3 - detect-libc: ^1.0.3 - checksum: 72c5acffaea833237f62e23c8fb183eb85863ccddeb11304b2299b28973b957daba1e34854d347314edf35d83cba695c0d7600e1ae125dec4cc3151abd8f2e31 + checksum: 32658dd81c75df9e85f348fe285d2b64805d47799f7b8574ca2bd79eebdb854385804d933818504f05d1368335e89cc22e001e739a68352967347dc6d7994228 languageName: node linkType: hard -"@parcel/optimizer-image@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/optimizer-image@npm:2.8.4-nightly.2903" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - "@parcel/workers": 2.0.0-nightly.1280+5b901a317 - checksum: 9805f058025f2614355cf9ecf493ee37a20dbabb9de29e236060b592ecb436b891ed52c889752a3ba259b3cbaf2f7e1b6f8b135488c3192bd4b526acfc36a918 - languageName: node - linkType: hard - -"@parcel/optimizer-svgo@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/optimizer-svgo@npm:2.8.3" +"@parcel/optimizer-image@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/optimizer-image@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - svgo: ^2.4.0 - checksum: b3544c08fac4009de1ec6f88136a58cdec70b072433b13fb99f9e6584dc4731afea82ae13d27e4121ed5aaec9e4481225a54251ce52b6ece835908300c26fa33 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 + "@parcel/workers": 2.9.3 + peerDependencies: + "@parcel/core": ^2.9.3 + checksum: 5053b2724474409407fd05d0250144cdcca65b731ce4d731cd9d77a241f4973c1f9e7edd2fce98724a6ad20070e1fed127898e7b3a41e762d81e044985619eb3 languageName: node linkType: hard -"@parcel/optimizer-svgo@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/optimizer-svgo@npm:2.8.4-nightly.2903" +"@parcel/optimizer-svgo@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/optimizer-svgo@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 svgo: ^2.4.0 - checksum: a7a961360bc8d31fe8cd4630285aa8008fbf2e26bc12895357d8129fa0d36ad8b6c0cea592ac4564ed69f0fc436e5de8a79d6a57b6d7720de6bfa25b03d6168e + checksum: fd2f1a9fc67bf44184ea00465695bae50b604f506f60b6f02c607267fd108cc4776d6069412550e0d4133d7d5e91ed91d9b84658c3d2d488d5854f4a93d84e72 languageName: node linkType: hard -"@parcel/optimizer-swc@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/optimizer-swc@npm:2.8.4-nightly.2903" +"@parcel/optimizer-swc@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/optimizer-swc@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 + "@parcel/utils": 2.9.3 "@swc/core": ^1.3.36 nullthrows: ^1.1.1 - checksum: 37d3fadef5a7ac754187c057e8d4ae577ee683a7b806932739dcc86e68774a883c1c1e66bc3ccee55a687ee5cabb9e325d14667f0048e321be27cc25c7494295 - languageName: node - linkType: hard - -"@parcel/optimizer-terser@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/optimizer-terser@npm:2.8.3" - dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.8.3 - nullthrows: ^1.1.1 - terser: ^5.2.0 - checksum: ee1959f5965c7eee8ad1519f9d2554810030f326e959dd5e44aa014c29a51c2ab777dfbbf604a6b4436b75176a8694b7b8c9d99f945d57dea7828225762c8823 - languageName: node - linkType: hard - -"@parcel/package-manager@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/package-manager@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/fs": 2.0.0-nightly.1280+5b901a317 - "@parcel/logger": 2.0.0-nightly.1280+5b901a317 - "@parcel/node-resolver-core": 2.8.4-nightly.2903+5b901a317 - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - "@parcel/workers": 2.0.0-nightly.1280+5b901a317 - semver: ^5.7.1 - peerDependencies: - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - checksum: e455aeaab735c22dbaa0491cc593b14ba3b54fff707e7cf20481c826da8b3750fb2b95f61b0b284361313295520108f07c68024e0de81800180b3860e888ec2b + checksum: 087012a418442d13da1a3f0e4452259762e76568153f1a926dd9371e52d54110c2ca68b2e57861be16032a7b5406c7afd90867d50b8a91c402ab8c2afd8a6c49 languageName: node linkType: hard -"@parcel/package-manager@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/package-manager@npm:2.8.3" +"@parcel/package-manager@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/package-manager@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/fs": 2.8.3 - "@parcel/logger": 2.8.3 - "@parcel/types": 2.8.3 - "@parcel/utils": 2.8.3 - "@parcel/workers": 2.8.3 - semver: ^5.7.1 + "@parcel/diagnostic": 2.9.3 + "@parcel/fs": 2.9.3 + "@parcel/logger": 2.9.3 + "@parcel/node-resolver-core": 3.0.3 + "@parcel/types": 2.9.3 + "@parcel/utils": 2.9.3 + "@parcel/workers": 2.9.3 + semver: ^7.5.2 peerDependencies: - "@parcel/core": ^2.8.3 - checksum: 572a5aacfd7bc545d9aa35ff2125f1231226b550f9b0fe2c36d68a82ec8ffb047035e25fdb883bc2331a6eaf69c98bb5d6752644546d962de7bf544c6243a959 - languageName: node - linkType: hard - -"@parcel/packager-css@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/packager-css@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - nullthrows: ^1.1.1 - checksum: 368784dc531481717ec463ecb21d32948afd2bd8255cdc6f7d24886d321e13e6d8fd61e98bd62904018a9606e4c05e04e38e84d37c54af920acb9e402ba7770b + "@parcel/core": ^2.9.3 + checksum: 46acc905b86fa97799096053abdbd384a9b439623064e541c1848ce52923e9f15e5cebaae9ef970872262e5710741836a8644d39155b0d84f15fbbd03089c9d9 languageName: node linkType: hard -"@parcel/packager-css@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/packager-css@npm:2.8.3" +"@parcel/packager-css@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/packager-css@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.8.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 - checksum: bb28fc9f02df83a1fd8eac7043466debb67398190819282a40a52ff299b0f4c3f474bfa7806be776ce36a66cc89574128a9fa210d2c0c9cb905bbb4dbbd2b926 + checksum: 725245c5d627966a6e7f520f8def814a7751438bb36f7df93d61462b461829b54a886bedeb5b509e00c94152768b06b1205be04d9701fc5c977e2a081e20452d languageName: node linkType: hard -"@parcel/packager-html@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/packager-html@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - nullthrows: ^1.1.1 - posthtml: ^0.16.5 - checksum: 4206ce709f5de492e46422def0056bbe27e62719bcf173e8cf9281ed0bb2f500129243af96f58bbe1d69300fc8d9e3cde203c5da58f2ac075a180b434b61b138 - languageName: node - linkType: hard - -"@parcel/packager-html@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/packager-html@npm:2.8.3" +"@parcel/packager-html@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/packager-html@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/types": 2.8.3 - "@parcel/utils": 2.8.3 + "@parcel/plugin": 2.9.3 + "@parcel/types": 2.9.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 posthtml: ^0.16.5 - checksum: 631f98fca0fdd3f11fe4cfbc1e0ad73b86f7fb00be7164fef5633c600a13282ae592b8f7d9aa31d4f66bd645ae57ce27e67db51a81b2a91c286ed5c8b36a4a87 + checksum: 163217c86a8ecde8696a2750f8cb51dee028cf5491a49808addb19ee2db1d68b897fde8f887800b0f47a699f61842cb0959119d0dc8f750462623bd2ad608802 languageName: node linkType: hard -"@parcel/packager-js@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/packager-js@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/hash": 2.8.4-nightly.2903+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - globals: ^13.2.0 - nullthrows: ^1.1.1 - checksum: 224cf1c29d4cb46e3ac260d7d7dadaba03a9ec2c8c9438eb6981b26629ae0031e79060d9e42bc63ab9660b77454fdb006c145a63ea8c621d8258e0a7130a980d - languageName: node - linkType: hard - -"@parcel/packager-js@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/packager-js@npm:2.8.3" +"@parcel/packager-js@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/packager-js@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/hash": 2.8.3 - "@parcel/plugin": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/hash": 2.9.3 + "@parcel/plugin": 2.9.3 "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.8.3 + "@parcel/utils": 2.9.3 globals: ^13.2.0 nullthrows: ^1.1.1 - checksum: 92ac88244b6104c5905ab95d882b755134042654ab48106ca84ab18441fb7240b66f049e407146958aead0812345823da729a4a37f32be17afd2b44cbdebc926 - languageName: node - linkType: hard - -"@parcel/packager-raw@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/packager-raw@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - checksum: a47bd334442d9c00b90968f8ec91148520573b29512a3d8ba311fd8ebcb86ae45866a42bbf639b9a820b3a9193a85060441338c4089387936b8954337f8ce55f - languageName: node - linkType: hard - -"@parcel/packager-raw@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/packager-raw@npm:2.8.3" - dependencies: - "@parcel/plugin": 2.8.3 - checksum: 26236dd64624a25fc1d749fb96b1bc3a6854b14d4386109670572f55feda4bb6affde19b1c9e971c4e50bfb53fd88e32da8303c83a3cb18ceaf12dd310685c34 + checksum: db8c74ec80921ea5c6fee9496f007b9f68cfd165710143137c07eaa16873ca976eb0065ffab8e4f9627946d6664141835089ec731ab10b8ee1e3aa53bdbb93b6 languageName: node linkType: hard -"@parcel/packager-svg@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/packager-svg@npm:2.8.3" +"@parcel/packager-raw@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/packager-raw@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/types": 2.8.3 - "@parcel/utils": 2.8.3 - posthtml: ^0.16.4 - checksum: 45c966ad8e6dbb25049adca66d761089a09cda83558d8767b46501a023b8d94b050f1a2899b1c8b18eac6cf87d2605ad5aa9a4cb2f9d90474794576dafb2e4fc + "@parcel/plugin": 2.9.3 + checksum: 840ddac49ce8c22cb815a1738cb8a40b9b1c6ccdf5a046b414a5f76fc08a5c870248eb76dbe61c4c06956d1b1c016dc7a49a1383176ae0a2f9cca4c1be9fced7 languageName: node linkType: hard -"@parcel/packager-svg@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/packager-svg@npm:2.8.4-nightly.2903" +"@parcel/packager-svg@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/packager-svg@npm:2.9.3" dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 + "@parcel/plugin": 2.9.3 + "@parcel/types": 2.9.3 + "@parcel/utils": 2.9.3 posthtml: ^0.16.4 - checksum: e26c1ff07026de7e07ebc38cba480d5af09001e1d48715450f4f068380b430c8eea43af440e0e61d9f9d749fc824d38c7f46279ef387278e62b8e7d04dc21dfd - languageName: node - linkType: hard - -"@parcel/plugin@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/plugin@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - checksum: ebf77381744e1c5f10dd021f18440f5baef3f3028dca012458150f4257b3166e794aa37c1bd37d9027bf831096bccc5e7476a3bf998287b8485dd8c17a324974 + checksum: ff09cfdbc523822c47e62e00e820b3d476ff9c30fc97b3c33d7d7d6e0926cf0e630106fdc3b079640a46c4af91bf733599c9d66e45943e4a3ecbfa2890e8d33d languageName: node linkType: hard -"@parcel/plugin@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/plugin@npm:2.8.3" +"@parcel/plugin@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/plugin@npm:2.9.3" dependencies: - "@parcel/types": 2.8.3 - checksum: a69ac66f5cc28197cf689f1c4144398457d62a086621a22b3b45fe863909a094b616dad415ec01673a9eb731b05fe9060bcb340c07efcd48343577a540fbfdf7 + "@parcel/types": 2.9.3 + checksum: e9d775a4fdf4635940f900eb8dc8f2ef7f6ff087d48ce876cfac567e4070120614a8c8990146732c1d1c2c483d211f00db3ded8dd0610276c997bb2a7a3ba3a5 languageName: node linkType: hard -"@parcel/reporter-cli@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/reporter-cli@npm:2.0.0-nightly.1280" +"@parcel/profiler@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/profiler@npm:2.9.3" dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - chalk: ^4.1.0 - term-size: ^2.2.1 - checksum: 7174c550f0fdf60daa7fc17688af9d2cb695db3a34f2e484c247417f7237a0bc2400d2cf8b5e03e890612971ecfeb467908704adccdae619041b6fcdd636286f + "@parcel/diagnostic": 2.9.3 + "@parcel/events": 2.9.3 + chrome-trace-event: ^1.0.2 + checksum: 30e988b99ed7d58ae0bba61cd92f214e73d37e611699796f55f2c22a60f0d24a4be1642b38c7ee71440a408bf7a240e3ff2bf5737d1a243778ff695794ccfcee languageName: node linkType: hard -"@parcel/reporter-cli@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/reporter-cli@npm:2.8.3" +"@parcel/reporter-cli@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/reporter-cli@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/types": 2.8.3 - "@parcel/utils": 2.8.3 + "@parcel/plugin": 2.9.3 + "@parcel/types": 2.9.3 + "@parcel/utils": 2.9.3 chalk: ^4.1.0 term-size: ^2.2.1 - checksum: 791dd4706aac706427a563455d9db5fa330b77e94fe4226b3751cd527327d8540d62400a8040e85a5fd29ecb6e673507e9d4a1fa754c093f1c005078670eef85 - languageName: node - linkType: hard - -"@parcel/reporter-dev-server@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/reporter-dev-server@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - checksum: 4f80c644ba093b5fcd57e1bf08a3778c0d2599a05808fa9559c9eadfa996fd03e1dd81231ba5222cfec039814370d61443b59bb7bb4968e28bed39f0921e1083 + checksum: f274aa295950cd9f61339b1eaa3265f845570de78585e5343c619cb5bc2b4ba4f37091eb0e726634c19c34366cecbba8779b4e4831596501fd69618ddcbbd4b1 languageName: node linkType: hard -"@parcel/reporter-dev-server@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/reporter-dev-server@npm:2.8.3" - dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - checksum: 329db9fd0cdc3ddc36d8156a7d67747335c76b1368116c98e266218f1e1ce4ea108981441bcb78961f64e2067a2d8a1745d8aa069398d50e67278e1333293723 - languageName: node - linkType: hard - -"@parcel/resolver-default@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/resolver-default@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/node-resolver-core": 2.8.4-nightly.2903+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - checksum: 5525c49b7736baed6e042580a157851e27f2dc828b04a783b47985721b23b041f9756ce242b4fed8fd28495ea3983e0b5318ee6b80ee022d6ab7d8bf13d32389 - languageName: node - linkType: hard - -"@parcel/resolver-default@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/resolver-default@npm:2.8.3" +"@parcel/reporter-dev-server@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/reporter-dev-server@npm:2.9.3" dependencies: - "@parcel/node-resolver-core": 2.8.3 - "@parcel/plugin": 2.8.3 - checksum: 40515a62c1a301050144e1427ac7a591afedea50e89baff0ab4ed05ad8424f5df6ad4a7b5e413956a199ecef18bf8220b353fb115af72fac4187a62e8a997d1d + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 + checksum: e8beff5f9415f5f27c1c7f2a4dfaa3e5d53712d00e3df417fc6a0163f0a2a179cc19b4decf4a236d75e251bbdc46e3b216f6fae0826e70bcf459a289c732ec9c languageName: node linkType: hard -"@parcel/runtime-browser-hmr@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/runtime-browser-hmr@npm:2.0.0-nightly.1280" +"@parcel/reporter-tracer@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/reporter-tracer@npm:2.9.3" dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - checksum: 985cd4109b2abe1e7f63251782a09e59e9dd288567206e93af7bba3a61cfb4273e80abc8a6918bb00b1c53e461f771717b31e1ac775413454a3d8c4bde5e0760 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 + chrome-trace-event: ^1.0.3 + nullthrows: ^1.1.1 + checksum: 7922b1976062d078c71afa2bb216dc1afe7341d61b98b4773a02ebfb26bc63877a6674dd8a331886584e86b27839d3c9f4569747f96b0f04f9d3543ea2fc9601 languageName: node linkType: hard -"@parcel/runtime-browser-hmr@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/runtime-browser-hmr@npm:2.8.3" +"@parcel/resolver-default@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/resolver-default@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - checksum: 56c276c7b03bb4c301d7dbe94c5183404af4064286f67682399e848ff894bfb5ea783dad11082290d40f2f07be64252dd236b993baf2e3e8fbb30a572f95a0dc + "@parcel/node-resolver-core": 3.0.3 + "@parcel/plugin": 2.9.3 + checksum: 9e14d5b9bc7333bf22bfc445b2659ef5337f7af2cc63ccefb2496b8a0989df2b021233cf8d5fe5d4f08a48b2a494ce997acddf951bbd6ffbec7336a015ee05da languageName: node linkType: hard -"@parcel/runtime-js@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/runtime-js@npm:2.0.0-nightly.1280" +"@parcel/runtime-browser-hmr@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/runtime-browser-hmr@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - nullthrows: ^1.1.1 - checksum: 7388643282789e623159004648fa0bb3fe79def0203c911742e418d4b5c03383690eb8fe54de321b9c8a2ddec2f11e4fc0ecb050ec1d58cbe417bec454c8c07c + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 + checksum: e79e827598e63ef083e8dbbed0e731ea202dfcc9f15c4063cbc2a81bad6c0d6981a49e8adea9326978e6d27ba6d4861507e49a062f726b846471dba4abeb0ed5 languageName: node linkType: hard -"@parcel/runtime-js@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/runtime-js@npm:2.8.3" +"@parcel/runtime-js@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/runtime-js@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 - checksum: ee5e04f84d522a6f53753c3956d37cacb2bdabb2539e2f40e640762b3cc43b20efc495331fe254d92d82a06c3e1b4690c17125090a12300d75ad7c3a9ca3e2f0 - languageName: node - linkType: hard - -"@parcel/runtime-react-refresh@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/runtime-react-refresh@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - react-error-overlay: 6.0.9 - react-refresh: ^0.9.0 - checksum: face88be0b0e741d7ca4d28e7da4a52b83483b7100c0603a04f9c1e38641f301edce329db87f3b9e60ad657852d27bfcae7c57b085a58eb43b3200d5277dcd3e + checksum: 143c3a9d9b5d37b4db9b7c169273a31f36db945a2264a448f3a90e1ee056ee28dfca325c472121a0f2425f463aac44d7ec7b7229c78f27cf1e642065b965f64f languageName: node linkType: hard -"@parcel/runtime-react-refresh@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/runtime-react-refresh@npm:2.8.3" +"@parcel/runtime-react-refresh@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/runtime-react-refresh@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 react-error-overlay: 6.0.9 react-refresh: ^0.9.0 - checksum: 327159be0c8183f1cff139de973e8e8ca6b83dc2fc94846a89415fabf8cd8535e95ed3ae9750ac08e73a303de57c18c4e5da959ecbe73af75f1d3c9a98f5c20b - languageName: node - linkType: hard - -"@parcel/runtime-service-worker@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/runtime-service-worker@npm:2.8.3" - dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - nullthrows: ^1.1.1 - checksum: 0646fee9a9378c0844c223d0eaf1c46e817738e70b2e993434717fb6aab998339b37a32c5bd9db891fcb8bc44dc3d7530564f84a5cd978d6dd47f204f18bd44a + checksum: 8fb9f8165e7e7c29e8b954d71d358197e4a81182856817e92da6a4ec4db3236fd6dc0d3f3cd18da344ee025a4d6ae8bd1f21495fa42b969f3ca2fdd7e4dcbd18 languageName: node linkType: hard -"@parcel/runtime-service-worker@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/runtime-service-worker@npm:2.8.4-nightly.2903" +"@parcel/runtime-service-worker@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/runtime-service-worker@npm:2.9.3" dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 - checksum: fa5b993337727ce46d04065c9303c5eaa29167382d226980c2b6a9fd67c174154ff6cdbbb8d1dc4291ab9600749765cf2514a6a448d52b32ec9bc7abcd0e8bd0 + checksum: e296a42e3e20a3a7b911236e8b349182210a8603c9b4a21023308b28a628c43acb23518e2b0502ef11e33463fa0426b344260a835e87f9a24838d5572df162ef languageName: node linkType: hard @@ -6952,399 +6579,293 @@ __metadata: languageName: node linkType: hard -"@parcel/transformer-babel@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-babel@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - browserslist: ^4.6.6 - json5: ^2.2.0 - nullthrows: ^1.1.1 - semver: ^5.7.0 - checksum: 7f19bbda39f6f643b72bbe131565e3a7ab2a9b7f218103509066482f2598eaa456fd4ffbae8a9f6c734169e71c36ad1f12f053c3410bcf208e33b2cdfeac0e28 - languageName: node - linkType: hard - -"@parcel/transformer-babel@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-babel@npm:2.8.3" +"@parcel/transformer-babel@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-babel@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.8.3 + "@parcel/utils": 2.9.3 browserslist: ^4.6.6 json5: ^2.2.0 nullthrows: ^1.1.1 - semver: ^5.7.0 - checksum: a27bbe8d893854a77d9a8c9b45490728b2db81ad0782b7d9085d00c50155840477dd4ada8e382e0b02f9f5f8761da48bd6d3feb62ddd582e6608f92d4468df80 + semver: ^7.5.2 + checksum: 4d0246290ec37409a1c1db424b5e2daa974bd8fbec65560f1f5614d12db2956b386fd38539e45544b1be1098fadee8f0e971f5738da897cedda84f608c40a226 languageName: node linkType: hard -"@parcel/transformer-css@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-css@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - browserslist: ^4.6.6 - lightningcss: ^1.16.1 - nullthrows: ^1.1.1 - checksum: a93a1cb011c4bcd41d33fd670618d9236ef98b1ec9d8d769cd32539d5697497b94df18250e7b2b846ecc91976f387f1bb4d1fc7ddfa03aabf44621ebbd7783d3 - languageName: node - linkType: hard - -"@parcel/transformer-css@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-css@npm:2.8.3" +"@parcel/transformer-css@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-css@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.8.3 + "@parcel/utils": 2.9.3 browserslist: ^4.6.6 lightningcss: ^1.16.1 nullthrows: ^1.1.1 - checksum: 31375a140550968a36f7a8eb998c03f20200d202b7c62c98fb49b05f719777ca545d08f356dec9ca6d9a601ba0020abce5cf4672fe425bc99a540dccf262a6cc + checksum: aad8e3243916cc3b7ed9e87910d43437eaced4665914d939b6ebf8ba323c7091fa3bfd532b23f50cbe2daf874c936ac6c946ea6be0dacda18cf2d733109e26f6 languageName: node linkType: hard -"@parcel/transformer-html@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-html@npm:2.0.0-nightly.1280" +"@parcel/transformer-html@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-html@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/hash": 2.8.4-nightly.2903+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 + "@parcel/diagnostic": 2.9.3 + "@parcel/hash": 2.9.3 + "@parcel/plugin": 2.9.3 nullthrows: ^1.1.1 posthtml: ^0.16.5 posthtml-parser: ^0.10.1 posthtml-render: ^3.0.0 - semver: ^5.7.1 + semver: ^7.5.2 srcset: 4 - checksum: 885e4105ba1a5b3feec22dd10372c13c37c077ca6b0644222a6c3668e5fdc171002d95edfb1140f7d8030c1f05e77ac4e557d47a5c3f4dd2e8e2175b28edbb8a + checksum: 77f150b5688fe2b32abeb7e6e4fc05a97816d872b3638e5cd4fec50144f4659c2128e9a60e5e6d2cf8237028abb57f29ae279ade05e3b353cf107a89ae29a307 languageName: node linkType: hard -"@parcel/transformer-html@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-html@npm:2.8.3" +"@parcel/transformer-image@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-image@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/hash": 2.8.3 - "@parcel/plugin": 2.8.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 + "@parcel/workers": 2.9.3 nullthrows: ^1.1.1 - posthtml: ^0.16.5 - posthtml-parser: ^0.10.1 - posthtml-render: ^3.0.0 - semver: ^5.7.1 - srcset: 4 - checksum: 21600a3e0ac9e05aa6f6066ef94f8ba7e0de62a8ae59a812230907f5731dcf73dc5308fb74b32bfb6dab16089d13f72043965e1e87e8c4daec8447a9081af8eb + peerDependencies: + "@parcel/core": ^2.9.3 + checksum: 554ff7c6c2948059726ee0836a0de93d86e6f2f7d7f8454ecd6b6d7c0cd4a4c92bfe9ab668e45cd0e60118edf9e32b8c3ff5cff2fa8efb87d2db6e94633b744f languageName: node linkType: hard -"@parcel/transformer-image@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-image@npm:2.8.3" +"@parcel/transformer-js@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-js@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - "@parcel/workers": 2.8.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/source-map": ^2.1.1 + "@parcel/utils": 2.9.3 + "@parcel/workers": 2.9.3 + "@swc/helpers": ^0.5.0 + browserslist: ^4.6.6 nullthrows: ^1.1.1 + regenerator-runtime: ^0.13.7 + semver: ^7.5.2 peerDependencies: - "@parcel/core": ^2.8.3 - checksum: f4b3464828e1b3d44e7da5c7a71272f5f53f830d9bb371e8dd8b2f32040f4426f3efeae12949947e34b39f7755a253f0b48c6eeec6d86ad43baf0b30717f1f47 + "@parcel/core": ^2.9.3 + checksum: c262307651857c8434ef33612af0056c83c26874f0bcd8dae9e71e4806239d7a0bcebd8076acb4777b63ecb03104b15b98322f1f5d7214cbecbcd553cd7d82b3 languageName: node linkType: hard -"@parcel/transformer-image@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/transformer-image@npm:2.8.4-nightly.2903" +"@parcel/transformer-json@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-json@npm:2.9.3" dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - "@parcel/workers": 2.0.0-nightly.1280+5b901a317 - nullthrows: ^1.1.1 - peerDependencies: - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - checksum: a53ac35c288bfc48b839684d52f09eb4d15735a02a4c6e7ae0603bc9ec6a18c95ea0814a05a41f71ba8dbe5745c4cb5d119aa252786993300b69c71e0f341ccc + "@parcel/plugin": 2.9.3 + json5: ^2.2.0 + checksum: 96e2157cfdde7bcdb83fd1e7718cfb439af53493a60640dfcc5820d78e13cb7c438911c360b5901240ecf51101f164706b4e0058bdf9d6108aa32fe09370a539 languageName: node linkType: hard -"@parcel/transformer-js@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-js@npm:2.0.0-nightly.1280" +"@parcel/transformer-postcss@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-postcss@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - "@parcel/workers": 2.0.0-nightly.1280+5b901a317 - "@swc/helpers": ^0.4.12 - browserslist: ^4.6.6 + "@parcel/diagnostic": 2.9.3 + "@parcel/hash": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 + clone: ^2.1.1 nullthrows: ^1.1.1 - regenerator-runtime: ^0.13.7 - semver: ^5.7.1 - peerDependencies: - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - checksum: da67f0a9d510b0bf117a733ccffd3329efb7f23a6c589555cff191697d06e2f10f34dc69edacb02032b9566a05c11dd8f324d909521c0b90a7a584987becc037 + postcss-value-parser: ^4.2.0 + semver: ^7.5.2 + checksum: c396c25c5a58a1aed0e7381ee3834b5e0423baedf5dd79984b9d1540c8d693d703b4dfabde7bc1152271d783016b8552c9c442eb59152bf5071d355606a961d2 languageName: node linkType: hard -"@parcel/transformer-js@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-js@npm:2.8.3" +"@parcel/transformer-posthtml@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-posthtml@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/plugin": 2.8.3 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.8.3 - "@parcel/workers": 2.8.3 - "@swc/helpers": ^0.4.12 - browserslist: ^4.6.6 - detect-libc: ^1.0.3 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 - regenerator-runtime: ^0.13.7 - semver: ^5.7.1 - peerDependencies: - "@parcel/core": ^2.8.3 - checksum: 29fb203502309e11452837e4ae60589300c0d91fae35cf4774e70959e9f4532960ef4619959ce9c95f0060020faabbcfd024b076f41c7d5f7e126c3547244ff6 + posthtml: ^0.16.5 + posthtml-parser: ^0.10.1 + posthtml-render: ^3.0.0 + semver: ^7.5.2 + checksum: 58d4836900af9949832f69a78349fc29188aa6f54301afe392130e1d2127183691d16b6eef8adcc0d9924e47c6bc7e993c6e1dc7a507dadcb2a115fa50757c82 + languageName: node + linkType: hard + +"@parcel/transformer-raw@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-raw@npm:2.9.3" + dependencies: + "@parcel/plugin": 2.9.3 + checksum: b639e2f5fde4066124e58c343b56cd6eeb7820cb6dd1c4feeba5b40b1f3cc222c075d61de9dd8f381dbcbb42b44bdc7bf33c0fb4edbd3da59c4e3c66e4748d4b languageName: node linkType: hard -"@parcel/transformer-json@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-json@npm:2.0.0-nightly.1280" +"@parcel/transformer-react-refresh-wrap@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-react-refresh-wrap@npm:2.9.3" dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - json5: ^2.2.0 - checksum: 5b6d4a980987d14b7ef1814fae804830cd2d9581d9494a887b0aaea177261f9a0f7aa3d8e7ab787fcae22e3848a025744ea42f89e07722e16f10500ab004e652 + "@parcel/plugin": 2.9.3 + "@parcel/utils": 2.9.3 + react-refresh: ^0.9.0 + checksum: aede3d82af714c311e504bc2333e11b5dc29bedca580052e2fa44eca3c1e05f630352e83be30e66aaa231323f1b5b7f49011f43ff77613986519a055470649e1 languageName: node linkType: hard -"@parcel/transformer-json@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-json@npm:2.8.3" +"@parcel/transformer-svg@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-svg@npm:2.9.3" dependencies: - "@parcel/plugin": 2.8.3 - json5: ^2.2.0 - checksum: 04da28b0f0ff1ec1d7c6383b880daa2918f85ba1375351690a9a07ea4de102531d5f6addb3091ae5109623e270e1d2cdf582661f4a0805bd982a653a06d26890 + "@parcel/diagnostic": 2.9.3 + "@parcel/hash": 2.9.3 + "@parcel/plugin": 2.9.3 + nullthrows: ^1.1.1 + posthtml: ^0.16.5 + posthtml-parser: ^0.10.1 + posthtml-render: ^3.0.0 + semver: ^7.5.2 + checksum: 19cec37f9cfb4a5506e48e41d70e970584cd06a913dfc92d128031991ff6615ce3302a896c2766fa64be8c8f56f81da47ece05e7b65c30f7e5213e676cae346c languageName: node linkType: hard -"@parcel/transformer-postcss@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-postcss@npm:2.0.0-nightly.1280" +"@parcel/transformer-vue@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/transformer-vue@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/hash": 2.8.4-nightly.2903+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - clone: ^2.1.1 + "@parcel/diagnostic": 2.9.3 + "@parcel/plugin": 2.9.3 + "@parcel/source-map": ^2.1.1 + "@parcel/utils": 2.9.3 + "@vue/compiler-sfc": ^3.2.27 + consolidate: ^0.16.0 nullthrows: ^1.1.1 - postcss-value-parser: ^4.2.0 - semver: ^5.7.1 - checksum: e4a4052177caa0a18ee4123bf674808382ec0293a6d734f51cfa616c1f8cd28e78f1205db51efc357ea894f17882a592885f76402b173daa8f50d7651d038bcf + semver: ^7.5.2 + checksum: 6579341f53740917964a4d43c3e5c89f725ec19e74517863522e26440aa7a4f7f531fbec833e656b69c50c9d5ba60c55644c6f538ce68cb8aace42b811c8c230 languageName: node linkType: hard -"@parcel/transformer-postcss@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-postcss@npm:2.8.3" +"@parcel/types@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/types@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/hash": 2.8.3 - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - clone: ^2.1.1 - nullthrows: ^1.1.1 - postcss-value-parser: ^4.2.0 - semver: ^5.7.1 - checksum: 2c75cb5cec7112d12a28ac5cddc9f2e939f76e006929757804431b266e7541aae5df6ba8601727c33c7b53f0f971a6df5dfb4394fa0baf284bd2c6fc9b507650 + "@parcel/cache": 2.9.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/fs": 2.9.3 + "@parcel/package-manager": 2.9.3 + "@parcel/source-map": ^2.1.1 + "@parcel/workers": 2.9.3 + utility-types: ^3.10.0 + checksum: 2a2162277245d2d906a2170d8d20262247e4cb14d8c9504e86ff15e4015cbf747304d098f3211b7705ea8c5b55b47cd3594b5802e615d10d89d09e085435bc6b languageName: node linkType: hard -"@parcel/transformer-posthtml@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-posthtml@npm:2.0.0-nightly.1280" +"@parcel/utils@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/utils@npm:2.9.3" dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 + "@parcel/codeframe": 2.9.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/hash": 2.9.3 + "@parcel/logger": 2.9.3 + "@parcel/markdown-ansi": 2.9.3 + "@parcel/source-map": ^2.1.1 + chalk: ^4.1.0 nullthrows: ^1.1.1 - posthtml: ^0.16.5 - posthtml-parser: ^0.10.1 - posthtml-render: ^3.0.0 - semver: ^5.7.1 - checksum: 1323de92963a7c8d625ba69364fe73dc26e3237ac777f79dccb5f9f6779e5f860807b3c85023a7f921952b7c65b778e1cae20d7123cf64b75de911d929788ce7 + checksum: 4c1df52754bc56bc3349262bd6cf3f38cf239f27593f7d1aea987588af0a4ec13ce367f4b3026c44791071ce760071554f24cafdb3ff341f0175acd49558ac21 languageName: node linkType: hard -"@parcel/transformer-posthtml@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-posthtml@npm:2.8.3" - dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - nullthrows: ^1.1.1 - posthtml: ^0.16.5 - posthtml-parser: ^0.10.1 - posthtml-render: ^3.0.0 - semver: ^5.7.1 - checksum: 130c95782aebb2491f2d89685db573b3b85ed1f7d9862684db2ab9d11fe8148995185a4e144b818de06d596cf687c5bd57b6b8648d2856cf830a9674c2ec3237 +"@parcel/watcher-android-arm64@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-android-arm64@npm:2.3.0" + conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@parcel/transformer-raw@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-raw@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - checksum: cb8b34174d4e4449c1c560419e8bc051fc96f6b25e71f11cc0c227a4fba553644454d6a994263cdb9e91fc52f6b34801c01b25e2fb72915138483eedb25d282a +"@parcel/watcher-darwin-arm64@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-darwin-arm64@npm:2.3.0" + conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@parcel/transformer-raw@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-raw@npm:2.8.3" - dependencies: - "@parcel/plugin": 2.8.3 - checksum: 371263bb526373c229aa3e730f2a1d6687bd6b771203d73237c04da3a3ada86c4fcf0b534d3fb366a7b3842df0cf98ae1e033602613cafd9f702f47a6568a83c +"@parcel/watcher-darwin-x64@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-darwin-x64@npm:2.3.0" + conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@parcel/transformer-react-refresh-wrap@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/transformer-react-refresh-wrap@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - react-refresh: ^0.9.0 - checksum: 95e45d237c5936ca4fc5d8180ab2a35a34a62634069332b804cca853ad92f74167826f96bcb3bc0753823c9a31245afc19cb357690a2e16e1cff9b91c220ab4c +"@parcel/watcher-freebsd-x64@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-freebsd-x64@npm:2.3.0" + conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@parcel/transformer-react-refresh-wrap@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-react-refresh-wrap@npm:2.8.3" - dependencies: - "@parcel/plugin": 2.8.3 - "@parcel/utils": 2.8.3 - react-refresh: ^0.9.0 - checksum: e9648e04b7f9b29f47ec7baedfba9cc36bbb7e44be6ad4b6b4433c20d1b5a3184a3043b712add16a5cc06300289305d5fa9ebb73c6dc926d04df7c52d9bc3316 +"@parcel/watcher-linux-arm-glibc@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-linux-arm-glibc@npm:2.3.0" + conditions: os=linux & cpu=arm & libc=glibc languageName: node linkType: hard -"@parcel/transformer-svg@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/transformer-svg@npm:2.8.3" - dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/hash": 2.8.3 - "@parcel/plugin": 2.8.3 - nullthrows: ^1.1.1 - posthtml: ^0.16.5 - posthtml-parser: ^0.10.1 - posthtml-render: ^3.0.0 - semver: ^5.7.1 - checksum: 1f3db309e47d07849a2b4ffe11b508fd7ae792c0c0ce7b03e442fffb25f5e7425c5027428729bf2b587309265bba0be6da635d62c51ae8ab7e54483eff3f575e +"@parcel/watcher-linux-arm64-glibc@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-linux-arm64-glibc@npm:2.3.0" + conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@parcel/transformer-svg@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/transformer-svg@npm:2.8.4-nightly.2903" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/hash": 2.8.4-nightly.2903+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - nullthrows: ^1.1.1 - posthtml: ^0.16.5 - posthtml-parser: ^0.10.1 - posthtml-render: ^3.0.0 - semver: ^5.7.1 - checksum: 8cdb11e2661292b5cea355d6986eec0d63c63ea06b7388d181124d9b12a92f888255771a53d6b04a319184ae0f98a232e0687f46162179e315b385a778956090 +"@parcel/watcher-linux-arm64-musl@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-linux-arm64-musl@npm:2.3.0" + conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@parcel/transformer-vue@npm:2.8.4-nightly.2903+5b901a317": - version: 2.8.4-nightly.2903 - resolution: "@parcel/transformer-vue@npm:2.8.4-nightly.2903" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/plugin": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - "@vue/compiler-sfc": ^3.2.27 - consolidate: ^0.16.0 - nullthrows: ^1.1.1 - semver: ^5.7.1 - checksum: 44dfe9af51a9cb384dd32b7952d6e02f88e5689d7fdd27fca08b72d15c6461eef062ecbd7b6952dcabf5aabf6b903edb17782b3fdb391edf3a46824f84a9c63a +"@parcel/watcher-linux-x64-glibc@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-linux-x64-glibc@npm:2.3.0" + conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@parcel/types@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/types@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/cache": 2.0.0-nightly.1280+5b901a317 - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/fs": 2.0.0-nightly.1280+5b901a317 - "@parcel/package-manager": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - "@parcel/workers": 2.0.0-nightly.1280+5b901a317 - utility-types: ^3.10.0 - checksum: d654966d21665cce71f5fff8da405fa6538eb8c72916406e3ffd55002d9ed785458858b85cbb0603397d326d63740a273cc660e1df7c07ddb351b4b3f520cdd4 +"@parcel/watcher-linux-x64-musl@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-linux-x64-musl@npm:2.3.0" + conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@parcel/types@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/types@npm:2.8.3" - dependencies: - "@parcel/cache": 2.8.3 - "@parcel/diagnostic": 2.8.3 - "@parcel/fs": 2.8.3 - "@parcel/package-manager": 2.8.3 - "@parcel/source-map": ^2.1.1 - "@parcel/workers": 2.8.3 - utility-types: ^3.10.0 - checksum: ece0abdd5c7cce32a246155f6828f6a92830341dfbceb81c9aaf7da44e0733b87ea8a607412dfe4b5ec59d7c9a3c1b1463b94ec8a5a82b745541881952003a16 +"@parcel/watcher-win32-arm64@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-win32-arm64@npm:2.3.0" + conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@parcel/utils@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/utils@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/codeframe": 2.0.0-nightly.1280+5b901a317 - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/hash": 2.8.4-nightly.2903+5b901a317 - "@parcel/logger": 2.0.0-nightly.1280+5b901a317 - "@parcel/markdown-ansi": 2.0.0-nightly.1280+5b901a317 - "@parcel/source-map": ^2.1.1 - chalk: ^4.1.0 - nullthrows: ^1.1.1 - checksum: 35c247b0f5591924ec44196530b87851d975ca0101c5d029d06d59a4e3047a994e6443df226cb676cd0924d7b0fa57e58cc622b1ad25e6fc9f9361c033f494d3 +"@parcel/watcher-win32-ia32@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-win32-ia32@npm:2.3.0" + conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@parcel/utils@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/utils@npm:2.8.3" - dependencies: - "@parcel/codeframe": 2.8.3 - "@parcel/diagnostic": 2.8.3 - "@parcel/hash": 2.8.3 - "@parcel/logger": 2.8.3 - "@parcel/markdown-ansi": 2.8.3 - "@parcel/source-map": ^2.1.1 - chalk: ^4.1.0 - checksum: 69edf3e7c3ef1ccd4caa6ca838a64b27b27668b213212579111405824ed969e6555857b33f0b9e793e97399a60f034904addde19b98628b37a2fcbbb9141cafa +"@parcel/watcher-win32-x64@npm:2.3.0": + version: 2.3.0 + resolution: "@parcel/watcher-win32-x64@npm:2.3.0" + conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -7360,47 +6881,68 @@ __metadata: linkType: hard "@parcel/watcher@npm:^2.0.7": - version: 2.1.0 - resolution: "@parcel/watcher@npm:2.1.0" - dependencies: + version: 2.3.0 + resolution: "@parcel/watcher@npm:2.3.0" + dependencies: + "@parcel/watcher-android-arm64": 2.3.0 + "@parcel/watcher-darwin-arm64": 2.3.0 + "@parcel/watcher-darwin-x64": 2.3.0 + "@parcel/watcher-freebsd-x64": 2.3.0 + "@parcel/watcher-linux-arm-glibc": 2.3.0 + "@parcel/watcher-linux-arm64-glibc": 2.3.0 + "@parcel/watcher-linux-arm64-musl": 2.3.0 + "@parcel/watcher-linux-x64-glibc": 2.3.0 + "@parcel/watcher-linux-x64-musl": 2.3.0 + "@parcel/watcher-win32-arm64": 2.3.0 + "@parcel/watcher-win32-ia32": 2.3.0 + "@parcel/watcher-win32-x64": 2.3.0 + detect-libc: ^1.0.3 is-glob: ^4.0.3 micromatch: ^4.0.5 - node-addon-api: ^3.2.1 + node-addon-api: ^7.0.0 node-gyp: latest - node-gyp-build: ^4.3.0 - checksum: 17f512ad6d5dbb40053ceea7091f8af754afc63786b8f050b225b89a8ba24900468aad8bc4edb25c0349b4c0c8d061f50aa19242c0af52cbc30e6ebf50c7bf4c - languageName: node - linkType: hard - -"@parcel/workers@npm:2.0.0-nightly.1280+5b901a317": - version: 2.0.0-nightly.1280 - resolution: "@parcel/workers@npm:2.0.0-nightly.1280" - dependencies: - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/logger": 2.0.0-nightly.1280+5b901a317 - "@parcel/types": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - chrome-trace-event: ^1.0.2 - nullthrows: ^1.1.1 - peerDependencies: - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - checksum: b0a561c5fd4cfede403388ab674d3312519c5a972667af85ef3adf7f8412eb9c847144a7212d568d2aadfb2c86bc88006201f559d01b6e7ebb4f4331d7b67174 + dependenciesMeta: + "@parcel/watcher-android-arm64": + optional: true + "@parcel/watcher-darwin-arm64": + optional: true + "@parcel/watcher-darwin-x64": + optional: true + "@parcel/watcher-freebsd-x64": + optional: true + "@parcel/watcher-linux-arm-glibc": + optional: true + "@parcel/watcher-linux-arm64-glibc": + optional: true + "@parcel/watcher-linux-arm64-musl": + optional: true + "@parcel/watcher-linux-x64-glibc": + optional: true + "@parcel/watcher-linux-x64-musl": + optional: true + "@parcel/watcher-win32-arm64": + optional: true + "@parcel/watcher-win32-ia32": + optional: true + "@parcel/watcher-win32-x64": + optional: true + checksum: 12f494998dbae363cc9c48b49f7e09589c179e84133e3b6cd0c087573a7dc70b3adec458f95b39e3b8e4d9c93cff770ce15b1d2452d6741a5047f1ca90485ded languageName: node linkType: hard -"@parcel/workers@npm:2.8.3": - version: 2.8.3 - resolution: "@parcel/workers@npm:2.8.3" +"@parcel/workers@npm:2.9.3": + version: 2.9.3 + resolution: "@parcel/workers@npm:2.9.3" dependencies: - "@parcel/diagnostic": 2.8.3 - "@parcel/logger": 2.8.3 - "@parcel/types": 2.8.3 - "@parcel/utils": 2.8.3 - chrome-trace-event: ^1.0.2 + "@parcel/diagnostic": 2.9.3 + "@parcel/logger": 2.9.3 + "@parcel/profiler": 2.9.3 + "@parcel/types": 2.9.3 + "@parcel/utils": 2.9.3 nullthrows: ^1.1.1 peerDependencies: - "@parcel/core": ^2.8.3 - checksum: e3168b3e9ee6bd8e92472e11af9228aca689c5d31841410c908ab31f2a11adf939481d9f4d945ae44d7d3ec1e07980fb3ca5c2f87be82e31a02a94f4655c8e01 + "@parcel/core": ^2.9.3 + checksum: d6ac6e2abf1b38aefeef26f687e0091e191f6b1969728abe44c4cda988d070759db3352784c287b6a10ed6694feb05c12a9510ea756b3edbb0367eaa8cfc81a7 languageName: node linkType: hard @@ -7971,90 +7513,91 @@ __metadata: languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-darwin-arm64@npm:1.3.49" +"@swc/core-darwin-arm64@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-darwin-arm64@npm:1.3.81" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-darwin-x64@npm:1.3.49" +"@swc/core-darwin-x64@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-darwin-x64@npm:1.3.81" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.49" +"@swc/core-linux-arm-gnueabihf@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-linux-arm-gnueabihf@npm:1.3.81" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-linux-arm64-gnu@npm:1.3.49" +"@swc/core-linux-arm64-gnu@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-linux-arm64-gnu@npm:1.3.81" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-linux-arm64-musl@npm:1.3.49" +"@swc/core-linux-arm64-musl@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-linux-arm64-musl@npm:1.3.81" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-linux-x64-gnu@npm:1.3.49" +"@swc/core-linux-x64-gnu@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-linux-x64-gnu@npm:1.3.81" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-linux-x64-musl@npm:1.3.49" +"@swc/core-linux-x64-musl@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-linux-x64-musl@npm:1.3.81" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-win32-arm64-msvc@npm:1.3.49" +"@swc/core-win32-arm64-msvc@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-win32-arm64-msvc@npm:1.3.81" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-win32-ia32-msvc@npm:1.3.49" +"@swc/core-win32-ia32-msvc@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-win32-ia32-msvc@npm:1.3.81" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@swc/core-win32-x64-msvc@npm:1.3.49": - version: 1.3.49 - resolution: "@swc/core-win32-x64-msvc@npm:1.3.49" +"@swc/core-win32-x64-msvc@npm:1.3.81": + version: 1.3.81 + resolution: "@swc/core-win32-x64-msvc@npm:1.3.81" conditions: os=win32 & cpu=x64 languageName: node linkType: hard "@swc/core@npm:^1.3.36": - version: 1.3.49 - resolution: "@swc/core@npm:1.3.49" - dependencies: - "@swc/core-darwin-arm64": 1.3.49 - "@swc/core-darwin-x64": 1.3.49 - "@swc/core-linux-arm-gnueabihf": 1.3.49 - "@swc/core-linux-arm64-gnu": 1.3.49 - "@swc/core-linux-arm64-musl": 1.3.49 - "@swc/core-linux-x64-gnu": 1.3.49 - "@swc/core-linux-x64-musl": 1.3.49 - "@swc/core-win32-arm64-msvc": 1.3.49 - "@swc/core-win32-ia32-msvc": 1.3.49 - "@swc/core-win32-x64-msvc": 1.3.49 + version: 1.3.81 + resolution: "@swc/core@npm:1.3.81" + dependencies: + "@swc/core-darwin-arm64": 1.3.81 + "@swc/core-darwin-x64": 1.3.81 + "@swc/core-linux-arm-gnueabihf": 1.3.81 + "@swc/core-linux-arm64-gnu": 1.3.81 + "@swc/core-linux-arm64-musl": 1.3.81 + "@swc/core-linux-x64-gnu": 1.3.81 + "@swc/core-linux-x64-musl": 1.3.81 + "@swc/core-win32-arm64-msvc": 1.3.81 + "@swc/core-win32-ia32-msvc": 1.3.81 + "@swc/core-win32-x64-msvc": 1.3.81 + "@swc/types": ^0.1.4 peerDependencies: "@swc/helpers": ^0.5.0 dependenciesMeta: @@ -8081,16 +7624,23 @@ __metadata: peerDependenciesMeta: "@swc/helpers": optional: true - checksum: 7234f38451dd765ea94cb44236f261603014e27bff6ecd133d9ba8a2d39314e9949e43bb77ffccd21f5e6c942ad7acf444de8972744ca24ac8f3ccecaea849a1 + checksum: 2d1f97294ab923dc15b0596ea792659cef72e6a35addf4d978cd1d6d99f2dc2ae3a86ffd0e31a9ba98c58e5260a819368587018658fa423a0d64cd2599c28d45 languageName: node linkType: hard -"@swc/helpers@npm:^0.4.12": - version: 0.4.14 - resolution: "@swc/helpers@npm:0.4.14" +"@swc/helpers@npm:^0.5.0": + version: 0.5.1 + resolution: "@swc/helpers@npm:0.5.1" dependencies: tslib: ^2.4.0 - checksum: 273fd3f3fc461a92f3790cc551ea054745c6d6959afbe1232e6d7aa1c722bbc114d308aab96bef5c78fc0303c85c7b472ef00e2253251cc89737f3b1af56e5a5 + checksum: 71e0e27234590435e4c62b97ef5e796f88e786841a38c7116a5e27a3eafa7b9ead7cdec5249b32165902076de78446945311c973e59bddf77c1e24f33a8f272a + languageName: node + linkType: hard + +"@swc/types@npm:^0.1.4": + version: 0.1.4 + resolution: "@swc/types@npm:0.1.4" + checksum: 9b09de7dca8e4b19bfb43f9e332c771855158cb761d26000807fe858447ecbc5342a6c257b26d9aa5497f7138fc58913693e2bee222e5042e0e8f57c2979ae66 languageName: node linkType: hard @@ -8628,10 +8178,10 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:^14.14.31": - version: 14.18.54 - resolution: "@types/node@npm:14.18.54" - checksum: 9fd66f91fcd8e9b25067f784a9c60bd710ef86a89c838c131ab2b1921398adc53b1c70d741bceed48bb2403b75c434b1bbbb255240773819cde36295c4b6abf1 +"@types/node@npm:^16.18.39": + version: 16.18.46 + resolution: "@types/node@npm:16.18.46" + checksum: 1aed3fe9693f2098b8dac8c76c809c1925a456da00dd6f06c1ccb55c62ccfbbe7ec43ccfd12001f9cb4ff84e138292ae53456435dfecd5c4bb1324394c3e09c7 languageName: node linkType: hard @@ -9060,7 +8610,6 @@ __metadata: "@babel/preset-env": ^7.14.7 "@babel/register": ^7.10.5 "@babel/types": ^7.17.0 - "@parcel/transformer-vue": 2.8.4-nightly.2903+5b901a317 "@types/jasmine": "file:./private/@types/jasmine" "@types/jasminewd2": "file:./private/@types/jasmine" "@typescript-eslint/eslint-plugin": ^5.0.0 @@ -10410,6 +9959,18 @@ __metadata: languageName: node linkType: hard +"@vue/compiler-core@npm:3.3.4": + version: 3.3.4 + resolution: "@vue/compiler-core@npm:3.3.4" + dependencies: + "@babel/parser": ^7.21.3 + "@vue/shared": 3.3.4 + estree-walker: ^2.0.2 + source-map-js: ^1.0.2 + checksum: 5437942ea6575b316c9cd84f4f128a44939713da8b6958060e152c599e6d771d5db056c398d7574ee706ff8092e0d99ac4f14e7eef8712a8dd923d2323201b9e + languageName: node + linkType: hard + "@vue/compiler-dom@npm:3.2.38": version: 3.2.38 resolution: "@vue/compiler-dom@npm:3.2.38" @@ -10420,6 +9981,16 @@ __metadata: languageName: node linkType: hard +"@vue/compiler-dom@npm:3.3.4": + version: 3.3.4 + resolution: "@vue/compiler-dom@npm:3.3.4" + dependencies: + "@vue/compiler-core": 3.3.4 + "@vue/shared": 3.3.4 + checksum: 1c2ac0c89de8eef7be1c568d57504e6245adaaec40c2c4d9717bc231ca10bf682d918a3b358d24c786eeaf8e0d7eb8a65f57d9044775a304783fde1d069a1896 + languageName: node + linkType: hard + "@vue/compiler-sfc@npm:2.7.10": version: 2.7.10 resolution: "@vue/compiler-sfc@npm:2.7.10" @@ -10431,7 +10002,7 @@ __metadata: languageName: node linkType: hard -"@vue/compiler-sfc@npm:3.2.38, @vue/compiler-sfc@npm:^3.2.27": +"@vue/compiler-sfc@npm:3.2.38": version: 3.2.38 resolution: "@vue/compiler-sfc@npm:3.2.38" dependencies: @@ -10449,6 +10020,24 @@ __metadata: languageName: node linkType: hard +"@vue/compiler-sfc@npm:^3.2.27": + version: 3.3.4 + resolution: "@vue/compiler-sfc@npm:3.3.4" + dependencies: + "@babel/parser": ^7.20.15 + "@vue/compiler-core": 3.3.4 + "@vue/compiler-dom": 3.3.4 + "@vue/compiler-ssr": 3.3.4 + "@vue/reactivity-transform": 3.3.4 + "@vue/shared": 3.3.4 + estree-walker: ^2.0.2 + magic-string: ^0.30.0 + postcss: ^8.1.10 + source-map-js: ^1.0.2 + checksum: 0a0adfdd3e812f528e25e4b3bbf14b2296b719a8aac609eca42035295527cc253b918a552dc15218e917efef26b7ca94054dc8784a1a18c06c3d4bb4d18ab8b9 + languageName: node + linkType: hard + "@vue/compiler-ssr@npm:3.2.38": version: 3.2.38 resolution: "@vue/compiler-ssr@npm:3.2.38" @@ -10459,6 +10048,16 @@ __metadata: languageName: node linkType: hard +"@vue/compiler-ssr@npm:3.3.4": + version: 3.3.4 + resolution: "@vue/compiler-ssr@npm:3.3.4" + dependencies: + "@vue/compiler-dom": 3.3.4 + "@vue/shared": 3.3.4 + checksum: 5d1875d55ea864080dd90e5d81a29f93308e312faf00163db5b391b38c2fe799fd3eb58955823dc632f2f8bdd271a4534cc0020646b7f82717be1a8d30dc16e7 + languageName: node + linkType: hard + "@vue/component-compiler-utils@npm:^3.3.0": version: 3.3.0 resolution: "@vue/component-compiler-utils@npm:3.3.0" @@ -10492,6 +10091,19 @@ __metadata: languageName: node linkType: hard +"@vue/reactivity-transform@npm:3.3.4": + version: 3.3.4 + resolution: "@vue/reactivity-transform@npm:3.3.4" + dependencies: + "@babel/parser": ^7.20.15 + "@vue/compiler-core": 3.3.4 + "@vue/shared": 3.3.4 + estree-walker: ^2.0.2 + magic-string: ^0.30.0 + checksum: b425e78b2084ac7037887fbe012dcad5e5963ac9714ae15a04fda1c6766ec8c53ef231de1cfdc4d3cf46bd5d84bfec8ebdccf48da4ff5ee2f4b5084e54f0a1b1 + languageName: node + linkType: hard + "@vue/reactivity@npm:3.2.38": version: 3.2.38 resolution: "@vue/reactivity@npm:3.2.38" @@ -10541,6 +10153,13 @@ __metadata: languageName: node linkType: hard +"@vue/shared@npm:3.3.4": + version: 3.3.4 + resolution: "@vue/shared@npm:3.3.4" + checksum: 12fe53ff816bfa29ea53f89212067a86512c626b8d30149ff28b36705820f6150e1fb4e4e46897ad9eddb1d1cfc02d8941053939910eed69a905f7a5509baabe + languageName: node + linkType: hard + "@webassemblyjs/ast@npm:1.11.1": version: 1.11.1 resolution: "@webassemblyjs/ast@npm:1.11.1" @@ -12906,7 +12525,7 @@ __metadata: languageName: node linkType: hard -"chrome-trace-event@npm:^1.0.2": +"chrome-trace-event@npm:^1.0.2, chrome-trace-event@npm:^1.0.3": version: 1.0.3 resolution: "chrome-trace-event@npm:1.0.3" checksum: cb8b1fc7e881aaef973bd0c4a43cd353c2ad8323fb471a041e64f7c2dd849cde4aad15f8b753331a32dda45c973f032c8a03b8177fc85d60eaa75e91e08bfb97 @@ -14036,27 +13655,29 @@ __metadata: languageName: node linkType: hard -"cypress-terminal-report@npm:^4.1.2": - version: 4.1.3 - resolution: "cypress-terminal-report@npm:4.1.3" +"cypress-terminal-report@npm:^5.0.0": + version: 5.3.3 + resolution: "cypress-terminal-report@npm:5.3.3" dependencies: chalk: ^4.0.0 fs-extra: ^10.1.0 + process: ^0.11.10 + safe-json-stringify: ^1.2.0 semver: ^7.3.5 tv4: ^1.3.0 peerDependencies: - cypress: ">=4.10.0" - checksum: d9ed1c1152f9815b8956ab96cccb339c0215708f1a9eee71c5a29c108e3d37a4ef650d7aa1e19da5bd45c5964317366bac954ca044d13fb2b931e0ce66b1aee6 + cypress: ">=10.0.0" + checksum: c0cda15cfda3240231725ddc0f0dd9dbc5c4bf062594691c879dc2b202c4f9bb2bcb7d85682cabe50be79d161a61f115911f8e72aee6fbf7a2401f162329b381 languageName: node linkType: hard -"cypress@npm:^12.9.0": - version: 12.17.0 - resolution: "cypress@npm:12.17.0" +"cypress@npm:^13.0.0": + version: 13.0.0 + resolution: "cypress@npm:13.0.0" dependencies: - "@cypress/request": ^2.88.10 + "@cypress/request": ^3.0.0 "@cypress/xvfb": ^1.2.4 - "@types/node": ^14.14.31 + "@types/node": ^16.18.39 "@types/sinonjs__fake-timers": 8.1.1 "@types/sizzle": ^2.3.2 arch: ^2.2.0 @@ -14089,6 +13710,7 @@ __metadata: minimist: ^1.2.8 ospath: ^1.2.2 pretty-bytes: ^5.6.0 + process: ^0.11.10 proxy-from-env: 1.0.0 request-progress: ^3.0.0 semver: ^7.5.3 @@ -14098,7 +13720,7 @@ __metadata: yauzl: ^2.10.0 bin: cypress: bin/cypress - checksum: 5ec3b4b63da0297f35fd69ace549158ad7c1836841bcea6e863fc64702fe00907c98553f44816bf4d81664dd3b4a51da2fb4aaabe3ee03414cb45d5cae37deca + checksum: 223dddfd85dbde5e3a915e87b6cb176b99a9e5bcc24baa40cd5b9ca4a93315a95cf53c5c6ac3a6984f59be55ffc8b58b93a713c0ddcb63a5f4996229cce70329 languageName: node linkType: hard @@ -14750,6 +14372,7 @@ __metadata: version: 0.0.0-use.local resolution: "e2e@workspace:e2e" dependencies: + "@parcel/transformer-vue": 2.9.3 "@uppy/audio": "workspace:^" "@uppy/aws-s3": "workspace:^" "@uppy/aws-s3-multipart": "workspace:^" @@ -14783,11 +14406,10 @@ __metadata: "@uppy/webcam": "workspace:^" "@uppy/xhr-upload": "workspace:^" "@uppy/zoom": "workspace:^" - cypress: ^12.9.0 - cypress-terminal-report: ^4.1.2 + cypress: ^13.0.0 + cypress-terminal-report: ^5.0.0 deep-freeze: ^0.0.1 - execa: ^6.1.0 - parcel: 2.0.0-nightly.1278 + parcel: ^2.0.0 prompts: ^2.4.2 react: ^18.1.0 react-dom: ^18.1.0 @@ -21388,21 +21010,21 @@ __metadata: languageName: node linkType: hard -"lmdb@npm:2.5.2": - version: 2.5.2 - resolution: "lmdb@npm:2.5.2" - dependencies: - "@lmdb/lmdb-darwin-arm64": 2.5.2 - "@lmdb/lmdb-darwin-x64": 2.5.2 - "@lmdb/lmdb-linux-arm": 2.5.2 - "@lmdb/lmdb-linux-arm64": 2.5.2 - "@lmdb/lmdb-linux-x64": 2.5.2 - "@lmdb/lmdb-win32-x64": 2.5.2 - msgpackr: ^1.5.4 +"lmdb@npm:2.7.11": + version: 2.7.11 + resolution: "lmdb@npm:2.7.11" + dependencies: + "@lmdb/lmdb-darwin-arm64": 2.7.11 + "@lmdb/lmdb-darwin-x64": 2.7.11 + "@lmdb/lmdb-linux-arm": 2.7.11 + "@lmdb/lmdb-linux-arm64": 2.7.11 + "@lmdb/lmdb-linux-x64": 2.7.11 + "@lmdb/lmdb-win32-x64": 2.7.11 + msgpackr: 1.8.5 node-addon-api: ^4.3.0 node-gyp: latest - node-gyp-build-optional-packages: 5.0.3 - ordered-binary: ^1.2.4 + node-gyp-build-optional-packages: 5.0.6 + ordered-binary: ^1.4.0 weak-lru-cache: ^1.2.2 dependenciesMeta: "@lmdb/lmdb-darwin-arm64": @@ -21417,7 +21039,9 @@ __metadata: optional: true "@lmdb/lmdb-win32-x64": optional: true - checksum: 3362dc2b03c6fbdfc02291001007e4096767476e65fbf8d5e332ef473946a0d108319748ef5974ebb84cf6ffa4015c039920f130bcc09c03a751b03a9fd93dff + bin: + download-lmdb-prebuilds: bin/download-prebuilds.js + checksum: 44f9c7ea078b79c5a11179af3e4a6e604c63ced6fedbd58b06a048ba9e1ab54bac5772675a7de637a7955918ea7fa62c233d76d0a232137b3003ede539cd8516 languageName: node linkType: hard @@ -21904,6 +21528,15 @@ __metadata: languageName: node linkType: hard +"magic-string@npm:^0.30.0": + version: 0.30.3 + resolution: "magic-string@npm:0.30.3" + dependencies: + "@jridgewell/sourcemap-codec": ^1.4.15 + checksum: a5a9ddf9bd3bf49a2de1048bf358464f1bda7b3cc1311550f4a0ba8f81a4070e25445d53a5ee28850161336f1bff3cf28aa3320c6b4aeff45ce3e689f300b2f3 + languageName: node + linkType: hard + "make-dir@npm:^2.0.0, make-dir@npm:^2.1.0": version: 2.1.0 resolution: "make-dir@npm:2.1.0" @@ -23463,6 +23096,49 @@ __metadata: languageName: node linkType: hard +"msgpackr-extract@npm:^3.0.1": + version: 3.0.2 + resolution: "msgpackr-extract@npm:3.0.2" + dependencies: + "@msgpackr-extract/msgpackr-extract-darwin-arm64": 3.0.2 + "@msgpackr-extract/msgpackr-extract-darwin-x64": 3.0.2 + "@msgpackr-extract/msgpackr-extract-linux-arm": 3.0.2 + "@msgpackr-extract/msgpackr-extract-linux-arm64": 3.0.2 + "@msgpackr-extract/msgpackr-extract-linux-x64": 3.0.2 + "@msgpackr-extract/msgpackr-extract-win32-x64": 3.0.2 + node-gyp: latest + node-gyp-build-optional-packages: 5.0.7 + dependenciesMeta: + "@msgpackr-extract/msgpackr-extract-darwin-arm64": + optional: true + "@msgpackr-extract/msgpackr-extract-darwin-x64": + optional: true + "@msgpackr-extract/msgpackr-extract-linux-arm": + optional: true + "@msgpackr-extract/msgpackr-extract-linux-arm64": + optional: true + "@msgpackr-extract/msgpackr-extract-linux-x64": + optional: true + "@msgpackr-extract/msgpackr-extract-win32-x64": + optional: true + bin: + download-msgpackr-prebuilds: bin/download-prebuilds.js + checksum: 5adb809b965bac41c310e60373d54c955fe78e4d134ab036d0f9ee5b322cec0a739878d395e17c1ac82d840705896b2dafae6a8cc04ad34c14d2de4b06b58330 + languageName: node + linkType: hard + +"msgpackr@npm:1.8.5": + version: 1.8.5 + resolution: "msgpackr@npm:1.8.5" + dependencies: + msgpackr-extract: ^3.0.1 + dependenciesMeta: + msgpackr-extract: + optional: true + checksum: baa6d94fb6ea0592318c19a988f9379279e1882042c46585802c89720fcd8698e59819b55afb188b126f8ee3be792098791b2cfe03ad1defdb6011edb3b146ad + languageName: node + linkType: hard + "msgpackr@npm:^1.5.4": version: 1.6.2 resolution: "msgpackr@npm:1.6.2" @@ -23766,6 +23442,15 @@ __metadata: languageName: node linkType: hard +"node-addon-api@npm:^7.0.0": + version: 7.0.0 + resolution: "node-addon-api@npm:7.0.0" + dependencies: + node-gyp: latest + checksum: 4349465d737e284b280fc0e5fd2384f9379bca6b7f2a5a1460bea676ba5b90bf563e7d02a9254c35b9ed808641c81d9b4ca9e1da17d2849cd07727660b00b332 + languageName: node + linkType: hard + "node-dir@npm:^0.1.17": version: 0.1.17 resolution: "node-dir@npm:0.1.17" @@ -23835,6 +23520,28 @@ __metadata: languageName: node linkType: hard +"node-gyp-build-optional-packages@npm:5.0.6": + version: 5.0.6 + resolution: "node-gyp-build-optional-packages@npm:5.0.6" + bin: + node-gyp-build-optional-packages: bin.js + node-gyp-build-optional-packages-optional: optional.js + node-gyp-build-optional-packages-test: build-test.js + checksum: 080656ae27e914035f8b259b3cd2e7e75538e219544a0378485714953eb5cf24391ea2e3d0c3cd4dabd75bebab966c1ac7c1432af9af0b2c2ef02bf9ec56ef99 + languageName: node + linkType: hard + +"node-gyp-build-optional-packages@npm:5.0.7": + version: 5.0.7 + resolution: "node-gyp-build-optional-packages@npm:5.0.7" + bin: + node-gyp-build-optional-packages: bin.js + node-gyp-build-optional-packages-optional: optional.js + node-gyp-build-optional-packages-test: build-test.js + checksum: bcb4537af15bcb3811914ea0db8f69284ca10db1cc7543a167a4c41ae4b9b5044b133f789fdadad0b7adc6931f6ae7def3c75b0bc7b05836881aae52400163e6 + languageName: node + linkType: hard + "node-gyp-build@npm:^4.2.2, node-gyp-build@npm:^4.3.0": version: 4.5.0 resolution: "node-gyp-build@npm:4.5.0" @@ -24763,10 +24470,10 @@ __metadata: languageName: node linkType: hard -"ordered-binary@npm:^1.2.4": - version: 1.3.0 - resolution: "ordered-binary@npm:1.3.0" - checksum: 1ba6544139c90fa2da536fa751b9e0d1e836968ddba54d4ef10876f8e9f11abbad9c0d849cafd959a4014aad1bb095b0cd140c1c0ed032d15ed2c1df5ee5c396 +"ordered-binary@npm:^1.4.0": + version: 1.4.1 + resolution: "ordered-binary@npm:1.4.1" + checksum: 274940b4ef983562e11371c84415c265432a4e1337ab85f8e7669eeab6afee8f655c6c12ecee1cd121aaf399c32f5c781b0d50e460bd42da004eba16dcc66574 languageName: node linkType: hard @@ -24884,7 +24591,7 @@ __metadata: languageName: node linkType: hard -"p-queue@npm:^7.3.4": +"p-queue@npm:7.3.4": version: 7.3.4 resolution: "p-queue@npm:7.3.4" dependencies: @@ -24894,6 +24601,16 @@ __metadata: languageName: node linkType: hard +"p-queue@patch:p-queue@npm%3A7.3.4#./.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch::locator=%40uppy-dev%2Fbuild%40workspace%3A.": + version: 7.3.4 + resolution: "p-queue@patch:p-queue@npm%3A7.3.4#./.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch::version=7.3.4&hash=e0e62f&locator=%40uppy-dev%2Fbuild%40workspace%3A." + dependencies: + eventemitter3: ^4.0.7 + p-timeout: ^5.0.2 + checksum: 106ae170e26a5fbe0f175e6945428e51890535d90573d241164983757f0ff8fafbc154e8eeda61e122e2f0dbdd2e29f8f2a728ad62cebc9c7b1530c9dc93af89 + languageName: node + linkType: hard + "p-retry@npm:^4.5.0": version: 4.6.2 resolution: "p-retry@npm:4.6.2" @@ -24984,51 +24701,27 @@ __metadata: languageName: node linkType: hard -"parcel@npm:2.0.0-nightly.1278": - version: 2.0.0-nightly.1278 - resolution: "parcel@npm:2.0.0-nightly.1278" - dependencies: - "@parcel/config-default": 2.0.0-nightly.1280+5b901a317 - "@parcel/core": 2.0.0-nightly.1278+5b901a317 - "@parcel/diagnostic": 2.0.0-nightly.1280+5b901a317 - "@parcel/events": 2.0.0-nightly.1280+5b901a317 - "@parcel/fs": 2.0.0-nightly.1280+5b901a317 - "@parcel/logger": 2.0.0-nightly.1280+5b901a317 - "@parcel/package-manager": 2.0.0-nightly.1280+5b901a317 - "@parcel/reporter-cli": 2.0.0-nightly.1280+5b901a317 - "@parcel/reporter-dev-server": 2.0.0-nightly.1280+5b901a317 - "@parcel/utils": 2.0.0-nightly.1280+5b901a317 - chalk: ^4.1.0 - commander: ^7.0.0 - get-port: ^4.2.0 - v8-compile-cache: ^2.0.0 - bin: - parcel: lib/bin.js - checksum: 73a67032a7db14882c93fbc7fa1c5361af2684a50d85410c1099f57a29b98f2643c2bbca7fb5189baa366533aceda8c8023536af27dfcfd178381130342f64ec - languageName: node - linkType: hard - "parcel@npm:^2.0.0": - version: 2.8.3 - resolution: "parcel@npm:2.8.3" - dependencies: - "@parcel/config-default": 2.8.3 - "@parcel/core": 2.8.3 - "@parcel/diagnostic": 2.8.3 - "@parcel/events": 2.8.3 - "@parcel/fs": 2.8.3 - "@parcel/logger": 2.8.3 - "@parcel/package-manager": 2.8.3 - "@parcel/reporter-cli": 2.8.3 - "@parcel/reporter-dev-server": 2.8.3 - "@parcel/utils": 2.8.3 + version: 2.9.3 + resolution: "parcel@npm:2.9.3" + dependencies: + "@parcel/config-default": 2.9.3 + "@parcel/core": 2.9.3 + "@parcel/diagnostic": 2.9.3 + "@parcel/events": 2.9.3 + "@parcel/fs": 2.9.3 + "@parcel/logger": 2.9.3 + "@parcel/package-manager": 2.9.3 + "@parcel/reporter-cli": 2.9.3 + "@parcel/reporter-dev-server": 2.9.3 + "@parcel/reporter-tracer": 2.9.3 + "@parcel/utils": 2.9.3 chalk: ^4.1.0 commander: ^7.0.0 get-port: ^4.2.0 - v8-compile-cache: ^2.0.0 bin: parcel: lib/bin.js - checksum: 09cd2dc23c2ec0417e9de93face185a08679d744c6cbb627fce6ffb507f8af1f8d0642f063e0cf771b699419a29db8ee7ca60cdb32966a65dd3b03da35473bfa + checksum: d9b9c0083f49ecb7e35f3da0322fa71912158a847463e877bfa7f170063f3d66a8d57dd5b3f5b69a86ccce6ef07c7a70504b1191bbd477f0c908071516d13749 languageName: node linkType: hard @@ -26191,6 +25884,13 @@ __metadata: languageName: node linkType: hard +"process@npm:^0.11.10": + version: 0.11.10 + resolution: "process@npm:0.11.10" + checksum: bfcce49814f7d172a6e6a14d5fa3ac92cc3d0c3b9feb1279774708a719e19acd673995226351a082a9ae99978254e320ccda4240ddc474ba31a76c79491ca7c3 + languageName: node + linkType: hard + "prom-client@npm:14.0.1": version: 14.0.1 resolution: "prom-client@npm:14.0.1" @@ -26330,7 +26030,7 @@ __metadata: languageName: node linkType: hard -"psl@npm:^1.1.28, psl@npm:^1.1.33": +"psl@npm:^1.1.33": version: 1.9.0 resolution: "psl@npm:1.9.0" checksum: 20c4277f640c93d393130673f392618e9a8044c6c7bf61c53917a0fddb4952790f5f362c6c730a9c32b124813e173733f9895add8d26f566ed0ea0654b2e711d @@ -27975,6 +27675,13 @@ __metadata: languageName: node linkType: hard +"safe-json-stringify@npm:^1.2.0": + version: 1.2.0 + resolution: "safe-json-stringify@npm:1.2.0" + checksum: 5bb32db6d6a3ceb3752df51f4043a412419cd3d4fcd5680a865dfa34cd7e575ba659c077d13f52981ced084061df9c75c7fb12e391584d4264e6914c1cd3d216 + languageName: node + linkType: hard + "safe-regex-test@npm:^1.0.0": version: 1.0.0 resolution: "safe-regex-test@npm:1.0.0" @@ -28213,7 +27920,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.5.0, semver@npm:^5.6.0, semver@npm:^5.7.0, semver@npm:^5.7.1": +"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.5.0, semver@npm:^5.6.0, semver@npm:^5.7.1": version: 5.7.2 resolution: "semver@npm:5.7.2" bin: @@ -28253,7 +27960,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:7.5.4, 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.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.2, semver@npm:^7.5.3": version: 7.5.4 resolution: "semver@npm:7.5.4" dependencies: @@ -30122,7 +29829,7 @@ __metadata: languageName: node linkType: hard -"terser@npm:^5.0.0, terser@npm:^5.14.1, terser@npm:^5.2.0": +"terser@npm:^5.0.0, terser@npm:^5.14.1": version: 5.15.0 resolution: "terser@npm:5.15.0" dependencies: @@ -30343,13 +30050,15 @@ __metadata: languageName: node linkType: hard -"tough-cookie@npm:~2.5.0": - version: 2.5.0 - resolution: "tough-cookie@npm:2.5.0" +"tough-cookie@npm:^4.1.3": + version: 4.1.3 + resolution: "tough-cookie@npm:4.1.3" dependencies: - psl: ^1.1.28 + psl: ^1.1.33 punycode: ^2.1.1 - checksum: 16a8cd090224dd176eee23837cbe7573ca0fa297d7e468ab5e1c02d49a4e9a97bb05fef11320605eac516f91d54c57838a25864e8680e27b069a5231d8264977 + universalify: ^0.2.0 + url-parse: ^1.5.3 + checksum: c9226afff36492a52118432611af083d1d8493a53ff41ec4ea48e5b583aec744b989e4280bcf476c910ec1525a89a4a0f1cae81c08b18fb2ec3a9b3a72b91dcc languageName: node linkType: hard @@ -31398,7 +31107,7 @@ __metadata: languageName: node linkType: hard -"v8-compile-cache@npm:2.3.0, v8-compile-cache@npm:^2.0.0": +"v8-compile-cache@npm:2.3.0": version: 2.3.0 resolution: "v8-compile-cache@npm:2.3.0" checksum: adb0a271eaa2297f2f4c536acbfee872d0dd26ec2d76f66921aa7fc437319132773483344207bdbeee169225f4739016d8d2dbf0553913a52bb34da6d0334f8e From 926effa33281e97ae08184196fcd05c9642b2742 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Thu, 31 Aug 2023 12:52:46 +0200 Subject: [PATCH 07/36] fixup! resolve e2e build failure --- e2e/start-companion-with-load-balancer.mjs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/e2e/start-companion-with-load-balancer.mjs b/e2e/start-companion-with-load-balancer.mjs index b119a17983..29be476781 100755 --- a/e2e/start-companion-with-load-balancer.mjs +++ b/e2e/start-companion-with-load-balancer.mjs @@ -3,6 +3,7 @@ import { spawn } from 'node:child_process' import http from 'node:http' import httpProxy from 'http-proxy' +import process from 'node:process' const numInstances = 3 const lbPort = 3020 @@ -45,9 +46,12 @@ function createLoadBalancer (baseUrls) { return server } +const isWindows = process.platform === 'win32' +const isOSX = process.platform === 'darwin' + const startCompanion = ({ name, port }) => { const cp = spawn(process.execPath, [ - '--watch-path', 'packages/@uppy/companion/src', '-r', 'dotenv/config', '--watch', './packages/@uppy/companion/src/standalone/start-server.js', + '-r', 'dotenv/config', ...(isWindows || isOSX ? ['--watch-path', 'packages/@uppy/companion/src', '--watch'] : []), './packages/@uppy/companion/src/standalone/start-server.js', ], { cwd: new URL('../', import.meta.url), stdio: 'inherit', From ef5a87c8d5f0a12864f3c83bd3e5da1804b53122 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Thu, 31 Aug 2023 13:19:38 +0200 Subject: [PATCH 08/36] fixup! resolve e2e build failure --- e2e/start-companion-with-load-balancer.mjs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/e2e/start-companion-with-load-balancer.mjs b/e2e/start-companion-with-load-balancer.mjs index 29be476781..96830b47b8 100755 --- a/e2e/start-companion-with-load-balancer.mjs +++ b/e2e/start-companion-with-load-balancer.mjs @@ -56,7 +56,8 @@ const startCompanion = ({ name, port }) => { cwd: new URL('../', import.meta.url), stdio: 'inherit', env: { - // Note: these env variables will override anything set in .env + // Note: these env variables will override anything set in .env + ...process.env, COMPANION_PORT: port, COMPANION_SECRET: 'development', // multi instance will not work without secret set COMPANION_PREAUTH_SECRET: 'development', // multi instance will not work without secret set From 7f8cda37a8be20024d92f1d6bf49806aace1f939 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Fri, 1 Sep 2023 17:19:50 +0200 Subject: [PATCH 09/36] add `js2ts` script --- .eslintrc.js | 1 + .github/workflows/ci.yml | 1 - .gitignore | 1 + private/js2ts/index.mjs | 66 +++++++++++++++++++++++++++ tsconfig.json => tsconfig.shared.json | 22 +++------ 5 files changed, 75 insertions(+), 16 deletions(-) create mode 100755 private/js2ts/index.mjs rename tsconfig.json => tsconfig.shared.json (63%) diff --git a/.eslintrc.js b/.eslintrc.js index 84b9bee40b..67119d7bcd 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -361,6 +361,7 @@ module.exports = { 'postcss.config.js', '.eslintrc.js', 'private/**/*.js', + 'private/**/*.mjs', ], rules: { 'no-console': 'off', diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e955d2f568..18e2e18c18 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,6 +94,5 @@ jobs: corepack yarn run build:lib corepack yarn run build:companion corepack yarn run build:locale-pack - rm tsconfig.json - name: Run type tests run: corepack yarn run test:type diff --git a/.gitignore b/.gitignore index 221ceee099..636aa8a956 100644 --- a/.gitignore +++ b/.gitignore @@ -17,6 +17,7 @@ yarn-error.log dist/ lib/ +tsOut/ coverage/ examples/dev/bundle.js examples/aws-php/vendor/* diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs new file mode 100755 index 0000000000..42328a7c10 --- /dev/null +++ b/private/js2ts/index.mjs @@ -0,0 +1,66 @@ +#!/usr/bin/env node + +import { opendir, readFile, open, writeFile, rm } from 'node:fs/promises' +import { argv } from 'node:process' +import { extname } from 'node:path' + +const packageRoot = new URL(`../../packages/${argv[2]}/`, import.meta.url) +let dir + +try { + dir = await opendir(new URL('./src/', packageRoot), { recursive: true }) +} catch (cause) { + throw new Error(`Unable to find package "${argv[2]}"`, { cause }) +} +const packageJSON = JSON.parse(await readFile(new URL('./package.json', packageRoot), 'utf-8')) + +if (packageJSON.type !== 'module') { + throw new Error('Cannot convert non-ESM package to TS') +} + +const references = Object.keys(packageJSON.dependencies || {}).concat(Object.keys(packageJSON.peerDependencies || {})) + .filter(pkg => pkg.startsWith('@uppy/')) + .map(pkg => ({ path: `../${pkg.slice('@uppy/'.length)}` })) + +let tsConfig +try { + tsConfig = await open(new URL('./tsconfig.json', packageRoot), 'wx') +} catch (cause) { + throw new Error('It seems this package has already been transitioned to TS', { cause }) +} + +for await (const dirent of dir) { + if (!dirent.isDirectory()) { + const { path:filepath } = dirent + const ext = extname(filepath) + await writeFile(filepath.replace(ext, ext.replace('js', 'ts')), + (await readFile(filepath, 'utf-8')).replace( + /((?:^|\n)import[^\n]*["']\.\.?\/[^'"]+\.)js(x?["'])/g, + '$1ts$2', + )) + await rm(filepath) + } +} + +await tsConfig.writeFile(`${JSON.stringify( + { + extends: '../../../tsconfig.shared', + compilerOptions: { + outDir: './tsOut', + }, + include: [ + './package.json', + './src/**/*.*', + ], + exclude: [ + './src/**/*.test.*', + ], + references, + }, + undefined, + 2, +)}\n`) + +await tsConfig.close() + +console.log('Done') diff --git a/tsconfig.json b/tsconfig.shared.json similarity index 63% rename from tsconfig.json rename to tsconfig.shared.json index 32d9be55cc..e4b921026a 100644 --- a/tsconfig.json +++ b/tsconfig.shared.json @@ -1,35 +1,27 @@ { "compilerOptions": { + "composite": true, + "incremental": true, "target": "ESnext", "module": "NodeNext", "moduleResolution": "NodeNext", "lib": [ - "dom", - "ESnext" + "dom", + "ESnext" ], "resolveJsonModule": true, "allowImportingTsExtensions": true, "allowJs": false, - "jsx": "preserve", "declaration": true, - "emitDeclarationOnly":true, + "emitDeclarationOnly": true, + "declarationMap": true, + "jsx": "preserve", "noImplicitAny": true, "noImplicitThis": true, "strictNullChecks": true, - "types": [], "esModuleInterop": true, "allowSyntheticDefaultImports": false, "strictFunctionTypes": true, "forceConsistentCasingInFileNames": true }, - "include": ["packages/"], - "exclude": [ - "node_modules/", - "packages/@uppy/angular", - "packages/@uppy/companion", - "packages/@uppy/*/types", - "packages/uppy/types", - "private/", - "bin/", - ] } From c1f69af7a89182b0dcbd8b0962d54fa554d58fc5 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Fri, 1 Sep 2023 18:10:09 +0200 Subject: [PATCH 10/36] add `build:ts` --- .github/workflows/ci.yml | 2 ++ bin/build-ts.mjs | 30 +++++++++++++++++++ .../integration/dashboard-transloadit.spec.ts | 22 ++++++++++++++ e2e/cypress/integration/react.spec.ts | 2 ++ e2e/tsconfig.json | 2 ++ package.json | 1 + packages/@uppy/svelte/tsconfig.json | 13 -------- 7 files changed, 59 insertions(+), 13 deletions(-) create mode 100644 bin/build-ts.mjs delete mode 100644 packages/@uppy/svelte/tsconfig.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 18e2e18c18..1e62b771a4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -96,3 +96,5 @@ jobs: corepack yarn run build:locale-pack - name: Run type tests run: corepack yarn run test:type + - name: Attempt building TS packages + run: corepack yarn run build:ts diff --git a/bin/build-ts.mjs b/bin/build-ts.mjs new file mode 100644 index 0000000000..ca7e737580 --- /dev/null +++ b/bin/build-ts.mjs @@ -0,0 +1,30 @@ +#!/usr/bin/env node + +import { spawn } from 'node:child_process' +import { once } from 'node:events' +import { existsSync } from 'node:fs' +import path from 'node:path' +import { stdin, env } from 'node:process' +import { createInterface as readLines } from 'node:readline' +import { fileURLToPath } from 'node:url' + +const fromYarn = 'npm_execpath' in env +const exe = fromYarn ? env.npm_execpath : 'corepack' +const argv0 = fromYarn ? [] : ['yarn'] + +const cwd = fileURLToPath(new URL('../', import.meta.url)) + +for await (const line of readLines(stdin)) { + const { location, name } = JSON.parse(line) + if (existsSync(path.join(cwd, location, 'tsconfig.json'))) { + const cp = spawn(exe, [...argv0, 'tsc', '-p', location], { + stdio: 'inherit', + cwd, + }) + await Promise.race([ + once(cp, 'error').then(err => Promise.reject(err)), + await once(cp, 'exit') + .then(([code]) => (code && Promise.reject(new Error(`Non-zero exit code when building "${name}": ${code}`)))), + ]) + } +} diff --git a/e2e/cypress/integration/dashboard-transloadit.spec.ts b/e2e/cypress/integration/dashboard-transloadit.spec.ts index 94f03454f5..9cdbf6c8d8 100644 --- a/e2e/cypress/integration/dashboard-transloadit.spec.ts +++ b/e2e/cypress/integration/dashboard-transloadit.spec.ts @@ -34,11 +34,15 @@ describe('Dashboard with Transloadit', () => { cy.get('.uppy-StatusBar-actionBtn--upload').click() cy.wait(['@createAssemblies']).then(() => { + // eslint-disable-next-line + // @ts-ignore fix me expect(Object.values(uppy.getPlugin('Transloadit').activeAssemblies).every((a: any) => a.pollInterval)).to.equal(true) uppy.cancelAll() cy.wait(['@delete']).then(() => { + // eslint-disable-next-line + // @ts-ignore fix me expect(Object.values(uppy.getPlugin('Transloadit').activeAssemblies).some((a: any) => a.pollInterval)).to.equal(false) }) }) @@ -53,6 +57,8 @@ describe('Dashboard with Transloadit', () => { const spy = cy.spy() cy.window().then(({ uppy }) => { + // eslint-disable-next-line + // @ts-ignore fix me uppy.on('transloadit:assembly-cancelled', spy) cy.get('@file-input').selectFile(['cypress/fixtures/images/cat.jpg', 'cypress/fixtures/images/traffic.jpg'], { force:true }) @@ -89,6 +95,8 @@ describe('Dashboard with Transloadit', () => { const spy = cy.spy() cy.window().then(({ uppy }) => { + // eslint-disable-next-line + // @ts-ignore fix me uppy.on('transloadit:assembly-cancelled', spy) cy.get('@file-input').selectFile(['cypress/fixtures/images/cat.jpg', 'cypress/fixtures/images/traffic.jpg'], { force:true }) @@ -111,12 +119,18 @@ describe('Dashboard with Transloadit', () => { cy.get('.uppy-StatusBar-actionBtn--upload').click() cy.wait('@assemblyPolling') + // eslint-disable-next-line + // @ts-ignore fix me expect(Object.values(uppy.getPlugin('Transloadit').activeAssemblies).every((a: any) => a.pollInterval)).to.equal(true) const { files } = uppy.getState() + // eslint-disable-next-line + // @ts-ignore fix me uppy.removeFiles(Object.keys(files)) cy.wait('@assemblyDeletion').then(() => { + // eslint-disable-next-line + // @ts-ignore fix me expect(Object.values(uppy.getPlugin('Transloadit').activeAssemblies).some((a: any) => a.pollInterval)).to.equal(false) expect(spy).to.be.calledOnce }) @@ -128,12 +142,18 @@ describe('Dashboard with Transloadit', () => { cy.get('.uppy-StatusBar-actionBtn--upload').click() cy.window().then(({ uppy }) => { + // eslint-disable-next-line + // @ts-ignore fix me expect(Object.values(uppy.getPlugin('Transloadit').activeAssemblies).length).to.equal(0) const { files } = uppy.getState() + // eslint-disable-next-line + // @ts-ignore fix me uppy.removeFiles(Object.keys(files)) cy.wait('@createAssemblies').then(() => { + // eslint-disable-next-line + // @ts-ignore fix me expect(Object.values(uppy.getPlugin('Transloadit').activeAssemblies).some((a: any) => a.pollInterval)).to.equal(false) }) }) @@ -145,6 +165,8 @@ describe('Dashboard with Transloadit', () => { cy.get('.uppy-StatusBar-actionBtn--upload').click() cy.window().then(({ uppy }) => { + // eslint-disable-next-line + // @ts-ignore fix me expect(Object.values(uppy.getPlugin('Transloadit').activeAssemblies).length).to.equal(0) const { files } = uppy.getState() diff --git a/e2e/cypress/integration/react.spec.ts b/e2e/cypress/integration/react.spec.ts index b3120e7b57..86e096dbb5 100644 --- a/e2e/cypress/integration/react.spec.ts +++ b/e2e/cypress/integration/react.spec.ts @@ -24,6 +24,8 @@ describe('@uppy/react', () => { it('should render Drag & Drop in React and create a thumbail with @uppy/thumbnail-generator', () => { const spy = cy.spy() + // eslint-disable-next-line + // @ts-ignore fix me cy.window().then(({ uppy }) => uppy.on('thumbnail:generated', spy)) cy.get('@dragdrop-input').selectFile(['cypress/fixtures/images/cat.jpg', 'cypress/fixtures/images/traffic.jpg'], { force:true }) // not sure how I can accurately wait for the thumbnail diff --git a/e2e/tsconfig.json b/e2e/tsconfig.json index fb294941d3..805336a76c 100644 --- a/e2e/tsconfig.json +++ b/e2e/tsconfig.json @@ -1,5 +1,7 @@ { "compilerOptions": { + "moduleResolution": "NodeNext", + "noEmit": true, "target": "es2020", "lib": ["es2020", "dom"], "types": ["cypress"] diff --git a/package.json b/package.json index 6dcda3c2de..d72c248646 100644 --- a/package.json +++ b/package.json @@ -116,6 +116,7 @@ "build:svelte": "yarn workspace @uppy/svelte build", "build:angular": "yarn workspace angular build", "build:js": "npm-run-all build:lib build:companion build:locale-pack build:svelte build:angular build:bundle", + "build:ts": "yarn workspaces list --no-private --json | yarn node ./bin/build-ts.mjs", "build:lib": "yarn node ./bin/build-lib.js", "build:locale-pack": "yarn workspace @uppy-dev/locale-pack build && eslint packages/@uppy/locales/src/en_US.js --fix && yarn workspace @uppy-dev/locale-pack test unused", "build": "npm-run-all --parallel build:js build:css --serial size", diff --git a/packages/@uppy/svelte/tsconfig.json b/packages/@uppy/svelte/tsconfig.json deleted file mode 100644 index ae3d9b2759..0000000000 --- a/packages/@uppy/svelte/tsconfig.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "@tsconfig/svelte/tsconfig.json", - "compilerOptions": { - "esModuleInterop": true, - "sourceMap": true - }, - "include": [ - "src/**/*" - ], - "exclude": [ - "node_modules/*" - ] -} From 1ccdcfa38267faf96c19335069fb689e9371d10f Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 13 Sep 2023 12:59:56 +0200 Subject: [PATCH 11/36] update tsconfig --- tsconfig.shared.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tsconfig.shared.json b/tsconfig.shared.json index e4b921026a..42c083c950 100644 --- a/tsconfig.shared.json +++ b/tsconfig.shared.json @@ -3,8 +3,8 @@ "composite": true, "incremental": true, "target": "ESnext", - "module": "NodeNext", - "moduleResolution": "NodeNext", + "module": "ESNext", + "moduleResolution": "Bundler", "lib": [ "dom", "ESnext" @@ -19,6 +19,8 @@ "noImplicitAny": true, "noImplicitThis": true, "strictNullChecks": true, + "skipLibCheck": true, + "verbatimModuleSyntax": true, "esModuleInterop": true, "allowSyntheticDefaultImports": false, "strictFunctionTypes": true, From 49808189cb27c469c4b35ad78ff4e839f5caaa98 Mon Sep 17 00:00:00 2001 From: Mikael Finstad Date: Tue, 26 Sep 2023 23:25:30 +0800 Subject: [PATCH 12/36] Update private/js2ts/index.mjs Co-authored-by: Antoine du Hamel --- private/js2ts/index.mjs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index 42328a7c10..7763886c4b 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -1,5 +1,7 @@ #!/usr/bin/env node + +/** This script can be used to convert plugins with ESM source into plugins with TS source. */ import { opendir, readFile, open, writeFile, rm } from 'node:fs/promises' import { argv } from 'node:process' import { extname } from 'node:path' From 57341b6ed4dc22360194e00ca17403ffd4f3e8cd Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 26 Sep 2023 17:27:30 +0200 Subject: [PATCH 13/36] Update private/js2ts/index.mjs --- private/js2ts/index.mjs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index 7763886c4b..62ff96737e 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -1,7 +1,10 @@ #!/usr/bin/env node -/** This script can be used to convert plugins with ESM source into plugins with TS source. */ +/** + * This script can be used to initiate the transition for a plugin from ESM source to + * TS source. It will rename the files, update the imports, and add a `tsconfig.json`. +*/ import { opendir, readFile, open, writeFile, rm } from 'node:fs/promises' import { argv } from 'node:process' import { extname } from 'node:path' From f7c2e576b0f55a840dda30b881bb13802b81d35b Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 26 Sep 2023 17:27:54 +0200 Subject: [PATCH 14/36] Update private/js2ts/index.mjs --- private/js2ts/index.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index 62ff96737e..dbf850628c 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -1,10 +1,10 @@ #!/usr/bin/env node - /** * This script can be used to initiate the transition for a plugin from ESM source to * TS source. It will rename the files, update the imports, and add a `tsconfig.json`. */ + import { opendir, readFile, open, writeFile, rm } from 'node:fs/promises' import { argv } from 'node:process' import { extname } from 'node:path' From 6c9586e0b0d1143a4d65de87d7b235bfdc5a215b Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 26 Sep 2023 17:48:23 +0200 Subject: [PATCH 15/36] Update private/js2ts/index.mjs --- private/js2ts/index.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index dbf850628c..6f3134e71c 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -3,7 +3,7 @@ /** * This script can be used to initiate the transition for a plugin from ESM source to * TS source. It will rename the files, update the imports, and add a `tsconfig.json`. -*/ + */ import { opendir, readFile, open, writeFile, rm } from 'node:fs/promises' import { argv } from 'node:process' From 123c98dca0a2dc789c207b57444c093f2f000bef Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 26 Sep 2023 18:35:52 +0200 Subject: [PATCH 16/36] update p-q patch --- ...f1ae.patch => p-queue-npm-7.4.1-e0cf0a6f17.patch} | 2 +- package.json | 1 + yarn.lock | 12 +++++++++++- 3 files changed, 13 insertions(+), 2 deletions(-) rename .yarn/patches/{p-queue-npm-7.3.4-c746a7f1ae.patch => p-queue-npm-7.4.1-e0cf0a6f17.patch} (76%) diff --git a/.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch b/.yarn/patches/p-queue-npm-7.4.1-e0cf0a6f17.patch similarity index 76% rename from .yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch rename to .yarn/patches/p-queue-npm-7.4.1-e0cf0a6f17.patch index 61aeaab25d..aaef0b1243 100644 --- a/.yarn/patches/p-queue-npm-7.3.4-c746a7f1ae.patch +++ b/.yarn/patches/p-queue-npm-7.4.1-e0cf0a6f17.patch @@ -1,5 +1,5 @@ diff --git a/package.json b/package.json -index 9724d458b80411c2fd145b2e9d6db718523ccff9..2902526f4c9170369263e60d3555d11cd9f7f32d 100644 +index 8367745346fffd144a817ccf04912bb799e18b66..66dd17a4cd736089a332d72a70040701b0cd9c93 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ diff --git a/package.json b/package.json index 4fd0e53c92..e0be85a594 100644 --- a/package.json +++ b/package.json @@ -158,6 +158,7 @@ "@types/eslint@^7.2.13": "^8.2.0", "@types/react": "^17", "@types/webpack-dev-server": "^4", + "p-queue": "patch:p-queue@npm%3A7.4.1#./.yarn/patches/p-queue-npm-7.4.1-e0cf0a6f17.patch", "pre-commit": "patch:pre-commit@npm:1.2.2#.yarn/patches/pre-commit-npm-1.2.2-f30af83877.patch", "preact": "patch:preact@npm:10.10.0#.yarn/patches/preact-npm-10.10.0-dd04de05e8.patch", "start-server-and-test": "patch:start-server-and-test@npm:1.14.0#.yarn/patches/start-server-and-test-npm-1.14.0-841aa34fdf.patch", diff --git a/yarn.lock b/yarn.lock index e11afdefed..61b2b92324 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24810,7 +24810,7 @@ __metadata: languageName: node linkType: hard -"p-queue@npm:^7.3.4": +"p-queue@npm:7.4.1": version: 7.4.1 resolution: "p-queue@npm:7.4.1" dependencies: @@ -24820,6 +24820,16 @@ __metadata: languageName: node linkType: hard +"p-queue@patch:p-queue@npm%3A7.4.1#./.yarn/patches/p-queue-npm-7.4.1-e0cf0a6f17.patch::locator=%40uppy-dev%2Fbuild%40workspace%3A.": + version: 7.4.1 + resolution: "p-queue@patch:p-queue@npm%3A7.4.1#./.yarn/patches/p-queue-npm-7.4.1-e0cf0a6f17.patch::version=7.4.1&hash=c7a089&locator=%40uppy-dev%2Fbuild%40workspace%3A." + dependencies: + eventemitter3: ^5.0.1 + p-timeout: ^5.0.2 + checksum: 5bdc72ba72fd1eab609dd52c2b8c41d531b258be1f82ac894e9b77a40bfe5cf7cb63dd05ed5caafdb68943616b805065bd6ee5f085a328f9aa5c91a8b11e5e85 + languageName: node + linkType: hard + "p-retry@npm:^4.5.0": version: 4.6.2 resolution: "p-retry@npm:4.6.2" From 5cd4e9ba77de9a6888475d7dc8451a5a3c72a534 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 27 Sep 2023 13:58:03 +0200 Subject: [PATCH 17/36] enforce use of explicit return types in library code --- .eslintrc.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.eslintrc.js b/.eslintrc.js index 67119d7bcd..8b5215885c 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -464,6 +464,12 @@ module.exports = { '@typescript-eslint/no-namespace': 'off', }, }, + { + files: ['packages/@uppy/*/src/**/*.ts', 'packages/@uppy/*/src/**/*.tsx'], + 'rules': { + '@typescript-eslint/explicit-function-return-type': 'error', + }, + }, { files: ['**/*.md/*.*'], rules: { From 996c2af7dd94692e63642224a74c5c54d220660f Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Wed, 27 Sep 2023 14:16:51 +0200 Subject: [PATCH 18/36] add comment --- e2e/start-companion-with-load-balancer.mjs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/e2e/start-companion-with-load-balancer.mjs b/e2e/start-companion-with-load-balancer.mjs index 96830b47b8..a0f2be79b0 100755 --- a/e2e/start-companion-with-load-balancer.mjs +++ b/e2e/start-companion-with-load-balancer.mjs @@ -51,7 +51,10 @@ const isOSX = process.platform === 'darwin' const startCompanion = ({ name, port }) => { const cp = spawn(process.execPath, [ - '-r', 'dotenv/config', ...(isWindows || isOSX ? ['--watch-path', 'packages/@uppy/companion/src', '--watch'] : []), './packages/@uppy/companion/src/standalone/start-server.js', + '-r', 'dotenv/config', + // Watch mode support is limited to Windows and macOS at the time of writing. + ...(isWindows || isOSX ? ['--watch-path', 'packages/@uppy/companion/src', '--watch'] : []), + './packages/@uppy/companion/src/standalone/start-server.js', ], { cwd: new URL('../', import.meta.url), stdio: 'inherit', @@ -65,6 +68,7 @@ const startCompanion = ({ name, port }) => { COMPANION_LOGGER_PROCESS_NAME: name, }, }) + // Adding a `then` property so the return value is awaitable: return Object.defineProperty(cp, 'then', { __proto__: null, writable: true, From 3b19a371b5d7a7bd581697d79bf220ce2fcbb289 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Thu, 28 Sep 2023 16:53:01 +0200 Subject: [PATCH 19/36] prettier --- tsconfig.shared.json | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/tsconfig.shared.json b/tsconfig.shared.json index 42c083c950..2107d86d8b 100644 --- a/tsconfig.shared.json +++ b/tsconfig.shared.json @@ -5,10 +5,7 @@ "target": "ESnext", "module": "ESNext", "moduleResolution": "Bundler", - "lib": [ - "dom", - "ESnext" - ], + "lib": ["dom", "ESnext"], "resolveJsonModule": true, "allowImportingTsExtensions": true, "allowJs": false, @@ -25,5 +22,5 @@ "allowSyntheticDefaultImports": false, "strictFunctionTypes": true, "forceConsistentCasingInFileNames": true - }, + } } From d10929b9fa5da09881b08dcb9d24c3206f382bad Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Mon, 2 Oct 2023 12:36:14 +0200 Subject: [PATCH 20/36] @uppy/svelte: fix TS build command --- packages/@uppy/svelte/.gitignore | 1 + packages/@uppy/svelte/package.json | 2 +- packages/@uppy/svelte/src/empty.ts | 0 yarn.lock | 10 +++++----- 4 files changed, 7 insertions(+), 6 deletions(-) create mode 100644 packages/@uppy/svelte/src/empty.ts diff --git a/packages/@uppy/svelte/.gitignore b/packages/@uppy/svelte/.gitignore index 33cd17fc59..c242a339a1 100644 --- a/packages/@uppy/svelte/.gitignore +++ b/packages/@uppy/svelte/.gitignore @@ -1,4 +1,5 @@ .DS_Store node_modules /dist/ +/src/empty.* package-lock.json \ No newline at end of file diff --git a/packages/@uppy/svelte/package.json b/packages/@uppy/svelte/package.json index e6874933e1..27382af406 100644 --- a/packages/@uppy/svelte/package.json +++ b/packages/@uppy/svelte/package.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@rollup/plugin-node-resolve": "^13.0.0", - "@tsconfig/svelte": "^3.0.0", + "@tsconfig/svelte": "^5.0.0", "rollup": "^2.60.2", "rollup-plugin-svelte": "^7.0.0", "svelte": "^4.0.0", diff --git a/packages/@uppy/svelte/src/empty.ts b/packages/@uppy/svelte/src/empty.ts new file mode 100644 index 0000000000..e69de29bb2 diff --git a/yarn.lock b/yarn.lock index 495c6ecdb9..5963488c00 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7731,10 +7731,10 @@ __metadata: languageName: node linkType: hard -"@tsconfig/svelte@npm:^3.0.0": - version: 3.0.0 - resolution: "@tsconfig/svelte@npm:3.0.0" - checksum: 92986428a6aa87d5db9377de65cd7bd6bf73367bc3ec03bb06faba7db2ac51c45470402212914bbc76c00efa08e1116e9d269aea38274e04dbb183705dbb7a09 +"@tsconfig/svelte@npm:^5.0.0": + version: 5.0.2 + resolution: "@tsconfig/svelte@npm:5.0.2" + checksum: c16608913db89c8bfc2df805224f12403dd9d2f6f9480cc293e3aae8d1897f3a2de44db14d7c039f0325358e139fb071ec843ee46445a7e10d5265fe48f6ae80 languageName: node linkType: hard @@ -9673,7 +9673,7 @@ __metadata: resolution: "@uppy/svelte@workspace:packages/@uppy/svelte" dependencies: "@rollup/plugin-node-resolve": ^13.0.0 - "@tsconfig/svelte": ^3.0.0 + "@tsconfig/svelte": ^5.0.0 rollup: ^2.60.2 rollup-plugin-svelte: ^7.0.0 svelte: ^4.0.0 From 1f70266cb97e3862243c6a4b2c1142210c8d0ea8 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Mon, 2 Oct 2023 17:23:00 +0200 Subject: [PATCH 21/36] `allowSyntheticDefaultImports` --- tsconfig.shared.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tsconfig.shared.json b/tsconfig.shared.json index 2107d86d8b..3a179b8289 100644 --- a/tsconfig.shared.json +++ b/tsconfig.shared.json @@ -19,7 +19,7 @@ "skipLibCheck": true, "verbatimModuleSyntax": true, "esModuleInterop": true, - "allowSyntheticDefaultImports": false, + "allowSyntheticDefaultImports": true, "strictFunctionTypes": true, "forceConsistentCasingInFileNames": true } From ba73746f80a014553f15dd8a082f243618941cbe Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Mon, 2 Oct 2023 17:55:40 +0200 Subject: [PATCH 22/36] add support for TS in test files --- .eslintrc.js | 1 + tsconfig.json | 7 +++++++ 2 files changed, 8 insertions(+) create mode 100644 tsconfig.json diff --git a/.eslintrc.js b/.eslintrc.js index 8304df3cf2..497000e5dd 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -357,6 +357,7 @@ module.exports = { 'test/**/*.js', 'test/**/*.ts', '*.test.js', + '*.test.ts', '*.test-d.ts', '*.test-d.tsx', 'postcss.config.js', diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000000..b67fbd61bb --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,7 @@ +{ + "compilerOptions": { + "allowImportingTsExtensions": true, + "noEmit": true + }, + "include": ["packages/**/*.test.ts"] +} From d1c289ae63828ec4ad7d33ffc70168028d657fab Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 11:18:21 +0200 Subject: [PATCH 23/36] extend config, and match more files --- .gitignore | 1 + package.json | 2 +- packages/@uppy/core/src/Uppy.test.js | 1 + tsconfig.json | 7 +++++-- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 636aa8a956..7e0621d1b4 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ node_modules yarn-error.log .idea .env +tsconfig.tsbuildinfo dist/ lib/ diff --git a/package.json b/package.json index c1b92b9925..819c5acbf6 100644 --- a/package.json +++ b/package.json @@ -122,7 +122,7 @@ "build:svelte": "yarn workspace @uppy/svelte build", "build:angular": "yarn workspace angular build", "build:js": "npm-run-all build:lib build:companion build:locale-pack build:svelte build:angular build:bundle", - "build:ts": "yarn workspaces list --no-private --json | yarn node ./bin/build-ts.mjs", + "build:ts": "yarn tsc && yarn workspaces list --no-private --json | yarn node ./bin/build-ts.mjs", "build:lib": "yarn node ./bin/build-lib.js", "build:locale-pack": "yarn workspace @uppy-dev/locale-pack build && eslint packages/@uppy/locales/src/en_US.js --fix && yarn workspace @uppy-dev/locale-pack test unused", "build": "npm-run-all --parallel build:js build:css --serial size", diff --git a/packages/@uppy/core/src/Uppy.test.js b/packages/@uppy/core/src/Uppy.test.js index 6eb529ebd8..78b4c1e717 100644 --- a/packages/@uppy/core/src/Uppy.test.js +++ b/packages/@uppy/core/src/Uppy.test.js @@ -13,6 +13,7 @@ import AcquirerPlugin2 from './mocks/acquirerPlugin2.js' import InvalidPlugin from './mocks/invalidPlugin.js' import InvalidPluginWithoutId from './mocks/invalidPluginWithoutId.js' import InvalidPluginWithoutType from './mocks/invalidPluginWithoutType.js' +// @ts-ignore trying to import a file from outside the package import DeepFrozenStore from '../../../../e2e/cypress/fixtures/DeepFrozenStore.mjs' // eslint-disable-next-line no-restricted-globals diff --git a/tsconfig.json b/tsconfig.json index b67fbd61bb..57ccded10c 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,10 @@ { + "extends": "./tsconfig.shared", "compilerOptions": { - "allowImportingTsExtensions": true, + "allowJs": true, + "emitDeclarationOnly": false, "noEmit": true }, - "include": ["packages/**/*.test.ts"] + "include": ["packages/@uppy/*/src/**/*", "packages/@uppy/*/package.json"], + "exclude": ["**/*.test-d.ts", "packages/@uppy/angular/**/*"] } From d398bcf3ef807bd92e2ff38cadafb8ddfe298df4 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 11:28:20 +0200 Subject: [PATCH 24/36] fix imports --- packages/@uppy/aws-s3/types/index.test-d.ts | 2 +- packages/@uppy/google-drive/types/index.test-d.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/@uppy/aws-s3/types/index.test-d.ts b/packages/@uppy/aws-s3/types/index.test-d.ts index 02f244f0e3..0ebb2a3eac 100644 --- a/packages/@uppy/aws-s3/types/index.test-d.ts +++ b/packages/@uppy/aws-s3/types/index.test-d.ts @@ -1,4 +1,4 @@ -import { Uppy, UppyFile } from '@uppy/core' +import { Uppy, type UppyFile } from '@uppy/core' import { expectType, expectError } from 'tsd' import type { AwsS3Part } from '@uppy/aws-s3-multipart' import AwsS3 from '..' diff --git a/packages/@uppy/google-drive/types/index.test-d.ts b/packages/@uppy/google-drive/types/index.test-d.ts index ffd9efa87f..9fb9ccffe9 100644 --- a/packages/@uppy/google-drive/types/index.test-d.ts +++ b/packages/@uppy/google-drive/types/index.test-d.ts @@ -1,4 +1,4 @@ -import Uppy, { UIPlugin, UIPluginOptions } from '@uppy/core' +import Uppy, { type UIPlugin, type UIPluginOptions } from '@uppy/core' import GoogleDrive from '..' class SomePlugin extends UIPlugin {} From 40ebb917bfbcb25342952f1a1a2b6f24e93b99c9 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 11:35:57 +0200 Subject: [PATCH 25/36] fixup! fix imports --- packages/@uppy/google-drive/types/index.test-d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/@uppy/google-drive/types/index.test-d.ts b/packages/@uppy/google-drive/types/index.test-d.ts index 9fb9ccffe9..8e2f4c20e2 100644 --- a/packages/@uppy/google-drive/types/index.test-d.ts +++ b/packages/@uppy/google-drive/types/index.test-d.ts @@ -1,4 +1,4 @@ -import Uppy, { type UIPlugin, type UIPluginOptions } from '@uppy/core' +import Uppy, { UIPlugin, type UIPluginOptions } from '@uppy/core' import GoogleDrive from '..' class SomePlugin extends UIPlugin {} From 887b1739a377e54c438433fdb1e093330b68c8e9 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 12:25:40 +0200 Subject: [PATCH 26/36] fixup! fixup! fix imports --- tsconfig.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tsconfig.json b/tsconfig.json index 57ccded10c..fe1f5babb5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -6,5 +6,9 @@ "noEmit": true }, "include": ["packages/@uppy/*/src/**/*", "packages/@uppy/*/package.json"], - "exclude": ["**/*.test-d.ts", "packages/@uppy/angular/**/*"] + "exclude": [ + "**/*.test-d.ts", + "**/src/**/*.test.js", + "packages/@uppy/angular/**/*" + ] } From 6ccc5185660044d93a6109080b63446e8870ea70 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 12:48:06 +0200 Subject: [PATCH 27/36] uppy: fix types --- packages/uppy/tsconfig.json | 9 +++++++++ packages/uppy/types/index.d.ts | 2 +- packages/uppy/types/index.test-d.ts | 6 +++--- 3 files changed, 13 insertions(+), 4 deletions(-) create mode 100644 packages/uppy/tsconfig.json diff --git a/packages/uppy/tsconfig.json b/packages/uppy/tsconfig.json new file mode 100644 index 0000000000..211732fda3 --- /dev/null +++ b/packages/uppy/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig.shared", + "compilerOptions": { + "allowJs": true, + "emitDeclarationOnly": false, + "noEmit": true + }, + "include": ["types/*"] +} diff --git a/packages/uppy/types/index.d.ts b/packages/uppy/types/index.d.ts index 3d99a5d1e2..76500aab0a 100644 --- a/packages/uppy/types/index.d.ts +++ b/packages/uppy/types/index.d.ts @@ -3,7 +3,7 @@ // Definitions by: taoqf // Core -export { default as Core } from '@uppy/core' +export { default as Uppy } from '@uppy/core' // Stores export { default as DefaultStore } from '@uppy/store-default' diff --git a/packages/uppy/types/index.test-d.ts b/packages/uppy/types/index.test-d.ts index e2beab6fae..e960a60285 100644 --- a/packages/uppy/types/index.test-d.ts +++ b/packages/uppy/types/index.test-d.ts @@ -9,12 +9,12 @@ import * as Uppy from '..' endpoint: 'xxx', fieldName: 'up_load_file', }) - uppy.on('upload-success', (fileCount, body, uploadurl) => { - console.log(fileCount, body, uploadurl, ` files uploaded`) + uppy.on('upload-success', (fileCount, { body, uploadURL }) => { + console.log(fileCount, body, uploadURL, ` files uploaded`) }) })() ;(() => { - new Uppy.Uppy({ autoProceed: false }) + const uppy = new Uppy.Uppy({ autoProceed: false }) .use(Uppy.Dashboard, { trigger: '#select-files' }) .use(Uppy.GoogleDrive, { target: Uppy.Dashboard, From eb1949fb84941e779e37a6013f9f3c6b0b473715 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 13:02:51 +0200 Subject: [PATCH 28/36] use two TSConfig files per package --- bin/build-ts.mjs | 11 +++++++++++ package.json | 2 +- private/js2ts/index.mjs | 25 ++++++++++++++++++++----- tsconfig.json | 14 -------------- 4 files changed, 32 insertions(+), 20 deletions(-) delete mode 100644 tsconfig.json diff --git a/bin/build-ts.mjs b/bin/build-ts.mjs index ca7e737580..46e4b5e58f 100644 --- a/bin/build-ts.mjs +++ b/bin/build-ts.mjs @@ -27,4 +27,15 @@ for await (const line of readLines(stdin)) { .then(([code]) => (code && Promise.reject(new Error(`Non-zero exit code when building "${name}": ${code}`)))), ]) } + if (existsSync(path.join(cwd, location, 'tsconfig.build.json'))) { + const cp = spawn(exe, [...argv0, 'tsc', '-p', location, '--build', path.join(cwd, location, 'tsconfig.build.json')], { + stdio: 'inherit', + cwd, + }) + await Promise.race([ + once(cp, 'error').then(err => Promise.reject(err)), + await once(cp, 'exit') + .then(([code]) => (code && Promise.reject(new Error(`Non-zero exit code when building "${name}": ${code}`)))), + ]) + } } diff --git a/package.json b/package.json index 819c5acbf6..c1b92b9925 100644 --- a/package.json +++ b/package.json @@ -122,7 +122,7 @@ "build:svelte": "yarn workspace @uppy/svelte build", "build:angular": "yarn workspace angular build", "build:js": "npm-run-all build:lib build:companion build:locale-pack build:svelte build:angular build:bundle", - "build:ts": "yarn tsc && yarn workspaces list --no-private --json | yarn node ./bin/build-ts.mjs", + "build:ts": "yarn workspaces list --no-private --json | yarn node ./bin/build-ts.mjs", "build:lib": "yarn node ./bin/build-lib.js", "build:locale-pack": "yarn workspace @uppy-dev/locale-pack build && eslint packages/@uppy/locales/src/en_US.js --fix && yarn workspace @uppy-dev/locale-pack test unused", "build": "npm-run-all --parallel build:js build:css --serial size", diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index 6f3134e71c..441d0ea6f5 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -51,14 +51,12 @@ await tsConfig.writeFile(`${JSON.stringify( { extends: '../../../tsconfig.shared', compilerOptions: { - outDir: './tsOut', + "emitDeclarationOnly": false, + "noEmit": true }, include: [ './package.json', - './src/**/*.*', - ], - exclude: [ - './src/**/*.test.*', + './src/**/*.', ], references, }, @@ -68,4 +66,21 @@ await tsConfig.writeFile(`${JSON.stringify( await tsConfig.close() +await writeFile(new URL('./tsconfig.build.json', import.meta.url), `${JSON.stringify( + { + extends: '../../../tsconfig.shared', + compilerOptions: { + resolveJsonModule: false, + noImplicitAny: false, + }, + include: [ + './src/**/*.', + ], + exclude: ['./src/**/*.test.ts'], + references, + }, + undefined, + 2, +)}\n`) + console.log('Done') diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index fe1f5babb5..0000000000 --- a/tsconfig.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "extends": "./tsconfig.shared", - "compilerOptions": { - "allowJs": true, - "emitDeclarationOnly": false, - "noEmit": true - }, - "include": ["packages/@uppy/*/src/**/*", "packages/@uppy/*/package.json"], - "exclude": [ - "**/*.test-d.ts", - "**/src/**/*.test.js", - "packages/@uppy/angular/**/*" - ] -} From e71ce8ec1bb9a260e149e91ad6a8ecaa3d1a11b1 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 13:14:23 +0200 Subject: [PATCH 29/36] fixup! use two TSConfig files per package --- .gitignore | 2 +- bin/build-ts.mjs | 2 +- private/js2ts/index.mjs | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 7e0621d1b4..4ef07ed9bf 100644 --- a/.gitignore +++ b/.gitignore @@ -15,10 +15,10 @@ yarn-error.log .idea .env tsconfig.tsbuildinfo +tsconfig.build.tsbuildinfo dist/ lib/ -tsOut/ coverage/ examples/dev/bundle.js examples/aws-php/vendor/* diff --git a/bin/build-ts.mjs b/bin/build-ts.mjs index 46e4b5e58f..1d68c95ccd 100644 --- a/bin/build-ts.mjs +++ b/bin/build-ts.mjs @@ -28,7 +28,7 @@ for await (const line of readLines(stdin)) { ]) } if (existsSync(path.join(cwd, location, 'tsconfig.build.json'))) { - const cp = spawn(exe, [...argv0, 'tsc', '-p', location, '--build', path.join(cwd, location, 'tsconfig.build.json')], { + const cp = spawn(exe, [...argv0, 'tsc', '--build', path.join(cwd, location, 'tsconfig.build.json')], { stdio: 'inherit', cwd, }) diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index 441d0ea6f5..48a5342f10 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -70,6 +70,8 @@ await writeFile(new URL('./tsconfig.build.json', import.meta.url), `${JSON.strin { extends: '../../../tsconfig.shared', compilerOptions: { + "outDir": "./lib", + "rootDir": "./src", resolveJsonModule: false, noImplicitAny: false, }, From f5940c098bc867b20b60d1ed9f0095b7de1c9276 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 13:19:31 +0200 Subject: [PATCH 30/36] prettier --- .prettierignore | 1 + private/js2ts/index.mjs | 87 ++++++++++++++++++++++------------------- 2 files changed, 48 insertions(+), 40 deletions(-) diff --git a/.prettierignore b/.prettierignore index cfebd2d979..ba14940c1a 100644 --- a/.prettierignore +++ b/.prettierignore @@ -3,5 +3,6 @@ node_modules/ *.jsx *.cjs *.mjs +!private/js2ts/* *.md *.lock diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index 48a5342f10..13f798903f 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -17,72 +17,79 @@ try { } catch (cause) { throw new Error(`Unable to find package "${argv[2]}"`, { cause }) } -const packageJSON = JSON.parse(await readFile(new URL('./package.json', packageRoot), 'utf-8')) +const packageJSON = JSON.parse( + await readFile(new URL('./package.json', packageRoot), 'utf-8'), +) if (packageJSON.type !== 'module') { throw new Error('Cannot convert non-ESM package to TS') } -const references = Object.keys(packageJSON.dependencies || {}).concat(Object.keys(packageJSON.peerDependencies || {})) - .filter(pkg => pkg.startsWith('@uppy/')) - .map(pkg => ({ path: `../${pkg.slice('@uppy/'.length)}` })) +const references = Object.keys(packageJSON.dependencies || {}) + .concat(Object.keys(packageJSON.peerDependencies || {})) + .filter((pkg) => pkg.startsWith('@uppy/')) + .map((pkg) => ({ path: `../${pkg.slice('@uppy/'.length)}` })) let tsConfig try { tsConfig = await open(new URL('./tsconfig.json', packageRoot), 'wx') } catch (cause) { - throw new Error('It seems this package has already been transitioned to TS', { cause }) + throw new Error('It seems this package has already been transitioned to TS', { + cause, + }) } for await (const dirent of dir) { if (!dirent.isDirectory()) { - const { path:filepath } = dirent + const { path: filepath } = dirent const ext = extname(filepath) - await writeFile(filepath.replace(ext, ext.replace('js', 'ts')), + await writeFile( + filepath.replace(ext, ext.replace('js', 'ts')), (await readFile(filepath, 'utf-8')).replace( /((?:^|\n)import[^\n]*["']\.\.?\/[^'"]+\.)js(x?["'])/g, '$1ts$2', - )) + ), + ) await rm(filepath) } } -await tsConfig.writeFile(`${JSON.stringify( - { - extends: '../../../tsconfig.shared', - compilerOptions: { - "emitDeclarationOnly": false, - "noEmit": true +await tsConfig.writeFile( + `${JSON.stringify( + { + extends: '../../../tsconfig.shared', + compilerOptions: { + emitDeclarationOnly: false, + noEmit: true, + }, + include: ['./package.json', './src/**/*.'], + references, }, - include: [ - './package.json', - './src/**/*.', - ], - references, - }, - undefined, - 2, -)}\n`) + undefined, + 2, + )}\n`, +) await tsConfig.close() -await writeFile(new URL('./tsconfig.build.json', import.meta.url), `${JSON.stringify( - { - extends: '../../../tsconfig.shared', - compilerOptions: { - "outDir": "./lib", - "rootDir": "./src", - resolveJsonModule: false, - noImplicitAny: false, +await writeFile( + new URL('./tsconfig.build.json', import.meta.url), + `${JSON.stringify( + { + extends: '../../../tsconfig.shared', + compilerOptions: { + outDir: './lib', + rootDir: './src', + resolveJsonModule: false, + noImplicitAny: false, + }, + include: ['./src/**/*.'], + exclude: ['./src/**/*.test.ts'], + references, }, - include: [ - './src/**/*.', - ], - exclude: ['./src/**/*.test.ts'], - references, - }, - undefined, - 2, -)}\n`) + undefined, + 2, + )}\n`, +) console.log('Done') From e167e222594a5c8522517763934ebdaa8a97b2f5 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 13:23:18 +0200 Subject: [PATCH 31/36] remove outdated ignore entries --- .eslintignore | 1 - .gitignore | 1 - 2 files changed, 2 deletions(-) diff --git a/.eslintignore b/.eslintignore index 7e29261f71..26bf2ac7b2 100644 --- a/.eslintignore +++ b/.eslintignore @@ -6,4 +6,3 @@ test/lib/** test/endtoend/*/build examples/svelte-example/public/build/ bundle-legacy.js -packages/@uppy/*/src/*.d.ts diff --git a/.gitignore b/.gitignore index 4ef07ed9bf..3a76062d03 100644 --- a/.gitignore +++ b/.gitignore @@ -26,7 +26,6 @@ test/endtoend/create-react-app/build/ test/endtoend/create-react-app/coverage/ uppy-*.tgz generatedLocale.d.ts -packages/@uppy/*/src/*.d.ts **/output/* !output/.keep From 9863186aeb0fea4d0c72c02f66d45ec292784fd9 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 13:57:23 +0200 Subject: [PATCH 32/36] `skipLibCheck` --- packages/uppy/tsconfig.json | 1 + private/js2ts/index.mjs | 1 + tsconfig.shared.json | 1 - 3 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/uppy/tsconfig.json b/packages/uppy/tsconfig.json index 211732fda3..d9ed6a3c8d 100644 --- a/packages/uppy/tsconfig.json +++ b/packages/uppy/tsconfig.json @@ -3,6 +3,7 @@ "compilerOptions": { "allowJs": true, "emitDeclarationOnly": false, + "skipLibCheck": true, "noEmit": true }, "include": ["types/*"] diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index 13f798903f..b52c261ea8 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -82,6 +82,7 @@ await writeFile( rootDir: './src', resolveJsonModule: false, noImplicitAny: false, + skipLibCheck: true, }, include: ['./src/**/*.'], exclude: ['./src/**/*.test.ts'], diff --git a/tsconfig.shared.json b/tsconfig.shared.json index 3a179b8289..55434ff7fa 100644 --- a/tsconfig.shared.json +++ b/tsconfig.shared.json @@ -16,7 +16,6 @@ "noImplicitAny": true, "noImplicitThis": true, "strictNullChecks": true, - "skipLibCheck": true, "verbatimModuleSyntax": true, "esModuleInterop": true, "allowSyntheticDefaultImports": true, From 5bdbda762d4fd619736354847706b0293a8f189b Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 3 Oct 2023 15:57:01 +0200 Subject: [PATCH 33/36] remove debug line --- bin/build-lib.js | 1 - 1 file changed, 1 deletion(-) diff --git a/bin/build-lib.js b/bin/build-lib.js index 4945955822..f937af0f9e 100644 --- a/bin/build-lib.js +++ b/bin/build-lib.js @@ -92,7 +92,6 @@ async function buildLib () { && path.node.specifiers[0].type === 'ImportDefaultSpecifier') { // Vendor-in version number from package.json files: const version = versionCache.get(file.slice(0, file.indexOf('/src/'))) - console.log({ version }) if (version != null) { const [{ local }] = path.node.specifiers path.replaceWith( From 0bfdf16c966c14d024338474420fb24dd9a6b700 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Sun, 15 Oct 2023 20:42:15 +0200 Subject: [PATCH 34/36] disable a rule that conflicts with Prettier --- .eslintrc.js | 1 + 1 file changed, 1 insertion(+) diff --git a/.eslintrc.js b/.eslintrc.js index 497000e5dd..1f7c942360 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -463,6 +463,7 @@ module.exports = { rules: { 'import/prefer-default-export': 'off', '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-extra-semi': 'off', '@typescript-eslint/no-namespace': 'off', }, }, From 759ecbb7004be72863e2f0be3c602b337fc061f8 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 17 Oct 2023 12:50:03 +0200 Subject: [PATCH 35/36] exclude test files from mandatory function return type --- .eslintrc.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.eslintrc.js b/.eslintrc.js index 1f7c942360..df44d24e58 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -469,7 +469,8 @@ module.exports = { }, { files: ['packages/@uppy/*/src/**/*.ts', 'packages/@uppy/*/src/**/*.tsx'], - 'rules': { + excludedFiles: ['packages/@uppy/**/*.test.ts'], + rules: { '@typescript-eslint/explicit-function-return-type': 'error', }, }, From 05a1266bbe7ce2b1bc21f4ba46b0e3bf11d5cf30 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 17 Oct 2023 13:47:40 +0200 Subject: [PATCH 36/36] throw when trying to convert package before its deps --- private/js2ts/index.mjs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/private/js2ts/index.mjs b/private/js2ts/index.mjs index b52c261ea8..c35914f8af 100755 --- a/private/js2ts/index.mjs +++ b/private/js2ts/index.mjs @@ -8,6 +8,7 @@ import { opendir, readFile, open, writeFile, rm } from 'node:fs/promises' import { argv } from 'node:process' import { extname } from 'node:path' +import { existsSync } from 'node:fs' const packageRoot = new URL(`../../packages/${argv[2]}/`, import.meta.url) let dir @@ -30,6 +31,20 @@ const references = Object.keys(packageJSON.dependencies || {}) .filter((pkg) => pkg.startsWith('@uppy/')) .map((pkg) => ({ path: `../${pkg.slice('@uppy/'.length)}` })) +const depsNotYetConvertedToTS = references.filter( + (ref) => + !existsSync(new URL(`${ref.path.slice(1)}/tsconfig.json`, packageRoot)), +) + +if (depsNotYetConvertedToTS.length) { + // We need to first convert the dependencies, otherwise we won't be working with the correct types. + throw new Error('Some dependencies have not yet been converted to TS', { + cause: depsNotYetConvertedToTS.map((ref) => + ref.path.replace(/^\.\./, '@uppy'), + ), + }) +} + let tsConfig try { tsConfig = await open(new URL('./tsconfig.json', packageRoot), 'wx')