From df821e5e0ea0ed5e31edf4878a09fd9929ca3165 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joaqu=C3=ADn=20S=C3=A1nchez?= Date: Wed, 6 Dec 2023 21:34:05 +0100 Subject: [PATCH] feat: add Vite 5 support (#73) * feat: add Vite 5 support * chore: cleanup --- build.config.ts | 1 - examples/sveltekit-ts/client-test/sw.spec.ts | 7 + examples/sveltekit-ts/package.json | 4 +- examples/sveltekit-ts/test/build.test.ts | 4 + package.json | 22 +- pnpm-lock.yaml | 807 ++++++++++++------- src/config.ts | 13 + src/types.ts | 34 +- 8 files changed, 584 insertions(+), 308 deletions(-) diff --git a/build.config.ts b/build.config.ts index 7068174..bfecf98 100644 --- a/build.config.ts +++ b/build.config.ts @@ -8,7 +8,6 @@ export default defineBuildConfig({ declaration: true, externals: [ 'fast-glob', - 'kolorist', 'vite', 'vite-plugin-pwa', 'workbox-build', diff --git a/examples/sveltekit-ts/client-test/sw.spec.ts b/examples/sveltekit-ts/client-test/sw.spec.ts index 26fe100..def8f69 100644 --- a/examples/sveltekit-ts/client-test/sw.spec.ts +++ b/examples/sveltekit-ts/client-test/sw.spec.ts @@ -1,4 +1,6 @@ import {test, expect} from '@playwright/test'; +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore import {generateSW} from "../pwa.mjs"; test('The service worker is registered and cache storage is present', async ({ page}) => { @@ -11,6 +13,7 @@ test('The service worker is registered and cache storage is present', async ({ p navigator.serviceWorker.ready, new Promise((_, reject) => setTimeout(() => reject(new Error('Service worker registration failed: time out')), 10000)) ]) + // @ts-expect-error registration is of type unknown return registration.active?.scriptURL }); const swName = generateSW ? 'sw.js' : 'prompt-sw.js' @@ -41,4 +44,8 @@ test('The service worker is registered and cache storage is present', async ({ p expect(urls.some(url => url.startsWith('manifest.webmanifest?__WB_REVISION__='))).toEqual(true) expect(urls.some(url => url.startsWith('?__WB_REVISION__='))).toEqual(true) expect(urls.some(url => url.startsWith('about?__WB_REVISION__='))).toEqual(true) + // dontCacheBustURLsMatching: any asset in _app/immutable folder shouldn't have a revision (?__WB_REVISION__=) + expect(urls.some(url => url.startsWith('_app/immutable/') && url.endsWith('.css'))).toEqual(true) + expect(urls.some(url => url.startsWith('_app/immutable/') && url.endsWith('.js'))).toEqual(true) + // expect(urls.some(url => url.includes('_app/version.json?__WB_REVISION__='))).toEqual(true) }); diff --git a/examples/sveltekit-ts/package.json b/examples/sveltekit-ts/package.json index e4beb7a..b7cae95 100644 --- a/examples/sveltekit-ts/package.json +++ b/examples/sveltekit-ts/package.json @@ -29,8 +29,8 @@ "@sveltejs/adapter-node": "^1.3.1", "@sveltejs/kit": "^1.24.1", "@types/cookie": "^0.5.2", - "@typescript-eslint/eslint-plugin": "^6.6.0", - "@typescript-eslint/parser": "^6.6.0", + "@typescript-eslint/eslint-plugin": "^6.13.2", + "@typescript-eslint/parser": "^6.13.2", "@vite-pwa/sveltekit": "workspace:*", "eslint": "^8.49.0", "eslint-plugin-svelte": "^2.34.0", diff --git a/examples/sveltekit-ts/test/build.test.ts b/examples/sveltekit-ts/test/build.test.ts index 1ca3acb..89a68cb 100644 --- a/examples/sveltekit-ts/test/build.test.ts +++ b/examples/sveltekit-ts/test/build.test.ts @@ -1,6 +1,10 @@ import { describe, expect, it } from 'vitest' import { existsSync, readFileSync } from 'node:fs' +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore import { generateSW } from '../pwa.mjs' +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore import { nodeAdapter } from '../adapter.mjs' describe(`test-build: ${nodeAdapter ? 'node' : 'static'} adapter`, () => { diff --git a/package.json b/package.json index a94867d..f86d318 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@vite-pwa/sveltekit", "type": "module", "version": "0.2.8", - "packageManager": "pnpm@8.10.3", + "packageManager": "pnpm@8.11.0", "description": "Zero-config PWA for SvelteKit", "author": "antfu ", "license": "MIT", @@ -51,21 +51,23 @@ }, "peerDependencies": { "@sveltejs/kit": "^1.3.1", - "vite-plugin-pwa": ">=0.16.5 <1" + "vite-plugin-pwa": ">=0.16.7 <1" + }, + "dependencies": { + "kolorist": "^1.8.0" }, "devDependencies": { - "@antfu/eslint-config": "^0.41.0", - "@antfu/ni": "^0.21.8", + "@antfu/eslint-config": "^0.43.1", + "@antfu/ni": "^0.21.12", "@types/debug": "^4.1.8", "@types/node": "^18.17.15", - "@typescript-eslint/eslint-plugin": "^6.6.0", + "@typescript-eslint/eslint-plugin": "^6.13.2", "@vite-pwa/sveltekit": "workspace:*", "bumpp": "^9.2.0", - "eslint": "^8.49.0", - "kolorist": "^1.8.0", - "typescript": "^5.2.2", + "eslint": "^8.55.0", + "typescript": "^5.3.3", "unbuild": "^2.0.0", - "vite": "^4.4.9", - "vite-plugin-pwa": ">=0.16.5 <1" + "vite": "^4.5.1", + "vite-plugin-pwa": ">=0.16.7 <1" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1795f7f..6bbd860 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,14 +10,17 @@ importers: dependencies: '@sveltejs/kit': specifier: ^1.3.1 - version: 1.10.0(svelte@3.59.1)(vite@4.4.9) + version: 1.10.0(svelte@3.59.1)(vite@4.5.1) + kolorist: + specifier: ^1.8.0 + version: 1.8.0 devDependencies: '@antfu/eslint-config': - specifier: ^0.41.0 - version: 0.41.0(eslint@8.49.0)(typescript@5.2.2) + specifier: ^0.43.1 + version: 0.43.1(eslint@8.55.0)(typescript@5.3.3) '@antfu/ni': - specifier: ^0.21.8 - version: 0.21.8 + specifier: ^0.21.12 + version: 0.21.12 '@types/debug': specifier: ^4.1.8 version: 4.1.8 @@ -25,8 +28,8 @@ importers: specifier: ^18.17.15 version: 18.17.15 '@typescript-eslint/eslint-plugin': - specifier: ^6.6.0 - version: 6.6.0(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) + specifier: ^6.13.2 + version: 6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) '@vite-pwa/sveltekit': specifier: workspace:* version: 'link:' @@ -34,23 +37,20 @@ importers: specifier: ^9.2.0 version: 9.2.0 eslint: - specifier: ^8.49.0 - version: 8.49.0 - kolorist: - specifier: ^1.8.0 - version: 1.8.0 + specifier: ^8.55.0 + version: 8.55.0 typescript: - specifier: ^5.2.2 - version: 5.2.2 + specifier: ^5.3.3 + version: 5.3.3 unbuild: specifier: ^2.0.0 - version: 2.0.0(typescript@5.2.2) + version: 2.0.0(typescript@5.3.3) vite: - specifier: ^4.4.9 - version: 4.4.9(@types/node@18.17.15) + specifier: ^4.5.1 + version: 4.5.1(@types/node@18.17.15) vite-plugin-pwa: - specifier: '>=0.16.5 <1' - version: 0.16.5(vite@4.4.9)(workbox-build@7.0.0)(workbox-window@7.0.0) + specifier: '>=0.16.7 <1' + version: 0.17.4(vite@4.5.1)(workbox-build@7.0.0)(workbox-window@7.0.0) examples/sveltekit-ts: dependencies: @@ -69,16 +69,16 @@ importers: version: 2.0.3(@sveltejs/kit@1.24.1) '@sveltejs/kit': specifier: ^1.24.1 - version: 1.24.1(svelte@4.2.0)(vite@4.4.9) + version: 1.24.1(svelte@4.2.0)(vite@4.5.1) '@types/cookie': specifier: ^0.5.2 version: 0.5.2 '@typescript-eslint/eslint-plugin': - specifier: ^6.6.0 - version: 6.6.0(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) + specifier: ^6.13.2 + version: 6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.49.0)(typescript@5.2.2) '@typescript-eslint/parser': - specifier: ^6.6.0 - version: 6.6.0(eslint@8.49.0)(typescript@5.2.2) + specifier: ^6.13.2 + version: 6.13.2(eslint@8.49.0)(typescript@5.2.2) '@vite-pwa/sveltekit': specifier: workspace:* version: link:../.. @@ -127,24 +127,26 @@ packages: '@jridgewell/trace-mapping': 0.3.19 dev: true - /@antfu/eslint-config-basic@0.41.0(@typescript-eslint/eslint-plugin@6.6.0)(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-zcwFv+nEV/NroeeVWriNdnIGd9soOLRG8wIiVz4VVJ0BjONrqQR56HLG/gDxH/1GUYBnQCEcVxGUmegce08cnw==} + /@antfu/eslint-config-basic@0.43.1(@typescript-eslint/eslint-plugin@6.13.2)(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-SW6hmGmqI985fsCJ+oivo4MbiMmRMgCJ0Ne8j/hwCB6O6Mc0m5bDqYeKn5HqFhvZhG84GEg5jPDKNiHrBYnQjw==} peerDependencies: eslint: '>=7.4.0' dependencies: - eslint: 8.49.0 - eslint-plugin-antfu: 0.41.0(eslint@8.49.0)(typescript@5.2.2) - eslint-plugin-eslint-comments: 3.2.0(eslint@8.49.0) + '@stylistic/eslint-plugin-js': 0.0.4 + eslint: 8.55.0 + eslint-plugin-antfu: 0.43.1(eslint@8.55.0)(typescript@5.3.3) + eslint-plugin-eslint-comments: 3.2.0(eslint@8.55.0) eslint-plugin-html: 7.1.0 - eslint-plugin-import: /eslint-plugin-i@2.28.0-2(@typescript-eslint/parser@6.6.0)(eslint@8.49.0) - eslint-plugin-jsonc: 2.9.0(eslint@8.49.0) - eslint-plugin-markdown: 3.0.1(eslint@8.49.0) - eslint-plugin-n: 16.0.2(eslint@8.49.0) + eslint-plugin-import: /eslint-plugin-i@2.28.1(@typescript-eslint/parser@6.13.2)(eslint@8.55.0) + eslint-plugin-jsdoc: 46.9.0(eslint@8.55.0) + eslint-plugin-jsonc: 2.9.0(eslint@8.55.0) + eslint-plugin-markdown: 3.0.1(eslint@8.55.0) + eslint-plugin-n: 16.3.1(eslint@8.55.0) eslint-plugin-no-only-tests: 3.1.0 - eslint-plugin-promise: 6.1.1(eslint@8.49.0) - eslint-plugin-unicorn: 48.0.1(eslint@8.49.0) - eslint-plugin-unused-imports: 3.0.0(@typescript-eslint/eslint-plugin@6.6.0)(eslint@8.49.0) - eslint-plugin-yml: 1.8.0(eslint@8.49.0) + eslint-plugin-promise: 6.1.1(eslint@8.55.0) + eslint-plugin-unicorn: 48.0.1(eslint@8.55.0) + eslint-plugin-unused-imports: 3.0.0(@typescript-eslint/eslint-plugin@6.13.2)(eslint@8.55.0) + eslint-plugin-yml: 1.10.0(eslint@8.55.0) jsonc-eslint-parser: 2.3.0 yaml-eslint-parser: 1.2.2 transitivePeerDependencies: @@ -156,18 +158,19 @@ packages: - typescript dev: true - /@antfu/eslint-config-ts@0.41.0(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-ng3GYpJGZgrxGwBVda/MgUpveH3LbEqdPCFi1+S5e62W4kf8rmEVbhc0I8w7/aKN0uNqir5SInYg8gob2maDAQ==} + /@antfu/eslint-config-ts@0.43.1(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-s3zItBSopYbM/3eii/JKas1PmWR+wCPRNS89qUi4zxPvpuIgN5mahkBvbsCiWacrNFtLxe1zGgo5qijBhVfuvA==} peerDependencies: eslint: '>=7.4.0' typescript: '>=3.9' dependencies: - '@antfu/eslint-config-basic': 0.41.0(@typescript-eslint/eslint-plugin@6.6.0)(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/eslint-plugin': 6.6.0(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/parser': 6.6.0(eslint@8.49.0)(typescript@5.2.2) - eslint: 8.49.0 - eslint-plugin-jest: 27.2.3(@typescript-eslint/eslint-plugin@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - typescript: 5.2.2 + '@antfu/eslint-config-basic': 0.43.1(@typescript-eslint/eslint-plugin@6.13.2)(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + '@stylistic/eslint-plugin-ts': 0.0.4(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/eslint-plugin': 6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + eslint: 8.55.0 + eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -175,15 +178,15 @@ packages: - supports-color dev: true - /@antfu/eslint-config-vue@0.41.0(@typescript-eslint/eslint-plugin@6.6.0)(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-iJiEGRUgRmT3mQCmGl0hTMwq/ShXRjRPjpgsDcphKJyEF06ZIR/4gxHn+utQRLT2hD39DQN8gk0ZbpV3gWtf/g==} + /@antfu/eslint-config-vue@0.43.1(@typescript-eslint/eslint-plugin@6.13.2)(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-HxOfe8Vl+DPrzssbs5LHRDCnBtCy1LSA1DIeV71IC+iTpzoASFahSsVX5qckYu1InFgUm93XOhHCWm34LzPsvg==} peerDependencies: eslint: '>=7.4.0' dependencies: - '@antfu/eslint-config-basic': 0.41.0(@typescript-eslint/eslint-plugin@6.6.0)(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - '@antfu/eslint-config-ts': 0.41.0(eslint@8.49.0)(typescript@5.2.2) - eslint: 8.49.0 - eslint-plugin-vue: 9.17.0(eslint@8.49.0) + '@antfu/eslint-config-basic': 0.43.1(@typescript-eslint/eslint-plugin@6.13.2)(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + '@antfu/eslint-config-ts': 0.43.1(eslint@8.55.0)(typescript@5.3.3) + eslint: 8.55.0 + eslint-plugin-vue: 9.17.0(eslint@8.55.0) local-pkg: 0.4.3 transitivePeerDependencies: - '@typescript-eslint/eslint-plugin' @@ -195,24 +198,24 @@ packages: - typescript dev: true - /@antfu/eslint-config@0.41.0(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-510DginDPdzf45O6HOah3cK6NHXxobBc43IdBQCQmUGb+av9LIJjrd1idThFoyFh6m05iZ4YX/mhnhhJFqLiNw==} + /@antfu/eslint-config@0.43.1(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-kTOJeCqhotaiQ/Rv6JxgfAX+SxUq2GII4ZIvTa3GWBUXhFMBvehdUNtxcmO8/HxwxYKkm34/qeF+v7osBsMF1w==} peerDependencies: eslint: '>=7.4.0' dependencies: - '@antfu/eslint-config-vue': 0.41.0(@typescript-eslint/eslint-plugin@6.6.0)(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/eslint-plugin': 6.6.0(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/parser': 6.6.0(eslint@8.49.0)(typescript@5.2.2) - eslint: 8.49.0 - eslint-plugin-eslint-comments: 3.2.0(eslint@8.49.0) + '@antfu/eslint-config-vue': 0.43.1(@typescript-eslint/eslint-plugin@6.13.2)(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/eslint-plugin': 6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + eslint: 8.55.0 + eslint-plugin-eslint-comments: 3.2.0(eslint@8.55.0) eslint-plugin-html: 7.1.0 - eslint-plugin-import: /eslint-plugin-i@2.28.0-2(@typescript-eslint/parser@6.6.0)(eslint@8.49.0) - eslint-plugin-jsonc: 2.9.0(eslint@8.49.0) - eslint-plugin-n: 16.0.2(eslint@8.49.0) - eslint-plugin-promise: 6.1.1(eslint@8.49.0) - eslint-plugin-unicorn: 48.0.1(eslint@8.49.0) - eslint-plugin-vue: 9.17.0(eslint@8.49.0) - eslint-plugin-yml: 1.8.0(eslint@8.49.0) + eslint-plugin-import: /eslint-plugin-i@2.28.1(@typescript-eslint/parser@6.13.2)(eslint@8.55.0) + eslint-plugin-jsonc: 2.9.0(eslint@8.55.0) + eslint-plugin-n: 16.3.1(eslint@8.55.0) + eslint-plugin-promise: 6.1.1(eslint@8.55.0) + eslint-plugin-unicorn: 48.0.1(eslint@8.55.0) + eslint-plugin-vue: 9.17.0(eslint@8.55.0) + eslint-plugin-yml: 1.10.0(eslint@8.55.0) jsonc-eslint-parser: 2.3.0 yaml-eslint-parser: 1.2.2 transitivePeerDependencies: @@ -223,8 +226,8 @@ packages: - typescript dev: true - /@antfu/ni@0.21.8: - resolution: {integrity: sha512-90X8pU2szlvw0AJo9EZMbYc2eQKkmO7mAdC4tD4r5co2Mm56MT37MIG8EyB7p4WRheuzGxuLDxJ63mF6+Zajiw==} + /@antfu/ni@0.21.12: + resolution: {integrity: sha512-2aDL3WUv8hMJb2L3r/PIQWsTLyq7RQr3v9xD16fiz6O8ys1xEyLhhTOv8gxtZvJiTzjTF5pHoArvRdesGL1DMQ==} hasBin: true dev: true @@ -240,13 +243,6 @@ packages: leven: 3.1.0 dev: true - /@babel/code-frame@7.21.4: - resolution: {integrity: sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/highlight': 7.18.6 - dev: true - /@babel/code-frame@7.22.13: resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} engines: {node: '>=6.9.0'} @@ -518,15 +514,6 @@ packages: - supports-color dev: true - /@babel/highlight@7.18.6: - resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.22.15 - chalk: 2.4.2 - js-tokens: 4.0.0 - dev: true - /@babel/highlight@7.22.13: resolution: {integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==} engines: {node: '>=6.9.0'} @@ -1407,6 +1394,15 @@ packages: to-fast-properties: 2.0.0 dev: true + /@es-joy/jsdoccomment@0.41.0: + resolution: {integrity: sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==} + engines: {node: '>=16'} + dependencies: + comment-parser: 1.4.1 + esquery: 1.5.0 + jsdoc-type-pratt-parser: 4.0.0 + dev: true + /@esbuild/android-arm64@0.18.20: resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} engines: {node: '>=12'} @@ -1788,12 +1784,17 @@ packages: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: eslint: 8.49.0 - eslint-visitor-keys: 3.4.1 + eslint-visitor-keys: 3.4.3 dev: true - /@eslint-community/regexpp@4.5.1: - resolution: {integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + /@eslint-community/eslint-utils@4.4.0(eslint@8.55.0): + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint: 8.55.0 + eslint-visitor-keys: 3.4.3 dev: true /@eslint-community/regexpp@4.8.0: @@ -1818,11 +1819,33 @@ packages: - supports-color dev: true + /@eslint/eslintrc@2.1.4: + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.3.4 + espree: 9.6.1 + globals: 13.20.0 + ignore: 5.2.4 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true + /@eslint/js@8.49.0: resolution: {integrity: sha512-1S8uAY/MTJqVx0SC4epBq+N2yhuwtNwLbJYNZyhL2pO1ZVKn5HFXav5T41Ryzy9K9V7ZId2JB2oy/W4aCd9/2w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /@eslint/js@8.55.0: + resolution: {integrity: sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + /@fontsource/fira-mono@5.0.8: resolution: {integrity: sha512-8OJiUK2lzJjvDlkmamEfhtpL1cyFApg1Pk4kE5Pw5UTf1ETF3Yy/pprgwV5I+LQPDjuFvinsinT9xSUZ2b/zuQ==} dev: false @@ -1838,6 +1861,17 @@ packages: - supports-color dev: true + /@humanwhocodes/config-array@0.11.13: + resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} + engines: {node: '>=10.10.0'} + dependencies: + '@humanwhocodes/object-schema': 2.0.1 + debug: 4.3.4 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true + /@humanwhocodes/module-importer@1.0.1: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} @@ -1847,6 +1881,10 @@ packages: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true + /@humanwhocodes/object-schema@2.0.1: + resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} + dev: true + /@jest/schemas@29.6.3: resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2117,6 +2155,34 @@ packages: resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true + /@stylistic/eslint-plugin-js@0.0.4: + resolution: {integrity: sha512-W1rq2xxlFNhgZZJO+L59wtvlDI0xARYxx0WD8EeWNBO7NDybUSYSozCIcY9XvxQbTAsEXBjwqokeYm0crt7RxQ==} + dependencies: + acorn: 8.10.0 + escape-string-regexp: 4.0.0 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esutils: 2.0.3 + graphemer: 1.4.0 + dev: true + + /@stylistic/eslint-plugin-ts@0.0.4(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-sWL4Km5j8S+TLyzya/3adxMWGkCm3lVasJIVQqhxVfwnlGkpMI0GgYVIu/ubdKPS+dSvqjUHpsXgqWfMRF2+cQ==} + peerDependencies: + eslint: '*' + typescript: '*' + dependencies: + '@stylistic/eslint-plugin-js': 0.0.4 + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/type-utils': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + eslint: 8.55.0 + graphemer: 1.4.0 + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + dev: true + /@surma/rollup-plugin-off-main-thread@2.2.3: resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==} dependencies: @@ -2134,7 +2200,7 @@ packages: '@rollup/plugin-commonjs': 25.0.4(rollup@3.29.0) '@rollup/plugin-json': 6.0.0(rollup@3.29.0) '@rollup/plugin-node-resolve': 15.2.1(rollup@3.29.0) - '@sveltejs/kit': 1.24.1(svelte@4.2.0)(vite@4.4.9) + '@sveltejs/kit': 1.24.1(svelte@4.2.0)(vite@4.5.1) rollup: 3.29.0 dev: true @@ -2143,10 +2209,10 @@ packages: peerDependencies: '@sveltejs/kit': ^1.5.0 dependencies: - '@sveltejs/kit': 1.24.1(svelte@4.2.0)(vite@4.4.9) + '@sveltejs/kit': 1.24.1(svelte@4.2.0)(vite@4.5.1) dev: true - /@sveltejs/kit@1.10.0(svelte@3.59.1)(vite@4.4.9): + /@sveltejs/kit@1.10.0(svelte@3.59.1)(vite@4.5.1): resolution: {integrity: sha512-0P35zHrByfbF3Ym3RdQL+RvzgsCDSyO3imSwuZ67XAD5HoCQFF3a8Mhh0V3sObz3rc5aJd4Qn82UpAihJqZ6gQ==} engines: {node: ^16.14 || >=18} hasBin: true @@ -2155,7 +2221,7 @@ packages: svelte: ^3.54.0 vite: ^4.0.0 dependencies: - '@sveltejs/vite-plugin-svelte': 2.0.2(svelte@3.59.1)(vite@4.4.9) + '@sveltejs/vite-plugin-svelte': 2.0.2(svelte@3.59.1)(vite@4.5.1) '@types/cookie': 0.5.1 cookie: 0.5.0 devalue: 4.3.0 @@ -2169,12 +2235,12 @@ packages: svelte: 3.59.1 tiny-glob: 0.2.9 undici: 5.20.0 - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) transitivePeerDependencies: - supports-color dev: false - /@sveltejs/kit@1.24.1(svelte@4.2.0)(vite@4.4.9): + /@sveltejs/kit@1.24.1(svelte@4.2.0)(vite@4.5.1): resolution: {integrity: sha512-u2FO0q62Se9UZ0g9kXaWYi+54vTK70BKaPScOcx6jLMRou4CUZgDTNKnRhsbJgPMgaLkOH0j3o/fKlZ6jBfgSg==} engines: {node: ^16.14 || >=18} hasBin: true @@ -2183,7 +2249,7 @@ packages: svelte: ^3.54.0 || ^4.0.0-next.0 vite: ^4.0.0 dependencies: - '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@4.2.0)(vite@4.4.9) + '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@4.2.0)(vite@4.5.1) '@types/cookie': 0.5.2 cookie: 0.5.0 devalue: 4.3.1 @@ -2197,12 +2263,12 @@ packages: svelte: 4.2.0 tiny-glob: 0.2.9 undici: 5.23.0 - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) transitivePeerDependencies: - supports-color dev: true - /@sveltejs/vite-plugin-svelte-inspector@1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@4.2.0)(vite@4.4.9): + /@sveltejs/vite-plugin-svelte-inspector@1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@4.2.0)(vite@4.5.1): resolution: {integrity: sha512-Cy1dUMcYCnDVV/hPLXa43YZJ2jGKVW5rA0xuNL9dlmYhT0yoS1g7+FOFSRlgk0BXKk/Oc7grs+8BVA5Iz2fr8A==} engines: {node: ^14.18.0 || >= 16} peerDependencies: @@ -2210,15 +2276,15 @@ packages: svelte: ^3.54.0 || ^4.0.0-next.0 vite: ^4.0.0 dependencies: - '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@4.2.0)(vite@4.4.9) + '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@4.2.0)(vite@4.5.1) debug: 4.3.4 svelte: 4.2.0 - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) transitivePeerDependencies: - supports-color dev: true - /@sveltejs/vite-plugin-svelte@2.0.2(svelte@3.59.1)(vite@4.4.9): + /@sveltejs/vite-plugin-svelte@2.0.2(svelte@3.59.1)(vite@4.5.1): resolution: {integrity: sha512-xCEan0/NNpQuL0l5aS42FjwQ6wwskdxC3pW1OeFtEKNZwRg7Evro9lac9HesGP6TdFsTv2xMes5ASQVKbCacxg==} engines: {node: ^14.18.0 || >= 16} peerDependencies: @@ -2231,28 +2297,28 @@ packages: magic-string: 0.27.0 svelte: 3.59.1 svelte-hmr: 0.15.1(svelte@3.59.1) - vite: 4.4.9(@types/node@18.17.15) - vitefu: 0.2.3(vite@4.4.9) + vite: 4.5.1(@types/node@18.17.15) + vitefu: 0.2.3(vite@4.5.1) transitivePeerDependencies: - supports-color dev: false - /@sveltejs/vite-plugin-svelte@2.4.1(svelte@4.2.0)(vite@4.4.9): + /@sveltejs/vite-plugin-svelte@2.4.1(svelte@4.2.0)(vite@4.5.1): resolution: {integrity: sha512-bNNKvoRY89ptY7udeBSCmTdCVwkjmMcZ0j/z9J5MuedT8jPjq0zrknAo/jF1sToAza4NVaAgR9AkZoD9oJJmnA==} engines: {node: ^14.18.0 || >= 16} peerDependencies: svelte: ^3.54.0 || ^4.0.0-next.0 vite: ^4.0.0 dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@4.2.0)(vite@4.4.9) + '@sveltejs/vite-plugin-svelte-inspector': 1.0.2(@sveltejs/vite-plugin-svelte@2.4.1)(svelte@4.2.0)(vite@4.5.1) debug: 4.3.4 deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.3 svelte: 4.2.0 svelte-hmr: 0.15.1(svelte@4.2.0) - vite: 4.4.9(@types/node@18.17.15) - vitefu: 0.2.4(vite@4.4.9) + vite: 4.5.1(@types/node@18.17.15) + vitefu: 0.2.4(vite@4.5.1) transitivePeerDependencies: - supports-color dev: true @@ -2293,10 +2359,6 @@ packages: resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} dev: true - /@types/json-schema@7.0.11: - resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} - dev: true - /@types/json-schema@7.0.12: resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} dev: true @@ -2332,10 +2394,6 @@ packages: resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} dev: true - /@types/semver@7.3.13: - resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} - dev: true - /@types/semver@7.5.1: resolution: {integrity: sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==} dev: true @@ -2348,8 +2406,8 @@ packages: resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==} dev: true - /@typescript-eslint/eslint-plugin@6.6.0(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-CW9YDGTQnNYMIo5lMeuiIG08p4E0cXrXTbcZ2saT/ETE7dWUrNxlijsQeU04qAAKkILiLzdQz+cGFxCJjaZUmA==} + /@typescript-eslint/eslint-plugin@6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.49.0)(typescript@5.2.2): + resolution: {integrity: sha512-3+9OGAWHhk4O1LlcwLBONbdXsAhLjyCFogJY/cWy2lxdVJ2JrcTF2pTGMaLl2AE7U1l31n8Py4a8bx5DLf/0dQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha @@ -2359,12 +2417,12 @@ packages: typescript: optional: true dependencies: - '@eslint-community/regexpp': 4.5.1 - '@typescript-eslint/parser': 6.6.0(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/scope-manager': 6.6.0 - '@typescript-eslint/type-utils': 6.6.0(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/utils': 6.6.0(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.6.0 + '@eslint-community/regexpp': 4.8.0 + '@typescript-eslint/parser': 6.13.2(eslint@8.49.0)(typescript@5.2.2) + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/type-utils': 6.13.2(eslint@8.49.0)(typescript@5.2.2) + '@typescript-eslint/utils': 6.13.2(eslint@8.49.0)(typescript@5.2.2) + '@typescript-eslint/visitor-keys': 6.13.2 debug: 4.3.4 eslint: 8.49.0 graphemer: 1.4.0 @@ -2377,20 +2435,49 @@ packages: - supports-color dev: true - /@typescript-eslint/parser@6.6.0(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-setq5aJgUwtzGrhW177/i+DMLqBaJbdwGj2CPIVFFLE0NCliy5ujIdLHd2D1ysmlmsjdL2GWW+hR85neEfc12w==} + /@typescript-eslint/eslint-plugin@6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-3+9OGAWHhk4O1LlcwLBONbdXsAhLjyCFogJY/cWy2lxdVJ2JrcTF2pTGMaLl2AE7U1l31n8Py4a8bx5DLf/0dQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha eslint: ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.6.0 - '@typescript-eslint/types': 6.6.0 - '@typescript-eslint/typescript-estree': 6.6.0(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.6.0 + '@eslint-community/regexpp': 4.8.0 + '@typescript-eslint/parser': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/type-utils': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.13.2 + debug: 4.3.4 + eslint: 8.55.0 + graphemer: 1.4.0 + ignore: 5.2.4 + natural-compare: 1.4.0 + semver: 7.5.4 + ts-api-utils: 1.0.3(typescript@5.3.3) + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser@6.13.2(eslint@8.49.0)(typescript@5.2.2): + resolution: {integrity: sha512-MUkcC+7Wt/QOGeVlM8aGGJZy1XV5YKjTpq9jK6r6/iLsGXhBVaGP5N0UYvFsu9BFlSpwY9kMretzdBH01rkRXg==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.2.2) + '@typescript-eslint/visitor-keys': 6.13.2 debug: 4.3.4 eslint: 8.49.0 typescript: 5.2.2 @@ -2398,6 +2485,27 @@ packages: - supports-color dev: true + /@typescript-eslint/parser@6.13.2(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-MUkcC+7Wt/QOGeVlM8aGGJZy1XV5YKjTpq9jK6r6/iLsGXhBVaGP5N0UYvFsu9BFlSpwY9kMretzdBH01rkRXg==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.13.2 + debug: 4.3.4 + eslint: 8.55.0 + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/scope-manager@5.59.9: resolution: {integrity: sha512-8RA+E+w78z1+2dzvK/tGZ2cpGigBZ58VMEHDZtpE1v+LLjzrYGc8mMaTONSxKyEkz3IuXFM0IqYiGHlCsmlZxQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2406,16 +2514,16 @@ packages: '@typescript-eslint/visitor-keys': 5.59.9 dev: true - /@typescript-eslint/scope-manager@6.6.0: - resolution: {integrity: sha512-pT08u5W/GT4KjPUmEtc2kSYvrH8x89cVzkA0Sy2aaOUIw6YxOIjA8ilwLr/1fLjOedX1QAuBpG9XggWqIIfERw==} + /@typescript-eslint/scope-manager@6.13.2: + resolution: {integrity: sha512-CXQA0xo7z6x13FeDYCgBkjWzNqzBn8RXaE3QVQVIUm74fWJLkJkaHmHdKStrxQllGh6Q4eUGyNpMe0b1hMkXFA==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.6.0 - '@typescript-eslint/visitor-keys': 6.6.0 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/visitor-keys': 6.13.2 dev: true - /@typescript-eslint/type-utils@6.6.0(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-8m16fwAcEnQc69IpeDyokNO+D5spo0w1jepWWY2Q6y5ZKNuj5EhVQXjtVAeDDqvW6Yg7dhclbsz6rTtOvcwpHg==} + /@typescript-eslint/type-utils@6.13.2(eslint@8.49.0)(typescript@5.2.2): + resolution: {integrity: sha512-Qr6ssS1GFongzH2qfnWKkAQmMUyZSyOr0W54nZNU1MDfo+U4Mv3XveeLZzadc/yq8iYhQZHYT+eoXJqnACM1tw==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2424,8 +2532,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.6.0(typescript@5.2.2) - '@typescript-eslint/utils': 6.6.0(eslint@8.49.0)(typescript@5.2.2) + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.2.2) + '@typescript-eslint/utils': 6.13.2(eslint@8.49.0)(typescript@5.2.2) debug: 4.3.4 eslint: 8.49.0 ts-api-utils: 1.0.3(typescript@5.2.2) @@ -2434,17 +2542,37 @@ packages: - supports-color dev: true + /@typescript-eslint/type-utils@6.13.2(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-Qr6ssS1GFongzH2qfnWKkAQmMUyZSyOr0W54nZNU1MDfo+U4Mv3XveeLZzadc/yq8iYhQZHYT+eoXJqnACM1tw==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.3.3) + '@typescript-eslint/utils': 6.13.2(eslint@8.55.0)(typescript@5.3.3) + debug: 4.3.4 + eslint: 8.55.0 + ts-api-utils: 1.0.3(typescript@5.3.3) + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/types@5.59.9: resolution: {integrity: sha512-uW8H5NRgTVneSVTfiCVffBb8AbwWSKg7qcA4Ot3JI3MPCJGsB4Db4BhvAODIIYE5mNj7Q+VJkK7JxmRhk2Lyjw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/types@6.6.0: - resolution: {integrity: sha512-CB6QpJQ6BAHlJXdwUmiaXDBmTqIE2bzGTDLADgvqtHWuhfNP3rAOK7kAgRMAET5rDRr9Utt+qAzRBdu3AhR3sg==} + /@typescript-eslint/types@6.13.2: + resolution: {integrity: sha512-7sxbQ+EMRubQc3wTfTsycgYpSujyVbI1xw+3UMRUcrhSy+pN09y/lWzeKDbvhoqcRbHdc+APLs/PWYi/cisLPg==} engines: {node: ^16.0.0 || >=18.0.0} dev: true - /@typescript-eslint/typescript-estree@5.59.9(typescript@5.2.2): + /@typescript-eslint/typescript-estree@5.59.9(typescript@5.3.3): resolution: {integrity: sha512-pmM0/VQ7kUhd1QyIxgS+aRvMgw+ZljB3eDb+jYyp6d2bC0mQWLzUDF+DLwCTkQ3tlNyVsvZRXjFyV0LkU/aXjA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -2459,14 +2587,14 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.5.4 - tsutils: 3.21.0(typescript@5.2.2) - typescript: 5.2.2 + tsutils: 3.21.0(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree@6.6.0(typescript@5.2.2): - resolution: {integrity: sha512-hMcTQ6Al8MP2E6JKBAaSxSVw5bDhdmbCEhGW/V8QXkb9oNsFkA4SBuOMYVPxD3jbtQ4R/vSODBsr76R6fP3tbA==} + /@typescript-eslint/typescript-estree@6.13.2(typescript@5.2.2): + resolution: {integrity: sha512-SuD8YLQv6WHnOEtKv8D6HZUzOub855cfPnPMKvdM/Bh1plv1f7Q/0iFUDLKKlxHcEstQnaUU4QZskgQq74t+3w==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -2474,8 +2602,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.6.0 - '@typescript-eslint/visitor-keys': 6.6.0 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/visitor-keys': 6.13.2 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -2486,19 +2614,40 @@ packages: - supports-color dev: true - /@typescript-eslint/utils@5.59.9(eslint@8.49.0)(typescript@5.2.2): + /@typescript-eslint/typescript-estree@6.13.2(typescript@5.3.3): + resolution: {integrity: sha512-SuD8YLQv6WHnOEtKv8D6HZUzOub855cfPnPMKvdM/Bh1plv1f7Q/0iFUDLKKlxHcEstQnaUU4QZskgQq74t+3w==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/visitor-keys': 6.13.2 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.5.4 + ts-api-utils: 1.0.3(typescript@5.3.3) + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/utils@5.59.9(eslint@8.55.0)(typescript@5.3.3): resolution: {integrity: sha512-1PuMYsju/38I5Ggblaeb98TOoUvjhRvLpLa1DoTOFaLWqaXl/1iQ1eGurTXgBY58NUdtfTXKP5xBq7q9NDaLKg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.49.0) - '@types/json-schema': 7.0.11 - '@types/semver': 7.3.13 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) + '@types/json-schema': 7.0.12 + '@types/semver': 7.5.1 '@typescript-eslint/scope-manager': 5.59.9 '@typescript-eslint/types': 5.59.9 - '@typescript-eslint/typescript-estree': 5.59.9(typescript@5.2.2) - eslint: 8.49.0 + '@typescript-eslint/typescript-estree': 5.59.9(typescript@5.3.3) + eslint: 8.55.0 eslint-scope: 5.1.1 semver: 7.5.4 transitivePeerDependencies: @@ -2506,8 +2655,8 @@ packages: - typescript dev: true - /@typescript-eslint/utils@6.6.0(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-mPHFoNa2bPIWWglWYdR0QfY9GN0CfvvXX1Sv6DlSTive3jlMTUy+an67//Gysc+0Me9pjitrq0LJp0nGtLgftw==} + /@typescript-eslint/utils@6.13.2(eslint@8.49.0)(typescript@5.2.2): + resolution: {integrity: sha512-b9Ptq4eAZUym4idijCRzl61oPCwwREcfDI8xGk751Vhzig5fFZR9CyzDz4Sp/nxSLBYxUPyh4QdIDqWykFhNmQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -2515,9 +2664,9 @@ packages: '@eslint-community/eslint-utils': 4.4.0(eslint@8.49.0) '@types/json-schema': 7.0.12 '@types/semver': 7.5.1 - '@typescript-eslint/scope-manager': 6.6.0 - '@typescript-eslint/types': 6.6.0 - '@typescript-eslint/typescript-estree': 6.6.0(typescript@5.2.2) + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.2.2) eslint: 8.49.0 semver: 7.5.4 transitivePeerDependencies: @@ -2525,6 +2674,25 @@ packages: - typescript dev: true + /@typescript-eslint/utils@6.13.2(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-b9Ptq4eAZUym4idijCRzl61oPCwwREcfDI8xGk751Vhzig5fFZR9CyzDz4Sp/nxSLBYxUPyh4QdIDqWykFhNmQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) + '@types/json-schema': 7.0.12 + '@types/semver': 7.5.1 + '@typescript-eslint/scope-manager': 6.13.2 + '@typescript-eslint/types': 6.13.2 + '@typescript-eslint/typescript-estree': 6.13.2(typescript@5.3.3) + eslint: 8.55.0 + semver: 7.5.4 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + /@typescript-eslint/visitor-keys@5.59.9: resolution: {integrity: sha512-bT7s0td97KMaLwpEBckbzj/YohnvXtqbe2XgqNvTl6RJVakY5mvENOTPvw5u66nljfZxthESpDozs86U+oLY8Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2533,14 +2701,18 @@ packages: eslint-visitor-keys: 3.4.3 dev: true - /@typescript-eslint/visitor-keys@6.6.0: - resolution: {integrity: sha512-L61uJT26cMOfFQ+lMZKoJNbAEckLe539VhTxiGHrWl5XSKQgA0RTBZJW2HFPy5T0ZvPVSD93QsrTKDkfNwJGyQ==} + /@typescript-eslint/visitor-keys@6.13.2: + resolution: {integrity: sha512-OGznFs0eAQXJsp+xSd6k/O1UbFi/K/L7WjqeRoFE7vadjAF9y0uppXhYNQNEqygjou782maGClOoZwPqF0Drlw==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.6.0 + '@typescript-eslint/types': 6.13.2 eslint-visitor-keys: 3.4.3 dev: true + /@ungap/structured-clone@1.2.0: + resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + dev: true + /@vitest/expect@0.34.4: resolution: {integrity: sha512-XlMKX8HyYUqB8dsY8Xxrc64J2Qs9pKMt2Z8vFTL4mBWXJsg4yoALHzJfDWi8h5nkO4Zua4zjqtapQ/IluVkSnA==} dependencies: @@ -2587,14 +2759,6 @@ packages: acorn: 8.10.0 dev: true - /acorn-jsx@5.3.2(acorn@8.8.2): - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - acorn: 8.8.2 - dev: true - /acorn-walk@8.2.0: resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} engines: {node: '>=0.4.0'} @@ -2606,12 +2770,6 @@ packages: hasBin: true dev: true - /acorn@8.8.2: - resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true - /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -2672,6 +2830,11 @@ packages: picomatch: 2.3.1 dev: true + /are-docs-informative@0.0.2: + resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==} + engines: {node: '>=14'} + dev: true + /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} dev: true @@ -3010,6 +3173,11 @@ packages: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: true + /comment-parser@1.4.1: + resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} + engines: {node: '>= 12.0.0'} + dev: true + /common-tags@1.8.2: resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} engines: {node: '>=4.0.0'} @@ -3365,6 +3533,15 @@ packages: engines: {node: '>=10'} dev: true + /eslint-compat-utils@0.1.2(eslint@8.55.0): + resolution: {integrity: sha512-Jia4JDldWnFNIru1Ehx1H5s9/yxiRHY/TimCuUc0jNexew3cF1gI6CYZil1ociakfWO3rRqFjl1mskBblB3RYg==} + engines: {node: '>=12'} + peerDependencies: + eslint: '>=6.0.0' + dependencies: + eslint: 8.55.0 + dev: true + /eslint-import-resolver-node@0.3.7: resolution: {integrity: sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==} dependencies: @@ -3375,7 +3552,7 @@ packages: - supports-color dev: true - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.6.0)(eslint-import-resolver-node@0.3.7)(eslint@8.49.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-node@0.3.7)(eslint@8.55.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -3396,44 +3573,44 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.6.0(eslint@8.49.0)(typescript@5.2.2) + '@typescript-eslint/parser': 6.13.2(eslint@8.55.0)(typescript@5.3.3) debug: 3.2.7 - eslint: 8.49.0 + eslint: 8.55.0 eslint-import-resolver-node: 0.3.7 transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-antfu@0.41.0(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-JeEeDZgz7oqYPYWYNQHdXrKaW2nhJz/70jeMZUkaNjVp72cpsJPH3idiEhIhGu3wjFdsOMCoEkboT/DQXlCaqA==} + /eslint-plugin-antfu@0.43.1(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-Nak+Qpy5qEK10dCXtVaabPTUmLBPLhsVKAFXAtxYGYRlY/SuuZUBhW2YIsLsixNROiICGuov8sN+eNOCC7Wb5g==} dependencies: - '@typescript-eslint/utils': 6.6.0(eslint@8.49.0)(typescript@5.2.2) + '@typescript-eslint/utils': 6.13.2(eslint@8.55.0)(typescript@5.3.3) transitivePeerDependencies: - eslint - supports-color - typescript dev: true - /eslint-plugin-es-x@7.2.0(eslint@8.49.0): + /eslint-plugin-es-x@7.2.0(eslint@8.55.0): resolution: {integrity: sha512-9dvv5CcvNjSJPqnS5uZkqb3xmbeqRLnvXKK7iI5+oK/yTusyc46zbBZKENGsOfojm/mKfszyZb+wNqNPAPeGXA==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '>=8' dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.49.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) '@eslint-community/regexpp': 4.8.0 - eslint: 8.49.0 + eslint: 8.55.0 dev: true - /eslint-plugin-eslint-comments@3.2.0(eslint@8.49.0): + /eslint-plugin-eslint-comments@3.2.0(eslint@8.55.0): resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} engines: {node: '>=6.5.0'} peerDependencies: eslint: '>=4.19.1' dependencies: escape-string-regexp: 1.0.5 - eslint: 8.49.0 - ignore: 5.2.0 + eslint: 8.55.0 + ignore: 5.2.4 dev: true /eslint-plugin-html@7.1.0: @@ -3442,17 +3619,17 @@ packages: htmlparser2: 8.0.1 dev: true - /eslint-plugin-i@2.28.0-2(@typescript-eslint/parser@6.6.0)(eslint@8.49.0): - resolution: {integrity: sha512-z48kG4qmE4TmiLcxbmvxMT5ycwvPkXaWW0XpU1L768uZaTbiDbxsHMEdV24JHlOR1xDsPpKW39BfP/pRdYIwFA==} + /eslint-plugin-i@2.28.1(@typescript-eslint/parser@6.13.2)(eslint@8.55.0): + resolution: {integrity: sha512-a4oVt0j3ixNhGhvV4XF6NS7OWRFK2rrJ0Q5C4S2dSRb8FxZi31J0uUd5WJLL58wnVJ/OiQ1BxiXnFA4dWQO1Cg==} engines: {node: '>=12'} peerDependencies: eslint: ^7.2.0 || ^8 dependencies: debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.49.0 + eslint: 8.55.0 eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.6.0)(eslint-import-resolver-node@0.3.7)(eslint@8.49.0) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.13.2)(eslint-import-resolver-node@0.3.7)(eslint@8.55.0) get-tsconfig: 4.7.0 is-glob: 4.0.3 minimatch: 3.1.2 @@ -3465,8 +3642,8 @@ packages: - supports-color dev: true - /eslint-plugin-jest@27.2.3(@typescript-eslint/eslint-plugin@6.6.0)(eslint@8.49.0)(typescript@5.2.2): - resolution: {integrity: sha512-sRLlSCpICzWuje66Gl9zvdF6mwD5X86I4u55hJyFBsxYOsBCmT5+kSUjf+fkFWVMMgpzNEupjW8WzUqi83hJAQ==} + /eslint-plugin-jest@27.6.0(@typescript-eslint/eslint-plugin@6.13.2)(eslint@8.55.0)(typescript@5.3.3): + resolution: {integrity: sha512-MTlusnnDMChbElsszJvrwD1dN3x6nZl//s4JD23BxB6MgR66TZlL064su24xEIS3VACfAoHV1vgyMgPw8nkdng==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 @@ -3478,52 +3655,74 @@ packages: jest: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 6.6.0(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - '@typescript-eslint/utils': 5.59.9(eslint@8.49.0)(typescript@5.2.2) - eslint: 8.49.0 + '@typescript-eslint/eslint-plugin': 6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + '@typescript-eslint/utils': 5.59.9(eslint@8.55.0)(typescript@5.3.3) + eslint: 8.55.0 transitivePeerDependencies: - supports-color - typescript dev: true - /eslint-plugin-jsonc@2.9.0(eslint@8.49.0): + /eslint-plugin-jsdoc@46.9.0(eslint@8.55.0): + resolution: {integrity: sha512-UQuEtbqLNkPf5Nr/6PPRCtr9xypXY+g8y/Q7gPa0YK7eDhh0y2lWprXRnaYbW7ACgIUvpDKy9X2bZqxtGzBG9Q==} + engines: {node: '>=16'} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + dependencies: + '@es-joy/jsdoccomment': 0.41.0 + are-docs-informative: 0.0.2 + comment-parser: 1.4.1 + debug: 4.3.4 + escape-string-regexp: 4.0.0 + eslint: 8.55.0 + esquery: 1.5.0 + is-builtin-module: 3.2.1 + semver: 7.5.4 + spdx-expression-parse: 3.0.1 + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-plugin-jsonc@2.9.0(eslint@8.55.0): resolution: {integrity: sha512-RK+LeONVukbLwT2+t7/OY54NJRccTXh/QbnXzPuTLpFMVZhPuq1C9E07+qWenGx7rrQl0kAalAWl7EmB+RjpGA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.49.0) - eslint: 8.49.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) + eslint: 8.55.0 jsonc-eslint-parser: 2.3.0 natural-compare: 1.4.0 dev: true - /eslint-plugin-markdown@3.0.1(eslint@8.49.0): + /eslint-plugin-markdown@3.0.1(eslint@8.55.0): resolution: {integrity: sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - eslint: 8.49.0 + eslint: 8.55.0 mdast-util-from-markdown: 0.8.5 transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-n@16.0.2(eslint@8.49.0): - resolution: {integrity: sha512-Y66uDfUNbBzypsr0kELWrIz+5skicECrLUqlWuXawNSLUq3ltGlCwu6phboYYOTSnoTdHgTLrc+5Ydo6KjzZog==} + /eslint-plugin-n@16.3.1(eslint@8.55.0): + resolution: {integrity: sha512-w46eDIkxQ2FaTHcey7G40eD+FhTXOdKudDXPUO2n9WNcslze/i/HT2qJ3GXjHngYSGDISIgPNhwGtgoix4zeOw==} engines: {node: '>=16.0.0'} peerDependencies: eslint: '>=7.0.0' dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.49.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) builtins: 5.0.1 - eslint: 8.49.0 - eslint-plugin-es-x: 7.2.0(eslint@8.49.0) + eslint: 8.55.0 + eslint-plugin-es-x: 7.2.0(eslint@8.55.0) + get-tsconfig: 4.7.0 ignore: 5.2.4 - is-core-module: 2.12.1 + is-builtin-module: 3.2.1 + is-core-module: 2.13.0 minimatch: 3.1.2 - resolve: 1.22.2 + resolve: 1.22.4 semver: 7.5.4 dev: true @@ -3532,13 +3731,13 @@ packages: engines: {node: '>=5.0.0'} dev: true - /eslint-plugin-promise@6.1.1(eslint@8.49.0): + /eslint-plugin-promise@6.1.1(eslint@8.55.0): resolution: {integrity: sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - eslint: 8.49.0 + eslint: 8.55.0 dev: true /eslint-plugin-svelte@2.34.0(eslint@8.49.0)(svelte@4.2.0): @@ -3569,17 +3768,17 @@ packages: - ts-node dev: true - /eslint-plugin-unicorn@48.0.1(eslint@8.49.0): + /eslint-plugin-unicorn@48.0.1(eslint@8.55.0): resolution: {integrity: sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==} engines: {node: '>=16'} peerDependencies: eslint: '>=8.44.0' dependencies: '@babel/helper-validator-identifier': 7.22.15 - '@eslint-community/eslint-utils': 4.4.0(eslint@8.49.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) ci-info: 3.8.0 clean-regexp: 1.0.0 - eslint: 8.49.0 + eslint: 8.55.0 esquery: 1.5.0 indent-string: 4.0.0 is-builtin-module: 3.2.1 @@ -3593,7 +3792,7 @@ packages: strip-indent: 3.0.0 dev: true - /eslint-plugin-unused-imports@3.0.0(@typescript-eslint/eslint-plugin@6.6.0)(eslint@8.49.0): + /eslint-plugin-unused-imports@3.0.0(@typescript-eslint/eslint-plugin@6.13.2)(eslint@8.55.0): resolution: {integrity: sha512-sduiswLJfZHeeBJ+MQaG+xYzSWdRXoSw61DpU13mzWumCkR0ufD0HmO4kdNokjrkluMHpj/7PJeN35pgbhW3kw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -3603,37 +3802,38 @@ packages: '@typescript-eslint/eslint-plugin': optional: true dependencies: - '@typescript-eslint/eslint-plugin': 6.6.0(@typescript-eslint/parser@6.6.0)(eslint@8.49.0)(typescript@5.2.2) - eslint: 8.49.0 + '@typescript-eslint/eslint-plugin': 6.13.2(@typescript-eslint/parser@6.13.2)(eslint@8.55.0)(typescript@5.3.3) + eslint: 8.55.0 eslint-rule-composer: 0.3.0 dev: true - /eslint-plugin-vue@9.17.0(eslint@8.49.0): + /eslint-plugin-vue@9.17.0(eslint@8.55.0): resolution: {integrity: sha512-r7Bp79pxQk9I5XDP0k2dpUC7Ots3OSWgvGZNu3BxmKK6Zg7NgVtcOB6OCna5Kb9oQwJPl5hq183WD0SY5tZtIQ==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.49.0) - eslint: 8.49.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) + eslint: 8.55.0 natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.0.13 semver: 7.5.4 - vue-eslint-parser: 9.3.1(eslint@8.49.0) + vue-eslint-parser: 9.3.1(eslint@8.55.0) xml-name-validator: 4.0.0 transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-yml@1.8.0(eslint@8.49.0): - resolution: {integrity: sha512-fgBiJvXD0P2IN7SARDJ2J7mx8t0bLdG6Zcig4ufOqW5hOvSiFxeUyc2g5I1uIm8AExbo26NNYCcTGZT0MXTsyg==} + /eslint-plugin-yml@1.10.0(eslint@8.55.0): + resolution: {integrity: sha512-53SUwuNDna97lVk38hL/5++WXDuugPM9SUQ1T645R0EHMRCdBIIxGye/oOX2qO3FQ7aImxaUZJU/ju+NMUBrLQ==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' dependencies: debug: 4.3.4 - eslint: 8.49.0 + eslint: 8.55.0 + eslint-compat-utils: 0.1.2(eslint@8.55.0) lodash: 4.17.21 natural-compare: 1.4.0 yaml-eslint-parser: 1.2.2 @@ -3662,11 +3862,6 @@ packages: estraverse: 5.3.0 dev: true - /eslint-visitor-keys@3.4.1: - resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3718,18 +3913,56 @@ packages: - supports-color dev: true - /esm-env@1.0.0: - resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} - - /espree@9.5.2: - resolution: {integrity: sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==} + /eslint@8.55.0: + resolution: {integrity: sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + hasBin: true dependencies: - acorn: 8.8.2 - acorn-jsx: 5.3.2(acorn@8.8.2) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.55.0) + '@eslint-community/regexpp': 4.8.0 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.55.0 + '@humanwhocodes/config-array': 0.11.13 + '@humanwhocodes/module-importer': 1.0.1 + '@nodelib/fs.walk': 1.2.8 + '@ungap/structured-clone': 1.2.0 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.4 + doctrine: 3.0.0 + escape-string-regexp: 4.0.0 + eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.5.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + find-up: 5.0.0 + glob-parent: 6.0.2 + globals: 13.20.0 + graphemer: 1.4.0 + ignore: 5.2.4 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + js-yaml: 4.1.0 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.3 + strip-ansi: 6.0.1 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color dev: true + /esm-env@1.0.0: + resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} + /espree@9.6.1: resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3786,8 +4019,8 @@ packages: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true - /fast-glob@3.2.12: - resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} + /fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -3797,8 +4030,8 @@ packages: micromatch: 4.0.5 dev: true - /fast-glob@3.3.1: - resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + /fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -4050,7 +4283,7 @@ packages: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.2.12 + fast-glob: 3.3.1 ignore: 5.2.0 merge2: 1.4.1 slash: 3.0.0 @@ -4446,6 +4679,11 @@ packages: argparse: 2.0.1 dev: true + /jsdoc-type-pratt-parser@4.0.0: + resolution: {integrity: sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==} + engines: {node: '>=12.0.0'} + dev: true + /jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true @@ -4493,10 +4731,10 @@ packages: resolution: {integrity: sha512-9xZPKVYp9DxnM3sd1yAsh/d59iIaswDkai8oTxbursfKYbg/ibjX0IzFt35+VZ8iEW453TVTXztnRvYUQlAfUQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - acorn: 8.8.2 - eslint-visitor-keys: 3.4.1 - espree: 9.5.2 - semver: 7.5.1 + acorn: 8.10.0 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + semver: 7.5.4 dev: true /jsonc-parser@3.2.0: @@ -4531,7 +4769,7 @@ packages: /kolorist@1.8.0: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} - dev: true + dev: false /leven@3.1.0: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} @@ -4745,7 +4983,7 @@ packages: hasBin: true dev: true - /mkdist@1.3.0(typescript@5.2.2): + /mkdist@1.3.0(typescript@5.3.3): resolution: {integrity: sha512-ZQrUvcL7LkRdzMREpDyg9AT18N9Tl5jc2qeKAUeEw0KGsgykbHbuRvysGAzTuGtwuSg0WQyNit5jh/k+Er3JEg==} hasBin: true peerDependencies: @@ -4766,7 +5004,7 @@ packages: mlly: 1.4.2 mri: 1.2.0 pathe: 1.1.1 - typescript: 5.2.2 + typescript: 5.3.3 dev: true /mlly@1.4.2: @@ -4933,7 +5171,7 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.21.4 + '@babel/code-frame': 7.22.13 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -5262,7 +5500,7 @@ packages: glob: 7.2.3 dev: true - /rollup-plugin-dts@6.0.1(rollup@3.29.0)(typescript@5.2.2): + /rollup-plugin-dts@6.0.1(rollup@3.29.0)(typescript@5.3.3): resolution: {integrity: sha512-XJbCldVrp4TLc2Hg4DfrRiJgzJ73uhZB0sPSDizgdlrhSJ1bsIkkRMkwRKNQYgkbfMz4CHLdbnFKVivHE0vsPA==} engines: {node: '>=16'} peerDependencies: @@ -5271,7 +5509,7 @@ packages: dependencies: magic-string: 0.30.3 rollup: 3.29.0 - typescript: 5.2.2 + typescript: 5.3.3 optionalDependencies: '@babel/code-frame': 7.22.13 dev: true @@ -5351,14 +5589,6 @@ packages: hasBin: true dev: true - /semver@7.5.1: - resolution: {integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: true - /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} @@ -5605,8 +5835,8 @@ packages: picocolors: 1.0.0 sade: 1.8.1 svelte: 4.2.0 - svelte-preprocess: 5.0.4(@babel/core@7.22.17)(postcss@8.4.29)(svelte@4.2.0)(typescript@5.2.2) - typescript: 5.2.2 + svelte-preprocess: 5.0.4(@babel/core@7.22.17)(postcss@8.4.29)(svelte@4.2.0)(typescript@5.3.3) + typescript: 5.3.3 transitivePeerDependencies: - '@babel/core' - coffeescript @@ -5654,7 +5884,7 @@ packages: svelte: 4.2.0 dev: true - /svelte-preprocess@5.0.4(@babel/core@7.22.17)(postcss@8.4.29)(svelte@4.2.0)(typescript@5.2.2): + /svelte-preprocess@5.0.4(@babel/core@7.22.17)(postcss@8.4.29)(svelte@4.2.0)(typescript@5.3.3): resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==} engines: {node: '>= 14.10.0'} requiresBuild: true @@ -5700,7 +5930,7 @@ packages: sorcery: 0.11.0 strip-indent: 3.0.0 svelte: 4.2.0 - typescript: 5.2.2 + typescript: 5.3.3 dev: true /svelte@3.59.1: @@ -5820,6 +6050,15 @@ packages: typescript: 5.2.2 dev: true + /ts-api-utils@1.0.3(typescript@5.3.3): + resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} + engines: {node: '>=16.13.0'} + peerDependencies: + typescript: '>=4.2.0' + dependencies: + typescript: 5.3.3 + dev: true + /tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true @@ -5828,14 +6067,14 @@ packages: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: true - /tsutils@3.21.0(typescript@5.2.2): + /tsutils@3.21.0(typescript@5.3.3): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 5.2.2 + typescript: 5.3.3 dev: true /type-check@0.4.0: @@ -5884,6 +6123,12 @@ packages: hasBin: true dev: true + /typescript@5.3.3: + resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} + engines: {node: '>=14.17'} + hasBin: true + dev: true + /ufo@1.3.0: resolution: {integrity: sha512-bRn3CsoojyNStCZe0BG0Mt4Nr/4KF+rhFlnNXybgqt5pXHNFRlqinSoQaTrGyzE4X8aHplSb+TorH+COin9Yxw==} dev: true @@ -5897,7 +6142,7 @@ packages: which-boxed-primitive: 1.0.2 dev: true - /unbuild@2.0.0(typescript@5.2.2): + /unbuild@2.0.0(typescript@5.3.3): resolution: {integrity: sha512-JWCUYx3Oxdzvw2J9kTAp+DKE8df/BnH/JTSj6JyA4SH40ECdFu7FoJJcrm8G92B7TjofQ6GZGjJs50TRxoH6Wg==} hasBin: true peerDependencies: @@ -5921,15 +6166,15 @@ packages: hookable: 5.5.3 jiti: 1.20.0 magic-string: 0.30.3 - mkdist: 1.3.0(typescript@5.2.2) + mkdist: 1.3.0(typescript@5.3.3) mlly: 1.4.2 pathe: 1.1.1 pkg-types: 1.0.3 pretty-bytes: 6.1.1 rollup: 3.29.0 - rollup-plugin-dts: 6.0.1(rollup@3.29.0)(typescript@5.2.2) + rollup-plugin-dts: 6.0.1(rollup@3.29.0)(typescript@5.3.3) scule: 1.0.0 - typescript: 5.2.2 + typescript: 5.3.3 untyped: 1.4.0 transitivePeerDependencies: - sass @@ -6049,7 +6294,7 @@ packages: mlly: 1.4.2 pathe: 1.1.1 picocolors: 1.0.0 - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) transitivePeerDependencies: - '@types/node' - less @@ -6061,26 +6306,26 @@ packages: - terser dev: true - /vite-plugin-pwa@0.16.5(vite@4.4.9)(workbox-build@7.0.0)(workbox-window@7.0.0): - resolution: {integrity: sha512-Ahol4dwhMP2UHPQXkllSlXbihOaDFnvBIDPmAxoSZ1EObBUJGP4CMRyCyAVkIHjd6/H+//vH0DM2ON+XxHr81g==} + /vite-plugin-pwa@0.17.4(vite@4.5.1)(workbox-build@7.0.0)(workbox-window@7.0.0): + resolution: {integrity: sha512-j9iiyinFOYyof4Zk3Q+DtmYyDVBDAi6PuMGNGq6uGI0pw7E+LNm9e+nQ2ep9obMP/kjdWwzilqUrlfVRj9OobA==} engines: {node: '>=16.0.0'} peerDependencies: - vite: ^3.1.0 || ^4.0.0 + vite: ^3.1.0 || ^4.0.0 || ^5.0.0 workbox-build: ^7.0.0 workbox-window: ^7.0.0 dependencies: debug: 4.3.4 - fast-glob: 3.3.1 + fast-glob: 3.3.2 pretty-bytes: 6.1.1 - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) workbox-build: 7.0.0 workbox-window: 7.0.0 transitivePeerDependencies: - supports-color dev: true - /vite@4.4.9(@types/node@18.17.15): - resolution: {integrity: sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==} + /vite@4.5.1(@types/node@18.17.15): + resolution: {integrity: sha512-AXXFaAJ8yebyqzoNB9fu2pHoo/nWX+xZlaRwoeYUxEqBO+Zj4msE5G+BhGBll9lYEKv9Hfks52PAF2X7qDYXQA==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -6114,7 +6359,7 @@ packages: optionalDependencies: fsevents: 2.3.2 - /vitefu@0.2.3(vite@4.4.9): + /vitefu@0.2.3(vite@4.5.1): resolution: {integrity: sha512-75l7TTuU8isAhz1QFtNKjDkqjxvndfMC1AfIMjJ0ZQ59ZD0Ow9QOIsJJX16Wv9PS8f+zMzp6fHy5cCbKG/yVUQ==} peerDependencies: vite: ^3.0.0 || ^4.0.0 @@ -6122,10 +6367,10 @@ packages: vite: optional: true dependencies: - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) dev: false - /vitefu@0.2.4(vite@4.4.9): + /vitefu@0.2.4(vite@4.5.1): resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} peerDependencies: vite: ^3.0.0 || ^4.0.0 @@ -6133,7 +6378,7 @@ packages: vite: optional: true dependencies: - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) dev: true /vitest@0.34.4: @@ -6188,7 +6433,7 @@ packages: strip-literal: 1.0.1 tinybench: 2.5.0 tinypool: 0.7.0 - vite: 4.4.9(@types/node@18.17.15) + vite: 4.5.1(@types/node@18.17.15) vite-node: 0.34.4(@types/node@18.17.15) why-is-node-running: 2.2.2 transitivePeerDependencies: @@ -6201,14 +6446,14 @@ packages: - terser dev: true - /vue-eslint-parser@9.3.1(eslint@8.49.0): + /vue-eslint-parser@9.3.1(eslint@8.55.0): resolution: {integrity: sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' dependencies: debug: 4.3.4 - eslint: 8.49.0 + eslint: 8.55.0 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 @@ -6437,7 +6682,7 @@ packages: resolution: {integrity: sha512-pEwzfsKbTrB8G3xc/sN7aw1v6A6c/pKxLAkjclnAyo5g5qOh6eL9WGu0o3cSDQZKrTNk4KL4lQSwZW+nBkANEg==} engines: {node: ^14.17.0 || >=16.0.0} dependencies: - eslint-visitor-keys: 3.4.1 + eslint-visitor-keys: 3.4.3 lodash: 4.17.21 yaml: 2.1.1 dev: true diff --git a/src/config.ts b/src/config.ts index 7f9e61c..48169ba 100644 --- a/src/config.ts +++ b/src/config.ts @@ -58,6 +58,19 @@ export function configureSvelteKitOptions( // exclude server assets: sw is built on SSR build config.globIgnores = buildGlobIgnores(config.globIgnores) + // Vite 5 support: allow override dontCacheBustURLsMatching + if (!('dontCacheBustURLsMatching' in config)) { + let buildAssetsDir = kit.appDir ?? '_app/' + if (buildAssetsDir[0] === '/') + buildAssetsDir = buildAssetsDir.slice(1) + if (buildAssetsDir[buildAssetsDir.length - 1] !== '/') + buildAssetsDir += '/' + + buildAssetsDir += 'immutable/' + + config.dontCacheBustURLsMatching = new RegExp(buildAssetsDir) + } + if (!config.manifestTransforms) { config.manifestTransforms = [createManifestTransform( base, diff --git a/src/types.ts b/src/types.ts index 9fe8546..37c6167 100644 --- a/src/types.ts +++ b/src/types.ts @@ -2,30 +2,36 @@ import type { VitePWAOptions } from 'vite-plugin-pwa' export interface KitOptions { /** - * The base path for your application: by default will use the Vite base. - * - * @deprecated since ^0.1.0 version, the plugin has SvelteKit ^1.0.0 as peer dependency, Vite's base is now properly configured. - * @default '/' - * @see https://kit.svelte.dev/docs/configuration#paths - * */ + * The base path for your application: by default will use the Vite base. + * + * @deprecated since ^0.1.0 version, the plugin has SvelteKit ^1.0.0 as peer dependency, Vite's base is now properly configured. + * @default '/' + * @see https://kit.svelte.dev/docs/configuration#paths + */ base?: string /** - * @default '.svelte-kit' - * @see https://kit.svelte.dev/docs/configuration#outdir - */ + * @default '.svelte-kit' + * @see https://kit.svelte.dev/docs/configuration#outdir + */ outDir?: string /** - * @see https://github.com/sveltejs/kit/tree/master/packages/adapter-static#fallback - */ + * @see https://github.com/sveltejs/kit/tree/master/packages/adapter-static#fallback + */ adapterFallback?: string /** - * @default 'never' - * @see https://kit.svelte.dev/docs/configuration#trailingslash - * */ + * @default 'never' + * @see https://kit.svelte.dev/docs/configuration#trailingslash + */ trailingSlash?: 'never' | 'always' | 'ignore' + + /** + * @default `_app` + * @see https://kit.svelte.dev/docs/configuration#appdir + */ + appDir?: string } export interface SvelteKitPWAOptions extends Partial {