diff --git a/.changeset/metal-bikes-camp.md b/.changeset/metal-bikes-camp.md new file mode 100644 index 000000000000..6e629cfe7d95 --- /dev/null +++ b/.changeset/metal-bikes-camp.md @@ -0,0 +1,7 @@ +--- +'@modern-js/builder-plugin-swc': patch +--- + +fix(builder-plugin-swc): properly handle transform error in loader + +fix(builder-plugin-swc): 处理 loader 中的编译异常 diff --git a/.eslintignore b/.eslintignore index 7f7f6aec28ec..6f00870cdde6 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1 +1,2 @@ packages/runtime/plugin-garfish/tests/** +tests/integration/swc/fixtures/transform-fail/src/App.jsx diff --git a/packages/builder/plugin-swc/package.json b/packages/builder/plugin-swc/package.json index d22064d62979..9f8c14f1b2c9 100644 --- a/packages/builder/plugin-swc/package.json +++ b/packages/builder/plugin-swc/package.json @@ -6,6 +6,7 @@ "types": "./src/index.ts", "scripts": { "build": "tsc", + "dev": "tsc -w", "test": "vitest run", "test:watch": "vitest dev --no-coverage", "test:update": "SNAPSHOT_UPDATE=1 vitest watch", diff --git a/packages/builder/plugin-swc/src/loader.ts b/packages/builder/plugin-swc/src/loader.ts index b5edc205c398..7158e532dd8b 100644 --- a/packages/builder/plugin-swc/src/loader.ts +++ b/packages/builder/plugin-swc/src/loader.ts @@ -21,8 +21,12 @@ export function createLoader() { compiler = new Compiler(options); } - const result = await compiler.transform(filename, code, map); - resolve(null, result.code, result.map?.toString()); + try { + const result = await compiler.transform(filename, code, map); + resolve(null, result.code, result.map?.toString()); + } catch (err) { + resolve(err as Error); + } }; } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 879d943feb15..d98b80114a03 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5722,6 +5722,23 @@ importers: '@modern-js/app-tools': link:../../../../../packages/solutions/app-tools '@modern-js/plugin-swc': link:../../../../../packages/cli/plugin-swc + tests/integration/swc/fixtures/transform-fail: + specifiers: + '@babel/runtime': ^7.18.0 + '@modern-js/app-tools': workspace:* + '@modern-js/plugin-swc': workspace:* + '@modern-js/runtime': workspace:* + react: ^18 + react-dom: ^18 + dependencies: + '@babel/runtime': 7.20.7 + '@modern-js/runtime': link:../../../../../packages/runtime/plugin-runtime + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + devDependencies: + '@modern-js/app-tools': link:../../../../../packages/solutions/app-tools + '@modern-js/plugin-swc': link:../../../../../packages/cli/plugin-swc + tests/integration/testing-app: specifiers: '@babel/runtime': ^7.18.0 @@ -5809,14 +5826,6 @@ importers: '@types/react-dom': 18.0.6 typescript: 4.9.5 - tests/integration/worker/fixtures/worker-test/dist: - specifiers: - '@modern-js/prod-server': 0.0.0-next-20230209112307 - wrangler: ^2.9.0 - dependencies: - '@modern-js/prod-server': 0.0.0-next-20230209112307 - wrangler: 2.9.1 - website/main: specifiers: '@modern-js/builder-doc': workspace:* @@ -6011,6 +6020,7 @@ packages: engines: {node: '>= 10'} cpu: [x64] os: [linux] + libc: [glibc] requiresBuild: true dev: false optional: true @@ -8952,12 +8962,6 @@ packages: prettier: 1.19.1 dev: false - /@cloudflare/kv-asset-handler/0.2.0: - resolution: {integrity: sha512-MVbXLbTcAotOPUj0pAMhVtJ+3/kFkwJqc5qNOleOZTv6QkZZABDMS21dSrSlVswEHwrpWC03e4fWytjqKvuE2A==} - dependencies: - mime: 3.0.0 - dev: false - /@cnakazawa/watch/1.0.4: resolution: {integrity: sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==} engines: {node: '>=0.1.95'} @@ -9257,24 +9261,6 @@ packages: get-tsconfig: 4.1.0 dev: true - /@esbuild-plugins/node-globals-polyfill/0.1.1_esbuild@0.16.3: - resolution: {integrity: sha512-MR0oAA+mlnJWrt1RQVQ+4VYuRJW/P2YmRTv1AsplObyvuBMnPHiizUF95HHYiSsMGLhyGtWufaq2XQg6+iurBg==} - peerDependencies: - esbuild: '*' - dependencies: - esbuild: 0.16.3 - dev: false - - /@esbuild-plugins/node-modules-polyfill/0.1.4_esbuild@0.16.3: - resolution: {integrity: sha512-uZbcXi0zbmKC/050p3gJnne5Qdzw8vkXIv+c2BW0Lsc1ji1SkrxbKPUy5Efr0blbTu1SL8w4eyfpnSdPg3G0Qg==} - peerDependencies: - esbuild: '*' - dependencies: - esbuild: 0.16.3 - escape-string-regexp: 4.0.0 - rollup-plugin-node-polyfills: 0.2.1 - dev: false - /@esbuild/android-arm/0.15.15: resolution: {integrity: sha512-JJjZjJi2eBL01QJuWjfCdZxcIgot+VoK6Fq7eKF9w4YHm9hwl7nhBR1o2Wnt/WcANk5l9SkpvrldW1PLuXxcbw==} engines: {node: '>=12'} @@ -9293,15 +9279,6 @@ packages: dev: true optional: true - /@esbuild/android-arm/0.16.3: - resolution: {integrity: sha512-mueuEoh+s1eRbSJqq9KNBQwI4QhQV6sRXIfTyLXSHGMpyew61rOK4qY21uKbXl1iBoMb0AdL1deWFCQVlN2qHA==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - requiresBuild: true - dev: false - optional: true - /@esbuild/android-arm64/0.16.14: resolution: {integrity: sha512-hTqB6Iq13pW4xaydeqQrs8vPntUnMjbkq+PgGiBMi69eYk74naG2ftHWqKnxn874kNrt5Or3rQ0PJutx2doJuQ==} engines: {node: '>=12'} @@ -9311,15 +9288,6 @@ packages: dev: true optional: true - /@esbuild/android-arm64/0.16.3: - resolution: {integrity: sha512-RolFVeinkeraDvN/OoRf1F/lP0KUfGNb5jxy/vkIMeRRChkrX/HTYN6TYZosRJs3a1+8wqpxAo5PI5hFmxyPRg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: false - optional: true - /@esbuild/android-x64/0.16.14: resolution: {integrity: sha512-jir51K4J0K5Rt0KOcippjSNdOl7akKDVz5I6yrqdk4/m9y+rldGptQUF7qU4YpX8U61LtR+w2Tu2Ph+K/UaJOw==} engines: {node: '>=12'} @@ -9329,15 +9297,6 @@ packages: dev: true optional: true - /@esbuild/android-x64/0.16.3: - resolution: {integrity: sha512-SFpTUcIT1bIJuCCBMCQWq1bL2gPTjWoLZdjmIhjdcQHaUfV41OQfho6Ici5uvvkMmZRXIUGpM3GxysP/EU7ifQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - requiresBuild: true - dev: false - optional: true - /@esbuild/darwin-arm64/0.16.14: resolution: {integrity: sha512-vrlaP81IuwPaw1fyX8fHCmivP3Gr73ojVEZy+oWJLAiZVcG8o8Phwun/XDnYIFUHxIoUnMFEpg9o38MIvlw8zw==} engines: {node: '>=12'} @@ -9347,15 +9306,6 @@ packages: dev: true optional: true - /@esbuild/darwin-arm64/0.16.3: - resolution: {integrity: sha512-DO8WykMyB+N9mIDfI/Hug70Dk1KipavlGAecxS3jDUwAbTpDXj0Lcwzw9svkhxfpCagDmpaTMgxWK8/C/XcXvw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: false - optional: true - /@esbuild/darwin-x64/0.16.14: resolution: {integrity: sha512-KV1E01eC2hGYA2qzFDRCK4wdZCRUvMwCNcobgpiiOzp5QXpJBqFPdxI69j8vvzuU7oxFXDgANwEkXvpeQqyOyg==} engines: {node: '>=12'} @@ -9365,15 +9315,6 @@ packages: dev: true optional: true - /@esbuild/darwin-x64/0.16.3: - resolution: {integrity: sha512-uEqZQ2omc6BvWqdCiyZ5+XmxuHEi1SPzpVxXCSSV2+Sh7sbXbpeNhHIeFrIpRjAs0lI1FmA1iIOxFozKBhKgRQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: false - optional: true - /@esbuild/freebsd-arm64/0.16.14: resolution: {integrity: sha512-xRM1RQsazSvL42BNa5XC7ytD4ZDp0ZyJcH7aB0SlYUcHexJUKiDNKR7dlRVlpt6W0DvoRPU2nWK/9/QWS4u2fw==} engines: {node: '>=12'} @@ -9383,15 +9324,6 @@ packages: dev: true optional: true - /@esbuild/freebsd-arm64/0.16.3: - resolution: {integrity: sha512-nJansp3sSXakNkOD5i5mIz2Is/HjzIhFs49b1tjrPrpCmwgBmH9SSzhC/Z1UqlkivqMYkhfPwMw1dGFUuwmXhw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true - dev: false - optional: true - /@esbuild/freebsd-x64/0.16.14: resolution: {integrity: sha512-7ALTAn6YRRf1O6fw9jmn0rWmOx3XfwDo7njGtjy1LXhDGUjTY/vohEPM3ii5MQ411vJv1r498EEx2aBQTJcrEw==} engines: {node: '>=12'} @@ -9401,15 +9333,6 @@ packages: dev: true optional: true - /@esbuild/freebsd-x64/0.16.3: - resolution: {integrity: sha512-TfoDzLw+QHfc4a8aKtGSQ96Wa+6eimljjkq9HKR0rHlU83vw8aldMOUSJTUDxbcUdcgnJzPaX8/vGWm7vyV7ug==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-arm/0.16.14: resolution: {integrity: sha512-X6xULug66ulrr4IzrW7qq+eq9n4MtEyagdWvj4o4cmWr+JXOT47atjpDF9j5M2zHY0UQBmqnHhwl+tXpkpIb2w==} engines: {node: '>=12'} @@ -9419,15 +9342,6 @@ packages: dev: true optional: true - /@esbuild/linux-arm/0.16.3: - resolution: {integrity: sha512-VwswmSYwVAAq6LysV59Fyqk3UIjbhuc6wb3vEcJ7HEJUtFuLK9uXWuFoH1lulEbE4+5GjtHi3MHX+w1gNHdOWQ==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-arm64/0.16.14: resolution: {integrity: sha512-TLh2OcbBUQcMYRH4GbiDkDZfZ4t1A3GgmeXY27dHSI6xrU7IkO00MGBiJySmEV6sH3Wa6pAN6UtaVL0DwkGW4Q==} engines: {node: '>=12'} @@ -9437,15 +9351,6 @@ packages: dev: true optional: true - /@esbuild/linux-arm64/0.16.3: - resolution: {integrity: sha512-7I3RlsnxEFCHVZNBLb2w7unamgZ5sVwO0/ikE2GaYvYuUQs9Qte/w7TqWcXHtCwxvZx/2+F97ndiUQAWs47ZfQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-ia32/0.16.14: resolution: {integrity: sha512-oBZkcZ56UZDFCAfE3Fd/Jgy10EoS7Td77NzNGenM+HSY8BkdQAcI9VF9qgwdOLZ+tuftWD7UqZ26SAhtvA3XhA==} engines: {node: '>=12'} @@ -9455,15 +9360,6 @@ packages: dev: true optional: true - /@esbuild/linux-ia32/0.16.3: - resolution: {integrity: sha512-X8FDDxM9cqda2rJE+iblQhIMYY49LfvW4kaEjoFbTTQ4Go8G96Smj2w3BRTwA8IHGoi9dPOPGAX63dhuv19UqA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-loong64/0.14.54: resolution: {integrity: sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==} engines: {node: '>=12'} @@ -9498,15 +9394,6 @@ packages: dev: true optional: true - /@esbuild/linux-loong64/0.16.3: - resolution: {integrity: sha512-hIbeejCOyO0X9ujfIIOKjBjNAs9XD/YdJ9JXAy1lHA+8UXuOqbFe4ErMCqMr8dhlMGBuvcQYGF7+kO7waj2KHw==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-mips64el/0.16.14: resolution: {integrity: sha512-kJ2iEnikUOdC1SiTGbH0fJUgpZwa0ITDTvj9EHf9lm3I0hZ4Yugsb3M6XSl696jVxrEocLe519/8CbSpQWFSrg==} engines: {node: '>=12'} @@ -9516,15 +9403,6 @@ packages: dev: true optional: true - /@esbuild/linux-mips64el/0.16.3: - resolution: {integrity: sha512-znFRzICT/V8VZQMt6rjb21MtAVJv/3dmKRMlohlShrbVXdBuOdDrGb+C2cZGQAR8RFyRe7HS6klmHq103WpmVw==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-ppc64/0.16.14: resolution: {integrity: sha512-kclKxvZvX5YhykwlJ/K9ljiY4THe5vXubXpWmr7q3Zu3WxKnUe1VOZmhkEZlqtnJx31GHPEV4SIG95IqTdfgfg==} engines: {node: '>=12'} @@ -9534,15 +9412,6 @@ packages: dev: true optional: true - /@esbuild/linux-ppc64/0.16.3: - resolution: {integrity: sha512-EV7LuEybxhXrVTDpbqWF2yehYRNz5e5p+u3oQUS2+ZFpknyi1NXxr8URk4ykR8Efm7iu04//4sBg249yNOwy5Q==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-riscv64/0.16.14: resolution: {integrity: sha512-fdwP9Dc+Kx/cZwp9T9kNqjAE/PQjfrxbio4rZ3XnC3cVvZBjuxpkiyu/tuCwt6SbAK5th6AYNjFdEV9kGC020A==} engines: {node: '>=12'} @@ -9552,15 +9421,6 @@ packages: dev: true optional: true - /@esbuild/linux-riscv64/0.16.3: - resolution: {integrity: sha512-uDxqFOcLzFIJ+r/pkTTSE9lsCEaV/Y6rMlQjUI9BkzASEChYL/aSQjZjchtEmdnVxDKETnUAmsaZ4pqK1eE5BQ==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-s390x/0.16.14: resolution: {integrity: sha512-++fw3P4fQk9nqvdzbANRqimKspL8pDCnSpXomyhV7V/ISha/BZIYvZwLBWVKp9CVWKwWPJ4ktsezuLIvlJRHqA==} engines: {node: '>=12'} @@ -9570,15 +9430,6 @@ packages: dev: true optional: true - /@esbuild/linux-s390x/0.16.3: - resolution: {integrity: sha512-NbeREhzSxYwFhnCAQOQZmajsPYtX71Ufej3IQ8W2Gxskfz9DK58ENEju4SbpIj48VenktRASC52N5Fhyf/aliQ==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/linux-x64/0.16.14: resolution: {integrity: sha512-TomtswAuzBf2NnddlrS4W01Tv85RM9YtATB3OugY6On0PLM4Ksz5qvQKVAjtzPKoLgL1FiZtfc8mkZc4IgoMEA==} engines: {node: '>=12'} @@ -9588,15 +9439,6 @@ packages: dev: true optional: true - /@esbuild/linux-x64/0.16.3: - resolution: {integrity: sha512-SDiG0nCixYO9JgpehoKgScwic7vXXndfasjnD5DLbp1xltANzqZ425l7LSdHynt19UWOcDjG9wJJzSElsPvk0w==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: false - optional: true - /@esbuild/netbsd-x64/0.16.14: resolution: {integrity: sha512-U06pfx8P5CqyoPNfqIJmnf+5/r4mJ1S62G4zE6eOjS59naQcxi6GnscUCPH3b+hRG0qdKoGX49RAyiqW+M9aSw==} engines: {node: '>=12'} @@ -9606,15 +9448,6 @@ packages: dev: true optional: true - /@esbuild/netbsd-x64/0.16.3: - resolution: {integrity: sha512-AzbsJqiHEq1I/tUvOfAzCY15h4/7Ivp3ff/o1GpP16n48JMNAtbW0qui2WCgoIZArEHD0SUQ95gvR0oSO7ZbdA==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - requiresBuild: true - dev: false - optional: true - /@esbuild/openbsd-x64/0.16.14: resolution: {integrity: sha512-/Jl8XVaWEZNu9rZw+n792GIBupQwHo6GDoapHSb/2xp/Ku28eK6QpR2O9cPBkzHH4OOoMH0LB6zg/qczJ5TTGg==} engines: {node: '>=12'} @@ -9624,15 +9457,6 @@ packages: dev: true optional: true - /@esbuild/openbsd-x64/0.16.3: - resolution: {integrity: sha512-gSABi8qHl8k3Cbi/4toAzHiykuBuWLZs43JomTcXkjMZVkp0gj3gg9mO+9HJW/8GB5H89RX/V0QP4JGL7YEEVg==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - requiresBuild: true - dev: false - optional: true - /@esbuild/sunos-x64/0.16.14: resolution: {integrity: sha512-2iI7D34uTbDn/TaSiUbEHz+fUa8KbN90vX5yYqo12QGpu6T8Jl+kxODsWuMCwoTVlqUpwfPV22nBbFPME9OPtw==} engines: {node: '>=12'} @@ -9642,15 +9466,6 @@ packages: dev: true optional: true - /@esbuild/sunos-x64/0.16.3: - resolution: {integrity: sha512-SF9Kch5Ete4reovvRO6yNjMxrvlfT0F0Flm+NPoUw5Z4Q3r1d23LFTgaLwm3Cp0iGbrU/MoUI+ZqwCv5XJijCw==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - requiresBuild: true - dev: false - optional: true - /@esbuild/win32-arm64/0.16.14: resolution: {integrity: sha512-SjlM7AHmQVTiGBJE/nqauY1aDh80UBsXZ94g4g60CDkrDMseatiqALVcIuElg4ZSYzJs8hsg5W6zS2zLpZTVgg==} engines: {node: '>=12'} @@ -9660,15 +9475,6 @@ packages: dev: true optional: true - /@esbuild/win32-arm64/0.16.3: - resolution: {integrity: sha512-u5aBonZIyGopAZyOnoPAA6fGsDeHByZ9CnEzyML9NqntK6D/xl5jteZUKm/p6nD09+v3pTM6TuUIqSPcChk5gg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: false - optional: true - /@esbuild/win32-ia32/0.16.14: resolution: {integrity: sha512-z06t5zqk8ak0Xom5HG81z2iOQ1hNWYsFQp3sczVLVx+dctWdgl80tNRyTbwjaFfui2vFO12dfE3trCTvA+HO4g==} engines: {node: '>=12'} @@ -9678,15 +9484,6 @@ packages: dev: true optional: true - /@esbuild/win32-ia32/0.16.3: - resolution: {integrity: sha512-GlgVq1WpvOEhNioh74TKelwla9KDuAaLZrdxuuUgsP2vayxeLgVc+rbpIv0IYF4+tlIzq2vRhofV+KGLD+37EQ==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: false - optional: true - /@esbuild/win32-x64/0.16.14: resolution: {integrity: sha512-ED1UpWcM6lAbalbbQ9TrGqJh4Y9TaASUvu8bI/0mgJcxhSByJ6rbpgqRhxYMaQ682WfA71nxUreaTO7L275zrw==} engines: {node: '>=12'} @@ -9696,15 +9493,6 @@ packages: dev: true optional: true - /@esbuild/win32-x64/0.16.3: - resolution: {integrity: sha512-5/JuTd8OWW8UzEtyf19fbrtMJENza+C9JoPIkvItgTBQ1FO2ZLvjbPO6Xs54vk0s5JB5QsfieUEshRQfu7ZHow==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: false - optional: true - /@eslint/eslintrc/1.3.3: resolution: {integrity: sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -9960,10 +9748,6 @@ packages: /@humanwhocodes/object-schema/1.2.1: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} - /@iarna/toml/2.2.5: - resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==} - dev: false - /@istanbuljs/load-nyc-config/1.1.0: resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -10497,177 +10281,6 @@ packages: resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==} dev: false - /@miniflare/cache/2.11.0: - resolution: {integrity: sha512-L/kc9AzidPwFuk2fwHpAEePi0kNBk6FWUq3ln+9beRCDrPEpfVrDRFpNleF1NFZz5//oeVMuo8F0IVUQGzR7+Q==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/core': 2.11.0 - '@miniflare/shared': 2.11.0 - http-cache-semantics: 4.1.0 - undici: 5.9.1 - dev: false - - /@miniflare/cli-parser/2.11.0: - resolution: {integrity: sha512-JUmyRzEGAS6CouvXJwBh8p44onfw3KRpfq5JGXEuHModOGjTp6li7PQyCTNPV2Hv/7StAXWnTFGXeAqyDHuTig==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/shared': 2.11.0 - kleur: 4.1.5 - dev: false - - /@miniflare/core/2.11.0: - resolution: {integrity: sha512-UFMFiCG0co36VpZkgFrSBnrxo71uf1x+cjlzzJi3khmMyDlnLu4RuIQsAqvKbYom6fi3G9Q8lTgM7JuOXFyjhw==} - engines: {node: '>=16.13'} - dependencies: - '@iarna/toml': 2.2.5 - '@miniflare/queues': 2.11.0 - '@miniflare/shared': 2.11.0 - '@miniflare/watcher': 2.11.0 - busboy: 1.6.0 - dotenv: 10.0.0 - kleur: 4.1.5 - set-cookie-parser: 2.5.0 - undici: 5.9.1 - urlpattern-polyfill: 4.0.3 - dev: false - - /@miniflare/d1/2.11.0: - resolution: {integrity: sha512-aDdBVQZ2C0Zs3+Y9ZbRctmuQxozPfpumwJ/6NG6fBadANvune/hW7ddEoxyteIEU9W3IgzVj8s4by4VvasX90A==} - engines: {node: '>=16.7'} - dependencies: - '@miniflare/core': 2.11.0 - '@miniflare/shared': 2.11.0 - dev: false - - /@miniflare/durable-objects/2.11.0: - resolution: {integrity: sha512-0cKJaMgraTEU1b4kqK8cjD2oTeOjA6QU3Y+lWiZT/k1PMHZULovrSFnjii7qZ8npf4VHSIN6XYPxhyxRyEM65Q==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/core': 2.11.0 - '@miniflare/shared': 2.11.0 - '@miniflare/storage-memory': 2.11.0 - undici: 5.9.1 - dev: false - - /@miniflare/html-rewriter/2.11.0: - resolution: {integrity: sha512-olTqmuYTHnoTNtiA0vjQ/ixRfbwgPzDrAUbtXDCYW45VFbHfDVJrJGZX3Jg0HpSlxy86Zclle1SUxGbVDzxsBg==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/core': 2.11.0 - '@miniflare/shared': 2.11.0 - html-rewriter-wasm: 0.4.1 - undici: 5.9.1 - dev: false - - /@miniflare/http-server/2.11.0: - resolution: {integrity: sha512-sMLcrDFzqqAvnQmAUH0hRTo8sBjW79VZYfnIH5FAGSGcKX6kdAGs9RStdYZ4CftQCBAEQScX0KBsMx5FwJRe9Q==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/core': 2.11.0 - '@miniflare/shared': 2.11.0 - '@miniflare/web-sockets': 2.11.0 - kleur: 4.1.5 - selfsigned: 2.1.1 - undici: 5.9.1 - ws: 8.8.1 - youch: 2.2.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - - /@miniflare/kv/2.11.0: - resolution: {integrity: sha512-3m9dL2HBBN170V1JvwjjucR5zl4G3mlcsV6C1E7A2wLl2Z2TWvIx/tSY9hrhkD96dFnejwJ9qmPMbXMMuynhjg==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/shared': 2.11.0 - dev: false - - /@miniflare/queues/2.11.0: - resolution: {integrity: sha512-fLHjdrNLKhn0LZM/aii/9GsAttFd+lWlGzK8HOg1R0vhfKBwEub4zntjMmOfFbDm1ntc21tdMK7n3ldUphwh5w==} - engines: {node: '>=16.7'} - dependencies: - '@miniflare/shared': 2.11.0 - dev: false - - /@miniflare/r2/2.11.0: - resolution: {integrity: sha512-MKuyJ/gGNsK3eWbGdygvozqcyaZhM3C6NGHvoaZwH503dwN569j5DpatTWiHGFeDeSu64VqcIsGehz05GDUaag==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/shared': 2.11.0 - undici: 5.9.1 - dev: false - - /@miniflare/runner-vm/2.11.0: - resolution: {integrity: sha512-bkVSuvCf5+VylqN8lTiLxIYqYcKFbl+BywZGwGQndPC/3wh42J00mM0jw4hRbvXgwuBhlUyCVpEXtYlftFFT/g==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/shared': 2.11.0 - dev: false - - /@miniflare/scheduler/2.11.0: - resolution: {integrity: sha512-DPdzINhdWeS99eIicGoluMsD4pLTTAWNQbgCv3CTwgdKA3dxdvMSCkNqZzQLiALzvk9+rSfj46FlH++HE7o7/w==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/core': 2.11.0 - '@miniflare/shared': 2.11.0 - cron-schedule: 3.0.6 - dev: false - - /@miniflare/shared/2.11.0: - resolution: {integrity: sha512-fWMqq3ZkWAg+k7CnyzMV/rZHugwn+/JxvVzCxrtvxzwotTN547THlOxgZe8JAP23U9BiTxOfpTfnLvFEjAmegw==} - engines: {node: '>=16.13'} - dependencies: - '@types/better-sqlite3': 7.6.3 - kleur: 4.1.5 - npx-import: 1.1.4 - picomatch: 2.3.1 - dev: false - - /@miniflare/sites/2.11.0: - resolution: {integrity: sha512-qbefKdWZUJgsdLf+kCw03sn3h/92LZgJAbkOpP6bCrfWkXlJ37EQXO4KWdhn4Ghc7A6GwU1s1I/mdB64B3AewQ==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/kv': 2.11.0 - '@miniflare/shared': 2.11.0 - '@miniflare/storage-file': 2.11.0 - dev: false - - /@miniflare/storage-file/2.11.0: - resolution: {integrity: sha512-beWF/lTX74x7AiaSB+xQxywPSNdhtEKvqDkRui8eOJ5kqN2o4UaleLKQGgqmCw3WyHRIsckV7If1qpbNiLtWMw==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/shared': 2.11.0 - '@miniflare/storage-memory': 2.11.0 - dev: false - - /@miniflare/storage-memory/2.11.0: - resolution: {integrity: sha512-s0AhPww7fq/Jz80NbPb+ffhcVRKnfPi7H1dHTRTre2Ud23EVJjAWl2gat42x8NOT/Fu3/o/7A72DWQQJqfO98A==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/shared': 2.11.0 - dev: false - - /@miniflare/watcher/2.11.0: - resolution: {integrity: sha512-RUfjz2iYcsQXLcGySemJl98CJ2iierbWsPGWZhIVZI+NNhROkEy77g/Q+lvP2ATwexG3/dUSfdJ3P8aH+sI4Ig==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/shared': 2.11.0 - dev: false - - /@miniflare/web-sockets/2.11.0: - resolution: {integrity: sha512-NC8RKrmxrO0hZmwpzn5g4hPGA2VblnFTIBobmWoxuK95eW49zfs7dtE/PyFs+blsGv3CjTIjHVSQ782K+C6HFA==} - engines: {node: '>=16.13'} - dependencies: - '@miniflare/core': 2.11.0 - '@miniflare/shared': 2.11.0 - undici: 5.9.1 - ws: 8.8.1 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - /@modern-js-reduck/plugin-auto-actions/0.0.0-canary-20230118100540_eukqhmpdvekg36zkz7ozvf6kla: resolution: {integrity: sha512-RK7AkK87c+CnXLDZKXWAqKnhebFg7quS8d3gLezAvkrZhtyQYspUD7ydjr12wo+IwE0uwvieZJsugQApffb9/w==} peerDependencies: @@ -10896,12 +10509,6 @@ packages: '@modern-js/utils': 1.21.5 dev: true - /@modern-js/plugin/0.0.0-next-20230209112307: - resolution: {integrity: sha512-nN7EFkwX7o83YmgpuOonbcw5SiXe5N4v3VUsM84QQxQuE5t4oiLGdv5BvwCw3TXIpSzacVGVvj/sIeJOM6zeEQ==} - dependencies: - '@babel/runtime': 7.20.7 - dev: false - /@modern-js/polyfill-lib/1.0.2: resolution: {integrity: sha512-UdBEpS0kwBYm43n60FEZFvZ3dUhqlzzvZkIMwiQGYHvlpXuAN/30GrWnp2WUdd5+eM5ObRCJ1bSJ7+UYouxPAQ==} engines: {node: '>=8'} @@ -10953,33 +10560,6 @@ packages: - supports-color dev: false - /@modern-js/prod-server/0.0.0-next-20230209112307: - resolution: {integrity: sha512-gQAz/Vs7TGPcMRhOQ+SN6YXhgwoMd3t3jo9ANfDlS02yhvdDUw5Z4FEdo50yFsuxjQH0oqFQhLaqjRzXx/unUA==} - dependencies: - '@modern-js/server-core': 0.0.0-next-20230209112307 - '@modern-js/utils': 0.0.0-next-20230209112307 - cookie: 0.4.2 - etag: 1.8.1 - fresh: 0.5.2 - http-proxy-middleware: 2.0.6 - ignore-styles: 5.0.1 - lru-cache: 6.0.0 - merge-deep: 3.0.3 - path-to-regexp: 6.2.1 - serve-static: 1.15.0 - transitivePeerDependencies: - - '@types/express' - - debug - - supports-color - dev: false - - /@modern-js/server-core/0.0.0-next-20230209112307: - resolution: {integrity: sha512-2XbLsWJdTusGo56eawW16EKjk+H+qg9D5WKD+Z9rhZNff+ispJLu9MIeJo9Q6ZpZT1glGvmdlfaJoSMWzp6n/Q==} - dependencies: - '@modern-js/plugin': 0.0.0-next-20230209112307 - '@modern-js/utils': 0.0.0-next-20230209112307 - dev: false - /@modern-js/swc-plugins-darwin-arm64/0.0.12: resolution: {integrity: sha512-r5hgWWvi/BveW86LAPtHEL9UIrexqNy7/wE+BRJaa6UIJWW/MEXjgiuE/4efEUdQU1w6EzkIrjKg53ob6Grltg==} engines: {node: '>= 14'} @@ -11182,13 +10762,6 @@ packages: '@modern-js/swc-plugins-win32-x64-msvc': 0.0.16 dev: false - /@modern-js/utils/0.0.0-next-20230209112307: - resolution: {integrity: sha512-V9nr0L5YEpJ1k7WuTtl7vTu22rB589awS1qQteqVZr/luMxv9yilnZuGOIGuF3wg//6RNO9tNuoiCixSKaVOOQ==} - dependencies: - caniuse-lite: 1.0.30001451 - lodash: 4.17.21 - dev: false - /@modern-js/utils/1.21.5: resolution: {integrity: sha512-mZ3uwLNge37FAiwvLAn33nNRt5cC/LDHVMjVw4VR1jaS/eSaKShJbHn/WdQyyFexZHZzPbZewPGtY2z94378zw==} dependencies: @@ -11261,6 +10834,7 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] + libc: [glibc] requiresBuild: true dev: false optional: true @@ -11270,6 +10844,7 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] + libc: [musl] requiresBuild: true dev: false optional: true @@ -11279,6 +10854,7 @@ packages: engines: {node: '>= 10'} cpu: [x64] os: [linux] + libc: [glibc] requiresBuild: true dev: false optional: true @@ -11288,6 +10864,7 @@ packages: engines: {node: '>= 10'} cpu: [x64] os: [linux] + libc: [musl] requiresBuild: true dev: false optional: true @@ -13605,6 +13182,7 @@ packages: engines: {node: '>=10'} cpu: [arm64] os: [linux] + libc: [glibc] requiresBuild: true optional: true @@ -13613,6 +13191,7 @@ packages: engines: {node: '>=10'} cpu: [arm64] os: [linux] + libc: [musl] requiresBuild: true optional: true @@ -13621,6 +13200,7 @@ packages: engines: {node: '>=10'} cpu: [x64] os: [linux] + libc: [glibc] requiresBuild: true optional: true @@ -13629,6 +13209,7 @@ packages: engines: {node: '>=10'} cpu: [x64] os: [linux] + libc: [musl] requiresBuild: true optional: true @@ -13901,12 +13482,6 @@ packages: dependencies: '@babel/types': 7.20.5 - /@types/better-sqlite3/7.6.3: - resolution: {integrity: sha512-YS64N9SNDT/NAvou3QNdzAu3E2om/W/0dhORimtPGLef+zSK5l1vDzfsWb4xgXOgfhtOI5ZDTRxnvRPb22AIVQ==} - dependencies: - '@types/node': 18.11.17 - dev: false - /@types/body-parser/1.19.2: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: @@ -14592,10 +14167,6 @@ packages: /@types/source-list-map/0.1.2: resolution: {integrity: sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==} - /@types/stack-trace/0.0.29: - resolution: {integrity: sha512-TgfOX+mGY/NyNxJLIbDWrO9DjGoVSW9+aB8H2yy1fy32jsvxijhmyJI9fDFgvz3YP4lvJaq9DzdR/M1bOgVc9g==} - dev: false - /@types/stack-utils/2.0.1: resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} @@ -15315,8 +14886,10 @@ packages: ajv: 6.12.6 dev: false - /ajv-formats/2.1.1: + /ajv-formats/2.1.1_ajv@8.11.0: resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} + peerDependencies: + ajv: ^8.0.0 peerDependenciesMeta: ajv: optional: true @@ -16441,10 +16014,6 @@ packages: resolution: {integrity: sha512-FQSWhFQZmddoqWkwPMFeR5hJo9waZE796MuO7b0poStaPrm0Qr2em9FT4/TF1+0rOA1dRFabX+88rdX8YHxDTA==} dev: true - /blake3-wasm/2.1.5: - resolution: {integrity: sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==} - dev: false - /blob-util/2.0.2: resolution: {integrity: sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==} dev: true @@ -16701,12 +16270,6 @@ packages: resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} dev: false - /builtins/5.0.1: - resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} - dependencies: - semver: 7.3.8 - dev: false - /busboy/0.2.14: resolution: {integrity: sha512-InWFDomvlkEj+xWLBfU3AvnbVYqeTWmQopiW0tWWEy5yehYm2YkGEc59sUmw/4ty5Zj/b0WHGs1LgecuBSBGrg==} engines: {node: '>=0.8.0'} @@ -17906,10 +17469,6 @@ packages: moment-timezone: 0.5.34 dev: true - /cron-schedule/3.0.6: - resolution: {integrity: sha512-izfGgKyzzIyLaeb1EtZ3KbglkS6AKp9cv7LxmiyoOu+fXfol1tQDC0Cof0enVZGNtudTHW+3lfuW9ZkLQss4Wg==} - dev: false - /cross-fetch/3.1.5: resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==} dependencies: @@ -18949,6 +18508,7 @@ packages: /dotenv/10.0.0: resolution: {integrity: sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==} engines: {node: '>=10'} + dev: true /dotenv/8.6.0: resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==} @@ -20355,36 +19915,6 @@ packages: '@esbuild/win32-x64': 0.16.14 dev: true - /esbuild/0.16.3: - resolution: {integrity: sha512-71f7EjPWTiSguen8X/kxEpkAS7BFHwtQKisCDDV3Y4GLGWBaoSCyD5uXkaUew6JDzA9FEN1W23mdnSwW9kqCeg==} - engines: {node: '>=12'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/android-arm': 0.16.3 - '@esbuild/android-arm64': 0.16.3 - '@esbuild/android-x64': 0.16.3 - '@esbuild/darwin-arm64': 0.16.3 - '@esbuild/darwin-x64': 0.16.3 - '@esbuild/freebsd-arm64': 0.16.3 - '@esbuild/freebsd-x64': 0.16.3 - '@esbuild/linux-arm': 0.16.3 - '@esbuild/linux-arm64': 0.16.3 - '@esbuild/linux-ia32': 0.16.3 - '@esbuild/linux-loong64': 0.16.3 - '@esbuild/linux-mips64el': 0.16.3 - '@esbuild/linux-ppc64': 0.16.3 - '@esbuild/linux-riscv64': 0.16.3 - '@esbuild/linux-s390x': 0.16.3 - '@esbuild/linux-x64': 0.16.3 - '@esbuild/netbsd-x64': 0.16.3 - '@esbuild/openbsd-x64': 0.16.3 - '@esbuild/sunos-x64': 0.16.3 - '@esbuild/win32-arm64': 0.16.3 - '@esbuild/win32-ia32': 0.16.3 - '@esbuild/win32-x64': 0.16.3 - dev: false - /escalade/3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -20966,21 +20496,6 @@ packages: signal-exit: 3.0.7 strip-final-newline: 2.0.0 - /execa/6.1.0: - resolution: {integrity: sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 3.0.1 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.1.0 - onetime: 6.0.0 - signal-exit: 3.0.7 - strip-final-newline: 3.0.0 - dev: false - /executable/4.1.1: resolution: {integrity: sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==} engines: {node: '>=4'} @@ -22838,10 +22353,6 @@ packages: terser: 5.15.0 dev: false - /html-rewriter-wasm/0.4.1: - resolution: {integrity: sha512-lNovG8CMCCmcVB1Q7xggMSf7tqPCijZXaH4gL6iE8BFghdQCbaY5Met9i1x2Ex8m/cZHDUtXK9H6/znKamRP8Q==} - dev: false - /html-tags/3.2.0: resolution: {integrity: sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==} engines: {node: '>=8'} @@ -23073,11 +22584,6 @@ packages: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} - /human-signals/3.0.1: - resolution: {integrity: sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==} - engines: {node: '>=12.20.0'} - dev: false - /humanize-bytes/1.0.1: resolution: {integrity: sha512-OZMIHt5YhQM4S3R82KGoKnWv4vaNnWuEhPAK+u5v7rD2tRM3DU2NghYEHipAPYwyTR6+fMVZQ9ETpZIZeZUapQ==} dependencies: @@ -23724,11 +23230,6 @@ packages: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} - /is-stream/3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: false - /is-string/1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -25598,12 +25099,6 @@ packages: resolution: {integrity: sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==} hasBin: true - /magic-string/0.25.9: - resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} - dependencies: - sourcemap-codec: 1.4.8 - dev: false - /magic-string/0.26.7: resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} engines: {node: '>=12'} @@ -26492,12 +25987,6 @@ packages: engines: {node: '>=4.0.0'} hasBin: true - /mime/3.0.0: - resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} - engines: {node: '>=10.0.0'} - hasBin: true - dev: false - /mimic-fn/2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -26507,11 +25996,6 @@ packages: engines: {node: '>=8'} dev: false - /mimic-fn/4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - dev: false - /mimic-response/1.0.1: resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} engines: {node: '>=4'} @@ -26552,48 +26036,6 @@ packages: webpack: 5.75.0 dev: false - /miniflare/2.11.0: - resolution: {integrity: sha512-QA18I1VQXdCo4nBtPJUcUDxW8c9xbc5ex5F61jwhkGVOISSnYdEheolESmjr8MYk28xwi0XD1ozS4rLaTONd+w==} - engines: {node: '>=16.13'} - hasBin: true - peerDependencies: - '@miniflare/storage-redis': 2.11.0 - cron-schedule: ^3.0.4 - ioredis: ^4.27.9 - peerDependenciesMeta: - '@miniflare/storage-redis': - optional: true - cron-schedule: - optional: true - ioredis: - optional: true - dependencies: - '@miniflare/cache': 2.11.0 - '@miniflare/cli-parser': 2.11.0 - '@miniflare/core': 2.11.0 - '@miniflare/d1': 2.11.0 - '@miniflare/durable-objects': 2.11.0 - '@miniflare/html-rewriter': 2.11.0 - '@miniflare/http-server': 2.11.0 - '@miniflare/kv': 2.11.0 - '@miniflare/queues': 2.11.0 - '@miniflare/r2': 2.11.0 - '@miniflare/runner-vm': 2.11.0 - '@miniflare/scheduler': 2.11.0 - '@miniflare/shared': 2.11.0 - '@miniflare/sites': 2.11.0 - '@miniflare/storage-file': 2.11.0 - '@miniflare/storage-memory': 2.11.0 - '@miniflare/web-sockets': 2.11.0 - kleur: 4.1.5 - semiver: 1.1.0 - source-map-support: 0.5.21 - undici: 5.9.1 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - dev: false - /minimalistic-assert/1.0.1: resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} dev: false @@ -26829,11 +26271,6 @@ packages: hasBin: true dev: true - /mustache/4.2.0: - resolution: {integrity: sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==} - hasBin: true - dev: false - /mutationobserver-shim/0.3.7: resolution: {integrity: sha512-oRIDTyZQU96nAiz2AQyngwx1e89iApl2hN5AOYwyxLUB47UYsU3Wv9lJWqH5y/QdiYkc5HQLi23ZNB3fELdHcQ==} dev: false @@ -27136,13 +26573,6 @@ packages: dependencies: path-key: 3.1.1 - /npm-run-path/5.1.0: - resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - path-key: 4.0.0 - dev: false - /npmlog/5.0.1: resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} dependencies: @@ -27156,15 +26586,6 @@ packages: resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} dev: false - /npx-import/1.1.4: - resolution: {integrity: sha512-3ShymTWOgqGyNlh5lMJAejLuIv3W1K3fbI5Ewc6YErZU3Sp0PqsNs8UIU1O8z5+KVl/Du5ag56Gza9vdorGEoA==} - dependencies: - execa: 6.1.0 - parse-package-name: 1.0.0 - semver: 7.3.8 - validate-npm-package-name: 4.0.0 - dev: false - /nth-check/2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} dependencies: @@ -27324,13 +26745,6 @@ packages: dependencies: mimic-fn: 2.1.0 - /onetime/6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - dependencies: - mimic-fn: 4.0.0 - dev: false - /only/0.0.2: resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==} @@ -27667,10 +27081,6 @@ packages: resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==} engines: {node: '>= 0.10'} - /parse-package-name/1.0.0: - resolution: {integrity: sha512-kBeTUtcj+SkyfaW4+KBe0HtsloBJ/mKTPoxpVdA57GZiPerREsUWJOhVj9anXweFiJkm5y8FG1sxFZkZ0SN6wg==} - dev: false - /parse-passwd/1.0.0: resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==} engines: {node: '>=0.10.0'} @@ -27762,11 +27172,6 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} - /path-key/4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - dev: false - /path-parse/1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -31170,21 +30575,6 @@ packages: '@babel/code-frame': 7.18.6 dev: true - /rollup-plugin-inject/3.0.2: - resolution: {integrity: sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w==} - deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-inject. - dependencies: - estree-walker: 0.6.1 - magic-string: 0.25.9 - rollup-pluginutils: 2.8.2 - dev: false - - /rollup-plugin-node-polyfills/0.2.1: - resolution: {integrity: sha512-4kCrKPTJ6sK4/gLL/U5QzVT8cxJcofO0OU74tnB19F40cmuAKSzH5/siithxlofFEjwvw1YAhPmbvGNA6jEroA==} - dependencies: - rollup-plugin-inject: 3.0.2 - dev: false - /rollup-pluginutils/2.8.2: resolution: {integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==} dependencies: @@ -31400,7 +30790,7 @@ packages: dependencies: '@types/json-schema': 7.0.11 ajv: 8.11.0 - ajv-formats: 2.1.1 + ajv-formats: 2.1.1_ajv@8.11.0 ajv-keywords: 5.1.0_ajv@8.11.0 /scmp/2.1.0: @@ -31465,11 +30855,6 @@ packages: node-forge: 1.3.1 dev: false - /semiver/1.1.0: - resolution: {integrity: sha512-QNI2ChmuioGC1/xjyYwyZYADILWyW6AmS1UH6gDj/SFUUUS4MBAWs/7mxnkRPc/F4iHezDP+O8t0dO8WHiEOdg==} - engines: {node: '>=6'} - dev: false - /semver-compare/1.0.0: resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==} @@ -31912,6 +31297,7 @@ packages: /sourcemap-codec/1.4.8: resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} + dev: true /space-separated-tokens/1.1.5: resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} @@ -32049,6 +31435,7 @@ packages: /stack-trace/0.0.10: resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} + dev: true /stack-utils/2.0.5: resolution: {integrity: sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==} @@ -32331,11 +31718,6 @@ packages: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} - /strip-final-newline/3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - dev: false - /strip-indent/1.0.1: resolution: {integrity: sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==} engines: {node: '>=0.10.0'} @@ -33791,11 +33173,6 @@ packages: resolution: {integrity: sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==} dev: false - /undici/5.9.1: - resolution: {integrity: sha512-6fB3a+SNnWEm4CJbgo0/CWR8RGcOCQP68SF4X0mxtYTq2VNN8T88NYrWVBAeSX+zb7bny2dx2iYhP3XHi00omg==} - engines: {node: '>=12.18'} - dev: false - /unescape/1.0.1: resolution: {integrity: sha512-O0+af1Gs50lyH1nUu3ZyYS1cRh01Q/kUKatTOkSs7jukXE6/NebucDVxyiDsA9AQ4JC1V1jUH9EO8JX2nMDgGQ==} engines: {node: '>=0.10.0'} @@ -34143,10 +33520,6 @@ packages: - supports-color dev: true - /urlpattern-polyfill/4.0.3: - resolution: {integrity: sha512-DOE84vZT2fEcl9gqCUTcnAw5ZY5Id55ikUcziSUntuEFL3pRvavg5kwDmTEUJkeCHInTlV/HexFomgYnzO5kdQ==} - dev: false - /use-callback-ref/1.3.0_iapumuv4e6jcjznwuxpf4tt22e: resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} engines: {node: '>=10'} @@ -34304,13 +33677,6 @@ packages: spdx-correct: 3.1.1 spdx-expression-parse: 3.0.1 - /validate-npm-package-name/4.0.0: - resolution: {integrity: sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - dependencies: - builtins: 5.0.1 - dev: false - /validator/13.7.0: resolution: {integrity: sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==} engines: {node: '>= 0.10'} @@ -35266,36 +34632,6 @@ packages: microevent.ts: 0.1.1 dev: false - /wrangler/2.9.1: - resolution: {integrity: sha512-tD0DJnUXQe5rd9XyVT4fd7o3N0HGGv70Uz9wAdVUl+R109sOBGfitLUxEx9z7tXOxaigR1X5R/o80yVDBlNr6A==} - engines: {node: '>=16.13.0'} - hasBin: true - dependencies: - '@cloudflare/kv-asset-handler': 0.2.0 - '@esbuild-plugins/node-globals-polyfill': 0.1.1_esbuild@0.16.3 - '@esbuild-plugins/node-modules-polyfill': 0.1.4_esbuild@0.16.3 - '@miniflare/core': 2.11.0 - '@miniflare/d1': 2.11.0 - '@miniflare/durable-objects': 2.11.0 - blake3-wasm: 2.1.5 - chokidar: 3.5.3 - esbuild: 0.16.3 - miniflare: 2.11.0 - nanoid: 3.3.4 - path-to-regexp: 6.2.1 - selfsigned: 2.1.1 - source-map: 0.7.4 - xxhash-wasm: 1.0.2 - optionalDependencies: - fsevents: 2.3.2 - transitivePeerDependencies: - - '@miniflare/storage-redis' - - bufferutil - - cron-schedule - - ioredis - - utf-8-validate - dev: false - /wrap-ansi/2.1.0: resolution: {integrity: sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==} engines: {node: '>=0.10.0'} @@ -35430,10 +34766,6 @@ packages: resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} engines: {node: '>=0.4'} - /xxhash-wasm/1.0.2: - resolution: {integrity: sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==} - dev: false - /y18n/4.0.3: resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} dev: false @@ -35575,15 +34907,6 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - /youch/2.2.2: - resolution: {integrity: sha512-/FaCeG3GkuJwaMR34GHVg0l8jCbafZLHiFowSjqLlqhC6OMyf2tPJBu8UirF7/NI9X/R5ai4QfEKUCOxMAGxZQ==} - dependencies: - '@types/stack-trace': 0.0.29 - cookie: 0.4.2 - mustache: 4.2.0 - stack-trace: 0.0.10 - dev: false - /z-schema/5.0.3: resolution: {integrity: sha512-sGvEcBOTNum68x9jCpCVGPFJ6mWnkD0YxOcddDlJHRx3tKdB2q8pCHExMVZo/AV/6geuVJXG7hljDaWG8+5GDw==} engines: {node: '>=8.0.0'} diff --git a/tests/integration/swc/fixtures/minify-js/modern.config.ts b/tests/integration/swc/fixtures/minify-js/modern.config.ts index 115e6b567661..d57bf1a0bf4a 100644 --- a/tests/integration/swc/fixtures/minify-js/modern.config.ts +++ b/tests/integration/swc/fixtures/minify-js/modern.config.ts @@ -1,8 +1,9 @@ import appTools, { defineConfig } from '@modern-js/app-tools'; +import pluginSwc from '@modern-js/plugin-swc'; export default defineConfig({ tools: { swc: {}, }, - plugins: [appTools()], + plugins: [appTools(), pluginSwc()], }); diff --git a/tests/integration/swc/fixtures/transform-fail/modern.config.ts b/tests/integration/swc/fixtures/transform-fail/modern.config.ts new file mode 100644 index 000000000000..d57bf1a0bf4a --- /dev/null +++ b/tests/integration/swc/fixtures/transform-fail/modern.config.ts @@ -0,0 +1,9 @@ +import appTools, { defineConfig } from '@modern-js/app-tools'; +import pluginSwc from '@modern-js/plugin-swc'; + +export default defineConfig({ + tools: { + swc: {}, + }, + plugins: [appTools(), pluginSwc()], +}); diff --git a/tests/integration/swc/fixtures/transform-fail/package.json b/tests/integration/swc/fixtures/transform-fail/package.json new file mode 100644 index 000000000000..7f96609bd65f --- /dev/null +++ b/tests/integration/swc/fixtures/transform-fail/package.json @@ -0,0 +1,15 @@ +{ + "private": true, + "name": "swc-minify-js", + "version": "1.0.0", + "dependencies": { + "react": "^18", + "react-dom": "^18", + "@babel/runtime": "^7.18.0", + "@modern-js/runtime": "workspace:*" + }, + "devDependencies": { + "@modern-js/app-tools": "workspace:*", + "@modern-js/plugin-swc": "workspace:*" + } +} diff --git a/tests/integration/swc/fixtures/transform-fail/src/App.jsx b/tests/integration/swc/fixtures/transform-fail/src/App.jsx new file mode 100644 index 000000000000..a8c636991427 --- /dev/null +++ b/tests/integration/swc/fixtures/transform-fail/src/App.jsx @@ -0,0 +1,6 @@ +import './base.css'; + +// Syntax Error +const App = () => + +export default App; diff --git a/tests/integration/swc/fixtures/transform-fail/src/base.css b/tests/integration/swc/fixtures/transform-fail/src/base.css new file mode 100644 index 000000000000..52e56496e5da --- /dev/null +++ b/tests/integration/swc/fixtures/transform-fail/src/base.css @@ -0,0 +1,3 @@ +#base-css { + color: red; +} diff --git a/tests/integration/swc/test/index.test.ts b/tests/integration/swc/test/index.test.ts index 75f9211d12c3..ec81e81c6697 100644 --- a/tests/integration/swc/test/index.test.ts +++ b/tests/integration/swc/test/index.test.ts @@ -1,6 +1,10 @@ import path from 'path'; import { readdirSync, readFileSync } from 'fs'; -import { modernBuild } from '../../../utils/modernTestUtils'; +import type { ChildProcess } from 'child_process'; +import { + modernBuild, + runModernCommandDev, +} from '../../../utils/modernTestUtils'; const fixtures = path.resolve(__dirname, '../fixtures'); @@ -23,4 +27,20 @@ describe('swc minify', () => { readFileSync(path.resolve(appDir, `dist/static/js/${mainFile}`), 'utf8'), ).toContain('children:"helloworld"'); }); + + it('should not exit unexpectly when transform failed', async () => { + const appDir = path.resolve(fixtures, 'transform-fail'); + + const cp: ChildProcess = await runModernCommandDev(['dev'], false, { + cwd: appDir, + env: { + NODE_ENV: 'development', + }, + }); + + expect(cp).toBeDefined(); + expect(cp.exitCode).toBe(null); + + cp.kill('SIGTERM'); + }); });