From ad525c43e2a75432c96dd915dc4aa46021048261 Mon Sep 17 00:00:00 2001 From: daiwei Date: Fri, 29 Aug 2025 11:02:24 +0800 Subject: [PATCH 1/2] refactor(compiler-vapor): generate unique helper aliases to prevent collisions with user variables --- .../__snapshots__/compile.spec.ts.snap | 12 ++++++ .../compiler-vapor/__tests__/compile.spec.ts | 14 +++++++ packages/compiler-vapor/src/generate.ts | 42 +++++++++++++++---- 3 files changed, 59 insertions(+), 9 deletions(-) diff --git a/packages/compiler-vapor/__tests__/__snapshots__/compile.spec.ts.snap b/packages/compiler-vapor/__tests__/__snapshots__/compile.spec.ts.snap index 9f2183ce8..3855360c4 100644 --- a/packages/compiler-vapor/__tests__/__snapshots__/compile.spec.ts.snap +++ b/packages/compiler-vapor/__tests__/__snapshots__/compile.spec.ts.snap @@ -280,6 +280,18 @@ export function render(_ctx) { }" `; +exports[`compile > helper alias > should avoid conflicts with existing variable names 1`] = ` +"import { child as _child2, toDisplayString as _toDisplayString, setText as _setText, renderEffect as _renderEffect, template as _template } from 'vue'; +const t0 = _template("
", true) + +export function render(_ctx, $props, $emit, $attrs, $slots) { + const n0 = t0() + const x0 = _child2(n0) + _renderEffect(() => _setText(x0, _toDisplayString(_ctx.foo))) + return n0 +}" +`; + exports[`compile > setInsertionState > next, child and nthChild should be above the setInsertionState 1`] = ` "import { resolveComponent as _resolveComponent, child as _child, next as _next, setInsertionState as _setInsertionState, createComponentWithFallback as _createComponentWithFallback, nthChild as _nthChild, createIf as _createIf, setProp as _setProp, renderEffect as _renderEffect, template as _template } from 'vue'; const t0 = _template("
") diff --git a/packages/compiler-vapor/__tests__/compile.spec.ts b/packages/compiler-vapor/__tests__/compile.spec.ts index 7963a9e98..19bb45b48 100644 --- a/packages/compiler-vapor/__tests__/compile.spec.ts +++ b/packages/compiler-vapor/__tests__/compile.spec.ts @@ -268,4 +268,18 @@ describe('compile', () => { expect(code).matchSnapshot() }) }) + + describe('helper alias', () => { + test('should avoid conflicts with existing variable names', () => { + const code = compile(`
{{ foo }}
`, { + bindingMetadata: { + _child: BindingTypes.LITERAL_CONST, + _child1: BindingTypes.SETUP_REF, + }, + }) + expect(code).matchSnapshot() + expect(code).contains('child as _child2') + expect(code).contains('const x0 = _child2(n0)') + }) + }) }) diff --git a/packages/compiler-vapor/src/generate.ts b/packages/compiler-vapor/src/generate.ts index 193a0f5da..ca26138c8 100644 --- a/packages/compiler-vapor/src/generate.ts +++ b/packages/compiler-vapor/src/generate.ts @@ -24,11 +24,31 @@ export type CodegenOptions = Omit export class CodegenContext { options: Required - helpers: Set = new Set([]) + bindingNames: Set = new Set() - helper = (name: CoreHelper | VaporHelper) => { - this.helpers.add(name) - return `_${name}` + helpers: Map = new Map() + + helper = (name: CoreHelper | VaporHelper): string => { + if (this.helpers.has(name)) { + return this.helpers.get(name)! + } + + const base = `_${name}` + if (this.bindingNames.size === 0) { + this.helpers.set(name, base) + return base + } + + // check whether an alias is already used bindings + let alias = base + let i = 0 + while (this.bindingNames.has(alias)) { + i++ + alias = `${base}${i}` + } + + this.helpers.set(name, alias) + return alias } delegates: Set = new Set() @@ -90,6 +110,11 @@ export class CodegenContext { } this.options = extend(defaultOptions, options) this.block = ir.block + this.bindingNames = new Set( + this.options.bindingMetadata + ? Object.keys(this.options.bindingMetadata) + : [], + ) } } @@ -105,7 +130,6 @@ export function generate( ): VaporCodegenResult { const [frag, push] = buildCodeFragment() const context = new CodegenContext(ir, options) - const { helpers } = context const { inline, bindingMetadata } = options const functionName = 'render' @@ -156,7 +180,7 @@ export function generate( ast: ir, preamble, map: map && map.toJSON(), - helpers, + helpers: new Set(Array.from(context.helpers.keys())), } } @@ -169,11 +193,11 @@ function genDelegates({ delegates, helper }: CodegenContext) { : '' } -function genHelperImports({ helpers, helper, options }: CodegenContext) { +function genHelperImports({ helpers, options }: CodegenContext) { let imports = '' if (helpers.size) { - imports += `import { ${[...helpers] - .map(h => `${h} as _${h}`) + imports += `import { ${Array.from(helpers) + .map(([h, alias]) => `${h} as ${alias}`) .join(', ')} } from '${options.runtimeModuleName}';\n` } return imports From 575d11d2008b19e75b0c9d46bcd2ed82a6df8170 Mon Sep 17 00:00:00 2001 From: daiwei Date: Fri, 29 Aug 2025 11:08:38 +0800 Subject: [PATCH 2/2] chore: pin rollup to fix deploy error --- package.json | 2 +- pnpm-lock.yaml | 248 ++++++++++++++++++++++++------------------------- 2 files changed, 125 insertions(+), 125 deletions(-) diff --git a/package.json b/package.json index 62dcb91d4..26f95413f 100644 --- a/package.json +++ b/package.json @@ -98,7 +98,7 @@ "pug": "^3.0.3", "puppeteer": "~24.16.2", "rimraf": "^6.0.1", - "rollup": "^4.46.4", + "rollup": "4.49.0", "rollup-plugin-dts": "^6.2.3", "rollup-plugin-esbuild": "^6.2.1", "rollup-plugin-polyfill-node": "^0.13.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index efe0d86a0..56ffb506e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -40,19 +40,19 @@ importers: version: 7.28.2 '@rollup/plugin-alias': specifier: ^5.1.1 - version: 5.1.1(rollup@4.47.0) + version: 5.1.1(rollup@4.49.0) '@rollup/plugin-commonjs': specifier: ^28.0.6 - version: 28.0.6(rollup@4.47.0) + version: 28.0.6(rollup@4.49.0) '@rollup/plugin-json': specifier: ^6.1.0 - version: 6.1.0(rollup@4.47.0) + version: 6.1.0(rollup@4.49.0) '@rollup/plugin-node-resolve': specifier: ^16.0.1 - version: 16.0.1(rollup@4.47.0) + version: 16.0.1(rollup@4.49.0) '@rollup/plugin-replace': specifier: 5.0.4 - version: 5.0.4(rollup@4.47.0) + version: 5.0.4(rollup@4.49.0) '@swc/core': specifier: ^1.13.3 version: 1.13.3 @@ -141,17 +141,17 @@ importers: specifier: ^6.0.1 version: 6.0.1 rollup: - specifier: ^4.46.4 - version: 4.47.0 + specifier: 4.49.0 + version: 4.49.0 rollup-plugin-dts: specifier: ^6.2.3 - version: 6.2.3(rollup@4.47.0)(typescript@5.6.3) + version: 6.2.3(rollup@4.49.0)(typescript@5.6.3) rollup-plugin-esbuild: specifier: ^6.2.1 - version: 6.2.1(esbuild@0.25.9)(rollup@4.47.0) + version: 6.2.1(esbuild@0.25.9)(rollup@4.49.0) rollup-plugin-polyfill-node: specifier: ^0.13.0 - version: 0.13.0(rollup@4.47.0) + version: 0.13.0(rollup@4.49.0) semver: specifier: ^7.7.2 version: 7.7.2 @@ -246,7 +246,7 @@ importers: version: 0.4.1(@types/node@22.17.2)(sass@1.90.0)(vite@6.3.5(@types/node@22.17.2)(sass@1.90.0)(yaml@2.8.1)) vite-plugin-inspect: specifier: ^0.8.7 - version: 0.8.9(rollup@4.47.0)(vite@6.3.5(@types/node@22.17.2)(sass@1.90.0)(yaml@2.8.1)) + version: 0.8.9(rollup@4.49.0)(vite@6.3.5(@types/node@22.17.2)(sass@1.90.0)(yaml@2.8.1)) packages-private/sfc-playground: dependencies: @@ -1200,114 +1200,114 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.47.0': - resolution: {integrity: sha512-Weap5hVbZs/yIvUZcFpAmIso8rLmwkO1LesddNjeX28tIhQkAKjRuVgAJ2xpj8wXTny7IZro9aBIgGov0qsL4A==} + '@rollup/rollup-android-arm-eabi@4.49.0': + resolution: {integrity: sha512-rlKIeL854Ed0e09QGYFlmDNbka6I3EQFw7iZuugQjMb11KMpJCLPFL4ZPbMfaEhLADEL1yx0oujGkBQ7+qW3eA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.47.0': - resolution: {integrity: sha512-XcnlqvG5riTJByKX7bZ1ehe48GiF+eNkdnzV0ziLp85XyJ6tLPfhkXHv3e0h3cpZESTQa8IB+ZHhV/r02+8qKw==} + '@rollup/rollup-android-arm64@4.49.0': + resolution: {integrity: sha512-cqPpZdKUSQYRtLLr6R4X3sD4jCBO1zUmeo3qrWBCqYIeH8Q3KRL4F3V7XJ2Rm8/RJOQBZuqzQGWPjjvFUcYa/w==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.47.0': - resolution: {integrity: sha512-kZzTIzmzAUOKteh688kN88HNaL7wxwTz9XB5dDK94AQdf9nD+lxm/H5uPKQaawUFS+klBEowqPMUPjBRKGbo/g==} + '@rollup/rollup-darwin-arm64@4.49.0': + resolution: {integrity: sha512-99kMMSMQT7got6iYX3yyIiJfFndpojBmkHfTc1rIje8VbjhmqBXE+nb7ZZP3A5skLyujvT0eIUCUsxAe6NjWbw==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.47.0': - resolution: {integrity: sha512-WaMrgHRbFspYjvycbsbqheBmlsQBLwfZVWv/KFsT212Yz/RjEQ/9KEp1/p0Ef3ZNwbWsylmgf69St66D9NQNHw==} + '@rollup/rollup-darwin-x64@4.49.0': + resolution: {integrity: sha512-y8cXoD3wdWUDpjOLMKLx6l+NFz3NlkWKcBCBfttUn+VGSfgsQ5o/yDUGtzE9HvsodkP0+16N0P4Ty1VuhtRUGg==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.47.0': - resolution: {integrity: sha512-umfYslurvSmAK5MEyOcOGooQ6EBB2pYePQaTVlrOkIfG6uuwu9egYOlxr35lwsp6XG0NzmXW0/5o150LUioMkQ==} + '@rollup/rollup-freebsd-arm64@4.49.0': + resolution: {integrity: sha512-3mY5Pr7qv4GS4ZvWoSP8zha8YoiqrU+e0ViPvB549jvliBbdNLrg2ywPGkgLC3cmvN8ya3za+Q2xVyT6z+vZqA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.47.0': - resolution: {integrity: sha512-EFXhIykAl8//4ihOjGNirF89HEUbOB8ev2aiw8ST8wFGwDdIPARh3enDlbp8aFnScl4CDK4DZLQYXaM6qpxzZw==} + '@rollup/rollup-freebsd-x64@4.49.0': + resolution: {integrity: sha512-C9KzzOAQU5gU4kG8DTk+tjdKjpWhVWd5uVkinCwwFub2m7cDYLOdtXoMrExfeBmeRy9kBQMkiyJ+HULyF1yj9w==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.47.0': - resolution: {integrity: sha512-EwkC5N61ptruQ9wNkYfLgUWEGh+F3JZSGHkUWhaK2ISAK0d0xmiMKF0trFhRqPQFov5d9DmFiFIhWB5IC79OUA==} + '@rollup/rollup-linux-arm-gnueabihf@4.49.0': + resolution: {integrity: sha512-OVSQgEZDVLnTbMq5NBs6xkmz3AADByCWI4RdKSFNlDsYXdFtlxS59J+w+LippJe8KcmeSSM3ba+GlsM9+WwC1w==} cpu: [arm] os: [linux] libc: [glibc] - '@rollup/rollup-linux-arm-musleabihf@4.47.0': - resolution: {integrity: sha512-Iz/g1X94vIjppA4H9hN3VEedw4ObC+u+aua2J/VPJnENEJ0GeCAPBN15nJc5pS5M8JPlUhOd3oqhOWX6Un4RHA==} + '@rollup/rollup-linux-arm-musleabihf@4.49.0': + resolution: {integrity: sha512-ZnfSFA7fDUHNa4P3VwAcfaBLakCbYaxCk0jUnS3dTou9P95kwoOLAMlT3WmEJDBCSrOEFFV0Y1HXiwfLYJuLlA==} cpu: [arm] os: [linux] libc: [musl] - '@rollup/rollup-linux-arm64-gnu@4.47.0': - resolution: {integrity: sha512-eYEYHYjFo/vb6k1l5uq5+Af9yuo9WaST/z+/8T5gkee+A0Sfx1NIPZtKMEQOLjm/oaeHFGpWaAO97gTPhouIfQ==} + '@rollup/rollup-linux-arm64-gnu@4.49.0': + resolution: {integrity: sha512-Z81u+gfrobVK2iV7GqZCBfEB1y6+I61AH466lNK+xy1jfqFLiQ9Qv716WUM5fxFrYxwC7ziVdZRU9qvGHkYIJg==} cpu: [arm64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-arm64-musl@4.47.0': - resolution: {integrity: sha512-LX2x0/RszFEmDfjzL6kG/vihD5CkpJ+0K6lcbqX0jAopkkXeY2ZjStngdFMFW+BK7pyrqryJgy6Jt3+oyDxrSA==} + '@rollup/rollup-linux-arm64-musl@4.49.0': + resolution: {integrity: sha512-zoAwS0KCXSnTp9NH/h9aamBAIve0DXeYpll85shf9NJ0URjSTzzS+Z9evmolN+ICfD3v8skKUPyk2PO0uGdFqg==} cpu: [arm64] os: [linux] libc: [musl] - '@rollup/rollup-linux-loongarch64-gnu@4.47.0': - resolution: {integrity: sha512-0U+56rJmJvqBCwlPFz/BcxkvdiRdNPamBfuFHrOGQtGajSMJ2OqzlvOgwj5vReRQnSA6XMKw/JL1DaBhceil+g==} + '@rollup/rollup-linux-loongarch64-gnu@4.49.0': + resolution: {integrity: sha512-2QyUyQQ1ZtwZGiq0nvODL+vLJBtciItC3/5cYN8ncDQcv5avrt2MbKt1XU/vFAJlLta5KujqyHdYtdag4YEjYQ==} cpu: [loong64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-ppc64-gnu@4.47.0': - resolution: {integrity: sha512-2VKOsnNyvS05HFPKtmAWtef+nZyKCot/V3Jh/A5sYMhUvtthNjp6CjakYTtc5xZ8J8Fp5FKrUWGxptVtZ2OzEA==} + '@rollup/rollup-linux-ppc64-gnu@4.49.0': + resolution: {integrity: sha512-k9aEmOWt+mrMuD3skjVJSSxHckJp+SiFzFG+v8JLXbc/xi9hv2icSkR3U7uQzqy+/QbbYY7iNB9eDTwrELo14g==} cpu: [ppc64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-riscv64-gnu@4.47.0': - resolution: {integrity: sha512-uY5UP7YZM4DMQiiP9Fl4/7O3UbT2p3uI0qvqLXZSGWBfyYuqi2DYQ48ExylgBN3T8AJork+b+mLGq6VXsxBfuw==} + '@rollup/rollup-linux-riscv64-gnu@4.49.0': + resolution: {integrity: sha512-rDKRFFIWJ/zJn6uk2IdYLc09Z7zkE5IFIOWqpuU0o6ZpHcdniAyWkwSUWE/Z25N/wNDmFHHMzin84qW7Wzkjsw==} cpu: [riscv64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-riscv64-musl@4.47.0': - resolution: {integrity: sha512-qpcN2+/ivq3TcrXtZoHrS9WZplV3Nieh0gvnGb+SFZg7h/YkWsOXINJnjJRWHp9tEur7T8lMnMeQMPS7s9MjUg==} + '@rollup/rollup-linux-riscv64-musl@4.49.0': + resolution: {integrity: sha512-FkkhIY/hYFVnOzz1WeV3S9Bd1h0hda/gRqvZCMpHWDHdiIHn6pqsY3b5eSbvGccWHMQ1uUzgZTKS4oGpykf8Tw==} cpu: [riscv64] os: [linux] libc: [musl] - '@rollup/rollup-linux-s390x-gnu@4.47.0': - resolution: {integrity: sha512-XfuI+o7a2/KA2tBeP+J1CT3siyIQyjpGEL6fFvtUdoHJK1k5iVI3qeGT2i5y6Bb+xQu08AHKBsUGJ2GsOZzXbQ==} + '@rollup/rollup-linux-s390x-gnu@4.49.0': + resolution: {integrity: sha512-gRf5c+A7QiOG3UwLyOOtyJMD31JJhMjBvpfhAitPAoqZFcOeK3Kc1Veg1z/trmt+2P6F/biT02fU19GGTS529A==} cpu: [s390x] os: [linux] libc: [glibc] - '@rollup/rollup-linux-x64-gnu@4.47.0': - resolution: {integrity: sha512-ylkLO6G7oUiN28mork3caDmgXHqRuopAxjYDaOqs4CoU9pkfR0R/pGQb2V1x2Zg3tlFj4b/DvxZroxC3xALX6g==} + '@rollup/rollup-linux-x64-gnu@4.49.0': + resolution: {integrity: sha512-BR7+blScdLW1h/2hB/2oXM+dhTmpW3rQt1DeSiCP9mc2NMMkqVgjIN3DDsNpKmezffGC9R8XKVOLmBkRUcK/sA==} cpu: [x64] os: [linux] libc: [glibc] - '@rollup/rollup-linux-x64-musl@4.47.0': - resolution: {integrity: sha512-1L72a+ice8xKqJ2afsAVW9EfECOhNMAOC1jH65TgghLaHSFwNzyEdeye+1vRFDNy52OGKip/vajj0ONtX7VpAg==} + '@rollup/rollup-linux-x64-musl@4.49.0': + resolution: {integrity: sha512-hDMOAe+6nX3V5ei1I7Au3wcr9h3ktKzDvF2ne5ovX8RZiAHEtX1A5SNNk4zt1Qt77CmnbqT+upb/umzoPMWiPg==} cpu: [x64] os: [linux] libc: [musl] - '@rollup/rollup-win32-arm64-msvc@4.47.0': - resolution: {integrity: sha512-wluhdd1uNLk/S+ex2Yj62WFw3un2cZo2ZKXy9cOuoti5IhaPXSDSvxT3os+SJ1cjNorE1PwAOfiJU7QUH6n3Zw==} + '@rollup/rollup-win32-arm64-msvc@4.49.0': + resolution: {integrity: sha512-wkNRzfiIGaElC9kXUT+HLx17z7D0jl+9tGYRKwd8r7cUqTL7GYAvgUY++U2hK6Ar7z5Z6IRRoWC8kQxpmM7TDA==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.47.0': - resolution: {integrity: sha512-0SMTA6AeG7u2rfwdkKSo6aZD/obmA7oyhR+4ePwLzlwxNE8sfSI9zmjZXtchvBAZmtkVQNt/lZ6RxSl9wBj4pw==} + '@rollup/rollup-win32-ia32-msvc@4.49.0': + resolution: {integrity: sha512-gq5aW/SyNpjp71AAzroH37DtINDcX1Qw2iv9Chyz49ZgdOP3NV8QCyKZUrGsYX9Yyggj5soFiRCgsL3HwD8TdA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.47.0': - resolution: {integrity: sha512-mw1/7kAGxLcfzoG7DIKFHvKr2ZUQasKOPCgT2ubkNZPgIDZOJPymqThtRWEeAlXBoipehP4BUFpBAZIrPhFg8Q==} + '@rollup/rollup-win32-x64-msvc@4.49.0': + resolution: {integrity: sha512-gEtqFbzmZLFk2xKh7g0Rlo8xzho8KrEFEkzvHbfUGkrgXOpZ4XagQ6n+wIZFNh1nTb8UD16J4nFSFKXYgnbdBg==} cpu: [x64] os: [win32] @@ -3339,8 +3339,8 @@ packages: peerDependencies: rollup: ^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 - rollup@4.47.0: - resolution: {integrity: sha512-jZVxJwlAptA83ftdZK1kjLZfi0f6o+vVX7ub3HaRzkehLO3l4VB4vYpMHyunhBt1sawv9fiRWPA8Qi/sbg9Kcw==} + rollup@4.49.0: + resolution: {integrity: sha512-3IVq0cGJ6H7fKXXEdVt+RcYvRCt8beYY9K1760wGQwSAHZcS9eot1zDG5axUbcp/kWRi5zKIIDX8MoKv/TzvZA==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -4375,13 +4375,13 @@ snapshots: '@rolldown/pluginutils@1.0.0-beta.29': {} - '@rollup/plugin-alias@5.1.1(rollup@4.47.0)': + '@rollup/plugin-alias@5.1.1(rollup@4.49.0)': optionalDependencies: - rollup: 4.47.0 + rollup: 4.49.0 - '@rollup/plugin-commonjs@28.0.6(rollup@4.47.0)': + '@rollup/plugin-commonjs@28.0.6(rollup@4.49.0)': dependencies: - '@rollup/pluginutils': 5.2.0(rollup@4.47.0) + '@rollup/pluginutils': 5.2.0(rollup@4.49.0) commondir: 1.0.1 estree-walker: 2.0.2 fdir: 6.5.0(picomatch@4.0.3) @@ -4389,105 +4389,105 @@ snapshots: magic-string: 0.30.17 picomatch: 4.0.3 optionalDependencies: - rollup: 4.47.0 + rollup: 4.49.0 - '@rollup/plugin-inject@5.0.5(rollup@4.47.0)': + '@rollup/plugin-inject@5.0.5(rollup@4.49.0)': dependencies: - '@rollup/pluginutils': 5.2.0(rollup@4.47.0) + '@rollup/pluginutils': 5.2.0(rollup@4.49.0) estree-walker: 2.0.2 magic-string: 0.30.17 optionalDependencies: - rollup: 4.47.0 + rollup: 4.49.0 - '@rollup/plugin-json@6.1.0(rollup@4.47.0)': + '@rollup/plugin-json@6.1.0(rollup@4.49.0)': dependencies: - '@rollup/pluginutils': 5.2.0(rollup@4.47.0) + '@rollup/pluginutils': 5.2.0(rollup@4.49.0) optionalDependencies: - rollup: 4.47.0 + rollup: 4.49.0 - '@rollup/plugin-node-resolve@16.0.1(rollup@4.47.0)': + '@rollup/plugin-node-resolve@16.0.1(rollup@4.49.0)': dependencies: - '@rollup/pluginutils': 5.2.0(rollup@4.47.0) + '@rollup/pluginutils': 5.2.0(rollup@4.49.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 4.47.0 + rollup: 4.49.0 - '@rollup/plugin-replace@5.0.4(rollup@4.47.0)': + '@rollup/plugin-replace@5.0.4(rollup@4.49.0)': dependencies: - '@rollup/pluginutils': 5.2.0(rollup@4.47.0) + '@rollup/pluginutils': 5.2.0(rollup@4.49.0) magic-string: 0.30.17 optionalDependencies: - rollup: 4.47.0 + rollup: 4.49.0 - '@rollup/pluginutils@5.2.0(rollup@4.47.0)': + '@rollup/pluginutils@5.2.0(rollup@4.49.0)': dependencies: '@types/estree': 1.0.8 estree-walker: 2.0.2 picomatch: 4.0.3 optionalDependencies: - rollup: 4.47.0 + rollup: 4.49.0 - '@rollup/rollup-android-arm-eabi@4.47.0': + '@rollup/rollup-android-arm-eabi@4.49.0': optional: true - '@rollup/rollup-android-arm64@4.47.0': + '@rollup/rollup-android-arm64@4.49.0': optional: true - '@rollup/rollup-darwin-arm64@4.47.0': + '@rollup/rollup-darwin-arm64@4.49.0': optional: true - '@rollup/rollup-darwin-x64@4.47.0': + '@rollup/rollup-darwin-x64@4.49.0': optional: true - '@rollup/rollup-freebsd-arm64@4.47.0': + '@rollup/rollup-freebsd-arm64@4.49.0': optional: true - '@rollup/rollup-freebsd-x64@4.47.0': + '@rollup/rollup-freebsd-x64@4.49.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.47.0': + '@rollup/rollup-linux-arm-gnueabihf@4.49.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.47.0': + '@rollup/rollup-linux-arm-musleabihf@4.49.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.47.0': + '@rollup/rollup-linux-arm64-gnu@4.49.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.47.0': + '@rollup/rollup-linux-arm64-musl@4.49.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.47.0': + '@rollup/rollup-linux-loongarch64-gnu@4.49.0': optional: true - '@rollup/rollup-linux-ppc64-gnu@4.47.0': + '@rollup/rollup-linux-ppc64-gnu@4.49.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.47.0': + '@rollup/rollup-linux-riscv64-gnu@4.49.0': optional: true - '@rollup/rollup-linux-riscv64-musl@4.47.0': + '@rollup/rollup-linux-riscv64-musl@4.49.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.47.0': + '@rollup/rollup-linux-s390x-gnu@4.49.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.47.0': + '@rollup/rollup-linux-x64-gnu@4.49.0': optional: true - '@rollup/rollup-linux-x64-musl@4.47.0': + '@rollup/rollup-linux-x64-musl@4.49.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.47.0': + '@rollup/rollup-win32-arm64-msvc@4.49.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.47.0': + '@rollup/rollup-win32-ia32-msvc@4.49.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.47.0': + '@rollup/rollup-win32-x64-msvc@4.49.0': optional: true '@swc/core-darwin-arm64@1.13.3': @@ -6612,54 +6612,54 @@ snapshots: glob: 11.0.3 package-json-from-dist: 1.0.1 - rollup-plugin-dts@6.2.3(rollup@4.47.0)(typescript@5.6.3): + rollup-plugin-dts@6.2.3(rollup@4.49.0)(typescript@5.6.3): dependencies: magic-string: 0.30.17 - rollup: 4.47.0 + rollup: 4.49.0 typescript: 5.6.3 optionalDependencies: '@babel/code-frame': 7.27.1 - rollup-plugin-esbuild@6.2.1(esbuild@0.25.9)(rollup@4.47.0): + rollup-plugin-esbuild@6.2.1(esbuild@0.25.9)(rollup@4.49.0): dependencies: debug: 4.4.1 es-module-lexer: 1.7.0 esbuild: 0.25.9 get-tsconfig: 4.10.1 - rollup: 4.47.0 + rollup: 4.49.0 unplugin-utils: 0.2.5 transitivePeerDependencies: - supports-color - rollup-plugin-polyfill-node@0.13.0(rollup@4.47.0): + rollup-plugin-polyfill-node@0.13.0(rollup@4.49.0): dependencies: - '@rollup/plugin-inject': 5.0.5(rollup@4.47.0) - rollup: 4.47.0 + '@rollup/plugin-inject': 5.0.5(rollup@4.49.0) + rollup: 4.49.0 - rollup@4.47.0: + rollup@4.49.0: dependencies: '@types/estree': 1.0.8 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.47.0 - '@rollup/rollup-android-arm64': 4.47.0 - '@rollup/rollup-darwin-arm64': 4.47.0 - '@rollup/rollup-darwin-x64': 4.47.0 - '@rollup/rollup-freebsd-arm64': 4.47.0 - '@rollup/rollup-freebsd-x64': 4.47.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.47.0 - '@rollup/rollup-linux-arm-musleabihf': 4.47.0 - '@rollup/rollup-linux-arm64-gnu': 4.47.0 - '@rollup/rollup-linux-arm64-musl': 4.47.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.47.0 - '@rollup/rollup-linux-ppc64-gnu': 4.47.0 - '@rollup/rollup-linux-riscv64-gnu': 4.47.0 - '@rollup/rollup-linux-riscv64-musl': 4.47.0 - '@rollup/rollup-linux-s390x-gnu': 4.47.0 - '@rollup/rollup-linux-x64-gnu': 4.47.0 - '@rollup/rollup-linux-x64-musl': 4.47.0 - '@rollup/rollup-win32-arm64-msvc': 4.47.0 - '@rollup/rollup-win32-ia32-msvc': 4.47.0 - '@rollup/rollup-win32-x64-msvc': 4.47.0 + '@rollup/rollup-android-arm-eabi': 4.49.0 + '@rollup/rollup-android-arm64': 4.49.0 + '@rollup/rollup-darwin-arm64': 4.49.0 + '@rollup/rollup-darwin-x64': 4.49.0 + '@rollup/rollup-freebsd-arm64': 4.49.0 + '@rollup/rollup-freebsd-x64': 4.49.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.49.0 + '@rollup/rollup-linux-arm-musleabihf': 4.49.0 + '@rollup/rollup-linux-arm64-gnu': 4.49.0 + '@rollup/rollup-linux-arm64-musl': 4.49.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.49.0 + '@rollup/rollup-linux-ppc64-gnu': 4.49.0 + '@rollup/rollup-linux-riscv64-gnu': 4.49.0 + '@rollup/rollup-linux-riscv64-musl': 4.49.0 + '@rollup/rollup-linux-s390x-gnu': 4.49.0 + '@rollup/rollup-linux-x64-gnu': 4.49.0 + '@rollup/rollup-linux-x64-musl': 4.49.0 + '@rollup/rollup-win32-arm64-msvc': 4.49.0 + '@rollup/rollup-win32-ia32-msvc': 4.49.0 + '@rollup/rollup-win32-x64-msvc': 4.49.0 fsevents: 2.3.3 rrweb-cssom@0.8.0: {} @@ -7072,10 +7072,10 @@ snapshots: - tsx - yaml - vite-plugin-inspect@0.8.9(rollup@4.47.0)(vite@6.3.5(@types/node@22.17.2)(sass@1.90.0)(yaml@2.8.1)): + vite-plugin-inspect@0.8.9(rollup@4.49.0)(vite@6.3.5(@types/node@22.17.2)(sass@1.90.0)(yaml@2.8.1)): dependencies: '@antfu/utils': 0.7.10 - '@rollup/pluginutils': 5.2.0(rollup@4.47.0) + '@rollup/pluginutils': 5.2.0(rollup@4.49.0) debug: 4.4.1 error-stack-parser-es: 0.1.5 fs-extra: 11.3.1 @@ -7092,7 +7092,7 @@ snapshots: dependencies: esbuild: 0.21.5 postcss: 8.5.6 - rollup: 4.47.0 + rollup: 4.49.0 optionalDependencies: '@types/node': 22.17.2 fsevents: 2.3.3 @@ -7104,7 +7104,7 @@ snapshots: fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 postcss: 8.5.6 - rollup: 4.47.0 + rollup: 4.49.0 tinyglobby: 0.2.14 optionalDependencies: '@types/node': 22.17.2