})
})
+ describe('shadowRoot: false', () => {
+ const E = defineCustomElement({
+ shadowRoot: false,
+ props: {
+ msg: {
+ type: String,
+ default: 'hello',
+ },
+ },
+ render() {
+ return h('div', this.msg)
+ },
+ })
+ customElements.define('my-el-shadowroot-false', E)
+
+ test('should work', async () => {
+ function raf() {
+ return new Promise(resolve => {
+ requestAnimationFrame(resolve)
+ })
+ }
+
+ container.innerHTML = `<my-el-shadowroot-false></my-el-shadowroot-false>`
+ const e = container.childNodes[0] as VueElement
+ await raf()
+ expect(e).toBeInstanceOf(E)
+ expect(e._instance).toBeTruthy()
+ expect(e.innerHTML).toBe(`<div>hello</div>`)
+ expect(e.shadowRoot).toBe(null)
+ })
+
+ const toggle = ref(true)
+ const ES = defineCustomElement(
+ {
+ render() {
+ return [
+ renderSlot(this.$slots, 'default'),
+ toggle.value ? renderSlot(this.$slots, 'named') : null,
+ renderSlot(this.$slots, 'omitted', {}, () => [
+ h('div', 'fallback'),
+ ]),
+ ]
+ },
+ },
+ { shadowRoot: false },
+ )
+ customElements.define('my-el-shadowroot-false-slots', ES)
+
+ test('should render slots', async () => {
+ container.innerHTML =
+ `<my-el-shadowroot-false-slots>` +
+ `<span>default</span>text` +
+ `<div slot="named">named</div>` +
+ `</my-el-shadowroot-false-slots>`
+ const e = container.childNodes[0] as VueElement
+ // native slots allocation does not affect innerHTML, so we just
+ // verify that we've rendered the correct native slots here...
+ expect(e.innerHTML).toBe(
+ `<span>default</span>text` +
+ `<div slot="named">named</div>` +
+ `<div>fallback</div>`,
+ )
+
+ toggle.value = false
+ await nextTick()
+ expect(e.innerHTML).toBe(
+ `<span>default</span>text` + `<!---->` + `<div>fallback</div>`,
+ )
+ })
+ })
+
+ describe('useCustomElementRoot', () => {
+ test('should work for style injection', () => {
+ const Foo = defineCustomElement({
+ setup() {
+ const root = useShadowRoot()!
+ const style = document.createElement('style')
+ style.innerHTML = `div { color: red; }`
+ root.appendChild(style)
+ return () => h('div', 'hello')
+ },
+ })
+ customElements.define('my-el', Foo)
+ container.innerHTML = `<my-el></my-el>`
+ const el = container.childNodes[0] as VueElement
+ const style = el.shadowRoot?.querySelector('style')!
+ expect(style.textContent).toBe(`div { color: red; }`)
+ })
+ })
+
+ describe('expose', () => {
+ test('expose attributes and callback', async () => {
+ type SetValue = (value: string) => void
+ let fn: MockedFunction<SetValue>
+
+ const E = defineCustomElement({
+ setup(_, { expose }) {
+ const value = ref('hello')
+
+ const setValue = (fn = vi.fn((_value: string) => {
+ value.value = _value
+ }))
+
+ expose({
+ setValue,
+ value,
+ })
+
+ return () => h('div', null, [value.value])
+ },
+ })
+ customElements.define('my-el-expose', E)
+
+ container.innerHTML = `<my-el-expose></my-el-expose>`
+ const e = container.childNodes[0] as VueElement & {
+ value: string
+ setValue: MockedFunction<SetValue>
+ }
+ expect(e.shadowRoot!.innerHTML).toBe(`<div>hello</div>`)
+ expect(e.value).toBe('hello')
+ expect(e.setValue).toBe(fn!)
+ e.setValue('world')
+ expect(e.value).toBe('world')
+ await nextTick()
+ expect(e.shadowRoot!.innerHTML).toBe(`<div>world</div>`)
+ })
+
+ test('warning when exposing an existing property', () => {
+ const E = defineCustomElement({
+ props: {
+ value: String,
+ },
+ setup(props, { expose }) {
+ expose({
+ value: 'hello',
+ })
+
+ return () => h('div', null, [props.value])
+ },
+ })
+ customElements.define('my-el-expose-two', E)
+
+ container.innerHTML = `<my-el-expose-two value="world"></my-el-expose-two>`
+
+ expect(
+ `[Vue warn]: Exposed property "value" already exists on custom element.`,
+ ).toHaveBeenWarned()
+ })
+ })
+
+ test('async & nested custom elements', async () => {
+ let fooVal: string | undefined = ''
+ const E = defineCustomElement(
+ defineAsyncComponent(() => {
+ return Promise.resolve({
+ setup(props) {
+ provide('foo', 'foo')
+ },
+ render(this: any) {
+ return h('div', null, [renderSlot(this.$slots, 'default')])
+ },
+ })
+ }),
+ )
+
+ const EChild = defineCustomElement({
+ setup(props) {
+ fooVal = inject('foo')
+ },
+ render(this: any) {
+ return h('div', null, 'child')
+ },
+ })
+ customElements.define('my-el-async-nested-ce', E)
+ customElements.define('slotted-child', EChild)
+ container.innerHTML = `<my-el-async-nested-ce><div><slotted-child></slotted-child></div></my-el-async-nested-ce>`
+
+ await new Promise(r => setTimeout(r))
+ const e = container.childNodes[0] as VueElement
+ expect(e.shadowRoot!.innerHTML).toBe(`<div><slot></slot></div>`)
+ expect(fooVal).toBe('foo')
+ })
+
+ test('async & multiple levels of nested custom elements', async () => {
+ let fooVal: string | undefined = ''
+ let barVal: string | undefined = ''
+ const E = defineCustomElement(
+ defineAsyncComponent(() => {
+ return Promise.resolve({
+ setup(props) {
+ provide('foo', 'foo')
+ },
+ render(this: any) {
+ return h('div', null, [renderSlot(this.$slots, 'default')])
+ },
+ })
+ }),
+ )
+
+ const EChild = defineCustomElement({
+ setup(props) {
+ provide('bar', 'bar')
+ },
+ render(this: any) {
+ return h('div', null, [renderSlot(this.$slots, 'default')])
+ },
+ })
+
+ const EChild2 = defineCustomElement({
+ setup(props) {
+ fooVal = inject('foo')
+ barVal = inject('bar')
+ },
+ render(this: any) {
+ return h('div', null, 'child')
+ },
+ })
+ customElements.define('my-el-async-nested-m-ce', E)
+ customElements.define('slotted-child-m', EChild)
+ customElements.define('slotted-child2-m', EChild2)
+ container.innerHTML =
+ `<my-el-async-nested-m-ce>` +
+ `<div><slotted-child-m>` +
+ `<slotted-child2-m></slotted-child2-m>` +
+ `</slotted-child-m></div>` +
+ `</my-el-async-nested-m-ce>`
+
+ await new Promise(r => setTimeout(r))
+ const e = container.childNodes[0] as VueElement
+ expect(e.shadowRoot!.innerHTML).toBe(`<div><slot></slot></div>`)
+ expect(fooVal).toBe('foo')
+ expect(barVal).toBe('bar')
+ })
+
+ describe('configureApp', () => {
+ test('should work', () => {
+ const E = defineCustomElement(
+ () => {
+ const msg = inject('msg')
+ return () => h('div', msg!)
+ },
+ {
+ configureApp(app) {
+ app.provide('msg', 'app-injected')
+ },
+ },
+ )
+ customElements.define('my-element-with-app', E)
+
+ container.innerHTML = `<my-element-with-app></my-element-with-app>`
+ const e = container.childNodes[0] as VueElement
+
+ expect(e.shadowRoot?.innerHTML).toBe('<div>app-injected</div>')
+ })
+ })
++
+ // #9885
+ test('avoid double mount when prop is set immediately after mount', () => {
+ customElements.define(
+ 'my-input-dupe',
+ defineCustomElement({
+ props: {
+ value: String,
+ },
+ render() {
+ return 'hello'
+ },
+ }),
+ )
+ createApp({
+ render() {
+ return h('div', [
+ h('my-input-dupe', {
+ onVnodeMounted(vnode) {
+ vnode.el!.value = 'fesfes'
+ },
+ }),
+ ])
+ },
+ }).mount(container)
+ expect(container.children[0].children[0].shadowRoot?.innerHTML).toBe(
+ 'hello',
+ )
+ })
})
version: 2.0.2
magic-string:
specifier: ^0.30.10
-- version: 0.30.10
++ version: 0.30.11
source-map-js:
specifier: ^1.2.0
version: 1.2.0
'@types/semver':
specifier: ^7.5.8
version: 7.5.8
+ '@types/serve-handler':
+ specifier: ^6.1.4
+ version: 6.1.4
'@vitest/coverage-istanbul':
specifier: ^1.6.0
- version: 1.6.0(vitest@1.6.0(@types/node@20.14.13)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1))
+ version: 1.6.0(vitest@1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1))
'@vue/consolidate':
specifier: 1.0.0
version: 1.0.0
version: 9.8.0
eslint-plugin-import-x:
specifier: ^3.1.0
- version: 3.1.0(eslint@9.8.0)(typescript@5.4.5)
+ version: 3.1.0(eslint@9.8.0)(typescript@5.5.4)
eslint-plugin-vitest:
specifier: ^0.5.4
- version: 0.5.4(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@20.14.13)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1))
- version: 0.5.4(eslint@9.8.0)(typescript@5.4.5)(vitest@1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1))
++ version: 0.5.4(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1))
estree-walker:
specifier: 'catalog:'
version: 2.0.2
specifier: ^3.0.3
version: 3.0.3
puppeteer:
- specifier: ~22.14.0
- version: 22.14.0(typescript@5.5.4)
+ specifier: ~22.15.0
- version: 22.15.0(typescript@5.4.5)
++ version: 22.15.0(typescript@5.5.4)
rimraf:
- specifier: ^5.0.9
- version: 5.0.9
+ specifier: ^6.0.1
+ version: 6.0.1
rollup:
- specifier: ^4.19.1
- version: 4.19.1
+ specifier: ^4.20.0
+ version: 4.20.0
rollup-plugin-dts:
specifier: ^6.1.1
- version: 6.1.1(rollup@4.19.1)(typescript@5.5.4)
- version: 6.1.1(rollup@4.20.0)(typescript@5.4.5)
++ version: 6.1.1(rollup@4.20.0)(typescript@5.5.4)
rollup-plugin-esbuild:
specifier: ^6.1.1
- version: 6.1.1(esbuild@0.23.0)(rollup@4.19.1)
+ version: 6.1.1(esbuild@0.23.0)(rollup@4.20.0)
rollup-plugin-polyfill-node:
specifier: ^0.13.0
- version: 0.13.0(rollup@4.19.1)
+ version: 0.13.0(rollup@4.20.0)
semver:
specifier: ^7.6.3
version: 7.6.3
specifier: ^4.16.5
version: 4.16.5
typescript:
- specifier: ~5.4.5
- version: 5.4.5
+ specifier: ~5.5.4
+ version: 5.5.4
typescript-eslint:
specifier: ^8.0.0
- version: 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ version: 8.0.0(eslint@9.8.0)(typescript@5.5.4)
vite:
specifier: 'catalog:'
- version: 5.3.3(@types/node@20.14.13)(sass@1.77.8)(terser@5.31.1)
+ version: 5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1)
vitest:
specifier: ^1.6.0
- version: 1.6.0(@types/node@20.14.13)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1)
+ version: 1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1)
packages/compiler-core:
dependencies:
version: 2.0.2
magic-string:
specifier: 'catalog:'
-- version: 0.30.10
++ version: 0.30.11
postcss:
specifier: ^8.4.40
version: 8.4.40
rollup:
optional: true
-- '@rollup/rollup-android-arm-eabi@4.18.0':
-- resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==}
-- cpu: [arm]
-- os: [android]
--
- '@rollup/rollup-android-arm-eabi@4.19.1':
- resolution: {integrity: sha512-XzqSg714++M+FXhHfXpS1tDnNZNpgxxuGZWlRG/jSj+VEPmZ0yg6jV4E0AL3uyBKxO8mO3xtOsP5mQ+XLfrlww==}
+ '@rollup/rollup-android-arm-eabi@4.20.0':
+ resolution: {integrity: sha512-TSpWzflCc4VGAUJZlPpgAJE1+V60MePDQnBd7PPkpuEmOy8i87aL6tinFGKBFKuEDikYpig72QzdT3QPYIi+oA==}
cpu: [arm]
os: [android]
-- '@rollup/rollup-android-arm64@4.18.0':
-- resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==}
- cpu: [arm64]
- os: [android]
-
+ '@rollup/rollup-android-arm64@4.20.0':
+ resolution: {integrity: sha512-u00Ro/nok7oGzVuh/FMYfNoGqxU5CPWz1mxV85S2w9LxHR8OoMQBuSk+3BKVIDYgkpeOET5yXkx90OYFc+ytpQ==}
cpu: [arm64]
os: [android]
- '@rollup/rollup-android-arm64@4.19.1':
- resolution: {integrity: sha512-thFUbkHteM20BGShD6P08aungq4irbIZKUNbG70LN8RkO7YztcGPiKTTGZS7Kw+x5h8hOXs0i4OaHwFxlpQN6A==}
- cpu: [arm64]
- os: [android]
-
-- '@rollup/rollup-darwin-arm64@4.18.0':
-- resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==}
- cpu: [arm64]
- os: [darwin]
-
+ '@rollup/rollup-darwin-arm64@4.20.0':
+ resolution: {integrity: sha512-uFVfvzvsdGtlSLuL0ZlvPJvl6ZmrH4CBwLGEFPe7hUmf7htGAN+aXo43R/V6LATyxlKVC/m6UsLb7jbG+LG39Q==}
cpu: [arm64]
os: [darwin]
- '@rollup/rollup-darwin-arm64@4.19.1':
- resolution: {integrity: sha512-8o6eqeFZzVLia2hKPUZk4jdE3zW7LCcZr+MD18tXkgBBid3lssGVAYuox8x6YHoEPDdDa9ixTaStcmx88lio5Q==}
- cpu: [arm64]
- os: [darwin]
-
-- '@rollup/rollup-darwin-x64@4.18.0':
-- resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==}
- cpu: [x64]
- os: [darwin]
-
+ '@rollup/rollup-darwin-x64@4.20.0':
+ resolution: {integrity: sha512-xbrMDdlev53vNXexEa6l0LffojxhqDTBeL+VUxuuIXys4x6xyvbKq5XqTXBCEUA8ty8iEJblHvFaWRJTk/icAQ==}
cpu: [x64]
os: [darwin]
- '@rollup/rollup-darwin-x64@4.19.1':
- resolution: {integrity: sha512-4T42heKsnbjkn7ovYiAdDVRRWZLU9Kmhdt6HafZxFcUdpjlBlxj4wDrt1yFWLk7G4+E+8p2C9tcmSu0KA6auGA==}
- cpu: [x64]
- os: [darwin]
-
-- '@rollup/rollup-linux-arm-gnueabihf@4.18.0':
-- resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==}
- cpu: [arm]
- os: [linux]
-
- '@rollup/rollup-linux-arm-gnueabihf@4.19.1':
- resolution: {integrity: sha512-MXg1xp+e5GhZ3Vit1gGEyoC+dyQUBy2JgVQ+3hUrD9wZMkUw/ywgkpK7oZgnB6kPpGrxJ41clkPPnsknuD6M2Q==}
-- cpu: [arm]
-- os: [linux]
--
- '@rollup/rollup-linux-arm-musleabihf@4.18.0':
- resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==}
+ '@rollup/rollup-linux-arm-gnueabihf@4.20.0':
+ resolution: {integrity: sha512-jMYvxZwGmoHFBTbr12Xc6wOdc2xA5tF5F2q6t7Rcfab68TT0n+r7dgawD4qhPEvasDsVpQi+MgDzj2faOLsZjA==}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm-musleabihf@4.19.1':
- resolution: {integrity: sha512-DZNLwIY4ftPSRVkJEaxYkq7u2zel7aah57HESuNkUnz+3bZHxwkCUkrfS2IWC1sxK6F2QNIR0Qr/YXw7nkF3Pw==}
- '@rollup/rollup-linux-arm-musleabihf@4.18.0':
- resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==}
- cpu: [arm]
- os: [linux]
-
+ '@rollup/rollup-linux-arm-musleabihf@4.20.0':
+ resolution: {integrity: sha512-1asSTl4HKuIHIB1GcdFHNNZhxAYEdqML/MW4QmPS4G0ivbEcBr1JKlFLKsIRqjSwOBkdItn3/ZDlyvZ/N6KPlw==}
cpu: [arm]
os: [linux]
-- '@rollup/rollup-linux-arm64-gnu@4.18.0':
-- resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==}
- cpu: [arm64]
- os: [linux]
-
- '@rollup/rollup-linux-arm64-gnu@4.19.1':
- resolution: {integrity: sha512-C7evongnjyxdngSDRRSQv5GvyfISizgtk9RM+z2biV5kY6S/NF/wta7K+DanmktC5DkuaJQgoKGf7KUDmA7RUw==}
-- cpu: [arm64]
-- os: [linux]
--
- '@rollup/rollup-linux-arm64-musl@4.18.0':
- resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==}
+ '@rollup/rollup-linux-arm64-gnu@4.20.0':
+ resolution: {integrity: sha512-COBb8Bkx56KldOYJfMf6wKeYJrtJ9vEgBRAOkfw6Ens0tnmzPqvlpjZiLgkhg6cA3DGzCmLmmd319pmHvKWWlQ==}
cpu: [arm64]
os: [linux]
- '@rollup/rollup-linux-arm64-musl@4.19.1':
- resolution: {integrity: sha512-89tFWqxfxLLHkAthAcrTs9etAoBFRduNfWdl2xUs/yLV+7XDrJ5yuXMHptNqf1Zw0UCA3cAutkAiAokYCkaPtw==}
- '@rollup/rollup-linux-arm64-musl@4.18.0':
- resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==}
- cpu: [arm64]
- os: [linux]
-
+ '@rollup/rollup-linux-arm64-musl@4.20.0':
+ resolution: {integrity: sha512-+it+mBSyMslVQa8wSPvBx53fYuZK/oLTu5RJoXogjk6x7Q7sz1GNRsXWjn6SwyJm8E/oMjNVwPhmNdIjwP135Q==}
cpu: [arm64]
os: [linux]
-- '@rollup/rollup-linux-powerpc64le-gnu@4.18.0':
-- resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==}
-- cpu: [ppc64]
-- os: [linux]
--
- '@rollup/rollup-linux-powerpc64le-gnu@4.19.1':
- resolution: {integrity: sha512-PromGeV50sq+YfaisG8W3fd+Cl6mnOOiNv2qKKqKCpiiEke2KiKVyDqG/Mb9GWKbYMHj5a01fq/qlUR28PFhCQ==}
+ '@rollup/rollup-linux-powerpc64le-gnu@4.20.0':
+ resolution: {integrity: sha512-yAMvqhPfGKsAxHN8I4+jE0CpLWD8cv4z7CK7BMmhjDuz606Q2tFKkWRY8bHR9JQXYcoLfopo5TTqzxgPUjUMfw==}
cpu: [ppc64]
os: [linux]
-- '@rollup/rollup-linux-riscv64-gnu@4.18.0':
-- resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==}
- cpu: [riscv64]
- os: [linux]
-
+ '@rollup/rollup-linux-riscv64-gnu@4.20.0':
+ resolution: {integrity: sha512-qmuxFpfmi/2SUkAw95TtNq/w/I7Gpjurx609OOOV7U4vhvUhBcftcmXwl3rqAek+ADBwSjIC4IVNLiszoj3dPA==}
cpu: [riscv64]
os: [linux]
- '@rollup/rollup-linux-riscv64-gnu@4.19.1':
- resolution: {integrity: sha512-/1BmHYh+iz0cNCP0oHCuF8CSiNj0JOGf0jRlSo3L/FAyZyG2rGBuKpkZVH9YF+x58r1jgWxvm1aRg3DHrLDt6A==}
- cpu: [riscv64]
- os: [linux]
-
-- '@rollup/rollup-linux-s390x-gnu@4.18.0':
-- resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==}
- cpu: [s390x]
- os: [linux]
-
+ '@rollup/rollup-linux-s390x-gnu@4.20.0':
+ resolution: {integrity: sha512-I0BtGXddHSHjV1mqTNkgUZLnS3WtsqebAXv11D5BZE/gfw5KoyXSAXVqyJximQXNvNzUo4GKlCK/dIwXlz+jlg==}
cpu: [s390x]
os: [linux]
- '@rollup/rollup-linux-s390x-gnu@4.19.1':
- resolution: {integrity: sha512-0cYP5rGkQWRZKy9/HtsWVStLXzCF3cCBTRI+qRL8Z+wkYlqN7zrSYm6FuY5Kd5ysS5aH0q5lVgb/WbG4jqXN1Q==}
- cpu: [s390x]
- os: [linux]
-
-- '@rollup/rollup-linux-x64-gnu@4.18.0':
-- resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==}
-- cpu: [x64]
-- os: [linux]
--
- '@rollup/rollup-linux-x64-gnu@4.19.1':
- resolution: {integrity: sha512-XUXeI9eM8rMP8aGvii/aOOiMvTs7xlCosq9xCjcqI9+5hBxtjDpD+7Abm1ZhVIFE1J2h2VIg0t2DX/gjespC2Q==}
+ '@rollup/rollup-linux-x64-gnu@4.20.0':
+ resolution: {integrity: sha512-y+eoL2I3iphUg9tN9GB6ku1FA8kOfmF4oUEWhztDJ4KXJy1agk/9+pejOuZkNFhRwHAOxMsBPLbXPd6mJiCwew==}
cpu: [x64]
os: [linux]
-- '@rollup/rollup-linux-x64-musl@4.18.0':
-- resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==}
- cpu: [x64]
- os: [linux]
-
+ '@rollup/rollup-linux-x64-musl@4.20.0':
+ resolution: {integrity: sha512-hM3nhW40kBNYUkZb/r9k2FKK+/MnKglX7UYd4ZUy5DJs8/sMsIbqWK2piZtVGE3kcXVNj3B2IrUYROJMMCikNg==}
cpu: [x64]
os: [linux]
- '@rollup/rollup-linux-x64-musl@4.19.1':
- resolution: {integrity: sha512-V7cBw/cKXMfEVhpSvVZhC+iGifD6U1zJ4tbibjjN+Xi3blSXaj/rJynAkCFFQfoG6VZrAiP7uGVzL440Q6Me2Q==}
- cpu: [x64]
- os: [linux]
-
-- '@rollup/rollup-win32-arm64-msvc@4.18.0':
-- resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==}
-- cpu: [arm64]
-- os: [win32]
--
- '@rollup/rollup-win32-arm64-msvc@4.19.1':
- resolution: {integrity: sha512-88brja2vldW/76jWATlBqHEoGjJLRnP0WOEKAUbMcXaAZnemNhlAHSyj4jIwMoP2T750LE9lblvD4e2jXleZsA==}
+ '@rollup/rollup-win32-arm64-msvc@4.20.0':
+ resolution: {integrity: sha512-psegMvP+Ik/Bg7QRJbv8w8PAytPA7Uo8fpFjXyCRHWm6Nt42L+JtoqH8eDQ5hRP7/XW2UiIriy1Z46jf0Oa1kA==}
cpu: [arm64]
os: [win32]
-- '@rollup/rollup-win32-ia32-msvc@4.18.0':
-- resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==}
- cpu: [ia32]
- os: [win32]
-
+ '@rollup/rollup-win32-ia32-msvc@4.20.0':
+ resolution: {integrity: sha512-GabekH3w4lgAJpVxkk7hUzUf2hICSQO0a/BLFA11/RMxQT92MabKAqyubzDZmMOC/hcJNlc+rrypzNzYl4Dx7A==}
cpu: [ia32]
os: [win32]
- '@rollup/rollup-win32-ia32-msvc@4.19.1':
- resolution: {integrity: sha512-LdxxcqRVSXi6k6JUrTah1rHuaupoeuiv38du8Mt4r4IPer3kwlTo+RuvfE8KzZ/tL6BhaPlzJ3835i6CxrFIRQ==}
- cpu: [ia32]
- os: [win32]
-
-- '@rollup/rollup-win32-x64-msvc@4.18.0':
-- resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==}
-- cpu: [x64]
-- os: [win32]
--
- '@rollup/rollup-win32-x64-msvc@4.19.1':
- resolution: {integrity: sha512-2bIrL28PcK3YCqD9anGxDxamxdiJAxA+l7fWIwM5o8UqNy1t3d1NdAweO2XhA0KTDJ5aH1FsuiT5+7VhtHliXg==}
+ '@rollup/rollup-win32-x64-msvc@4.20.0':
+ resolution: {integrity: sha512-aJ1EJSuTdGnM6qbVC4B5DSmozPTqIag9fSzXRNNo+humQLG89XpPgdt16Ia56ORD7s+H8Pmyx44uczDQ0yDzpg==}
cpu: [x64]
os: [win32]
resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==}
engines: {node: '>=12'}
-- magic-string@0.30.10:
-- resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==}
-
+ magic-string@0.30.11:
+ resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
magicast@0.3.4:
resolution: {integrity: sha512-TyDF/Pn36bBji9rWKHlZe+PZb6Mx5V8IHCSxk7X4aljM4e/vyDvZZYwHewdVaqiA0nb3ghfHU/6AUpDxWoER2Q==}
peerDependencies:
rollup: ^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0
-- rollup@4.18.0:
-- resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==}
-- engines: {node: '>=18.0.0', npm: '>=8.0.0'}
-- hasBin: true
--
- rollup@4.19.1:
- resolution: {integrity: sha512-K5vziVlg7hTpYfFBI+91zHBEMo6jafYXpkMlqZjg7/zhIG9iHqazBf4xz9AVdjS9BruRn280ROqLI7G3OFRIlw==}
+ rollup@4.20.0:
+ resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
estree-walker: 2.0.2
picomatch: 2.3.1
optionalDependencies:
- rollup: 4.19.1
-
- '@rollup/rollup-android-arm-eabi@4.18.0':
- optional: true
-
- '@rollup/rollup-android-arm-eabi@4.19.1':
- optional: true
-
- '@rollup/rollup-android-arm64@4.18.0':
- optional: true
-
- '@rollup/rollup-android-arm64@4.19.1':
- optional: true
-
- '@rollup/rollup-darwin-arm64@4.18.0':
- optional: true
-
- '@rollup/rollup-darwin-arm64@4.19.1':
- optional: true
-
- '@rollup/rollup-darwin-x64@4.18.0':
- optional: true
+ rollup: 4.20.0
- '@rollup/rollup-darwin-x64@4.19.1':
- '@rollup/rollup-android-arm-eabi@4.18.0':
- optional: true
-
+ '@rollup/rollup-android-arm-eabi@4.20.0':
optional: true
- '@rollup/rollup-linux-arm-gnueabihf@4.18.0':
- '@rollup/rollup-android-arm64@4.18.0':
- optional: true
-
+ '@rollup/rollup-android-arm64@4.20.0':
optional: true
- '@rollup/rollup-linux-arm-gnueabihf@4.19.1':
- '@rollup/rollup-darwin-arm64@4.18.0':
- optional: true
-
+ '@rollup/rollup-darwin-arm64@4.20.0':
optional: true
- '@rollup/rollup-linux-arm-musleabihf@4.18.0':
- '@rollup/rollup-darwin-x64@4.18.0':
- optional: true
-
+ '@rollup/rollup-darwin-x64@4.20.0':
optional: true
- '@rollup/rollup-linux-arm-musleabihf@4.19.1':
- '@rollup/rollup-linux-arm-gnueabihf@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-arm-gnueabihf@4.20.0':
optional: true
- '@rollup/rollup-linux-arm64-gnu@4.18.0':
- '@rollup/rollup-linux-arm-musleabihf@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-arm-musleabihf@4.20.0':
optional: true
- '@rollup/rollup-linux-arm64-gnu@4.19.1':
- '@rollup/rollup-linux-arm64-gnu@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-arm64-gnu@4.20.0':
optional: true
-- '@rollup/rollup-linux-arm64-musl@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-arm64-musl@4.20.0':
optional: true
- '@rollup/rollup-linux-arm64-musl@4.19.1':
- '@rollup/rollup-linux-powerpc64le-gnu@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-powerpc64le-gnu@4.20.0':
optional: true
- '@rollup/rollup-linux-powerpc64le-gnu@4.18.0':
- '@rollup/rollup-linux-riscv64-gnu@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-riscv64-gnu@4.20.0':
optional: true
- '@rollup/rollup-linux-powerpc64le-gnu@4.19.1':
- '@rollup/rollup-linux-s390x-gnu@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-s390x-gnu@4.20.0':
optional: true
- '@rollup/rollup-linux-riscv64-gnu@4.18.0':
- '@rollup/rollup-linux-x64-gnu@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-x64-gnu@4.20.0':
optional: true
- '@rollup/rollup-linux-riscv64-gnu@4.19.1':
- '@rollup/rollup-linux-x64-musl@4.18.0':
- optional: true
-
+ '@rollup/rollup-linux-x64-musl@4.20.0':
optional: true
- '@rollup/rollup-linux-s390x-gnu@4.18.0':
- '@rollup/rollup-win32-arm64-msvc@4.18.0':
- optional: true
-
+ '@rollup/rollup-win32-arm64-msvc@4.20.0':
optional: true
- '@rollup/rollup-linux-s390x-gnu@4.19.1':
- '@rollup/rollup-win32-ia32-msvc@4.18.0':
- optional: true
-
+ '@rollup/rollup-win32-ia32-msvc@4.20.0':
optional: true
- '@rollup/rollup-linux-x64-gnu@4.18.0':
- optional: true
-
- '@rollup/rollup-linux-x64-gnu@4.19.1':
- optional: true
-
- '@rollup/rollup-linux-x64-musl@4.18.0':
- optional: true
-
- '@rollup/rollup-linux-x64-musl@4.19.1':
- optional: true
-
- '@rollup/rollup-win32-arm64-msvc@4.18.0':
- optional: true
-
- '@rollup/rollup-win32-arm64-msvc@4.19.1':
- optional: true
-
- '@rollup/rollup-win32-ia32-msvc@4.18.0':
- optional: true
-
- '@rollup/rollup-win32-ia32-msvc@4.19.1':
- optional: true
-
-- '@rollup/rollup-win32-x64-msvc@4.18.0':
-- optional: true
--
- '@rollup/rollup-win32-x64-msvc@4.19.1':
+ '@rollup/rollup-win32-x64-msvc@4.20.0':
optional: true
'@sinclair/typebox@0.27.8': {}
'@types/semver@7.5.8': {}
- '@types/node': 20.14.13
+ '@types/serve-handler@6.1.4':
+ dependencies:
++ '@types/node': 20.14.14
+
+ '@types/trusted-types@2.0.7': {}
+
'@types/yauzl@2.10.3':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 20.14.14
optional: true
- '@typescript-eslint/eslint-plugin@8.0.0(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5)':
+ '@typescript-eslint/eslint-plugin@8.0.0(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.5.4))(eslint@9.8.0)(typescript@5.5.4)':
dependencies:
'@eslint-community/regexpp': 4.11.0
- '@typescript-eslint/parser': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/parser': 8.0.0(eslint@9.8.0)(typescript@5.5.4)
'@typescript-eslint/scope-manager': 8.0.0
- '@typescript-eslint/type-utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
- '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/type-utils': 8.0.0(eslint@9.8.0)(typescript@5.5.4)
+ '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.5.4)
'@typescript-eslint/visitor-keys': 8.0.0
eslint: 9.8.0
graphemer: 1.4.0
- supports-color
- typescript
- eslint-plugin-vitest@0.5.4(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@20.14.13)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1)):
- eslint-plugin-vitest@0.5.4(eslint@9.8.0)(typescript@5.4.5)(vitest@1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1)):
++ eslint-plugin-vitest@0.5.4(eslint@9.8.0)(typescript@5.5.4)(vitest@1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1)):
dependencies:
- '@typescript-eslint/utils': 7.15.0(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/utils': 7.15.0(eslint@9.8.0)(typescript@5.5.4)
eslint: 9.8.0
optionalDependencies:
- vitest: 1.6.0(@types/node@20.14.13)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1)
+ vitest: 1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1)
transitivePeerDependencies:
- supports-color
- typescript
lru-cache@7.18.3: {}
-- magic-string@0.30.10:
- dependencies:
- '@jridgewell/sourcemap-codec': 1.4.15
-
+ magic-string@0.30.11:
dependencies:
- '@jridgewell/sourcemap-codec': 1.4.15
+ '@jridgewell/sourcemap-codec': 1.5.0
magicast@0.3.4:
dependencies:
- supports-color
- utf-8-validate
- puppeteer@22.14.0(typescript@5.5.4):
- puppeteer@22.15.0(typescript@5.4.5):
++ puppeteer@22.15.0(typescript@5.5.4):
dependencies:
'@puppeteer/browsers': 2.3.0
- cosmiconfig: 9.0.0(typescript@5.4.5)
+ cosmiconfig: 9.0.0(typescript@5.5.4)
devtools-protocol: 0.0.1312386
- puppeteer-core: 22.14.0
+ puppeteer-core: 22.15.0
transitivePeerDependencies:
- bufferutil
- supports-color
rfdc@1.4.1: {}
- rimraf@5.0.9:
+ rimraf@6.0.1:
dependencies:
- glob: 10.4.3
+ glob: 11.0.0
+ package-json-from-dist: 1.0.0
- rollup-plugin-dts@6.1.1(rollup@4.19.1)(typescript@5.5.4):
- rollup-plugin-dts@6.1.1(rollup@4.20.0)(typescript@5.4.5):
++ rollup-plugin-dts@6.1.1(rollup@4.20.0)(typescript@5.5.4):
dependencies:
- magic-string: 0.30.10
- rollup: 4.19.1
+ magic-string: 0.30.11
+ rollup: 4.20.0
- typescript: 5.4.5
+ typescript: 5.5.4
optionalDependencies:
'@babel/code-frame': 7.24.7
transitivePeerDependencies:
- supports-color
- rollup-plugin-polyfill-node@0.13.0(rollup@4.19.1):
+ rollup-plugin-polyfill-node@0.13.0(rollup@4.20.0):
dependencies:
- '@rollup/plugin-inject': 5.0.5(rollup@4.19.1)
- rollup: 4.19.1
-
- rollup@4.18.0:
- dependencies:
- '@types/estree': 1.0.5
- optionalDependencies:
- '@rollup/rollup-android-arm-eabi': 4.18.0
- '@rollup/rollup-android-arm64': 4.18.0
- '@rollup/rollup-darwin-arm64': 4.18.0
- '@rollup/rollup-darwin-x64': 4.18.0
- '@rollup/rollup-linux-arm-gnueabihf': 4.18.0
- '@rollup/rollup-linux-arm-musleabihf': 4.18.0
- '@rollup/rollup-linux-arm64-gnu': 4.18.0
- '@rollup/rollup-linux-arm64-musl': 4.18.0
- '@rollup/rollup-linux-powerpc64le-gnu': 4.18.0
- '@rollup/rollup-linux-riscv64-gnu': 4.18.0
- '@rollup/rollup-linux-s390x-gnu': 4.18.0
- '@rollup/rollup-linux-x64-gnu': 4.18.0
- '@rollup/rollup-linux-x64-musl': 4.18.0
- '@rollup/rollup-win32-arm64-msvc': 4.18.0
- '@rollup/rollup-win32-ia32-msvc': 4.18.0
- '@rollup/rollup-win32-x64-msvc': 4.18.0
- fsevents: 2.3.3
+ '@rollup/plugin-inject': 5.0.5(rollup@4.20.0)
+ rollup: 4.20.0
- rollup@4.19.1:
- rollup@4.18.0:
- dependencies:
- '@types/estree': 1.0.5
- optionalDependencies:
- '@rollup/rollup-android-arm-eabi': 4.18.0
- '@rollup/rollup-android-arm64': 4.18.0
- '@rollup/rollup-darwin-arm64': 4.18.0
- '@rollup/rollup-darwin-x64': 4.18.0
- '@rollup/rollup-linux-arm-gnueabihf': 4.18.0
- '@rollup/rollup-linux-arm-musleabihf': 4.18.0
- '@rollup/rollup-linux-arm64-gnu': 4.18.0
- '@rollup/rollup-linux-arm64-musl': 4.18.0
- '@rollup/rollup-linux-powerpc64le-gnu': 4.18.0
- '@rollup/rollup-linux-riscv64-gnu': 4.18.0
- '@rollup/rollup-linux-s390x-gnu': 4.18.0
- '@rollup/rollup-linux-x64-gnu': 4.18.0
- '@rollup/rollup-linux-x64-musl': 4.18.0
- '@rollup/rollup-win32-arm64-msvc': 4.18.0
- '@rollup/rollup-win32-ia32-msvc': 4.18.0
- '@rollup/rollup-win32-x64-msvc': 4.18.0
- fsevents: 2.3.3
-
+ rollup@4.20.0:
dependencies:
'@types/estree': 1.0.5
optionalDependencies:
dependencies:
esbuild: 0.21.5
postcss: 8.4.40
-- rollup: 4.18.0
++ rollup: 4.20.0
optionalDependencies:
- '@types/node': 20.14.13
+ '@types/node': 20.14.14
fsevents: 2.3.3
sass: 1.77.8
terser: 5.31.1