From 85408dc3d5d1f085376be3ac7457f7f3b4473a44 Mon Sep 17 00:00:00 2001 From: Tim Fish Date: Sun, 22 Mar 2026 16:19:49 +0000 Subject: [PATCH 1/7] test: Vite integration tests --- package.json | 5 +- .../package.json | 2 +- packages/bundler-plugin-core/package.json | 2 +- packages/esbuild-plugin/package.json | 2 +- .../rolldown/after-upload-deletion.test.ts | 12 +- .../fixtures/rolldown/application-key.test.ts | 29 +- .../rolldown/basic-release-disabled.test.ts | 21 +- .../rolldown/basic-sourcemaps.test.ts | 14 +- .../fixtures/rolldown/basic.test.ts | 14 +- .../fixtures/rolldown/build-info.test.ts | 19 +- .../bundle-size-optimizations.test.ts | 14 +- .../component-annotation-disabled.test.ts | 16 +- .../component-annotation-next.test.ts | 16 +- .../rolldown/component-annotation.test.ts | 16 +- .../rolldown/debugid-disabled.test.ts | 16 +- .../debugids-already-injected.test.ts | 26 +- .../fixtures/rolldown/module-metadata.test.ts | 32 +- .../rolldown/multiple-entry-points.test.ts | 63 +- .../fixtures/rolldown/package.json | 4 +- .../fixtures/rolldown/query-param.test.ts | 44 +- .../rolldown/release-disabled.test.ts | 14 +- .../fixtures/rolldown/telemetry.test.ts | 14 +- .../fixtures/rolldown/utils.ts | 2 +- .../fixtures/rollup3/package.json | 8 +- .../fixtures/rollup4/package.json | 6 +- .../integration-tests-next/fixtures/utils.ts | 6 +- .../vite4/after-upload-deletion.config.ts | 18 + .../vite4/after-upload-deletion.test.ts | 25 + .../fixtures/vite4/application-key.config.ts | 17 + .../fixtures/vite4/application-key.test.ts | 28 + .../vite4/basic-release-disabled.config.ts | 17 + .../vite4/basic-release-disabled.test.ts | 20 + .../fixtures/vite4/basic-sourcemaps.config.ts | 18 + .../fixtures/vite4/basic-sourcemaps.test.ts | 31 + .../fixtures/vite4/basic.config.ts | 17 + .../fixtures/vite4/basic.test.ts | 29 + .../fixtures/vite4/build-info.config.ts | 17 + .../fixtures/vite4/build-info.test.ts | 22 + .../vite4/bundle-size-optimizations.config.ts | 17 + .../vite4/bundle-size-optimizations.test.ts | 36 + .../component-annotation-disabled.config.ts | 21 + .../component-annotation-disabled.test.ts | 21 + .../vite4/component-annotation-next.config.ts | 21 + .../vite4/component-annotation-next.test.ts | 21 + .../vite4/component-annotation.config.ts | 21 + .../vite4/component-annotation.test.ts | 21 + .../fixtures/vite4/debugid-disabled.config.ts | 18 + .../fixtures/vite4/debugid-disabled.test.ts | 14 + .../vite4/debugids-already-injected.config.ts | 19 + .../vite4/debugids-already-injected.test.ts | 28 + .../fixtures/vite4/module-metadata.config.ts | 17 + .../fixtures/vite4/module-metadata.test.ts | 31 + .../vite4/multiple-entry-points.config.ts | 18 + .../vite4/multiple-entry-points.test.ts | 58 + .../fixtures/vite4/package.json | 11 + .../fixtures/vite4/query-param.config.ts | 18 + .../fixtures/vite4/query-param.test.ts | 55 + .../fixtures/vite4/release-disabled.config.ts | 17 + .../fixtures/vite4/release-disabled.test.ts | 25 + .../fixtures/vite4/src/app.jsx | 9 + .../fixtures/vite4/src/basic.js | 2 + .../fixtures/vite4/src/bundle.js | 10 + .../fixtures/vite4/src/common.js | 3 + .../fixtures/vite4/src/component-a.jsx | 3 + .../fixtures/vite4/src/entry1.js | 3 + .../fixtures/vite4/src/entry2.js | 3 + .../fixtures/vite4/telemetry.config.ts | 17 + .../fixtures/vite4/telemetry.test.ts | 26 + .../fixtures/vite4/utils.ts | 62 + .../vite7/after-upload-deletion.config.ts | 18 + .../vite7/after-upload-deletion.test.ts | 25 + .../fixtures/vite7/application-key.config.ts | 17 + .../fixtures/vite7/application-key.test.ts | 28 + .../vite7/basic-release-disabled.config.ts | 17 + .../vite7/basic-release-disabled.test.ts | 20 + .../fixtures/vite7/basic-sourcemaps.config.ts | 18 + .../fixtures/vite7/basic-sourcemaps.test.ts | 31 + .../fixtures/vite7/basic.config.ts | 17 + .../fixtures/vite7/basic.test.ts | 29 + .../fixtures/vite7/build-info.config.ts | 17 + .../fixtures/vite7/build-info.test.ts | 22 + .../vite7/bundle-size-optimizations.config.ts | 17 + .../vite7/bundle-size-optimizations.test.ts | 36 + .../component-annotation-disabled.config.ts | 21 + .../component-annotation-disabled.test.ts | 21 + .../vite7/component-annotation-next.config.ts | 21 + .../vite7/component-annotation-next.test.ts | 21 + .../vite7/component-annotation.config.ts | 21 + .../vite7/component-annotation.test.ts | 21 + .../fixtures/vite7/debugid-disabled.config.ts | 18 + .../fixtures/vite7/debugid-disabled.test.ts | 14 + .../vite7/debugids-already-injected.config.ts | 19 + .../vite7/debugids-already-injected.test.ts | 28 + .../fixtures/vite7/module-metadata.config.ts | 17 + .../fixtures/vite7/module-metadata.test.ts | 31 + .../vite7/multiple-entry-points.config.ts | 18 + .../vite7/multiple-entry-points.test.ts | 58 + .../fixtures/vite7/package.json | 11 + .../fixtures/vite7/query-param.config.ts | 18 + .../fixtures/vite7/query-param.test.ts | 55 + .../fixtures/vite7/release-disabled.config.ts | 17 + .../fixtures/vite7/release-disabled.test.ts | 25 + .../fixtures/vite7/src/app.jsx | 9 + .../fixtures/vite7/src/basic.js | 2 + .../fixtures/vite7/src/bundle.js | 10 + .../fixtures/vite7/src/common.js | 3 + .../fixtures/vite7/src/component-a.jsx | 3 + .../fixtures/vite7/src/entry1.js | 3 + .../fixtures/vite7/src/entry2.js | 3 + .../fixtures/vite7/telemetry.config.ts | 17 + .../fixtures/vite7/telemetry.test.ts | 26 + .../fixtures/vite7/utils.ts | 62 + .../vite8/after-upload-deletion.config.ts | 18 + .../vite8/after-upload-deletion.test.ts | 25 + .../fixtures/vite8/application-key.config.ts | 17 + .../fixtures/vite8/application-key.test.ts | 28 + .../vite8/basic-release-disabled.config.ts | 17 + .../vite8/basic-release-disabled.test.ts | 20 + .../fixtures/vite8/basic-sourcemaps.config.ts | 18 + .../fixtures/vite8/basic-sourcemaps.test.ts | 31 + .../fixtures/vite8/basic.config.ts | 17 + .../fixtures/vite8/basic.test.ts | 29 + .../fixtures/vite8/build-info.config.ts | 17 + .../fixtures/vite8/build-info.test.ts | 22 + .../vite8/bundle-size-optimizations.config.ts | 17 + .../vite8/bundle-size-optimizations.test.ts | 36 + .../component-annotation-disabled.config.ts | 21 + .../component-annotation-disabled.test.ts | 12 + .../vite8/component-annotation-next.config.ts | 21 + .../vite8/component-annotation-next.test.ts | 12 + .../vite8/component-annotation.config.ts | 21 + .../vite8/component-annotation.test.ts | 12 + .../fixtures/vite8/debugid-disabled.config.ts | 18 + .../fixtures/vite8/debugid-disabled.test.ts | 14 + .../vite8/debugids-already-injected.config.ts | 19 + .../vite8/debugids-already-injected.test.ts | 28 + .../fixtures/vite8/module-metadata.config.ts | 17 + .../fixtures/vite8/module-metadata.test.ts | 31 + .../vite8/multiple-entry-points.config.ts | 18 + .../vite8/multiple-entry-points.test.ts | 58 + .../fixtures/vite8/package.json | 11 + .../fixtures/vite8/query-param.config.ts | 18 + .../fixtures/vite8/query-param.test.ts | 55 + .../fixtures/vite8/release-disabled.config.ts | 17 + .../fixtures/vite8/release-disabled.test.ts | 25 + .../fixtures/vite8/src/app.jsx | 9 + .../fixtures/vite8/src/basic.js | 2 + .../fixtures/vite8/src/bundle.js | 10 + .../fixtures/vite8/src/common.js | 3 + .../fixtures/vite8/src/component-a.jsx | 3 + .../fixtures/vite8/src/entry1.js | 3 + .../fixtures/vite8/src/entry2.js | 3 + .../fixtures/vite8/telemetry.config.ts | 17 + .../fixtures/vite8/telemetry.test.ts | 26 + .../fixtures/vite8/utils.ts | 62 + packages/rollup-plugin/package.json | 2 +- packages/vite-plugin/package.json | 2 +- packages/webpack-plugin/package.json | 2 +- yarn.lock | 1217 ++++++++--------- 159 files changed, 3560 insertions(+), 768 deletions(-) create mode 100644 packages/integration-tests-next/fixtures/vite4/after-upload-deletion.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/after-upload-deletion.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/application-key.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/application-key.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/basic-release-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/basic-release-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/basic.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/basic.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/build-info.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/build-info.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/component-annotation-next.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/component-annotation.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/debugid-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/debugid-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/module-metadata.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/module-metadata.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/multiple-entry-points.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/multiple-entry-points.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/package.json create mode 100644 packages/integration-tests-next/fixtures/vite4/query-param.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/query-param.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/release-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/release-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/src/app.jsx create mode 100644 packages/integration-tests-next/fixtures/vite4/src/basic.js create mode 100644 packages/integration-tests-next/fixtures/vite4/src/bundle.js create mode 100644 packages/integration-tests-next/fixtures/vite4/src/common.js create mode 100644 packages/integration-tests-next/fixtures/vite4/src/component-a.jsx create mode 100644 packages/integration-tests-next/fixtures/vite4/src/entry1.js create mode 100644 packages/integration-tests-next/fixtures/vite4/src/entry2.js create mode 100644 packages/integration-tests-next/fixtures/vite4/telemetry.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/telemetry.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite4/utils.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/after-upload-deletion.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/after-upload-deletion.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/application-key.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/application-key.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/basic-release-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/basic-release-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/basic.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/basic.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/build-info.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/build-info.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/component-annotation-next.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/component-annotation.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/debugid-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/debugid-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/debugids-already-injected.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/debugids-already-injected.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/module-metadata.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/module-metadata.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/multiple-entry-points.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/multiple-entry-points.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/package.json create mode 100644 packages/integration-tests-next/fixtures/vite7/query-param.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/query-param.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/release-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/release-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/src/app.jsx create mode 100644 packages/integration-tests-next/fixtures/vite7/src/basic.js create mode 100644 packages/integration-tests-next/fixtures/vite7/src/bundle.js create mode 100644 packages/integration-tests-next/fixtures/vite7/src/common.js create mode 100644 packages/integration-tests-next/fixtures/vite7/src/component-a.jsx create mode 100644 packages/integration-tests-next/fixtures/vite7/src/entry1.js create mode 100644 packages/integration-tests-next/fixtures/vite7/src/entry2.js create mode 100644 packages/integration-tests-next/fixtures/vite7/telemetry.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/telemetry.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite7/utils.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/after-upload-deletion.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/after-upload-deletion.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/application-key.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/application-key.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/basic-release-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/basic-release-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/basic.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/basic.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/build-info.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/build-info.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/component-annotation-next.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/component-annotation.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/debugid-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/debugid-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/debugids-already-injected.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/debugids-already-injected.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/module-metadata.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/module-metadata.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/multiple-entry-points.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/multiple-entry-points.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/package.json create mode 100644 packages/integration-tests-next/fixtures/vite8/query-param.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/query-param.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/release-disabled.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/release-disabled.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/src/app.jsx create mode 100644 packages/integration-tests-next/fixtures/vite8/src/basic.js create mode 100644 packages/integration-tests-next/fixtures/vite8/src/bundle.js create mode 100644 packages/integration-tests-next/fixtures/vite8/src/common.js create mode 100644 packages/integration-tests-next/fixtures/vite8/src/component-a.jsx create mode 100644 packages/integration-tests-next/fixtures/vite8/src/entry1.js create mode 100644 packages/integration-tests-next/fixtures/vite8/src/entry2.js create mode 100644 packages/integration-tests-next/fixtures/vite8/telemetry.config.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/telemetry.test.ts create mode 100644 packages/integration-tests-next/fixtures/vite8/utils.ts diff --git a/package.json b/package.json index f7d9d9b3..0b01c131 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,10 @@ "packages/integration-tests-next", "packages/integration-tests-next/fixtures/rolldown", "packages/integration-tests-next/fixtures/rollup3", - "packages/integration-tests-next/fixtures/rollup4" + "packages/integration-tests-next/fixtures/rollup4", + "packages/integration-tests-next/fixtures/vite4", + "packages/integration-tests-next/fixtures/vite7", + "packages/integration-tests-next/fixtures/vite8" ], "scripts": { "postinstall": "patch-package", diff --git a/packages/babel-plugin-component-annotate/package.json b/packages/babel-plugin-component-annotate/package.json index 01a50abd..95b6e2ff 100644 --- a/packages/babel-plugin-component-annotate/package.json +++ b/packages/babel-plugin-component-annotate/package.json @@ -58,7 +58,7 @@ "eslint": "^8.18.0", "vitest": "^4.0.0", "premove": "^4.0.0", - "rolldown": "^1.0.0-rc.6", + "rolldown": "1.0.0-rc.10", "ts-node": "^10.9.1", "typescript": "^4.7.4" }, diff --git a/packages/bundler-plugin-core/package.json b/packages/bundler-plugin-core/package.json index b6ac8a15..be17554a 100644 --- a/packages/bundler-plugin-core/package.json +++ b/packages/bundler-plugin-core/package.json @@ -72,7 +72,7 @@ "eslint": "^8.18.0", "vitest": "^4.0.0", "premove": "^4.0.0", - "rolldown": "^1.0.0-rc.6", + "rolldown": "1.0.0-rc.10", "typescript": "^4.7.4" }, "volta": { diff --git a/packages/esbuild-plugin/package.json b/packages/esbuild-plugin/package.json index d34de376..380e8cba 100644 --- a/packages/esbuild-plugin/package.json +++ b/packages/esbuild-plugin/package.json @@ -57,7 +57,7 @@ "eslint": "^8.18.0", "vitest": "^4.0.0", "premove": "^4.0.0", - "rolldown": "^1.0.0-rc.6", + "rolldown": "1.0.0-rc.10", "ts-node": "^10.9.1", "typescript": "^4.7.4" }, diff --git a/packages/integration-tests-next/fixtures/rolldown/after-upload-deletion.test.ts b/packages/integration-tests-next/fixtures/rolldown/after-upload-deletion.test.ts index b9900075..98cb45aa 100644 --- a/packages/integration-tests-next/fixtures/rolldown/after-upload-deletion.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/after-upload-deletion.test.ts @@ -6,9 +6,17 @@ test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); //#endregion + //# sourceMappingURL=basic.js.map", } `); diff --git a/packages/integration-tests-next/fixtures/rolldown/application-key.test.ts b/packages/integration-tests-next/fixtures/rolldown/application-key.test.ts index 460d301b..edec4127 100644 --- a/packages/integration-tests-next/fixtures/rolldown/application-key.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/application-key.test.ts @@ -4,11 +4,26 @@ import { test } from "./utils"; test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` - { - "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[(new e.Error).stack]=function(e){for(var n=1;n { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` - { - "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - - //#endregion", - } - `); + { + "basic.js": "//#region src/basic.js + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); + //#endregion + ", + } + `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/basic-sourcemaps.test.ts b/packages/integration-tests-next/fixtures/rolldown/basic-sourcemaps.test.ts index 4f158672..a15fd429 100644 --- a/packages/integration-tests-next/fixtures/rolldown/basic-sourcemaps.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/basic-sourcemaps.test.ts @@ -6,11 +6,19 @@ test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); //#endregion + //# sourceMappingURL=basic.js.map", - "basic.js.map": "{"version":3,"file":"basic.js","names":[],"sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"mappings":";scACA,OAAA,CAAQ,GAAA,CAAI,CAAA,KAAA,CAAA,KAAA,CAAA,CAAc"}", + "basic.js.map": "{"version":3,"file":"basic.js","names":[],"sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,cAAc"}", "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], ["releases","finalize","CURRENT_SHA"], diff --git a/packages/integration-tests-next/fixtures/rolldown/basic.test.ts b/packages/integration-tests-next/fixtures/rolldown/basic.test.ts index b3e85d7b..4f2aa09c 100644 --- a/packages/integration-tests-next/fixtures/rolldown/basic.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/basic.test.ts @@ -6,9 +6,17 @@ test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - - //#endregion", + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); + //#endregion + ", "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], ["releases","finalize","CURRENT_SHA"], diff --git a/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts b/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts index 127e8c17..bd461da8 100644 --- a/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts @@ -6,9 +6,22 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["react","rolldown"],"depsVersions":{"react":19},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - - //#endregion", + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "build-information-injection-test" }; + e.SENTRY_BUILD_INFO = { + "deps": ["react", "rolldown"], + "depsVersions": { "react": 19 }, + "nodeVersion":"NODE_VERSION" + }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); + //#endregion + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/bundle-size-optimizations.test.ts b/packages/integration-tests-next/fixtures/rolldown/bundle-size-optimizations.test.ts index 5e4bb51f..63d082bc 100644 --- a/packages/integration-tests-next/fixtures/rolldown/bundle-size-optimizations.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/bundle-size-optimizations.test.ts @@ -6,7 +6,15 @@ test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "bundle.js": "//#region src/bundle.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="92a38845-d1ee-42b4-9812-67a76e42b480",e._sentryDebugIdIdentifier="sentry-dbid-92a38845-d1ee-42b4-9812-67a76e42b480");}catch(e){}}();console.log(JSON.stringify({ + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "92a38845-d1ee-42b4-9812-67a76e42b480", e._sentryDebugIdIdentifier = "sentry-dbid-92a38845-d1ee-42b4-9812-67a76e42b480"); + } catch (e) {} + })(); + console.log(JSON.stringify({ debug: "b", trace: "b", replayCanvas: "a", @@ -14,8 +22,8 @@ test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { replayShadowDom: "a", replayWorker: "a" })); - - //#endregion", + //#endregion + ", } `); diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts index 3f98e67c..ec44055c 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts @@ -5,21 +5,27 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b0a43d00-208c-4b0e-b024-c0951a1c11f8",e._sentryDebugIdIdentifier="sentry-dbid-b0a43d00-208c-4b0e-b024-c0951a1c11f8");}catch(e){}}();import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; - + "app.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b0a43d00-208c-4b0e-b024-c0951a1c11f8", e._sentryDebugIdIdentifier = "sentry-dbid-b0a43d00-208c-4b0e-b024-c0951a1c11f8"); + } catch (e) {} + })(); + import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { return /* @__PURE__ */ jsx("span", { children: "Component A" }); } - //#endregion //#region src/app.jsx function App() { return /* @__PURE__ */ jsxs("span", { children: [/* @__PURE__ */ jsx(ComponentA, {}), ";"] }); } - //#endregion - export { App as default };", + export { App as default }; + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts index e3795304..904ef754 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts @@ -5,8 +5,15 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4bdf6d53-8b4d-4766-b048-143c5e6d2cbd",e._sentryDebugIdIdentifier="sentry-dbid-4bdf6d53-8b4d-4766-b048-143c5e6d2cbd");}catch(e){}}();import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; - + "app.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4bdf6d53-8b4d-4766-b048-143c5e6d2cbd", e._sentryDebugIdIdentifier = "sentry-dbid-4bdf6d53-8b4d-4766-b048-143c5e6d2cbd"); + } catch (e) {} + })(); + import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { return /* @__PURE__ */ jsx("span", { @@ -14,7 +21,6 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { children: "Component A" }); } - //#endregion //#region src/app.jsx function App() { @@ -23,9 +29,9 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { children: [/* @__PURE__ */ jsx(ComponentA, {}), ";"] }); } - //#endregion - export { App as default };", + export { App as default }; + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts index fc9c8203..95816f81 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts @@ -5,8 +5,15 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0880f8a4-f072-4b80-b577-4bb7d5be4841",e._sentryDebugIdIdentifier="sentry-dbid-0880f8a4-f072-4b80-b577-4bb7d5be4841");}catch(e){}}();import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; - + "app.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "0880f8a4-f072-4b80-b577-4bb7d5be4841", e._sentryDebugIdIdentifier = "sentry-dbid-0880f8a4-f072-4b80-b577-4bb7d5be4841"); + } catch (e) {} + })(); + import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { return /* @__PURE__ */ jsx("span", { @@ -15,7 +22,6 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { children: "Component A" }); } - //#endregion //#region src/app.jsx function App() { @@ -28,9 +34,9 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { }), ";"] }); } - //#endregion - export { App as default };", + export { App as default }; + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/debugid-disabled.test.ts b/packages/integration-tests-next/fixtures/rolldown/debugid-disabled.test.ts index 34262984..0502dbb7 100644 --- a/packages/integration-tests-next/fixtures/rolldown/debugid-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/debugid-disabled.test.ts @@ -4,13 +4,13 @@ import { test } from "./utils"; test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` - { - "basic.js": "//#region src/basic.js - console.log("hello world"); + { + "basic.js": "//#region src/basic.js + console.log("hello world"); + //#endregion - //#endregion - //# sourceMappingURL=basic.js.map", - "basic.js.map": "{"version":3,"file":"basic.js","names":[],"sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"mappings":";AACA,QAAQ,IAAI,cAAc"}", - } - `); + //# sourceMappingURL=basic.js.map", + "basic.js.map": "{"version":3,"file":"basic.js","names":[],"sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"mappings":";AACA,QAAQ,IAAI,cAAc"}", + } + `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/debugids-already-injected.test.ts b/packages/integration-tests-next/fixtures/rolldown/debugids-already-injected.test.ts index 398dc71f..1ea310ac 100644 --- a/packages/integration-tests-next/fixtures/rolldown/debugids-already-injected.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/debugids-already-injected.test.ts @@ -8,14 +8,22 @@ test(import.meta.url, ({ runBundler, createTempDir }) => { runBundler({ SENTRY_TEST_OVERRIDE_TEMP_DIR: tempDir }); const files = readAllFiles(tempDir); expect(files).toMatchInlineSnapshot(` - { - "b699d9c1-b033-4536-aa25-233c92609b54-0.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); + { + "b699d9c1-b033-4536-aa25-233c92609b54-0.js": "//#region src/basic.js + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); + //#endregion - //#endregion - //# debugId=b699d9c1-b033-4536-aa25-233c92609b54 - //# sourceMappingURL=basic.js.map", - "b699d9c1-b033-4536-aa25-233c92609b54-0.js.map": "{"version":3,"file":"basic.js","names":[],"sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"mappings":";scACA,OAAA,CAAQ,GAAA,CAAI,CAAA,KAAA,CAAA,KAAA,CAAA,CAAc","debugId":"b699d9c1-b033-4536-aa25-233c92609b54","debug_id":"b699d9c1-b033-4536-aa25-233c92609b54"}", - } - `); + //# debugId=b699d9c1-b033-4536-aa25-233c92609b54 + //# sourceMappingURL=basic.js.map", + "b699d9c1-b033-4536-aa25-233c92609b54-0.js.map": "{"version":3,"file":"basic.js","names":[],"sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,cAAc","debugId":"b699d9c1-b033-4536-aa25-233c92609b54","debug_id":"b699d9c1-b033-4536-aa25-233c92609b54"}", + } + `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/module-metadata.test.ts b/packages/integration-tests-next/fixtures/rolldown/module-metadata.test.ts index ece716eb..02d3c2a8 100644 --- a/packages/integration-tests-next/fixtures/rolldown/module-metadata.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/module-metadata.test.ts @@ -4,13 +4,31 @@ import { test } from "./utils"; test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` - { - "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[(new e.Error).stack]=function(e){for(var n=1;n { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` - { - "common.js": "//#region src/common.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3f33b953-1cf1-4c05-850d-3f5b805fa101",e._sentryDebugIdIdentifier="sentry-dbid-3f33b953-1cf1-4c05-850d-3f5b805fa101");}catch(e){}}();function add(a, b) { - return a + b; - } - - //#endregion - export { add as t };", - "entry1.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cbcd67c2-83a7-44e1-94e6-9a8ab161f162",e._sentryDebugIdIdentifier="sentry-dbid-cbcd67c2-83a7-44e1-94e6-9a8ab161f162");}catch(e){}}();import { t as add } from "./common.js"; - - //#region src/entry1.js - console.log(add(1, 2)); - - //#endregion", - "entry2.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a4f71127-2139-4e9f-af54-f35982254569",e._sentryDebugIdIdentifier="sentry-dbid-a4f71127-2139-4e9f-af54-f35982254569");}catch(e){}}();import { t as add } from "./common.js"; - - //#region src/entry2.js - console.log(add(2, 4)); - - //#endregion", - } - `); + { + "common.js": "//#region src/common.js + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "3f33b953-1cf1-4c05-850d-3f5b805fa101", e._sentryDebugIdIdentifier = "sentry-dbid-3f33b953-1cf1-4c05-850d-3f5b805fa101"); + } catch (e) {} + })(); + function add(a, b) { + return a + b; + } + //#endregion + export { add as t }; + ", + "entry1.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "cbcd67c2-83a7-44e1-94e6-9a8ab161f162", e._sentryDebugIdIdentifier = "sentry-dbid-cbcd67c2-83a7-44e1-94e6-9a8ab161f162"); + } catch (e) {} + })(); + import { t as add } from "./common.js"; + //#region src/entry1.js + console.log(add(1, 2)); + //#endregion + ", + "entry2.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "a4f71127-2139-4e9f-af54-f35982254569", e._sentryDebugIdIdentifier = "sentry-dbid-a4f71127-2139-4e9f-af54-f35982254569"); + } catch (e) {} + })(); + import { t as add } from "./common.js"; + //#region src/entry2.js + console.log(add(2, 4)); + //#endregion + ", + } + `); const output1 = runFileInNode("entry1.js"); expect(output1).toMatchInlineSnapshot(` diff --git a/packages/integration-tests-next/fixtures/rolldown/package.json b/packages/integration-tests-next/fixtures/rolldown/package.json index 7ac86b51..02097237 100644 --- a/packages/integration-tests-next/fixtures/rolldown/package.json +++ b/packages/integration-tests-next/fixtures/rolldown/package.json @@ -4,7 +4,7 @@ "private": true, "type": "module", "dependencies": { - "react": "^19.2.4", - "rolldown": "^1.0.0-rc.6" + "react": "19.2.4", + "rolldown": "1.0.0-rc.10" } } diff --git a/packages/integration-tests-next/fixtures/rolldown/query-param.test.ts b/packages/integration-tests-next/fixtures/rolldown/query-param.test.ts index 5b3a013a..f3e32364 100644 --- a/packages/integration-tests-next/fixtures/rolldown/query-param.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/query-param.test.ts @@ -11,24 +11,46 @@ test(import.meta.url, ({ runBundler, readOutputFiles, ctx }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "common.js?seP58q4g": "//#region src/common.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3f33b953-1cf1-4c05-850d-3f5b805fa101",e._sentryDebugIdIdentifier="sentry-dbid-3f33b953-1cf1-4c05-850d-3f5b805fa101");}catch(e){}}();function add(a, b) { + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "3f33b953-1cf1-4c05-850d-3f5b805fa101", e._sentryDebugIdIdentifier = "sentry-dbid-3f33b953-1cf1-4c05-850d-3f5b805fa101"); + } catch (e) {} + })(); + function add(a, b) { return a + b; } - //#endregion - export { add as t };", - "entry1.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="bf11f932-fe2b-4b54-97e0-45abde2a0d81",e._sentryDebugIdIdentifier="sentry-dbid-bf11f932-fe2b-4b54-97e0-45abde2a0d81");}catch(e){}}();import { t as add } from "./common.js?seP58q4g"; - + export { add as t }; + ", + "entry1.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "bf11f932-fe2b-4b54-97e0-45abde2a0d81", e._sentryDebugIdIdentifier = "sentry-dbid-bf11f932-fe2b-4b54-97e0-45abde2a0d81"); + } catch (e) {} + })(); + import { t as add } from "./common.js?seP58q4g"; //#region src/entry1.js console.log(add(1, 2)); - - //#endregion", - "entry2.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5aaa817b-a0e4-4c91-a4f4-aa8f3c26e66e",e._sentryDebugIdIdentifier="sentry-dbid-5aaa817b-a0e4-4c91-a4f4-aa8f3c26e66e");}catch(e){}}();import { t as add } from "./common.js?seP58q4g"; - + //#endregion + ", + "entry2.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "5aaa817b-a0e4-4c91-a4f4-aa8f3c26e66e", e._sentryDebugIdIdentifier = "sentry-dbid-5aaa817b-a0e4-4c91-a4f4-aa8f3c26e66e"); + } catch (e) {} + })(); + import { t as add } from "./common.js?seP58q4g"; //#region src/entry2.js console.log(add(2, 4)); - - //#endregion", + //#endregion + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/release-disabled.test.ts b/packages/integration-tests-next/fixtures/rolldown/release-disabled.test.ts index 18821086..8003ac69 100644 --- a/packages/integration-tests-next/fixtures/rolldown/release-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/release-disabled.test.ts @@ -6,9 +6,17 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - - //#endregion", + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); + //#endregion + ", "sentry-cli-mock.json": "["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], ["releases","finalize","CURRENT_SHA"], ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], diff --git a/packages/integration-tests-next/fixtures/rolldown/telemetry.test.ts b/packages/integration-tests-next/fixtures/rolldown/telemetry.test.ts index 7fe93c65..e89a87db 100644 --- a/packages/integration-tests-next/fixtures/rolldown/telemetry.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/telemetry.test.ts @@ -6,9 +6,17 @@ test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - - //#endregion", + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); + //#endregion + ", "sentry-telemetry.json": "[{"sent_at":"TIMESTAMP","sdk":{"name":"sentry.javascript.node","version":"8.30.0"}},[[{"type":"session"},{"sid":"UUID","init":false,"started":"TIMESTAMP","timestamp":"TIMESTAMP","status":"exited","errors":0,"duration":DURATION,"attrs":{"release":"PLUGIN_VERSION","environment":"production"}}]]], ", } diff --git a/packages/integration-tests-next/fixtures/rolldown/utils.ts b/packages/integration-tests-next/fixtures/rolldown/utils.ts index 3b00ad73..d858292e 100644 --- a/packages/integration-tests-next/fixtures/rolldown/utils.ts +++ b/packages/integration-tests-next/fixtures/rolldown/utils.ts @@ -27,7 +27,7 @@ export function test(url: string, callback: TestCallback) { rmSync(outDir, { recursive: true, force: true }); // Rolldown requires Node 20+ - if (NODE_MAJOR_VERSION <= 18) { + if (NODE_MAJOR_VERSION < 20) { // eslint-disable-next-line @typescript-eslint/no-empty-function vitestTest.skip(testName); } else { diff --git a/packages/integration-tests-next/fixtures/rollup3/package.json b/packages/integration-tests-next/fixtures/rollup3/package.json index 22b9c9ca..05362b62 100644 --- a/packages/integration-tests-next/fixtures/rollup3/package.json +++ b/packages/integration-tests-next/fixtures/rollup3/package.json @@ -4,9 +4,9 @@ "private": true, "type": "module", "dependencies": { - "react": "^19.2.4", - "rollup": "^3.30.0", - "@rollup/plugin-babel": "^6.0.4", - "@rollup/plugin-node-resolve": "^15.2.3" + "react": "19.2.4", + "rollup": "3.30.0", + "@rollup/plugin-babel": "6.0.4", + "@rollup/plugin-node-resolve": "15.2.3" } } diff --git a/packages/integration-tests-next/fixtures/rollup4/package.json b/packages/integration-tests-next/fixtures/rollup4/package.json index f1e28cea..a72690d0 100644 --- a/packages/integration-tests-next/fixtures/rollup4/package.json +++ b/packages/integration-tests-next/fixtures/rollup4/package.json @@ -4,9 +4,9 @@ "private": true, "type": "module", "dependencies": { - "react": "^19.2.4", - "rollup": "^4.59.0", - "@rollup/plugin-babel": "^6.0.4", + "react": "19.2.4", + "rollup": "4.59.0", + "@rollup/plugin-babel": "6.0.4", "@rollup/plugin-node-resolve": "16.0.3" } } diff --git a/packages/integration-tests-next/fixtures/utils.ts b/packages/integration-tests-next/fixtures/utils.ts index d6fd9d31..f5b11d57 100644 --- a/packages/integration-tests-next/fixtures/utils.ts +++ b/packages/integration-tests-next/fixtures/utils.ts @@ -34,7 +34,11 @@ export function readAllFiles(directory: string): Record { // We replace the current SHA with a placeholder to make snapshots deterministic contents = contents .replaceAll(CURRENT_SHA, "CURRENT_SHA") - .replaceAll(/"nodeVersion":\d+/g, `"nodeVersion":"NODE_VERSION"`); + .replaceAll(/"nodeVersion":\d+/g, `"nodeVersion":"NODE_VERSION"`) + .replaceAll(/"nodeVersion": \d+/g, `"nodeVersion":"NODE_VERSION"`) + .replaceAll(/nodeVersion:\d+/g, `nodeVersion:"NODE_VERSION"`) + .replaceAll(/nodeVersion: \d+/g, `nodeVersion:"NODE_VERSION"`); + // "nodeVersion": 24 // Normalize Windows stuff in .map paths if (entry.endsWith(".map")) { diff --git a/packages/integration-tests-next/fixtures/vite4/after-upload-deletion.config.ts b/packages/integration-tests-next/fixtures/vite4/after-upload-deletion.config.ts new file mode 100644 index 00000000..674c7e70 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/after-upload-deletion.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/after-upload-deletion.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/after-upload-deletion", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/after-upload-deletion.test.ts b/packages/integration-tests-next/fixtures/vite4/after-upload-deletion.test.ts new file mode 100644 index 00000000..ced3602e --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/after-upload-deletion.test.ts @@ -0,0 +1,25 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/application-key.config.ts b/packages/integration-tests-next/fixtures/vite4/application-key.config.ts new file mode 100644 index 00000000..ee524c7f --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/application-key.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/application-key.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/application-key", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/application-key.test.ts b/packages/integration-tests-next/fixtures/vite4/application-key.test.ts new file mode 100644 index 00000000..902f8657 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/application-key.test.ts @@ -0,0 +1,28 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + e._sentryModuleMetadata = e._sentryModuleMetadata || {}, e._sentryModuleMetadata[new e.Error().stack] = (function(e2) { + for (var n2 = 1; n2 < arguments.length; n2++) { + var a = arguments[n2]; + if (null != a) for (var t in a) a.hasOwnProperty(t) && (e2[t] = a[t]); + } + return e2; + })({}, e._sentryModuleMetadata[new e.Error().stack], { "_sentryBundlerPluginAppKey:1234567890abcdef": true }); + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/basic-release-disabled.config.ts b/packages/integration-tests-next/fixtures/vite4/basic-release-disabled.config.ts new file mode 100644 index 00000000..86242118 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/basic-release-disabled.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic-release-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic-release-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/basic-release-disabled.test.ts b/packages/integration-tests-next/fixtures/vite4/basic-release-disabled.test.ts new file mode 100644 index 00000000..eb87a858 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/basic-release-disabled.test.ts @@ -0,0 +1,20 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.config.ts b/packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.config.ts new file mode 100644 index 00000000..312b7da1 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic-sourcemaps.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic-sourcemaps", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.test.ts b/packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.test.ts new file mode 100644 index 00000000..d99bd4e6 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/basic-sourcemaps.test.ts @@ -0,0 +1,31 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + "basic.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,aAAa;"}", + "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], + ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/basic.config.ts b/packages/integration-tests-next/fixtures/vite4/basic.config.ts new file mode 100644 index 00000000..ec202ecb --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/basic.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/basic.test.ts b/packages/integration-tests-next/fixtures/vite4/basic.test.ts new file mode 100644 index 00000000..5b79abcf --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/basic.test.ts @@ -0,0 +1,29 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], + ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/build-info.config.ts b/packages/integration-tests-next/fixtures/vite4/build-info.config.ts new file mode 100644 index 00000000..3f4081fd --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/build-info.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/build-info.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/build-info", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/build-info.test.ts b/packages/integration-tests-next/fixtures/vite4/build-info.test.ts new file mode 100644 index 00000000..5c4a12e5 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/build-info.test.ts @@ -0,0 +1,22 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "build-information-injection-test" }; + e.SENTRY_BUILD_INFO = { "deps": ["@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 4 }, "nodeVersion":"NODE_VERSION" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.config.ts b/packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.config.ts new file mode 100644 index 00000000..4feec9f2 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/bundle-size-optimizations.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/bundle.js", + output: { + dir: "out/bundle-size-optimizations", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.test.ts b/packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.test.ts new file mode 100644 index 00000000..a853e327 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/bundle-size-optimizations.test.ts @@ -0,0 +1,36 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "bundle.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "9ba2eb17-5b67-4bb4-bfcf-dca3e3b993b4", e._sentryDebugIdIdentifier = "sentry-dbid-9ba2eb17-5b67-4bb4-bfcf-dca3e3b993b4"); + } catch (e2) { + } + })(); + console.log( + JSON.stringify({ + debug: "b", + trace: "b", + replayCanvas: "a", + replayIframe: "a", + replayShadowDom: "a", + replayWorker: "a" + }) + ); + ", + } + `); + + const output = runFileInNode("bundle.js"); + expect(output).toMatchInlineSnapshot(` + "{"debug":"b","trace":"b","replayCanvas":"a","replayIframe":"a","replayShadowDom":"a","replayWorker":"a"} + " + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.config.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.config.ts new file mode 100644 index 00000000..ae087808 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation-disabled.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react({ jsxRuntime: "automatic" }), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts new file mode 100644 index 00000000..669aebae --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts @@ -0,0 +1,21 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + } catch (e2) { + } + })(); + import "../../../../../node_modules/react/jsx-dev-runtime.js"; + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation-next.config.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation-next.config.ts new file mode 100644 index 00000000..fee75871 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation-next.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation-next.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation-next", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react({ jsxRuntime: "automatic" }), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts new file mode 100644 index 00000000..669aebae --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts @@ -0,0 +1,21 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + } catch (e2) { + } + })(); + import "../../../../../node_modules/react/jsx-dev-runtime.js"; + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation.config.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation.config.ts new file mode 100644 index 00000000..f51fcde8 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react(), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts new file mode 100644 index 00000000..669aebae --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts @@ -0,0 +1,21 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + } catch (e2) { + } + })(); + import "../../../../../node_modules/react/jsx-dev-runtime.js"; + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/debugid-disabled.config.ts b/packages/integration-tests-next/fixtures/vite4/debugid-disabled.config.ts new file mode 100644 index 00000000..c70b0407 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/debugid-disabled.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/debugid-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/debugid-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/debugid-disabled.test.ts b/packages/integration-tests-next/fixtures/vite4/debugid-disabled.test.ts new file mode 100644 index 00000000..1c99d55f --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/debugid-disabled.test.ts @@ -0,0 +1,14 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + "basic.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":"AACA,QAAQ,IAAI,aAAa;"}", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts b/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts new file mode 100644 index 00000000..f3dfcb91 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts @@ -0,0 +1,19 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/debugids-already-injected.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/debugids-already-injected", + entryFileNames: "[name].js", + sourcemapDebugIds: true, + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts b/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts new file mode 100644 index 00000000..5735e771 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts @@ -0,0 +1,28 @@ +import { expect } from "vitest"; +import { readAllFiles } from "../utils"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, createTempDir }) => { + const tempDir = createTempDir(); + + runBundler({ SENTRY_TEST_OVERRIDE_TEMP_DIR: tempDir }); + const files = readAllFiles(tempDir); + expect(files).toMatchInlineSnapshot(` + { + "252e0338-8927-4f52-bd57-188131defd0f-0.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# debugId=252e0338-8927-4f52-bd57-188131defd0f + //# sourceMappingURL=basic.js.map + ", + "252e0338-8927-4f52-bd57-188131defd0f-0.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,aAAa;","debugId":"252e0338-8927-4f52-bd57-188131defd0f","debug_id":"252e0338-8927-4f52-bd57-188131defd0f"}", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/module-metadata.config.ts b/packages/integration-tests-next/fixtures/vite4/module-metadata.config.ts new file mode 100644 index 00000000..b3612f98 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/module-metadata.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/module-metadata.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/module-metadata", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/module-metadata.test.ts b/packages/integration-tests-next/fixtures/vite4/module-metadata.test.ts new file mode 100644 index 00000000..66fb3b11 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/module-metadata.test.ts @@ -0,0 +1,31 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + e._sentryModuleMetadata = e._sentryModuleMetadata || {}, e._sentryModuleMetadata[new e.Error().stack] = (function(e2) { + for (var n2 = 1; n2 < arguments.length; n2++) { + var a = arguments[n2]; + if (null != a) for (var t in a) a.hasOwnProperty(t) && (e2[t] = a[t]); + } + return e2; + })({}, e._sentryModuleMetadata[new e.Error().stack], { "something": "value", "another": 999 }); + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/multiple-entry-points.config.ts b/packages/integration-tests-next/fixtures/vite4/multiple-entry-points.config.ts new file mode 100644 index 00000000..ab300996 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/multiple-entry-points.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/multiple-entry-points.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: ["src/entry1.js", "src/entry2.js"], + output: { + dir: "out/multiple-entry-points", + chunkFileNames: "[name].js", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/multiple-entry-points.test.ts b/packages/integration-tests-next/fixtures/vite4/multiple-entry-points.test.ts new file mode 100644 index 00000000..0ea77c27 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/multiple-entry-points.test.ts @@ -0,0 +1,58 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "common.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d6522b10-3189-4ceb-b9e3-9764b0420211", e._sentryDebugIdIdentifier = "sentry-dbid-d6522b10-3189-4ceb-b9e3-9764b0420211"); + } catch (e2) { + } + })(); + function add(a, b) { + return a + b; + } + export { + add as a + }; + ", + "entry1.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "462efaa9-6efa-471b-94ae-88b2852f0c20", e._sentryDebugIdIdentifier = "sentry-dbid-462efaa9-6efa-471b-94ae-88b2852f0c20"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js"; + console.log(add(1, 2)); + ", + "entry2.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "0231818d-9e30-4d5b-94a9-3da56ffd79af", e._sentryDebugIdIdentifier = "sentry-dbid-0231818d-9e30-4d5b-94a9-3da56ffd79af"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js"; + console.log(add(2, 4)); + ", + } + `); + + const output1 = runFileInNode("entry1.js"); + expect(output1).toMatchInlineSnapshot(` + "3 + " + `); + const output2 = runFileInNode("entry2.js"); + expect(output2).toMatchInlineSnapshot(` + "6 + " + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/package.json b/packages/integration-tests-next/fixtures/vite4/package.json new file mode 100644 index 00000000..c0a8f488 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/package.json @@ -0,0 +1,11 @@ +{ + "name": "vite4-integration-tests", + "version": "1.0.0", + "private": true, + "type": "module", + "dependencies": { + "react": "19.2.4", + "vite": "4.5.14", + "@vitejs/plugin-react": "5.2.0" + } +} diff --git a/packages/integration-tests-next/fixtures/vite4/query-param.config.ts b/packages/integration-tests-next/fixtures/vite4/query-param.config.ts new file mode 100644 index 00000000..7952c040 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/query-param.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/query-param.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: ["src/entry1.js", "src/entry2.js"], + output: { + dir: "out/query-param", + chunkFileNames: "[name].js?seP58q4g", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/query-param.test.ts b/packages/integration-tests-next/fixtures/vite4/query-param.test.ts new file mode 100644 index 00000000..b7def387 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/query-param.test.ts @@ -0,0 +1,55 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, ctx }) => { + if (process.platform === "win32") { + ctx.skip("Query params do not work in paths on Windows"); + return; + } + + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "common.js?seP58q4g": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d6522b10-3189-4ceb-b9e3-9764b0420211", e._sentryDebugIdIdentifier = "sentry-dbid-d6522b10-3189-4ceb-b9e3-9764b0420211"); + } catch (e2) { + } + })(); + function add(a, b) { + return a + b; + } + export { + add as a + }; + ", + "entry1.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "161db429-4399-479c-9466-6ff8ad3344f9", e._sentryDebugIdIdentifier = "sentry-dbid-161db429-4399-479c-9466-6ff8ad3344f9"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js?seP58q4g"; + console.log(add(1, 2)); + ", + "entry2.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "a3bc51c0-20dc-4a52-a69a-6a43acf7cd65", e._sentryDebugIdIdentifier = "sentry-dbid-a3bc51c0-20dc-4a52-a69a-6a43acf7cd65"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js?seP58q4g"; + console.log(add(2, 4)); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/release-disabled.config.ts b/packages/integration-tests-next/fixtures/vite4/release-disabled.config.ts new file mode 100644 index 00000000..cb5c4c06 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/release-disabled.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/release-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/release-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/release-disabled.test.ts b/packages/integration-tests-next/fixtures/vite4/release-disabled.test.ts new file mode 100644 index 00000000..82038026 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/release-disabled.test.ts @@ -0,0 +1,25 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-cli-mock.json": "["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/src/app.jsx b/packages/integration-tests-next/fixtures/vite4/src/app.jsx new file mode 100644 index 00000000..614d38c8 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/src/app.jsx @@ -0,0 +1,9 @@ +import { ComponentA } from "./component-a"; + +export default function App() { + return ( + + ; + + ); +} diff --git a/packages/integration-tests-next/fixtures/vite4/src/basic.js b/packages/integration-tests-next/fixtures/vite4/src/basic.js new file mode 100644 index 00000000..7ef02afb --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/src/basic.js @@ -0,0 +1,2 @@ +// eslint-disable-next-line no-console +console.log("hello world"); diff --git a/packages/integration-tests-next/fixtures/vite4/src/bundle.js b/packages/integration-tests-next/fixtures/vite4/src/bundle.js new file mode 100644 index 00000000..0d62e559 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/src/bundle.js @@ -0,0 +1,10 @@ +console.log( + JSON.stringify({ + debug: __SENTRY_DEBUG__ ? "a" : "b", + trace: __SENTRY_TRACING__ ? "a" : "b", + replayCanvas: __RRWEB_EXCLUDE_CANVAS__ ? "a" : "b", + replayIframe: __RRWEB_EXCLUDE_IFRAME__ ? "a" : "b", + replayShadowDom: __RRWEB_EXCLUDE_SHADOW_DOM__ ? "a" : "b", + replayWorker: __SENTRY_EXCLUDE_REPLAY_WORKER__ ? "a" : "b", + }) +); diff --git a/packages/integration-tests-next/fixtures/vite4/src/common.js b/packages/integration-tests-next/fixtures/vite4/src/common.js new file mode 100644 index 00000000..7d658310 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/src/common.js @@ -0,0 +1,3 @@ +export function add(a, b) { + return a + b; +} diff --git a/packages/integration-tests-next/fixtures/vite4/src/component-a.jsx b/packages/integration-tests-next/fixtures/vite4/src/component-a.jsx new file mode 100644 index 00000000..5d57ab22 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/src/component-a.jsx @@ -0,0 +1,3 @@ +export function ComponentA() { + return Component A; +} diff --git a/packages/integration-tests-next/fixtures/vite4/src/entry1.js b/packages/integration-tests-next/fixtures/vite4/src/entry1.js new file mode 100644 index 00000000..48081666 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/src/entry1.js @@ -0,0 +1,3 @@ +import { add } from "./common"; + +console.log(add(1, 2)); diff --git a/packages/integration-tests-next/fixtures/vite4/src/entry2.js b/packages/integration-tests-next/fixtures/vite4/src/entry2.js new file mode 100644 index 00000000..f64af1ea --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/src/entry2.js @@ -0,0 +1,3 @@ +import { add } from "./common"; + +console.log(add(2, 4)); diff --git a/packages/integration-tests-next/fixtures/vite4/telemetry.config.ts b/packages/integration-tests-next/fixtures/vite4/telemetry.config.ts new file mode 100644 index 00000000..c02f3a57 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/telemetry.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/telemetry.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/telemetry", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite4/telemetry.test.ts b/packages/integration-tests-next/fixtures/vite4/telemetry.test.ts new file mode 100644 index 00000000..f02b90e0 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/telemetry.test.ts @@ -0,0 +1,26 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-telemetry.json": "[{"sent_at":"TIMESTAMP","sdk":{"name":"sentry.javascript.node","version":"8.30.0"}},[[{"type":"session"},{"sid":"UUID","init":false,"started":"TIMESTAMP","timestamp":"TIMESTAMP","status":"exited","errors":0,"duration":DURATION,"attrs":{"release":"PLUGIN_VERSION","environment":"production"}}]]], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite4/utils.ts b/packages/integration-tests-next/fixtures/vite4/utils.ts new file mode 100644 index 00000000..7386b158 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite4/utils.ts @@ -0,0 +1,62 @@ +import { basename, dirname, join } from "node:path"; +import { createTempDir, readAllFiles, runBundler } from "../utils"; +import { fileURLToPath } from "node:url"; +import { rmSync } from "node:fs"; +import { TestContext, test as vitestTest } from "vitest"; +import { execSync } from "node:child_process"; + +const cwd = dirname(fileURLToPath(import.meta.url)); +const NODE_MAJOR_VERSION = parseInt(process.versions.node.split(".")[0] || "0", 10); + +type TestCallback = (props: { + outDir: string; + runBundler: (env?: Record) => void; + readOutputFiles: () => Record; + runFileInNode: (file: string) => string; + createTempDir: () => string; + ctx: TestContext; +}) => void | Promise; + +export function test(url: string, callback: TestCallback) { + const filePath = fileURLToPath(url); + const filename = basename(filePath); + const testName = filename.replace(/\.test\.ts$/, ""); + const outDir = join(cwd, "out", testName); + + // Clear the output directory before running the test + rmSync(outDir, { recursive: true, force: true }); + + // Vite v8 requires Node 20+ + if (NODE_MAJOR_VERSION < 20) { + // eslint-disable-next-line @typescript-eslint/no-empty-function + vitestTest.skip(testName); + } else { + vitestTest(`Vite v4 > ${testName}`, (ctx) => + callback({ + outDir, + runBundler: (env) => + runBundler( + `vite build --config ${testName}.config.ts`, + { + cwd, + env: { + ...process.env, + ...env, + }, + }, + outDir + ), + readOutputFiles: () => readAllFiles(outDir), + runFileInNode: (file) => { + const fullPath = join(outDir, file); + return execSync(`node ${fullPath}`, { + cwd, + env: { ...process.env, NO_COLOR: "1", FORCE_COLOR: "0" }, + }).toString(); + }, + createTempDir: () => createTempDir(), + ctx, + }) + ); + } +} diff --git a/packages/integration-tests-next/fixtures/vite7/after-upload-deletion.config.ts b/packages/integration-tests-next/fixtures/vite7/after-upload-deletion.config.ts new file mode 100644 index 00000000..674c7e70 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/after-upload-deletion.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/after-upload-deletion.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/after-upload-deletion", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/after-upload-deletion.test.ts b/packages/integration-tests-next/fixtures/vite7/after-upload-deletion.test.ts new file mode 100644 index 00000000..ced3602e --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/after-upload-deletion.test.ts @@ -0,0 +1,25 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/application-key.config.ts b/packages/integration-tests-next/fixtures/vite7/application-key.config.ts new file mode 100644 index 00000000..ee524c7f --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/application-key.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/application-key.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/application-key", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/application-key.test.ts b/packages/integration-tests-next/fixtures/vite7/application-key.test.ts new file mode 100644 index 00000000..902f8657 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/application-key.test.ts @@ -0,0 +1,28 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + e._sentryModuleMetadata = e._sentryModuleMetadata || {}, e._sentryModuleMetadata[new e.Error().stack] = (function(e2) { + for (var n2 = 1; n2 < arguments.length; n2++) { + var a = arguments[n2]; + if (null != a) for (var t in a) a.hasOwnProperty(t) && (e2[t] = a[t]); + } + return e2; + })({}, e._sentryModuleMetadata[new e.Error().stack], { "_sentryBundlerPluginAppKey:1234567890abcdef": true }); + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/basic-release-disabled.config.ts b/packages/integration-tests-next/fixtures/vite7/basic-release-disabled.config.ts new file mode 100644 index 00000000..86242118 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/basic-release-disabled.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic-release-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic-release-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/basic-release-disabled.test.ts b/packages/integration-tests-next/fixtures/vite7/basic-release-disabled.test.ts new file mode 100644 index 00000000..eb87a858 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/basic-release-disabled.test.ts @@ -0,0 +1,20 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.config.ts b/packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.config.ts new file mode 100644 index 00000000..312b7da1 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic-sourcemaps.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic-sourcemaps", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.test.ts b/packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.test.ts new file mode 100644 index 00000000..d99bd4e6 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/basic-sourcemaps.test.ts @@ -0,0 +1,31 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + "basic.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,aAAa;"}", + "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], + ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/basic.config.ts b/packages/integration-tests-next/fixtures/vite7/basic.config.ts new file mode 100644 index 00000000..ec202ecb --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/basic.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/basic.test.ts b/packages/integration-tests-next/fixtures/vite7/basic.test.ts new file mode 100644 index 00000000..5b79abcf --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/basic.test.ts @@ -0,0 +1,29 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], + ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/build-info.config.ts b/packages/integration-tests-next/fixtures/vite7/build-info.config.ts new file mode 100644 index 00000000..3f4081fd --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/build-info.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/build-info.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/build-info", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/build-info.test.ts b/packages/integration-tests-next/fixtures/vite7/build-info.test.ts new file mode 100644 index 00000000..7c4e9a2a --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/build-info.test.ts @@ -0,0 +1,22 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "build-information-injection-test" }; + e.SENTRY_BUILD_INFO = { "deps": ["@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 7 }, "nodeVersion":"NODE_VERSION" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.config.ts b/packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.config.ts new file mode 100644 index 00000000..4feec9f2 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/bundle-size-optimizations.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/bundle.js", + output: { + dir: "out/bundle-size-optimizations", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.test.ts b/packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.test.ts new file mode 100644 index 00000000..a853e327 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/bundle-size-optimizations.test.ts @@ -0,0 +1,36 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "bundle.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "9ba2eb17-5b67-4bb4-bfcf-dca3e3b993b4", e._sentryDebugIdIdentifier = "sentry-dbid-9ba2eb17-5b67-4bb4-bfcf-dca3e3b993b4"); + } catch (e2) { + } + })(); + console.log( + JSON.stringify({ + debug: "b", + trace: "b", + replayCanvas: "a", + replayIframe: "a", + replayShadowDom: "a", + replayWorker: "a" + }) + ); + ", + } + `); + + const output = runFileInNode("bundle.js"); + expect(output).toMatchInlineSnapshot(` + "{"debug":"b","trace":"b","replayCanvas":"a","replayIframe":"a","replayShadowDom":"a","replayWorker":"a"} + " + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.config.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.config.ts new file mode 100644 index 00000000..ae087808 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation-disabled.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react({ jsxRuntime: "automatic" }), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts new file mode 100644 index 00000000..669aebae --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts @@ -0,0 +1,21 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + } catch (e2) { + } + })(); + import "../../../../../node_modules/react/jsx-dev-runtime.js"; + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation-next.config.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation-next.config.ts new file mode 100644 index 00000000..fee75871 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation-next.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation-next.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation-next", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react({ jsxRuntime: "automatic" }), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts new file mode 100644 index 00000000..669aebae --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts @@ -0,0 +1,21 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + } catch (e2) { + } + })(); + import "../../../../../node_modules/react/jsx-dev-runtime.js"; + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation.config.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation.config.ts new file mode 100644 index 00000000..f51fcde8 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react(), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts new file mode 100644 index 00000000..669aebae --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts @@ -0,0 +1,21 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + } catch (e2) { + } + })(); + import "../../../../../node_modules/react/jsx-dev-runtime.js"; + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/debugid-disabled.config.ts b/packages/integration-tests-next/fixtures/vite7/debugid-disabled.config.ts new file mode 100644 index 00000000..c70b0407 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/debugid-disabled.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/debugid-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/debugid-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/debugid-disabled.test.ts b/packages/integration-tests-next/fixtures/vite7/debugid-disabled.test.ts new file mode 100644 index 00000000..1c99d55f --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/debugid-disabled.test.ts @@ -0,0 +1,14 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + "basic.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":"AACA,QAAQ,IAAI,aAAa;"}", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/debugids-already-injected.config.ts b/packages/integration-tests-next/fixtures/vite7/debugids-already-injected.config.ts new file mode 100644 index 00000000..f3dfcb91 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/debugids-already-injected.config.ts @@ -0,0 +1,19 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/debugids-already-injected.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/debugids-already-injected", + entryFileNames: "[name].js", + sourcemapDebugIds: true, + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/debugids-already-injected.test.ts b/packages/integration-tests-next/fixtures/vite7/debugids-already-injected.test.ts new file mode 100644 index 00000000..5735e771 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/debugids-already-injected.test.ts @@ -0,0 +1,28 @@ +import { expect } from "vitest"; +import { readAllFiles } from "../utils"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, createTempDir }) => { + const tempDir = createTempDir(); + + runBundler({ SENTRY_TEST_OVERRIDE_TEMP_DIR: tempDir }); + const files = readAllFiles(tempDir); + expect(files).toMatchInlineSnapshot(` + { + "252e0338-8927-4f52-bd57-188131defd0f-0.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# debugId=252e0338-8927-4f52-bd57-188131defd0f + //# sourceMappingURL=basic.js.map + ", + "252e0338-8927-4f52-bd57-188131defd0f-0.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,aAAa;","debugId":"252e0338-8927-4f52-bd57-188131defd0f","debug_id":"252e0338-8927-4f52-bd57-188131defd0f"}", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/module-metadata.config.ts b/packages/integration-tests-next/fixtures/vite7/module-metadata.config.ts new file mode 100644 index 00000000..b3612f98 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/module-metadata.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/module-metadata.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/module-metadata", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/module-metadata.test.ts b/packages/integration-tests-next/fixtures/vite7/module-metadata.test.ts new file mode 100644 index 00000000..66fb3b11 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/module-metadata.test.ts @@ -0,0 +1,31 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + e._sentryModuleMetadata = e._sentryModuleMetadata || {}, e._sentryModuleMetadata[new e.Error().stack] = (function(e2) { + for (var n2 = 1; n2 < arguments.length; n2++) { + var a = arguments[n2]; + if (null != a) for (var t in a) a.hasOwnProperty(t) && (e2[t] = a[t]); + } + return e2; + })({}, e._sentryModuleMetadata[new e.Error().stack], { "something": "value", "another": 999 }); + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/multiple-entry-points.config.ts b/packages/integration-tests-next/fixtures/vite7/multiple-entry-points.config.ts new file mode 100644 index 00000000..ab300996 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/multiple-entry-points.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/multiple-entry-points.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: ["src/entry1.js", "src/entry2.js"], + output: { + dir: "out/multiple-entry-points", + chunkFileNames: "[name].js", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/multiple-entry-points.test.ts b/packages/integration-tests-next/fixtures/vite7/multiple-entry-points.test.ts new file mode 100644 index 00000000..0ea77c27 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/multiple-entry-points.test.ts @@ -0,0 +1,58 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "common.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d6522b10-3189-4ceb-b9e3-9764b0420211", e._sentryDebugIdIdentifier = "sentry-dbid-d6522b10-3189-4ceb-b9e3-9764b0420211"); + } catch (e2) { + } + })(); + function add(a, b) { + return a + b; + } + export { + add as a + }; + ", + "entry1.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "462efaa9-6efa-471b-94ae-88b2852f0c20", e._sentryDebugIdIdentifier = "sentry-dbid-462efaa9-6efa-471b-94ae-88b2852f0c20"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js"; + console.log(add(1, 2)); + ", + "entry2.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "0231818d-9e30-4d5b-94a9-3da56ffd79af", e._sentryDebugIdIdentifier = "sentry-dbid-0231818d-9e30-4d5b-94a9-3da56ffd79af"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js"; + console.log(add(2, 4)); + ", + } + `); + + const output1 = runFileInNode("entry1.js"); + expect(output1).toMatchInlineSnapshot(` + "3 + " + `); + const output2 = runFileInNode("entry2.js"); + expect(output2).toMatchInlineSnapshot(` + "6 + " + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/package.json b/packages/integration-tests-next/fixtures/vite7/package.json new file mode 100644 index 00000000..9b9ecd80 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/package.json @@ -0,0 +1,11 @@ +{ + "name": "vite7-integration-tests", + "version": "1.0.0", + "private": true, + "type": "module", + "dependencies": { + "react": "19.2.4", + "vite": "7.3.1", + "@vitejs/plugin-react": "5.2.0" + } +} diff --git a/packages/integration-tests-next/fixtures/vite7/query-param.config.ts b/packages/integration-tests-next/fixtures/vite7/query-param.config.ts new file mode 100644 index 00000000..7952c040 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/query-param.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/query-param.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: ["src/entry1.js", "src/entry2.js"], + output: { + dir: "out/query-param", + chunkFileNames: "[name].js?seP58q4g", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/query-param.test.ts b/packages/integration-tests-next/fixtures/vite7/query-param.test.ts new file mode 100644 index 00000000..b7def387 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/query-param.test.ts @@ -0,0 +1,55 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, ctx }) => { + if (process.platform === "win32") { + ctx.skip("Query params do not work in paths on Windows"); + return; + } + + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "common.js?seP58q4g": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d6522b10-3189-4ceb-b9e3-9764b0420211", e._sentryDebugIdIdentifier = "sentry-dbid-d6522b10-3189-4ceb-b9e3-9764b0420211"); + } catch (e2) { + } + })(); + function add(a, b) { + return a + b; + } + export { + add as a + }; + ", + "entry1.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "161db429-4399-479c-9466-6ff8ad3344f9", e._sentryDebugIdIdentifier = "sentry-dbid-161db429-4399-479c-9466-6ff8ad3344f9"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js?seP58q4g"; + console.log(add(1, 2)); + ", + "entry2.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "a3bc51c0-20dc-4a52-a69a-6a43acf7cd65", e._sentryDebugIdIdentifier = "sentry-dbid-a3bc51c0-20dc-4a52-a69a-6a43acf7cd65"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js?seP58q4g"; + console.log(add(2, 4)); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/release-disabled.config.ts b/packages/integration-tests-next/fixtures/vite7/release-disabled.config.ts new file mode 100644 index 00000000..cb5c4c06 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/release-disabled.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/release-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/release-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/release-disabled.test.ts b/packages/integration-tests-next/fixtures/vite7/release-disabled.test.ts new file mode 100644 index 00000000..82038026 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/release-disabled.test.ts @@ -0,0 +1,25 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-cli-mock.json": "["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/src/app.jsx b/packages/integration-tests-next/fixtures/vite7/src/app.jsx new file mode 100644 index 00000000..614d38c8 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/src/app.jsx @@ -0,0 +1,9 @@ +import { ComponentA } from "./component-a"; + +export default function App() { + return ( + + ; + + ); +} diff --git a/packages/integration-tests-next/fixtures/vite7/src/basic.js b/packages/integration-tests-next/fixtures/vite7/src/basic.js new file mode 100644 index 00000000..7ef02afb --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/src/basic.js @@ -0,0 +1,2 @@ +// eslint-disable-next-line no-console +console.log("hello world"); diff --git a/packages/integration-tests-next/fixtures/vite7/src/bundle.js b/packages/integration-tests-next/fixtures/vite7/src/bundle.js new file mode 100644 index 00000000..0d62e559 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/src/bundle.js @@ -0,0 +1,10 @@ +console.log( + JSON.stringify({ + debug: __SENTRY_DEBUG__ ? "a" : "b", + trace: __SENTRY_TRACING__ ? "a" : "b", + replayCanvas: __RRWEB_EXCLUDE_CANVAS__ ? "a" : "b", + replayIframe: __RRWEB_EXCLUDE_IFRAME__ ? "a" : "b", + replayShadowDom: __RRWEB_EXCLUDE_SHADOW_DOM__ ? "a" : "b", + replayWorker: __SENTRY_EXCLUDE_REPLAY_WORKER__ ? "a" : "b", + }) +); diff --git a/packages/integration-tests-next/fixtures/vite7/src/common.js b/packages/integration-tests-next/fixtures/vite7/src/common.js new file mode 100644 index 00000000..7d658310 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/src/common.js @@ -0,0 +1,3 @@ +export function add(a, b) { + return a + b; +} diff --git a/packages/integration-tests-next/fixtures/vite7/src/component-a.jsx b/packages/integration-tests-next/fixtures/vite7/src/component-a.jsx new file mode 100644 index 00000000..5d57ab22 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/src/component-a.jsx @@ -0,0 +1,3 @@ +export function ComponentA() { + return Component A; +} diff --git a/packages/integration-tests-next/fixtures/vite7/src/entry1.js b/packages/integration-tests-next/fixtures/vite7/src/entry1.js new file mode 100644 index 00000000..48081666 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/src/entry1.js @@ -0,0 +1,3 @@ +import { add } from "./common"; + +console.log(add(1, 2)); diff --git a/packages/integration-tests-next/fixtures/vite7/src/entry2.js b/packages/integration-tests-next/fixtures/vite7/src/entry2.js new file mode 100644 index 00000000..f64af1ea --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/src/entry2.js @@ -0,0 +1,3 @@ +import { add } from "./common"; + +console.log(add(2, 4)); diff --git a/packages/integration-tests-next/fixtures/vite7/telemetry.config.ts b/packages/integration-tests-next/fixtures/vite7/telemetry.config.ts new file mode 100644 index 00000000..c02f3a57 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/telemetry.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/telemetry.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/telemetry", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite7/telemetry.test.ts b/packages/integration-tests-next/fixtures/vite7/telemetry.test.ts new file mode 100644 index 00000000..f02b90e0 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/telemetry.test.ts @@ -0,0 +1,26 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-telemetry.json": "[{"sent_at":"TIMESTAMP","sdk":{"name":"sentry.javascript.node","version":"8.30.0"}},[[{"type":"session"},{"sid":"UUID","init":false,"started":"TIMESTAMP","timestamp":"TIMESTAMP","status":"exited","errors":0,"duration":DURATION,"attrs":{"release":"PLUGIN_VERSION","environment":"production"}}]]], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite7/utils.ts b/packages/integration-tests-next/fixtures/vite7/utils.ts new file mode 100644 index 00000000..ceb01e6e --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite7/utils.ts @@ -0,0 +1,62 @@ +import { basename, dirname, join } from "node:path"; +import { createTempDir, readAllFiles, runBundler } from "../utils"; +import { fileURLToPath } from "node:url"; +import { rmSync } from "node:fs"; +import { TestContext, test as vitestTest } from "vitest"; +import { execSync } from "node:child_process"; + +const cwd = dirname(fileURLToPath(import.meta.url)); +const NODE_MAJOR_VERSION = parseInt(process.versions.node.split(".")[0] || "0", 10); + +type TestCallback = (props: { + outDir: string; + runBundler: (env?: Record) => void; + readOutputFiles: () => Record; + runFileInNode: (file: string) => string; + createTempDir: () => string; + ctx: TestContext; +}) => void | Promise; + +export function test(url: string, callback: TestCallback) { + const filePath = fileURLToPath(url); + const filename = basename(filePath); + const testName = filename.replace(/\.test\.ts$/, ""); + const outDir = join(cwd, "out", testName); + + // Clear the output directory before running the test + rmSync(outDir, { recursive: true, force: true }); + + // Vite v8 requires Node 20+ + if (NODE_MAJOR_VERSION < 20) { + // eslint-disable-next-line @typescript-eslint/no-empty-function + vitestTest.skip(testName); + } else { + vitestTest(`Vite v7 > ${testName}`, (ctx) => + callback({ + outDir, + runBundler: (env) => + runBundler( + `vite build --config ${testName}.config.ts`, + { + cwd, + env: { + ...process.env, + ...env, + }, + }, + outDir + ), + readOutputFiles: () => readAllFiles(outDir), + runFileInNode: (file) => { + const fullPath = join(outDir, file); + return execSync(`node ${fullPath}`, { + cwd, + env: { ...process.env, NO_COLOR: "1", FORCE_COLOR: "0" }, + }).toString(); + }, + createTempDir: () => createTempDir(), + ctx, + }) + ); + } +} diff --git a/packages/integration-tests-next/fixtures/vite8/after-upload-deletion.config.ts b/packages/integration-tests-next/fixtures/vite8/after-upload-deletion.config.ts new file mode 100644 index 00000000..674c7e70 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/after-upload-deletion.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/after-upload-deletion.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/after-upload-deletion", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/after-upload-deletion.test.ts b/packages/integration-tests-next/fixtures/vite8/after-upload-deletion.test.ts new file mode 100644 index 00000000..ced3602e --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/after-upload-deletion.test.ts @@ -0,0 +1,25 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/application-key.config.ts b/packages/integration-tests-next/fixtures/vite8/application-key.config.ts new file mode 100644 index 00000000..ee524c7f --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/application-key.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/application-key.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/application-key", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/application-key.test.ts b/packages/integration-tests-next/fixtures/vite8/application-key.test.ts new file mode 100644 index 00000000..902f8657 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/application-key.test.ts @@ -0,0 +1,28 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + e._sentryModuleMetadata = e._sentryModuleMetadata || {}, e._sentryModuleMetadata[new e.Error().stack] = (function(e2) { + for (var n2 = 1; n2 < arguments.length; n2++) { + var a = arguments[n2]; + if (null != a) for (var t in a) a.hasOwnProperty(t) && (e2[t] = a[t]); + } + return e2; + })({}, e._sentryModuleMetadata[new e.Error().stack], { "_sentryBundlerPluginAppKey:1234567890abcdef": true }); + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/basic-release-disabled.config.ts b/packages/integration-tests-next/fixtures/vite8/basic-release-disabled.config.ts new file mode 100644 index 00000000..86242118 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/basic-release-disabled.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic-release-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic-release-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/basic-release-disabled.test.ts b/packages/integration-tests-next/fixtures/vite8/basic-release-disabled.test.ts new file mode 100644 index 00000000..eb87a858 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/basic-release-disabled.test.ts @@ -0,0 +1,20 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.config.ts b/packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.config.ts new file mode 100644 index 00000000..312b7da1 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic-sourcemaps.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic-sourcemaps", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.test.ts b/packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.test.ts new file mode 100644 index 00000000..d99bd4e6 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/basic-sourcemaps.test.ts @@ -0,0 +1,31 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + "basic.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,aAAa;"}", + "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], + ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/basic.config.ts b/packages/integration-tests-next/fixtures/vite8/basic.config.ts new file mode 100644 index 00000000..ec202ecb --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/basic.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/basic.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/basic", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/basic.test.ts b/packages/integration-tests-next/fixtures/vite8/basic.test.ts new file mode 100644 index 00000000..5b79abcf --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/basic.test.ts @@ -0,0 +1,29 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-cli-mock.json": "["releases","new","CURRENT_SHA"], + ["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/build-info.config.ts b/packages/integration-tests-next/fixtures/vite8/build-info.config.ts new file mode 100644 index 00000000..3f4081fd --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/build-info.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/build-info.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/build-info", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/build-info.test.ts b/packages/integration-tests-next/fixtures/vite8/build-info.test.ts new file mode 100644 index 00000000..89441f0a --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/build-info.test.ts @@ -0,0 +1,22 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "build-information-injection-test" }; + e.SENTRY_BUILD_INFO = { "deps": ["@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 8 }, "nodeVersion":"NODE_VERSION" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.config.ts b/packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.config.ts new file mode 100644 index 00000000..4feec9f2 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/bundle-size-optimizations.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/bundle.js", + output: { + dir: "out/bundle-size-optimizations", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.test.ts b/packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.test.ts new file mode 100644 index 00000000..a853e327 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/bundle-size-optimizations.test.ts @@ -0,0 +1,36 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "bundle.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "9ba2eb17-5b67-4bb4-bfcf-dca3e3b993b4", e._sentryDebugIdIdentifier = "sentry-dbid-9ba2eb17-5b67-4bb4-bfcf-dca3e3b993b4"); + } catch (e2) { + } + })(); + console.log( + JSON.stringify({ + debug: "b", + trace: "b", + replayCanvas: "a", + replayIframe: "a", + replayShadowDom: "a", + replayWorker: "a" + }) + ); + ", + } + `); + + const output = runFileInNode("bundle.js"); + expect(output).toMatchInlineSnapshot(` + "{"debug":"b","trace":"b","replayCanvas":"a","replayIframe":"a","replayShadowDom":"a","replayWorker":"a"} + " + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.config.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.config.ts new file mode 100644 index 00000000..ae087808 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation-disabled.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react({ jsxRuntime: "automatic" }), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts new file mode 100644 index 00000000..4abbe447 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts @@ -0,0 +1,12 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": " + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation-next.config.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation-next.config.ts new file mode 100644 index 00000000..fee75871 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation-next.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation-next.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation-next", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react({ jsxRuntime: "automatic" }), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts new file mode 100644 index 00000000..4abbe447 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts @@ -0,0 +1,12 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": " + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation.config.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation.config.ts new file mode 100644 index 00000000..f51fcde8 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation.config.ts @@ -0,0 +1,21 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/component-annotation.config.js"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/app.jsx", + // We exclude these to keep the snapshot small + external: [/node_modules/], + makeAbsoluteExternalsRelative: true, + output: { + dir: "out/component-annotation", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [react(), sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts new file mode 100644 index 00000000..4abbe447 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts @@ -0,0 +1,12 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "app.js": " + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/debugid-disabled.config.ts b/packages/integration-tests-next/fixtures/vite8/debugid-disabled.config.ts new file mode 100644 index 00000000..c70b0407 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/debugid-disabled.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/debugid-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/debugid-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/debugid-disabled.test.ts b/packages/integration-tests-next/fixtures/vite8/debugid-disabled.test.ts new file mode 100644 index 00000000..1c99d55f --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/debugid-disabled.test.ts @@ -0,0 +1,14 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "console.log("hello world"); + //# sourceMappingURL=basic.js.map + ", + "basic.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":"AACA,QAAQ,IAAI,aAAa;"}", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/debugids-already-injected.config.ts b/packages/integration-tests-next/fixtures/vite8/debugids-already-injected.config.ts new file mode 100644 index 00000000..f3dfcb91 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/debugids-already-injected.config.ts @@ -0,0 +1,19 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/debugids-already-injected.config.js"; + +export default defineConfig({ + build: { + minify: false, + sourcemap: true, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/debugids-already-injected", + entryFileNames: "[name].js", + sourcemapDebugIds: true, + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/debugids-already-injected.test.ts b/packages/integration-tests-next/fixtures/vite8/debugids-already-injected.test.ts new file mode 100644 index 00000000..5735e771 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/debugids-already-injected.test.ts @@ -0,0 +1,28 @@ +import { expect } from "vitest"; +import { readAllFiles } from "../utils"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, createTempDir }) => { + const tempDir = createTempDir(); + + runBundler({ SENTRY_TEST_OVERRIDE_TEMP_DIR: tempDir }); + const files = readAllFiles(tempDir); + expect(files).toMatchInlineSnapshot(` + { + "252e0338-8927-4f52-bd57-188131defd0f-0.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + //# debugId=252e0338-8927-4f52-bd57-188131defd0f + //# sourceMappingURL=basic.js.map + ", + "252e0338-8927-4f52-bd57-188131defd0f-0.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,aAAa;","debugId":"252e0338-8927-4f52-bd57-188131defd0f","debug_id":"252e0338-8927-4f52-bd57-188131defd0f"}", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/module-metadata.config.ts b/packages/integration-tests-next/fixtures/vite8/module-metadata.config.ts new file mode 100644 index 00000000..b3612f98 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/module-metadata.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/module-metadata.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/module-metadata", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/module-metadata.test.ts b/packages/integration-tests-next/fixtures/vite8/module-metadata.test.ts new file mode 100644 index 00000000..66fb3b11 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/module-metadata.test.ts @@ -0,0 +1,31 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + e._sentryModuleMetadata = e._sentryModuleMetadata || {}, e._sentryModuleMetadata[new e.Error().stack] = (function(e2) { + for (var n2 = 1; n2 < arguments.length; n2++) { + var a = arguments[n2]; + if (null != a) for (var t in a) a.hasOwnProperty(t) && (e2[t] = a[t]); + } + return e2; + })({}, e._sentryModuleMetadata[new e.Error().stack], { "something": "value", "another": 999 }); + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/multiple-entry-points.config.ts b/packages/integration-tests-next/fixtures/vite8/multiple-entry-points.config.ts new file mode 100644 index 00000000..ab300996 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/multiple-entry-points.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/multiple-entry-points.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: ["src/entry1.js", "src/entry2.js"], + output: { + dir: "out/multiple-entry-points", + chunkFileNames: "[name].js", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/multiple-entry-points.test.ts b/packages/integration-tests-next/fixtures/vite8/multiple-entry-points.test.ts new file mode 100644 index 00000000..0ea77c27 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/multiple-entry-points.test.ts @@ -0,0 +1,58 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "common.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d6522b10-3189-4ceb-b9e3-9764b0420211", e._sentryDebugIdIdentifier = "sentry-dbid-d6522b10-3189-4ceb-b9e3-9764b0420211"); + } catch (e2) { + } + })(); + function add(a, b) { + return a + b; + } + export { + add as a + }; + ", + "entry1.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "462efaa9-6efa-471b-94ae-88b2852f0c20", e._sentryDebugIdIdentifier = "sentry-dbid-462efaa9-6efa-471b-94ae-88b2852f0c20"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js"; + console.log(add(1, 2)); + ", + "entry2.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "0231818d-9e30-4d5b-94a9-3da56ffd79af", e._sentryDebugIdIdentifier = "sentry-dbid-0231818d-9e30-4d5b-94a9-3da56ffd79af"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js"; + console.log(add(2, 4)); + ", + } + `); + + const output1 = runFileInNode("entry1.js"); + expect(output1).toMatchInlineSnapshot(` + "3 + " + `); + const output2 = runFileInNode("entry2.js"); + expect(output2).toMatchInlineSnapshot(` + "6 + " + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/package.json b/packages/integration-tests-next/fixtures/vite8/package.json new file mode 100644 index 00000000..828e958d --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/package.json @@ -0,0 +1,11 @@ +{ + "name": "vite8-integration-tests", + "version": "1.0.0", + "private": true, + "type": "module", + "dependencies": { + "react": "19.2.4", + "vite": "8.0.1", + "@vitejs/plugin-react": "6.0.1" + } +} diff --git a/packages/integration-tests-next/fixtures/vite8/query-param.config.ts b/packages/integration-tests-next/fixtures/vite8/query-param.config.ts new file mode 100644 index 00000000..7952c040 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/query-param.config.ts @@ -0,0 +1,18 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/query-param.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: ["src/entry1.js", "src/entry2.js"], + output: { + dir: "out/query-param", + chunkFileNames: "[name].js?seP58q4g", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/query-param.test.ts b/packages/integration-tests-next/fixtures/vite8/query-param.test.ts new file mode 100644 index 00000000..b7def387 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/query-param.test.ts @@ -0,0 +1,55 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, ctx }) => { + if (process.platform === "win32") { + ctx.skip("Query params do not work in paths on Windows"); + return; + } + + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "common.js?seP58q4g": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d6522b10-3189-4ceb-b9e3-9764b0420211", e._sentryDebugIdIdentifier = "sentry-dbid-d6522b10-3189-4ceb-b9e3-9764b0420211"); + } catch (e2) { + } + })(); + function add(a, b) { + return a + b; + } + export { + add as a + }; + ", + "entry1.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "161db429-4399-479c-9466-6ff8ad3344f9", e._sentryDebugIdIdentifier = "sentry-dbid-161db429-4399-479c-9466-6ff8ad3344f9"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js?seP58q4g"; + console.log(add(1, 2)); + ", + "entry2.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "a3bc51c0-20dc-4a52-a69a-6a43acf7cd65", e._sentryDebugIdIdentifier = "sentry-dbid-a3bc51c0-20dc-4a52-a69a-6a43acf7cd65"); + } catch (e2) { + } + })(); + import { a as add } from "./common.js?seP58q4g"; + console.log(add(2, 4)); + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/release-disabled.config.ts b/packages/integration-tests-next/fixtures/vite8/release-disabled.config.ts new file mode 100644 index 00000000..cb5c4c06 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/release-disabled.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/release-disabled.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/release-disabled", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/release-disabled.test.ts b/packages/integration-tests-next/fixtures/vite8/release-disabled.test.ts new file mode 100644 index 00000000..82038026 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/release-disabled.test.ts @@ -0,0 +1,25 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-cli-mock.json": "["releases","set-commits","CURRENT_SHA","--auto","--ignore-missing"], + ["releases","finalize","CURRENT_SHA"], + ["sourcemaps","upload","-p","fake-project","--release","CURRENT_SHA","sentry-bundler-plugin-upload-path","--ignore","node_modules","--no-rewrite"], + ", + } + `); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/src/app.jsx b/packages/integration-tests-next/fixtures/vite8/src/app.jsx new file mode 100644 index 00000000..614d38c8 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/src/app.jsx @@ -0,0 +1,9 @@ +import { ComponentA } from "./component-a"; + +export default function App() { + return ( + + ; + + ); +} diff --git a/packages/integration-tests-next/fixtures/vite8/src/basic.js b/packages/integration-tests-next/fixtures/vite8/src/basic.js new file mode 100644 index 00000000..7ef02afb --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/src/basic.js @@ -0,0 +1,2 @@ +// eslint-disable-next-line no-console +console.log("hello world"); diff --git a/packages/integration-tests-next/fixtures/vite8/src/bundle.js b/packages/integration-tests-next/fixtures/vite8/src/bundle.js new file mode 100644 index 00000000..0d62e559 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/src/bundle.js @@ -0,0 +1,10 @@ +console.log( + JSON.stringify({ + debug: __SENTRY_DEBUG__ ? "a" : "b", + trace: __SENTRY_TRACING__ ? "a" : "b", + replayCanvas: __RRWEB_EXCLUDE_CANVAS__ ? "a" : "b", + replayIframe: __RRWEB_EXCLUDE_IFRAME__ ? "a" : "b", + replayShadowDom: __RRWEB_EXCLUDE_SHADOW_DOM__ ? "a" : "b", + replayWorker: __SENTRY_EXCLUDE_REPLAY_WORKER__ ? "a" : "b", + }) +); diff --git a/packages/integration-tests-next/fixtures/vite8/src/common.js b/packages/integration-tests-next/fixtures/vite8/src/common.js new file mode 100644 index 00000000..7d658310 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/src/common.js @@ -0,0 +1,3 @@ +export function add(a, b) { + return a + b; +} diff --git a/packages/integration-tests-next/fixtures/vite8/src/component-a.jsx b/packages/integration-tests-next/fixtures/vite8/src/component-a.jsx new file mode 100644 index 00000000..5d57ab22 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/src/component-a.jsx @@ -0,0 +1,3 @@ +export function ComponentA() { + return Component A; +} diff --git a/packages/integration-tests-next/fixtures/vite8/src/entry1.js b/packages/integration-tests-next/fixtures/vite8/src/entry1.js new file mode 100644 index 00000000..48081666 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/src/entry1.js @@ -0,0 +1,3 @@ +import { add } from "./common"; + +console.log(add(1, 2)); diff --git a/packages/integration-tests-next/fixtures/vite8/src/entry2.js b/packages/integration-tests-next/fixtures/vite8/src/entry2.js new file mode 100644 index 00000000..f64af1ea --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/src/entry2.js @@ -0,0 +1,3 @@ +import { add } from "./common"; + +console.log(add(2, 4)); diff --git a/packages/integration-tests-next/fixtures/vite8/telemetry.config.ts b/packages/integration-tests-next/fixtures/vite8/telemetry.config.ts new file mode 100644 index 00000000..c02f3a57 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/telemetry.config.ts @@ -0,0 +1,17 @@ +import { sentryVitePlugin } from "@sentry/vite-plugin"; +import { defineConfig } from "vite"; +import { sentryConfig } from "../configs/telemetry.config.js"; + +export default defineConfig({ + build: { + minify: false, + rollupOptions: { + input: "src/basic.js", + output: { + dir: "out/telemetry", + entryFileNames: "[name].js", + }, + }, + }, + plugins: [sentryVitePlugin(sentryConfig)], +}); diff --git a/packages/integration-tests-next/fixtures/vite8/telemetry.test.ts b/packages/integration-tests-next/fixtures/vite8/telemetry.test.ts new file mode 100644 index 00000000..f02b90e0 --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/telemetry.test.ts @@ -0,0 +1,26 @@ +import { expect } from "vitest"; +import { test } from "./utils"; + +test(import.meta.url, ({ runBundler, readOutputFiles, runFileInNode }) => { + runBundler(); + expect(readOutputFiles()).toMatchInlineSnapshot(` + { + "basic.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); + } catch (e2) { + } + })(); + console.log("hello world"); + ", + "sentry-telemetry.json": "[{"sent_at":"TIMESTAMP","sdk":{"name":"sentry.javascript.node","version":"8.30.0"}},[[{"type":"session"},{"sid":"UUID","init":false,"started":"TIMESTAMP","timestamp":"TIMESTAMP","status":"exited","errors":0,"duration":DURATION,"attrs":{"release":"PLUGIN_VERSION","environment":"production"}}]]], + ", + } + `); + + const output = runFileInNode("basic.js"); + expect(output).toBe("hello world\n"); +}); diff --git a/packages/integration-tests-next/fixtures/vite8/utils.ts b/packages/integration-tests-next/fixtures/vite8/utils.ts new file mode 100644 index 00000000..911fc7cc --- /dev/null +++ b/packages/integration-tests-next/fixtures/vite8/utils.ts @@ -0,0 +1,62 @@ +import { basename, dirname, join } from "node:path"; +import { createTempDir, readAllFiles, runBundler } from "../utils"; +import { fileURLToPath } from "node:url"; +import { rmSync } from "node:fs"; +import { TestContext, test as vitestTest } from "vitest"; +import { execSync } from "node:child_process"; + +const cwd = dirname(fileURLToPath(import.meta.url)); +const NODE_MAJOR_VERSION = parseInt(process.versions.node.split(".")[0] || "0", 10); + +type TestCallback = (props: { + outDir: string; + runBundler: (env?: Record) => void; + readOutputFiles: () => Record; + runFileInNode: (file: string) => string; + createTempDir: () => string; + ctx: TestContext; +}) => void | Promise; + +export function test(url: string, callback: TestCallback) { + const filePath = fileURLToPath(url); + const filename = basename(filePath); + const testName = filename.replace(/\.test\.ts$/, ""); + const outDir = join(cwd, "out", testName); + + // Clear the output directory before running the test + rmSync(outDir, { recursive: true, force: true }); + + // Vite v8 requires Node 20+ + if (NODE_MAJOR_VERSION < 20) { + // eslint-disable-next-line @typescript-eslint/no-empty-function + vitestTest.skip(testName); + } else { + vitestTest(`Vite v8 > ${testName}`, (ctx) => + callback({ + outDir, + runBundler: (env) => + runBundler( + `vite build --config ${testName}.config.ts`, + { + cwd, + env: { + ...process.env, + ...env, + }, + }, + outDir + ), + readOutputFiles: () => readAllFiles(outDir), + runFileInNode: (file) => { + const fullPath = join(outDir, file); + return execSync(`node ${fullPath}`, { + cwd, + env: { ...process.env, NO_COLOR: "1", FORCE_COLOR: "0" }, + }).toString(); + }, + createTempDir: () => createTempDir(), + ctx, + }) + ); + } +} diff --git a/packages/rollup-plugin/package.json b/packages/rollup-plugin/package.json index a2b1ffdb..e79c19e5 100644 --- a/packages/rollup-plugin/package.json +++ b/packages/rollup-plugin/package.json @@ -62,7 +62,7 @@ "eslint": "^8.18.0", "vitest": "^4.0.0", "premove": "^4.0.0", - "rolldown": "^1.0.0-rc.6", + "rolldown": "1.0.0-rc.10", "ts-node": "^10.9.1", "typescript": "^4.7.4" }, diff --git a/packages/vite-plugin/package.json b/packages/vite-plugin/package.json index c08b36d1..86b0ff47 100644 --- a/packages/vite-plugin/package.json +++ b/packages/vite-plugin/package.json @@ -58,7 +58,7 @@ "eslint": "^8.18.0", "vitest": "^4.0.0", "premove": "^4.0.0", - "rolldown": "^1.0.0-rc.6", + "rolldown": "1.0.0-rc.10", "ts-node": "^10.9.1", "typescript": "^4.7.4" }, diff --git a/packages/webpack-plugin/package.json b/packages/webpack-plugin/package.json index 4b7b643d..d90d15a3 100644 --- a/packages/webpack-plugin/package.json +++ b/packages/webpack-plugin/package.json @@ -63,7 +63,7 @@ "eslint": "^8.18.0", "vitest": "^4.0.0", "premove": "^4.0.0", - "rolldown": "^1.0.0-rc.6", + "rolldown": "1.0.0-rc.10", "ts-node": "^10.9.1", "typescript": "^4.7.4", "webpack": "5.0.0" diff --git a/yarn.lock b/yarn.lock index cfe932c8..6821ded9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,7 +2,7 @@ # yarn lockfile v1 -"@ampproject/remapping@^2.1.0", "@ampproject/remapping@^2.2.0": +"@ampproject/remapping@^2.1.0": version "2.2.1" resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== @@ -10,18 +10,19 @@ "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.16.7", "@babel/code-frame@^7.23.5": - version "7.23.5" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" - integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== +"@babel/code-frame@^7.16.7", "@babel/code-frame@^7.28.6", "@babel/code-frame@^7.29.0": + version "7.29.0" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz#7cd7a59f15b3cc0dcd803038f7792712a7d0b15c" + integrity sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw== dependencies: - "@babel/highlight" "^7.23.4" - chalk "^2.4.2" + "@babel/helper-validator-identifier" "^7.28.5" + js-tokens "^4.0.0" + picocolors "^1.1.1" -"@babel/compat-data@^7.23.5": - version "7.23.5" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" - integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== +"@babel/compat-data@^7.28.6": + version "7.29.0" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz#00d03e8c0ac24dd9be942c5370990cbe1f17d88d" + integrity sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg== "@babel/core@7.18.5": version "7.18.5" @@ -44,36 +45,37 @@ json5 "^2.2.1" semver "^6.3.0" -"@babel/core@^7.18.5", "@babel/core@^7.23.5": - version "7.24.0" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.24.0.tgz#56cbda6b185ae9d9bed369816a8f4423c5f2ff1b" - integrity sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@babel/helper-compilation-targets" "^7.23.6" - "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.24.0" - "@babel/parser" "^7.24.0" - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.0" - "@babel/types" "^7.24.0" +"@babel/core@^7.18.5", "@babel/core@^7.23.5", "@babel/core@^7.29.0": + version "7.29.0" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz#5286ad785df7f79d656e88ce86e650d16ca5f322" + integrity sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA== + dependencies: + "@babel/code-frame" "^7.29.0" + "@babel/generator" "^7.29.0" + "@babel/helper-compilation-targets" "^7.28.6" + "@babel/helper-module-transforms" "^7.28.6" + "@babel/helpers" "^7.28.6" + "@babel/parser" "^7.29.0" + "@babel/template" "^7.28.6" + "@babel/traverse" "^7.29.0" + "@babel/types" "^7.29.0" + "@jridgewell/remapping" "^2.3.5" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.18.2", "@babel/generator@^7.23.6": - version "7.23.6" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" - integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== +"@babel/generator@^7.18.2", "@babel/generator@^7.29.0": + version "7.29.1" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz#d09876290111abbb00ef962a7b83a5307fba0d50" + integrity sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw== dependencies: - "@babel/types" "^7.23.6" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" - jsesc "^2.5.1" + "@babel/parser" "^7.29.0" + "@babel/types" "^7.29.0" + "@jridgewell/gen-mapping" "^0.3.12" + "@jridgewell/trace-mapping" "^0.3.28" + jsesc "^3.0.2" "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" @@ -82,111 +84,73 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-compilation-targets@^7.18.2", "@babel/helper-compilation-targets@^7.23.6": - version "7.23.6" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" - integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== +"@babel/helper-compilation-targets@^7.18.2", "@babel/helper-compilation-targets@^7.28.6": + version "7.28.6" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz#32c4a3f41f12ed1532179b108a4d746e105c2b25" + integrity sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA== dependencies: - "@babel/compat-data" "^7.23.5" - "@babel/helper-validator-option" "^7.23.5" - browserslist "^4.22.2" + "@babel/compat-data" "^7.28.6" + "@babel/helper-validator-option" "^7.27.1" + browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-environment-visitor@^7.22.20": - version "7.22.20" - resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" - integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== - -"@babel/helper-function-name@^7.23.0": - version "7.23.0" - resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" - integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== - dependencies: - "@babel/template" "^7.22.15" - "@babel/types" "^7.23.0" - -"@babel/helper-hoist-variables@^7.22.5": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" - integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== - dependencies: - "@babel/types" "^7.22.5" - -"@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.22.15": - version "7.22.15" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== - dependencies: - "@babel/types" "^7.22.15" +"@babel/helper-globals@^7.28.0": + version "7.28.0" + resolved "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz#b9430df2aa4e17bc28665eadeae8aa1d985e6674" + integrity sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw== -"@babel/helper-module-transforms@^7.18.0", "@babel/helper-module-transforms@^7.23.3": - version "7.23.3" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" - integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== +"@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.28.6": + version "7.28.6" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz#60632cbd6ffb70b22823187201116762a03e2d5c" + integrity sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw== dependencies: - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-module-imports" "^7.22.15" - "@babel/helper-simple-access" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/helper-validator-identifier" "^7.22.20" - -"@babel/helper-plugin-utils@^7.22.5": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" - integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== + "@babel/traverse" "^7.28.6" + "@babel/types" "^7.28.6" -"@babel/helper-simple-access@^7.22.5": - version "7.22.5" - resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" - integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== +"@babel/helper-module-transforms@^7.18.0", "@babel/helper-module-transforms@^7.28.6": + version "7.28.6" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz#9312d9d9e56edc35aeb6e95c25d4106b50b9eb1e" + integrity sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA== dependencies: - "@babel/types" "^7.22.5" + "@babel/helper-module-imports" "^7.28.6" + "@babel/helper-validator-identifier" "^7.28.5" + "@babel/traverse" "^7.28.6" -"@babel/helper-split-export-declaration@^7.22.6": - version "7.22.6" - resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" - integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== - dependencies: - "@babel/types" "^7.22.5" +"@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.27.1": + version "7.28.6" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz#6f13ea251b68c8532e985fd532f28741a8af9ac8" + integrity sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug== -"@babel/helper-string-parser@^7.23.4": - version "7.23.4" - resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" - integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== +"@babel/helper-string-parser@^7.27.1": + version "7.27.1" + resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" + integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== -"@babel/helper-validator-identifier@^7.22.20": - version "7.22.20" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" - integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== +"@babel/helper-validator-identifier@^7.28.5": + version "7.28.5" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz#010b6938fab7cb7df74aa2bbc06aa503b8fe5fb4" + integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q== -"@babel/helper-validator-option@^7.22.15", "@babel/helper-validator-option@^7.23.5": - version "7.23.5" - resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" - integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== +"@babel/helper-validator-option@^7.22.15", "@babel/helper-validator-option@^7.27.1": + version "7.27.1" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz#fa52f5b1e7db1ab049445b421c4471303897702f" + integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== -"@babel/helpers@^7.18.2", "@babel/helpers@^7.24.0": - version "7.24.0" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.0.tgz#a3dd462b41769c95db8091e49cfe019389a9409b" - integrity sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA== +"@babel/helpers@^7.18.2", "@babel/helpers@^7.28.6": + version "7.29.2" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz#9cfbccb02b8e229892c0b07038052cc1a8709c49" + integrity sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw== dependencies: - "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.0" - "@babel/types" "^7.24.0" + "@babel/template" "^7.28.6" + "@babel/types" "^7.29.0" -"@babel/highlight@^7.23.4": - version "7.23.4" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" - integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== +"@babel/parser@^7.1.0", "@babel/parser@^7.18.5", "@babel/parser@^7.20.7", "@babel/parser@^7.28.6", "@babel/parser@^7.29.0": + version "7.29.2" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz#58bd50b9a7951d134988a1ae177a35ef9a703ba1" + integrity sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA== dependencies: - "@babel/helper-validator-identifier" "^7.22.20" - chalk "^2.4.2" - js-tokens "^4.0.0" - -"@babel/parser@^7.1.0", "@babel/parser@^7.18.5", "@babel/parser@^7.20.7", "@babel/parser@^7.24.0": - version "7.24.0" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz#26a3d1ff49031c53a97d03b604375f028746a9ac" - integrity sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg== + "@babel/types" "^7.29.0" "@babel/plugin-syntax-jsx@^7.23.3": version "7.23.3" @@ -209,19 +173,19 @@ dependencies: "@babel/plugin-transform-react-jsx" "^7.22.5" -"@babel/plugin-transform-react-jsx-self@^7.23.3": - version "7.23.3" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.23.3.tgz#ed3e7dadde046cce761a8e3cf003a13d1a7972d9" - integrity sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ== +"@babel/plugin-transform-react-jsx-self@^7.23.3", "@babel/plugin-transform-react-jsx-self@^7.27.1": + version "7.27.1" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz#af678d8506acf52c577cac73ff7fe6615c85fc92" + integrity sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.27.1" -"@babel/plugin-transform-react-jsx-source@^7.23.3": - version "7.23.3" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.23.3.tgz#03527006bdc8775247a78643c51d4e715fe39a3e" - integrity sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g== +"@babel/plugin-transform-react-jsx-source@^7.23.3", "@babel/plugin-transform-react-jsx-source@^7.27.1": + version "7.27.1" + resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz#dcfe2c24094bb757bf73960374e7c55e434f19f0" + integrity sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.27.1" "@babel/plugin-transform-react-jsx@^7.22.15", "@babel/plugin-transform-react-jsx@^7.22.5": version "7.23.4" @@ -254,39 +218,35 @@ "@babel/plugin-transform-react-jsx-development" "^7.22.5" "@babel/plugin-transform-react-pure-annotations" "^7.23.3" -"@babel/template@^7.16.7", "@babel/template@^7.22.15", "@babel/template@^7.24.0": - version "7.24.0" - resolved "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" - integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.24.0" - "@babel/types" "^7.24.0" - -"@babel/traverse@^7.18.5", "@babel/traverse@^7.24.0": - version "7.24.0" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.0.tgz#4a408fbf364ff73135c714a2ab46a5eab2831b1e" - integrity sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw== - dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" - "@babel/helper-environment-visitor" "^7.22.20" - "@babel/helper-function-name" "^7.23.0" - "@babel/helper-hoist-variables" "^7.22.5" - "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.24.0" - "@babel/types" "^7.24.0" +"@babel/template@^7.16.7", "@babel/template@^7.28.6": + version "7.28.6" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz#0e7e56ecedb78aeef66ce7972b082fce76a23e57" + integrity sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ== + dependencies: + "@babel/code-frame" "^7.28.6" + "@babel/parser" "^7.28.6" + "@babel/types" "^7.28.6" + +"@babel/traverse@^7.18.5", "@babel/traverse@^7.28.6", "@babel/traverse@^7.29.0": + version "7.29.0" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz#f323d05001440253eead3c9c858adbe00b90310a" + integrity sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA== + dependencies: + "@babel/code-frame" "^7.29.0" + "@babel/generator" "^7.29.0" + "@babel/helper-globals" "^7.28.0" + "@babel/parser" "^7.29.0" + "@babel/template" "^7.28.6" + "@babel/types" "^7.29.0" debug "^4.3.1" - globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.18.4", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.4", "@babel/types@^7.23.6", "@babel/types@^7.24.0", "@babel/types@^7.3.0": - version "7.24.0" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" - integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== +"@babel/types@^7.0.0", "@babel/types@^7.18.4", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.23.4", "@babel/types@^7.28.6", "@babel/types@^7.29.0", "@babel/types@^7.3.0": + version "7.29.0" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz#9f5b1e838c446e72cf3cd4b918152b8c605e37c7" + integrity sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A== dependencies: - "@babel/helper-string-parser" "^7.23.4" - "@babel/helper-validator-identifier" "^7.22.20" - to-fast-properties "^2.0.0" + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.28.5" "@cspotcode/source-map-support@^0.8.0": version "0.8.1" @@ -327,6 +287,11 @@ resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz#bafb75234a5d3d1b690e7c2956a599345e84a2fd" integrity sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA== +"@esbuild/android-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz#984b4f9c8d0377443cc2dfcef266d02244593622" + integrity sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ== + "@esbuild/android-arm64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.4.tgz#74752a09301b8c6b9a415fbda9fb71406a62a7b7" @@ -342,6 +307,11 @@ resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz#5898f7832c2298bc7d0ab53701c57beb74d78b4d" integrity sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A== +"@esbuild/android-arm@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz#fedb265bc3a589c84cc11f810804f234947c3682" + integrity sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw== + "@esbuild/android-arm@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.4.tgz#c27363e1e280e577d9b5c8fa7c7a3be2a8d79bf5" @@ -357,6 +327,11 @@ resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz#658368ef92067866d95fb268719f98f363d13ae1" integrity sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww== +"@esbuild/android-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz#35cf419c4cfc8babe8893d296cd990e9e9f756f2" + integrity sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg== + "@esbuild/android-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.4.tgz#6c9ee03d1488973d928618100048b75b147e0426" @@ -372,6 +347,11 @@ resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz#584c34c5991b95d4d48d333300b1a4e2ff7be276" integrity sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg== +"@esbuild/darwin-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz#08172cbeccf95fbc383399a7f39cfbddaeb0d7c1" + integrity sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA== + "@esbuild/darwin-arm64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.4.tgz#64e2ee945e5932cd49812caa80e8896e937e2f8b" @@ -387,6 +367,11 @@ resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz#7751d236dfe6ce136cce343dce69f52d76b7f6cb" integrity sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw== +"@esbuild/darwin-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz#d70d5790d8bf475556b67d0f8b7c5bdff053d85d" + integrity sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ== + "@esbuild/darwin-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.4.tgz#d8e26e1b965df284692e4d1263ba69a49b39ac7a" @@ -402,6 +387,11 @@ resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz#cacd171665dd1d500f45c167d50c6b7e539d5fd2" integrity sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ== +"@esbuild/freebsd-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz#98755cd12707f93f210e2494d6a4b51b96977f54" + integrity sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw== + "@esbuild/freebsd-arm64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.4.tgz#29751a41b242e0a456d89713b228f1da4f45582f" @@ -417,6 +407,11 @@ resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz#0769456eee2a08b8d925d7c00b79e861cb3162e4" integrity sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ== +"@esbuild/freebsd-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz#c1eb2bff03915f87c29cece4c1a7fa1f423b066e" + integrity sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ== + "@esbuild/freebsd-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.4.tgz#873edc0f73e83a82432460ea59bf568c1e90b268" @@ -432,6 +427,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz#38e162ecb723862c6be1c27d6389f48960b68edb" integrity sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg== +"@esbuild/linux-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz#bad4238bd8f4fc25b5a021280c770ab5fc3a02a0" + integrity sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA== + "@esbuild/linux-arm64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.4.tgz#659f2fa988d448dbf5010b5cc583be757cc1b914" @@ -447,6 +447,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz#1a2cd399c50040184a805174a6d89097d9d1559a" integrity sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA== +"@esbuild/linux-arm@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz#3e617c61f33508a27150ee417543c8ab5acc73b0" + integrity sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg== + "@esbuild/linux-arm@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.4.tgz#d5b13a7ec1f1c655ce05c8d319b3950797baee55" @@ -462,6 +467,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz#e28c25266b036ce1cabca3c30155222841dc035a" integrity sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ== +"@esbuild/linux-ia32@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz#699391cccba9aee6019b7f9892eb99219f1570a7" + integrity sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA== + "@esbuild/linux-ia32@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.4.tgz#878cd8bf24c9847c77acdb5dd1b2ef6e4fa27a82" @@ -482,6 +492,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz#0f887b8bb3f90658d1a0117283e55dbd4c9dcf72" integrity sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ== +"@esbuild/linux-loong64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz#e6fccb7aac178dd2ffb9860465ac89d7f23b977d" + integrity sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg== + "@esbuild/linux-loong64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.4.tgz#df890499f6e566b7de3aa2361be6df2b8d5fa015" @@ -497,6 +512,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz#f5d2a0b8047ea9a5d9f592a178ea054053a70289" integrity sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A== +"@esbuild/linux-mips64el@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz#eeff3a937de9c2310de30622a957ad1bd9183231" + integrity sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ== + "@esbuild/linux-mips64el@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.4.tgz#76eae4e88d2ce9f4f1b457e93892e802851b6807" @@ -512,6 +532,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz#876590e3acbd9fa7f57a2c7d86f83717dbbac8c7" integrity sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg== +"@esbuild/linux-ppc64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz#2f7156bde20b01527993e6881435ad79ba9599fb" + integrity sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA== + "@esbuild/linux-ppc64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.4.tgz#c49032f4abbcfa3f747b543a106931fe3dce41ff" @@ -527,6 +552,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz#7f49373df463cd9f41dc34f9b2262d771688bf09" integrity sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA== +"@esbuild/linux-riscv64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz#6628389f210123d8b4743045af8caa7d4ddfc7a6" + integrity sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A== + "@esbuild/linux-riscv64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.4.tgz#0f815a090772138503ee0465a747e16865bf94b1" @@ -542,6 +572,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz#e2afd1afcaf63afe2c7d9ceacd28ec57c77f8829" integrity sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q== +"@esbuild/linux-s390x@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz#255e81fb289b101026131858ab99fba63dcf0071" + integrity sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ== + "@esbuild/linux-s390x@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.4.tgz#8d2cca20cd4e7c311fde8701d9f1042664f8b92b" @@ -557,6 +592,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz#8a0e9738b1635f0c53389e515ae83826dec22aa4" integrity sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw== +"@esbuild/linux-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz#c7690b3417af318a9b6f96df3031a8865176d338" + integrity sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w== + "@esbuild/linux-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.4.tgz#f618bec2655de49bff91c588777e37b5e3169d4a" @@ -577,6 +617,11 @@ resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz#c29fb2453c6b7ddef9a35e2c18b37bda1ae5c462" integrity sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q== +"@esbuild/netbsd-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz#30e8cd8a3dded63975e2df2438ca109601ebe0d1" + integrity sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A== + "@esbuild/netbsd-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.4.tgz#7889744ca4d60f1538d62382b95e90a49687cef2" @@ -597,6 +642,11 @@ resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz#95e75a391403cb10297280d524d66ce04c920691" integrity sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g== +"@esbuild/openbsd-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz#7812af31b205055874c8082ea9cf9ab0da6217ae" + integrity sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg== + "@esbuild/openbsd-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.4.tgz#c3e436eb9271a423d2e8436fcb120e3fd90e2b01" @@ -617,6 +667,11 @@ resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz#722eaf057b83c2575937d3ffe5aeb16540da7273" integrity sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg== +"@esbuild/sunos-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz#d5c275c3b4e73c9b0ecd38d1ca62c020f887ab9d" + integrity sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ== + "@esbuild/sunos-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.4.tgz#f63f5841ba8c8c1a1c840d073afc99b53e8ce740" @@ -632,6 +687,11 @@ resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz#9aa9dc074399288bdcdd283443e9aeb6b9552b6f" integrity sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag== +"@esbuild/win32-arm64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz#73bc7f5a9f8a77805f357fab97f290d0e4820ac9" + integrity sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg== + "@esbuild/win32-arm64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.4.tgz#80be69cec92da4da7781cf7a8351b95cc5a236b0" @@ -647,6 +707,11 @@ resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz#95ad43c62ad62485e210f6299c7b2571e48d2b03" integrity sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw== +"@esbuild/win32-ia32@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz#ec93cbf0ef1085cc12e71e0d661d20569ff42102" + integrity sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g== + "@esbuild/win32-ia32@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.4.tgz#15dc0ed83d2794872b05d8edc4a358fecf97eb54" @@ -662,6 +727,11 @@ resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz#8cfaf2ff603e9aabb910e9c0558c26cf32744061" integrity sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA== +"@esbuild/win32-x64@0.18.20": + version "0.18.20" + resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz#786c5f41f043b07afb1af37683d7c33668858f6d" + integrity sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ== + "@esbuild/win32-x64@0.19.4": version "0.19.4" resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.4.tgz#d46a6e220a717f31f39ae80f49477cc3220be0f0" @@ -757,16 +827,7 @@ dependencies: "@sinclair/typebox" "^0.34.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.3" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" - integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== - dependencies: - "@jridgewell/set-array" "^1.0.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/gen-mapping@^0.3.5": +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.12", "@jridgewell/gen-mapping@^0.3.5": version "0.3.13" resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz#6342a19f44347518c93e43b1ac69deb3c4656a1f" integrity sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA== @@ -774,34 +835,19 @@ "@jridgewell/sourcemap-codec" "^1.5.0" "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/resolve-uri@3.1.0": - version "3.1.0" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== - -"@jridgewell/resolve-uri@^3.0.3": - version "3.1.1" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" - integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== +"@jridgewell/remapping@^2.3.5": + version "2.3.5" + resolved "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz#375c476d1972947851ba1e15ae8f123047445aa1" + integrity sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/resolve-uri@^3.1.0": +"@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": version "3.1.2" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== -"@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== - -"@jridgewell/source-map@^0.3.2": - version "0.3.3" - resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz#8108265659d4c33e72ffe14e33d6cc5eb59f2fda" - integrity sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg== - dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" - "@jridgewell/source-map@^0.3.3": version "0.3.11" resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz#b21835cbd36db656b857c2ad02ebd413cc13a9ba" @@ -810,17 +856,7 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" -"@jridgewell/sourcemap-codec@1.4.14": - version "1.4.14" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - -"@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.15" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== - -"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0", "@jridgewell/sourcemap-codec@^1.5.5": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0", "@jridgewell/sourcemap-codec@^1.5.5": version "1.5.5" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz#6912b00d2c631c0d15ce1a7ab57cd657f2a8f8ba" integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== @@ -833,15 +869,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.18" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" - integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA== - dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" - -"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.28", "@jridgewell/trace-mapping@^0.3.9": version "0.3.31" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz#db15d6781c931f3a251a3dac39501c98a6082fd0" integrity sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw== @@ -954,10 +982,10 @@ resolved "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-22.5.2.tgz#0b3867776cd7fdb86068b2dd733e6621ded5165a" integrity sha512-IK9Xd5Gh9ys4oun5ko8Uv8AEi2byN2FPXBsR1BLkt93SJ0bJVTdXGyEA+fWmEclLZIM0PiZj1KbCajVn9NEPtw== -"@oxc-project/types@=0.115.0": - version "0.115.0" - resolved "https://registry.npmjs.org/@oxc-project/types/-/types-0.115.0.tgz#92a599543529bce45f8f2da77f40a124d63349dc" - integrity sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw== +"@oxc-project/types@=0.120.0": + version "0.120.0" + resolved "https://registry.npmjs.org/@oxc-project/types/-/types-0.120.0.tgz#af521b0e689dd0eaa04fe4feef9b68d98b74783d" + integrity sha512-k1YNu55DuvAip/MGE1FTsIuU3FUCn6v/ujG9V7Nq5Df/kX2CWb13hhwD0lmJGMGqE+bE1MXvv9SZVnMzEXlWcg== "@oxfmt/binding-android-arm-eabi@0.33.0": version "0.33.0" @@ -1054,79 +1082,99 @@ resolved "https://registry.npmjs.org/@oxfmt/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.33.0.tgz#b5d6d19b7889755e6ed43c3dc528e3263856ddf1" integrity sha512-lsBQxbepASwOBUh3chcKAjU+jVAQhLElbPYiagIq26cU8vA9Bttj6t20bMvCQCw31m440IRlNhrK7NpnUI8mzA== -"@rolldown/binding-android-arm64@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.6.tgz#4ee6333152206902aa1beb74a487ec7bc9df20bd" - integrity sha512-kvjTSWGcrv+BaR2vge57rsKiYdVR8V8CoS0vgKrc570qRBfty4bT+1X0z3j2TaVV+kAYzA0PjeB9+mdZyqUZlg== - -"@rolldown/binding-darwin-arm64@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.6.tgz#0c1853b3b07e739087b33919fc388fe3ce314e9e" - integrity sha512-+tJhD21KvGNtUrpLXrZQlT+j5HZKiEwR2qtcZb3vNOUpvoT9QjEykr75ZW/Kr0W89gose/HVXU6351uVZD8Qvw== - -"@rolldown/binding-darwin-x64@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.6.tgz#6e52da0ad87253b9cf04dcadf025dca1928e658d" - integrity sha512-DKNhjMk38FAWaHwUt1dFR3rA/qRAvn2NUvSG2UGvxvlMxSmN/qqww/j4ABAbXhNRXtGQNmrAINMXRuwHl16ZHg== - -"@rolldown/binding-freebsd-x64@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.6.tgz#7e500eff970e39d1307e481b00874ab90af4a183" - integrity sha512-8TThsRkCPAnfyMBShxrGdtoOE6h36QepqRQI97iFaQSCRbHFWHcDHppcojZnzXoruuhPnjMEygzaykvPVJsMRg== - -"@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.6.tgz#247b60365081872f9ef8426e98bafbda7410c23a" - integrity sha512-ZfmFoOwPUZCWtGOVC9/qbQzfc0249FrRUOzV2XabSMUV60Crp211OWLQN1zmQAsRIVWRcEwhJ46Z1mXGo/L/nQ== - -"@rolldown/binding-linux-arm64-gnu@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.6.tgz#504840853e42726c7b9c591792f6422aa93f118c" - integrity sha512-ZsGzbNETxPodGlLTYHaCSGVhNN/rvkMDCJYHdT7PZr5jFJRmBfmDi2awhF64Dt2vxrJqY6VeeYSgOzEbHRsb7Q== - -"@rolldown/binding-linux-arm64-musl@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.6.tgz#f5f260bfa51083c45fcb59f10ba77991d29dbed4" - integrity sha512-elPpdevtCdUOqziemR86C4CSCr/5sUxalzDrf/CJdMT+kZt2C556as++qHikNOz0vuFf52h+GJNXZM08eWgGPQ== - -"@rolldown/binding-linux-x64-gnu@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.6.tgz#c59a835f5f4f5ffd937ea4466862d522c5da4928" - integrity sha512-IBwXsf56o3xhzAyaZxdM1CX8UFiBEUFCjiVUgny67Q8vPIqkjzJj0YKhd3TbBHanuxThgBa59f6Pgutg2OGk5A== - -"@rolldown/binding-linux-x64-musl@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.6.tgz#1ea2a7c58f5ed50b3d35142935f6a0234c1d007b" - integrity sha512-vOk7G8V9Zm+8a6PL6JTpCea61q491oYlGtO6CvnsbhNLlKdf0bbCPytFzGQhYmCKZDKkEbmnkcIprTEGCURnwg== - -"@rolldown/binding-openharmony-arm64@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.6.tgz#8ffe37a43e9218af46770784dfbc1cda9efffd97" - integrity sha512-ASjEDI4MRv7XCQb2JVaBzfEYO98JKCGrAgoW6M03fJzH/ilCnC43Mb3ptB9q/lzsaahoJyIBoAGKAYEjUvpyvQ== - -"@rolldown/binding-wasm32-wasi@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.6.tgz#e822081ac37a98c2f63e8a9f65432361a0ac185a" - integrity sha512-mYa1+h2l6Zc0LvmwUh0oXKKYihnw/1WC73vTqw+IgtfEtv47A+rWzzcWwVDkW73+UDr0d/Ie/HRXoaOY22pQDw== +"@rolldown/binding-android-arm64@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.10.tgz#0bbd3380f49a6d0dc96c9b32fb7dad26ae0dfaa7" + integrity sha512-jOHxwXhxmFKuXztiu1ORieJeTbx5vrTkcOkkkn2d35726+iwhrY1w/+nYY/AGgF12thg33qC3R1LMBF5tHTZHg== + +"@rolldown/binding-darwin-arm64@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.10.tgz#a30b051784fbb13635e652ba4041c6ce7a4ce7ab" + integrity sha512-gED05Teg/vtTZbIJBc4VNMAxAFDUPkuO/rAIyyxZjTj1a1/s6z5TII/5yMGZ0uLRCifEtwUQn8OlYzuYc0m70w== + +"@rolldown/binding-darwin-x64@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.10.tgz#2d9dea982d5be90b95b6d8836ff26a4b0959d94b" + integrity sha512-rI15NcM1mA48lqrIxVkHfAqcyFLcQwyXWThy+BQ5+mkKKPvSO26ir+ZDp36AgYoYVkqvMcdS8zOE6SeBsR9e8A== + +"@rolldown/binding-freebsd-x64@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.10.tgz#4efc3aca43ae4dfb90729eeca6e84ef6e6b38c4a" + integrity sha512-XZRXHdTa+4ME1MuDVp021+doQ+z6Ei4CCFmNc5/sKbqb8YmkiJdj8QKlV3rCI0AJtAeSB5n0WGPuJWNL9p/L2w== + +"@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.10.tgz#4a19a5d24537e925b25e9583b6cd575b2ad9fa27" + integrity sha512-R0SQMRluISSLzFE20sPWYHVmJdDQnRyc/FzSCN72BqQmh2SOZUFG+N3/vBZpR4C6WpEUVYJLrYUXaj43sJsNLA== + +"@rolldown/binding-linux-arm64-gnu@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.10.tgz#01a41e5e905838353ae9a3da10dc8242dcd61453" + integrity sha512-Y1reMrV/o+cwpduYhJuOE3OMKx32RMYCidf14y+HssARRmhDuWXJ4yVguDg2R/8SyyGNo+auzz64LnPK9Hq6jg== + +"@rolldown/binding-linux-arm64-musl@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.10.tgz#bd059e5f83471de29ce35b0ba254995d8091ca40" + integrity sha512-vELN+HNb2IzuzSBUOD4NHmP9yrGwl1DVM29wlQvx1OLSclL0NgVWnVDKl/8tEks79EFek/kebQKnNJkIAA4W2g== + +"@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.10.tgz#fe726a540631015f269a989c0cfb299283190390" + integrity sha512-ZqrufYTgzxbHwpqOjzSsb0UV/aV2TFIY5rP8HdsiPTv/CuAgCRjM6s9cYFwQ4CNH+hf9Y4erHW1GjZuZ7WoI7w== + +"@rolldown/binding-linux-s390x-gnu@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.10.tgz#825ced028bad3f1fa9ce83b1f3dac76e0424367f" + integrity sha512-gSlmVS1FZJSRicA6IyjoRoKAFK7IIHBs7xJuHRSmjImqk3mPPWbR7RhbnfH2G6bcmMEllCt2vQ/7u9e6bBnByg== + +"@rolldown/binding-linux-x64-gnu@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.10.tgz#b700dae69274aa3d54a16ca5e00e30f47a089119" + integrity sha512-eOCKUpluKgfObT2pHjztnaWEIbUabWzk3qPZ5PuacuPmr4+JtQG4k2vGTY0H15edaTnicgU428XW/IH6AimcQw== + +"@rolldown/binding-linux-x64-musl@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.10.tgz#eb875660ad68a2348acab36a7005699e87f6e9dd" + integrity sha512-Xdf2jQbfQowJnLcgYfD/m0Uu0Qj5OdxKallD78/IPPfzaiaI4KRAwZzHcKQ4ig1gtg1SuzC7jovNiM2TzQsBXA== + +"@rolldown/binding-openharmony-arm64@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.10.tgz#72aa24b412f83025087bcf83ce09634b2bd93c5c" + integrity sha512-o1hYe8hLi1EY6jgPFyxQgQ1wcycX+qz8eEbVmot2hFkgUzPxy9+kF0u0NIQBeDq+Mko47AkaFFaChcvZa9UX9Q== + +"@rolldown/binding-wasm32-wasi@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.10.tgz#7f3303a96c5dc01d1f4c539b1dcbc16392c6f17d" + integrity sha512-Ugv9o7qYJudqQO5Y5y2N2SOo6S4WiqiNOpuQyoPInnhVzCY+wi/GHltcLHypG9DEUYMB0iTB/huJrpadiAcNcA== dependencies: "@napi-rs/wasm-runtime" "^1.1.1" -"@rolldown/binding-win32-arm64-msvc@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.6.tgz#f7e8455f618505f28e763c8e73213d61eeba2b7f" - integrity sha512-e2ABskbNH3MRUBMjgxaMjYIw11DSwjLJxBII3UgpF6WClGLIh8A20kamc+FKH5vIaFVnYQInmcLYSUVpqMPLow== +"@rolldown/binding-win32-arm64-msvc@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.10.tgz#3419144a04ad12c69c48536b01fc21ac9d87ecf4" + integrity sha512-7UODQb4fQUNT/vmgDZBl3XOBAIOutP5R3O/rkxg0aLfEGQ4opbCgU5vOw/scPe4xOqBwL9fw7/RP1vAMZ6QlAQ== + +"@rolldown/binding-win32-x64-msvc@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.10.tgz#09bee46e6a32c6086beeabc3da12e67be714f882" + integrity sha512-PYxKHMVHOb5NJuDL53vBUl1VwUjymDcYI6rzpIni0C9+9mTiJedvUxSk7/RPp7OOAm3v+EjgMu9bIy3N6b408w== -"@rolldown/binding-win32-x64-msvc@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.6.tgz#5100c0a269f5a557cab7011951b48709c6216fa9" - integrity sha512-dJVc3ifhaRXxIEh1xowLohzFrlQXkJ66LepHm+CmSprTWgVrPa8Fx3OL57xwIqDEH9hufcKkDX2v65rS3NZyRA== +"@rolldown/pluginutils@1.0.0-rc.10": + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.10.tgz#eed997f37f928a3300bbe2161f42687d8a3ae759" + integrity sha512-UkVDEFk1w3mveXeKgaTuYfKWtPbvgck1dT8TUG3bnccrH0XtLTuAyfCoks4Q/M5ZGToSVJTIQYCzy2g/atAOeg== -"@rolldown/pluginutils@1.0.0-rc.6": - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.6.tgz#2f729fcf2d68c2d8cc2dcb05a7c3b2eeadfe20e1" - integrity sha512-Y0+JT8Mi1mmW08K6HieG315XNRu4L0rkfCpA364HtytjgiqYnMYRdFPcxRl+BQQqNXzecL2S9nii+RUpO93XIA== +"@rolldown/pluginutils@1.0.0-rc.3": + version "1.0.0-rc.3" + resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.3.tgz#8a88cc92a0f741befc7bc109cb1a4c6b9408e1c5" + integrity sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q== -"@rollup/plugin-babel@^6.0.4": +"@rolldown/pluginutils@1.0.0-rc.7": + version "1.0.0-rc.7" + resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.7.tgz#0414869467f0e471a6515d4f506c85fde867e022" + integrity sha512-qujRfC8sFVInYSPPMLQByRh7zhwkGFS4+tyMQ83srV1qrxL4g8E2tyxVVyxd0+8QeBM1mIk9KbWxkegRr76XzA== + +"@rollup/plugin-babel@6.0.4", "@rollup/plugin-babel@^6.0.4": version "6.0.4" resolved "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-6.0.4.tgz#bd698e351fa9aa9619fcae780aea2a603d98e4c4" integrity sha512-YF7Y52kFdFT/xVSuVdjkV5ZdX/3YtmX0QulG+x0taQOtJdHYzVU61aSSkAgVJ7NOv6qPkIYiJSgSWWN/DM5sGw== @@ -1146,26 +1194,26 @@ is-reference "1.2.1" magic-string "^0.30.3" -"@rollup/plugin-node-resolve@16.0.3": - version "16.0.3" - resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.3.tgz#0988e6f2cbb13316b0f5e7213f757bc9ed44928f" - integrity sha512-lUYM3UBGuM93CnMPG1YocWu7X802BrNF3jW2zny5gQyLQgRFJhV1Sq0Zi74+dh/6NBx1DxFC4b4GXg9wUCG5Qg== +"@rollup/plugin-node-resolve@15.2.3", "@rollup/plugin-node-resolve@^15.2.3": + version "15.2.3" + resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz#e5e0b059bd85ca57489492f295ce88c2d4b0daf9" + integrity sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ== dependencies: "@rollup/pluginutils" "^5.0.1" "@types/resolve" "1.20.2" deepmerge "^4.2.2" + is-builtin-module "^3.2.1" is-module "^1.0.0" resolve "^1.22.1" -"@rollup/plugin-node-resolve@^15.2.3": - version "15.2.3" - resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz#e5e0b059bd85ca57489492f295ce88c2d4b0daf9" - integrity sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ== +"@rollup/plugin-node-resolve@16.0.3": + version "16.0.3" + resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.3.tgz#0988e6f2cbb13316b0f5e7213f757bc9ed44928f" + integrity sha512-lUYM3UBGuM93CnMPG1YocWu7X802BrNF3jW2zny5gQyLQgRFJhV1Sq0Zi74+dh/6NBx1DxFC4b4GXg9wUCG5Qg== dependencies: "@rollup/pluginutils" "^5.0.1" "@types/resolve" "1.20.2" deepmerge "^4.2.2" - is-builtin-module "^3.2.1" is-module "^1.0.0" resolve "^1.22.1" @@ -1551,7 +1599,7 @@ resolved "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz#334311971d3a07121e7eb91b684a605e7eea9cbd" integrity sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw== -"@types/eslint-scope@^3.7.0": +"@types/eslint-scope@^3.7.0", "@types/eslint-scope@^3.7.3": version "3.7.7" resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg== @@ -1559,14 +1607,6 @@ "@types/eslint" "*" "@types/estree" "*" -"@types/eslint-scope@^3.7.3": - version "3.7.4" - resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16" - integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA== - dependencies: - "@types/eslint" "*" - "@types/estree" "*" - "@types/eslint@*": version "8.40.0" resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.40.0.tgz#ae73dc9ec5237f2794c4f79efd6a4c73b13daf23" @@ -1575,12 +1615,7 @@ "@types/estree" "*" "@types/json-schema" "*" -"@types/estree@*", "@types/estree@^1.0.0": - version "1.0.1" - resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz#aa22750962f3bf0e79d753d3cc067f010c95f194" - integrity sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA== - -"@types/estree@1.0.8": +"@types/estree@*", "@types/estree@1.0.8", "@types/estree@^1.0.0": version "1.0.8" resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== @@ -1843,6 +1878,25 @@ "@typescript-eslint/types" "5.59.7" eslint-visitor-keys "^3.3.0" +"@vitejs/plugin-react@5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.2.0.tgz#108bd0f566f288ce3566982df4eff137ded7b15f" + integrity sha512-YmKkfhOAi3wsB1PhJq5Scj3GXMn3WvtQ/JC0xoopuHoXSdmtdStOpFrYaT1kie2YgFBcIe64ROzMYRjCrYOdYw== + dependencies: + "@babel/core" "^7.29.0" + "@babel/plugin-transform-react-jsx-self" "^7.27.1" + "@babel/plugin-transform-react-jsx-source" "^7.27.1" + "@rolldown/pluginutils" "1.0.0-rc.3" + "@types/babel__core" "^7.20.5" + react-refresh "^0.18.0" + +"@vitejs/plugin-react@6.0.1": + version "6.0.1" + resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-6.0.1.tgz#d9113b71a0a592714913eafd9e5e63bcafd0ff15" + integrity sha512-l9X/E3cDb+xY3SWzlG1MOGt2usfEHGMNIaegaUGFsLkb3RCn/k8/TOXBcab+OndDI4TBtktT8/9BwwW8Vi9KUQ== + dependencies: + "@rolldown/pluginutils" "1.0.0-rc.7" + "@vitejs/plugin-react@^4.2.1": version "4.2.1" resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz#744d8e4fcb120fc3dbaa471dadd3483f5a304bb9" @@ -2231,16 +2285,11 @@ acorn-walk@^8.1.1: resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== -acorn@^8.0.3, acorn@^8.15.0: +acorn@^8.0.3, acorn@^8.15.0, acorn@^8.4.1, acorn@^8.7.1, acorn@^8.8.0: version "8.16.0" resolved "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz#4ce79c89be40afe7afe8f3adb902a1f1ce9ac08a" integrity sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw== -acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0: - version "8.8.2" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" - integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== - agent-base@6: version "6.0.2" resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" @@ -2395,16 +2444,7 @@ available-typed-arrays@^1.0.5: resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== -axios@*, axios@^1.1.3: - version "1.4.0" - resolved "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz#38a7bf1224cd308de271146038b551d725f0be1f" - integrity sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA== - dependencies: - follow-redirects "^1.15.0" - form-data "^4.0.0" - proxy-from-env "^1.1.0" - -axios@^1.12.0: +axios@*, axios@^1.1.3, axios@^1.12.0: version "1.13.5" resolved "https://registry.npmjs.org/axios/-/axios-1.13.5.tgz#5e464688fa127e11a660a2c49441c009f6567a43" integrity sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q== @@ -2497,13 +2537,6 @@ brace-expansion@^5.0.2: dependencies: balanced-match "^4.0.2" -braces@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - braces@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" @@ -2511,7 +2544,7 @@ braces@^3.0.3: dependencies: fill-range "^7.1.1" -browserslist@^4.14.3: +browserslist@^4.14.3, browserslist@^4.14.5, browserslist@^4.24.0: version "4.28.1" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz#7f534594628c53c63101079e27e40de490456a95" integrity sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA== @@ -2522,16 +2555,6 @@ browserslist@^4.14.3: node-releases "^2.0.27" update-browserslist-db "^1.2.0" -browserslist@^4.14.5, browserslist@^4.22.2: - version "4.22.3" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6" - integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A== - dependencies: - caniuse-lite "^1.0.30001580" - electron-to-chromium "^1.4.648" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" - buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" @@ -2587,15 +2610,7 @@ call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply- es-errors "^1.3.0" function-bind "^1.1.2" -call-bind@^1.0.0, call-bind@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" - integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== - dependencies: - function-bind "^1.1.1" - get-intrinsic "^1.0.2" - -call-bind@^1.0.8: +call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.8: version "1.0.8" resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== @@ -2618,11 +2633,6 @@ callsites@^3.0.0: resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -caniuse-lite@^1.0.30001580: - version "1.0.30001581" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001581.tgz#0dfd4db9e94edbdca67d57348ebc070dece279f4" - integrity sha512-whlTkwhqV2tUmP3oYhtNfaWGYHDdS3JYFQBKXxcUR9qqPWsRhFHhoISO2Xnl/g0xyKzht9mI1LZpiNWfMzHixQ== - caniuse-lite@^1.0.30001759: version "1.0.30001770" resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001770.tgz#4dc47d3b263a50fbb243448034921e0a88591a84" @@ -2633,7 +2643,7 @@ chai@^6.2.1: resolved "https://registry.npmjs.org/chai/-/chai-6.2.2.tgz#ae41b52c9aca87734505362717f3255facda360e" integrity sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg== -chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.4.1: version "2.4.2" resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2800,16 +2810,7 @@ cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.2: - version "7.0.3" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -cross-spawn@^7.0.3: +cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.6" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== @@ -2891,6 +2892,11 @@ destroy@1.2.0: resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== +detect-libc@^2.0.3: + version "2.1.2" + resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz#689c5dcdc1900ef5583a4cb9f6d7b473742074ad" + integrity sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ== + diff@^4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" @@ -2924,12 +2930,7 @@ dotenv-expand@~11.0.6: dependencies: dotenv "^16.4.5" -dotenv@^16.3.1: - version "16.3.1" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz#369034de7d7e5b120972693352a3bf112172cc3e" - integrity sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ== - -dotenv@^16.4.5: +dotenv@^16.3.1, dotenv@^16.4.5: version "16.6.1" resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz#773f0e69527a8315c7285d5ee73c4459d20a8020" integrity sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow== @@ -2960,11 +2961,6 @@ ejs@^3.1.7: dependencies: jake "^10.8.5" -electron-to-chromium@^1.4.648: - version "1.4.653" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.653.tgz#832ab25e80ad698ac09c1ca547bd9ee6cce7df10" - integrity sha512-wA2A2LQCqnEwQAvwADQq3KpMpNwgAUBnRmrFgRzHnPhbQUFArTR32Ab46f4p0MovDLcg4uqd4nCsN2hTltslpA== - electron-to-chromium@^1.5.263: version "1.5.286" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz#142be1ab5e1cd5044954db0e5898f60a4960384e" @@ -2992,15 +2988,7 @@ end-of-stream@^1.4.1: dependencies: once "^1.4.0" -enhanced-resolve@^5.10.0: - version "5.14.0" - resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.14.0.tgz#0b6c676c8a3266c99fa281e4433a706f5c0c61c4" - integrity sha512-+DCows0XNwLDcUhbFJPdlQEVnT2zXlCv7hPxemTz86/O+B/hCQ+mb7ydkPKiflpVraqLPCAfu7lDy+hBXueojw== - dependencies: - graceful-fs "^4.2.4" - tapable "^2.2.0" - -enhanced-resolve@^5.2.0: +enhanced-resolve@^5.10.0, enhanced-resolve@^5.2.0: version "5.19.0" resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz#6687446a15e969eaa63c2fa2694510e17ae6d97c" integrity sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg== @@ -3089,16 +3077,7 @@ es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: dependencies: es-errors "^1.3.0" -es-set-tostringtag@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8" - integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== - dependencies: - get-intrinsic "^1.1.3" - has "^1.0.3" - has-tostringtag "^1.0.0" - -es-set-tostringtag@^2.1.0: +es-set-tostringtag@^2.0.1, es-set-tostringtag@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== @@ -3433,6 +3412,34 @@ esbuild@^0.14.47: esbuild-windows-64 "0.14.54" esbuild-windows-arm64 "0.14.54" +esbuild@^0.18.10: + version "0.18.20" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz#4709f5a34801b43b799ab7d6d82f7284a9b7a7a6" + integrity sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA== + optionalDependencies: + "@esbuild/android-arm" "0.18.20" + "@esbuild/android-arm64" "0.18.20" + "@esbuild/android-x64" "0.18.20" + "@esbuild/darwin-arm64" "0.18.20" + "@esbuild/darwin-x64" "0.18.20" + "@esbuild/freebsd-arm64" "0.18.20" + "@esbuild/freebsd-x64" "0.18.20" + "@esbuild/linux-arm" "0.18.20" + "@esbuild/linux-arm64" "0.18.20" + "@esbuild/linux-ia32" "0.18.20" + "@esbuild/linux-loong64" "0.18.20" + "@esbuild/linux-mips64el" "0.18.20" + "@esbuild/linux-ppc64" "0.18.20" + "@esbuild/linux-riscv64" "0.18.20" + "@esbuild/linux-s390x" "0.18.20" + "@esbuild/linux-x64" "0.18.20" + "@esbuild/netbsd-x64" "0.18.20" + "@esbuild/openbsd-x64" "0.18.20" + "@esbuild/sunos-x64" "0.18.20" + "@esbuild/win32-arm64" "0.18.20" + "@esbuild/win32-ia32" "0.18.20" + "@esbuild/win32-x64" "0.18.20" + esbuild@^0.27.0: version "0.27.3" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.27.3.tgz#5859ca8e70a3af956b26895ce4954d7e73bd27a8" @@ -3465,12 +3472,7 @@ esbuild@^0.27.0: "@esbuild/win32-ia32" "0.27.3" "@esbuild/win32-x64" "0.27.3" -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escalade@^3.2.0: +escalade@^3.1.1, escalade@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== @@ -3758,13 +3760,6 @@ filelist@^1.0.4: dependencies: minimatch "^5.0.1" -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - fill-range@^7.1.1: version "7.1.1" resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -3835,12 +3830,7 @@ flatted@^3.1.0: resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== -follow-redirects@^1.0.0, follow-redirects@^1.15.0: - version "1.15.2" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" - integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== - -follow-redirects@^1.15.11: +follow-redirects@^1.0.0, follow-redirects@^1.15.11: version "1.15.11" resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== @@ -3852,15 +3842,6 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -form-data@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" - integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - form-data@^4.0.5: version "4.0.5" resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053" @@ -3915,22 +3896,12 @@ fs.realpath@^1.0.0: resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -fsevents@~2.3.3: +fsevents@~2.3.2, fsevents@~2.3.3: version "2.3.3" resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -function-bind@^1.1.2: +function-bind@^1.1.1, function-bind@^1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== @@ -3960,17 +3931,7 @@ get-caller-file@^2.0.5: resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0: - version "1.2.1" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82" - integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw== - dependencies: - function-bind "^1.1.1" - has "^1.0.3" - has-proto "^1.0.1" - has-symbols "^1.0.3" - -get-intrinsic@^1.2.4, get-intrinsic@^1.2.6, get-intrinsic@^1.3.0: +get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.4, get-intrinsic@^1.2.6, get-intrinsic@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== @@ -4053,11 +4014,6 @@ glob@^8.0.3: minimatch "^5.0.1" once "^1.3.0" -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - globals@^13.19.0: version "13.20.0" resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82" @@ -4084,14 +4040,7 @@ globby@^11.1.0: merge2 "^1.4.1" slash "^3.0.0" -gopd@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" - integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== - dependencies: - get-intrinsic "^1.1.3" - -gopd@^1.2.0: +gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== @@ -4126,14 +4075,7 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" - integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== - dependencies: - get-intrinsic "^1.1.1" - -has-property-descriptors@^1.0.2: +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== @@ -4145,24 +4087,12 @@ has-proto@^1.0.1: resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== -has-symbols@^1.0.2, has-symbols@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" - integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== - -has-symbols@^1.1.0: +has-symbols@^1.0.2, has-symbols@^1.0.3, has-symbols@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== - dependencies: - has-symbols "^1.0.2" - -has-tostringtag@^1.0.2: +has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== @@ -4536,10 +4466,10 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== +jsesc@^3.0.2: + version "3.1.0" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" + integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: version "1.0.2" @@ -4626,6 +4556,80 @@ lie@3.1.1: dependencies: immediate "~3.0.5" +lightningcss-android-arm64@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz#f033885116dfefd9c6f54787523e3514b61e1968" + integrity sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg== + +lightningcss-darwin-arm64@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz#50b71871b01c8199584b649e292547faea7af9b5" + integrity sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ== + +lightningcss-darwin-x64@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz#35f3e97332d130b9ca181e11b568ded6aebc6d5e" + integrity sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w== + +lightningcss-freebsd-x64@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz#9777a76472b64ed6ff94342ad64c7bafd794a575" + integrity sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig== + +lightningcss-linux-arm-gnueabihf@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz#13ae652e1ab73b9135d7b7da172f666c410ad53d" + integrity sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw== + +lightningcss-linux-arm64-gnu@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz#417858795a94592f680123a1b1f9da8a0e1ef335" + integrity sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ== + +lightningcss-linux-arm64-musl@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz#6be36692e810b718040802fd809623cffe732133" + integrity sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg== + +lightningcss-linux-x64-gnu@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz#0b7803af4eb21cfd38dd39fe2abbb53c7dd091f6" + integrity sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA== + +lightningcss-linux-x64-musl@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz#88dc8ba865ddddb1ac5ef04b0f161804418c163b" + integrity sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg== + +lightningcss-win32-arm64-msvc@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz#4f30ba3fa5e925f5b79f945e8cc0d176c3b1ab38" + integrity sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw== + +lightningcss-win32-x64-msvc@1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz#141aa5605645064928902bb4af045fa7d9f4220a" + integrity sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q== + +lightningcss@^1.32.0: + version "1.32.0" + resolved "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz#b85aae96486dcb1bf49a7c8571221273f4f1e4a9" + integrity sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ== + dependencies: + detect-libc "^2.0.3" + optionalDependencies: + lightningcss-android-arm64 "1.32.0" + lightningcss-darwin-arm64 "1.32.0" + lightningcss-darwin-x64 "1.32.0" + lightningcss-freebsd-x64 "1.32.0" + lightningcss-linux-arm-gnueabihf "1.32.0" + lightningcss-linux-arm64-gnu "1.32.0" + lightningcss-linux-arm64-musl "1.32.0" + lightningcss-linux-x64-gnu "1.32.0" + lightningcss-linux-x64-musl "1.32.0" + lightningcss-win32-arm64-msvc "1.32.0" + lightningcss-win32-x64-msvc "1.32.0" + lines-and-columns@2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz#b2f0badedb556b747020ab8ea7f0373e22efac1b" @@ -4641,16 +4645,11 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" -loader-runner@^4.1.0: +loader-runner@^4.1.0, loader-runner@^4.2.0: version "4.3.1" resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.1.tgz#6c76ed29b0ccce9af379208299f07f876de737e3" integrity sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q== -loader-runner@^4.2.0: - version "4.3.0" - resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" - integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== - loader-utils@^2.0.0: version "2.0.4" resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" @@ -4779,7 +4778,7 @@ methods@~1.1.2: resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^4.0.2: +micromatch@^4.0.2, micromatch@^4.0.4: version "4.0.8" resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -4787,14 +4786,6 @@ micromatch@^4.0.2: braces "^3.0.3" picomatch "^2.3.1" -micromatch@^4.0.4: - version "4.0.5" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== - dependencies: - braces "^3.0.2" - picomatch "^2.3.1" - mime-db@1.52.0: version "1.52.0" resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" @@ -4883,12 +4874,7 @@ minipass@^5.0.0: resolved "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== -minipass@^7.1.2: - version "7.1.2" - resolved "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" - integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== - -minipass@^7.1.3: +minipass@^7.1.2, minipass@^7.1.3: version "7.1.3" resolved "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz#79389b4eb1bb2d003a9bba87d492f2bd37bdc65b" integrity sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A== @@ -4926,11 +4912,6 @@ nanoid@^3.3.11: resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== -nanoid@^3.3.6: - version "3.3.8" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz#b1be3030bee36aaff18bacb375e5cce521684baf" - integrity sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w== - natural-compare-lite@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" @@ -4968,11 +4949,6 @@ node-machine-id@1.1.12: resolved "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz#37904eee1e59b320bb9c5d6c0a59f3b469cb6267" integrity sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ== -node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== - node-releases@^2.0.27: version "2.0.27" resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz#eedca519205cf20f650f61d56b070db111231e4e" @@ -5359,11 +5335,6 @@ pathe@^2.0.3: resolved "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz#3ecbec55421685b70a9da872b2cff3e1cbed1716" integrity sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w== -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - picocolors@^1.1.0, picocolors@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" @@ -5396,19 +5367,10 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -postcss@^8.4.14: - version "8.4.23" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz#df0aee9ac7c5e53e1075c24a3613496f9e6552ab" - integrity sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA== - dependencies: - nanoid "^3.3.6" - picocolors "^1.0.0" - source-map-js "^1.0.2" - -postcss@^8.5.6: - version "8.5.6" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c" - integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== +postcss@^8.4.14, postcss@^8.4.27, postcss@^8.5.6, postcss@^8.5.8: + version "8.5.8" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.8.tgz#6230ecc8fb02e7a0f6982e53990937857e13f399" + integrity sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg== dependencies: nanoid "^3.3.11" picocolors "^1.1.1" @@ -5527,6 +5489,16 @@ react-refresh@^0.14.0: resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz#4e02825378a5f227079554d4284889354e5f553e" integrity sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ== +react-refresh@^0.18.0: + version "0.18.0" + resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.18.0.tgz#2dce97f4fe932a4d8142fa1630e475c1729c8062" + integrity sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw== + +react@19.2.4: + version "19.2.4" + resolved "https://registry.npmjs.org/react/-/react-19.2.4.tgz#438e57baa19b77cb23aab516cf635cd0579ee09a" + integrity sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ== + react@^18.2.0: version "18.2.0" resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" @@ -5534,11 +5506,6 @@ react@^18.2.0: dependencies: loose-envify "^1.1.0" -react@^19.2.4: - version "19.2.4" - resolved "https://registry.npmjs.org/react/-/react-19.2.4.tgz#438e57baa19b77cb23aab516cf635cd0579ee09a" - integrity sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ== - read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -5617,34 +5584,36 @@ reusify@^1.0.4: resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^3.0.0, rimraf@^3.0.2: +rimraf@^3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== dependencies: glob "^7.1.3" -rolldown@^1.0.0-rc.6: - version "1.0.0-rc.6" - resolved "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.6.tgz#fc2209fde9a0947fedd78647af50d2262332e977" - integrity sha512-B8vFPV1ADyegoYfhg+E7RAucYKv0xdVlwYYsIJgfPNeiSxZGWNxts9RqhyGzC11ULK/VaeXyKezGCwpMiH8Ktw== +rolldown@1.0.0-rc.10: + version "1.0.0-rc.10" + resolved "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.10.tgz#41c55e52d833c52c90131973047250548e35f2bf" + integrity sha512-q7j6vvarRFmKpgJUT8HCAUljkgzEp4LAhPlJUvQhA5LA1SUL36s5QCysMutErzL3EbNOZOkoziSx9iZC4FddKA== dependencies: - "@oxc-project/types" "=0.115.0" - "@rolldown/pluginutils" "1.0.0-rc.6" + "@oxc-project/types" "=0.120.0" + "@rolldown/pluginutils" "1.0.0-rc.10" optionalDependencies: - "@rolldown/binding-android-arm64" "1.0.0-rc.6" - "@rolldown/binding-darwin-arm64" "1.0.0-rc.6" - "@rolldown/binding-darwin-x64" "1.0.0-rc.6" - "@rolldown/binding-freebsd-x64" "1.0.0-rc.6" - "@rolldown/binding-linux-arm-gnueabihf" "1.0.0-rc.6" - "@rolldown/binding-linux-arm64-gnu" "1.0.0-rc.6" - "@rolldown/binding-linux-arm64-musl" "1.0.0-rc.6" - "@rolldown/binding-linux-x64-gnu" "1.0.0-rc.6" - "@rolldown/binding-linux-x64-musl" "1.0.0-rc.6" - "@rolldown/binding-openharmony-arm64" "1.0.0-rc.6" - "@rolldown/binding-wasm32-wasi" "1.0.0-rc.6" - "@rolldown/binding-win32-arm64-msvc" "1.0.0-rc.6" - "@rolldown/binding-win32-x64-msvc" "1.0.0-rc.6" + "@rolldown/binding-android-arm64" "1.0.0-rc.10" + "@rolldown/binding-darwin-arm64" "1.0.0-rc.10" + "@rolldown/binding-darwin-x64" "1.0.0-rc.10" + "@rolldown/binding-freebsd-x64" "1.0.0-rc.10" + "@rolldown/binding-linux-arm-gnueabihf" "1.0.0-rc.10" + "@rolldown/binding-linux-arm64-gnu" "1.0.0-rc.10" + "@rolldown/binding-linux-arm64-musl" "1.0.0-rc.10" + "@rolldown/binding-linux-ppc64-gnu" "1.0.0-rc.10" + "@rolldown/binding-linux-s390x-gnu" "1.0.0-rc.10" + "@rolldown/binding-linux-x64-gnu" "1.0.0-rc.10" + "@rolldown/binding-linux-x64-musl" "1.0.0-rc.10" + "@rolldown/binding-openharmony-arm64" "1.0.0-rc.10" + "@rolldown/binding-wasm32-wasi" "1.0.0-rc.10" + "@rolldown/binding-win32-arm64-msvc" "1.0.0-rc.10" + "@rolldown/binding-win32-x64-msvc" "1.0.0-rc.10" rollup@3.2.0: version "3.2.0" @@ -5653,21 +5622,14 @@ rollup@3.2.0: optionalDependencies: fsevents "~2.3.2" -rollup@^2.75.6: - version "2.79.1" - resolved "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7" - integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw== - optionalDependencies: - fsevents "~2.3.2" - -rollup@^3.30.0: +rollup@3.30.0, rollup@^3.27.1: version "3.30.0" resolved "https://registry.npmjs.org/rollup/-/rollup-3.30.0.tgz#3fa506fee2c5ba9d540a38da87067376cd55966d" integrity sha512-kQvGasUgN+AlWGliFn2POSajRQEsULVYFGTvOZmK06d7vCD+YhZztt70kGk3qaeAXeWYL5eO7zx+rAubBc55eA== optionalDependencies: fsevents "~2.3.2" -rollup@^4.43.0, rollup@^4.59.0: +rollup@4.59.0, rollup@^4.43.0: version "4.59.0" resolved "https://registry.npmjs.org/rollup/-/rollup-4.59.0.tgz#cf74edac17c1486f562d728a4d923a694abdf06f" integrity sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg== @@ -5701,6 +5663,13 @@ rollup@^4.43.0, rollup@^4.59.0: "@rollup/rollup-win32-x64-msvc" "4.59.0" fsevents "~2.3.2" +rollup@^2.75.6: + version "2.79.1" + resolved "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7" + integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw== + optionalDependencies: + fsevents "~2.3.2" + run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -5743,7 +5712,7 @@ schema-utils@^2.6.5: ajv "^6.12.4" ajv-keywords "^3.5.2" -schema-utils@^3.0.0: +schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: version "3.3.0" resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== @@ -5752,15 +5721,6 @@ schema-utils@^3.0.0: ajv "^6.12.5" ajv-keywords "^3.5.2" -schema-utils@^3.1.0, schema-utils@^3.1.1: - version "3.1.2" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz#36c10abca6f7577aeae136c804b0c741edeadc99" - integrity sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - "semver@2 || 3 || 4 || 5", semver@^5.5.0: version "5.7.1" resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" @@ -5771,14 +5731,7 @@ semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.5, semver@^7.3.7: - version "7.5.1" - resolved "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz#c90c4d631cf74720e46b21c1d37ea07edfab91ec" - integrity sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw== - dependencies: - lru-cache "^6.0.0" - -semver@^7.5.3, semver@^7.6.3: +semver@^7.3.5, semver@^7.3.7, semver@^7.5.3, semver@^7.6.3: version "7.7.4" resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz#28464e36060e991fa7a11d0279d2d3f3b57a7e8a" integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== @@ -5906,11 +5859,6 @@ source-list-map@^2.0.0, source-list-map@^2.0.1: resolved "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== -source-map-js@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" - integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== - source-map-js@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" @@ -6096,16 +6044,11 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -tapable@^2.0.0, tapable@^2.3.0: +tapable@^2.0.0, tapable@^2.1.1, tapable@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz#7e3ea6d5ca31ba8e078b560f0d83ce9a14aa8be6" integrity sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg== -tapable@^2.1.1, tapable@^2.2.0: - version "2.2.1" - resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" - integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== - tar-stream@~2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" @@ -6155,17 +6098,7 @@ terser-webpack-plugin@^5.1.3: serialize-javascript "^6.0.1" terser "^5.16.8" -terser@^5.16.8: - version "5.17.5" - resolved "https://registry.npmjs.org/terser/-/terser-5.17.5.tgz#557141b662b5978ac3d6a2f3d6455a26267ddcd4" - integrity sha512-NqFkzBX34WExkCbk3K5urmNCpEWqMPZnwGI1pMHwqvJ/zDlXC75u3NI7BrzoR8/pryy8Abx2e1i8ChrWkhH1Hg== - dependencies: - "@jridgewell/source-map" "^0.3.2" - acorn "^8.5.0" - commander "^2.20.0" - source-map-support "~0.5.20" - -terser@^5.3.4: +terser@^5.16.8, terser@^5.3.4: version "5.46.0" resolved "https://registry.npmjs.org/terser/-/terser-5.46.0.tgz#1b81e560d584bbdd74a8ede87b4d9477b0ff9695" integrity sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg== @@ -6208,23 +6141,11 @@ tinyrainbow@^3.0.3: resolved "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.0.3.tgz#984a5b1c1b25854a9b6bccbe77964d0593d1ea42" integrity sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q== -tmp@^0.2.4: +tmp@^0.2.4, tmp@~0.2.1: version "0.2.5" resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz#b06bcd23f0f3c8357b426891726d16015abfd8f8" integrity sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow== -tmp@~0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" - integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== - dependencies: - rimraf "^3.0.0" - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -6370,14 +6291,6 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - update-browserslist-db@^1.2.0: version "1.2.3" resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz#64d76db58713136acbeb4c49114366cc6cc2e80d" @@ -6433,7 +6346,18 @@ vite@3.0.0: optionalDependencies: fsevents "~2.3.2" -"vite@^6.0.0 || ^7.0.0": +vite@4.5.14: + version "4.5.14" + resolved "https://registry.npmjs.org/vite/-/vite-4.5.14.tgz#2e652bc1d898265d987d6543ce866ecd65fa4086" + integrity sha512-+v57oAaoYNnO3hIu5Z/tJRZjq5aHM2zDve9YZ8HngVHbhk66RStobhb1sqPMIPEleV6cNKYK4eGrAbE9Ulbl2g== + dependencies: + esbuild "^0.18.10" + postcss "^8.4.27" + rollup "^3.27.1" + optionalDependencies: + fsevents "~2.3.2" + +vite@7.3.1, "vite@^6.0.0 || ^7.0.0": version "7.3.1" resolved "https://registry.npmjs.org/vite/-/vite-7.3.1.tgz#7f6cfe8fb9074138605e822a75d9d30b814d6507" integrity sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA== @@ -6447,6 +6371,19 @@ vite@3.0.0: optionalDependencies: fsevents "~2.3.3" +vite@8.0.1: + version "8.0.1" + resolved "https://registry.npmjs.org/vite/-/vite-8.0.1.tgz#015cef9a747c07c0cf9cf553f37571885504e9d3" + integrity sha512-wt+Z2qIhfFt85uiyRt5LPU4oVEJBXj8hZNWKeqFG4gRG/0RaRGJ7njQCwzFVjO+v4+Ipmf5CY7VdmZRAYYBPHw== + dependencies: + lightningcss "^1.32.0" + picomatch "^4.0.3" + postcss "^8.5.8" + rolldown "1.0.0-rc.10" + tinyglobby "^0.2.15" + optionalDependencies: + fsevents "~2.3.3" + vitest@^4.0.0: version "4.0.18" resolved "https://registry.npmjs.org/vitest/-/vitest-4.0.18.tgz#56f966353eca0b50f4df7540cd4350ca6d454a05" @@ -6473,7 +6410,7 @@ vitest@^4.0.0: vite "^6.0.0 || ^7.0.0" why-is-node-running "^2.3.0" -watchpack@^2.0.0: +watchpack@^2.0.0, watchpack@^2.4.0: version "2.5.1" resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz#dd38b601f669e0cbf567cb802e75cead82cde102" integrity sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg== @@ -6481,14 +6418,6 @@ watchpack@^2.0.0: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" -watchpack@^2.4.0: - version "2.4.0" - resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" - integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== - dependencies: - glob-to-regexp "^0.4.1" - graceful-fs "^4.1.2" - wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" From fdac9ae75bf3a562516707ad41261bb2b3acabe0 Mon Sep 17 00:00:00 2001 From: Tim Fish Date: Mon, 23 Mar 2026 21:05:40 +0000 Subject: [PATCH 2/7] Fix linting --- packages/integration-tests-next/.eslintrc.js | 8 +++++++- packages/integration-tests-next/tsconfig.json | 4 ++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/integration-tests-next/.eslintrc.js b/packages/integration-tests-next/.eslintrc.js index 86143395..bb474177 100644 --- a/packages/integration-tests-next/.eslintrc.js +++ b/packages/integration-tests-next/.eslintrc.js @@ -2,7 +2,13 @@ module.exports = { root: true, extends: ["@sentry-internal/eslint-config/base"], - ignorePatterns: [".eslintrc.js", "fixtures/*/out", "fixtures/*/src"], + ignorePatterns: [ + ".eslintrc.js", + "fixtures/*/out", + "fixtures/*/src", + // We ignore Vite fixtures for now because there are a couple of version mismatches. + "fixtures/vite*/**/*", + ], parserOptions: { tsconfigRootDir: __dirname, project: ["./tsconfig.json"], diff --git a/packages/integration-tests-next/tsconfig.json b/packages/integration-tests-next/tsconfig.json index 656010c6..1e806fd5 100644 --- a/packages/integration-tests-next/tsconfig.json +++ b/packages/integration-tests-next/tsconfig.json @@ -2,6 +2,10 @@ "$schema": "https://json.schemastore.org/tsconfig", "extends": "@sentry-internal/sentry-bundler-plugin-tsconfig/base-config.json", "include": ["./**/*"], + // We exclude the Vite files for now. + // Because the Vite plugin 'references" a different `vite` package when devDeps are loaded, it doesn't + // match all the tested Vite versions. This isn't an issue when the plugin is used with end-users Vite versions. + "exclude": ["./fixtures/vite*/**/*"], "compilerOptions": { "types": ["node"], "module": "es2020", From d8f6038ad51202f08df76c24c6670a85860a562f Mon Sep 17 00:00:00 2001 From: Tim Fish Date: Mon, 23 Mar 2026 23:46:09 +0000 Subject: [PATCH 3/7] Fix Vite version checks --- .../fixtures/vite4/utils.ts | 59 ++++++++----------- .../fixtures/vite7/utils.ts | 2 +- 2 files changed, 27 insertions(+), 34 deletions(-) diff --git a/packages/integration-tests-next/fixtures/vite4/utils.ts b/packages/integration-tests-next/fixtures/vite4/utils.ts index 7386b158..efc22f00 100644 --- a/packages/integration-tests-next/fixtures/vite4/utils.ts +++ b/packages/integration-tests-next/fixtures/vite4/utils.ts @@ -6,7 +6,6 @@ import { TestContext, test as vitestTest } from "vitest"; import { execSync } from "node:child_process"; const cwd = dirname(fileURLToPath(import.meta.url)); -const NODE_MAJOR_VERSION = parseInt(process.versions.node.split(".")[0] || "0", 10); type TestCallback = (props: { outDir: string; @@ -26,37 +25,31 @@ export function test(url: string, callback: TestCallback) { // Clear the output directory before running the test rmSync(outDir, { recursive: true, force: true }); - // Vite v8 requires Node 20+ - if (NODE_MAJOR_VERSION < 20) { - // eslint-disable-next-line @typescript-eslint/no-empty-function - vitestTest.skip(testName); - } else { - vitestTest(`Vite v4 > ${testName}`, (ctx) => - callback({ - outDir, - runBundler: (env) => - runBundler( - `vite build --config ${testName}.config.ts`, - { - cwd, - env: { - ...process.env, - ...env, - }, - }, - outDir - ), - readOutputFiles: () => readAllFiles(outDir), - runFileInNode: (file) => { - const fullPath = join(outDir, file); - return execSync(`node ${fullPath}`, { + vitestTest(`Vite v4 > ${testName}`, (ctx) => + callback({ + outDir, + runBundler: (env) => + runBundler( + `vite build --config ${testName}.config.ts`, + { cwd, - env: { ...process.env, NO_COLOR: "1", FORCE_COLOR: "0" }, - }).toString(); - }, - createTempDir: () => createTempDir(), - ctx, - }) - ); - } + env: { + ...process.env, + ...env, + }, + }, + outDir + ), + readOutputFiles: () => readAllFiles(outDir), + runFileInNode: (file) => { + const fullPath = join(outDir, file); + return execSync(`node ${fullPath}`, { + cwd, + env: { ...process.env, NO_COLOR: "1", FORCE_COLOR: "0" }, + }).toString(); + }, + createTempDir: () => createTempDir(), + ctx, + }) + ); } diff --git a/packages/integration-tests-next/fixtures/vite7/utils.ts b/packages/integration-tests-next/fixtures/vite7/utils.ts index ceb01e6e..02dc755e 100644 --- a/packages/integration-tests-next/fixtures/vite7/utils.ts +++ b/packages/integration-tests-next/fixtures/vite7/utils.ts @@ -26,7 +26,7 @@ export function test(url: string, callback: TestCallback) { // Clear the output directory before running the test rmSync(outDir, { recursive: true, force: true }); - // Vite v8 requires Node 20+ + // Vite v7 requires Node 20+ if (NODE_MAJOR_VERSION < 20) { // eslint-disable-next-line @typescript-eslint/no-empty-function vitestTest.skip(testName); From 2d2fecf87edbba41095f3c402cc8c86831e71d5c Mon Sep 17 00:00:00 2001 From: Tim Fish Date: Tue, 24 Mar 2026 00:44:14 +0000 Subject: [PATCH 4/7] Remove irrelevant test --- .../vite4/debugids-already-injected.config.ts | 19 ------------- .../vite4/debugids-already-injected.test.ts | 28 ------------------- 2 files changed, 47 deletions(-) delete mode 100644 packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts delete mode 100644 packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts diff --git a/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts b/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts deleted file mode 100644 index f3dfcb91..00000000 --- a/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.config.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { sentryVitePlugin } from "@sentry/vite-plugin"; -import { defineConfig } from "vite"; -import { sentryConfig } from "../configs/debugids-already-injected.config.js"; - -export default defineConfig({ - build: { - minify: false, - sourcemap: true, - rollupOptions: { - input: "src/basic.js", - output: { - dir: "out/debugids-already-injected", - entryFileNames: "[name].js", - sourcemapDebugIds: true, - }, - }, - }, - plugins: [sentryVitePlugin(sentryConfig)], -}); diff --git a/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts b/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts deleted file mode 100644 index 5735e771..00000000 --- a/packages/integration-tests-next/fixtures/vite4/debugids-already-injected.test.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { expect } from "vitest"; -import { readAllFiles } from "../utils"; -import { test } from "./utils"; - -test(import.meta.url, ({ runBundler, createTempDir }) => { - const tempDir = createTempDir(); - - runBundler({ SENTRY_TEST_OVERRIDE_TEMP_DIR: tempDir }); - const files = readAllFiles(tempDir); - expect(files).toMatchInlineSnapshot(` - { - "252e0338-8927-4f52-bd57-188131defd0f-0.js": "!(function() { - try { - var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; - e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; - var n = new e.Error().stack; - n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); - } catch (e2) { - } - })(); - console.log("hello world"); - //# debugId=252e0338-8927-4f52-bd57-188131defd0f - //# sourceMappingURL=basic.js.map - ", - "252e0338-8927-4f52-bd57-188131defd0f-0.js.map": "{"version":3,"file":"basic.js","sources":["../../src/basic.js"],"sourcesContent":["// eslint-disable-next-line no-console\\nconsole.log(\\"hello world\\");\\n"],"names":[],"mappings":";;;;;;;;;AACA,QAAQ,IAAI,aAAa;","debugId":"252e0338-8927-4f52-bd57-188131defd0f","debug_id":"252e0338-8927-4f52-bd57-188131defd0f"}", - } - `); -}); From 9a0a1178fa9867dd875ae0995c9a9e5e7f184634 Mon Sep 17 00:00:00 2001 From: Tim Fish Date: Wed, 25 Mar 2026 17:45:44 +0100 Subject: [PATCH 5/7] test: Isolate integration test package installs --- .github/workflows/checks.yml | 7 +- .gitignore | 1 + package.json | 9 +- .../package.json | 2 +- packages/bundler-plugin-core/package.json | 2 +- packages/esbuild-plugin/package.json | 2 +- .../fixtures/patches/@sentry__cli.patch | 8 +- .../fixtures/rolldown/build-info.test.ts | 2 +- .../component-annotation-disabled.test.ts | 2 +- .../component-annotation-next.test.ts | 2 +- .../rolldown/component-annotation.test.ts | 2 +- .../fixtures/rolldown/package.json | 11 + .../fixtures/rollup3/build-info.test.ts | 2 +- .../fixtures/rollup3/package.json | 13 +- .../fixtures/rollup4/build-info.test.ts | 2 +- .../fixtures/rollup4/package.json | 13 +- packages/integration-tests-next/package.json | 2 +- packages/integration-tests-next/setup.mjs | 34 +++ packages/rollup-plugin/package.json | 2 +- packages/vite-plugin/package.json | 2 +- packages/webpack-plugin/package.json | 2 +- scripts/bump-version.js | 43 ++++ yarn.lock | 217 +----------------- 23 files changed, 146 insertions(+), 236 deletions(-) rename patches/@sentry+cli+2.58.5.patch => packages/integration-tests-next/fixtures/patches/@sentry__cli.patch (72%) create mode 100644 packages/integration-tests-next/setup.mjs diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 6b2b0fb7..6db2a629 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -37,7 +37,9 @@ jobs: uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 with: name: dist-artifacts-${{ github.run_id }} - path: packages/*/dist + path: | + packages/*/dist + packages/*/*.tgz retention-days: 1 type-check: @@ -169,6 +171,9 @@ jobs: - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 with: node-version: ${{ matrix.node-version }} + - uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 + with: + version: 10 - name: Use dependency cache uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 id: dependency-cache diff --git a/.gitignore b/.gitignore index 36c57e31..47a8abf5 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ packages/**/yarn.lock .DS_Store packages/bundler-plugin-core/src/version.ts +packages/integration-tests-next/fixtures/**/pnpm-lock.yaml diff --git a/package.json b/package.json index f7d9d9b3..72295217 100644 --- a/package.json +++ b/package.json @@ -18,13 +18,9 @@ "packages/tsconfigs", "packages/vite-plugin", "packages/webpack-plugin", - "packages/integration-tests-next", - "packages/integration-tests-next/fixtures/rolldown", - "packages/integration-tests-next/fixtures/rollup3", - "packages/integration-tests-next/fixtures/rollup4" + "packages/integration-tests-next" ], "scripts": { - "postinstall": "patch-package", "build": "nx run-many --target=build --all", "build:watch": "nx run-many --target=build:watch --all", "build:graph": "nx graph", @@ -47,8 +43,7 @@ "npm-run-all": "^4.1.5", "nx": "22.5.2", "oxfmt": "^0.33.0", - "ts-node": "^10.9.2", - "patch-package": "^8.0.1" + "ts-node": "^10.9.2" }, "volta": { "node": "22.22.0", diff --git a/packages/babel-plugin-component-annotate/package.json b/packages/babel-plugin-component-annotate/package.json index 01a50abd..6db6e9ab 100644 --- a/packages/babel-plugin-component-annotate/package.json +++ b/packages/babel-plugin-component-annotate/package.json @@ -32,7 +32,7 @@ "module": "dist/esm/index.mjs", "types": "dist/types/index.d.ts", "scripts": { - "build": "premove ./out && run-p build:rollup build:types", + "build": "premove ./out && run-p build:rollup build:types && run-s build:npm", "build:watch": "run-p build:rollup:watch build:types:watch", "build:rollup": "rolldown --config rollup.config.mjs", "build:rollup:watch": "rolldown --config rollup.config.mjs --watch --no-watch.clearScreen", diff --git a/packages/bundler-plugin-core/package.json b/packages/bundler-plugin-core/package.json index b6ac8a15..28359231 100644 --- a/packages/bundler-plugin-core/package.json +++ b/packages/bundler-plugin-core/package.json @@ -34,7 +34,7 @@ "types": "dist/types/index.d.ts", "scripts": { "prebuild": "node -p \"'export const LIB_VERSION = ' + JSON.stringify(require('./package.json').version) + ';'\" > src/version.ts", - "build": "premove ./out && run-p build:rollup build:types", + "build": "premove ./out && run-p build:rollup build:types && run-s build:npm", "build:watch": "run-p build:rollup:watch build:types:watch", "build:rollup": "rolldown --config rollup.config.mjs", "build:rollup:watch": "rolldown --config rollup.config.mjs --watch --no-watch.clearScreen", diff --git a/packages/esbuild-plugin/package.json b/packages/esbuild-plugin/package.json index d34de376..45fbea76 100644 --- a/packages/esbuild-plugin/package.json +++ b/packages/esbuild-plugin/package.json @@ -29,7 +29,7 @@ "module": "dist/esm/index.mjs", "types": "dist/types/index.d.ts", "scripts": { - "build": "premove ./out && run-p build:rollup build:types", + "build": "premove ./out && run-p build:rollup build:types && run-s build:npm", "build:watch": "run-p build:rollup:watch build:types:watch", "build:rollup": "rolldown --config rollup.config.mjs", "build:rollup:watch": "rolldown --config rollup.config.mjs --watch --no-watch.clearScreen", diff --git a/patches/@sentry+cli+2.58.5.patch b/packages/integration-tests-next/fixtures/patches/@sentry__cli.patch similarity index 72% rename from patches/@sentry+cli+2.58.5.patch rename to packages/integration-tests-next/fixtures/patches/@sentry__cli.patch index 975845ad..d57a008a 100644 --- a/patches/@sentry+cli+2.58.5.patch +++ b/packages/integration-tests-next/fixtures/patches/@sentry__cli.patch @@ -1,7 +1,7 @@ -diff --git a/node_modules/@sentry/cli/js/helper.js b/node_modules/@sentry/cli/js/helper.js -index 56f95c9..b97e41b 100644 ---- a/node_modules/@sentry/cli/js/helper.js -+++ b/node_modules/@sentry/cli/js/helper.js +diff --git a/js/helper.js b/js/helper.js +index 56f95c9784d32a48e98b8341bfa336f0ed61a6e7..b97e41b4dcf96b9dcd9e171b91b575898b6cfbc3 100644 +--- a/js/helper.js ++++ b/js/helper.js @@ -295,6 +295,13 @@ function execute(args_1, live_1, silent_1, configFile_1) { if (config.vcsRemote) { env.SENTRY_VCS_REMOTE = config.vcsRemote; diff --git a/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts b/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts index 127e8c17..61aaf800 100644 --- a/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts @@ -6,7 +6,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["react","rolldown"],"depsVersions":{"react":19},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); + !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["@sentry/rollup-plugin","react","rolldown"],"depsVersions":{"react":19},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); //#endregion", } diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts index 3f98e67c..bff61bbf 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts @@ -5,7 +5,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b0a43d00-208c-4b0e-b024-c0951a1c11f8",e._sentryDebugIdIdentifier="sentry-dbid-b0a43d00-208c-4b0e-b024-c0951a1c11f8");}catch(e){}}();import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; + "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="85f51673-9b26-4de9-b6ba-12058e53f08b",e._sentryDebugIdIdentifier="sentry-dbid-85f51673-9b26-4de9-b6ba-12058e53f08b");}catch(e){}}();import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts index e3795304..6b782f3a 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts @@ -5,7 +5,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4bdf6d53-8b4d-4766-b048-143c5e6d2cbd",e._sentryDebugIdIdentifier="sentry-dbid-4bdf6d53-8b4d-4766-b048-143c5e6d2cbd");}catch(e){}}();import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; + "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="08d8ea54-706b-4dfc-9e1f-19af2d0fc86e",e._sentryDebugIdIdentifier="sentry-dbid-08d8ea54-706b-4dfc-9e1f-19af2d0fc86e");}catch(e){}}();import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts index fc9c8203..1968819e 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts @@ -5,7 +5,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0880f8a4-f072-4b80-b577-4bb7d5be4841",e._sentryDebugIdIdentifier="sentry-dbid-0880f8a4-f072-4b80-b577-4bb7d5be4841");}catch(e){}}();import { jsx, jsxs } from "../../../../../node_modules/react/jsx-runtime.js"; + "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0ad46712-3fec-46f3-8539-60a50dfc7fc6",e._sentryDebugIdIdentifier="sentry-dbid-0ad46712-3fec-46f3-8539-60a50dfc7fc6");}catch(e){}}();import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { diff --git a/packages/integration-tests-next/fixtures/rolldown/package.json b/packages/integration-tests-next/fixtures/rolldown/package.json index 7ac86b51..0ed82951 100644 --- a/packages/integration-tests-next/fixtures/rolldown/package.json +++ b/packages/integration-tests-next/fixtures/rolldown/package.json @@ -4,7 +4,18 @@ "private": true, "type": "module", "dependencies": { + "@sentry/rollup-plugin": "5.1.1", "react": "^19.2.4", "rolldown": "^1.0.0-rc.6" + }, + "pnpm": { + "overrides": { + "@sentry/bundler-plugin-core": "file:../../../bundler-plugin-core/sentry-bundler-plugin-core-5.1.1.tgz", + "@sentry/rollup-plugin": "file:../../../rollup-plugin/sentry-rollup-plugin-5.1.1.tgz", + "@sentry/babel-plugin-component-annotate": "file:../../../babel-plugin-component-annotate/sentry-babel-plugin-component-annotate-5.1.1.tgz" + }, + "patchedDependencies": { + "@sentry/cli": "../patches/@sentry__cli.patch" + } } } diff --git a/packages/integration-tests-next/fixtures/rollup3/build-info.test.ts b/packages/integration-tests-next/fixtures/rollup3/build-info.test.ts index a6c895dc..92a81886 100644 --- a/packages/integration-tests-next/fixtures/rollup3/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/rollup3/build-info.test.ts @@ -6,7 +6,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "// eslint-disable-next-line no-console - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["@rollup/plugin-babel","@rollup/plugin-node-resolve","react","rollup"],"depsVersions":{"react":19,"rollup":3},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="252e0338-8927-4f52-bd57-188131defd0f",e._sentryDebugIdIdentifier="sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f");}catch(e){}}();console.log("hello world"); + !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["@rollup/plugin-babel","@rollup/plugin-node-resolve","@sentry/rollup-plugin","react","rollup"],"depsVersions":{"react":19,"rollup":3},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="252e0338-8927-4f52-bd57-188131defd0f",e._sentryDebugIdIdentifier="sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f");}catch(e){}}();console.log("hello world"); ", } `); diff --git a/packages/integration-tests-next/fixtures/rollup3/package.json b/packages/integration-tests-next/fixtures/rollup3/package.json index 22b9c9ca..5b3dc181 100644 --- a/packages/integration-tests-next/fixtures/rollup3/package.json +++ b/packages/integration-tests-next/fixtures/rollup3/package.json @@ -7,6 +7,17 @@ "react": "^19.2.4", "rollup": "^3.30.0", "@rollup/plugin-babel": "^6.0.4", - "@rollup/plugin-node-resolve": "^15.2.3" + "@rollup/plugin-node-resolve": "^15.2.3", + "@sentry/rollup-plugin": "5.1.1" + }, + "pnpm": { + "overrides": { + "@sentry/bundler-plugin-core": "file:../../../bundler-plugin-core/sentry-bundler-plugin-core-5.1.1.tgz", + "@sentry/rollup-plugin": "file:../../../rollup-plugin/sentry-rollup-plugin-5.1.1.tgz", + "@sentry/babel-plugin-component-annotate": "file:../../../babel-plugin-component-annotate/sentry-babel-plugin-component-annotate-5.1.1.tgz" + }, + "patchedDependencies": { + "@sentry/cli": "../patches/@sentry__cli.patch" + } } } diff --git a/packages/integration-tests-next/fixtures/rollup4/build-info.test.ts b/packages/integration-tests-next/fixtures/rollup4/build-info.test.ts index e0a8029d..60fe63ca 100644 --- a/packages/integration-tests-next/fixtures/rollup4/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/rollup4/build-info.test.ts @@ -6,7 +6,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "// eslint-disable-next-line no-console - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["@rollup/plugin-babel","@rollup/plugin-node-resolve","react","rollup"],"depsVersions":{"react":19,"rollup":4},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="252e0338-8927-4f52-bd57-188131defd0f",e._sentryDebugIdIdentifier="sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f");}catch(e){}}();console.log("hello world"); + !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["@rollup/plugin-babel","@rollup/plugin-node-resolve","@sentry/rollup-plugin","react","rollup"],"depsVersions":{"react":19,"rollup":4},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="252e0338-8927-4f52-bd57-188131defd0f",e._sentryDebugIdIdentifier="sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f");}catch(e){}}();console.log("hello world"); ", } `); diff --git a/packages/integration-tests-next/fixtures/rollup4/package.json b/packages/integration-tests-next/fixtures/rollup4/package.json index f1e28cea..0914c4c4 100644 --- a/packages/integration-tests-next/fixtures/rollup4/package.json +++ b/packages/integration-tests-next/fixtures/rollup4/package.json @@ -7,6 +7,17 @@ "react": "^19.2.4", "rollup": "^4.59.0", "@rollup/plugin-babel": "^6.0.4", - "@rollup/plugin-node-resolve": "16.0.3" + "@rollup/plugin-node-resolve": "16.0.3", + "@sentry/rollup-plugin": "5.1.1" + }, + "pnpm": { + "overrides": { + "@sentry/bundler-plugin-core": "file:../../../bundler-plugin-core/sentry-bundler-plugin-core-5.1.1.tgz", + "@sentry/rollup-plugin": "file:../../../rollup-plugin/sentry-rollup-plugin-5.1.1.tgz", + "@sentry/babel-plugin-component-annotate": "file:../../../babel-plugin-component-annotate/sentry-babel-plugin-component-annotate-5.1.1.tgz" + }, + "patchedDependencies": { + "@sentry/cli": "../patches/@sentry__cli.patch" + } } } diff --git a/packages/integration-tests-next/package.json b/packages/integration-tests-next/package.json index 3942ef13..6049cd05 100644 --- a/packages/integration-tests-next/package.json +++ b/packages/integration-tests-next/package.json @@ -4,7 +4,7 @@ "license": "MIT", "private": true, "scripts": { - "test": "vitest run --pool threads", + "test": "node setup.mjs && vitest run --pool threads", "lint": "eslint .", "check:types": "tsc --project ./tsconfig.json --noEmit", "clean": "run-s clean:build", diff --git a/packages/integration-tests-next/setup.mjs b/packages/integration-tests-next/setup.mjs new file mode 100644 index 00000000..c3c1f940 --- /dev/null +++ b/packages/integration-tests-next/setup.mjs @@ -0,0 +1,34 @@ +/* eslint-disable no-console */ +import { promises as fs } from "fs"; +import { join } from "path"; +import { fileURLToPath } from "url"; +import { execSync } from "child_process"; + +console.log("Installing all dependencies for fixtures..."); + +const __dirname = fileURLToPath(new URL(".", import.meta.url)); +const fixturesDir = join(__dirname, "fixtures"); +const entries = await fs.readdir(fixturesDir, { withFileTypes: true }); + +// Get all directories +const directories = entries + .filter((entry) => entry.isDirectory()) + .map((entry) => join(fixturesDir, entry.name)); + +for (const dir of directories) { + try { + const packageJson = await fs.readFile(join(dir, "package.json"), { encoding: "utf-8" }); + if (packageJson.length < 50) { + continue; + } + } catch { + continue; + } + + execSync("pnpm install", { + cwd: dir, + stdio: "inherit", + }); +} + +console.log("All fixture dependencies installed successfully!"); diff --git a/packages/rollup-plugin/package.json b/packages/rollup-plugin/package.json index a2b1ffdb..d5cf5d36 100644 --- a/packages/rollup-plugin/package.json +++ b/packages/rollup-plugin/package.json @@ -30,7 +30,7 @@ "module": "dist/esm/index.mjs", "types": "dist/types/index.d.ts", "scripts": { - "build": "premove ./out && run-p build:rollup build:types", + "build": "premove ./out && run-p build:rollup build:types && run-s build:npm", "build:watch": "run-p build:rollup:watch build:types:watch", "build:rollup": "rolldown --config rollup.config.mjs", "build:rollup:watch": "rolldown --config rollup.config.mjs --watch --no-watch.clearScreen", diff --git a/packages/vite-plugin/package.json b/packages/vite-plugin/package.json index c08b36d1..c266d193 100644 --- a/packages/vite-plugin/package.json +++ b/packages/vite-plugin/package.json @@ -29,7 +29,7 @@ "module": "dist/esm/index.mjs", "types": "dist/types/index.d.ts", "scripts": { - "build": "premove ./out && run-p build:rollup build:types", + "build": "premove ./out && run-p build:rollup build:types && run-s build:npm", "build:watch": "run-p build:rollup:watch build:types:watch", "build:rollup": "rolldown --config rollup.config.mjs", "build:rollup:watch": "rolldown --config rollup.config.mjs --watch --no-watch.clearScreen", diff --git a/packages/webpack-plugin/package.json b/packages/webpack-plugin/package.json index 4b7b643d..43af676e 100644 --- a/packages/webpack-plugin/package.json +++ b/packages/webpack-plugin/package.json @@ -34,7 +34,7 @@ "module": "dist/esm/index.mjs", "types": "dist/types/index.d.ts", "scripts": { - "build": "premove ./dist && run-p build:rollup build:types", + "build": "premove ./dist && run-p build:rollup build:types && run-s build:npm", "build:watch": "run-p build:rollup:watch build:types:watch", "build:rollup": "rolldown --config rollup.config.mjs", "build:rollup:watch": "rolldown --config rollup.config.mjs --watch --no-watch.clearScreen", diff --git a/scripts/bump-version.js b/scripts/bump-version.js index d4a4b1c8..ba0683ec 100644 --- a/scripts/bump-version.js +++ b/scripts/bump-version.js @@ -64,6 +64,48 @@ function bumpVersions(rootDir, newVersion) { return workspacePackages.length; } +/** + * The test fixtures have their own pnpm installs with overrides that point to the local tarballs. + * We need to update those overrides to point to the correct version's tarball. + */ +function bumpTestFixtureVersions(rootDir, newVersion) { + const fixturesDir = path.join(rootDir, "packages", "integration-tests-next", "fixtures"); + const entries = fs.readdirSync(fixturesDir, { withFileTypes: true }); + + for (const entry of entries) { + if (!entry.isDirectory()) { + continue; + } + + const pkgPath = path.join(fixturesDir, entry.name, "package.json"); + if (!fs.existsSync(pkgPath)) { + continue; + } + + const pkg = readJson(pkgPath); + if (!pkg.dependencies) { + continue; + } + + for (const dep of Object.keys(pkg.dependencies)) { + if (dep.startsWith("@sentry/")) { + pkg.dependencies[dep] = newVersion; + } + } + + if (pkg?.pnpm?.overrides) { + for (const dep of Object.keys(pkg.pnpm.overrides)) { + if (dep.startsWith("@sentry/")) { + const orig = pkg.pnpm.overrides[dep]; + pkg.pnpm.overrides[dep] = orig.replace(/-\d*\.\d*\..+?\.tgz/, `-${newVersion}.tgz`); + } + } + } + + fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + "\n"); + } +} + // CLI entry point if (require.main === module) { const newVersion = process.argv[2]; @@ -75,6 +117,7 @@ if (require.main === module) { const rootDir = path.join(__dirname, ".."); const updatedCount = bumpVersions(rootDir, newVersion); + bumpTestFixtureVersions(rootDir, newVersion); // Write a .version file used by the gitflow sync workflow to detect version bumps const versionFile = { diff --git a/yarn.lock b/yarn.lock index cfe932c8..fd68fd11 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1146,17 +1146,6 @@ is-reference "1.2.1" magic-string "^0.30.3" -"@rollup/plugin-node-resolve@16.0.3": - version "16.0.3" - resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.3.tgz#0988e6f2cbb13316b0f5e7213f757bc9ed44928f" - integrity sha512-lUYM3UBGuM93CnMPG1YocWu7X802BrNF3jW2zny5gQyLQgRFJhV1Sq0Zi74+dh/6NBx1DxFC4b4GXg9wUCG5Qg== - dependencies: - "@rollup/pluginutils" "^5.0.1" - "@types/resolve" "1.20.2" - deepmerge "^4.2.2" - is-module "^1.0.0" - resolve "^1.22.1" - "@rollup/plugin-node-resolve@^15.2.3": version "15.2.3" resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz#e5e0b059bd85ca57489492f295ce88c2d4b0daf9" @@ -2504,13 +2493,6 @@ braces@^3.0.2: dependencies: fill-range "^7.0.1" -braces@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" - integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== - dependencies: - fill-range "^7.1.1" - browserslist@^4.14.3: version "4.28.1" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz#7f534594628c53c63101079e27e40de490456a95" @@ -2579,7 +2561,7 @@ cacache@^15.0.5: tar "^6.0.2" unique-filename "^1.1.1" -call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: +call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== @@ -2595,24 +2577,6 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" -call-bind@^1.0.8: - version "1.0.8" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" - integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== - dependencies: - call-bind-apply-helpers "^1.0.0" - es-define-property "^1.0.0" - get-intrinsic "^1.2.4" - set-function-length "^1.2.2" - -call-bound@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" - integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== - dependencies: - call-bind-apply-helpers "^1.0.2" - get-intrinsic "^1.3.0" - callsites@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -2660,11 +2624,6 @@ chrome-trace-event@^1.0.2: resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== -ci-info@^3.7.0: - version "3.9.0" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" - integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== - clean-stack@^2.0.0: version "2.2.0" resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" @@ -2809,15 +2768,6 @@ cross-spawn@^7.0.2: shebang-command "^2.0.0" which "^2.0.1" -cross-spawn@^7.0.3: - version "7.0.6" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" - integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - csstype@^3.0.2: version "3.1.3" resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" @@ -2854,15 +2804,6 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" -define-data-property@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" - integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== - dependencies: - es-define-property "^1.0.0" - es-errors "^1.3.0" - gopd "^1.0.1" - define-lazy-prop@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" @@ -3062,7 +3003,7 @@ es-abstract@^1.19.0, es-abstract@^1.20.4: unbox-primitive "^1.0.2" which-typed-array "^1.1.9" -es-define-property@^1.0.0, es-define-property@^1.0.1: +es-define-property@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== @@ -3765,13 +3706,6 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -fill-range@^7.1.1: - version "7.1.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" - integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== - dependencies: - to-regex-range "^5.0.1" - finalhandler@1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" @@ -3810,13 +3744,6 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -find-yarn-workspace-root@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#f47fb8d239c900eb78179aa81b66673eac88f7bd" - integrity sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ== - dependencies: - micromatch "^4.0.2" - flat-cache@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" @@ -3894,15 +3821,6 @@ fs-constants@^1.0.0: resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -fs-extra@^10.0.0: - version "10.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" - integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-minipass@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" @@ -3970,7 +3888,7 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@ has-proto "^1.0.1" has-symbols "^1.0.3" -get-intrinsic@^1.2.4, get-intrinsic@^1.2.6, get-intrinsic@^1.3.0: +get-intrinsic@^1.2.6: version "1.3.0" resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== @@ -4096,7 +4014,7 @@ gopd@^1.2.0: resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.2.4, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -4133,13 +4051,6 @@ has-property-descriptors@^1.0.0: dependencies: get-intrinsic "^1.1.1" -has-property-descriptors@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" - integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== - dependencies: - es-define-property "^1.0.0" - has-proto@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" @@ -4461,18 +4372,13 @@ is-weakref@^1.0.2: dependencies: call-bind "^1.0.2" -is-wsl@^2.1.1, is-wsl@^2.2.0: +is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== dependencies: is-docker "^2.0.0" -isarray@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" - integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== - isexe@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -4561,17 +4467,6 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -json-stable-stringify@^1.0.2: - version "1.3.0" - resolved "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.3.0.tgz#8903cfac42ea1a0f97f35d63a4ce0518f0cc6a70" - integrity sha512-qtYiSSFlwot9XHtF9bD9c7rwKjr+RecWT//ZnPvSmEjpV5mmPOCN4j8UjY5hbjNkOwZ/jQv3J6R1/pL7RwgMsg== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.4" - isarray "^2.0.5" - jsonify "^0.0.1" - object-keys "^1.1.1" - json5@^2.1.2, json5@^2.2.1, json5@^2.2.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" @@ -4582,20 +4477,6 @@ jsonc-parser@3.2.0: resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== -jsonfile@^6.0.1: - version "6.2.0" - resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz#7c265bd1b65de6977478300087c99f1c84383f62" - integrity sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@^0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz#2aa3111dae3d34a0f151c63f3a45d995d9420978" - integrity sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg== - "jsx-ast-utils@^2.4.1 || ^3.0.0": version "3.3.3" resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz#76b3e6e6cece5c69d49a5792c3d01bd1a0cdc7ea" @@ -4604,13 +4485,6 @@ jsonify@^0.0.1: array-includes "^3.1.5" object.assign "^4.1.3" -klaw-sync@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz#1fd2cfd56ebb6250181114f0a581167099c2b28c" - integrity sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ== - dependencies: - graceful-fs "^4.1.11" - levn@^0.4.1: version "0.4.1" resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -4779,14 +4653,6 @@ methods@~1.1.2: resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@^4.0.2: - version "4.0.8" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" - integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== - dependencies: - braces "^3.0.3" - picomatch "^2.3.1" - micromatch@^4.0.4: version "4.0.5" resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" @@ -5154,14 +5020,6 @@ onetime@^5.1.0: dependencies: mimic-fn "^2.1.0" -open@^7.4.2: - version "7.4.2" - resolved "https://registry.npmjs.org/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" - integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== - dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" - open@^8.4.0: version "8.4.2" resolved "https://registry.npmjs.org/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" @@ -5284,26 +5142,6 @@ parseurl@~1.3.3: resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -patch-package@^8.0.1: - version "8.0.1" - resolved "https://registry.npmjs.org/patch-package/-/patch-package-8.0.1.tgz#79d02f953f711e06d1f8949c8a13e5d3d7ba1a60" - integrity sha512-VsKRIA8f5uqHQ7NGhwIna6Bx6D9s/1iXlA1hthBVBEbkq+t4kXD0HHt+rJhf/Z+Ci0F/HCB2hvn0qLdLG+Qxlw== - dependencies: - "@yarnpkg/lockfile" "^1.1.0" - chalk "^4.1.2" - ci-info "^3.7.0" - cross-spawn "^7.0.3" - find-yarn-workspace-root "^2.0.0" - fs-extra "^10.0.0" - json-stable-stringify "^1.0.2" - klaw-sync "^6.0.0" - minimist "^1.2.6" - open "^7.4.2" - semver "^7.5.3" - slash "^2.0.0" - tmp "^0.2.4" - yaml "^2.2.2" - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -5534,11 +5372,6 @@ react@^18.2.0: dependencies: loose-envify "^1.1.0" -react@^19.2.4: - version "19.2.4" - resolved "https://registry.npmjs.org/react/-/react-19.2.4.tgz#438e57baa19b77cb23aab516cf635cd0579ee09a" - integrity sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ== - read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -5660,14 +5493,7 @@ rollup@^2.75.6: optionalDependencies: fsevents "~2.3.2" -rollup@^3.30.0: - version "3.30.0" - resolved "https://registry.npmjs.org/rollup/-/rollup-3.30.0.tgz#3fa506fee2c5ba9d540a38da87067376cd55966d" - integrity sha512-kQvGasUgN+AlWGliFn2POSajRQEsULVYFGTvOZmK06d7vCD+YhZztt70kGk3qaeAXeWYL5eO7zx+rAubBc55eA== - optionalDependencies: - fsevents "~2.3.2" - -rollup@^4.43.0, rollup@^4.59.0: +rollup@^4.43.0: version "4.59.0" resolved "https://registry.npmjs.org/rollup/-/rollup-4.59.0.tgz#cf74edac17c1486f562d728a4d923a694abdf06f" integrity sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg== @@ -5778,7 +5604,7 @@ semver@^7.3.5, semver@^7.3.7: dependencies: lru-cache "^6.0.0" -semver@^7.5.3, semver@^7.6.3: +semver@^7.6.3: version "7.7.4" resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz#28464e36060e991fa7a11d0279d2d3f3b57a7e8a" integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== @@ -5826,18 +5652,6 @@ serve-static@1.15.0: parseurl "~1.3.3" send "0.18.0" -set-function-length@^1.2.2: - version "1.2.2" - resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" - integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== - dependencies: - define-data-property "^1.1.4" - es-errors "^1.3.0" - function-bind "^1.1.2" - get-intrinsic "^1.2.4" - gopd "^1.0.1" - has-property-descriptors "^1.0.2" - setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" @@ -5891,11 +5705,6 @@ signal-exit@^3.0.2: resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -slash@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" - integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== - slash@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -6208,11 +6017,6 @@ tinyrainbow@^3.0.3: resolved "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.0.3.tgz#984a5b1c1b25854a9b6bccbe77964d0593d1ea42" integrity sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q== -tmp@^0.2.4: - version "0.2.5" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz#b06bcd23f0f3c8357b426891726d16015abfd8f8" - integrity sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow== - tmp@~0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" @@ -6360,11 +6164,6 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" -universalify@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" - integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== - unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -6669,7 +6468,7 @@ yallist@^4.0.0: resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^2.2.2, yaml@^2.6.0: +yaml@^2.6.0: version "2.8.2" resolved "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz#5694f25eca0ce9c3e7a9d9e00ce0ddabbd9e35c5" integrity sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A== From 707b3273bfe71c8687e9d3c3f46789d182340691 Mon Sep 17 00:00:00 2001 From: Tim Fish Date: Thu, 26 Mar 2026 00:26:07 +0100 Subject: [PATCH 6/7] Get Vite tests working isolated --- .../fixtures/rolldown/build-info.test.ts | 23 ++++++++++++++++--- .../component-annotation-disabled.test.ts | 16 +++++++++---- .../component-annotation-next.test.ts | 16 +++++++++---- .../rolldown/component-annotation.test.ts | 16 +++++++++---- .../fixtures/vite4/build-info.test.ts | 2 +- .../component-annotation-disabled.test.ts | 14 +++++++++-- .../vite4/component-annotation-next.test.ts | 14 +++++++++-- .../vite4/component-annotation.test.ts | 14 +++++++++-- .../fixtures/vite4/package.json | 14 ++++++++++- .../fixtures/vite4/src/app.jsx | 2 ++ .../fixtures/vite4/utils.ts | 1 + .../fixtures/vite7/build-info.test.ts | 2 +- .../component-annotation-disabled.test.ts | 14 +++++++++-- .../vite7/component-annotation-next.test.ts | 14 +++++++++-- .../vite7/component-annotation.test.ts | 14 +++++++++-- .../fixtures/vite7/package.json | 14 ++++++++++- .../fixtures/vite7/src/app.jsx | 2 ++ .../fixtures/vite7/utils.ts | 1 + .../fixtures/vite8/build-info.test.ts | 2 +- .../component-annotation-disabled.test.ts | 17 +++++++++++++- .../vite8/component-annotation-next.test.ts | 17 +++++++++++++- .../vite8/component-annotation.test.ts | 17 +++++++++++++- .../fixtures/vite8/package.json | 14 ++++++++++- .../fixtures/vite8/src/app.jsx | 2 ++ 24 files changed, 223 insertions(+), 39 deletions(-) diff --git a/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts b/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts index 61aaf800..17f63e44 100644 --- a/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/build-info.test.ts @@ -6,9 +6,26 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { expect(readOutputFiles()).toMatchInlineSnapshot(` { "basic.js": "//#region src/basic.js - !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"build-information-injection-test"};e.SENTRY_BUILD_INFO={"deps":["@sentry/rollup-plugin","react","rolldown"],"depsVersions":{"react":19},"nodeVersion":"NODE_VERSION"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b699d9c1-b033-4536-aa25-233c92609b54",e._sentryDebugIdIdentifier="sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54");}catch(e){}}();console.log("hello world"); - - //#endregion", + (function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "build-information-injection-test" }; + e.SENTRY_BUILD_INFO = { + "deps": [ + "@sentry/rollup-plugin", + "react", + "rolldown" + ], + "depsVersions": { "react": 19 }, + "nodeVersion":"NODE_VERSION" + }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "b699d9c1-b033-4536-aa25-233c92609b54", e._sentryDebugIdIdentifier = "sentry-dbid-b699d9c1-b033-4536-aa25-233c92609b54"); + } catch (e) {} + })(); + console.log("hello world"); + //#endregion + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts index bff61bbf..6cfa24bb 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation-disabled.test.ts @@ -5,21 +5,27 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="85f51673-9b26-4de9-b6ba-12058e53f08b",e._sentryDebugIdIdentifier="sentry-dbid-85f51673-9b26-4de9-b6ba-12058e53f08b");}catch(e){}}();import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; - + "app.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "85f51673-9b26-4de9-b6ba-12058e53f08b", e._sentryDebugIdIdentifier = "sentry-dbid-85f51673-9b26-4de9-b6ba-12058e53f08b"); + } catch (e) {} + })(); + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { return /* @__PURE__ */ jsx("span", { children: "Component A" }); } - //#endregion //#region src/app.jsx function App() { return /* @__PURE__ */ jsxs("span", { children: [/* @__PURE__ */ jsx(ComponentA, {}), ";"] }); } - //#endregion - export { App as default };", + export { App as default }; + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts index 6b782f3a..fc72317d 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation-next.test.ts @@ -5,8 +5,15 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="08d8ea54-706b-4dfc-9e1f-19af2d0fc86e",e._sentryDebugIdIdentifier="sentry-dbid-08d8ea54-706b-4dfc-9e1f-19af2d0fc86e");}catch(e){}}();import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; - + "app.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "08d8ea54-706b-4dfc-9e1f-19af2d0fc86e", e._sentryDebugIdIdentifier = "sentry-dbid-08d8ea54-706b-4dfc-9e1f-19af2d0fc86e"); + } catch (e) {} + })(); + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { return /* @__PURE__ */ jsx("span", { @@ -14,7 +21,6 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { children: "Component A" }); } - //#endregion //#region src/app.jsx function App() { @@ -23,9 +29,9 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { children: [/* @__PURE__ */ jsx(ComponentA, {}), ";"] }); } - //#endregion - export { App as default };", + export { App as default }; + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts b/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts index 1968819e..3d8a49a3 100644 --- a/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts +++ b/packages/integration-tests-next/fixtures/rolldown/component-annotation.test.ts @@ -5,8 +5,15 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": "!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"CURRENT_SHA"};var n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0ad46712-3fec-46f3-8539-60a50dfc7fc6",e._sentryDebugIdIdentifier="sentry-dbid-0ad46712-3fec-46f3-8539-60a50dfc7fc6");}catch(e){}}();import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; - + "app.js": "(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "0ad46712-3fec-46f3-8539-60a50dfc7fc6", e._sentryDebugIdIdentifier = "sentry-dbid-0ad46712-3fec-46f3-8539-60a50dfc7fc6"); + } catch (e) {} + })(); + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; //#region src/component-a.jsx function ComponentA() { return /* @__PURE__ */ jsx("span", { @@ -15,7 +22,6 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { children: "Component A" }); } - //#endregion //#region src/app.jsx function App() { @@ -28,9 +34,9 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { }), ";"] }); } - //#endregion - export { App as default };", + export { App as default }; + ", } `); }); diff --git a/packages/integration-tests-next/fixtures/vite4/build-info.test.ts b/packages/integration-tests-next/fixtures/vite4/build-info.test.ts index 5c4a12e5..e185858a 100644 --- a/packages/integration-tests-next/fixtures/vite4/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/vite4/build-info.test.ts @@ -9,7 +9,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { try { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "build-information-injection-test" }; - e.SENTRY_BUILD_INFO = { "deps": ["@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 4 }, "nodeVersion":"NODE_VERSION" }; + e.SENTRY_BUILD_INFO = { "deps": ["@sentry/vite-plugin", "@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 4 }, "nodeVersion":"NODE_VERSION" }; var n = new e.Error().stack; n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); } catch (e2) { diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts index 669aebae..3fdf123e 100644 --- a/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation-disabled.test.ts @@ -10,11 +10,21 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; var n = new e.Error().stack; - n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "5950dfde-7033-4e00-a69c-652e1b5bc157", e._sentryDebugIdIdentifier = "sentry-dbid-5950dfde-7033-4e00-a69c-652e1b5bc157"); } catch (e2) { } })(); - import "../../../../../node_modules/react/jsx-dev-runtime.js"; + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; + function ComponentA() { + return /* @__PURE__ */ jsx("span", { children: "Component A" }); + } + function App() { + return /* @__PURE__ */ jsxs("span", { children: [ + /* @__PURE__ */ jsx(ComponentA, {}), + ";" + ] }); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts index 669aebae..4a616db3 100644 --- a/packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation-next.test.ts @@ -10,11 +10,21 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; var n = new e.Error().stack; - n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "62a0263b-dddb-4ac5-bb1a-a352edfa415c", e._sentryDebugIdIdentifier = "sentry-dbid-62a0263b-dddb-4ac5-bb1a-a352edfa415c"); } catch (e2) { } })(); - import "../../../../../node_modules/react/jsx-dev-runtime.js"; + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; + function ComponentA() { + return /* @__PURE__ */ jsx("span", { "data-sentry-component": "ComponentA", children: "Component A" }); + } + function App() { + return /* @__PURE__ */ jsxs("span", { "data-sentry-component": "App", children: [ + /* @__PURE__ */ jsx(ComponentA, {}), + ";" + ] }); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts b/packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts index 669aebae..7f123f0b 100644 --- a/packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts +++ b/packages/integration-tests-next/fixtures/vite4/component-annotation.test.ts @@ -10,11 +10,21 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; var n = new e.Error().stack; - n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d2aba7de-9acd-4eaf-8153-269a881dd7a6", e._sentryDebugIdIdentifier = "sentry-dbid-d2aba7de-9acd-4eaf-8153-269a881dd7a6"); } catch (e2) { } })(); - import "../../../../../node_modules/react/jsx-dev-runtime.js"; + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; + function ComponentA() { + return /* @__PURE__ */ jsx("span", { "data-sentry-component": "ComponentA", "data-sentry-source-file": "component-a.jsx", children: "Component A" }); + } + function App() { + return /* @__PURE__ */ jsxs("span", { "data-sentry-component": "App", "data-sentry-source-file": "app.jsx", children: [ + /* @__PURE__ */ jsx(ComponentA, { "data-sentry-element": "ComponentA", "data-sentry-source-file": "app.jsx" }), + ";" + ] }); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite4/package.json b/packages/integration-tests-next/fixtures/vite4/package.json index c0a8f488..d57b814e 100644 --- a/packages/integration-tests-next/fixtures/vite4/package.json +++ b/packages/integration-tests-next/fixtures/vite4/package.json @@ -6,6 +6,18 @@ "dependencies": { "react": "19.2.4", "vite": "4.5.14", - "@vitejs/plugin-react": "5.2.0" + "@vitejs/plugin-react": "5.2.0", + "@sentry/vite-plugin": "5.1.1" + }, + "pnpm": { + "overrides": { + "@sentry/bundler-plugin-core": "file:../../../bundler-plugin-core/sentry-bundler-plugin-core-5.1.1.tgz", + "@sentry/rollup-plugin": "file:../../../rollup-plugin/sentry-rollup-plugin-5.1.1.tgz", + "@sentry/vite-plugin": "file:../../../vite-plugin/sentry-vite-plugin-5.1.1.tgz", + "@sentry/babel-plugin-component-annotate": "file:../../../babel-plugin-component-annotate/sentry-babel-plugin-component-annotate-5.1.1.tgz" + }, + "patchedDependencies": { + "@sentry/cli": "../patches/@sentry__cli.patch" + } } } diff --git a/packages/integration-tests-next/fixtures/vite4/src/app.jsx b/packages/integration-tests-next/fixtures/vite4/src/app.jsx index 614d38c8..5be821b4 100644 --- a/packages/integration-tests-next/fixtures/vite4/src/app.jsx +++ b/packages/integration-tests-next/fixtures/vite4/src/app.jsx @@ -7,3 +7,5 @@ export default function App() { ); } + +console.log(App()); diff --git a/packages/integration-tests-next/fixtures/vite4/utils.ts b/packages/integration-tests-next/fixtures/vite4/utils.ts index efc22f00..89f7a2a6 100644 --- a/packages/integration-tests-next/fixtures/vite4/utils.ts +++ b/packages/integration-tests-next/fixtures/vite4/utils.ts @@ -36,6 +36,7 @@ export function test(url: string, callback: TestCallback) { env: { ...process.env, ...env, + NODE_ENV: "production", }, }, outDir diff --git a/packages/integration-tests-next/fixtures/vite7/build-info.test.ts b/packages/integration-tests-next/fixtures/vite7/build-info.test.ts index 7c4e9a2a..86290fae 100644 --- a/packages/integration-tests-next/fixtures/vite7/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/vite7/build-info.test.ts @@ -9,7 +9,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { try { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "build-information-injection-test" }; - e.SENTRY_BUILD_INFO = { "deps": ["@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 7 }, "nodeVersion":"NODE_VERSION" }; + e.SENTRY_BUILD_INFO = { "deps": ["@sentry/vite-plugin", "@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 7 }, "nodeVersion":"NODE_VERSION" }; var n = new e.Error().stack; n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); } catch (e2) { diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts index 669aebae..3fdf123e 100644 --- a/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation-disabled.test.ts @@ -10,11 +10,21 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; var n = new e.Error().stack; - n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "5950dfde-7033-4e00-a69c-652e1b5bc157", e._sentryDebugIdIdentifier = "sentry-dbid-5950dfde-7033-4e00-a69c-652e1b5bc157"); } catch (e2) { } })(); - import "../../../../../node_modules/react/jsx-dev-runtime.js"; + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; + function ComponentA() { + return /* @__PURE__ */ jsx("span", { children: "Component A" }); + } + function App() { + return /* @__PURE__ */ jsxs("span", { children: [ + /* @__PURE__ */ jsx(ComponentA, {}), + ";" + ] }); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts index 669aebae..4a616db3 100644 --- a/packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation-next.test.ts @@ -10,11 +10,21 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; var n = new e.Error().stack; - n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "62a0263b-dddb-4ac5-bb1a-a352edfa415c", e._sentryDebugIdIdentifier = "sentry-dbid-62a0263b-dddb-4ac5-bb1a-a352edfa415c"); } catch (e2) { } })(); - import "../../../../../node_modules/react/jsx-dev-runtime.js"; + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; + function ComponentA() { + return /* @__PURE__ */ jsx("span", { "data-sentry-component": "ComponentA", children: "Component A" }); + } + function App() { + return /* @__PURE__ */ jsxs("span", { "data-sentry-component": "App", children: [ + /* @__PURE__ */ jsx(ComponentA, {}), + ";" + ] }); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts b/packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts index 669aebae..7f123f0b 100644 --- a/packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts +++ b/packages/integration-tests-next/fixtures/vite7/component-annotation.test.ts @@ -10,11 +10,21 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; var n = new e.Error().stack; - n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "4526461d-50db-4c34-9b8a-32821f20e536", e._sentryDebugIdIdentifier = "sentry-dbid-4526461d-50db-4c34-9b8a-32821f20e536"); + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "d2aba7de-9acd-4eaf-8153-269a881dd7a6", e._sentryDebugIdIdentifier = "sentry-dbid-d2aba7de-9acd-4eaf-8153-269a881dd7a6"); } catch (e2) { } })(); - import "../../../../../node_modules/react/jsx-dev-runtime.js"; + import { jsx, jsxs } from "../node_modules/.pnpm/react@19.2.4/node_modules/react/jsx-runtime.js"; + function ComponentA() { + return /* @__PURE__ */ jsx("span", { "data-sentry-component": "ComponentA", "data-sentry-source-file": "component-a.jsx", children: "Component A" }); + } + function App() { + return /* @__PURE__ */ jsxs("span", { "data-sentry-component": "App", "data-sentry-source-file": "app.jsx", children: [ + /* @__PURE__ */ jsx(ComponentA, { "data-sentry-element": "ComponentA", "data-sentry-source-file": "app.jsx" }), + ";" + ] }); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite7/package.json b/packages/integration-tests-next/fixtures/vite7/package.json index 9b9ecd80..2ff628aa 100644 --- a/packages/integration-tests-next/fixtures/vite7/package.json +++ b/packages/integration-tests-next/fixtures/vite7/package.json @@ -6,6 +6,18 @@ "dependencies": { "react": "19.2.4", "vite": "7.3.1", - "@vitejs/plugin-react": "5.2.0" + "@vitejs/plugin-react": "5.2.0", + "@sentry/vite-plugin": "5.1.1" + }, + "pnpm": { + "overrides": { + "@sentry/bundler-plugin-core": "file:../../../bundler-plugin-core/sentry-bundler-plugin-core-5.1.1.tgz", + "@sentry/rollup-plugin": "file:../../../rollup-plugin/sentry-rollup-plugin-5.1.1.tgz", + "@sentry/vite-plugin": "file:../../../vite-plugin/sentry-vite-plugin-5.1.1.tgz", + "@sentry/babel-plugin-component-annotate": "file:../../../babel-plugin-component-annotate/sentry-babel-plugin-component-annotate-5.1.1.tgz" + }, + "patchedDependencies": { + "@sentry/cli": "../patches/@sentry__cli.patch" + } } } diff --git a/packages/integration-tests-next/fixtures/vite7/src/app.jsx b/packages/integration-tests-next/fixtures/vite7/src/app.jsx index 614d38c8..5be821b4 100644 --- a/packages/integration-tests-next/fixtures/vite7/src/app.jsx +++ b/packages/integration-tests-next/fixtures/vite7/src/app.jsx @@ -7,3 +7,5 @@ export default function App() { ); } + +console.log(App()); diff --git a/packages/integration-tests-next/fixtures/vite7/utils.ts b/packages/integration-tests-next/fixtures/vite7/utils.ts index 02dc755e..0990f400 100644 --- a/packages/integration-tests-next/fixtures/vite7/utils.ts +++ b/packages/integration-tests-next/fixtures/vite7/utils.ts @@ -42,6 +42,7 @@ export function test(url: string, callback: TestCallback) { env: { ...process.env, ...env, + NODE_ENV: "production", }, }, outDir diff --git a/packages/integration-tests-next/fixtures/vite8/build-info.test.ts b/packages/integration-tests-next/fixtures/vite8/build-info.test.ts index 89441f0a..f4715d4c 100644 --- a/packages/integration-tests-next/fixtures/vite8/build-info.test.ts +++ b/packages/integration-tests-next/fixtures/vite8/build-info.test.ts @@ -9,7 +9,7 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { try { var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; e.SENTRY_RELEASE = { id: "build-information-injection-test" }; - e.SENTRY_BUILD_INFO = { "deps": ["@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 8 }, "nodeVersion":"NODE_VERSION" }; + e.SENTRY_BUILD_INFO = { "deps": ["@sentry/vite-plugin", "@vitejs/plugin-react", "react", "vite"], "depsVersions": { "react": 19, "vite": 8 }, "nodeVersion":"NODE_VERSION" }; var n = new e.Error().stack; n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "252e0338-8927-4f52-bd57-188131defd0f", e._sentryDebugIdIdentifier = "sentry-dbid-252e0338-8927-4f52-bd57-188131defd0f"); } catch (e2) { diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts index 4abbe447..6087e1fc 100644 --- a/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation-disabled.test.ts @@ -5,7 +5,22 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": " + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "fad021a7-2309-4b95-9454-c14eaca9c494", e._sentryDebugIdIdentifier = "sentry-dbid-fad021a7-2309-4b95-9454-c14eaca9c494"); + } catch (e2) { + } + })(); + function ComponentA() { + return /* @__PURE__ */ React.createElement("span", null, "Component A"); + } + function App() { + return /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement(ComponentA, null), ";"); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts index 4abbe447..15a8de42 100644 --- a/packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation-next.test.ts @@ -5,7 +5,22 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": " + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "e360fd0a-f174-42e5-a616-ca20792b40f7", e._sentryDebugIdIdentifier = "sentry-dbid-e360fd0a-f174-42e5-a616-ca20792b40f7"); + } catch (e2) { + } + })(); + function ComponentA() { + return /* @__PURE__ */ React.createElement("span", { "data-sentry-component": "ComponentA" }, "Component A"); + } + function App() { + return /* @__PURE__ */ React.createElement("span", { "data-sentry-component": "App" }, /* @__PURE__ */ React.createElement(ComponentA, null), ";"); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts b/packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts index 4abbe447..c059336c 100644 --- a/packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts +++ b/packages/integration-tests-next/fixtures/vite8/component-annotation.test.ts @@ -5,7 +5,22 @@ test(import.meta.url, ({ runBundler, readOutputFiles }) => { runBundler(); expect(readOutputFiles()).toMatchInlineSnapshot(` { - "app.js": " + "app.js": "!(function() { + try { + var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}; + e.SENTRY_RELEASE = { id: "CURRENT_SHA" }; + var n = new e.Error().stack; + n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "7cf1a3cd-d2df-426b-8527-27fd153bf757", e._sentryDebugIdIdentifier = "sentry-dbid-7cf1a3cd-d2df-426b-8527-27fd153bf757"); + } catch (e2) { + } + })(); + function ComponentA() { + return /* @__PURE__ */ React.createElement("span", { "data-sentry-component": "ComponentA", "data-sentry-source-file": "component-a.jsx" }, "Component A"); + } + function App() { + return /* @__PURE__ */ React.createElement("span", { "data-sentry-component": "App", "data-sentry-source-file": "app.jsx" }, /* @__PURE__ */ React.createElement(ComponentA, { "data-sentry-element": "ComponentA", "data-sentry-source-file": "app.jsx" }), ";"); + } + console.log(App()); ", } `); diff --git a/packages/integration-tests-next/fixtures/vite8/package.json b/packages/integration-tests-next/fixtures/vite8/package.json index 828e958d..0528d663 100644 --- a/packages/integration-tests-next/fixtures/vite8/package.json +++ b/packages/integration-tests-next/fixtures/vite8/package.json @@ -6,6 +6,18 @@ "dependencies": { "react": "19.2.4", "vite": "8.0.1", - "@vitejs/plugin-react": "6.0.1" + "@vitejs/plugin-react": "6.0.1", + "@sentry/vite-plugin": "5.1.1" + }, + "pnpm": { + "overrides": { + "@sentry/bundler-plugin-core": "file:../../../bundler-plugin-core/sentry-bundler-plugin-core-5.1.1.tgz", + "@sentry/rollup-plugin": "file:../../../rollup-plugin/sentry-rollup-plugin-5.1.1.tgz", + "@sentry/vite-plugin": "file:../../../vite-plugin/sentry-vite-plugin-5.1.1.tgz", + "@sentry/babel-plugin-component-annotate": "file:../../../babel-plugin-component-annotate/sentry-babel-plugin-component-annotate-5.1.1.tgz" + }, + "patchedDependencies": { + "@sentry/cli": "../patches/@sentry__cli.patch" + } } } diff --git a/packages/integration-tests-next/fixtures/vite8/src/app.jsx b/packages/integration-tests-next/fixtures/vite8/src/app.jsx index 614d38c8..5be821b4 100644 --- a/packages/integration-tests-next/fixtures/vite8/src/app.jsx +++ b/packages/integration-tests-next/fixtures/vite8/src/app.jsx @@ -7,3 +7,5 @@ export default function App() { ); } + +console.log(App()); From 79f8fee4fd03ddd1b57765aa8ee4dcedaa6e29ee Mon Sep 17 00:00:00 2001 From: Tim Fish Date: Thu, 26 Mar 2026 00:27:14 +0100 Subject: [PATCH 7/7] Remove comment --- packages/integration-tests-next/fixtures/utils.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/integration-tests-next/fixtures/utils.ts b/packages/integration-tests-next/fixtures/utils.ts index f5b11d57..22fb76b5 100644 --- a/packages/integration-tests-next/fixtures/utils.ts +++ b/packages/integration-tests-next/fixtures/utils.ts @@ -38,7 +38,6 @@ export function readAllFiles(directory: string): Record { .replaceAll(/"nodeVersion": \d+/g, `"nodeVersion":"NODE_VERSION"`) .replaceAll(/nodeVersion:\d+/g, `nodeVersion:"NODE_VERSION"`) .replaceAll(/nodeVersion: \d+/g, `nodeVersion:"NODE_VERSION"`); - // "nodeVersion": 24 // Normalize Windows stuff in .map paths if (entry.endsWith(".map")) {