diff --git a/plugins-demo/tailwind-demo/.gitignore b/plugins-demo/tailwind-demo/.gitignore
deleted file mode 100644
index 8d67a86..0000000
--- a/plugins-demo/tailwind-demo/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-.DS_Store
-node_modules
-dist
diff --git a/plugins-demo/tailwind-demo/package.json b/plugins-demo/tailwind-demo/package.json
deleted file mode 100644
index 8bbb64d..0000000
--- a/plugins-demo/tailwind-demo/package.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "name": "@iconify-demo/tailwind",
- "version": "1.0.0",
- "private": true,
- "description": "",
- "main": "index.js",
- "scripts": {
- "build": "tailwindcss -i ./src/input.css -o ./dist/output.css"
- },
- "keywords": [],
- "devDependencies": {
- "@iconify-json/fa6-regular": "^1.2.2",
- "@iconify-json/mdi-light": "^1.2.1",
- "@iconify-json/vscode-icons": "^1.2.3",
- "@iconify/tailwind": "workspace:*",
- "@iconify/tools": "3.0.0-beta.3",
- "tailwindcss": "^3.4.16"
- }
-}
diff --git a/plugins-demo/tailwind-demo/src/index.html b/plugins-demo/tailwind-demo/src/index.html
deleted file mode 100644
index 57fc069..0000000
--- a/plugins-demo/tailwind-demo/src/index.html
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
-
-
-
-
-
- Main plugin
-
- Monotone icons (changes color, blue):
-
-
-
-
-
-
-
- Color icons:
-
-
-
-
-
-
-
- Using width/height to resize icon:
-
-
-
-
- Scaled non-square icons:
-
-
-
-
- Dynamic selectors plugin, custom options
- Icons should scale to 1.5em, which is about 24px
-
- Monotone icons (red, blue):
-
-
-
-
- Failed icon (should not be pre-rendered):
-
-
-
- Colored icons:
-
-
-
-
-
- Dynamic selectors plugin
-
- Few icons that change color on hover (first icon also changes
- icon on hover):
-
-
-
-
-
-
- Custom icons, imported from "svg" directory (first icon's
- animation slowed down using "customise" option):
-
-
-
-
-
-
- Icons with hardcoded palette:
-
-
-
-
-
-
-
- Clean selectors plugin (deprecated)
-
- Monotone icon: 1em size (changing color), text-2xl size (red):
-
-
-
-
- Custom size set via width/height:
-
-
-
-
-
diff --git a/plugins-demo/tailwind-demo/src/input.css b/plugins-demo/tailwind-demo/src/input.css
deleted file mode 100644
index 9a552ae..0000000
--- a/plugins-demo/tailwind-demo/src/input.css
+++ /dev/null
@@ -1,11 +0,0 @@
-@tailwind base;
-@tailwind components;
-@tailwind utilities;
-
-.demo {
- color: #16a34a;
- vertical-align: -6px;
-}
-.demo:hover {
- color: #b91c1c;
-}
diff --git a/plugins-demo/tailwind-demo/svg/spinner1.svg b/plugins-demo/tailwind-demo/svg/spinner1.svg
deleted file mode 100644
index 6dac21d..0000000
--- a/plugins-demo/tailwind-demo/svg/spinner1.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-
\ No newline at end of file
diff --git a/plugins-demo/tailwind-demo/svg/spinner2.svg b/plugins-demo/tailwind-demo/svg/spinner2.svg
deleted file mode 100644
index 0fbab07..0000000
--- a/plugins-demo/tailwind-demo/svg/spinner2.svg
+++ /dev/null
@@ -1,14 +0,0 @@
-
\ No newline at end of file
diff --git a/plugins-demo/tailwind-demo/tailwind.config.js b/plugins-demo/tailwind-demo/tailwind.config.js
deleted file mode 100644
index 45f7485..0000000
--- a/plugins-demo/tailwind-demo/tailwind.config.js
+++ /dev/null
@@ -1,132 +0,0 @@
-const {
- addCleanIconSelectors,
- addDynamicIconSelectors,
- addIconSelectors,
-} = require('@iconify/tailwind');
-const {
- importDirectorySync,
- cleanupSVG,
- parseColorsSync,
- runSVGO,
- isEmptyColor,
-} = require('@iconify/tools');
-
-// Import icons from directory 'svg'
-const customSet = importDirectorySync('svg');
-
-// Clean up all icons
-customSet.forEachSync((name, type) => {
- if (type !== 'icon') {
- return;
- }
-
- // Get SVG object for icon
- const svg = customSet.toSVG(name);
- if (!svg) {
- // Invalid icon
- customSet.remove(name);
- return;
- }
-
- try {
- // Clean up icon
- cleanupSVG(svg);
-
- // This is a monotone icon, change color to `currentColor`, add it if missing
- // Skip this step if icons have palette
- parseColorsSync(svg, {
- defaultColor: 'currentColor',
- callback: (attr, colorStr, color) => {
- return !color || isEmptyColor(color)
- ? colorStr
- : 'currentColor';
- },
- });
-
- // Optimise icon
- runSVGO(svg);
- } catch (err) {
- // Something went wrong when parsing icon: remove it
- console.error(`Error parsing ${name}:`, err);
- customSet.remove(name);
- return;
- }
-
- // Update icon in icon set from SVG object
- customSet.fromSVG(name, svg);
-});
-
-/** @type {import('tailwindcss').Config} */
-module.exports = {
- content: ['./src/*.html'],
- plugins: [
- // Main plugin, default options
- addIconSelectors(['mdi-light', 'vscode-icons']),
- // Main plugin, custom options
- addIconSelectors({
- maskSelector: '.custom-monotone',
- backgroundSelector: '.custom-background',
- // Like UnoCSS
- iconSelector: '.i-{prefix}-{name}',
- scale: 1.5,
- prefixes: [
- {
- prefix: 'mdi-light',
- icons: ['home'],
- customise: (content) =>
- content.replace(/currentColor/g, '#40f'),
- },
- {
- prefix: 'custom',
- source: customSet.export(),
- customise: (content) =>
- content.replace(/currentColor/g, '#f20'),
- },
- ],
- }),
- // Main plugin, no size
- addIconSelectors({
- maskSelector: '.iconify-nosize',
- backgroundSelector: '',
- scale: 0,
- // No prefixes list: reusing data from plugin above
- }),
- // Main plugin, no square and scale
- addIconSelectors({
- maskSelector: '.fa6-mask',
- backgroundSelector: '.fa6-bg', // unused
- iconSelector: '.{prefix}-{name}',
- square: false,
- scale: 2,
- prefixes: ['fa6-regular'],
- }),
- // Plugin with clean selectors: requires writing all used icons in first parameter
- addCleanIconSelectors(['mdi-light:home']),
- // Plugin with dynamic selectors
- addDynamicIconSelectors({
- iconSets: {
- custom: customSet.export(),
- },
- customise: (content, name, prefix) => {
- switch (name) {
- case 'spinner1':
- return content.replace(
- 'animation:0.75s',
- 'animation:5s'
- );
- }
- return content;
- },
- }),
- // Plugin with dynamic selectors that contains only css for overriding icon
- addDynamicIconSelectors({
- prefix: 'icon-hover',
- overrideOnly: true,
- }),
- // Icons without size
- addDynamicIconSelectors({
- prefix: 'scaled-icon',
- scale: 0,
- }),
- ],
-};
diff --git a/plugins-demo/tailwind4-demo/.gitignore b/plugins-demo/tailwind4-demo/.gitignore
new file mode 100644
index 0000000..8ee54e8
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/.gitignore
@@ -0,0 +1,30 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+*.tsbuildinfo
diff --git a/plugins-demo/tailwind4-demo/.vscode/extensions.json b/plugins-demo/tailwind4-demo/.vscode/extensions.json
new file mode 100644
index 0000000..a7cea0b
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/.vscode/extensions.json
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["Vue.volar"]
+}
diff --git a/plugins-demo/tailwind4-demo/README.md b/plugins-demo/tailwind4-demo/README.md
new file mode 100644
index 0000000..5854aeb
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/README.md
@@ -0,0 +1,33 @@
+# tailwind4-demo
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur).
+
+## Type Support for `.vue` Imports in TS
+
+TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) to make the TypeScript language service aware of `.vue` types.
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vite.dev/config/).
+
+## Project Setup
+
+```sh
+npm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+npm run dev
+```
+
+### Type-Check, Compile and Minify for Production
+
+```sh
+npm run build
+```
diff --git a/plugins-demo/tailwind4-demo/env.d.ts b/plugins-demo/tailwind4-demo/env.d.ts
new file mode 100644
index 0000000..11f02fe
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/env.d.ts
@@ -0,0 +1 @@
+///
diff --git a/plugins-demo/tailwind4-demo/index.html b/plugins-demo/tailwind4-demo/index.html
new file mode 100644
index 0000000..200c820
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/index.html
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ Tailwind CSS Test
+
+
+
+
+
+
diff --git a/plugins-demo/tailwind4-demo/package.json b/plugins-demo/tailwind4-demo/package.json
new file mode 100644
index 0000000..96c1579
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/package.json
@@ -0,0 +1,33 @@
+{
+ "name": "tailwind4-demo",
+ "version": "0.0.0",
+ "private": true,
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "run-p type-check \"build-only {@}\" --",
+ "preview": "vite preview",
+ "build-only": "vite build",
+ "type-check": "vue-tsc --build"
+ },
+ "dependencies": {
+ "vue": "^3.5.13"
+ },
+ "devDependencies": {
+ "@iconify/tailwind4": "workspace:*",
+ "@iconify-json/fa6-regular": "^1.2.2",
+ "@iconify-json/mdi-light": "^1.2.1",
+ "@iconify-json/vscode-icons": "^1.2.6",
+ "@tailwindcss/vite": "4.0.0-beta.8",
+ "@tsconfig/node22": "^22.0.0",
+ "@types/node": "^22.9.3",
+ "@vitejs/plugin-vue": "^5.2.1",
+ "@vue/tsconfig": "^0.7.0",
+ "npm-run-all2": "^7.0.1",
+ "tailwindcss": "4.0.0-beta.8",
+ "typescript": "~5.6.3",
+ "vite": "^6.0.1",
+ "vite-plugin-vue-devtools": "^7.6.5",
+ "vue-tsc": "^2.1.10"
+ }
+}
diff --git a/plugins-demo/tailwind4-demo/public/favicon.ico b/plugins-demo/tailwind4-demo/public/favicon.ico
new file mode 100644
index 0000000..df36fcf
Binary files /dev/null and b/plugins-demo/tailwind4-demo/public/favicon.ico differ
diff --git a/plugins-demo/tailwind4-demo/src/App.vue b/plugins-demo/tailwind4-demo/src/App.vue
new file mode 100644
index 0000000..f2697bc
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/src/App.vue
@@ -0,0 +1,27 @@
+
+
+
+
+ Tailwind CSS test file
+
+
+ Dynamic selectors plugin
+
+ Monotone icons, arrow changes on hover:
+
+
+
+
+
+
+ Icons with hardcoded palette:
+
+
+
+
+
+
+
+
diff --git a/plugins-demo/tailwind4-demo/src/assets/main.css b/plugins-demo/tailwind4-demo/src/assets/main.css
new file mode 100644
index 0000000..7726e74
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/src/assets/main.css
@@ -0,0 +1,10 @@
+@import 'tailwindcss';
+
+@plugin "@iconify/tailwind4";
+
+.demo {
+ color: var(--color-blue-600);
+}
+.demo:hover {
+ color: var(--color-red-600);
+}
diff --git a/plugins-demo/tailwind4-demo/src/main.ts b/plugins-demo/tailwind4-demo/src/main.ts
new file mode 100644
index 0000000..0ac3a5f
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/src/main.ts
@@ -0,0 +1,6 @@
+import './assets/main.css'
+
+import { createApp } from 'vue'
+import App from './App.vue'
+
+createApp(App).mount('#app')
diff --git a/plugins-demo/tailwind4-demo/tsconfig.app.json b/plugins-demo/tailwind4-demo/tsconfig.app.json
new file mode 100644
index 0000000..93f952f
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/tsconfig.app.json
@@ -0,0 +1,13 @@
+{
+ "extends": "@vue/tsconfig/tsconfig.dom.json",
+ "include": ["env.d.ts", "src/**/*", "src/**/*.vue"],
+ "exclude": ["src/**/__tests__/*"],
+ "compilerOptions": {
+ "composite": true,
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
+
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ }
+}
diff --git a/plugins-demo/tailwind4-demo/tsconfig.json b/plugins-demo/tailwind4-demo/tsconfig.json
new file mode 100644
index 0000000..66b5e57
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/tsconfig.json
@@ -0,0 +1,11 @@
+{
+ "files": [],
+ "references": [
+ {
+ "path": "./tsconfig.node.json"
+ },
+ {
+ "path": "./tsconfig.app.json"
+ }
+ ]
+}
diff --git a/plugins-demo/tailwind4-demo/tsconfig.node.json b/plugins-demo/tailwind4-demo/tsconfig.node.json
new file mode 100644
index 0000000..5a0c6a5
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/tsconfig.node.json
@@ -0,0 +1,19 @@
+{
+ "extends": "@tsconfig/node22/tsconfig.json",
+ "include": [
+ "vite.config.*",
+ "vitest.config.*",
+ "cypress.config.*",
+ "nightwatch.conf.*",
+ "playwright.config.*"
+ ],
+ "compilerOptions": {
+ "composite": true,
+ "noEmit": true,
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
+
+ "module": "ESNext",
+ "moduleResolution": "Bundler",
+ "types": ["node"]
+ }
+}
diff --git a/plugins-demo/tailwind4-demo/vite.config.ts b/plugins-demo/tailwind4-demo/vite.config.ts
new file mode 100644
index 0000000..37d7d01
--- /dev/null
+++ b/plugins-demo/tailwind4-demo/vite.config.ts
@@ -0,0 +1,15 @@
+import { fileURLToPath, URL } from 'node:url';
+import { defineConfig } from 'vite';
+import vue from '@vitejs/plugin-vue';
+import vueDevTools from 'vite-plugin-vue-devtools';
+import tailwindcss from '@tailwindcss/vite';
+
+// https://vite.dev/config/
+export default defineConfig({
+ plugins: [tailwindcss(), vue(), vueDevTools()],
+ resolve: {
+ alias: {
+ '@': fileURLToPath(new URL('./src', import.meta.url)),
+ },
+ },
+});
diff --git a/plugins/tailwind/build.js b/plugins/tailwind/build.js
deleted file mode 100644
index 20707e3..0000000
--- a/plugins/tailwind/build.js
+++ /dev/null
@@ -1,98 +0,0 @@
-/* eslint-disable */
-const fs = require('fs');
-const child_process = require('child_process');
-
-// List of commands to run
-const commands = [];
-
-// Parse command line
-const compile = {
- lib: true,
- dist: true,
- api: true,
-};
-process.argv.slice(2).forEach((cmd) => {
- if (cmd.slice(0, 2) !== '--') {
- return;
- }
- const parts = cmd.slice(2).split('-');
- if (parts.length === 2) {
- // Parse 2 part commands like --with-lib
- const key = parts.pop();
- if (compile[key] === void 0) {
- return;
- }
- switch (parts.shift()) {
- case 'with':
- // enable module
- compile[key] = true;
- break;
-
- case 'without':
- // disable module
- compile[key] = false;
- break;
-
- case 'only':
- // disable other modules
- Object.keys(compile).forEach((key2) => {
- compile[key2] = key2 === key;
- });
- break;
- }
- }
-});
-
-// Check if required modules in same monorepo are available
-const fileExists = (file) => {
- try {
- fs.statSync(file);
- } catch (e) {
- return false;
- }
- return true;
-};
-
-if (compile.dist && !fileExists('./lib/index.js')) {
- compile.lib = true;
-}
-
-if (compile.api && !fileExists('./lib/index.d.ts')) {
- compile.lib = true;
-}
-
-// Compile packages
-Object.keys(compile).forEach((key) => {
- if (compile[key]) {
- commands.push({
- cmd: 'npm',
- args: ['run', 'build:' + key],
- });
- }
-});
-
-/**
- * Run next command
- */
-const next = () => {
- const item = commands.shift();
- if (item === void 0) {
- process.exit(0);
- }
-
- if (item.cwd === void 0) {
- item.cwd = __dirname;
- }
-
- const result = child_process.spawnSync(item.cmd, item.args, {
- cwd: item.cwd,
- stdio: 'inherit',
- });
-
- if (result.status === 0) {
- process.nextTick(next);
- } else {
- process.exit(result.status);
- }
-};
-next();
diff --git a/plugins/tailwind/eslint.config.mjs b/plugins/tailwind/eslint.config.js
similarity index 100%
rename from plugins/tailwind/eslint.config.mjs
rename to plugins/tailwind/eslint.config.js
diff --git a/plugins/tailwind/jest.config.js b/plugins/tailwind/jest.config.js
deleted file mode 100644
index 422a485..0000000
--- a/plugins/tailwind/jest.config.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
-module.exports = {
- verbose: true,
- preset: 'ts-jest',
- testEnvironment: 'node',
- testMatch: ['**/tests/*-test.ts'],
-};
diff --git a/plugins/tailwind/package.json b/plugins/tailwind/package.json
index d701b74..2bee8c9 100644
--- a/plugins/tailwind/package.json
+++ b/plugins/tailwind/package.json
@@ -1,8 +1,9 @@
{
- "name": "@iconify/tailwind",
+ "name": "@iconify/tailwind4",
"description": "Iconify plugin for Tailwind CSS",
+ "type": "module",
"author": "Vjacheslav Trushkin (https://iconify.design)",
- "version": "1.2.0",
+ "version": "1.0.0",
"license": "MIT",
"main": "./dist/plugin.js",
"types": "./dist/plugin.d.ts",
@@ -18,11 +19,11 @@
"clean": "rimraf lib dist tsconfig.tsbuildinfo",
"lint": "eslint src/**/*.ts",
"prebuild": "pnpm run lint && pnpm run clean",
- "build": "node build",
+ "build": "npm run build:lib && npm run build:dist && npm run build:api",
"build:api": "api-extractor run --local --verbose",
"build:lib": "tsc -b",
- "build:dist": "rollup -c rollup.config.mjs",
- "test": "jest --runInBand"
+ "build:dist": "rollup -c rollup.config.js",
+ "test": "vitest --config vitest.config.js"
},
"dependencies": {
"@iconify/types": "workspace:^"
@@ -42,11 +43,10 @@
"@typescript-eslint/eslint-plugin": "^8.17.0",
"eslint": "^9.16.0",
"globals": "^15.13.0",
- "jest": "^29.7.0",
"rimraf": "^6.0.1",
"rollup": "^4.28.1",
- "tailwindcss": "^3.4.16",
- "ts-jest": "^29.2.5",
- "typescript": "^5.7.2"
+ "tailwindcss": "4.0.0-beta.8",
+ "typescript": "^5.7.2",
+ "vitest": "^2.1.8"
}
}
diff --git a/plugins/tailwind/rollup.config.mjs b/plugins/tailwind/rollup.config.js
similarity index 100%
rename from plugins/tailwind/rollup.config.mjs
rename to plugins/tailwind/rollup.config.js
diff --git a/plugins/tailwind/src/clean.ts b/plugins/tailwind/src/clean.ts
deleted file mode 100644
index a007fd5..0000000
--- a/plugins/tailwind/src/clean.ts
+++ /dev/null
@@ -1,50 +0,0 @@
-import { getIconsCSSData } from '@iconify/utils/lib/css/icons';
-import { loadIconSet } from './helpers/loader';
-import { getIconNames } from './helpers/names';
-import type { CleanIconifyPluginOptions } from './helpers/options';
-
-/**
- * Get CSS rules for icons list
- */
-export function getCSSRulesForIcons(
- icons: string[] | string,
- options: CleanIconifyPluginOptions = {}
-): Record> {
- const rules = Object.create(null) as Record>;
-
- // Get all icons
- const prefixes = getIconNames(icons);
-
- // Parse all icon sets
- for (const prefix in prefixes) {
- const iconSet = loadIconSet(options.iconSets?.[prefix] || prefix);
- if (!iconSet) {
- throw new Error(
- `Cannot load icon set for "${prefix}". Install "@iconify-json/${prefix}" as dev dependency?`
- );
- }
-
- const generated = getIconsCSSData(
- iconSet,
- Array.from(prefixes[prefix]),
- {
- ...options,
- customise: (content, name) =>
- options.customise?.(content, name, prefix) ?? content,
- }
- );
-
- const result = generated.common
- ? [generated.common, ...generated.css]
- : generated.css;
- result.forEach((item) => {
- const selector =
- item.selector instanceof Array
- ? item.selector.join(', ')
- : item.selector;
- rules[selector] = item.rules;
- });
- }
-
- return rules;
-}
diff --git a/plugins/tailwind/src/dynamic.ts b/plugins/tailwind/src/dynamic.ts
index edbf02d..b412f3e 100644
--- a/plugins/tailwind/src/dynamic.ts
+++ b/plugins/tailwind/src/dynamic.ts
@@ -1,7 +1,7 @@
import { getIconsCSSData } from '@iconify/utils/lib/css/icons';
import { matchIconName } from '@iconify/utils/lib/icon/name';
-import { loadIconSet } from './helpers/loader';
-import type { DynamicIconifyPluginOptions } from './helpers/options';
+import { loadIconSet } from './helpers/loader.js';
+import type { DynamicIconifyPluginOptions } from './helpers/options.js';
/**
* Get dynamic CSS rules
@@ -10,7 +10,7 @@ export function getDynamicCSSRules(
icon: string,
options: DynamicIconifyPluginOptions = {}
): Record {
- const nameParts = icon.split(/--|\:/);
+ const nameParts = icon.split(/--|:/);
if (nameParts.length !== 2) {
throw new Error(`Invalid icon name: "${icon}"`);
}
diff --git a/plugins/tailwind/src/helpers/loader.ts b/plugins/tailwind/src/helpers/loader.ts
index 66f6307..269f5d1 100644
--- a/plugins/tailwind/src/helpers/loader.ts
+++ b/plugins/tailwind/src/helpers/loader.ts
@@ -1,6 +1,6 @@
import { readFileSync } from 'node:fs';
import type { IconifyJSON } from '@iconify/types';
-import { IconifyIconSetSource } from './options';
+import type { IconifyIconSetSource } from './options.js';
import { matchIconName } from '@iconify/utils/lib/icon/name';
/**
diff --git a/plugins/tailwind/src/helpers/names.ts b/plugins/tailwind/src/helpers/names.ts
deleted file mode 100644
index 54d9e68..0000000
--- a/plugins/tailwind/src/helpers/names.ts
+++ /dev/null
@@ -1,73 +0,0 @@
-import { matchIconName } from '@iconify/utils/lib/icon/name';
-
-/**
- * Get icon names from list
- */
-export function getIconNames(
- icons: string[] | string
-): Record> | undefined {
- const prefixes = Object.create(null) as Record>;
-
- // Add entry
- const add = (prefix: string, name: string) => {
- if (
- typeof prefix === 'string' &&
- prefix.match(matchIconName) &&
- typeof name === 'string' &&
- name.match(matchIconName)
- ) {
- (prefixes[prefix] || (prefixes[prefix] = new Set())).add(name);
- }
- };
-
- // Comma or space separated string
- let iconNames: string[] | undefined;
- if (typeof icons === 'string') {
- iconNames = icons.split(/[\s,.]/);
- } else if (icons instanceof Array) {
- iconNames = [];
- // Split each array entry
- icons.forEach((item) => {
- item.split(/[\s,.]/).forEach((name) => iconNames.push(name));
- });
- } else {
- return;
- }
-
- // Parse array
- if (iconNames?.length) {
- iconNames.forEach((icon) => {
- if (!icon.trim()) {
- return;
- }
-
- // Attempt prefix:name split
- const nameParts = icon.split(':');
- if (nameParts.length === 2) {
- add(nameParts[0], nameParts[1]);
- return;
- }
-
- // Attempt icon class: .icon--{prefix}--{name}
- // with or without dot
- const classParts = icon.split('--');
- if (classParts[0].match(/^\.?icon$/)) {
- if (classParts.length === 3) {
- add(classParts[1], classParts[2]);
- return;
- }
- if (classParts.length === 2) {
- // Partial match
- return;
- }
- }
-
- // Throw error
- throw new Error(`Cannot resolve icon: "${icon}"`);
- });
- } else {
- return;
- }
-
- return prefixes;
-}
diff --git a/plugins/tailwind/src/helpers/options.ts b/plugins/tailwind/src/helpers/options.ts
index 7933283..006ecdb 100644
--- a/plugins/tailwind/src/helpers/options.ts
+++ b/plugins/tailwind/src/helpers/options.ts
@@ -1,4 +1,3 @@
-import type { IconCSSIconSetOptions } from '@iconify/utils/lib/css/types';
import type { IconifyJSON } from '@iconify/types';
// Source for icon set: icon set, filename, or synchronous callback that loads icon set
@@ -16,15 +15,6 @@ export interface CommonIconifyPluginOptions {
customise?: (content: string, name: string, prefix: string) => string;
}
-/**
- * Options for clean class names
- */
-export interface CleanIconifyPluginOptions
- extends CommonIconifyPluginOptions,
- Omit {
- //
-}
-
/**
* Options for dynamic class names
*/
@@ -39,72 +29,3 @@ export interface DynamicIconifyPluginOptions
// Sets the default height/width value (ex. scale: 2 = 2em)
scale?: number;
}
-
-/**
- * Options for main plugin
- */
-
-// Icons to include: array of names or callback
-export type IconsListOption = string[] | ((name: string) => boolean);
-
-// Source filename or icon set
-type IconSetSource = string | IconifyJSON;
-
-// Full icon set options
-interface IconSetOptions {
- // Prefix, required if `source` is not set
- // If both `source` and `prefix` are set, `prefix` will be used
- prefix?: string;
-
- // Source
- source?: IconSetSource;
-
- // Icons to load
- icons?: IconsListOption;
-
- // Customise callback. If set, it will be used instead of global customise callback
- customise?: (content: string, name: string) => string;
-}
-
-// Array of icon sets to load
-type IconifyPluginListOptions = (string | IconSetOptions)[];
-
-// Full object
-export interface IconifyPluginOptionsObject {
- // Selector for mask, defaults to ".iconify"
- // If empty string, mask selector will not be generated
- maskSelector?: string;
-
- // Extra rules to add to mask selector
- extraMaskRules?: Record;
-
- // Selector for background, defaults to ".iconify-color"
- // If empty string, background selector will not be generated
- backgroundSelector?: string;
-
- // Extra rules to add to background selector
- extraBackgroundRules?: Record;
-
- // Selector for icons, default is `.{prefix}--{name}`
- iconSelector?: string;
-
- // Variable name that contains icon, defaults to "svg"
- varName?: string;
-
- // Scale for icons, defaults to 1
- scale?: number;
-
- // Make icons square, defaults to true
- square?: boolean;
-
- // Prefixes to load
- prefixes?: IconifyPluginListOptions;
-
- // Customise callback
- customise?: (content: string, name: string, prefix: string) => string;
-}
-
-// Full options
-export type IconifyPluginOptions =
- | IconifyPluginOptionsObject
- | IconifyPluginListOptions;
diff --git a/plugins/tailwind/src/plugin.ts b/plugins/tailwind/src/plugin.ts
index 04fc77b..0eca6f9 100644
--- a/plugins/tailwind/src/plugin.ts
+++ b/plugins/tailwind/src/plugin.ts
@@ -1,80 +1,29 @@
+/* eslint-disable @typescript-eslint/unbound-method */
import plugin from 'tailwindcss/plugin';
-import { getCSSRulesForIcons } from './clean';
-import { getDynamicCSSRules } from './dynamic';
-import type {
- CleanIconifyPluginOptions,
- DynamicIconifyPluginOptions,
- IconifyPluginOptions,
-} from './helpers/options';
-import {
- cleanupIconifyPluginOptions,
- getCSSComponentsForPlugin,
- getCSSRulesForPlugin,
-} from './preparsed';
+import { getDynamicCSSRules } from './dynamic.js';
/**
* Generate styles for dynamic selector
*
* Usage in HTML:
*/
-export function addDynamicIconSelectors(options?: DynamicIconifyPluginOptions) {
- const prefix = options?.prefix || 'icon';
+function addDynamicIconSelectors(): ReturnType {
+ const prefix = 'icon';
return plugin(({ matchComponents }) => {
matchComponents({
[prefix]: (icon: string) => {
try {
- return getDynamicCSSRules(icon, options);
+ return getDynamicCSSRules(icon);
} catch (err) {
// Log error, but do not throw it
console.error((err as Error).message);
+ return {};
}
},
});
});
}
-/**
- * Generate rules for mask, background and selected icon sets
- *
- * Icons should combine either mask or background selector and icon selector
- *
- * This plugin generates only square icons. Icons that are not square will be resized to fit square.
- *
- * Usage in HTML:
- */
-export function addIconSelectors(options: IconifyPluginOptions) {
- const fullOptions = cleanupIconifyPluginOptions(options);
-
- return plugin(({ addComponents, addUtilities }) => {
- addComponents(getCSSComponentsForPlugin(fullOptions));
- addUtilities(getCSSRulesForPlugin(fullOptions));
- });
-}
-
-/**
- * Generate styles for preset list of icons
- *
- * Requires knowing full list of icons
- *
- * Usage in HTML:
- *
- * @deprecated Use addIconSelectors instead
- */
-export function addCleanIconSelectors(
- icons: string[] | string,
- options?: CleanIconifyPluginOptions
-) {
- const rules = getCSSRulesForIcons(icons, options);
- return plugin(({ addUtilities }) => {
- addUtilities(rules);
- });
-}
-
-/**
- * Export types
- */
-export type {
- CleanIconifyPluginOptions,
- DynamicIconifyPluginOptions,
- IconifyPluginOptions,
-};
+// Export generated plugin. No TypeScript support yet, so export as unknown
+const exportedPlugin = addDynamicIconSelectors() as unknown;
+export default exportedPlugin;
diff --git a/plugins/tailwind/src/preparsed.ts b/plugins/tailwind/src/preparsed.ts
deleted file mode 100644
index e4c9e01..0000000
--- a/plugins/tailwind/src/preparsed.ts
+++ /dev/null
@@ -1,193 +0,0 @@
-import type { IconifyJSON } from '@iconify/types';
-import {
- generateItemCSSRules,
- getCommonCSSRules,
-} from '@iconify/utils/lib/css/common';
-import { defaultIconProps } from '@iconify/utils/lib/icon/defaults';
-import { parseIconSet } from '@iconify/utils/lib/icon-set/parse';
-import { calculateSize } from '@iconify/utils/lib/svg/size';
-import type {
- IconifyPluginOptions,
- IconifyPluginOptionsObject,
- IconsListOption,
-} from './helpers/options';
-import { loadIconSet } from './helpers/loader';
-
-/**
- * Convert plugin options to object
- */
-export function cleanupIconifyPluginOptions(
- options: IconifyPluginOptions
-): IconifyPluginOptionsObject {
- return Array.isArray(options)
- ? {
- prefixes: options,
- }
- : options;
-}
-
-/**
- * Get CSS rules for main plugin (components)
- */
-export function getCSSComponentsForPlugin(options: IconifyPluginOptionsObject) {
- const rules = Object.create(null) as Record>;
-
- // Variable name, default to 'svg' (cannot be empty string)
- const varName = options.varName || 'svg';
-
- // Scale icons
- const scale = options.scale ?? 1;
- const adjustScale = (obj: Record) => {
- if (!scale) {
- // Delete width and height
- delete obj['width'];
- delete obj['height'];
- } else if (scale !== 1) {
- // Set custom width and height
- obj['width'] = scale + 'em';
- obj['height'] = scale + 'em';
- }
- return obj;
- };
-
- // Add common rules
- const maskSelector = options.maskSelector ?? '.iconify';
- const backgroundSelector = options.backgroundSelector ?? '.iconify-color';
- if (maskSelector) {
- rules[maskSelector] = Object.assign(
- adjustScale(
- getCommonCSSRules({
- mode: 'mask',
- varName,
- })
- ),
- options.extraMaskRules || {}
- );
- }
- if (backgroundSelector) {
- rules[backgroundSelector] = Object.assign(
- adjustScale(
- getCommonCSSRules({
- mode: 'background',
- varName,
- })
- ),
- options.extraBackgroundRules || {}
- );
- }
-
- return rules;
-}
-
-/**
- * Get CSS rules for main plugin (utilities)
- */
-export function getCSSRulesForPlugin(options: IconifyPluginOptionsObject) {
- const rules = Object.create(null) as Record>;
-
- // Variable name, default to 'svg' (cannot be empty string)
- const varName = options.varName || 'svg';
-
- // Add icon sets
- const iconSelector = options.iconSelector || '.{prefix}--{name}';
-
- // Make icons square
- const square = options.square !== false;
-
- // Scale
- const scale = options.scale ?? 1;
-
- options.prefixes?.forEach((item) => {
- let prefix: string;
- let iconSet: IconifyJSON | undefined;
- let iconsList: IconsListOption | undefined;
- let customise: ((content: string, name: string) => string) | undefined;
-
- // Load icon set
- if (typeof item === 'string') {
- // Prefix
- prefix = item;
- iconSet = loadIconSet(prefix);
- } else if (item.source) {
- // Source, possibly with prefix
- iconSet = loadIconSet(item.source);
- prefix = item.prefix || iconSet?.prefix;
- iconsList = item.icons;
- customise = item.customise;
- if (!prefix) {
- throw new Error(
- 'Custom icon set does not have a prefix. Please set "prefix" property'
- );
- }
- } else {
- // Prefix
- prefix = item.prefix || iconSet?.prefix;
- iconSet = prefix ? loadIconSet(prefix) : undefined;
- iconsList = item.icons;
- customise = item.customise;
- }
-
- // Validate it
- if (!iconSet) {
- throw new Error(
- `Cannot load icon set for "${prefix}". Install "@iconify-json/${prefix}" as dev dependency?`
- );
- }
- if (!prefix) {
- throw new Error(
- 'Bad icon set entry, must have either "prefix" or "source" set'
- );
- }
-
- // Load icons
- parseIconSet(iconSet, (name, data) => {
- // Check if icon should be rendered
- if (iconsList) {
- if (Array.isArray(iconsList)) {
- if (!iconsList.includes(name)) {
- return;
- }
- } else if (!iconsList(name)) {
- return;
- }
- }
-
- // Customise icon
- const body = customise
- ? customise(data.body, name)
- : options.customise
- ? options.customise(data.body, name, prefix)
- : data.body;
-
- // Generate CSS
- const iconRules = generateItemCSSRules(
- {
- ...defaultIconProps,
- ...data,
- body,
- },
- {
- mode: 'mask', // not used because varName is set, but required
- varName,
- forceSquare: square,
- }
- );
-
- // Generate selector
- const selector = iconSelector
- .replace('{prefix}', prefix)
- .replace('{name}', name);
-
- // Scale non-square icons
- if (!square && scale > 0 && scale !== 1 && iconRules.width) {
- iconRules.width = calculateSize(iconRules.width, scale);
- }
-
- // Add to rules
- rules[selector] = iconRules;
- });
- });
-
- // Return
- return rules;
-}
diff --git a/plugins/tailwind/tests/clean-css-test.ts b/plugins/tailwind/tests/clean-css-test.ts
deleted file mode 100644
index bc715cd..0000000
--- a/plugins/tailwind/tests/clean-css-test.ts
+++ /dev/null
@@ -1,68 +0,0 @@
-import { getCSSRulesForIcons } from '../src/clean';
-
-describe('Testing clean CSS rules', () => {
- it('One icon', () => {
- const data = getCSSRulesForIcons('mdi-light:home');
- expect(Object.keys(data)).toEqual([
- '.icon--mdi-light',
- '.icon--mdi-light--home',
- ]);
- expect(Object.keys(data['.icon--mdi-light--home'])).toEqual(['--svg']);
- });
-
- it('Multiple icons from same icon set', () => {
- const data = getCSSRulesForIcons([
- // By name
- 'mdi-light:home',
- // By selector
- '.icon--mdi-light--arrow-left',
- '.icon--mdi-light.icon--mdi-light--arrow-down',
- // By class name
- 'icon--mdi-light--file',
- 'icon--mdi-light icon--mdi-light--format-clear',
- ]);
- expect(Object.keys(data)).toEqual([
- '.icon--mdi-light',
- '.icon--mdi-light--home',
- '.icon--mdi-light--arrow-left',
- '.icon--mdi-light--arrow-down',
- '.icon--mdi-light--file',
- '.icon--mdi-light--format-clear',
- ]);
- });
-
- it('Multiple icon sets', () => {
- const data = getCSSRulesForIcons([
- // MDI Light
- 'mdi-light:home',
- // Line MD
- 'line-md:home',
- ]);
- expect(Object.keys(data)).toEqual([
- '.icon--mdi-light',
- '.icon--mdi-light--home',
- '.icon--line-md',
- '.icon--line-md--home',
- ]);
- });
-
- it('Bad class name', () => {
- let threw = false;
- try {
- getCSSRulesForIcons(['icon--mdi-light--home test']);
- } catch {
- threw = true;
- }
- expect(threw).toBe(true);
- });
-
- it('Bad icon set', () => {
- let threw = false;
- try {
- getCSSRulesForIcons('test123:home');
- } catch {
- threw = true;
- }
- expect(threw).toBe(true);
- });
-});
diff --git a/plugins/tailwind/tests/dynamic-css-test.ts b/plugins/tailwind/tests/dynamic-css-test.ts
index d8d8d17..8bd3c3a 100644
--- a/plugins/tailwind/tests/dynamic-css-test.ts
+++ b/plugins/tailwind/tests/dynamic-css-test.ts
@@ -1,4 +1,4 @@
-import { getDynamicCSSRules } from '../src/dynamic';
+import { getDynamicCSSRules } from '../lib/dynamic.js';
describe('Testing dynamic CSS rules', () => {
it('One icon', () => {
diff --git a/plugins/tailwind/tests/tsconfig.json b/plugins/tailwind/tests/tsconfig.json
index 4689462..04e88bc 100644
--- a/plugins/tailwind/tests/tsconfig.json
+++ b/plugins/tailwind/tests/tsconfig.json
@@ -3,6 +3,8 @@
"compilerOptions": {
"types": ["node", "jest"],
"rootDir": ".",
- "outDir": "../tests-compiled"
+ "outDir": "../tests-compiled",
+ "module": "ESNext",
+ "moduleResolution": "bundler"
}
}
diff --git a/plugins/tailwind/tsconfig-base.json b/plugins/tailwind/tsconfig-base.json
index 9cd451b..80574ca 100644
--- a/plugins/tailwind/tsconfig-base.json
+++ b/plugins/tailwind/tsconfig-base.json
@@ -7,7 +7,6 @@
"sourceMap": false,
"composite": true,
"strict": false,
- "moduleResolution": "node",
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"skipLibCheck": true
diff --git a/plugins/tailwind/tsconfig.json b/plugins/tailwind/tsconfig.json
index dde8149..ea21e56 100644
--- a/plugins/tailwind/tsconfig.json
+++ b/plugins/tailwind/tsconfig.json
@@ -4,6 +4,8 @@
"compilerOptions": {
"rootDir": "./src",
"outDir": "./lib",
+ "module": "NodeNext",
+ "moduleResolution": "nodenext",
"lib": ["ESNext", "DOM"]
}
}
diff --git a/plugins/tailwind/vitest.config.js b/plugins/tailwind/vitest.config.js
new file mode 100644
index 0000000..6bd8e7f
--- /dev/null
+++ b/plugins/tailwind/vitest.config.js
@@ -0,0 +1,9 @@
+import { defineConfig } from 'vitest/config';
+
+export default defineConfig({
+ test: {
+ globals: true,
+ watch: false,
+ include: ['**/tests/*-test.ts'],
+ },
+});
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 96a04fc..46e1aa6 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -252,13 +252,13 @@ importers:
version: 12.1.1(rollup@4.28.1)(tslib@2.8.1)(typescript@5.7.2)
'@sveltejs/vite-plugin-svelte':
specifier: ^4.0.2
- version: 4.0.2(svelte@5.8.1)(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))
+ version: 4.0.2(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
'@testing-library/jest-dom':
specifier: ^6.6.3
version: 6.6.3
'@testing-library/svelte':
specifier: ^5.2.6
- version: 5.2.6(svelte@5.8.1)(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))(vitest@2.1.8(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7))
+ version: 5.2.6(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vitest@2.1.8(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7))
'@tsconfig/svelte':
specifier: ^5.0.4
version: 5.0.4
@@ -313,7 +313,7 @@ importers:
version: 29.5.14
'@vitejs/plugin-vue':
specifier: ^5.2.1
- version: 5.2.1(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))(vue@3.5.13(typescript@5.7.2))
+ version: 5.2.1(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.7.2))
'@vue/test-utils':
specifier: ^2.4.6
version: 2.4.6
@@ -605,7 +605,7 @@ importers:
version: 18.3.1
'@vitejs/plugin-react':
specifier: ^4.3.4
- version: 4.3.4(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))
+ version: 4.3.4(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
jest:
specifier: ^29.7.0
version: 29.7.0(@types/node@22.10.1)
@@ -812,7 +812,11 @@ importers:
specifier: ^2.1.8
version: 2.1.8(@types/node@18.19.67)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7)
- plugins-demo/tailwind-demo:
+ plugins-demo/tailwind4-demo:
+ dependencies:
+ vue:
+ specifier: ^3.5.13
+ version: 3.5.13(typescript@5.6.3)
devDependencies:
'@iconify-json/fa6-regular':
specifier: ^1.2.2
@@ -821,17 +825,44 @@ importers:
specifier: ^1.2.1
version: 1.2.1
'@iconify-json/vscode-icons':
- specifier: ^1.2.3
- version: 1.2.3
- '@iconify/tailwind':
+ specifier: ^1.2.6
+ version: 1.2.6
+ '@iconify/tailwind4':
specifier: workspace:*
version: link:../../plugins/tailwind
- '@iconify/tools':
- specifier: 3.0.0-beta.3
- version: 3.0.0-beta.3
+ '@tailwindcss/vite':
+ specifier: 4.0.0-beta.8
+ version: 4.0.0-beta.8(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
+ '@tsconfig/node22':
+ specifier: ^22.0.0
+ version: 22.0.0
+ '@types/node':
+ specifier: ^22.9.3
+ version: 22.10.1
+ '@vitejs/plugin-vue':
+ specifier: ^5.2.1
+ version: 5.2.1(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.6.3))
+ '@vue/tsconfig':
+ specifier: ^0.7.0
+ version: 0.7.0(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))
+ npm-run-all2:
+ specifier: ^7.0.1
+ version: 7.0.2
tailwindcss:
- specifier: ^3.4.16
- version: 3.4.16
+ specifier: 4.0.0-beta.8
+ version: 4.0.0-beta.8
+ typescript:
+ specifier: ~5.6.3
+ version: 5.6.3
+ vite:
+ specifier: ^6.0.1
+ version: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ vite-plugin-vue-devtools:
+ specifier: ^7.6.5
+ version: 7.6.8(rollup@4.28.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.6.3))
+ vue-tsc:
+ specifier: ^2.1.10
+ version: 2.1.10(typescript@5.6.3)
plugins/tailwind:
dependencies:
@@ -881,9 +912,6 @@ importers:
globals:
specifier: ^15.13.0
version: 15.13.0
- jest:
- specifier: ^29.7.0
- version: 29.7.0(@types/node@22.10.1)
rimraf:
specifier: ^6.0.1
version: 6.0.1
@@ -891,14 +919,14 @@ importers:
specifier: ^4.28.1
version: 4.28.1
tailwindcss:
- specifier: ^3.4.16
- version: 3.4.16
- ts-jest:
- specifier: ^29.2.5
- version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(jest@29.7.0(@types/node@22.10.1))(typescript@5.7.2)
+ specifier: 4.0.0-beta.8
+ version: 4.0.0-beta.8
typescript:
specifier: ^5.7.2
version: 5.7.2
+ vitest:
+ specifier: ^2.1.8
+ version: 2.1.8(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7)
packages:
@@ -909,17 +937,10 @@ packages:
'@adobe/css-tools@4.4.0':
resolution: {integrity: sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ==}
- '@alloc/quick-lru@5.2.0':
- resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==}
- engines: {node: '>=10'}
-
'@ampproject/remapping@2.3.0':
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
engines: {node: '>=6.0.0'}
- '@antfu/install-pkg@0.1.1':
- resolution: {integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==}
-
'@antfu/install-pkg@0.4.1':
resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==}
@@ -2044,18 +2065,12 @@ packages:
'@iconify-json/mdi-light@1.2.1':
resolution: {integrity: sha512-kTs9efbpF5GDcevR9PWCDJQrV1Vfr6RS8KJyGIPM6zxd8AGGAtNCxyACrJ+zeq6K99ZmcTIPr8tlymmPFAxwnw==}
- '@iconify-json/vscode-icons@1.2.3':
- resolution: {integrity: sha512-0mhgdamMkdO2up0DbiJSjTXkfnyPJTYYzvh4POSVvcYNl1A48PIUWkhYmxKGSCk/xn3czAOJaGjjMeXrM/HjEQ==}
-
- '@iconify/tools@3.0.0-beta.3':
- resolution: {integrity: sha512-DTPZ4/qgWlScbUzU3WtVSBv5e87abRiuAlu8GnrsmawR34/Bk12bgC1yZFittJvLeRGgmJLuw7yiyPLsdyX4lw==}
+ '@iconify-json/vscode-icons@1.2.6':
+ resolution: {integrity: sha512-uYlPqhIs2IyPL9J7KnX8tvWp9eU1jiv8DLzoLICzuG3UKYj921VmvnA1bicAAD24QYIjS/YSgavMwFFLrF2mKg==}
'@iconify/types@2.0.0':
resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
- '@iconify/utils@2.1.22':
- resolution: {integrity: sha512-6UHVzTVXmvO8uS6xFF+L/QTSpTzA/JZxtgU+KYGFyDYMEObZ1bu/b5l+zNJjHy+0leWjHI+C0pXlzGvv3oXZMA==}
-
'@img/sharp-darwin-arm64@0.33.5':
resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -2727,6 +2742,9 @@ packages:
'@rushstack/ts-command-line@4.23.1':
resolution: {integrity: sha512-40jTmYoiu/xlIpkkRsVfENtBq4CW3R4azbL0Vmda+fMwHWqss6wwf/Cy/UJmMqIzpfYc2OTnjYP1ZLD3CmyeCA==}
+ '@sec-ant/readable-stream@0.4.1':
+ resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==}
+
'@sinclair/typebox@0.27.8':
resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
@@ -2734,6 +2752,10 @@ packages:
resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==}
engines: {node: '>=18'}
+ '@sindresorhus/merge-streams@4.0.0':
+ resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==}
+ engines: {node: '>=18'}
+
'@sinonjs/commons@2.0.0':
resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==}
@@ -2775,6 +2797,84 @@ packages:
'@swc/helpers@0.5.13':
resolution: {integrity: sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==}
+ '@tailwindcss/node@4.0.0-beta.8':
+ resolution: {integrity: sha512-ZbicJgFxo83IIH5eBm7CU3K1olsfud7/zg3+yG7P6+fZiufhh8FllM5QOJVxUEJ5zeB1V94Y+hTq5UOfu8ZloA==}
+
+ '@tailwindcss/oxide-android-arm64@4.0.0-beta.8':
+ resolution: {integrity: sha512-YY4g6INIl8VfDMig12pleAVRf1JPvYCNgIXfcvm9g9lxIGq2zkGPsp81BpMSTS+pGJmTGhOZq8ab/TOprtNkAQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [android]
+
+ '@tailwindcss/oxide-darwin-arm64@4.0.0-beta.8':
+ resolution: {integrity: sha512-XUCjDaecPOt+mL7EngO6Yhj/ybNgxg9wi2oFuBECz3fj/VV9WQ8MwMDIdjEwrIm43BtwTvEugLIRO9I4KBbuuA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@tailwindcss/oxide-darwin-x64@4.0.0-beta.8':
+ resolution: {integrity: sha512-iMBDpcRBJPt30iohlqJ+slpV+YoR7vL609Zsvzl432lEt6UWEwtKpvPXNuMUEVi7jjLLyyQ/tgM62alVzG1Hug==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@tailwindcss/oxide-freebsd-x64@4.0.0-beta.8':
+ resolution: {integrity: sha512-iZY+svFyJHllFSaBOfASzOaSU6TLEx8sX+pZwpDExsDHG61o1xh69QJRAL4TJVW288y9kfNsrvcv4yRyn5fwfw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.0-beta.8':
+ resolution: {integrity: sha512-IqEJggh5x+WgJYz2pG5r5+sOTU1D7Tb/92bQdQGYU618b9hgLhigLIBlbLEuZIC89aTK+aDYvgeqTbKX8X2iuA==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [linux]
+
+ '@tailwindcss/oxide-linux-arm64-gnu@4.0.0-beta.8':
+ resolution: {integrity: sha512-WieWtmho/wdI3gowTyJWtvqn921BtVDwzaKKFjPACZmX4a7UM0T4t4xDINc8M84lSzCzFBpk2wVykSIyqCXJZA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@tailwindcss/oxide-linux-arm64-musl@4.0.0-beta.8':
+ resolution: {integrity: sha512-P+apWSDGGgCGbTHfyNxUe4+n3lIH6kV+7Y4QGCkBUx5o3L2RzZ2I2/kQNA5z60Moac0tUqX9mKF8AyCmGpBFCg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@tailwindcss/oxide-linux-x64-gnu@4.0.0-beta.8':
+ resolution: {integrity: sha512-6Xj+lHcW0WrsrtRtiHbBFFoJYfHDhscNKumYFyv6THFP9AMwrB/9jp3xPfx9q7Pp3OJf3l0VP8KhdI5MPEMBpw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@tailwindcss/oxide-linux-x64-musl@4.0.0-beta.8':
+ resolution: {integrity: sha512-RWeMlHrcS0Rj3tFhbwxkhnsLmsw8E6g0nHjDawNY0lTYi6PP5RZF7ghgzUbzMkjw6QcBJthycpXYXUCKPIZlpA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@tailwindcss/oxide-win32-arm64-msvc@4.0.0-beta.8':
+ resolution: {integrity: sha512-+FQFS2XjsHGlh+U/paIcUULLfkSmcBp9QzXkTu8UsEH6Ygp7L8RmMZshAr5dQDjXFKBvKHKJX4oIg/SP+VThgA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@tailwindcss/oxide-win32-x64-msvc@4.0.0-beta.8':
+ resolution: {integrity: sha512-5cuAwlDMlnUgzGdZjr+U3ILGbRh9JGmlALgSKo/92qm02NAjNjSSQ4vvh/hMv+mRk5RQDE5lXwDK5/+fGejOBg==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+
+ '@tailwindcss/oxide@4.0.0-beta.8':
+ resolution: {integrity: sha512-fpZkAwKDFuRNbxQZrXViij2D38R6qqgAnctBR9NPyHxZqYDjn3uyk75alrDnSGj4wUCTAhOCEX4HCI9xCgKGdA==}
+ engines: {node: '>= 10'}
+
+ '@tailwindcss/vite@4.0.0-beta.8':
+ resolution: {integrity: sha512-ZNlj0fdeH4/uWXafrXklZY+TgmN7wOHWHHBL4i3xzD4BflcCDZJkgJER/8baJCpagMzwWDnA6CyXDX+2q7lMRQ==}
+ peerDependencies:
+ vite: ^5.2.0 || ^6
+
'@testing-library/dom@10.4.0':
resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==}
engines: {node: '>=18'}
@@ -2815,6 +2915,9 @@ packages:
resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==}
engines: {node: '>=10.13.0'}
+ '@tsconfig/node22@22.0.0':
+ resolution: {integrity: sha512-twLQ77zevtxobBOD4ToAtVmuYrpeYUh3qh+TEp+08IWhpsrIflVHqQ1F1CiPxQGL7doCdBIOOCF+1Tm833faNg==}
+
'@tsconfig/svelte@5.0.4':
resolution: {integrity: sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==}
@@ -2836,9 +2939,6 @@ packages:
'@types/babel__traverse@7.18.1':
resolution: {integrity: sha512-FSdLaZh2UxaMuLp9lixWaHq/golWTRWOnRsAXzDTDSDOQLuZb1nsdCt6pJSPWSEQt2eFZ2YVk3oYhn+1kLMeMA==}
- '@types/cheerio@0.22.31':
- resolution: {integrity: sha512-Kt7Cdjjdi2XWSfrZ53v4Of0wG3ZcmaegFXjMmz9tfNrZSkzzo36G0AL1YqSdcIA78Etjt6E609pt5h1xnQkPUw==}
-
'@types/cookie@0.6.0':
resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
@@ -2903,9 +3003,6 @@ packages:
'@types/stack-utils@2.0.1':
resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==}
- '@types/tar@6.1.4':
- resolution: {integrity: sha512-Cp4oxpfIzWt7mr2pbhHT2OTXGMAL0szYCzuf8lRWyIMCgsx6/Hfc3ubztuhvzXHXgraTQxyOCmmg7TDGIMIJJQ==}
-
'@types/tough-cookie@4.0.2':
resolution: {integrity: sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==}
@@ -2915,9 +3012,6 @@ packages:
'@types/yargs@17.0.12':
resolution: {integrity: sha512-Nz4MPhecOFArtm81gFQvQqdV7XYCrWKx5uUt6GNHredFHn1i2mtWqXTON7EPXMtNi1qjtjEM/VCHDhcHsAMLXQ==}
- '@types/yauzl@2.10.0':
- resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==}
-
'@typescript-eslint/eslint-plugin@8.17.0':
resolution: {integrity: sha512-HU1KAdW3Tt8zQkdvNoIijfWDMvdSweFYm4hWh+KwhPstv+sCmWb89hCIP8msFm9N1R/ooh9honpSuvqKWlYy3w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -3108,12 +3202,23 @@ packages:
peerDependencies:
vue: ^3.0.0
+ '@vue/devtools-core@7.6.8':
+ resolution: {integrity: sha512-8X4roysTwzQ94o7IobjVcOd1aZF5iunikrMrHPI2uUdigZCi2kFTQc7ffYiFiTNaLElCpjOhCnM7bo7aK1yU7A==}
+ peerDependencies:
+ vue: ^3.0.0
+
'@vue/devtools-kit@7.4.4':
resolution: {integrity: sha512-awK/4NfsUG0nQ7qnTM37m7ZkEUMREyPh8taFCX+uQYps/MTFEum0AD05VeGDRMXwWvMmGIcWX9xp8ZiBddY0jw==}
+ '@vue/devtools-kit@7.6.8':
+ resolution: {integrity: sha512-JhJ8M3sPU+v0P2iZBF2DkdmR9L0dnT5RXJabJqX6o8KtFs3tebdvfoXV2Dm3BFuqeECuMJIfF1aCzSt+WQ4wrw==}
+
'@vue/devtools-shared@7.6.2':
resolution: {integrity: sha512-lcjyJ7hCC0W0kNwnCGMLVTMvDLoZgjcq9BvboPgS+6jQyDul7fpzRSKTGtGhCHoxrDox7qBAKGbAl2Rcf7GE1A==}
+ '@vue/devtools-shared@7.6.8':
+ resolution: {integrity: sha512-9MBPO5Z3X1nYGFqTJyohl6Gmf/J7UNN1oicHdyzBVZP4jnhZ4c20MgtaHDIzWmHDHCMYVS5bwKxT3jxh7gOOKA==}
+
'@vue/language-core@2.1.10':
resolution: {integrity: sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==}
peerDependencies:
@@ -3142,6 +3247,17 @@ packages:
'@vue/test-utils@2.4.6':
resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==}
+ '@vue/tsconfig@0.7.0':
+ resolution: {integrity: sha512-ku2uNz5MaZ9IerPPUyOHzyjhXoX2kVJaVf7hL315DC17vS6IiZRmmCPfggNbU16QTvM80+uYYy3eYJB59WCtvg==}
+ peerDependencies:
+ typescript: 5.x
+ vue: ^3.4.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ vue:
+ optional: true
+
abbrev@1.1.1:
resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==}
@@ -3237,6 +3353,10 @@ packages:
resolution: {integrity: sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==}
engines: {node: '>=12'}
+ ansi-styles@6.2.1:
+ resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
+ engines: {node: '>=12'}
+
any-promise@1.3.0:
resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
@@ -3260,9 +3380,6 @@ packages:
engines: {node: '>=10'}
deprecated: This package is no longer supported.
- arg@5.0.2:
- resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
-
argparse@1.0.10:
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
@@ -3377,6 +3494,9 @@ packages:
birpc@0.2.17:
resolution: {integrity: sha512-+hkTxhot+dWsLpp3gia5AkVHIsKlZybNT5gIYiDlNzJrmYPcTM9k5/w2uaj3IPpd7LlEYpmCj4Jj1nC41VhDFg==}
+ birpc@0.2.19:
+ resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==}
+
boolbase@1.0.0:
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
@@ -3402,9 +3522,6 @@ packages:
bser@2.1.1:
resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==}
- buffer-crc32@0.2.13:
- resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==}
-
buffer-crc32@1.0.0:
resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==}
engines: {node: '>=8.0.0'}
@@ -3445,10 +3562,6 @@ packages:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
engines: {node: '>=6'}
- camelcase-css@2.0.1:
- resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
- engines: {node: '>= 6'}
-
camelcase@5.3.1:
resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
engines: {node: '>=6'}
@@ -3490,13 +3603,6 @@ packages:
resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==}
engines: {node: '>= 16'}
- cheerio-select@2.1.0:
- resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==}
-
- cheerio@1.0.0-rc.12:
- resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==}
- engines: {node: '>= 6'}
-
chokidar@3.6.0:
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
engines: {node: '>= 8.10.0'}
@@ -3866,9 +3972,6 @@ packages:
devalue@5.1.1:
resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==}
- didyoumean@1.2.2:
- resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
-
diff-sequences@29.6.3:
resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -3881,9 +3984,6 @@ packages:
resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
engines: {node: '>=8'}
- dlv@1.1.3:
- resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
-
dom-accessibility-api@0.5.14:
resolution: {integrity: sha512-NMt+m9zFMPZe0JcY9gN224Qvk6qLIdqex29clBvc/y75ZBX9YA9wNK3frsYvu2DI1xcCIwxwnX+TlsJ2DSOADg==}
@@ -3954,13 +4054,14 @@ packages:
encoding@0.1.13:
resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==}
- end-of-stream@1.4.4:
- resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
-
enhanced-resolve@5.15.0:
resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==}
engines: {node: '>=10.13.0'}
+ enhanced-resolve@5.17.1:
+ resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==}
+ engines: {node: '>=10.13.0'}
+
entities@4.5.0:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
engines: {node: '>=0.12'}
@@ -4114,6 +4215,10 @@ packages:
resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
engines: {node: '>=16.17'}
+ execa@9.5.2:
+ resolution: {integrity: sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q==}
+ engines: {node: ^18.19.0 || >=20.5.0}
+
exit@0.1.2:
resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==}
engines: {node: '>= 0.8.0'}
@@ -4129,11 +4234,6 @@ packages:
externality@1.0.2:
resolution: {integrity: sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==}
- extract-zip@2.0.1:
- resolution: {integrity: sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==}
- engines: {node: '>= 10.17.0'}
- hasBin: true
-
fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
@@ -4162,9 +4262,6 @@ packages:
fb-watchman@2.0.1:
resolution: {integrity: sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==}
- fd-slicer@1.1.0:
- resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==}
-
fdir@6.4.2:
resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==}
peerDependencies:
@@ -4173,6 +4270,10 @@ packages:
picomatch:
optional: true
+ figures@6.1.0:
+ resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==}
+ engines: {node: '>=18'}
+
file-entry-cache@8.0.0:
resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
engines: {node: '>=16.0.0'}
@@ -4260,10 +4361,6 @@ packages:
get-port-please@3.1.2:
resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==}
- get-stream@5.2.0:
- resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==}
- engines: {node: '>=8'}
-
get-stream@6.0.1:
resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
engines: {node: '>=10'}
@@ -4272,6 +4369,10 @@ packages:
resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
engines: {node: '>=16'}
+ get-stream@9.0.1:
+ resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==}
+ engines: {node: '>=18'}
+
giget@1.2.3:
resolution: {integrity: sha512-8EHPljDvs7qKykr6uw8b+lqLiUc/vUg+KVTI0uND4s63TdsZM2Xus3mflvF0DDG9SiM4RlCkFGL+7aAjRmV7KA==}
hasBin: true
@@ -4391,9 +4492,6 @@ packages:
resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==}
engines: {node: '>=8'}
- htmlparser2@8.0.2:
- resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==}
-
http-errors@2.0.0:
resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
engines: {node: '>= 0.8'}
@@ -4429,6 +4527,10 @@ packages:
resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
engines: {node: '>=16.17.0'}
+ human-signals@8.0.0:
+ resolution: {integrity: sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA==}
+ engines: {node: '>=18.18.0'}
+
iconv-lite@0.6.3:
resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
engines: {node: '>=0.10.0'}
@@ -4559,6 +4661,10 @@ packages:
resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==}
engines: {node: '>=12'}
+ is-plain-obj@4.1.0:
+ resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
+ engines: {node: '>=12'}
+
is-potential-custom-element-name@1.0.1:
resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
@@ -4579,6 +4685,14 @@ packages:
resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ is-stream@4.0.1:
+ resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==}
+ engines: {node: '>=18'}
+
+ is-unicode-supported@2.1.0:
+ resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==}
+ engines: {node: '>=18'}
+
is-what@4.1.8:
resolution: {integrity: sha512-yq8gMao5upkPoGEU9LsB2P+K3Kt8Q3fQFCGyNCWOAnJAMzEXVV9drYb0TXr42TTliLLhKIBvulgAXgtLLnwzGA==}
engines: {node: '>=12.13'}
@@ -4601,6 +4715,10 @@ packages:
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+ isexe@3.1.1:
+ resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==}
+ engines: {node: '>=16'}
+
istanbul-lib-coverage@3.2.0:
resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==}
engines: {node: '>=8'}
@@ -4829,6 +4947,10 @@ packages:
json-parse-even-better-errors@2.3.1:
resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
+ json-parse-even-better-errors@4.0.0:
+ resolution: {integrity: sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+
json-schema-traverse@0.4.1:
resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
@@ -4964,10 +5086,6 @@ packages:
resolution: {integrity: sha512-iyT2MXws+dc2Wi6o3grCFtGXpeMvHmJqS27sMPGtV2eUu4PeFnG+33I8BlFK1t1NWMjOpcx9bridn5yxLDX2gQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- local-pkg@0.4.3:
- resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==}
- engines: {node: '>=14'}
-
local-pkg@0.5.1:
resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==}
engines: {node: '>=14'}
@@ -5061,6 +5179,10 @@ packages:
mdn-data@2.0.30:
resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
+ memorystream@0.3.1:
+ resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==}
+ engines: {node: '>= 0.10.0'}
+
merge-anything@5.1.7:
resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==}
engines: {node: '>=12.13'}
@@ -5137,10 +5259,6 @@ packages:
resolution: {integrity: sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==}
engines: {node: '>=8'}
- minipass@4.2.5:
- resolution: {integrity: sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==}
- engines: {node: '>=8'}
-
minipass@5.0.0:
resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==}
engines: {node: '>=8'}
@@ -5209,6 +5327,11 @@ packages:
engines: {node: ^18 || >=20}
hasBin: true
+ nanoid@5.0.9:
+ resolution: {integrity: sha512-Aooyr6MXU6HpvvWXKoVoXwKMs/KyVakWwg7xQfv5/S/RIgJMy0Ifa45H9qqYy7pTCszrHzP21Uk4PZq2HpEM8Q==}
+ engines: {node: ^18 || >=20}
+ hasBin: true
+
nanotar@0.1.1:
resolution: {integrity: sha512-AiJsGsSF3O0havL1BydvI4+wR76sKT+okKRwWIaK96cZUnXqH0uNBOsHlbwZq3+m2BR1VKqHDVudl3gO4mYjpQ==}
@@ -5294,6 +5417,15 @@ packages:
resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
engines: {node: '>=0.10.0'}
+ npm-normalize-package-bin@4.0.0:
+ resolution: {integrity: sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+
+ npm-run-all2@7.0.2:
+ resolution: {integrity: sha512-7tXR+r9hzRNOPNTvXegM+QzCuMjzUIIq66VDunL6j60O4RrExx32XUhlrS7UK4VcdGw5/Wxzb3kfNcFix9JKDA==}
+ engines: {node: ^18.17.0 || >=20.5.0, npm: '>= 9'}
+ hasBin: true
+
npm-run-path@4.0.1:
resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
engines: {node: '>=8'}
@@ -5302,6 +5434,10 @@ packages:
resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ npm-run-path@6.0.0:
+ resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==}
+ engines: {node: '>=18'}
+
npmlog@5.0.1:
resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==}
deprecated: This package is no longer supported.
@@ -5339,10 +5475,6 @@ packages:
resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
engines: {node: '>=0.10.0'}
- object-hash@3.0.0:
- resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
- engines: {node: '>= 6'}
-
ofetch@1.4.1:
resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==}
@@ -5424,15 +5556,16 @@ packages:
resolution: {integrity: sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==}
engines: {node: '>=18'}
+ parse-ms@4.0.0:
+ resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==}
+ engines: {node: '>=18'}
+
parse-path@7.0.0:
resolution: {integrity: sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==}
parse-url@8.1.0:
resolution: {integrity: sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==}
- parse5-htmlparser2-tree-adapter@7.0.0:
- resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==}
-
parse5@7.1.2:
resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==}
@@ -5485,9 +5618,6 @@ packages:
resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==}
engines: {node: '>= 14.16'}
- pend@1.2.0:
- resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==}
-
perfect-debounce@1.0.0:
resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==}
@@ -5502,9 +5632,10 @@ packages:
resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
engines: {node: '>=12'}
- pify@2.3.0:
- resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
- engines: {node: '>=0.10.0'}
+ pidtree@0.6.0:
+ resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
+ engines: {node: '>=0.10'}
+ hasBin: true
pirates@4.0.5:
resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==}
@@ -5563,30 +5694,6 @@ packages:
peerDependencies:
postcss: ^8.4.31
- postcss-import@15.1.0:
- resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
- engines: {node: '>=14.0.0'}
- peerDependencies:
- postcss: ^8.0.0
-
- postcss-js@4.0.1:
- resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==}
- engines: {node: ^12 || ^14 || >= 16}
- peerDependencies:
- postcss: ^8.4.21
-
- postcss-load-config@4.0.2:
- resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
- engines: {node: '>= 14'}
- peerDependencies:
- postcss: '>=8.0.9'
- ts-node: '>=9.0.0'
- peerDependenciesMeta:
- postcss:
- optional: true
- ts-node:
- optional: true
-
postcss-load-config@6.0.1:
resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==}
engines: {node: '>= 18'}
@@ -5771,6 +5878,10 @@ packages:
resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+ pretty-ms@9.2.0:
+ resolution: {integrity: sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==}
+ engines: {node: '>=18'}
+
process-nextick-args@2.0.1:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
@@ -5788,9 +5899,6 @@ packages:
protocols@2.0.1:
resolution: {integrity: sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==}
- pump@3.0.0:
- resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==}
-
punycode@2.3.1:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
@@ -5846,8 +5954,9 @@ packages:
resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
engines: {node: '>=0.10.0'}
- read-cache@1.0.0:
- resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
+ read-package-json-fast@4.0.0:
+ resolution: {integrity: sha512-qpt8EwugBWDw2cgE2W+/3oxC+KTez2uSVR8JU9Q36TXPAGCaozfQUs59v4j4GFpWTaw0i6hAZSvOmu1J0uOEUg==}
+ engines: {node: ^18.17.0 || >=20.5.0}
readable-stream@2.3.7:
resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==}
@@ -6226,6 +6335,10 @@ packages:
resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
engines: {node: '>=12'}
+ strip-final-newline@4.0.0:
+ resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==}
+ engines: {node: '>=18'}
+
strip-indent@3.0.0:
resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
engines: {node: '>=8'}
@@ -6349,10 +6462,8 @@ packages:
resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==}
engines: {node: '>=18'}
- tailwindcss@3.4.16:
- resolution: {integrity: sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==}
- engines: {node: '>=14.0.0'}
- hasBin: true
+ tailwindcss@4.0.0-beta.8:
+ resolution: {integrity: sha512-21HmdRq9tHDLJZavb2cRBGJxBvRODpwb0/t3tRbMOl65hJE6zG6K6lD6lLS3IOC35u4SOjKjdZiJJi9AuWCf+Q==}
tapable@2.2.1:
resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
@@ -6525,6 +6636,11 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ typescript@5.6.3:
+ resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+
typescript@5.7.2:
resolution: {integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==}
engines: {node: '>=14.17'}
@@ -6583,6 +6699,10 @@ packages:
resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
engines: {node: '>=18'}
+ unicorn-magic@0.3.0:
+ resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==}
+ engines: {node: '>=18'}
+
unimport@3.14.4:
resolution: {integrity: sha512-90jQsiS2D0vIrWg4U58do7B5Hr4q0qt9o/rS0TrDMzrvNuAQ7XF1sQ47Pe2zjVlvFWNkoPBb/2l2GJFy5XjqDg==}
@@ -6694,6 +6814,11 @@ packages:
peerDependencies:
vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0
+ vite-hot-client@0.2.4:
+ resolution: {integrity: sha512-a1nzURqO7DDmnXqabFOliz908FRmIppkBKsJthS8rbe8hBEXwEwe4C3Pp33Z1JoFCYfVL4kTOMLKk0ZZxREIeA==}
+ peerDependencies:
+ vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
+
vite-node@2.1.8:
resolution: {integrity: sha512-uPAwSr57kYjAUux+8E2j0q0Fxpn8M9VoyfGiRI8Kfktz9NcYMCenwY5RnZxnF1WTu3TGiYipirIzacLL3VVGFg==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -6743,6 +6868,16 @@ packages:
'@nuxt/kit':
optional: true
+ vite-plugin-inspect@0.8.9:
+ resolution: {integrity: sha512-22/8qn+LYonzibb1VeFZmISdVao5kC22jmEKm24vfFE8siEn47EpVcCLYMv6iKOYMJfjSvSJfueOwcFCkUnV3A==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@nuxt/kit': '*'
+ vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.1
+ peerDependenciesMeta:
+ '@nuxt/kit':
+ optional: true
+
vite-plugin-solid@2.11.0:
resolution: {integrity: sha512-G+NiwDj4EAeUE0wt3Ur9f+Lt9oMUuLd0FIxYuqwJSqRacKQRteCwUFzNy8zMEt88xWokngQhiFjfJMhjc1fDXw==}
peerDependencies:
@@ -6753,11 +6888,22 @@ packages:
'@testing-library/jest-dom':
optional: true
+ vite-plugin-vue-devtools@7.6.8:
+ resolution: {integrity: sha512-32aIps8C1Y7UEoqyWf+ES3J1OozsCYMIqTqd+I5qass+R0Tcf8SaA2bX1/rskAzkcKCteVoBjEENmqwTcMebbw==}
+ engines: {node: '>=v14.21.3'}
+ peerDependencies:
+ vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
+
vite-plugin-vue-inspector@5.1.3:
resolution: {integrity: sha512-pMrseXIDP1Gb38mOevY+BvtNGNqiqmqa2pKB99lnLsADQww9w9xMbAfT4GB6RUoaOkSPrtlXqpq2Fq+Dj2AgFg==}
peerDependencies:
vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0
+ vite-plugin-vue-inspector@5.3.1:
+ resolution: {integrity: sha512-cBk172kZKTdvGpJuzCCLg8lJ909wopwsu3Ve9FsL1XsnLBiRT9U3MePcqrgGHgCX2ZgkqZmAGR8taxw+TV6s7A==}
+ peerDependencies:
+ vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
+
vite@5.4.11:
resolution: {integrity: sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -6789,6 +6935,46 @@ packages:
terser:
optional: true
+ vite@6.0.4:
+ resolution: {integrity: sha512-zwlH6ar+6o6b4Wp+ydhtIKLrGM/LoqZzcdVmkGAFun0KHTzIzjh+h0kungEx7KJg/PYnC80I4TII9WkjciSR6Q==}
+ engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0
+ jiti: '>=1.21.0'
+ less: '*'
+ lightningcss: ^1.21.0
+ sass: '*'
+ sass-embedded: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.16.0
+ tsx: ^4.8.1
+ yaml: ^2.4.2
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ jiti:
+ optional: true
+ less:
+ optional: true
+ lightningcss:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ tsx:
+ optional: true
+ yaml:
+ optional: true
+
vitefu@1.0.4:
resolution: {integrity: sha512-y6zEE3PQf6uu/Mt6DTJ9ih+kyJLr4XcSgHR2zUkM8SWDhuixEJxfJ6CZGMHh1Ec3vPLoEA0IHU5oWzVqw8ulow==}
peerDependencies:
@@ -6922,6 +7108,11 @@ packages:
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
hasBin: true
+ which@5.0.0:
+ resolution: {integrity: sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+ hasBin: true
+
why-is-node-running@2.3.0:
resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
engines: {node: '>=8'}
@@ -6990,13 +7181,14 @@ packages:
resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
engines: {node: '>=12'}
- yauzl@2.10.0:
- resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==}
-
yocto-queue@0.1.0:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
+ yoctocolors@2.1.1:
+ resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==}
+ engines: {node: '>=18'}
+
zhead@2.2.4:
resolution: {integrity: sha512-8F0OI5dpWIA5IGG5NHUg9staDwz/ZPxZtvGVf01j7vHqSyZ0raHY+78atOVxRqb73AotX22uV1pXt3gYSstGag==}
@@ -7013,18 +7205,11 @@ snapshots:
'@adobe/css-tools@4.4.0': {}
- '@alloc/quick-lru@5.2.0': {}
-
'@ampproject/remapping@2.3.0':
dependencies:
'@jridgewell/gen-mapping': 0.3.5
'@jridgewell/trace-mapping': 0.3.25
- '@antfu/install-pkg@0.1.1':
- dependencies:
- execa: 5.1.1
- find-up: 5.0.0
-
'@antfu/install-pkg@0.4.1':
dependencies:
package-manager-detector: 0.2.2
@@ -8113,39 +8298,12 @@ snapshots:
dependencies:
'@iconify/types': 2.0.0
- '@iconify-json/vscode-icons@1.2.3':
+ '@iconify-json/vscode-icons@1.2.6':
dependencies:
'@iconify/types': 2.0.0
- '@iconify/tools@3.0.0-beta.3':
- dependencies:
- '@iconify/types': 2.0.0
- '@iconify/utils': 2.1.22
- '@types/cheerio': 0.22.31
- '@types/tar': 6.1.4
- cheerio: 1.0.0-rc.12
- extract-zip: 2.0.1
- local-pkg: 0.4.3
- pathe: 1.1.2
- svgo: 3.3.2
- tar: 6.2.0
- transitivePeerDependencies:
- - supports-color
-
'@iconify/types@2.0.0': {}
- '@iconify/utils@2.1.22':
- dependencies:
- '@antfu/install-pkg': 0.1.1
- '@antfu/utils': 0.7.10
- '@iconify/types': 2.0.0
- debug: 4.4.0(supports-color@9.4.0)
- kolorist: 1.8.0
- local-pkg: 0.5.1
- mlly: 1.7.3
- transitivePeerDependencies:
- - supports-color
-
'@img/sharp-darwin-arm64@0.33.5':
optionalDependencies:
'@img/sharp-libvips-darwin-arm64': 1.0.4
@@ -9047,10 +9205,14 @@ snapshots:
transitivePeerDependencies:
- '@types/node'
+ '@sec-ant/readable-stream@0.4.1': {}
+
'@sinclair/typebox@0.27.8': {}
'@sindresorhus/merge-streams@2.3.0': {}
+ '@sindresorhus/merge-streams@4.0.0': {}
+
'@sinonjs/commons@2.0.0':
dependencies:
type-detect: 4.0.8
@@ -9091,6 +9253,15 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)))(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))':
+ dependencies:
+ '@sveltejs/vite-plugin-svelte': 4.0.2(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
+ debug: 4.4.0(supports-color@9.4.0)
+ svelte: 5.8.1
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ transitivePeerDependencies:
+ - supports-color
+
'@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.8.1)(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))':
dependencies:
'@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.8.1)(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)))(svelte@5.8.1)(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))
@@ -9104,12 +9275,86 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))':
+ dependencies:
+ '@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.2(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)))(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
+ debug: 4.4.0(supports-color@9.4.0)
+ deepmerge: 4.3.1
+ kleur: 4.1.5
+ magic-string: 0.30.14
+ svelte: 5.8.1
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ vitefu: 1.0.4(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
+ transitivePeerDependencies:
+ - supports-color
+
'@swc/counter@0.1.3': {}
'@swc/helpers@0.5.13':
dependencies:
tslib: 2.8.1
+ '@tailwindcss/node@4.0.0-beta.8':
+ dependencies:
+ enhanced-resolve: 5.17.1
+ jiti: 2.4.0
+ tailwindcss: 4.0.0-beta.8
+
+ '@tailwindcss/oxide-android-arm64@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-darwin-arm64@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-darwin-x64@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-freebsd-x64@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-linux-arm64-gnu@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-linux-arm64-musl@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-linux-x64-gnu@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-linux-x64-musl@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-win32-arm64-msvc@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide-win32-x64-msvc@4.0.0-beta.8':
+ optional: true
+
+ '@tailwindcss/oxide@4.0.0-beta.8':
+ optionalDependencies:
+ '@tailwindcss/oxide-android-arm64': 4.0.0-beta.8
+ '@tailwindcss/oxide-darwin-arm64': 4.0.0-beta.8
+ '@tailwindcss/oxide-darwin-x64': 4.0.0-beta.8
+ '@tailwindcss/oxide-freebsd-x64': 4.0.0-beta.8
+ '@tailwindcss/oxide-linux-arm-gnueabihf': 4.0.0-beta.8
+ '@tailwindcss/oxide-linux-arm64-gnu': 4.0.0-beta.8
+ '@tailwindcss/oxide-linux-arm64-musl': 4.0.0-beta.8
+ '@tailwindcss/oxide-linux-x64-gnu': 4.0.0-beta.8
+ '@tailwindcss/oxide-linux-x64-musl': 4.0.0-beta.8
+ '@tailwindcss/oxide-win32-arm64-msvc': 4.0.0-beta.8
+ '@tailwindcss/oxide-win32-x64-msvc': 4.0.0-beta.8
+
+ '@tailwindcss/vite@4.0.0-beta.8(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))':
+ dependencies:
+ '@tailwindcss/node': 4.0.0-beta.8
+ '@tailwindcss/oxide': 4.0.0-beta.8
+ lightningcss: 1.27.0
+ tailwindcss: 4.0.0-beta.8
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+
'@testing-library/dom@10.4.0':
dependencies:
'@babel/code-frame': 7.26.2
@@ -9141,16 +9386,18 @@ snapshots:
'@types/react': 18.3.14
'@types/react-dom': 18.3.2
- '@testing-library/svelte@5.2.6(svelte@5.8.1)(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))(vitest@2.1.8(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7))':
+ '@testing-library/svelte@5.2.6(svelte@5.8.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vitest@2.1.8(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7))':
dependencies:
'@testing-library/dom': 10.4.0
svelte: 5.8.1
optionalDependencies:
- vite: 5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
vitest: 2.1.8(@types/node@22.10.1)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7)
'@trysound/sax@0.2.0': {}
+ '@tsconfig/node22@22.0.0': {}
+
'@tsconfig/svelte@5.0.4': {}
'@types/argparse@1.0.38': {}
@@ -9178,10 +9425,6 @@ snapshots:
dependencies:
'@babel/types': 7.26.0
- '@types/cheerio@0.22.31':
- dependencies:
- '@types/node': 22.10.1
-
'@types/cookie@0.6.0': {}
'@types/cookie@1.0.0':
@@ -9254,11 +9497,6 @@ snapshots:
'@types/stack-utils@2.0.1': {}
- '@types/tar@6.1.4':
- dependencies:
- '@types/node': 22.10.1
- minipass: 4.2.5
-
'@types/tough-cookie@4.0.2': {}
'@types/yargs-parser@21.0.0': {}
@@ -9267,11 +9505,6 @@ snapshots:
dependencies:
'@types/yargs-parser': 21.0.0
- '@types/yauzl@2.10.0':
- dependencies:
- '@types/node': 22.10.1
- optional: true
-
'@typescript-eslint/eslint-plugin@8.17.0(@typescript-eslint/parser@8.17.0(eslint@9.16.0(jiti@2.4.0))(typescript@5.7.2))(eslint@9.16.0(jiti@2.4.0))(typescript@5.7.2)':
dependencies:
'@eslint-community/regexpp': 4.12.1
@@ -9412,6 +9645,17 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@vitejs/plugin-react@4.3.4(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))':
+ dependencies:
+ '@babel/core': 7.26.0
+ '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0)
+ '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0)
+ '@types/babel__core': 7.20.5
+ react-refresh: 0.14.2
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ transitivePeerDependencies:
+ - supports-color
+
'@vitejs/plugin-vue-jsx@4.1.1(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7))(vue@3.5.13(typescript@5.7.2))':
dependencies:
'@babel/core': 7.26.0
@@ -9427,6 +9671,16 @@ snapshots:
vite: 5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)
vue: 3.5.13(typescript@5.7.2)
+ '@vitejs/plugin-vue@5.2.1(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.6.3))':
+ dependencies:
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ vue: 3.5.13(typescript@5.6.3)
+
+ '@vitejs/plugin-vue@5.2.1(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.7.2))':
+ dependencies:
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ vue: 3.5.13(typescript@5.7.2)
+
'@vitest/expect@2.1.8':
dependencies:
'@vitest/spy': 2.1.8
@@ -9478,17 +9732,14 @@ snapshots:
'@volar/language-core@2.4.8':
dependencies:
'@volar/source-map': 2.4.8
- optional: true
- '@volar/source-map@2.4.8':
- optional: true
+ '@volar/source-map@2.4.8': {}
'@volar/typescript@2.4.8':
dependencies:
'@volar/language-core': 2.4.8
path-browserify: 1.0.1
vscode-uri: 3.0.8
- optional: true
'@vue-macros/common@1.15.0(rollup@4.28.1)(vue@3.5.13(typescript@5.7.2))':
dependencies:
@@ -9567,7 +9818,6 @@ snapshots:
dependencies:
de-indent: 1.0.2
he: 1.2.0
- optional: true
'@vue/devtools-api@6.6.4': {}
@@ -9583,6 +9833,18 @@ snapshots:
transitivePeerDependencies:
- vite
+ '@vue/devtools-core@7.6.8(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.6.3))':
+ dependencies:
+ '@vue/devtools-kit': 7.6.8
+ '@vue/devtools-shared': 7.6.8
+ mitt: 3.0.1
+ nanoid: 5.0.9
+ pathe: 1.1.2
+ vite-hot-client: 0.2.4(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
+ vue: 3.5.13(typescript@5.6.3)
+ transitivePeerDependencies:
+ - vite
+
'@vue/devtools-kit@7.4.4':
dependencies:
'@vue/devtools-shared': 7.6.2
@@ -9593,10 +9855,37 @@ snapshots:
speakingurl: 14.0.1
superjson: 2.2.1
+ '@vue/devtools-kit@7.6.8':
+ dependencies:
+ '@vue/devtools-shared': 7.6.8
+ birpc: 0.2.19
+ hookable: 5.5.3
+ mitt: 3.0.1
+ perfect-debounce: 1.0.0
+ speakingurl: 14.0.1
+ superjson: 2.2.1
+
'@vue/devtools-shared@7.6.2':
dependencies:
rfdc: 1.4.1
+ '@vue/devtools-shared@7.6.8':
+ dependencies:
+ rfdc: 1.4.1
+
+ '@vue/language-core@2.1.10(typescript@5.6.3)':
+ dependencies:
+ '@volar/language-core': 2.4.8
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-vue2': 2.7.16
+ '@vue/shared': 3.5.13
+ alien-signals: 0.2.0
+ minimatch: 9.0.5
+ muggle-string: 0.4.1
+ path-browserify: 1.0.1
+ optionalDependencies:
+ typescript: 5.6.3
+
'@vue/language-core@2.1.10(typescript@5.7.2)':
dependencies:
'@volar/language-core': 2.4.8
@@ -9627,6 +9916,12 @@ snapshots:
'@vue/shared': 3.5.13
csstype: 3.1.3
+ '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.6.3))':
+ dependencies:
+ '@vue/compiler-ssr': 3.5.13
+ '@vue/shared': 3.5.13
+ vue: 3.5.13(typescript@5.6.3)
+
'@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.7.2))':
dependencies:
'@vue/compiler-ssr': 3.5.13
@@ -9640,6 +9935,11 @@ snapshots:
js-beautify: 1.15.1
vue-component-type-helpers: 2.0.13
+ '@vue/tsconfig@0.7.0(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))':
+ optionalDependencies:
+ typescript: 5.6.3
+ vue: 3.5.13(typescript@5.6.3)
+
abbrev@1.1.1: {}
abbrev@2.0.0: {}
@@ -9703,8 +10003,7 @@ snapshots:
require-from-string: 2.0.2
uri-js: 4.4.1
- alien-signals@0.2.0:
- optional: true
+ alien-signals@0.2.0: {}
ansi-colors@4.1.3: {}
@@ -9724,6 +10023,8 @@ snapshots:
ansi-styles@6.1.0: {}
+ ansi-styles@6.2.1: {}
+
any-promise@1.3.0: {}
anymatch@3.1.3:
@@ -9758,8 +10059,6 @@ snapshots:
delegates: 1.0.0
readable-stream: 3.6.0
- arg@5.0.2: {}
-
argparse@1.0.10:
dependencies:
sprintf-js: 1.0.3
@@ -9906,6 +10205,8 @@ snapshots:
birpc@0.2.17: {}
+ birpc@0.2.19: {}
+
boolbase@1.0.0: {}
brace-expansion@1.1.11:
@@ -9936,8 +10237,6 @@ snapshots:
dependencies:
node-int64: 0.4.0
- buffer-crc32@0.2.13: {}
-
buffer-crc32@1.0.0: {}
buffer-from@1.1.2: {}
@@ -9981,8 +10280,6 @@ snapshots:
callsites@3.1.0: {}
- camelcase-css@2.0.1: {}
-
camelcase@5.3.1: {}
camelcase@6.3.0: {}
@@ -10022,25 +10319,6 @@ snapshots:
check-error@2.1.1: {}
- cheerio-select@2.1.0:
- dependencies:
- boolbase: 1.0.0
- css-select: 5.1.0
- css-what: 6.1.0
- domelementtype: 2.3.0
- domhandler: 5.0.3
- domutils: 3.0.1
-
- cheerio@1.0.0-rc.12:
- dependencies:
- cheerio-select: 2.1.0
- dom-serializer: 2.0.0
- domhandler: 5.0.3
- domutils: 3.0.1
- htmlparser2: 8.0.2
- parse5: 7.1.2
- parse5-htmlparser2-tree-adapter: 7.0.0
-
chokidar@3.6.0:
dependencies:
anymatch: 3.1.3
@@ -10305,8 +10583,7 @@ snapshots:
db0@0.2.1: {}
- de-indent@1.0.2:
- optional: true
+ de-indent@1.0.2: {}
debug@2.6.9:
dependencies:
@@ -10363,8 +10640,6 @@ snapshots:
devalue@5.1.1: {}
- didyoumean@1.2.2: {}
-
diff-sequences@29.6.3: {}
diff@7.0.0: {}
@@ -10373,8 +10648,6 @@ snapshots:
dependencies:
path-type: 4.0.0
- dlv@1.1.3: {}
-
dom-accessibility-api@0.5.14: {}
dom-accessibility-api@0.6.3: {}
@@ -10437,15 +10710,16 @@ snapshots:
iconv-lite: 0.6.3
optional: true
- end-of-stream@1.4.4:
- dependencies:
- once: 1.4.0
-
enhanced-resolve@5.15.0:
dependencies:
graceful-fs: 4.2.10
tapable: 2.2.1
+ enhanced-resolve@5.17.1:
+ dependencies:
+ graceful-fs: 4.2.10
+ tapable: 2.2.1
+
entities@4.5.0: {}
error-ex@1.3.2:
@@ -10685,6 +10959,21 @@ snapshots:
signal-exit: 4.1.0
strip-final-newline: 3.0.0
+ execa@9.5.2:
+ dependencies:
+ '@sindresorhus/merge-streams': 4.0.0
+ cross-spawn: 7.0.6
+ figures: 6.1.0
+ get-stream: 9.0.1
+ human-signals: 8.0.0
+ is-plain-obj: 4.1.0
+ is-stream: 4.0.1
+ npm-run-path: 6.0.0
+ pretty-ms: 9.2.0
+ signal-exit: 4.1.0
+ strip-final-newline: 4.0.0
+ yoctocolors: 2.1.1
+
exit@0.1.2: {}
expect-type@1.1.0: {}
@@ -10704,16 +10993,6 @@ snapshots:
pathe: 1.1.2
ufo: 1.5.4
- extract-zip@2.0.1:
- dependencies:
- debug: 4.4.0(supports-color@9.4.0)
- get-stream: 5.2.0
- yauzl: 2.10.0
- optionalDependencies:
- '@types/yauzl': 2.10.0
- transitivePeerDependencies:
- - supports-color
-
fast-deep-equal@3.1.3: {}
fast-diff@1.2.0: {}
@@ -10742,14 +11021,14 @@ snapshots:
dependencies:
bser: 2.1.1
- fd-slicer@1.1.0:
- dependencies:
- pend: 1.2.0
-
fdir@6.4.2(picomatch@4.0.2):
optionalDependencies:
picomatch: 4.0.2
+ figures@6.1.0:
+ dependencies:
+ is-unicode-supported: 2.1.0
+
file-entry-cache@8.0.0:
dependencies:
flat-cache: 4.0.1
@@ -10839,14 +11118,15 @@ snapshots:
get-port-please@3.1.2: {}
- get-stream@5.2.0:
- dependencies:
- pump: 3.0.0
-
get-stream@6.0.1: {}
get-stream@8.0.1: {}
+ get-stream@9.0.1:
+ dependencies:
+ '@sec-ant/readable-stream': 0.4.1
+ is-stream: 4.0.1
+
giget@1.2.3:
dependencies:
citty: 0.1.6
@@ -10973,8 +11253,7 @@ snapshots:
dependencies:
function-bind: 1.1.2
- he@1.2.0:
- optional: true
+ he@1.2.0: {}
hookable@5.5.3: {}
@@ -10988,13 +11267,6 @@ snapshots:
html-tags@3.3.1: {}
- htmlparser2@8.0.2:
- dependencies:
- domelementtype: 2.3.0
- domhandler: 5.0.3
- domutils: 3.0.1
- entities: 4.5.0
-
http-errors@2.0.0:
dependencies:
depd: 2.0.0
@@ -11034,6 +11306,8 @@ snapshots:
human-signals@5.0.0: {}
+ human-signals@8.0.0: {}
+
iconv-lite@0.6.3:
dependencies:
safer-buffer: 2.1.2
@@ -11145,6 +11419,8 @@ snapshots:
is-path-inside@4.0.0: {}
+ is-plain-obj@4.1.0: {}
+
is-potential-custom-element-name@1.0.1: {}
is-reference@1.2.1:
@@ -11163,6 +11439,10 @@ snapshots:
is-stream@3.0.0: {}
+ is-stream@4.0.1: {}
+
+ is-unicode-supported@2.1.0: {}
+
is-what@4.1.8: {}
is-wsl@2.2.0:
@@ -11181,6 +11461,8 @@ snapshots:
isexe@2.0.0: {}
+ isexe@3.1.1: {}
+
istanbul-lib-coverage@3.2.0: {}
istanbul-lib-instrument@5.2.0:
@@ -11616,6 +11898,8 @@ snapshots:
json-parse-even-better-errors@2.3.1: {}
+ json-parse-even-better-errors@4.0.0: {}
+
json-schema-traverse@0.4.1: {}
json-schema-traverse@1.0.0: {}
@@ -11708,7 +11992,6 @@ snapshots:
lightningcss-linux-x64-musl: 1.27.0
lightningcss-win32-arm64-msvc: 1.27.0
lightningcss-win32-x64-msvc: 1.27.0
- optional: true
lilconfig@3.1.3: {}
@@ -11737,8 +12020,6 @@ snapshots:
load-tsconfig@0.2.3: {}
- local-pkg@0.4.3: {}
-
local-pkg@0.5.1:
dependencies:
mlly: 1.7.3
@@ -11820,6 +12101,8 @@ snapshots:
mdn-data@2.0.30: {}
+ memorystream@0.3.1: {}
+
merge-anything@5.1.7:
dependencies:
is-what: 4.1.8
@@ -11879,8 +12162,6 @@ snapshots:
dependencies:
yallist: 4.0.0
- minipass@4.2.5: {}
-
minipass@5.0.0: {}
minipass@7.1.2: {}
@@ -11928,8 +12209,7 @@ snapshots:
ms@2.1.3: {}
- muggle-string@0.4.1:
- optional: true
+ muggle-string@0.4.1: {}
mz@2.7.0:
dependencies:
@@ -11941,6 +12221,8 @@ snapshots:
nanoid@5.0.7: {}
+ nanoid@5.0.9: {}
+
nanotar@0.1.1: {}
natural-compare@1.4.0: {}
@@ -12092,6 +12374,19 @@ snapshots:
normalize-range@0.1.2: {}
+ npm-normalize-package-bin@4.0.0: {}
+
+ npm-run-all2@7.0.2:
+ dependencies:
+ ansi-styles: 6.2.1
+ cross-spawn: 7.0.6
+ memorystream: 0.3.1
+ minimatch: 9.0.5
+ pidtree: 0.6.0
+ read-package-json-fast: 4.0.0
+ shell-quote: 1.8.1
+ which: 5.0.0
+
npm-run-path@4.0.1:
dependencies:
path-key: 3.1.1
@@ -12100,6 +12395,11 @@ snapshots:
dependencies:
path-key: 4.0.0
+ npm-run-path@6.0.0:
+ dependencies:
+ path-key: 4.0.0
+ unicorn-magic: 0.3.0
+
npmlog@5.0.1:
dependencies:
are-we-there-yet: 2.0.0
@@ -12239,8 +12539,6 @@ snapshots:
object-assign@4.1.1: {}
- object-hash@3.0.0: {}
-
ofetch@1.4.1:
dependencies:
destr: 2.0.3
@@ -12343,6 +12641,8 @@ snapshots:
index-to-position: 0.1.2
type-fest: 4.30.0
+ parse-ms@4.0.0: {}
+
parse-path@7.0.0:
dependencies:
protocols: 2.0.1
@@ -12351,19 +12651,13 @@ snapshots:
dependencies:
parse-path: 7.0.0
- parse5-htmlparser2-tree-adapter@7.0.0:
- dependencies:
- domhandler: 5.0.3
- parse5: 7.1.2
-
parse5@7.1.2:
dependencies:
entities: 4.5.0
parseurl@1.3.3: {}
- path-browserify@1.0.1:
- optional: true
+ path-browserify@1.0.1: {}
path-exists@4.0.0: {}
@@ -12393,8 +12687,6 @@ snapshots:
pathval@2.0.0: {}
- pend@1.2.0: {}
-
perfect-debounce@1.0.0: {}
picocolors@1.1.1: {}
@@ -12403,7 +12695,7 @@ snapshots:
picomatch@4.0.2: {}
- pify@2.3.0: {}
+ pidtree@0.6.0: {}
pirates@4.0.5: {}
@@ -12456,25 +12748,6 @@ snapshots:
dependencies:
postcss: 8.4.49
- postcss-import@15.1.0(postcss@8.4.49):
- dependencies:
- postcss: 8.4.49
- postcss-value-parser: 4.2.0
- read-cache: 1.0.0
- resolve: 1.22.8
-
- postcss-js@4.0.1(postcss@8.4.49):
- dependencies:
- camelcase-css: 2.0.1
- postcss: 8.4.49
-
- postcss-load-config@4.0.2(postcss@8.4.49):
- dependencies:
- lilconfig: 3.1.3
- yaml: 2.6.0
- optionalDependencies:
- postcss: 8.4.49
-
postcss-load-config@6.0.1(jiti@2.4.0)(postcss@8.4.49)(yaml@2.6.0):
dependencies:
lilconfig: 3.1.3
@@ -12641,6 +12914,10 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
+ pretty-ms@9.2.0:
+ dependencies:
+ parse-ms: 4.0.0
+
process-nextick-args@2.0.1: {}
process@0.11.10: {}
@@ -12654,11 +12931,6 @@ snapshots:
protocols@2.0.1: {}
- pump@3.0.0:
- dependencies:
- end-of-stream: 1.4.4
- once: 1.4.0
-
punycode@2.3.1: {}
pure-rand@6.0.1: {}
@@ -12709,9 +12981,10 @@ snapshots:
dependencies:
loose-envify: 1.4.0
- read-cache@1.0.0:
+ read-package-json-fast@4.0.0:
dependencies:
- pify: 2.3.0
+ json-parse-even-better-errors: 4.0.0
+ npm-normalize-package-bin: 4.0.0
readable-stream@2.3.7:
dependencies:
@@ -13129,6 +13402,8 @@ snapshots:
strip-final-newline@3.0.0: {}
+ strip-final-newline@4.0.0: {}
+
strip-indent@3.0.0:
dependencies:
min-indent: 1.0.1
@@ -13234,32 +13509,7 @@ snapshots:
system-architecture@0.1.0: {}
- tailwindcss@3.4.16:
- dependencies:
- '@alloc/quick-lru': 5.2.0
- arg: 5.0.2
- chokidar: 3.6.0
- didyoumean: 1.2.2
- dlv: 1.1.3
- fast-glob: 3.3.2
- glob-parent: 6.0.2
- is-glob: 4.0.3
- jiti: 1.21.6
- lilconfig: 3.1.3
- micromatch: 4.0.8
- normalize-path: 3.0.0
- object-hash: 3.0.0
- picocolors: 1.1.1
- postcss: 8.4.49
- postcss-import: 15.1.0(postcss@8.4.49)
- postcss-js: 4.0.1(postcss@8.4.49)
- postcss-load-config: 4.0.2(postcss@8.4.49)
- postcss-nested: 6.2.0(postcss@8.4.49)
- postcss-selector-parser: 6.1.2
- resolve: 1.22.8
- sucrase: 3.35.0
- transitivePeerDependencies:
- - ts-node
+ tailwindcss@4.0.0-beta.8: {}
tapable@2.2.1: {}
@@ -13420,6 +13670,8 @@ snapshots:
typescript@5.4.2: {}
+ typescript@5.6.3: {}
+
typescript@5.7.2: {}
ufo@1.5.4: {}
@@ -13500,6 +13752,8 @@ snapshots:
unicorn-magic@0.1.0: {}
+ unicorn-magic@0.3.0: {}
+
unimport@3.14.4(rollup@4.28.1):
dependencies:
'@rollup/pluginutils': 5.1.3(rollup@4.28.1)
@@ -13622,6 +13876,10 @@ snapshots:
dependencies:
vite: 5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)
+ vite-hot-client@0.2.4(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)):
+ dependencies:
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+
vite-node@2.1.8(@types/node@18.19.67)(lightningcss@1.27.0)(terser@5.17.7):
dependencies:
cac: 6.7.14
@@ -13699,6 +13957,22 @@ snapshots:
- rollup
- supports-color
+ vite-plugin-inspect@0.8.9(rollup@4.28.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)):
+ dependencies:
+ '@antfu/utils': 0.7.10
+ '@rollup/pluginutils': 5.1.3(rollup@4.28.1)
+ debug: 4.4.0(supports-color@9.4.0)
+ error-stack-parser-es: 0.1.5
+ fs-extra: 11.2.0
+ open: 10.1.0
+ perfect-debounce: 1.0.0
+ picocolors: 1.1.1
+ sirv: 3.0.0
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ transitivePeerDependencies:
+ - rollup
+ - supports-color
+
vite-plugin-solid@2.11.0(@testing-library/jest-dom@6.6.3)(solid-js@1.9.3)(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)):
dependencies:
'@babel/core': 7.26.0
@@ -13714,6 +13988,22 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ vite-plugin-vue-devtools@7.6.8(rollup@4.28.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.6.3)):
+ dependencies:
+ '@vue/devtools-core': 7.6.8(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))(vue@3.5.13(typescript@5.6.3))
+ '@vue/devtools-kit': 7.6.8
+ '@vue/devtools-shared': 7.6.8
+ execa: 9.5.2
+ sirv: 3.0.0
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ vite-plugin-inspect: 0.8.9(rollup@4.28.1)(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
+ vite-plugin-vue-inspector: 5.3.1(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0))
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - rollup
+ - supports-color
+ - vue
+
vite-plugin-vue-inspector@5.1.3(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)):
dependencies:
'@babel/core': 7.26.0
@@ -13729,6 +14019,21 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ vite-plugin-vue-inspector@5.3.1(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)):
+ dependencies:
+ '@babel/core': 7.26.0
+ '@babel/plugin-proposal-decorators': 7.24.1(@babel/core@7.26.0)
+ '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.0)
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.0)
+ '@babel/plugin-transform-typescript': 7.26.3(@babel/core@7.26.0)
+ '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.0)
+ '@vue/compiler-dom': 3.5.13
+ kolorist: 1.8.0
+ magic-string: 0.30.14
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+ transitivePeerDependencies:
+ - supports-color
+
vite@5.4.11(@types/node@18.19.67)(lightningcss@1.27.0)(terser@5.17.7):
dependencies:
esbuild: 0.21.5
@@ -13751,10 +14056,27 @@ snapshots:
lightningcss: 1.27.0
terser: 5.17.7
+ vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0):
+ dependencies:
+ esbuild: 0.24.0
+ postcss: 8.4.49
+ rollup: 4.28.1
+ optionalDependencies:
+ '@types/node': 22.10.1
+ fsevents: 2.3.3
+ jiti: 2.4.0
+ lightningcss: 1.27.0
+ terser: 5.17.7
+ yaml: 2.6.0
+
vitefu@1.0.4(vite@5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)):
optionalDependencies:
vite: 5.4.11(@types/node@22.10.1)(lightningcss@1.27.0)(terser@5.17.7)
+ vitefu@1.0.4(vite@6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)):
+ optionalDependencies:
+ vite: 6.0.4(@types/node@22.10.1)(jiti@2.4.0)(lightningcss@1.27.0)(terser@5.17.7)(yaml@2.6.0)
+
vitest@2.1.8(@types/node@18.19.67)(jsdom@25.0.1)(lightningcss@1.27.0)(terser@5.17.7):
dependencies:
'@vitest/expect': 2.1.8
@@ -13863,6 +14185,13 @@ snapshots:
'@vue/devtools-api': 6.6.4
vue: 3.5.13(typescript@5.7.2)
+ vue-tsc@2.1.10(typescript@5.6.3):
+ dependencies:
+ '@volar/typescript': 2.4.8
+ '@vue/language-core': 2.1.10(typescript@5.6.3)
+ semver: 7.6.3
+ typescript: 5.6.3
+
vue-tsc@2.1.10(typescript@5.7.2):
dependencies:
'@volar/typescript': 2.4.8
@@ -13871,6 +14200,16 @@ snapshots:
typescript: 5.7.2
optional: true
+ vue@3.5.13(typescript@5.6.3):
+ dependencies:
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-sfc': 3.5.13
+ '@vue/runtime-dom': 3.5.13
+ '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.6.3))
+ '@vue/shared': 3.5.13
+ optionalDependencies:
+ typescript: 5.6.3
+
vue@3.5.13(typescript@5.7.2):
dependencies:
'@vue/compiler-dom': 3.5.13
@@ -13927,6 +14266,10 @@ snapshots:
dependencies:
isexe: 2.0.0
+ which@5.0.0:
+ dependencies:
+ isexe: 3.1.1
+
why-is-node-running@2.3.0:
dependencies:
siginfo: 2.0.0
@@ -13983,13 +14326,10 @@ snapshots:
y18n: 5.0.8
yargs-parser: 21.1.1
- yauzl@2.10.0:
- dependencies:
- buffer-crc32: 0.2.13
- fd-slicer: 1.1.0
-
yocto-queue@0.1.0: {}
+ yoctocolors@2.1.1: {}
+
zhead@2.2.4: {}
zimmerframe@1.1.2: {}