feat: добавить поддержку 20 framework exact modes

Добавлены exact modes:
- vue@vite и vue@webpack
- nuxt@vite и nuxt@webpack
- svelte@vite, svelte@webpack и sveltekit@vite
- angular@application и angular@webpack
- astro@vite
- solid@vite, solid@webpack и solid-start@vite
- preact@vite и preact@webpack
- qwik@vite
- lit@vite и lit@webpack
- alpine@vite и alpine@webpack

Для каждого mode реализованы изолированный adapter, нативный
framework-компонент, declarations, manifest, CSS и внешний asset URL.

Добавлены production integration-стенды с генерацией, typecheck,
сборкой и Playwright-проверкой рендера спрайта и Viewer.

Обновлены Viewer, RU/EN-гайды, README, technical reference и AI skills.
Итоговая матрица включает 29 exact modes.

Проверки:
- 48 unit-тестов
- 29 integration E2E-тестов
This commit is contained in:
2026-07-15 16:56:44 +03:00
parent e54ab4991c
commit 8b3365f957
378 changed files with 21188 additions and 650 deletions

View File

@@ -6,32 +6,9 @@ Combine SVG icons into one file and use them on an HTML page.
You do not need to install the package in your project.
This guide uses the following project structure:
```text
/
├── index.html
└── assets/
├── app-icons/
└── svg-icons/
├── check.svg
└── warning.svg
```
### 1. Create the sprite config
Choose a folder for the sprite. This example uses `assets/app-icons`. Create `svg-sprite.config.json` inside it:
```json
{
"mode": "standalone",
"name": "icons"
}
```
### 2. Set the icon source
`input` can point to a folder, an individual SVG file, or a glob pattern. To use multiple sources, provide an array with any combination of these values:
Choose a directory for the future SVG sprite, for example `assets/app-icons`, and create `svg-sprite.config.json` inside it. In `input`, specify the path to existing SVG files relative to the configuration file. There is no need to move or copy the icons.
```json
{
@@ -41,7 +18,7 @@ Choose a folder for the sprite. This example uses `assets/app-icons`. Create `sv
}
```
### 3. Generate the sprite
### 2. Generate the sprite
Pass the config path to the command:
@@ -62,7 +39,7 @@ assets/app-icons/.svg-sprite/
The `.svg-sprite` directory is created automatically and fully replaced on every generation. Do not edit its contents manually.
### 4. Use an icon
### 3. Use an icon
In `index.html`, point to the generated `sprite.svg`. After `#`, add the icon file name without the `.svg` extension:
@@ -72,12 +49,10 @@ In `index.html`, point to the generated `sprite.svg`. After `#`, add the icon fi
height="24"
aria-label="Done"
>
<use href="./assets/app-icons/.svg-sprite/sprite.svg#check"></use>
<use href="./assets/app-icons/.svg-sprite/sprite.svg#icon-name"></use>
</svg>
```
The icon from `check.svg` is available as `#check`.
## Debug and preview
`sprite.svg` is a technical file, not an icon gallery. Opening it does not provide a convenient view of the whole set. Gradients, masks, filters, and references to internal `id` values may also render with artifacts.