diff --git a/apps/link/.eslintrc.cjs b/apps/link/.eslintrc.cjs
new file mode 100644
index 00000000..d7599646
--- /dev/null
+++ b/apps/link/.eslintrc.cjs
@@ -0,0 +1,4 @@
+module.exports = {
+ root: true,
+ extends: ['custom'],
+};
\ No newline at end of file
diff --git a/apps/link/.gitignore b/apps/link/.gitignore
new file mode 100644
index 00000000..b9383764
--- /dev/null
+++ b/apps/link/.gitignore
@@ -0,0 +1,28 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+dist
+dist-ssr
+*.local
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+.DS_Store
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+public/assets
+.assetpack
+src/manifest.json
diff --git a/apps/link/.storybook/main.ts b/apps/link/.storybook/main.ts
new file mode 100644
index 00000000..095846bf
--- /dev/null
+++ b/apps/link/.storybook/main.ts
@@ -0,0 +1,2 @@
+// https://github.com/storybookjs/storybook/issues/29567
+export { main as default } from 'config-storybook';
\ No newline at end of file
diff --git a/apps/link/.storybook/preview.ts b/apps/link/.storybook/preview.ts
new file mode 100644
index 00000000..7d921d52
--- /dev/null
+++ b/apps/link/.storybook/preview.ts
@@ -0,0 +1,3 @@
+import { preview } from 'config-storybook';
+
+export default preview;
\ No newline at end of file
diff --git a/apps/link/README.md b/apps/link/README.md
new file mode 100644
index 00000000..fce48a8d
--- /dev/null
+++ b/apps/link/README.md
@@ -0,0 +1,199 @@
+# Link - PixiJS Creation Template + Web SDK Integration
+
+A modern game development setup that combines the power of **PixiJS Creation Template** with the **Web SDK monorepo ecosystem**, giving you the best of both worlds for professional game development.
+
+## ๐ฏ Purpose
+
+This project demonstrates how to integrate a standalone PixiJS Creation Template into the Web SDK monorepo while preserving all the valuable features from both ecosystems. It's perfect for developers who want:
+
+- **Professional PixiJS development tools** (AssetPack, Creation Engine, etc.)
+- **Modern monorepo benefits** (shared utilities, configurations, tooling)
+- **Flexibility** to use either approach based on project needs
+- **Scalability** for complex game development workflows
+
+## โจ Benefits
+
+### From PixiJS Creation Template
+- ๐ **Creation Engine** - Advanced game engine with built-in navigation, audio, and lifecycle management
+- ๐ฆ **AssetPack Integration** - Automatic asset optimization, sprite sheet generation, and manifest creation
+- ๐ฑ **Responsive Design** - Built-in viewport management and resize handling
+- ๐ต **Audio System** - Integrated background music and sound effects management
+- ๐๏ธ **Professional Architecture** - Screen-based navigation, popup system, and component organization
+- โก **Modern Tooling** - Latest PixiJS 8, TypeScript, Vite, and hot reload
+- ๐จ **UI Components** - Pre-built buttons, animations, and interactive elements
+
+### From Web SDK Monorepo
+- ๐ง **Shared Utilities** - Access to battle-tested functions for timing, randomization, and more
+- ๐ **Consistent Configs** - Unified ESLint, TypeScript, and build configurations
+- ๐ข **Monorepo Benefits** - Shared dependencies, cross-package imports, and unified tooling
+- ๐งช **Testing Infrastructure** - Storybook integration ready for component testing
+- ๐ **Deployment Pipeline** - Integration with existing Web SDK build and deployment processes
+- ๐ **Knowledge Sharing** - Learn from other apps and components in the ecosystem
+
+## ๐๏ธ Architecture
+
+```
+apps/link/
+โโโ src/
+โ โโโ app/ # Game screens, UI, and components
+โ โ โโโ screens/ # Screen-based navigation system
+โ โ โโโ popups/ # Modal popups and overlays
+โ โ โโโ ui/ # Reusable UI components
+โ โ โโโ utils/ # App-specific utilities
+โ โโโ engine/ # Creation Engine with plugins
+โ โโโ main.ts # Application entry point
+โ โโโ webSDKIntegration.ts # Bridge to Web SDK utilities
+โโโ raw-assets/ # Source assets (processed by AssetPack)
+โโโ public/ # Static assets and generated sprites
+โโโ scripts/ # AssetPack configuration and build tools
+โโโ package.json # Hybrid dependencies from both ecosystems
+```
+
+## ๐ฆ Getting Started
+
+### Prerequisites
+- Node.js 22.16.0+ (recommended)
+- pnpm 10.5.0+
+
+### Development
+```bash
+# From the monorepo root
+cd web-sdk
+pnpm install
+
+# Start development server
+pnpm run dev --filter=link
+
+# Access your app at http://localhost:3006
+```
+
+### Building
+```bash
+# Build for production
+pnpm run build --filter=link
+```
+
+## ๐ ๏ธ Key Features
+
+### Creation Engine
+The app uses a sophisticated engine that provides:
+- **Screen Management** - Navigate between different game screens
+- **Audio Management** - Background music and sound effects
+- **Popup System** - Modal dialogs and overlays
+- **Resize Handling** - Automatic viewport adjustments
+- **Asset Loading** - Efficient resource management
+
+### AssetPack Integration
+Automatic asset processing that:
+- **Optimizes Images** - Compression and format conversion
+- **Generates Sprites** - Automatic sprite sheet creation
+- **Creates Manifests** - Asset loading configurations
+- **Handles Multiple Formats** - Support for various image and audio formats
+
+### Web SDK Utilities
+Access to proven utilities:
+```typescript
+import { WebSDKIntegration, utils } from './webSDKIntegration';
+
+// Random number generation
+const randomValue = utils.randomInteger({ min: 1, max: 100 });
+
+// Async timing utilities
+await utils.waitForTimeout(1000);
+await utils.waitForResolve(callback);
+
+// Viewport and responsive design
+const isPortrait = WebSDKIntegration.isPortrait();
+const scaleFactor = WebSDKIntegration.getScaleFactor();
+```
+
+## ๐ฎ Example Usage
+
+### Creating a New Screen
+```typescript
+import { Container } from 'pixi.js';
+import { WebSDKIntegration, utils } from '../../../webSDKIntegration';
+
+export class MyGameScreen extends Container {
+ public static assetBundles = ["gameplay"];
+
+ constructor() {
+ super();
+ this.setupGameplay();
+ }
+
+ private async setupGameplay() {
+ // Use Web SDK utilities
+ const randomSeed = utils.randomInteger({ min: 1, max: 1000 });
+
+ // Access engine features
+ const stage = WebSDKIntegration.getStage();
+
+ // Your game logic here
+ }
+
+ public resize(width: number, height: number) {
+ // Responsive design with Web SDK helpers
+ const scaleFactor = WebSDKIntegration.getScaleFactor();
+ this.scale.set(scaleFactor);
+ }
+}
+```
+
+### Using AssetPack
+1. Add assets to `raw-assets/` folder
+2. AssetPack automatically processes them during development
+3. Access optimized assets in your code:
+```typescript
+// AssetPack generates optimized versions automatically
+const texture = await Assets.load('my-sprite.png');
+```
+
+## ๐ Integration Benefits
+
+### Why This Hybrid Approach?
+
+1. **Best of Both Worlds** - Get professional PixiJS tooling + monorepo benefits
+2. **No Vendor Lock-in** - Can evolve toward pure Web SDK or pure PixiJS as needed
+3. **Learning Path** - Gradual adoption of Web SDK patterns while keeping familiar PixiJS structure
+4. **Team Flexibility** - Accommodate different developer preferences and skills
+5. **Future-Proof** - Easy to migrate features between approaches
+
+### When to Use This Setup
+
+โ
**Perfect for:**
+- Complex PixiJS games that need professional tooling
+- Teams wanting to leverage existing Web SDK infrastructure
+- Projects requiring both standalone and integrated development
+- Learning and experimenting with different architectures
+
+โ **Consider alternatives for:**
+- Simple games that don't need advanced asset processing
+- Pure Web SDK projects following established patterns
+- Projects with strict architectural requirements
+
+## ๐ค Contributing
+
+This setup demonstrates integration patterns that can be applied to other projects in the monorepo. Feel free to:
+- Enhance the Web SDK integration layer
+- Add more utility bridges between systems
+- Share learnings with other app developers
+- Contribute improvements back to both ecosystems
+
+## ๐ Resources
+
+- [PixiJS Creation Template Documentation](https://github.com/pixijs/create-pixi)
+- [Web SDK Documentation](../../../README.md)
+- [AssetPack Documentation](https://assetpack.org/)
+- [PixiJS Documentation](https://pixijs.download/release/docs/index.html)
+
+## ๐ฏ Next Steps
+
+1. **Explore the Creation Engine** - Check out screen navigation and audio systems
+2. **Experiment with AssetPack** - Add assets and see automatic optimization
+3. **Use Web SDK Utilities** - Integrate more shared functions as needed
+4. **Build Your Game** - Start developing with this powerful hybrid setup
+
+---
+
+*This project showcases how modern web development can benefit from combining specialized tools with monorepo architectures for maximum flexibility and power.*
\ No newline at end of file
diff --git a/apps/link/index.html b/apps/link/index.html
new file mode 100644
index 00000000..c618e966
--- /dev/null
+++ b/apps/link/index.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+ PixiJS - Template
+
+
+
+
+
+
+
diff --git a/apps/link/package.json b/apps/link/package.json
new file mode 100644
index 00000000..2a025eb5
--- /dev/null
+++ b/apps/link/package.json
@@ -0,0 +1,36 @@
+{
+ "name": "link",
+ "version": "0.0.0",
+ "private": true,
+ "license": "MIT",
+ "type": "module",
+ "scripts": {
+ "format": "prettier --write --ignore-path=../../.prettierignore .",
+ "lint": "eslint \"src\"",
+ "storybook": "cross-env PUBLIC_CHROMATIC=true storybook dev -p 6006 public",
+ "dev": "vite dev --host --port 3006",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "@esotericsoftware/spine-pixi-v8": "^4.2.74",
+ "@pixi/sound": "^6.0.1",
+ "@pixi/ui": "^2.2.2",
+ "motion": "^12.4.7",
+ "pixi.js": "^8.8.1",
+ "lodash": "4.17.16",
+ "@types/lodash": "4.17.16",
+ "constants-shared": "workspace:*",
+ "utils-shared": "workspace:*",
+ "utils-sound": "workspace:*",
+ "vite": "6.2.0"
+ },
+ "devDependencies": {
+ "@assetpack/core": "^1.4.0",
+ "cross-env": "^10.0.0",
+ "eslint": "9.21.0",
+ "eslint-config-custom": "workspace:*",
+ "config-ts": "workspace:*",
+ "typescript": "~5.7.3"
+ }
+}
diff --git a/apps/link/public/favicon.png b/apps/link/public/favicon.png
new file mode 100644
index 00000000..fdc13bcf
Binary files /dev/null and b/apps/link/public/favicon.png differ
diff --git a/apps/link/public/style.css b/apps/link/public/style.css
new file mode 100644
index 00000000..f4524fd0
--- /dev/null
+++ b/apps/link/public/style.css
@@ -0,0 +1,15 @@
+body {
+ margin: 0;
+ padding: 0;
+ color: rgba(255, 255, 255, 0.87);
+ background-color: #000000;
+}
+
+#app {
+ width: 100%;
+ height: 100vh;
+ overflow: hidden;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
diff --git a/apps/link/raw-assets/main{m}/logo-white.svg b/apps/link/raw-assets/main{m}/logo-white.svg
new file mode 100644
index 00000000..ab56cb20
--- /dev/null
+++ b/apps/link/raw-assets/main{m}/logo-white.svg
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/apps/link/raw-assets/main{m}/sounds/bgm-main.mp3 b/apps/link/raw-assets/main{m}/sounds/bgm-main.mp3
new file mode 100644
index 00000000..67a94ca9
Binary files /dev/null and b/apps/link/raw-assets/main{m}/sounds/bgm-main.mp3 differ
diff --git a/apps/link/raw-assets/main{m}/sounds/sfx-hover.wav b/apps/link/raw-assets/main{m}/sounds/sfx-hover.wav
new file mode 100644
index 00000000..8db0f190
Binary files /dev/null and b/apps/link/raw-assets/main{m}/sounds/sfx-hover.wav differ
diff --git a/apps/link/raw-assets/main{m}/sounds/sfx-press.wav b/apps/link/raw-assets/main{m}/sounds/sfx-press.wav
new file mode 100644
index 00000000..d0c28ce9
Binary files /dev/null and b/apps/link/raw-assets/main{m}/sounds/sfx-press.wav differ
diff --git a/apps/link/raw-assets/main{m}/ui{tps}/button.png b/apps/link/raw-assets/main{m}/ui{tps}/button.png
new file mode 100644
index 00000000..475c202b
Binary files /dev/null and b/apps/link/raw-assets/main{m}/ui{tps}/button.png differ
diff --git a/apps/link/raw-assets/main{m}/ui{tps}/icon-pause.png b/apps/link/raw-assets/main{m}/ui{tps}/icon-pause.png
new file mode 100644
index 00000000..725736c0
Binary files /dev/null and b/apps/link/raw-assets/main{m}/ui{tps}/icon-pause.png differ
diff --git a/apps/link/raw-assets/main{m}/ui{tps}/icon-settings.png b/apps/link/raw-assets/main{m}/ui{tps}/icon-settings.png
new file mode 100644
index 00000000..8cd9614a
Binary files /dev/null and b/apps/link/raw-assets/main{m}/ui{tps}/icon-settings.png differ
diff --git a/apps/link/raw-assets/main{m}/ui{tps}/rounded-rectangle.png b/apps/link/raw-assets/main{m}/ui{tps}/rounded-rectangle.png
new file mode 100644
index 00000000..17401993
Binary files /dev/null and b/apps/link/raw-assets/main{m}/ui{tps}/rounded-rectangle.png differ
diff --git a/apps/link/raw-assets/preload{m}/logo.svg b/apps/link/raw-assets/preload{m}/logo.svg
new file mode 100644
index 00000000..81b64185
--- /dev/null
+++ b/apps/link/raw-assets/preload{m}/logo.svg
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/apps/link/scripts/assetpack-vite-plugin.ts b/apps/link/scripts/assetpack-vite-plugin.ts
new file mode 100644
index 00000000..392796a1
--- /dev/null
+++ b/apps/link/scripts/assetpack-vite-plugin.ts
@@ -0,0 +1,53 @@
+// vite.config.mts
+import type { AssetPackConfig } from "@assetpack/core";
+import { AssetPack } from "@assetpack/core";
+import { pixiPipes } from "@assetpack/core/pixi";
+import type { Plugin, ResolvedConfig } from "vite";
+
+export function assetpackPlugin() {
+ const apConfig = {
+ entry: "./raw-assets",
+ pipes: [
+ ...pixiPipes({
+ cacheBust: false,
+ manifest: {
+ output: "./src/manifest.json",
+ },
+ }),
+ ],
+ } as AssetPackConfig;
+ let mode: ResolvedConfig["command"];
+ let ap: AssetPack | undefined;
+
+ return {
+ name: "vite-plugin-assetpack",
+ configResolved(resolvedConfig) {
+ mode = resolvedConfig.command;
+ if (!resolvedConfig.publicDir) return;
+ if (apConfig.output) return;
+ // remove the root from the public dir
+ const publicDir = resolvedConfig.publicDir.replace(process.cwd(), "");
+
+ if (process.platform === "win32") {
+ apConfig.output = `${publicDir}/assets/`;
+ } else {
+ apConfig.output = `.${publicDir}/assets/`;
+ }
+ },
+ buildStart: async () => {
+ if (mode === "serve") {
+ if (ap) return;
+ ap = new AssetPack(apConfig);
+ await ap.watch();
+ } else {
+ await new AssetPack(apConfig).run();
+ }
+ },
+ buildEnd: async () => {
+ if (ap) {
+ await ap.stop();
+ ap = undefined;
+ }
+ },
+ } as Plugin;
+}
diff --git a/apps/link/src/app/getEngine.ts b/apps/link/src/app/getEngine.ts
new file mode 100644
index 00000000..3dc2080e
--- /dev/null
+++ b/apps/link/src/app/getEngine.ts
@@ -0,0 +1,15 @@
+import type { CreationEngine } from "../engine/engine";
+
+let instance: CreationEngine | null = null;
+
+/**
+ * Get the main application engine
+ * This is a simple way to access the engine instance from anywhere in the app
+ */
+export function engine(): CreationEngine {
+ return instance!;
+}
+
+export function setEngine(app: CreationEngine) {
+ instance = app;
+}
diff --git a/apps/link/src/app/popups/PausePopup.ts b/apps/link/src/app/popups/PausePopup.ts
new file mode 100644
index 00000000..6f1bfc2a
--- /dev/null
+++ b/apps/link/src/app/popups/PausePopup.ts
@@ -0,0 +1,88 @@
+import { animate } from "motion";
+import { BlurFilter, Container, Sprite, Texture } from "pixi.js";
+
+import { engine } from "../getEngine";
+import { Button } from "../ui/Button";
+import { Label } from "../ui/Label";
+import { RoundedBox } from "../ui/RoundedBox";
+
+/** Popup that shows up when gameplay is paused */
+export class PausePopup extends Container {
+ /** The dark semi-transparent background covering current screen */
+ private bg: Sprite;
+ /** Container for the popup UI components */
+ private panel: Container;
+ /** The popup title label */
+ private title: Label;
+ /** Button that closes the popup */
+ private doneButton: Button;
+ /** The panel background */
+ private panelBase: RoundedBox;
+
+ constructor() {
+ super();
+
+ this.bg = new Sprite(Texture.WHITE);
+ this.bg.tint = 0x0;
+ this.bg.interactive = true;
+ this.addChild(this.bg);
+
+ this.panel = new Container();
+ this.addChild(this.panel);
+
+ this.panelBase = new RoundedBox({ height: 300 });
+ this.panel.addChild(this.panelBase);
+
+ this.title = new Label({
+ text: "Paused",
+ style: { fill: 0xec1561, fontSize: 50 },
+ });
+ this.title.y = -80;
+ this.panel.addChild(this.title);
+
+ this.doneButton = new Button({ text: "Resume" });
+ this.doneButton.y = 70;
+ this.doneButton.onPress.connect(() => engine().navigation.dismissPopup());
+ this.panel.addChild(this.doneButton);
+ }
+
+ /** Resize the popup, fired whenever window size changes */
+ public resize(width: number, height: number) {
+ this.bg.width = width;
+ this.bg.height = height;
+ this.panel.x = width * 0.5;
+ this.panel.y = height * 0.5;
+ }
+
+ /** Present the popup, animated */
+ public async show() {
+ const currentEngine = engine();
+ if (currentEngine.navigation.currentScreen) {
+ currentEngine.navigation.currentScreen.filters = [
+ new BlurFilter({ strength: 5 }),
+ ];
+ }
+ this.bg.alpha = 0;
+ this.panel.pivot.y = -400;
+ animate(this.bg, { alpha: 0.8 }, { duration: 0.2, ease: "linear" });
+ await animate(
+ this.panel.pivot,
+ { y: 0 },
+ { duration: 0.3, ease: "backOut" },
+ );
+ }
+
+ /** Dismiss the popup, animated */
+ public async hide() {
+ const currentEngine = engine();
+ if (currentEngine.navigation.currentScreen) {
+ currentEngine.navigation.currentScreen.filters = [];
+ }
+ animate(this.bg, { alpha: 0 }, { duration: 0.2, ease: "linear" });
+ await animate(
+ this.panel.pivot,
+ { y: -500 },
+ { duration: 0.3, ease: "backIn" },
+ );
+ }
+}
diff --git a/apps/link/src/app/popups/SettingsPopup.ts b/apps/link/src/app/popups/SettingsPopup.ts
new file mode 100644
index 00000000..b85136dc
--- /dev/null
+++ b/apps/link/src/app/popups/SettingsPopup.ts
@@ -0,0 +1,150 @@
+import { List } from "@pixi/ui";
+import { animate } from "motion";
+import type { Text } from "pixi.js";
+import { BlurFilter, Container, Sprite, Texture } from "pixi.js";
+
+import { engine } from "../getEngine";
+import { Button } from "../ui/Button";
+import { Label } from "../ui/Label";
+import { RoundedBox } from "../ui/RoundedBox";
+import { VolumeSlider } from "../ui/VolumeSlider";
+import { userSettings } from "../utils/userSettings";
+
+/** Popup for volume */
+export class SettingsPopup extends Container {
+ /** The dark semi-transparent background covering current screen */
+ private bg: Sprite;
+ /** Container for the popup UI components */
+ private panel: Container;
+ /** The popup title label */
+ private title: Text;
+ /** Button that closes the popup */
+ private doneButton: Button;
+ /** The panel background */
+ private panelBase: RoundedBox;
+ /** The build version label */
+ private versionLabel: Text;
+ /** Layout that organises the UI components */
+ private layout: List;
+ /** Slider that changes the master volume */
+ private masterSlider: VolumeSlider;
+ /** Slider that changes background music volume */
+ private bgmSlider: VolumeSlider;
+ /** Slider that changes sound effects volume */
+ private sfxSlider: VolumeSlider;
+
+ constructor() {
+ super();
+
+ this.bg = new Sprite(Texture.WHITE);
+ this.bg.tint = 0x0;
+ this.bg.interactive = true;
+ this.addChild(this.bg);
+
+ this.panel = new Container();
+ this.addChild(this.panel);
+
+ this.panelBase = new RoundedBox({ height: 425 });
+ this.panel.addChild(this.panelBase);
+
+ this.title = new Label({
+ text: "Settings",
+ style: {
+ fill: 0xec1561,
+ fontSize: 50,
+ },
+ });
+ this.title.y = -this.panelBase.boxHeight * 0.5 + 60;
+ this.panel.addChild(this.title);
+
+ this.doneButton = new Button({ text: "OK" });
+ this.doneButton.y = this.panelBase.boxHeight * 0.5 - 78;
+ this.doneButton.onPress.connect(() => engine().navigation.dismissPopup());
+ this.panel.addChild(this.doneButton);
+
+ this.versionLabel = new Label({
+ text: `Version ${APP_VERSION}`,
+ style: {
+ fill: 0xffffff,
+ fontSize: 12,
+ },
+ });
+ this.versionLabel.alpha = 0.5;
+ this.versionLabel.y = this.panelBase.boxHeight * 0.5 - 15;
+ this.panel.addChild(this.versionLabel);
+
+ this.layout = new List({ type: "vertical", elementsMargin: 4 });
+ this.layout.x = -140;
+ this.layout.y = -80;
+ this.panel.addChild(this.layout);
+
+ this.masterSlider = new VolumeSlider("Master Volume");
+ this.masterSlider.onUpdate.connect((v) => {
+ userSettings.setMasterVolume(v / 100);
+ });
+ this.layout.addChild(this.masterSlider);
+
+ this.bgmSlider = new VolumeSlider("BGM Volume");
+ this.bgmSlider.onUpdate.connect((v) => {
+ userSettings.setBgmVolume(v / 100);
+ });
+ this.layout.addChild(this.bgmSlider);
+
+ this.sfxSlider = new VolumeSlider("SFX Volume");
+ this.sfxSlider.onUpdate.connect((v) => {
+ userSettings.setSfxVolume(v / 100);
+ });
+ this.layout.addChild(this.sfxSlider);
+ }
+
+ /** Resize the popup, fired whenever window size changes */
+ public resize(width: number, height: number) {
+ this.bg.width = width;
+ this.bg.height = height;
+ this.panel.x = width * 0.5;
+ this.panel.y = height * 0.5;
+ }
+
+ /** Set things up just before showing the popup */
+ public prepare() {
+ this.masterSlider.value = userSettings.getMasterVolume() * 100;
+ this.bgmSlider.value = userSettings.getBgmVolume() * 100;
+ this.sfxSlider.value = userSettings.getSfxVolume() * 100;
+ }
+
+ /** Present the popup, animated */
+ public async show() {
+ const currentEngine = engine();
+ if (currentEngine.navigation.currentScreen) {
+ currentEngine.navigation.currentScreen.filters = [
+ new BlurFilter({ strength: 4 }),
+ ];
+ }
+
+ this.bg.alpha = 0;
+ this.panel.pivot.y = -400;
+ animate(this.bg, { alpha: 0.8 }, { duration: 0.2, ease: "linear" });
+ await animate(
+ this.panel.pivot,
+ { y: 0 },
+ { duration: 0.3, ease: "backOut" },
+ );
+ }
+
+ /** Dismiss the popup, animated */
+ public async hide() {
+ const currentEngine = engine();
+ if (currentEngine.navigation.currentScreen) {
+ currentEngine.navigation.currentScreen.filters = [];
+ }
+ animate(this.bg, { alpha: 0 }, { duration: 0.2, ease: "linear" });
+ await animate(
+ this.panel.pivot,
+ { y: -500 },
+ {
+ duration: 0.3,
+ ease: "backIn",
+ },
+ );
+ }
+}
diff --git a/apps/link/src/app/screens/LoadScreen.ts b/apps/link/src/app/screens/LoadScreen.ts
new file mode 100644
index 00000000..6cd662e7
--- /dev/null
+++ b/apps/link/src/app/screens/LoadScreen.ts
@@ -0,0 +1,65 @@
+import { CircularProgressBar } from "@pixi/ui";
+import { animate } from "motion";
+import type { ObjectTarget } from "motion/react";
+import { Container, Sprite, Texture } from "pixi.js";
+
+/** Screen shown while loading assets */
+export class LoadScreen extends Container {
+ /** Assets bundles required by this screen */
+ public static assetBundles = ["preload"];
+ /** The PixiJS logo */
+ private pixiLogo: Sprite;
+ /** Progress Bar */
+ private progressBar: CircularProgressBar;
+
+ constructor() {
+ super();
+
+ this.progressBar = new CircularProgressBar({
+ backgroundColor: "#3d3d3d",
+ fillColor: "#e72264",
+ radius: 100,
+ lineWidth: 15,
+ value: 20,
+ backgroundAlpha: 0.5,
+ fillAlpha: 0.8,
+ cap: "round",
+ });
+
+ this.progressBar.x += this.progressBar.width / 2;
+ this.progressBar.y += -this.progressBar.height / 2;
+
+ this.addChild(this.progressBar);
+
+ this.pixiLogo = new Sprite({
+ texture: Texture.from("logo.svg"),
+ anchor: 0.5,
+ scale: 0.2,
+ });
+ this.addChild(this.pixiLogo);
+ }
+
+ public onLoad(progress: number) {
+ this.progressBar.progress = progress;
+ }
+
+ /** Resize the screen, fired whenever window size changes */
+ public resize(width: number, height: number) {
+ this.pixiLogo.position.set(width * 0.5, height * 0.5);
+ this.progressBar.position.set(width * 0.5, height * 0.5);
+ }
+
+ /** Show screen with animations */
+ public async show() {
+ this.alpha = 1;
+ }
+
+ /** Hide screen with animations */
+ public async hide() {
+ await animate(this, { alpha: 0 } as ObjectTarget, {
+ duration: 0.3,
+ ease: "linear",
+ delay: 1,
+ });
+ }
+}
diff --git a/apps/link/src/app/screens/main/Bouncer.ts b/apps/link/src/app/screens/main/Bouncer.ts
new file mode 100644
index 00000000..54010c71
--- /dev/null
+++ b/apps/link/src/app/screens/main/Bouncer.ts
@@ -0,0 +1,113 @@
+import { animate } from "motion";
+
+import { randomFloat } from "../../../engine/utils/random";
+import { waitFor } from "../../../engine/utils/waitFor";
+
+import { DIRECTION, Logo } from "./Logo";
+import type { MainScreen } from "./MainScreen";
+
+export class Bouncer {
+ private static readonly LOGO_COUNT = 3;
+ private static readonly ANIMATION_DURATION = 1;
+ private static readonly WAIT_DURATION = 0.5;
+
+ public screen!: MainScreen;
+
+ private allLogoArray: Logo[] = [];
+ private activeLogoArray: Logo[] = [];
+ private yMin = -400;
+ private yMax = 400;
+ private xMin = -400;
+ private xMax = 400;
+
+ public async show(screen: MainScreen): Promise {
+ this.screen = screen;
+ for (let i = 0; i < Bouncer.LOGO_COUNT; i++) {
+ this.add();
+ await waitFor(Bouncer.WAIT_DURATION);
+ }
+ }
+
+ public add(): void {
+ const width = randomFloat(this.xMin, this.xMax);
+ const height = randomFloat(this.yMin, this.yMax);
+ const logo = new Logo();
+
+ logo.alpha = 0;
+ logo.position.set(width, height);
+ animate(logo, { alpha: 1 }, { duration: Bouncer.ANIMATION_DURATION });
+ this.screen.mainContainer.addChild(logo);
+ this.allLogoArray.push(logo);
+ this.activeLogoArray.push(logo);
+ }
+
+ public remove(): void {
+ const logo = this.activeLogoArray.pop();
+ if (logo) {
+ animate(logo, { alpha: 0 }, { duration: Bouncer.ANIMATION_DURATION })
+ .then(() => {
+ this.screen.mainContainer.removeChild(logo);
+ const index = this.allLogoArray.indexOf(logo);
+ if (index !== -1) this.allLogoArray.splice(index, 1);
+ })
+ .catch((error) => {
+ console.error("Error during logo removal animation:", error);
+ });
+ }
+ }
+
+ public update(): void {
+ this.allLogoArray.forEach((entity) => {
+ this.setDirection(entity);
+ this.setLimits(entity);
+ });
+ }
+
+ private setDirection(logo: Logo): void {
+ switch (logo.direction) {
+ case DIRECTION.NE:
+ logo.x += logo.speed;
+ logo.y -= logo.speed;
+ break;
+ case DIRECTION.NW:
+ logo.x -= logo.speed;
+ logo.y -= logo.speed;
+ break;
+ case DIRECTION.SE:
+ logo.x += logo.speed;
+ logo.y += logo.speed;
+ break;
+ case DIRECTION.SW:
+ logo.x -= logo.speed;
+ logo.y += logo.speed;
+ break;
+ }
+ }
+
+ private setLimits(logo: Logo): void {
+ const { position, top, bottom, left, right } = logo;
+ let { direction } = logo;
+
+ if (position.y + top <= this.yMin) {
+ direction = direction === DIRECTION.NW ? DIRECTION.SW : DIRECTION.SE;
+ }
+ if (position.y + bottom >= this.yMax) {
+ direction = direction === DIRECTION.SE ? DIRECTION.NE : DIRECTION.NW;
+ }
+ if (position.x + left <= this.xMin) {
+ direction = direction === DIRECTION.NW ? DIRECTION.NE : DIRECTION.SE;
+ }
+ if (position.x + right >= this.xMax) {
+ direction = direction === DIRECTION.NE ? DIRECTION.NW : DIRECTION.SW;
+ }
+
+ logo.direction = direction;
+ }
+
+ public resize(w: number, h: number): void {
+ this.xMin = -w / 2;
+ this.xMax = w / 2;
+ this.yMin = -h / 2;
+ this.yMax = h / 2;
+ }
+}
diff --git a/apps/link/src/app/screens/main/Logo.ts b/apps/link/src/app/screens/main/Logo.ts
new file mode 100644
index 00000000..e427d947
--- /dev/null
+++ b/apps/link/src/app/screens/main/Logo.ts
@@ -0,0 +1,42 @@
+import { Sprite, Texture } from "pixi.js";
+
+import {
+ randomBool,
+ randomFloat,
+ randomInt,
+} from "../../../engine/utils/random";
+
+export enum DIRECTION {
+ NE,
+ NW,
+ SE,
+ SW,
+}
+
+export class Logo extends Sprite {
+ public direction!: DIRECTION;
+ public speed!: number;
+
+ get left() {
+ return -this.width * 0.5;
+ }
+
+ get right() {
+ return this.width * 0.5;
+ }
+
+ get top() {
+ return -this.height * 0.5;
+ }
+
+ get bottom() {
+ return this.height * 0.5;
+ }
+
+ constructor() {
+ const tex = randomBool() ? "logo.svg" : "logo-white.svg";
+ super({ texture: Texture.from(tex), anchor: 0.5, scale: 0.25 });
+ this.direction = randomInt(0, 3);
+ this.speed = randomFloat(1, 6);
+ }
+}
diff --git a/apps/link/src/app/screens/main/MainScreen.ts b/apps/link/src/app/screens/main/MainScreen.ts
new file mode 100644
index 00000000..8043870f
--- /dev/null
+++ b/apps/link/src/app/screens/main/MainScreen.ts
@@ -0,0 +1,163 @@
+import { FancyButton } from "@pixi/ui";
+import { animate } from "motion";
+import type { AnimationPlaybackControls } from "motion/react";
+import type { Ticker } from "pixi.js";
+import { Container } from "pixi.js";
+
+import { engine } from "../../getEngine";
+import { PausePopup } from "../../popups/PausePopup";
+import { SettingsPopup } from "../../popups/SettingsPopup";
+import { Button } from "../../ui/Button";
+
+import { Bouncer } from "./Bouncer";
+
+/** The screen that holds the app */
+export class MainScreen extends Container {
+ /** Assets bundles required by this screen */
+ public static assetBundles = ["main"];
+
+ public mainContainer: Container;
+ private pauseButton: FancyButton;
+ private settingsButton: FancyButton;
+ private addButton: FancyButton;
+ private removeButton: FancyButton;
+ private bouncer: Bouncer;
+ private paused = false;
+
+ constructor() {
+ super();
+
+ this.mainContainer = new Container();
+ this.addChild(this.mainContainer);
+ this.bouncer = new Bouncer();
+
+ const buttonAnimations = {
+ hover: {
+ props: {
+ scale: { x: 1.1, y: 1.1 },
+ },
+ duration: 100,
+ },
+ pressed: {
+ props: {
+ scale: { x: 0.9, y: 0.9 },
+ },
+ duration: 100,
+ },
+ };
+ this.pauseButton = new FancyButton({
+ defaultView: "icon-pause.png",
+ anchor: 0.5,
+ animations: buttonAnimations,
+ });
+ this.pauseButton.onPress.connect(() =>
+ engine().navigation.presentPopup(PausePopup),
+ );
+ this.addChild(this.pauseButton);
+
+ this.settingsButton = new FancyButton({
+ defaultView: "icon-settings.png",
+ anchor: 0.5,
+ animations: buttonAnimations,
+ });
+ this.settingsButton.onPress.connect(() =>
+ engine().navigation.presentPopup(SettingsPopup),
+ );
+ this.addChild(this.settingsButton);
+
+ this.addButton = new Button({
+ text: "Add",
+ width: 175,
+ height: 110,
+ });
+ this.addButton.onPress.connect(() => this.bouncer.add());
+ this.addChild(this.addButton);
+
+ this.removeButton = new Button({
+ text: "Remove",
+ width: 175,
+ height: 110,
+ });
+ this.removeButton.onPress.connect(() => this.bouncer.remove());
+ this.addChild(this.removeButton);
+ }
+
+ /** Prepare the screen just before showing */
+ public prepare() {}
+
+ /** Update the screen */
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ public update(_time: Ticker) {
+ if (this.paused) return;
+ this.bouncer.update();
+ }
+
+ /** Pause gameplay - automatically fired when a popup is presented */
+ public async pause() {
+ this.mainContainer.interactiveChildren = false;
+ this.paused = true;
+ }
+
+ /** Resume gameplay */
+ public async resume() {
+ this.mainContainer.interactiveChildren = true;
+ this.paused = false;
+ }
+
+ /** Fully reset */
+ public reset() {}
+
+ /** Resize the screen, fired whenever window size changes */
+ public resize(width: number, height: number) {
+ const centerX = width * 0.5;
+ const centerY = height * 0.5;
+
+ this.mainContainer.x = centerX;
+ this.mainContainer.y = centerY;
+ this.pauseButton.x = 30;
+ this.pauseButton.y = 30;
+ this.settingsButton.x = width - 30;
+ this.settingsButton.y = 30;
+ this.removeButton.x = width / 2 - 100;
+ this.removeButton.y = height - 75;
+ this.addButton.x = width / 2 + 100;
+ this.addButton.y = height - 75;
+
+ this.bouncer.resize(width, height);
+ }
+
+ /** Show screen with animations */
+ public async show(): Promise {
+ engine().audio.bgm.play("main/sounds/bgm-main.mp3", { volume: 0.5 });
+
+ const elementsToAnimate = [
+ this.pauseButton,
+ this.settingsButton,
+ this.addButton,
+ this.removeButton,
+ ];
+
+ let finalPromise!: AnimationPlaybackControls;
+ for (const element of elementsToAnimate) {
+ element.alpha = 0;
+ finalPromise = animate(
+ element,
+ { alpha: 1 },
+ { duration: 0.3, delay: 0.75, ease: "backOut" },
+ );
+ }
+
+ await finalPromise;
+ this.bouncer.show(this);
+ }
+
+ /** Hide screen with animations */
+ public async hide() {}
+
+ /** Auto pause the app when window go out of focus */
+ public blur() {
+ if (!engine().navigation.currentPopup) {
+ engine().navigation.presentPopup(PausePopup);
+ }
+ }
+}
diff --git a/apps/link/src/app/screens/main/WebSDKExample.ts b/apps/link/src/app/screens/main/WebSDKExample.ts
new file mode 100644
index 00000000..6e98f590
--- /dev/null
+++ b/apps/link/src/app/screens/main/WebSDKExample.ts
@@ -0,0 +1,62 @@
+import { WebSDKIntegration, utils } from '../../../webSDKIntegration';
+import { Container, Text } from 'pixi.js';
+
+/**
+ * Example component showing how to use Web SDK utilities in your PixiJS template
+ */
+export class WebSDKExample extends Container {
+ private infoText: Text;
+
+ constructor() {
+ super();
+
+ // Create a text display
+ this.infoText = new Text({
+ text: 'Web SDK Integration Example',
+ style: {
+ fontFamily: 'Arial',
+ fontSize: 24,
+ fill: 0xffffff,
+ align: 'center',
+ }
+ });
+ this.infoText.anchor.set(0.5);
+ this.addChild(this.infoText);
+
+ // Example of using Web SDK utilities
+ this.demoWebSDKFeatures();
+ }
+
+ private async demoWebSDKFeatures() {
+ // Example 1: Using randomInteger from Web SDK
+ const randomNumber = utils.randomInteger({ min: 1, max: 100 });
+ console.log('Random number from Web SDK:', randomNumber);
+
+ // Example 2: Using wait utilities
+ await utils.waitForTimeout(1000);
+ this.infoText.text = `Random: ${randomNumber}`;
+
+ // Example 3: Getting viewport info
+ const viewportSize = WebSDKIntegration.getViewportSize();
+ console.log('Viewport size:', viewportSize);
+
+ // Example 4: Responsive design
+ const isPortrait = WebSDKIntegration.isPortrait();
+ const scaleFactor = WebSDKIntegration.getScaleFactor();
+ console.log('Is portrait:', isPortrait, 'Scale factor:', scaleFactor);
+
+ // Example 5: Access to the engine
+ const stage = WebSDKIntegration.getStage();
+ console.log('Stage children count:', stage?.children.length);
+ }
+
+ public resize(width: number, height: number) {
+ // Center the text
+ this.x = width * 0.5;
+ this.y = height * 0.3;
+
+ // Example of responsive scaling using Web SDK
+ const scaleFactor = WebSDKIntegration.getScaleFactor();
+ this.scale.set(scaleFactor);
+ }
+}
\ No newline at end of file
diff --git a/apps/link/src/app/ui/Button.ts b/apps/link/src/app/ui/Button.ts
new file mode 100644
index 00000000..0ff02d9d
--- /dev/null
+++ b/apps/link/src/app/ui/Button.ts
@@ -0,0 +1,70 @@
+import { FancyButton } from "@pixi/ui";
+
+import { engine } from "../getEngine";
+
+import { Label } from "./Label";
+
+const defaultButtonOptions = {
+ text: "",
+ width: 301,
+ height: 112,
+ fontSize: 28,
+};
+
+type ButtonOptions = typeof defaultButtonOptions;
+
+/**
+ * The big rectangle button, with a label, idle and pressed states
+ */
+export class Button extends FancyButton {
+ constructor(options: Partial = {}) {
+ const opts = { ...defaultButtonOptions, ...options };
+
+ super({
+ defaultView: "button.png",
+ nineSliceSprite: [38, 50, 38, 50],
+ anchor: 0.5,
+ text: new Label({
+ text: opts.text,
+ style: {
+ fill: 0x4a4a4a,
+ align: "center",
+ fontSize: opts.fontSize,
+ },
+ }),
+ textOffset: { x: 0, y: -13 },
+ defaultTextAnchor: 0.5,
+ scale: 0.9,
+ animations: {
+ hover: {
+ props: {
+ scale: { x: 1.03, y: 1.03 },
+ y: 0,
+ },
+ duration: 100,
+ },
+ pressed: {
+ props: {
+ scale: { x: 0.97, y: 0.97 },
+ y: 10,
+ },
+ duration: 100,
+ },
+ },
+ });
+
+ this.width = opts.width;
+ this.height = opts.height;
+
+ this.onDown.connect(this.handleDown.bind(this));
+ this.onHover.connect(this.handleHover.bind(this));
+ }
+
+ private handleHover() {
+ engine().audio.sfx.play("main/sounds/sfx-hover.wav");
+ }
+
+ private handleDown() {
+ engine().audio.sfx.play("main/sounds/sfx-press.wav");
+ }
+}
diff --git a/apps/link/src/app/ui/Label.ts b/apps/link/src/app/ui/Label.ts
new file mode 100644
index 00000000..f1ec8555
--- /dev/null
+++ b/apps/link/src/app/ui/Label.ts
@@ -0,0 +1,22 @@
+import type { TextOptions, TextStyleOptions } from "pixi.js";
+import { Text } from "pixi.js";
+
+const defaultLabelStyle: Partial = {
+ fontFamily: "Arial Rounded MT Bold",
+ align: "center",
+};
+
+export type LabelOptions = typeof defaultLabelStyle;
+
+/**
+ * A Text extension pre-formatted for this app, starting centred by default,
+ * because it is the most common use in the app.
+ */
+export class Label extends Text {
+ constructor(opts?: TextOptions) {
+ const style = { ...defaultLabelStyle, ...opts?.style };
+ super({ ...opts, style });
+ // Label is always centred, but this can be changed in instance afterwards
+ this.anchor.set(0.5);
+ }
+}
diff --git a/apps/link/src/app/ui/RoundedBox.ts b/apps/link/src/app/ui/RoundedBox.ts
new file mode 100644
index 00000000..8c0f1301
--- /dev/null
+++ b/apps/link/src/app/ui/RoundedBox.ts
@@ -0,0 +1,66 @@
+import { Container, NineSliceSprite, Texture } from "pixi.js";
+
+const defaultRoundedBoxOptions = {
+ color: 0xffffff,
+ width: 350,
+ height: 600,
+ shadow: true,
+ shadowColor: 0xa0a0a0,
+ shadowOffset: 22,
+};
+
+export type RoundedBoxOptions = typeof defaultRoundedBoxOptions;
+
+/**
+ * Generic rounded box based on a nine-sliced sprite that can be resized freely.
+ */
+export class RoundedBox extends Container {
+ /** The rectangular area, that scales without distorting rounded corners */
+ private image: NineSliceSprite;
+ /** Optional shadow matching the box image, with y offest */
+ private shadow?: NineSliceSprite;
+
+ constructor(options: Partial = {}) {
+ super();
+ const opts = { ...defaultRoundedBoxOptions, ...options };
+ this.image = new NineSliceSprite({
+ texture: Texture.from("rounded-rectangle.png"),
+ leftWidth: 34,
+ topHeight: 34,
+ rightWidth: 34,
+ bottomHeight: 34,
+ width: opts.width,
+ height: opts.height,
+ tint: opts.color,
+ });
+ this.image.x = -this.image.width * 0.5;
+ this.image.y = -this.image.height * 0.5;
+ this.addChild(this.image);
+
+ if (opts.shadow) {
+ this.shadow = new NineSliceSprite({
+ texture: Texture.from("rounded-rectangle.png"),
+ leftWidth: 34,
+ topHeight: 34,
+ rightWidth: 34,
+ bottomHeight: 34,
+ width: opts.width,
+ height: opts.height,
+ tint: opts.shadowColor,
+ });
+ this.shadow.x = -this.shadow.width * 0.5;
+ this.shadow.y = -this.shadow.height * 0.5 + opts.shadowOffset;
+ this.addChildAt(this.shadow, 0);
+ }
+ }
+
+ /** Get the base width, without counting the shadow */
+ public get boxWidth() {
+ return this.image.width;
+ }
+
+ /** Get the base height, without counting the shadow */
+ public get boxHeight() {
+ return this.image.height;
+ }
+}
diff --git a/apps/link/src/app/ui/VolumeSlider.ts b/apps/link/src/app/ui/VolumeSlider.ts
new file mode 100644
index 00000000..d6adb3f0
--- /dev/null
+++ b/apps/link/src/app/ui/VolumeSlider.ts
@@ -0,0 +1,76 @@
+import { Slider } from "@pixi/ui";
+import { Graphics } from "pixi.js";
+
+import { Label } from "./Label";
+
+/**
+ * A volume slider component to be used in the Settings popup.
+ */
+export class VolumeSlider extends Slider {
+ /** Message displayed for the slider */
+ public messageLabel: Label;
+
+ constructor(label: string, min = -0.1, max = 100, value = 100) {
+ const width = 280;
+ const height = 20;
+ const radius = 20;
+ const border = 4;
+ const handleRadius = 14;
+ const handleBorder = 4;
+ const meshColor = 0xec1561;
+ const fillColor = 0xef6294;
+ const borderColor = 0xec1561;
+ const backgroundColor = 0xffffff;
+
+ const bg = new Graphics()
+ .roundRect(0, 0, width, height, radius)
+ .fill({ color: borderColor })
+ .roundRect(
+ border,
+ border,
+ width - border * 2,
+ height - border * 2,
+ radius,
+ )
+ .fill({ color: backgroundColor });
+
+ const fill = new Graphics()
+ .roundRect(0, 0, width, height, radius)
+ .fill({ color: borderColor })
+ .roundRect(
+ border,
+ border,
+ width - border * 2,
+ height - border * 2,
+ radius,
+ )
+ .fill({ color: fillColor });
+
+ const slider = new Graphics()
+ .circle(0, 0, handleRadius + handleBorder)
+ .fill({ color: meshColor });
+
+ super({
+ bg,
+ fill,
+ slider,
+ min,
+ max,
+ });
+
+ this.value = value;
+
+ this.messageLabel = new Label({
+ text: label,
+ style: {
+ align: "left",
+ fill: 0x4a4a4a,
+ fontSize: 18,
+ },
+ });
+ this.messageLabel.anchor.x = 0;
+ this.messageLabel.x = 10;
+ this.messageLabel.y = -18;
+ this.addChild(this.messageLabel);
+ }
+}
diff --git a/apps/link/src/app/utils/userSettings.ts b/apps/link/src/app/utils/userSettings.ts
new file mode 100644
index 00000000..f96361a2
--- /dev/null
+++ b/apps/link/src/app/utils/userSettings.ts
@@ -0,0 +1,54 @@
+import { storage } from "../../engine/utils/storage";
+import { engine } from "../getEngine";
+
+// Keys for saved items in storage
+const KEY_VOLUME_MASTER = "volume-master";
+const KEY_VOLUME_BGM = "volume-bgm";
+const KEY_VOLUME_SFX = "volume-sfx";
+
+/**
+ * Persistent user settings of volumes.
+ */
+class UserSettings {
+ public init() {
+ engine().audio.setMasterVolume(this.getMasterVolume());
+ engine().audio.bgm.setVolume(this.getBgmVolume());
+ engine().audio.sfx.setVolume(this.getSfxVolume());
+ }
+
+ /** Get overall sound volume */
+ public getMasterVolume() {
+ return storage.getNumber(KEY_VOLUME_MASTER) ?? 0.5;
+ }
+
+ /** Set overall sound volume */
+ public setMasterVolume(value: number) {
+ engine().audio.setMasterVolume(value);
+ storage.setNumber(KEY_VOLUME_MASTER, value);
+ }
+
+ /** Get background music volume */
+ public getBgmVolume() {
+ return storage.getNumber(KEY_VOLUME_BGM) ?? 1;
+ }
+
+ /** Set background music volume */
+ public setBgmVolume(value: number) {
+ engine().audio.bgm.setVolume(value);
+ storage.setNumber(KEY_VOLUME_BGM, value);
+ }
+
+ /** Get sound effects volume */
+ public getSfxVolume() {
+ return storage.getNumber(KEY_VOLUME_SFX) ?? 1;
+ }
+
+ /** Set sound effects volume */
+ public setSfxVolume(value: number) {
+ engine().audio.sfx.setVolume(value);
+ storage.setNumber(KEY_VOLUME_SFX, value);
+ }
+}
+
+/** SHared user settings instance */
+export const userSettings = new UserSettings();
diff --git a/apps/link/src/engine/audio/AudioPlugin.ts b/apps/link/src/engine/audio/AudioPlugin.ts
new file mode 100644
index 00000000..98c12a6b
--- /dev/null
+++ b/apps/link/src/engine/audio/AudioPlugin.ts
@@ -0,0 +1,49 @@
+import { sound } from "@pixi/sound";
+import { ExtensionType } from "pixi.js";
+import type { Application, ExtensionMetadata } from "pixi.js";
+
+import { BGM, SFX } from "./audio";
+
+/**
+ * Middleware for Application's audio functionality.
+ *
+ * Adds the following methods to Application:
+ * * Application#audio
+ * * Application#audio.bgm
+ * * Application#audio.sfx
+ * * Application#audio.getMasterVolume
+ * * Application#audio.setMasterVolume
+ */
+export class CreationAudioPlugin {
+ /** @ignore */
+ public static extension: ExtensionMetadata = ExtensionType.Application;
+
+ /**
+ * Initialize the plugin with scope of application instance
+ */
+ public static init(): void {
+ const app = this as unknown as Application;
+
+ app.audio = {
+ bgm: new BGM(),
+ sfx: new SFX(),
+ getMasterVolume: () => sound.volumeAll,
+ setMasterVolume: (volume: number) => {
+ sound.volumeAll = volume;
+ if (!volume) {
+ sound.muteAll();
+ } else {
+ sound.unmuteAll();
+ }
+ },
+ };
+ }
+
+ /**
+ * Clean up the ticker, scoped to application
+ */
+ public static destroy(): void {
+ const app = this as unknown as Application;
+ app.audio = null as unknown as Application["audio"];
+ }
+}
diff --git a/apps/link/src/engine/audio/audio.ts b/apps/link/src/engine/audio/audio.ts
new file mode 100644
index 00000000..4561284f
--- /dev/null
+++ b/apps/link/src/engine/audio/audio.ts
@@ -0,0 +1,84 @@
+import type { PlayOptions, Sound } from "@pixi/sound";
+import { sound } from "@pixi/sound";
+import { animate } from "motion";
+
+/**
+ * Handles music background, playing only one audio file in loop at time,
+ * and fade/stop the music if a new one is requested. Also provide volume
+ * control for music background only, leaving other sounds volumes unchanged.
+ */
+export class BGM {
+ /** Alias of the current music being played */
+ public currentAlias?: string;
+ /** Current music instance being played */
+ public current?: Sound;
+ /** Current volume set */
+ private volume = 1;
+
+ /** Play a background music, fading out and stopping the previous, if there is one */
+ public async play(alias: string, options?: PlayOptions) {
+ // Do nothing if the requested music is already being played
+ if (this.currentAlias === alias) return;
+
+ // Fade out then stop current music
+ if (this.current) {
+ const current = this.current;
+ animate(current, { volume: 0 }, { duration: 1, ease: "linear" }).then(
+ () => {
+ current.stop();
+ },
+ );
+ }
+
+ // Find out the new instance to be played
+ this.current = sound.find(alias);
+
+ // Play and fade in the new music
+ this.currentAlias = alias;
+ this.current.play({ loop: true, ...options });
+ this.current.volume = 0;
+ animate(
+ this.current,
+ { volume: this.volume },
+ { duration: 1, ease: "linear" },
+ );
+ }
+
+ /** Get background music volume */
+ public getVolume() {
+ return this.volume;
+ }
+
+ /** Set background music volume */
+ public setVolume(v: number) {
+ this.volume = v;
+ if (this.current) this.current.volume = this.volume;
+ }
+}
+
+/**
+ * Handles short sound special effects, mainly for having its own volume settings.
+ * The volume control is only a workaround to make it work only with this type of sound,
+ * with a limitation of not controlling volume of currently playing instances - only the new ones will
+ * have their volume changed. But because most of sound effects are short sounds, this is generally fine.
+ */
+export class SFX {
+ /** Volume scale for new instances */
+ private volume = 1;
+
+ /** Play an one-shot sound effect */
+ public play(alias: string, options?: PlayOptions) {
+ const volume = this.volume * (options?.volume ?? 1);
+ sound.play(alias, { ...options, volume });
+ }
+
+ /** Set sound effects volume */
+ public getVolume() {
+ return this.volume;
+ }
+
+ /** Set sound effects volume. Does not affect instances that are currently playing */
+ public setVolume(v: number) {
+ this.volume = v;
+ }
+}
diff --git a/apps/link/src/engine/engine.ts b/apps/link/src/engine/engine.ts
new file mode 100644
index 00000000..685cdaf7
--- /dev/null
+++ b/apps/link/src/engine/engine.ts
@@ -0,0 +1,77 @@
+import { sound } from "@pixi/sound";
+import type {
+ ApplicationOptions,
+ DestroyOptions,
+ RendererDestroyOptions,
+} from "pixi.js";
+import { Application, Assets, extensions, ResizePlugin } from "pixi.js";
+import "pixi.js/app";
+
+// eslint-disable-next-line @typescript-eslint/ban-ts-comment
+// @ts-ignore - This is a dynamically generated file by AssetPack
+import manifest from "../manifest.json";
+
+import { CreationAudioPlugin } from "./audio/AudioPlugin";
+import { CreationNavigationPlugin } from "./navigation/NavigationPlugin";
+import { CreationResizePlugin } from "./resize/ResizePlugin";
+import { getResolution } from "./utils/getResolution";
+
+extensions.remove(ResizePlugin);
+extensions.add(CreationResizePlugin);
+extensions.add(CreationAudioPlugin);
+extensions.add(CreationNavigationPlugin);
+
+/**
+ * The main creation engine class.
+ *
+ * This is a lightweight wrapper around the PixiJS Application class.
+ * It provides a few additional features such as:
+ * - Navigation manager
+ * - Audio manager
+ * - Resize handling
+ * - Visibility change handling (pause/resume sounds)
+ *
+ * It also initializes the PixiJS application and loads any assets in the `preload` bundle.
+ */
+export class CreationEngine extends Application {
+ /** Initialize the application */
+ public async init(opts: Partial): Promise {
+ opts.resizeTo ??= window;
+ opts.resolution ??= getResolution();
+
+ await super.init(opts);
+
+ // Append the application canvas to the document body
+ document.getElementById("pixi-container")!.appendChild(this.canvas);
+ // Add a visibility listener, so the app can pause sounds and screens
+ document.addEventListener("visibilitychange", this.visibilityChange);
+
+ // Init PixiJS assets with this asset manifest
+ await Assets.init({ manifest, basePath: "assets" });
+ await Assets.loadBundle("preload");
+
+ // List all existing bundles names
+ const allBundles = manifest.bundles.map((item) => item.name);
+ // Start up background loading of all bundles
+ Assets.backgroundLoadBundle(allBundles);
+ }
+
+ public override destroy(
+ rendererDestroyOptions: RendererDestroyOptions = false,
+ options: DestroyOptions = false,
+ ): void {
+ document.removeEventListener("visibilitychange", this.visibilityChange);
+ super.destroy(rendererDestroyOptions, options);
+ }
+
+ /** Fire when document visibility changes - lose or regain focus */
+ protected visibilityChange = () => {
+ if (document.hidden) {
+ sound.pauseAll();
+ this.navigation.blur();
+ } else {
+ sound.resumeAll();
+ this.navigation.focus();
+ }
+ };
+}
diff --git a/apps/link/src/engine/navigation/NavigationPlugin.ts b/apps/link/src/engine/navigation/NavigationPlugin.ts
new file mode 100644
index 00000000..02125f93
--- /dev/null
+++ b/apps/link/src/engine/navigation/NavigationPlugin.ts
@@ -0,0 +1,41 @@
+import { ExtensionType } from "pixi.js";
+import type { Application, ExtensionMetadata } from "pixi.js";
+
+import type { CreationEngine } from "../engine";
+
+import { Navigation } from "./navigation";
+
+/**
+ * Middleware for Application's navigation functionality.
+ *
+ * Adds the following methods to Application:
+ * * Application#navigation
+ */
+export class CreationNavigationPlugin {
+ /** @ignore */
+ public static extension: ExtensionMetadata = ExtensionType.Application;
+
+ private static _onResize: (() => void) | null;
+
+ /**
+ * Initialize the plugin with scope of application instance
+ */
+ public static init(): void {
+ const app = this as unknown as CreationEngine;
+
+ app.navigation = new Navigation();
+ app.navigation.init(app);
+ this._onResize = () =>
+ app.navigation.resize(app.renderer.width, app.renderer.height);
+ app.renderer.on("resize", this._onResize);
+ app.resize();
+ }
+
+ /**
+ * Clean up the ticker, scoped to application
+ */
+ public static destroy(): void {
+ const app = this as unknown as Application;
+ app.navigation = null as unknown as Navigation;
+ }
+}
diff --git a/apps/link/src/engine/navigation/navigation.ts b/apps/link/src/engine/navigation/navigation.ts
new file mode 100644
index 00000000..fed39013
--- /dev/null
+++ b/apps/link/src/engine/navigation/navigation.ts
@@ -0,0 +1,226 @@
+import type { Ticker } from "pixi.js";
+import { Assets, BigPool, Container } from "pixi.js";
+
+import type { CreationEngine } from "../engine";
+
+/** Interface for app screens */
+interface AppScreen extends Container {
+ /** Show the screen */
+ show?(): Promise;
+ /** Hide the screen */
+ hide?(): Promise;
+ /** Pause the screen */
+ pause?(): Promise;
+ /** Resume the screen */
+ resume?(): Promise;
+ /** Prepare screen, before showing */
+ prepare?(): void;
+ /** Reset screen, after hidden */
+ reset?(): void;
+ /** Update the screen, passing delta time/step */
+ update?(time: Ticker): void;
+ /** Resize the screen */
+ resize?(width: number, height: number): void;
+ /** Blur the screen */
+ blur?(): void;
+ /** Focus the screen */
+ focus?(): void;
+ /** Method to react on assets loading progress */
+ onLoad?: (progress: number) => void;
+}
+
+/** Interface for app screens constructors */
+interface AppScreenConstructor {
+ new (): AppScreen;
+ /** List of assets bundles required by the screen */
+ assetBundles?: string[];
+}
+
+export class Navigation {
+ /** Reference to the main application */
+ public app!: CreationEngine;
+
+ /** Container for screens */
+ public container = new Container();
+
+ /** Application width */
+ public width = 0;
+
+ /** Application height */
+ public height = 0;
+
+ /** Constant background view for all screens */
+ public background?: AppScreen;
+
+ /** Current screen being displayed */
+ public currentScreen?: AppScreen;
+
+ /** Current popup being displayed */
+ public currentPopup?: AppScreen;
+
+ public init(app: CreationEngine) {
+ this.app = app;
+ }
+
+ /** Set the default load screen */
+ public setBackground(ctor: AppScreenConstructor) {
+ this.background = new ctor();
+ this.addAndShowScreen(this.background);
+ }
+
+ /** Add screen to the stage, link update & resize functions */
+ private async addAndShowScreen(screen: AppScreen) {
+ // Add navigation container to stage if it does not have a parent yet
+ if (!this.container.parent) {
+ this.app.stage.addChild(this.container);
+ }
+
+ // Add screen to stage
+ this.container.addChild(screen);
+
+ // Setup things and pre-organise screen before showing
+ if (screen.prepare) {
+ screen.prepare();
+ }
+
+ // Add screen's resize handler, if available
+ if (screen.resize) {
+ // Trigger a first resize
+ screen.resize(this.width, this.height);
+ }
+
+ // Add update function if available
+ if (screen.update) {
+ this.app.ticker.add(screen.update, screen);
+ }
+
+ // Show the new screen
+ if (screen.show) {
+ screen.interactiveChildren = false;
+ await screen.show();
+ screen.interactiveChildren = true;
+ }
+ }
+
+ /** Remove screen from the stage, unlink update & resize functions */
+ private async hideAndRemoveScreen(screen: AppScreen) {
+ // Prevent interaction in the screen
+ screen.interactiveChildren = false;
+
+ // Hide screen if method is available
+ if (screen.hide) {
+ await screen.hide();
+ }
+
+ // Unlink update function if method is available
+ if (screen.update) {
+ this.app.ticker.remove(screen.update, screen);
+ }
+
+ // Remove screen from its parent (usually app.stage, if not changed)
+ if (screen.parent) {
+ screen.parent.removeChild(screen);
+ }
+
+ // Clean up the screen so that instance can be reused again later
+ if (screen.reset) {
+ screen.reset();
+ }
+ }
+
+ /**
+ * Hide current screen (if there is one) and present a new screen.
+ * Any class that matches AppScreen interface can be used here.
+ */
+ public async showScreen(ctor: AppScreenConstructor) {
+ // Block interactivity in current screen
+ if (this.currentScreen) {
+ this.currentScreen.interactiveChildren = false;
+ }
+
+ // Load assets for the new screen, if available
+ if (ctor.assetBundles) {
+ // Load all assets required by this new screen
+ await Assets.loadBundle(ctor.assetBundles, (progress) => {
+ if (this.currentScreen?.onLoad) {
+ this.currentScreen.onLoad(progress * 100);
+ }
+ });
+ }
+
+ if (this.currentScreen?.onLoad) {
+ this.currentScreen.onLoad(100);
+ }
+
+ // If there is a screen already created, hide and destroy it
+ if (this.currentScreen) {
+ await this.hideAndRemoveScreen(this.currentScreen);
+ }
+
+ // Create the new screen and add that to the stage
+ this.currentScreen = BigPool.get(ctor);
+ await this.addAndShowScreen(this.currentScreen);
+ }
+
+ /**
+ * Resize screens
+ * @param width Viewport width
+ * @param height Viewport height
+ */
+ public resize(width: number, height: number) {
+ this.width = width;
+ this.height = height;
+ this.currentScreen?.resize?.(width, height);
+ this.currentPopup?.resize?.(width, height);
+ this.background?.resize?.(width, height);
+ }
+
+ /**
+ * Show up a popup over current screen
+ */
+ public async presentPopup(ctor: AppScreenConstructor) {
+ if (this.currentScreen) {
+ this.currentScreen.interactiveChildren = false;
+ await this.currentScreen.pause?.();
+ }
+
+ if (this.currentPopup) {
+ await this.hideAndRemoveScreen(this.currentPopup);
+ }
+
+ this.currentPopup = new ctor();
+ await this.addAndShowScreen(this.currentPopup);
+ }
+
+ /**
+ * Dismiss current popup, if there is one
+ */
+ public async dismissPopup() {
+ if (!this.currentPopup) return;
+ const popup = this.currentPopup;
+ this.currentPopup = undefined;
+ await this.hideAndRemoveScreen(popup);
+ if (this.currentScreen) {
+ this.currentScreen.interactiveChildren = true;
+ this.currentScreen.resume?.();
+ }
+ }
+
+ /**
+ * Blur screens when lose focus
+ */
+ public blur() {
+ this.currentScreen?.blur?.();
+ this.currentPopup?.blur?.();
+ this.background?.blur?.();
+ }
+
+ /**
+ * Focus screens
+ */
+ public focus() {
+ this.currentScreen?.focus?.();
+ this.currentPopup?.focus?.();
+ this.background?.focus?.();
+ }
+}
diff --git a/apps/link/src/engine/resize/ResizePlugin.ts b/apps/link/src/engine/resize/ResizePlugin.ts
new file mode 100644
index 00000000..667c5f5c
--- /dev/null
+++ b/apps/link/src/engine/resize/ResizePlugin.ts
@@ -0,0 +1,168 @@
+import { ExtensionType } from "pixi.js";
+import type {
+ Application,
+ ApplicationOptions,
+ ExtensionMetadata,
+ ResizePluginOptions,
+} from "pixi.js";
+
+import { resize } from "./resize";
+
+// Custom utility type:
+export type DeepRequired = Required<{
+ [K in keyof T]: DeepRequired;
+}>;
+
+/**
+ * Application options for the CreationResizePlugin.
+ */
+export interface CreationResizePluginOptions extends ResizePluginOptions {
+ /** Options for controlling the resizing of the application */
+ resizeOptions?: {
+ /** Minimum width of the application */
+ minWidth?: number;
+ /** Minimum height of the application */
+ minHeight?: number;
+ /** Whether to letterbox the application when resizing */
+ letterbox?: boolean;
+ };
+}
+
+/**
+ * Middleware for Application's resize functionality.
+ *
+ * Adds the following methods to Application:
+ * * Application#resizeTo
+ * * Application#resize
+ * * Application#queueResize
+ * * Application#cancelResize
+ * * Application#resizeOptions
+ */
+export class CreationResizePlugin {
+ /** @ignore */
+ public static extension: ExtensionMetadata = ExtensionType.Application;
+
+ private static _resizeId: number | null;
+ private static _resizeTo: Window | HTMLElement | null;
+ private static _cancelResize: (() => void) | null;
+
+ /**
+ * Initialize the plugin with scope of application instance
+ * @param {object} [options] - See application options
+ */
+ public static init(options: ApplicationOptions): void {
+ const app = this as unknown as Application;
+
+ Object.defineProperty(
+ app,
+ "resizeTo",
+ /**
+ * The HTML element or window to automatically resize the
+ * renderer's view element to match width and height.
+ */
+ {
+ set(dom: Window | HTMLElement) {
+ globalThis.removeEventListener("resize", app.queueResize);
+ this._resizeTo = dom;
+ if (dom) {
+ globalThis.addEventListener("resize", app.queueResize);
+ app.resize();
+ }
+ },
+ get() {
+ return this._resizeTo;
+ },
+ },
+ );
+
+ /**
+ * Resize is throttled, so it's safe to call this multiple times per frame and it'll
+ * only be called once.
+ */
+ app.queueResize = (): void => {
+ if (!this._resizeTo) {
+ return;
+ }
+
+ this._cancelResize!();
+
+ // Throttle resize events per raf
+ this._resizeId = requestAnimationFrame(() => app.resize!());
+ };
+
+ /**
+ * Execute an immediate resize on the renderer, this is not
+ * throttled and can be expensive to call many times in a row.
+ * Will resize only if `resizeTo` property is set.
+ */
+ app.resize = (): void => {
+ if (!this._resizeTo) {
+ return;
+ }
+
+ // clear queue resize
+ this._cancelResize!();
+
+ let canvasWidth: number;
+ let canvasHeight: number;
+
+ // Resize to the window
+ if (this._resizeTo === globalThis.window) {
+ canvasWidth = globalThis.innerWidth;
+ canvasHeight = globalThis.innerHeight;
+ }
+ // Resize to other HTML entities
+ else {
+ const { clientWidth, clientHeight } = this._resizeTo as HTMLElement;
+
+ canvasWidth = clientWidth;
+ canvasHeight = clientHeight;
+ }
+
+ const { width, height } = resize(
+ canvasWidth,
+ canvasHeight,
+ app.resizeOptions.minWidth,
+ app.resizeOptions.minHeight,
+ app.resizeOptions.letterbox,
+ );
+
+ app.renderer.canvas.style.width = `${canvasWidth}px`;
+ app.renderer.canvas.style.height = `${canvasHeight}px`;
+ window.scrollTo(0, 0);
+
+ app.renderer.resize(width, height);
+ };
+
+ this._cancelResize = (): void => {
+ if (this._resizeId) {
+ cancelAnimationFrame(this._resizeId);
+ this._resizeId = null;
+ }
+ };
+ this._resizeId = null;
+ this._resizeTo = null;
+ app.resizeOptions = {
+ minWidth: 768,
+ minHeight: 1024,
+ letterbox: true,
+ ...options.resizeOptions,
+ };
+ app.resizeTo =
+ options.resizeTo || (null as unknown as Window | HTMLElement);
+ }
+
+ /**
+ * Clean up the ticker, scoped to application
+ */
+ public static destroy(): void {
+ const app = this as unknown as Application;
+
+ globalThis.removeEventListener("resize", app.queueResize);
+ this._cancelResize!();
+ this._cancelResize = null;
+ app.queueResize = null as unknown as () => void;
+ app.resizeTo = null as unknown as Window | HTMLElement;
+ app.resize = null as unknown as () => void;
+ }
+}
diff --git a/apps/link/src/engine/resize/resize.ts b/apps/link/src/engine/resize/resize.ts
new file mode 100644
index 00000000..a2450a6f
--- /dev/null
+++ b/apps/link/src/engine/resize/resize.ts
@@ -0,0 +1,37 @@
+export function resize(
+ w: number,
+ h: number,
+ minWidth: number,
+ minHeight: number,
+ letterbox: boolean,
+) {
+ const aspectRatio = minWidth / minHeight;
+ let canvasWidth = w;
+ let canvasHeight = h;
+
+ if (letterbox) {
+ if (minWidth < minHeight) {
+ canvasHeight = window.innerHeight;
+ canvasWidth = Math.min(
+ window.innerWidth,
+ minWidth,
+ canvasHeight * aspectRatio,
+ );
+ } else {
+ canvasWidth = window.innerWidth;
+ canvasHeight = Math.min(
+ window.innerHeight,
+ minHeight,
+ canvasWidth / aspectRatio,
+ );
+ }
+ }
+
+ const scaleX = canvasWidth < minWidth ? minWidth / canvasWidth : 1;
+ const scaleY = canvasHeight < minHeight ? minHeight / canvasHeight : 1;
+ const scale = scaleX > scaleY ? scaleX : scaleY;
+ const width = Math.floor(canvasWidth * scale);
+ const height = Math.floor(canvasHeight * scale);
+
+ return { width, height };
+}
diff --git a/apps/link/src/engine/utils/getResolution.ts b/apps/link/src/engine/utils/getResolution.ts
new file mode 100644
index 00000000..fb4aa4bb
--- /dev/null
+++ b/apps/link/src/engine/utils/getResolution.ts
@@ -0,0 +1,9 @@
+export function getResolution(): number {
+ let resolution = Math.max(window.devicePixelRatio, 2);
+
+ if (resolution % 1 !== 0) {
+ resolution = 2;
+ }
+
+ return resolution;
+}
diff --git a/apps/link/src/engine/utils/maths.ts b/apps/link/src/engine/utils/maths.ts
new file mode 100644
index 00000000..d0c199fe
--- /dev/null
+++ b/apps/link/src/engine/utils/maths.ts
@@ -0,0 +1,17 @@
+/** Get the distance between a and b points */
+export function getDistance(ax: number, ay: number, bx = 0, by = 0) {
+ const dx = bx - ax;
+ const dy = by - ay;
+ return Math.sqrt(dx * dx + dy * dy);
+}
+
+/** Linear interpolation */
+export function lerp(a: number, b: number, t: number) {
+ return (1 - t) * a + t * b;
+}
+
+/** Clamp a number to minimum and maximum values */
+export function clamp(v: number, min = 0, max = 1) {
+ if (min > max) [min, max] = [max, min];
+ return v < min ? min : v > max ? max : v;
+}
diff --git a/apps/link/src/engine/utils/random.ts b/apps/link/src/engine/utils/random.ts
new file mode 100644
index 00000000..0d38d523
--- /dev/null
+++ b/apps/link/src/engine/utils/random.ts
@@ -0,0 +1,160 @@
+// From a very good answer about pseudo random numbers on stack overflow
+// https://stackoverflow.com/a/47593316
+function xmur3(str: string): () => number {
+ let h = 1779033703 ^ str.length;
+
+ for (let i = 0; i < str.length; i++) {
+ h = Math.imul(h ^ str.charCodeAt(i), 3432918353);
+ h = (h << 13) | (h >>> 19);
+ }
+
+ return (): number => {
+ h = Math.imul(h ^ (h >>> 16), 2246822507);
+ h = Math.imul(h ^ (h >>> 13), 3266489909);
+
+ return (h ^= h >>> 16) >>> 0;
+ };
+}
+
+function mulberry32(a: number): () => number {
+ return (): number => {
+ let t = (a += 0x6d2b79f5);
+
+ t = Math.imul(t ^ (t >>> 15), t | 1);
+ t ^= t + Math.imul(t ^ (t >>> 7), t | 61);
+
+ return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
+ };
+}
+
+const HASH_CHARSET =
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+
+/**
+ * Creates a seeded random function similar to Math.random() based on given seed hash
+ * @param seed - The hash string, can be anything
+ * @returns Function that can be used instead Math.random
+ */
+export function randomSeeded(seed: string): () => number {
+ return mulberry32(xmur3(seed)());
+}
+
+/**
+ * Returns a random color
+ * @param random - The random function to be used (defaults to Math.random)
+ */
+export function randomColor(random = Math.random): number {
+ const r = Math.floor(0xff * random());
+ const g = Math.floor(0xff * random());
+ const b = Math.floor(0xff * random());
+ return (r << 16) | (g << 8) | b;
+}
+
+/**
+ * Returns a random number within a range
+ * @param min - lowest number (inclusive)
+ * @param max - highest number (exclusive)
+ * @param random - The random function to be used (defaults to Math.random)
+ */
+export function randomRange(
+ min: number,
+ max: number,
+ random = Math.random,
+): number {
+ const a = Math.min(min, max);
+ const b = Math.max(min, max);
+
+ const v = a + (b - a) * random();
+
+ return v;
+}
+
+/**
+ * Returns a random item from an object or array
+ * @param arr - array to be selected
+ * @param random - The random function to be used (defaults to Math.random)
+ */
+export function randomItem(obj: T, random = Math.random): T[keyof T] {
+ if (Array.isArray(obj)) {
+ return obj[Math.floor(random() * obj.length)];
+ }
+
+ const keys = Object.keys(obj as Record);
+ const key = keys[Math.floor(random() * keys.length)];
+ return obj[key as keyof T];
+}
+
+/**
+ * Returns a random boolean.
+ * @param weight - The chance of true value, between 0 and 1
+ * @param random - The random function to be used (defaults to Math.random)
+ * @returns
+ */
+export function randomBool(weight = 0.5, random = Math.random): boolean {
+ return random() < weight;
+}
+
+/**
+ * Random shuffle an array in place, without cloning it
+ * @param array - The array that will be shuffled
+ * @param random - The random function to be used (defaults to Math.random)
+ * @returns
+ */
+export function randomShuffle(array: T[], random = Math.random): T[] {
+ let currentIndex = array.length;
+ let temporaryValue;
+ let randomIndex;
+
+ while (currentIndex !== 0) {
+ randomIndex = Math.floor(random() * currentIndex);
+ currentIndex -= 1;
+ temporaryValue = array[currentIndex];
+ array[currentIndex] = array[randomIndex];
+ array[randomIndex] = temporaryValue;
+ }
+
+ return array;
+}
+
+/**
+ * Return a random string hash - not guaranteed to be unique
+ * @param length - The length of the hash
+ * @param random - The random function to be used (defaults to Math.random)
+ * @returns
+ */
+export function randomHash(
+ length: number,
+ random = Math.random,
+ charset = HASH_CHARSET,
+): string {
+ const charsetLength = charset.length;
+ let result = "";
+
+ for (let i = 0; i < length; i++) {
+ result += charset.charAt(Math.floor(random() * charsetLength));
+ }
+
+ return result;
+}
+
+/**
+ * Returns a random number within a range.
+ *
+ * @param min - The minimum value (inclusive).
+ * @param max - The maximum value (exclusive).
+ */
+export function randomFloat(min: number, max: number, random = Math.random) {
+ return random() * (max - min) + min;
+}
+
+/**
+ * Returns a random integer within a range.
+ *
+ * @param min - The minimum value (inclusive).
+ * @param max - The minimum value (inclusive).
+ * @param random - The random function to be used (defaults to Math.random)
+ */
+export function randomInt(min: number, max: number, random = Math.random) {
+ // This function will return 4 if float result is 3.5 because of +1. Should return 3 instead?
+ return Math.floor(random() * (max - min + 1)) + min;
+}
diff --git a/apps/link/src/engine/utils/storage.ts b/apps/link/src/engine/utils/storage.ts
new file mode 100644
index 00000000..fa16152d
--- /dev/null
+++ b/apps/link/src/engine/utils/storage.ts
@@ -0,0 +1,57 @@
+/**
+ * Simple local storage utility that can safely get/set number, boolean and object values too
+ * not only string as in plain localStorage.
+ */
+class StorageWrapper {
+ /** Get a string value from storage */
+ public getString(key: string) {
+ return localStorage.getItem(key) ?? undefined;
+ }
+
+ /** Set a string value to storage */
+ public setString(key: string, value: string) {
+ localStorage.setItem(key, value);
+ }
+
+ /** Get a number value from storage or undefined if value can't be converted */
+ public getNumber(key: string) {
+ const str = this.getString(key) ?? undefined;
+ const value = Number(str);
+ return isNaN(value) ? null : value;
+ }
+
+ /** Set a number value to storage */
+ public setNumber(key: string, value: number) {
+ this.setString(key, String(value));
+ }
+
+ /** Get a boolean value from storage or undefined if value can't be converted */
+ public getBool(key: string) {
+ const bool = localStorage.getItem(key);
+ return bool ? Boolean(bool.toLowerCase()) : undefined;
+ }
+
+ /** Set a boolean value to storage */
+ public setBool(key: string, value: boolean) {
+ localStorage.setItem(key, String(value));
+ }
+
+ /** Get an object value from storage or undefined if value can't be parsed */
+ public getObject(key: string) {
+ const str = this.getString(key);
+ if (!str) return undefined;
+ try {
+ return JSON.parse(str);
+ } catch (e) {
+ console.warn(e);
+ return undefined;
+ }
+ }
+
+ /** Set an object value to storage */
+ public setObject(key: string, value: Record) {
+ this.setString(key, JSON.stringify(value));
+ }
+}
+
+export const storage = new StorageWrapper();
diff --git a/apps/link/src/engine/utils/waitFor.ts b/apps/link/src/engine/utils/waitFor.ts
new file mode 100644
index 00000000..9849f617
--- /dev/null
+++ b/apps/link/src/engine/utils/waitFor.ts
@@ -0,0 +1,6 @@
+/** Pause the code for a certain amount of time, in seconds */
+export function waitFor(delayInSecs = 1): Promise {
+ return new Promise((resolve) => {
+ setTimeout(() => resolve(), delayInSecs * 1000);
+ });
+}
diff --git a/apps/link/src/main.ts b/apps/link/src/main.ts
new file mode 100644
index 00000000..3839442a
--- /dev/null
+++ b/apps/link/src/main.ts
@@ -0,0 +1,31 @@
+import { setEngine } from "./app/getEngine";
+import { LoadScreen } from "./app/screens/LoadScreen";
+import { MainScreen } from "./app/screens/main/MainScreen";
+import { userSettings } from "./app/utils/userSettings";
+import { CreationEngine } from "./engine/engine";
+
+/**
+ * Importing these modules will automatically register there plugins with the engine.
+ */
+import "@pixi/sound";
+// import "@esotericsoftware/spine-pixi-v8";
+
+// Create a new creation engine instance
+const engine = new CreationEngine();
+setEngine(engine);
+
+(async () => {
+ // Initialize the creation engine instance
+ await engine.init({
+ background: "#1E1E1E",
+ resizeOptions: { minWidth: 768, minHeight: 1024, letterbox: false },
+ });
+
+ // Initialize the user settings
+ userSettings.init();
+
+ // Show the load screen
+ await engine.navigation.showScreen(LoadScreen);
+ // Show the main screen once the load screen is dismissed
+ await engine.navigation.showScreen(MainScreen);
+})();
diff --git a/apps/link/src/pixi-mixins.d.ts b/apps/link/src/pixi-mixins.d.ts
new file mode 100644
index 00000000..db115bab
--- /dev/null
+++ b/apps/link/src/pixi-mixins.d.ts
@@ -0,0 +1,24 @@
+import type { BGM, SFX } from "./engine/audio/audio";
+import type { Navigation } from "./engine/navigation/navigation";
+import type {
+ CreationResizePluginOptions,
+ DeepRequired,
+} from "./engine/resize/ResizePlugin";
+
+declare global {
+ namespace PixiMixins {
+ interface Application extends DeepRequired {
+ audio: {
+ bgm: BGM;
+ sfx: SFX;
+ getMasterVolume: () => number;
+ setMasterVolume: (volume: number) => void;
+ };
+ navigation: Navigation;
+ }
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
+ interface ApplicationOptions extends CreationResizePluginOptions {}
+ }
+}
+
+export {};
diff --git a/apps/link/src/vite-env.d.ts b/apps/link/src/vite-env.d.ts
new file mode 100644
index 00000000..e80e47f7
--- /dev/null
+++ b/apps/link/src/vite-env.d.ts
@@ -0,0 +1,3 @@
+///
+/** Injected by ViteJS define plugin */
+declare const APP_VERSION: string;
diff --git a/apps/link/src/webSDKIntegration.ts b/apps/link/src/webSDKIntegration.ts
new file mode 100644
index 00000000..c8167ae2
--- /dev/null
+++ b/apps/link/src/webSDKIntegration.ts
@@ -0,0 +1,79 @@
+import { userSettings } from './app/utils/userSettings';
+import { engine } from './app/getEngine';
+
+// Import useful utilities from the Web SDK
+import { waitForResolve, waitForTimeout } from 'utils-shared/wait';
+import { randomInteger } from 'utils-shared/random';
+
+// Note: You can add more imports as needed from the Web SDK packages
+// Check the packages folder to see what's available
+
+/**
+ * Web SDK Integration Layer
+ * This provides a bridge between the PixiJS creation template and useful Web SDK utilities
+ */
+export class WebSDKIntegration {
+ // Utility functions from utils-shared
+ static utils = {
+ waitForResolve,
+ waitForTimeout,
+ randomInteger,
+ };
+
+ // Enhanced user settings with Web SDK utilities
+ static userSettings = {
+ ...userSettings,
+ // Add any custom settings integrations here
+ };
+
+ // Engine utilities
+ static getEngine() {
+ return engine();
+ }
+
+ static getApp() {
+ return engine(); // CreationEngine extends Application
+ }
+
+ static getStage() {
+ return engine()?.stage;
+ }
+
+ static getRenderer() {
+ return engine()?.renderer;
+ }
+
+ // Viewport utilities
+ static getViewportSize() {
+ const app = this.getApp();
+ return {
+ width: app?.screen?.width || window.innerWidth,
+ height: app?.screen?.height || window.innerHeight,
+ };
+ }
+
+ // Add responsive design helpers
+ static isPortrait() {
+ const { width, height } = this.getViewportSize();
+ return height > width;
+ }
+
+ static isLandscape() {
+ return !this.isPortrait();
+ }
+
+ // Get scale factor for responsive design
+ static getScaleFactor() {
+ const { width, height } = this.getViewportSize();
+ const baseWidth = 1920;
+ const baseHeight = 1080;
+
+ return Math.min(width / baseWidth, height / baseHeight);
+ }
+}
+
+// Create a singleton instance
+export const webSDK = new WebSDKIntegration();
+
+// Export utilities for easy access
+export const { utils, userSettings: enhancedUserSettings } = WebSDKIntegration;
\ No newline at end of file
diff --git a/apps/link/tsconfig.json b/apps/link/tsconfig.json
new file mode 100644
index 00000000..6f0ea0c0
--- /dev/null
+++ b/apps/link/tsconfig.json
@@ -0,0 +1,5 @@
+{
+ "extends": "config-ts/base.json",
+ "include": ["."],
+ "exclude": ["dist", "build", "node_modules"]
+}
diff --git a/apps/link/vite.config.ts b/apps/link/vite.config.ts
new file mode 100644
index 00000000..ec86d8b1
--- /dev/null
+++ b/apps/link/vite.config.ts
@@ -0,0 +1,14 @@
+import { defineConfig } from "vite";
+import { assetpackPlugin } from "./scripts/assetpack-vite-plugin";
+
+// https://vite.dev/config/
+export default defineConfig({
+ plugins: [assetpackPlugin()],
+ server: {
+ port: 3006,
+ host: true,
+ },
+ define: {
+ APP_VERSION: JSON.stringify(process.env.npm_package_version),
+ },
+});
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index d904fe31..5e36b0b3 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -28,10 +28,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -100,14 +100,14 @@ importers:
version: link:../../packages/utils-xstate
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -137,10 +137,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -209,14 +209,14 @@ importers:
version: link:../../packages/utils-xstate
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -242,14 +242,69 @@ importers:
specifier: workspace:*
version: link:../../packages/eslint-config-custom
+ apps/link:
+ dependencies:
+ '@esotericsoftware/spine-pixi-v8':
+ specifier: ^4.2.74
+ version: 4.2.74(pixi.js@8.8.1)
+ '@pixi/sound':
+ specifier: ^6.0.1
+ version: 6.0.1(pixi.js@8.8.1)
+ '@pixi/ui':
+ specifier: ^2.2.2
+ version: 2.2.7(pixi.js@8.8.1)
+ '@types/lodash':
+ specifier: 4.17.16
+ version: 4.17.16
+ constants-shared:
+ specifier: workspace:*
+ version: link:../../packages/constants-shared
+ lodash:
+ specifier: 4.17.16
+ version: 4.17.16
+ motion:
+ specifier: ^12.4.7
+ version: 12.23.18(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ pixi.js:
+ specifier: ^8.8.1
+ version: 8.8.1
+ utils-shared:
+ specifier: workspace:*
+ version: link:../../packages/utils-shared
+ utils-sound:
+ specifier: workspace:*
+ version: link:../../packages/utils-sound
+ vite:
+ specifier: 6.2.0
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
+ devDependencies:
+ '@assetpack/core':
+ specifier: ^1.4.0
+ version: 1.5.3
+ config-ts:
+ specifier: workspace:*
+ version: link:../../packages/config-ts
+ cross-env:
+ specifier: ^10.0.0
+ version: 10.0.0
+ eslint:
+ specifier: 9.21.0
+ version: 9.21.0(jiti@1.21.7)
+ eslint-config-custom:
+ specifier: workspace:*
+ version: link:../../packages/eslint-config-custom
+ typescript:
+ specifier: ~5.7.3
+ version: 5.7.3
+
apps/number-picker:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -318,14 +373,14 @@ importers:
version: link:../../packages/utils-xstate
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -355,10 +410,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -427,14 +482,14 @@ importers:
version: link:../../packages/utils-xstate
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -464,10 +519,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -536,14 +591,14 @@ importers:
version: link:../../packages/utils-xstate
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -573,10 +628,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -645,14 +700,14 @@ importers:
version: link:../../packages/utils-xstate
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -682,7 +737,7 @@ importers:
dependencies:
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -700,14 +755,14 @@ importers:
version: link:../utils-layout
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -734,7 +789,7 @@ importers:
dependencies:
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -761,14 +816,14 @@ importers:
version: link:../utils-shared
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -798,7 +853,7 @@ importers:
dependencies:
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
constants-shared:
specifier: workspace:*
version: link:../constants-shared
@@ -819,17 +874,17 @@ importers:
version: link:../utils-shared
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -862,28 +917,28 @@ importers:
version: 3.2.5(react@19.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)
'@storybook/addon-docs':
specifier: 9.0.15
version: 9.0.15(@types/react@19.1.8)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/builder-vite':
specifier: 9.0.15
- version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/svelte':
specifier: 9.0.15
version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)
'@storybook/sveltekit':
specifier: 9.0.15
- version: 9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/adapter-static':
specifier: latest
- version: 3.0.8(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))
+ version: 3.0.9(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
components-shared:
specifier: workspace:*
version: link:../components-shared
@@ -913,7 +968,7 @@ importers:
version: link:../utils-shared
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
config-storybook:
specifier: workspace:*
@@ -938,10 +993,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
components-shared:
specifier: workspace:*
version: link:../components-shared
@@ -974,14 +1029,14 @@ importers:
version: link:../utils-shared
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -1011,10 +1066,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -1056,14 +1111,14 @@ importers:
version: link:../utils-xstate
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -1102,19 +1157,19 @@ importers:
version: 9.0.15(@types/react@19.1.8)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1))(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1))(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/builder-vite':
specifier: 9.0.15
- version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/svelte':
specifier: 9.0.15
version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)
'@storybook/sveltekit':
specifier: 9.0.15
- version: 9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/adapter-static':
specifier: latest
- version: 3.0.8(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))
+ version: 3.0.9(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))
config-ts:
specifier: workspace:*
version: link:../config-ts
@@ -1129,22 +1184,22 @@ importers:
version: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
packages/config-svelte:
dependencies:
'@sveltejs/adapter-static':
specifier: latest
- version: 3.0.8(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))
+ version: 3.0.9(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))
svelte:
specifier: 5.20.5
version: 5.20.5
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)
devDependencies:
eslint:
specifier: 9.21.0
@@ -1162,16 +1217,16 @@ importers:
dependencies:
'@lingui/vite-plugin':
specifier: 5.2.0
- version: 5.2.0(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.2.0(typescript@5.8.3)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
svelte:
specifier: 5.20.5
version: 5.20.5
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
eslint:
specifier: 9.21.0
@@ -1196,13 +1251,13 @@ importers:
dependencies:
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
svelte:
specifier: 5.20.5
version: 5.20.5
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
config-svelte:
specifier: workspace:*
@@ -1224,22 +1279,22 @@ importers:
dependencies:
'@types/node':
specifier: latest
- version: 24.0.10
+ version: 24.5.2
'@typescript-eslint/eslint-plugin':
specifier: latest
- version: 8.35.1(@typescript-eslint/parser@8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3))(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
+ version: 8.44.0(@typescript-eslint/parser@8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3))(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
'@typescript-eslint/parser':
specifier: latest
- version: 8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
+ version: 8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
eslint-config-prettier:
specifier: latest
- version: 10.1.5(eslint@9.30.1(jiti@1.21.7))
+ version: 10.1.8(eslint@9.30.1(jiti@1.21.7))
eslint-config-turbo:
specifier: latest
- version: 2.5.4(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4)
+ version: 2.5.6(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4)
eslint-plugin-svelte:
specifier: latest
- version: 3.10.1(eslint@9.30.1(jiti@1.21.7))(svelte@5.35.1)
+ version: 3.12.4(eslint@9.30.1(jiti@1.21.7))(svelte@5.35.1)
packages/pixi-svelte:
dependencies:
@@ -1266,7 +1321,7 @@ importers:
version: 5.20.5
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
webfontloader:
specifier: 1.6.28
version: 1.6.28
@@ -1276,7 +1331,7 @@ importers:
version: 2.3.10(svelte@5.20.5)(typescript@5.8.3)
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -1315,22 +1370,22 @@ importers:
version: 9.0.15(@types/react@19.1.8)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))
'@storybook/addon-svelte-csf':
specifier: 5.0.5
- version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/builder-vite':
specifier: 9.0.15
- version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/svelte':
specifier: 9.0.15
version: 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)
'@storybook/sveltekit':
specifier: 9.0.15
- version: 9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/adapter-static':
specifier: latest
- version: 3.0.8(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))
+ version: 3.0.9(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
pixi-svelte:
specifier: workspace:*
version: link:../pixi-svelte
@@ -1348,7 +1403,7 @@ importers:
version: link:../utils-shared
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
components-storybook:
specifier: workspace:*
@@ -1412,10 +1467,10 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
svelte:
specifier: 5.20.5
version: 5.20.5
@@ -1505,14 +1560,14 @@ importers:
version: 5.20.5
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@sveltejs/package':
specifier: 2.3.10
version: 2.3.10(svelte@5.20.5)(typescript@5.8.3)
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
config-svelte:
specifier: workspace:*
version: link:../config-svelte
@@ -1545,7 +1600,7 @@ importers:
dependencies:
'@sveltejs/kit':
specifier: 2.17.3
- version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -1566,11 +1621,11 @@ importers:
version: link:../utils-shared
vite:
specifier: 6.2.0
- version: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ version: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
devDependencies:
'@sveltejs/vite-plugin-svelte':
specifier: 5.0.3
- version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ version: 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
chromatic:
specifier: 11.26.1
version: 11.26.1
@@ -1610,7 +1665,7 @@ importers:
dependencies:
'@lingui/core':
specifier: 5.2.0
- version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ version: 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
'@types/lodash':
specifier: 4.17.16
version: 4.17.16
@@ -1742,6 +1797,10 @@ packages:
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
engines: {node: '>=6.0.0'}
+ '@assetpack/core@1.5.3':
+ resolution: {integrity: sha512-Jkt6BYyTtdBNXlyAitlp4coiiva89YD0ew4Mewklp0G0F4OdJaSeKAtS1y59Os0oxjG4KA+i5bWMCkfm3Ki2pA==}
+ hasBin: true
+
'@babel/code-frame@7.27.1':
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
engines: {node: '>=6.9.0'}
@@ -1827,6 +1886,18 @@ packages:
peerDependencies:
storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0
+ '@emnapi/core@1.5.0':
+ resolution: {integrity: sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==}
+
+ '@emnapi/runtime@1.5.0':
+ resolution: {integrity: sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==}
+
+ '@emnapi/wasi-threads@1.1.0':
+ resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==}
+
+ '@epic-web/invariant@1.0.0':
+ resolution: {integrity: sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==}
+
'@esbuild/aix-ppc64@0.21.5':
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
engines: {node: '>=12'}
@@ -2185,6 +2256,65 @@ packages:
peerDependencies:
pixi.js: ^8.4.0
+ '@ffmpeg-installer/darwin-arm64@4.1.5':
+ resolution: {integrity: sha512-hYqTiP63mXz7wSQfuqfFwfLOfwwFChUedeCVKkBtl/cliaTM7/ePI9bVzfZ2c+dWu3TqCwLDRWNSJ5pqZl8otA==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@ffmpeg-installer/darwin-x64@4.1.0':
+ resolution: {integrity: sha512-Z4EyG3cIFjdhlY8wI9aLUXuH8nVt7E9SlMVZtWvSPnm2sm37/yC2CwjUzyCQbJbySnef1tQwGG2Sx+uWhd9IAw==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@ffmpeg-installer/ffmpeg@1.1.0':
+ resolution: {integrity: sha512-Uq4rmwkdGxIa9A6Bd/VqqYbT7zqh1GrT5/rFwCwKM70b42W5gIjWeVETq6SdcL0zXqDtY081Ws/iJWhr1+xvQg==}
+
+ '@ffmpeg-installer/linux-arm64@4.1.4':
+ resolution: {integrity: sha512-dljEqAOD0oIM6O6DxBW9US/FkvqvQwgJ2lGHOwHDDwu/pX8+V0YsDL1xqHbj1DMX/+nP9rxw7G7gcUvGspSoKg==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@ffmpeg-installer/linux-arm@4.1.3':
+ resolution: {integrity: sha512-NDf5V6l8AfzZ8WzUGZ5mV8O/xMzRag2ETR6+TlGIsMHp81agx51cqpPItXPib/nAZYmo55Bl2L6/WOMI3A5YRg==}
+ cpu: [arm]
+ os: [linux]
+
+ '@ffmpeg-installer/linux-ia32@4.1.0':
+ resolution: {integrity: sha512-0LWyFQnPf+Ij9GQGD034hS6A90URNu9HCtQ5cTqo5MxOEc7Rd8gLXrJvn++UmxhU0J5RyRE9KRYstdCVUjkNOQ==}
+ cpu: [ia32]
+ os: [linux]
+
+ '@ffmpeg-installer/linux-x64@4.1.0':
+ resolution: {integrity: sha512-Y5BWhGLU/WpQjOArNIgXD3z5mxxdV8c41C+U15nsE5yF8tVcdCGet5zPs5Zy3Ta6bU7haGpIzryutqCGQA/W8A==}
+ cpu: [x64]
+ os: [linux]
+
+ '@ffmpeg-installer/win32-ia32@4.1.0':
+ resolution: {integrity: sha512-FV2D7RlaZv/lrtdhaQ4oETwoFUsUjlUiasiZLDxhEUPdNDWcH1OU9K1xTvqz+OXLdsmYelUDuBS/zkMOTtlUAw==}
+ cpu: [ia32]
+ os: [win32]
+
+ '@ffmpeg-installer/win32-x64@4.1.0':
+ resolution: {integrity: sha512-Drt5u2vzDnIONf4ZEkKtFlbvwj6rI3kxw1Ck9fpudmtgaZIHD4ucsWB2lCZBXRxJgXR+2IMSti+4rtM4C4rXgg==}
+ cpu: [x64]
+ os: [win32]
+
+ '@gpu-tex-enc/astc@4.7.1':
+ resolution: {integrity: sha512-ku4RvhQ+qp/k0bp8FbUvJGxfn/nf4FN0tMngPCyDiXbzzSeQip0QausfUt6gILlFGZHtlO+zO7SNkkacDJN3Rw==}
+ hasBin: true
+
+ '@gpu-tex-enc/basis@1.16.4':
+ resolution: {integrity: sha512-J3tnW84Frz+BtnTLp7PmpX9LuRenUxreP1upq/UVwaouyy4UWLQaLatjkHaFww35R7dnr2S4zi5YiB1O+GH9+w==}
+ hasBin: true
+
+ '@gpu-tex-enc/bc@1.0.11':
+ resolution: {integrity: sha512-Nxp3uUS3MG02XMA28uwey9aLNltW0lxRV4gKqrckYGEC4V5R8MG29LXQcW7hJ3xIqhUG2kvt0E80tbq6WzO9Cg==}
+ hasBin: true
+
+ '@gpu-tex-enc/etc@1.0.3':
+ resolution: {integrity: sha512-KRGP0qua3bzj1wdNlkFxg/TV3beGCW5iOlFjVJ90+osDVqYBLd1BsEqRSlqxd3b/gG1S7dL/gX4igqZtUDobKQ==}
+ hasBin: true
+
'@humanfs/core@0.19.1':
resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
engines: {node: '>=18.18.0'}
@@ -2205,168 +2335,697 @@ packages:
resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
engines: {node: '>=18.18'}
- '@isaacs/balanced-match@4.0.1':
- resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
- engines: {node: 20 || >=22}
-
- '@isaacs/brace-expansion@5.0.0':
- resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
- engines: {node: 20 || >=22}
-
- '@isaacs/cliui@8.0.2':
- resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
- engines: {node: '>=12'}
-
- '@jest/schemas@29.6.3':
- resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
-
- '@jest/types@29.6.3':
- resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
-
- '@jridgewell/gen-mapping@0.3.12':
- resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==}
-
- '@jridgewell/resolve-uri@3.1.2':
- resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
- engines: {node: '>=6.0.0'}
-
- '@jridgewell/sourcemap-codec@1.5.4':
- resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==}
+ '@img/colour@1.0.0':
+ resolution: {integrity: sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==}
+ engines: {node: '>=18'}
- '@jridgewell/trace-mapping@0.3.29':
- resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==}
+ '@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}
+ cpu: [arm64]
+ os: [darwin]
- '@lingui/babel-plugin-extract-messages@5.2.0':
- resolution: {integrity: sha512-hQ6tFK72ZXX2813PU9thJbnwJ+SjSrfR3/tt4aqHJcOUdrb67wMVY/0xiUe+vb5y6kVZjZ4oPqdgCfGZ2jWBEw==}
- engines: {node: '>=20.0.0'}
+ '@img/sharp-darwin-arm64@0.34.4':
+ resolution: {integrity: sha512-sitdlPzDVyvmINUdJle3TNHl+AG9QcwiAMsXmccqsCOMZNIdW2/7S26w0LyU8euiLVzFBL3dXPwVCq/ODnf2vA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [darwin]
- '@lingui/babel-plugin-lingui-macro@5.2.0':
- resolution: {integrity: sha512-IEpEfKW2WoGiK30dbovwXaPj69dKUP+GEAk00/6KUMB0sonaBWO4NO3Bj9G6NSdA6fB1lm9BtvuPqJQ2DvjF5g==}
- engines: {node: '>=20.0.0'}
- peerDependencies:
- babel-plugin-macros: 2 || 3
- peerDependenciesMeta:
- babel-plugin-macros:
- optional: true
+ '@img/sharp-darwin-x64@0.33.5':
+ resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [darwin]
- '@lingui/cli@5.2.0':
- resolution: {integrity: sha512-SLMPi9VMNAmhKRGt3HCGIZVHHmxfAcb7zNK9qwrEhlvcwxNmtsPtLb4iJvKy/VpdCQYm7C6D34tFjyVjUZ4ROg==}
- engines: {node: '>=20.0.0'}
- hasBin: true
+ '@img/sharp-darwin-x64@0.34.4':
+ resolution: {integrity: sha512-rZheupWIoa3+SOdF/IcUe1ah4ZDpKBGWcsPX6MT0lYniH9micvIU7HQkYTfrx5Xi8u+YqwLtxC/3vl8TQN6rMg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [darwin]
- '@lingui/conf@5.2.0':
- resolution: {integrity: sha512-3biQJxGntCP+EnOe9jjlquGCBfk6ogq+I8ZduHwmBceY5aQ0OR7V23ItDrMz0NBy8dFNk5YoeHun3CYKYOS/Jg==}
- engines: {node: '>=20.0.0'}
+ '@img/sharp-libvips-darwin-arm64@1.0.4':
+ resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==}
+ cpu: [arm64]
+ os: [darwin]
- '@lingui/core@5.2.0':
- resolution: {integrity: sha512-cz35uKDxIGb/CPvgwn7BM/QYpxtARmQm7n+mHUoNJdNKSrg9R7vKkLRG7k9dukZwix2Mdjh+2dPIJnAkor2CiA==}
- engines: {node: '>=20.0.0'}
- peerDependencies:
- '@lingui/babel-plugin-lingui-macro': 5.2.0
- babel-plugin-macros: 2 || 3
- peerDependenciesMeta:
- '@lingui/babel-plugin-lingui-macro':
- optional: true
- babel-plugin-macros:
- optional: true
+ '@img/sharp-libvips-darwin-arm64@1.2.3':
+ resolution: {integrity: sha512-QzWAKo7kpHxbuHqUC28DZ9pIKpSi2ts2OJnoIGI26+HMgq92ZZ4vk8iJd4XsxN+tYfNJxzH6W62X5eTcsBymHw==}
+ cpu: [arm64]
+ os: [darwin]
- '@lingui/format-po@5.2.0':
- resolution: {integrity: sha512-viUQaoRa8UxSghayTY7xjtwXbfXIVdlM8C4HsxmozQnl5TXnPVEwlaPYds3sdJ8PmQGcYCm35r8EsmuKBoWYDQ==}
- engines: {node: '>=20.0.0'}
+ '@img/sharp-libvips-darwin-x64@1.0.4':
+ resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==}
+ cpu: [x64]
+ os: [darwin]
- '@lingui/message-utils@5.2.0':
- resolution: {integrity: sha512-qJFKNc1b7SRX6y5ywtA1x+2/gaY22e09hjC6fiDvDpAFdEguI4qAJGmBmqlAZG/kcokR0tmMpo9zYUF8jjcHEA==}
- engines: {node: '>=20.0.0'}
- bundledDependencies:
- - '@messageformat/date-skeleton'
+ '@img/sharp-libvips-darwin-x64@1.2.3':
+ resolution: {integrity: sha512-Ju+g2xn1E2AKO6YBhxjj+ACcsPQRHT0bhpglxcEf+3uyPY+/gL8veniKoo96335ZaPo03bdDXMv0t+BBFAbmRA==}
+ cpu: [x64]
+ os: [darwin]
- '@lingui/vite-plugin@5.2.0':
- resolution: {integrity: sha512-jMpf6JJY1s3t4eFRBseTyuQNxy6ERRwg+uLi8EZ/qcaQgQW+GK6qWX/Qg5xQ8k1mJpaP6ihanMQMrkS6d5oR/A==}
- engines: {node: '>=20.0.0'}
- peerDependencies:
- vite: ^3 || ^4 || ^5.0.9 || ^6
+ '@img/sharp-libvips-linux-arm64@1.0.4':
+ resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==}
+ cpu: [arm64]
+ os: [linux]
- '@mdx-js/react@3.1.0':
- resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==}
- peerDependencies:
- '@types/react': '>=16'
- react: '>=16'
+ '@img/sharp-libvips-linux-arm64@1.2.3':
+ resolution: {integrity: sha512-I4RxkXU90cpufazhGPyVujYwfIm9Nk1QDEmiIsaPwdnm013F7RIceaCc87kAH+oUB1ezqEvC6ga4m7MSlqsJvQ==}
+ cpu: [arm64]
+ os: [linux]
- '@messageformat/parser@5.1.1':
- resolution: {integrity: sha512-3p0YRGCcTUCYvBKLIxtDDyrJ0YijGIwrTRu1DT8gIviIDZru8H23+FkY6MJBzM1n9n20CiM4VeDYuBsrrwnLjg==}
+ '@img/sharp-libvips-linux-arm@1.0.5':
+ resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==}
+ cpu: [arm]
+ os: [linux]
- '@nodelib/fs.scandir@2.1.5':
- resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
- engines: {node: '>= 8'}
+ '@img/sharp-libvips-linux-arm@1.2.3':
+ resolution: {integrity: sha512-x1uE93lyP6wEwGvgAIV0gP6zmaL/a0tGzJs/BIDDG0zeBhMnuUPm7ptxGhUbcGs4okDJrk4nxgrmxpib9g6HpA==}
+ cpu: [arm]
+ os: [linux]
- '@nodelib/fs.stat@2.0.5':
- resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
- engines: {node: '>= 8'}
+ '@img/sharp-libvips-linux-ppc64@1.2.3':
+ resolution: {integrity: sha512-Y2T7IsQvJLMCBM+pmPbM3bKT/yYJvVtLJGfCs4Sp95SjvnFIjynbjzsa7dY1fRJX45FTSfDksbTp6AGWudiyCg==}
+ cpu: [ppc64]
+ os: [linux]
- '@nodelib/fs.walk@1.2.8':
- resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
- engines: {node: '>= 8'}
+ '@img/sharp-libvips-linux-s390x@1.0.4':
+ resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==}
+ cpu: [s390x]
+ os: [linux]
- '@pixi/colord@2.9.6':
- resolution: {integrity: sha512-nezytU2pw587fQstUu1AsJZDVEynjskwOL+kibwcdxsMBFqPsFFNA7xl0ii/gXuDi6M0xj3mfRJj8pBSc2jCfA==}
+ '@img/sharp-libvips-linux-s390x@1.2.3':
+ resolution: {integrity: sha512-RgWrs/gVU7f+K7P+KeHFaBAJlNkD1nIZuVXdQv6S+fNA6syCcoboNjsV2Pou7zNlVdNQoQUpQTk8SWDHUA3y/w==}
+ cpu: [s390x]
+ os: [linux]
- '@polka/url@1.0.0-next.29':
- resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==}
+ '@img/sharp-libvips-linux-x64@1.0.4':
+ resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==}
+ cpu: [x64]
+ os: [linux]
- '@rollup/rollup-android-arm-eabi@4.44.1':
- resolution: {integrity: sha512-JAcBr1+fgqx20m7Fwe1DxPUl/hPkee6jA6Pl7n1v2EFiktAHenTaXl5aIFjUIEsfn9w3HE4gK1lEgNGMzBDs1w==}
- cpu: [arm]
- os: [android]
+ '@img/sharp-libvips-linux-x64@1.2.3':
+ resolution: {integrity: sha512-3JU7LmR85K6bBiRzSUc/Ff9JBVIFVvq6bomKE0e63UXGeRw2HPVEjoJke1Yx+iU4rL7/7kUjES4dZ/81Qjhyxg==}
+ cpu: [x64]
+ os: [linux]
- '@rollup/rollup-android-arm64@4.44.1':
- resolution: {integrity: sha512-RurZetXqTu4p+G0ChbnkwBuAtwAbIwJkycw1n6GvlGlBuS4u5qlr5opix8cBAYFJgaY05TWtM+LaoFggUmbZEQ==}
+ '@img/sharp-libvips-linuxmusl-arm64@1.0.4':
+ resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==}
cpu: [arm64]
- os: [android]
+ os: [linux]
- '@rollup/rollup-darwin-arm64@4.44.1':
- resolution: {integrity: sha512-fM/xPesi7g2M7chk37LOnmnSTHLG/v2ggWqKj3CCA1rMA4mm5KVBT1fNoswbo1JhPuNNZrVwpTvlCVggv8A2zg==}
+ '@img/sharp-libvips-linuxmusl-arm64@1.2.3':
+ resolution: {integrity: sha512-F9q83RZ8yaCwENw1GieztSfj5msz7GGykG/BA+MOUefvER69K/ubgFHNeSyUu64amHIYKGDs4sRCMzXVj8sEyw==}
cpu: [arm64]
- os: [darwin]
+ os: [linux]
- '@rollup/rollup-darwin-x64@4.44.1':
- resolution: {integrity: sha512-gDnWk57urJrkrHQ2WVx9TSVTH7lSlU7E3AFqiko+bgjlh78aJ88/3nycMax52VIVjIm3ObXnDL2H00e/xzoipw==}
+ '@img/sharp-libvips-linuxmusl-x64@1.0.4':
+ resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==}
cpu: [x64]
- os: [darwin]
+ os: [linux]
- '@rollup/rollup-freebsd-arm64@4.44.1':
- resolution: {integrity: sha512-wnFQmJ/zPThM5zEGcnDcCJeYJgtSLjh1d//WuHzhf6zT3Md1BvvhJnWoy+HECKu2bMxaIcfWiu3bJgx6z4g2XA==}
+ '@img/sharp-libvips-linuxmusl-x64@1.2.3':
+ resolution: {integrity: sha512-U5PUY5jbc45ANM6tSJpsgqmBF/VsL6LnxJmIf11kB7J5DctHgqm0SkuXzVWtIY90GnJxKnC/JT251TDnk1fu/g==}
+ cpu: [x64]
+ os: [linux]
+
+ '@img/sharp-linux-arm64@0.33.5':
+ resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
- os: [freebsd]
+ os: [linux]
- '@rollup/rollup-freebsd-x64@4.44.1':
- resolution: {integrity: sha512-uBmIxoJ4493YATvU2c0upGz87f99e3wop7TJgOA/bXMFd2SvKCI7xkxY/5k50bv7J6dw1SXT4MQBQSLn8Bb/Uw==}
- cpu: [x64]
- os: [freebsd]
+ '@img/sharp-linux-arm64@0.34.4':
+ resolution: {integrity: sha512-YXU1F/mN/Wu786tl72CyJjP/Ngl8mGHN1hST4BGl+hiW5jhCnV2uRVTNOcaYPs73NeT/H8Upm3y9582JVuZHrQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [linux]
- '@rollup/rollup-linux-arm-gnueabihf@4.44.1':
- resolution: {integrity: sha512-n0edDmSHlXFhrlmTK7XBuwKlG5MbS7yleS1cQ9nn4kIeW+dJH+ExqNgQ0RrFRew8Y+0V/x6C5IjsHrJmiHtkxQ==}
+ '@img/sharp-linux-arm@0.33.5':
+ resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm-musleabihf@4.44.1':
- resolution: {integrity: sha512-8WVUPy3FtAsKSpyk21kV52HCxB+me6YkbkFHATzC2Yd3yuqHwy2lbFL4alJOLXKljoRw08Zk8/xEj89cLQ/4Nw==}
+ '@img/sharp-linux-arm@0.34.4':
+ resolution: {integrity: sha512-Xyam4mlqM0KkTHYVSuc6wXRmM7LGN0P12li03jAnZ3EJWZqj83+hi8Y9UxZUbxsgsK1qOEwg7O0Bc0LjqQVtxA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm]
os: [linux]
- '@rollup/rollup-linux-arm64-gnu@4.44.1':
- resolution: {integrity: sha512-yuktAOaeOgorWDeFJggjuCkMGeITfqvPgkIXhDqsfKX8J3jGyxdDZgBV/2kj/2DyPaLiX6bPdjJDTu9RB8lUPQ==}
- cpu: [arm64]
+ '@img/sharp-linux-ppc64@0.34.4':
+ resolution: {integrity: sha512-F4PDtF4Cy8L8hXA2p3TO6s4aDt93v+LKmpcYFLAVdkkD3hSxZzee0rh6/+94FpAynsuMpLX5h+LRsSG3rIciUQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [ppc64]
os: [linux]
- '@rollup/rollup-linux-arm64-musl@4.44.1':
- resolution: {integrity: sha512-W+GBM4ifET1Plw8pdVaecwUgxmiH23CfAUj32u8knq0JPFyK4weRy6H7ooxYFD19YxBulL0Ktsflg5XS7+7u9g==}
- cpu: [arm64]
+ '@img/sharp-linux-s390x@0.33.5':
+ resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [s390x]
os: [linux]
- '@rollup/rollup-linux-loongarch64-gnu@4.44.1':
- resolution: {integrity: sha512-1zqnUEMWp9WrGVuVak6jWTl4fEtrVKfZY7CvcBmUUpxAJ7WcSowPSAWIKa/0o5mBL/Ij50SIf9tuirGx63Ovew==}
+ '@img/sharp-linux-s390x@0.34.4':
+ resolution: {integrity: sha512-qVrZKE9Bsnzy+myf7lFKvng6bQzhNUAYcVORq2P7bDlvmF6u2sCmK2KyEQEBdYk+u3T01pVsPrkj943T1aJAsw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [s390x]
+ os: [linux]
+
+ '@img/sharp-linux-x64@0.33.5':
+ resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
+
+ '@img/sharp-linux-x64@0.34.4':
+ resolution: {integrity: sha512-ZfGtcp2xS51iG79c6Vhw9CWqQC8l2Ot8dygxoDoIQPTat/Ov3qAa8qpxSrtAEAJW+UjTXc4yxCjNfxm4h6Xm2A==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
+
+ '@img/sharp-linuxmusl-arm64@0.33.5':
+ resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [linux]
+
+ '@img/sharp-linuxmusl-arm64@0.34.4':
+ resolution: {integrity: sha512-8hDVvW9eu4yHWnjaOOR8kHVrew1iIX+MUgwxSuH2XyYeNRtLUe4VNioSqbNkB7ZYQJj9rUTT4PyRscyk2PXFKA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [linux]
+
+ '@img/sharp-linuxmusl-x64@0.33.5':
+ resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
+
+ '@img/sharp-linuxmusl-x64@0.34.4':
+ resolution: {integrity: sha512-lU0aA5L8QTlfKjpDCEFOZsTYGn3AEiO6db8W5aQDxj0nQkVrZWmN3ZP9sYKWJdtq3PWPhUNlqehWyXpYDcI9Sg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
+
+ '@img/sharp-wasm32@0.33.5':
+ resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [wasm32]
+
+ '@img/sharp-wasm32@0.34.4':
+ resolution: {integrity: sha512-33QL6ZO/qpRyG7woB/HUALz28WnTMI2W1jgX3Nu2bypqLIKx/QKMILLJzJjI+SIbvXdG9fUnmrxR7vbi1sTBeA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [wasm32]
+
+ '@img/sharp-win32-arm64@0.34.4':
+ resolution: {integrity: sha512-2Q250do/5WXTwxW3zjsEuMSv5sUU4Tq9VThWKlU2EYLm4MB7ZeMwF+SFJutldYODXF6jzc6YEOC+VfX0SZQPqA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [win32]
+
+ '@img/sharp-win32-ia32@0.33.5':
+ resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [ia32]
+ os: [win32]
+
+ '@img/sharp-win32-ia32@0.34.4':
+ resolution: {integrity: sha512-3ZeLue5V82dT92CNL6rsal6I2weKw1cYu+rGKm8fOCCtJTR2gYeUfY3FqUnIJsMUPIH68oS5jmZ0NiJ508YpEw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [ia32]
+ os: [win32]
+
+ '@img/sharp-win32-x64@0.33.5':
+ resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [win32]
+
+ '@img/sharp-win32-x64@0.34.4':
+ resolution: {integrity: sha512-xIyj4wpYs8J18sVN3mSQjwrw7fKUqRw+Z5rnHNCy5fYTxigBz81u5mOMPmFumwjcn8+ld1ppptMBCLic1nz6ig==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [win32]
+
+ '@isaacs/balanced-match@4.0.1':
+ resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
+ engines: {node: 20 || >=22}
+
+ '@isaacs/brace-expansion@5.0.0':
+ resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
+ engines: {node: 20 || >=22}
+
+ '@isaacs/cliui@8.0.2':
+ resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
+ engines: {node: '>=12'}
+
+ '@jest/schemas@29.6.3':
+ resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
+ '@jest/types@29.6.3':
+ resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
+ '@jimp/core@1.6.0':
+ resolution: {integrity: sha512-EQQlKU3s9QfdJqiSrZWNTxBs3rKXgO2W+GxNXDtwchF3a4IqxDheFX1ti+Env9hdJXDiYLp2jTRjlxhPthsk8w==}
+ engines: {node: '>=18'}
+
+ '@jimp/diff@1.6.0':
+ resolution: {integrity: sha512-+yUAQ5gvRC5D1WHYxjBHZI7JBRusGGSLf8AmPRPCenTzh4PA+wZ1xv2+cYqQwTfQHU5tXYOhA0xDytfHUf1Zyw==}
+ engines: {node: '>=18'}
+
+ '@jimp/file-ops@1.6.0':
+ resolution: {integrity: sha512-Dx/bVDmgnRe1AlniRpCKrGRm5YvGmUwbDzt+MAkgmLGf+jvBT75hmMEZ003n9HQI/aPnm/YKnXjg/hOpzNCpHQ==}
+ engines: {node: '>=18'}
+
+ '@jimp/js-bmp@1.6.0':
+ resolution: {integrity: sha512-FU6Q5PC/e3yzLyBDXupR3SnL3htU7S3KEs4e6rjDP6gNEOXRFsWs6YD3hXuXd50jd8ummy+q2WSwuGkr8wi+Gw==}
+ engines: {node: '>=18'}
+
+ '@jimp/js-gif@1.6.0':
+ resolution: {integrity: sha512-N9CZPHOrJTsAUoWkWZstLPpwT5AwJ0wge+47+ix3++SdSL/H2QzyMqxbcDYNFe4MoI5MIhATfb0/dl/wmX221g==}
+ engines: {node: '>=18'}
+
+ '@jimp/js-jpeg@1.6.0':
+ resolution: {integrity: sha512-6vgFDqeusblf5Pok6B2DUiMXplH8RhIKAryj1yn+007SIAQ0khM1Uptxmpku/0MfbClx2r7pnJv9gWpAEJdMVA==}
+ engines: {node: '>=18'}
+
+ '@jimp/js-png@1.6.0':
+ resolution: {integrity: sha512-AbQHScy3hDDgMRNfG0tPjL88AV6qKAILGReIa3ATpW5QFjBKpisvUaOqhzJ7Reic1oawx3Riyv152gaPfqsBVg==}
+ engines: {node: '>=18'}
+
+ '@jimp/js-tiff@1.6.0':
+ resolution: {integrity: sha512-zhReR8/7KO+adijj3h0ZQUOiun3mXUv79zYEAKvE0O+rP7EhgtKvWJOZfRzdZSNv0Pu1rKtgM72qgtwe2tFvyw==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-blit@1.6.0':
+ resolution: {integrity: sha512-M+uRWl1csi7qilnSK8uxK4RJMSuVeBiO1AY0+7APnfUbQNZm6hCe0CCFv1Iyw1D/Dhb8ph8fQgm5mwM0eSxgVA==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-blur@1.6.0':
+ resolution: {integrity: sha512-zrM7iic1OTwUCb0g/rN5y+UnmdEsT3IfuCXCJJNs8SZzP0MkZ1eTvuwK9ZidCuMo4+J3xkzCidRwYXB5CyGZTw==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-circle@1.6.0':
+ resolution: {integrity: sha512-xt1Gp+LtdMKAXfDp3HNaG30SPZW6AQ7dtAtTnoRKorRi+5yCJjKqXRgkewS5bvj8DEh87Ko1ydJfzqS3P2tdWw==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-color@1.6.0':
+ resolution: {integrity: sha512-J5q8IVCpkBsxIXM+45XOXTrsyfblyMZg3a9eAo0P7VPH4+CrvyNQwaYatbAIamSIN1YzxmO3DkIZXzRjFSz1SA==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-contain@1.6.0':
+ resolution: {integrity: sha512-oN/n+Vdq/Qg9bB4yOBOxtY9IPAtEfES8J1n9Ddx+XhGBYT1/QTU/JYkGaAkIGoPnyYvmLEDqMz2SGihqlpqfzQ==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-cover@1.6.0':
+ resolution: {integrity: sha512-Iow0h6yqSC269YUJ8HC3Q/MpCi2V55sMlbkkTTx4zPvd8mWZlC0ykrNDeAy9IJegrQ7v5E99rJwmQu25lygKLA==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-crop@1.6.0':
+ resolution: {integrity: sha512-KqZkEhvs+21USdySCUDI+GFa393eDIzbi1smBqkUPTE+pRwSWMAf01D5OC3ZWB+xZsNla93BDS9iCkLHA8wang==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-displace@1.6.0':
+ resolution: {integrity: sha512-4Y10X9qwr5F+Bo5ME356XSACEF55485j5nGdiyJ9hYzjQP9nGgxNJaZ4SAOqpd+k5sFaIeD7SQ0Occ26uIng5Q==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-dither@1.6.0':
+ resolution: {integrity: sha512-600d1RxY0pKwgyU0tgMahLNKsqEcxGdbgXadCiVCoGd6V6glyCvkNrnnwC0n5aJ56Htkj88PToSdF88tNVZEEQ==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-fisheye@1.6.0':
+ resolution: {integrity: sha512-E5QHKWSCBFtpgZarlmN3Q6+rTQxjirFqo44ohoTjzYVrDI6B6beXNnPIThJgPr0Y9GwfzgyarKvQuQuqCnnfbA==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-flip@1.6.0':
+ resolution: {integrity: sha512-/+rJVDuBIVOgwoyVkBjUFHtP+wmW0r+r5OQ2GpatQofToPVbJw1DdYWXlwviSx7hvixTWLKVgRWQ5Dw862emDg==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-hash@1.6.0':
+ resolution: {integrity: sha512-wWzl0kTpDJgYVbZdajTf+4NBSKvmI3bRI8q6EH9CVeIHps9VWVsUvEyb7rpbcwVLWYuzDtP2R0lTT6WeBNQH9Q==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-mask@1.6.0':
+ resolution: {integrity: sha512-Cwy7ExSJMZszvkad8NV8o/Z92X2kFUFM8mcDAhNVxU0Q6tA0op2UKRJY51eoK8r6eds/qak3FQkXakvNabdLnA==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-print@1.6.0':
+ resolution: {integrity: sha512-zarTIJi8fjoGMSI/M3Xh5yY9T65p03XJmPsuNet19K/Q7mwRU6EV2pfj+28++2PV2NJ+htDF5uecAlnGyxFN2A==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-quantize@1.6.0':
+ resolution: {integrity: sha512-EmzZ/s9StYQwbpG6rUGBCisc3f64JIhSH+ncTJd+iFGtGo0YvSeMdAd+zqgiHpfZoOL54dNavZNjF4otK+mvlg==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-resize@1.6.0':
+ resolution: {integrity: sha512-uSUD1mqXN9i1SGSz5ov3keRZ7S9L32/mAQG08wUwZiEi5FpbV0K8A8l1zkazAIZi9IJzLlTauRNU41Mi8IF9fA==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-rotate@1.6.0':
+ resolution: {integrity: sha512-JagdjBLnUZGSG4xjCLkIpQOZZ3Mjbg8aGCCi4G69qR+OjNpOeGI7N2EQlfK/WE8BEHOW5vdjSyglNqcYbQBWRw==}
+ engines: {node: '>=18'}
+
+ '@jimp/plugin-threshold@1.6.0':
+ resolution: {integrity: sha512-M59m5dzLoHOVWdM41O8z9SyySzcDn43xHseOH0HavjsfQsT56GGCC4QzU1banJidbUrePhzoEdS42uFE8Fei8w==}
+ engines: {node: '>=18'}
+
+ '@jimp/types@1.6.0':
+ resolution: {integrity: sha512-7UfRsiKo5GZTAATxm2qQ7jqmUXP0DxTArztllTcYdyw6Xi5oT4RaoXynVtCD4UyLK5gJgkZJcwonoijrhYFKfg==}
+ engines: {node: '>=18'}
+
+ '@jimp/utils@1.6.0':
+ resolution: {integrity: sha512-gqFTGEosKbOkYF/WFj26jMHOI5OH2jeP1MmC/zbK6BF6VJBf8rIC5898dPfSzZEbSA0wbbV5slbntWVc5PKLFA==}
+ engines: {node: '>=18'}
+
+ '@jridgewell/gen-mapping@0.3.12':
+ resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==}
+
+ '@jridgewell/resolve-uri@3.1.2':
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
+
+ '@jridgewell/sourcemap-codec@1.5.4':
+ resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==}
+
+ '@jridgewell/trace-mapping@0.3.29':
+ resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==}
+
+ '@lingui/babel-plugin-extract-messages@5.2.0':
+ resolution: {integrity: sha512-hQ6tFK72ZXX2813PU9thJbnwJ+SjSrfR3/tt4aqHJcOUdrb67wMVY/0xiUe+vb5y6kVZjZ4oPqdgCfGZ2jWBEw==}
+ engines: {node: '>=20.0.0'}
+
+ '@lingui/babel-plugin-lingui-macro@5.2.0':
+ resolution: {integrity: sha512-IEpEfKW2WoGiK30dbovwXaPj69dKUP+GEAk00/6KUMB0sonaBWO4NO3Bj9G6NSdA6fB1lm9BtvuPqJQ2DvjF5g==}
+ engines: {node: '>=20.0.0'}
+ peerDependencies:
+ babel-plugin-macros: 2 || 3
+ peerDependenciesMeta:
+ babel-plugin-macros:
+ optional: true
+
+ '@lingui/cli@5.2.0':
+ resolution: {integrity: sha512-SLMPi9VMNAmhKRGt3HCGIZVHHmxfAcb7zNK9qwrEhlvcwxNmtsPtLb4iJvKy/VpdCQYm7C6D34tFjyVjUZ4ROg==}
+ engines: {node: '>=20.0.0'}
+ hasBin: true
+
+ '@lingui/conf@5.2.0':
+ resolution: {integrity: sha512-3biQJxGntCP+EnOe9jjlquGCBfk6ogq+I8ZduHwmBceY5aQ0OR7V23ItDrMz0NBy8dFNk5YoeHun3CYKYOS/Jg==}
+ engines: {node: '>=20.0.0'}
+
+ '@lingui/core@5.2.0':
+ resolution: {integrity: sha512-cz35uKDxIGb/CPvgwn7BM/QYpxtARmQm7n+mHUoNJdNKSrg9R7vKkLRG7k9dukZwix2Mdjh+2dPIJnAkor2CiA==}
+ engines: {node: '>=20.0.0'}
+ peerDependencies:
+ '@lingui/babel-plugin-lingui-macro': 5.2.0
+ babel-plugin-macros: 2 || 3
+ peerDependenciesMeta:
+ '@lingui/babel-plugin-lingui-macro':
+ optional: true
+ babel-plugin-macros:
+ optional: true
+
+ '@lingui/format-po@5.2.0':
+ resolution: {integrity: sha512-viUQaoRa8UxSghayTY7xjtwXbfXIVdlM8C4HsxmozQnl5TXnPVEwlaPYds3sdJ8PmQGcYCm35r8EsmuKBoWYDQ==}
+ engines: {node: '>=20.0.0'}
+
+ '@lingui/message-utils@5.2.0':
+ resolution: {integrity: sha512-qJFKNc1b7SRX6y5ywtA1x+2/gaY22e09hjC6fiDvDpAFdEguI4qAJGmBmqlAZG/kcokR0tmMpo9zYUF8jjcHEA==}
+ engines: {node: '>=20.0.0'}
+ bundledDependencies:
+ - '@messageformat/date-skeleton'
+
+ '@lingui/vite-plugin@5.2.0':
+ resolution: {integrity: sha512-jMpf6JJY1s3t4eFRBseTyuQNxy6ERRwg+uLi8EZ/qcaQgQW+GK6qWX/Qg5xQ8k1mJpaP6ihanMQMrkS6d5oR/A==}
+ engines: {node: '>=20.0.0'}
+ peerDependencies:
+ vite: ^3 || ^4 || ^5.0.9 || ^6
+
+ '@mdx-js/react@3.1.0':
+ resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==}
+ peerDependencies:
+ '@types/react': '>=16'
+ react: '>=16'
+
+ '@messageformat/parser@5.1.1':
+ resolution: {integrity: sha512-3p0YRGCcTUCYvBKLIxtDDyrJ0YijGIwrTRu1DT8gIviIDZru8H23+FkY6MJBzM1n9n20CiM4VeDYuBsrrwnLjg==}
+
+ '@napi-rs/wasm-runtime@0.2.12':
+ resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==}
+
+ '@napi-rs/wasm-runtime@1.0.5':
+ resolution: {integrity: sha512-TBr9Cf9onSAS2LQ2+QHx6XcC6h9+RIzJgbqG3++9TUZSH204AwEy5jg3BTQ0VATsyoGj4ee49tN/y6rvaOOtcg==}
+
+ '@napi-rs/woff-build-android-arm-eabi@0.2.2':
+ resolution: {integrity: sha512-yXtQYhOH8rmRJDzp3pS7ZSHYigSIbeI6AdLanJnjPs8sJ+EGAqetew5bAJL+QOe7pSuXyYRPRvTC4YCgB0Iw5Q==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [android]
+
+ '@napi-rs/woff-build-android-arm64@0.2.2':
+ resolution: {integrity: sha512-3wadXjr1+Z63lBJYPaljXtqkYFMW2IILvt3mkztLaqfxZDYZbfyLy7War8I+L2IaYUamDF0rjz3iC/K+OyrZvA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [android]
+
+ '@napi-rs/woff-build-darwin-arm64@0.2.2':
+ resolution: {integrity: sha512-4ugP2K2VYeTE0rn7BnNZEHbvFE8B2V8fkrVo65x0nivmmw2u7rsWjt1jdf1oC3yQYHy5VM/Nq9iepqm8NfJsjA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@napi-rs/woff-build-darwin-x64@0.2.2':
+ resolution: {integrity: sha512-6KL02hFcYY6R5lC0Zxz924/J4fnrBoeVST5AjD1HlM4K/B8b7wyFH27zfsD2LvVsJ2jSZAiuiRfFDDYlKQCo8A==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@napi-rs/woff-build-linux-arm64-gnu@0.2.2':
+ resolution: {integrity: sha512-Mu/3fSBYghjZZrHVb+ML39EYj9AUvTLCIQ9aCJpgGsjk1BAKFRugtB5QjScnXoVtspFKogaTYUbS2j2mTT5gVw==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@napi-rs/woff-build-linux-arm64-musl@0.2.2':
+ resolution: {integrity: sha512-4aeqALBdYYPKm8IykUl4hHidkmReBC5KDKtXnDKdGfXt3UPLCsK+szvGMN5H9+AkqYpN0AAkh+3jzK1KXAP1Jg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@napi-rs/woff-build-linux-x64-gnu@0.2.2':
+ resolution: {integrity: sha512-NBS9dsif1HSNJzpYNm9Gcc1I1fq9r0QWWxNuJdda+iUFTxuy81yVqL3hvUS3ru4aiF3qo5iya5/bgWWpHEhnww==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@napi-rs/woff-build-linux-x64-musl@0.2.2':
+ resolution: {integrity: sha512-NLDLObX0JX+Plok/fJFCgi/fGwevcn8bI9GSd4Sz/jPY1hZtb/1o1Z0egGMkfyZxTKx8fSg5+VMU1yDii1Uvfw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@napi-rs/woff-build-wasm32-wasi@0.2.2':
+ resolution: {integrity: sha512-h6sOnis3zgAs65vy1ReA6Csiyxs5uv0i+IftcEZaR4sTEORkkfFU0UFesHcRy1Rp1SQQbcz/5RShWPFN2SIh8w==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
+ '@napi-rs/woff-build-win32-arm64-msvc@0.2.2':
+ resolution: {integrity: sha512-HT3cxkXHnL6gEyMoOqW2BRnEKNNJWwvt6hzH29+fXglm3C4E1xwRf/4quF/71CJDfW4K4kN6xPyL+UDl5GgzpQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@napi-rs/woff-build-win32-ia32-msvc@0.2.2':
+ resolution: {integrity: sha512-FLzw4FGVdr952exrpH3ULK+drjQiCMZTpp8vI9Nc6wKUkZ7236zJAvfsRPi91hfpipyBbo7u7CiuVP0p4Cx8sw==}
+ engines: {node: '>= 10'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@napi-rs/woff-build-win32-x64-msvc@0.2.2':
+ resolution: {integrity: sha512-X9kOtqy+j/azXrcuwCgBg0WVgtgyKwhm0C+qca+20sqSPpNywDSfwCGmy+aIaNzRXF4V6VTj3IG9Iis+wKPPVw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+
+ '@napi-rs/woff-build@0.2.2':
+ resolution: {integrity: sha512-dJst7XDaCsXjz9y8UYQhg120cloaKDSH+fS96M87HutzO/RdK9E1JNKq9JGNYWRCiYOlDRX0rUqJnL0rLDsOCw==}
+ engines: {node: '>= 10'}
+
+ '@node-rs/crc32-android-arm-eabi@1.10.6':
+ resolution: {integrity: sha512-vZAMuJXm3TpWPOkkhxdrofWDv+Q+I2oO7ucLRbXyAPmXFNDhHtBxbO1rk9Qzz+M3eep8ieS4/+jCL1Q0zacNMQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [android]
+
+ '@node-rs/crc32-android-arm64@1.10.6':
+ resolution: {integrity: sha512-Vl/JbjCinCw/H9gEpZveWCMjxjcEChDcDBM8S4hKay5yyoRCUHJPuKr4sjVDBeOm+1nwU3oOm6Ca8dyblwp4/w==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [android]
+
+ '@node-rs/crc32-darwin-arm64@1.10.6':
+ resolution: {integrity: sha512-kARYANp5GnmsQiViA5Qu74weYQ3phOHSYQf0G+U5wB3NB5JmBHnZcOc46Ig21tTypWtdv7u63TaltJQE41noyg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@node-rs/crc32-darwin-x64@1.10.6':
+ resolution: {integrity: sha512-Q99bevJVMfLTISpkpKBlXgtPUItrvTWKFyiqoKH5IvscZmLV++NH4V13Pa17GTBmv9n18OwzgQY4/SRq6PQNVA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@node-rs/crc32-freebsd-x64@1.10.6':
+ resolution: {integrity: sha512-66hpawbNjrgnS9EDMErta/lpaqOMrL6a6ee+nlI2viduVOmRZWm9Rg9XdGTK/+c4bQLdtC6jOd+Kp4EyGRYkAg==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@node-rs/crc32-linux-arm-gnueabihf@1.10.6':
+ resolution: {integrity: sha512-E8Z0WChH7X6ankbVm8J/Yym19Cq3otx6l4NFPS6JW/cWdjv7iw+Sps2huSug+TBprjbcEA+s4TvEwfDI1KScjg==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [linux]
+
+ '@node-rs/crc32-linux-arm64-gnu@1.10.6':
+ resolution: {integrity: sha512-LmWcfDbqAvypX0bQjQVPmQGazh4dLiVklkgHxpV4P0TcQ1DT86H/SWpMBMs/ncF8DGuCQ05cNyMv1iddUDugoQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@node-rs/crc32-linux-arm64-musl@1.10.6':
+ resolution: {integrity: sha512-k8ra/bmg0hwRrIEE8JL1p32WfaN9gDlUUpQRWsbxd1WhjqvXea7kKO6K4DwVxyxlPhBS9Gkb5Urq7Y4mXANzaw==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@node-rs/crc32-linux-x64-gnu@1.10.6':
+ resolution: {integrity: sha512-IfjtqcuFK7JrSZ9mlAFhb83xgium30PguvRjIMI45C3FJwu18bnLk1oR619IYb/zetQT82MObgmqfKOtgemEKw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@node-rs/crc32-linux-x64-musl@1.10.6':
+ resolution: {integrity: sha512-LbFYsA5M9pNunOweSt6uhxenYQF94v3bHDAQRPTQ3rnjn+mK6IC7YTAYoBjvoJP8lVzcvk9hRj8wp4Jyh6Y80g==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
+ '@node-rs/crc32-wasm32-wasi@1.10.6':
+ resolution: {integrity: sha512-KaejdLgHMPsRaxnM+OG9L9XdWL2TabNx80HLdsCOoX9BVhEkfh39OeahBo8lBmidylKbLGMQoGfIKDjq0YMStw==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
+ '@node-rs/crc32-win32-arm64-msvc@1.10.6':
+ resolution: {integrity: sha512-x50AXiSxn5Ccn+dCjLf1T7ZpdBiV1Sp5aC+H2ijhJO4alwznvXgWbopPRVhbp2nj0i+Gb6kkDUEyU+508KAdGQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@node-rs/crc32-win32-ia32-msvc@1.10.6':
+ resolution: {integrity: sha512-DpDxQLaErJF9l36aghe1Mx+cOnYLKYo6qVPqPL9ukJ5rAGLtCdU0C+Zoi3gs9ySm8zmbFgazq/LvmsZYU42aBw==}
+ engines: {node: '>= 10'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@node-rs/crc32-win32-x64-msvc@1.10.6':
+ resolution: {integrity: sha512-5B1vXosIIBw1m2Rcnw62IIfH7W9s9f7H7Ma0rRuhT8HR4Xh8QCgw6NJSI2S2MCngsGktYnAhyUvs81b7efTyQw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+
+ '@node-rs/crc32@1.10.6':
+ resolution: {integrity: sha512-+llXfqt+UzgoDzT9of5vPQPGqTAVCohU74I9zIBkNo5TH6s2P31DFJOGsJQKN207f0GHnYv5pV3wh3BCY/un/A==}
+ engines: {node: '>= 10'}
+
+ '@nodelib/fs.scandir@2.1.5':
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.stat@2.0.5':
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.walk@1.2.8':
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
+
+ '@pixi/colord@2.9.6':
+ resolution: {integrity: sha512-nezytU2pw587fQstUu1AsJZDVEynjskwOL+kibwcdxsMBFqPsFFNA7xl0ii/gXuDi6M0xj3mfRJj8pBSc2jCfA==}
+
+ '@pixi/msdf-bmfont-xml@3.0.0':
+ resolution: {integrity: sha512-h/FDfBnWiv4+5JNNsfYs3wpDYYOJCCd14PMbFpt1sHDfutJGZ6MvDvq5JI7pL6toX25uyGPV9ADMCdV1KCVulg==}
+ hasBin: true
+
+ '@pixi/sound@6.0.1':
+ resolution: {integrity: sha512-hpFlQSScAR2L/CsEoIvDi7s1oGsu8y9Zd742Vd3982N+q3IF2vFuIfV9HN4ryjlGnhCT8yBlEgs1gp4G9Rt9TA==}
+ peerDependencies:
+ pixi.js: ^8.0.0
+
+ '@pixi/svg2ttf@6.1.0':
+ resolution: {integrity: sha512-qT7P6F48lyWVWn6w0qxWtxLVVPEcXzAlo9/nimh4cflfKQWdApqfCZVOCgaaO0xHVpClbhCzApQXlJnLEs1oaw==}
+ hasBin: true
+
+ '@pixi/ui@2.2.7':
+ resolution: {integrity: sha512-YMVx3WImhOc/8Navqj+d4SKVNAjyuHecvMGFIdh8NPIfzwgV3MoxIkwswHcuGpxQAljG1psMbMHVIAEKznN9oA==}
+ peerDependencies:
+ pixi.js: ^8.6.2
+
+ '@polka/url@1.0.0-next.29':
+ resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==}
+
+ '@rollup/rollup-android-arm-eabi@4.44.1':
+ resolution: {integrity: sha512-JAcBr1+fgqx20m7Fwe1DxPUl/hPkee6jA6Pl7n1v2EFiktAHenTaXl5aIFjUIEsfn9w3HE4gK1lEgNGMzBDs1w==}
+ cpu: [arm]
+ os: [android]
+
+ '@rollup/rollup-android-arm64@4.44.1':
+ resolution: {integrity: sha512-RurZetXqTu4p+G0ChbnkwBuAtwAbIwJkycw1n6GvlGlBuS4u5qlr5opix8cBAYFJgaY05TWtM+LaoFggUmbZEQ==}
+ cpu: [arm64]
+ os: [android]
+
+ '@rollup/rollup-darwin-arm64@4.44.1':
+ resolution: {integrity: sha512-fM/xPesi7g2M7chk37LOnmnSTHLG/v2ggWqKj3CCA1rMA4mm5KVBT1fNoswbo1JhPuNNZrVwpTvlCVggv8A2zg==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rollup/rollup-darwin-x64@4.44.1':
+ resolution: {integrity: sha512-gDnWk57urJrkrHQ2WVx9TSVTH7lSlU7E3AFqiko+bgjlh78aJ88/3nycMax52VIVjIm3ObXnDL2H00e/xzoipw==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rollup/rollup-freebsd-arm64@4.44.1':
+ resolution: {integrity: sha512-wnFQmJ/zPThM5zEGcnDcCJeYJgtSLjh1d//WuHzhf6zT3Md1BvvhJnWoy+HECKu2bMxaIcfWiu3bJgx6z4g2XA==}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@rollup/rollup-freebsd-x64@4.44.1':
+ resolution: {integrity: sha512-uBmIxoJ4493YATvU2c0upGz87f99e3wop7TJgOA/bXMFd2SvKCI7xkxY/5k50bv7J6dw1SXT4MQBQSLn8Bb/Uw==}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@rollup/rollup-linux-arm-gnueabihf@4.44.1':
+ resolution: {integrity: sha512-n0edDmSHlXFhrlmTK7XBuwKlG5MbS7yleS1cQ9nn4kIeW+dJH+ExqNgQ0RrFRew8Y+0V/x6C5IjsHrJmiHtkxQ==}
+ cpu: [arm]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm-musleabihf@4.44.1':
+ resolution: {integrity: sha512-8WVUPy3FtAsKSpyk21kV52HCxB+me6YkbkFHATzC2Yd3yuqHwy2lbFL4alJOLXKljoRw08Zk8/xEj89cLQ/4Nw==}
+ cpu: [arm]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm64-gnu@4.44.1':
+ resolution: {integrity: sha512-yuktAOaeOgorWDeFJggjuCkMGeITfqvPgkIXhDqsfKX8J3jGyxdDZgBV/2kj/2DyPaLiX6bPdjJDTu9RB8lUPQ==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm64-musl@4.44.1':
+ resolution: {integrity: sha512-W+GBM4ifET1Plw8pdVaecwUgxmiH23CfAUj32u8knq0JPFyK4weRy6H7ooxYFD19YxBulL0Ktsflg5XS7+7u9g==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rollup/rollup-linux-loongarch64-gnu@4.44.1':
+ resolution: {integrity: sha512-1zqnUEMWp9WrGVuVak6jWTl4fEtrVKfZY7CvcBmUUpxAJ7WcSowPSAWIKa/0o5mBL/Ij50SIf9tuirGx63Ovew==}
cpu: [loong64]
os: [linux]
@@ -2492,8 +3151,8 @@ packages:
peerDependencies:
acorn: ^8.9.0
- '@sveltejs/adapter-static@3.0.8':
- resolution: {integrity: sha512-YaDrquRpZwfcXbnlDsSrBQNCChVOT9MGuSg+dMAyfsAa1SmiAhrA5jUYUiIMC59G92kIbY/AaQOWcBdq+lh+zg==}
+ '@sveltejs/adapter-static@3.0.9':
+ resolution: {integrity: sha512-aytHXcMi7lb9ljsWUzXYQ0p5X1z9oWud2olu/EpmH7aCu4m84h7QLvb5Wp+CFirKcwoNnYvYWhyP/L8Vh1ztdw==}
peerDependencies:
'@sveltejs/kit': ^2.0.0
@@ -2544,6 +3203,9 @@ packages:
svelte: ^5.0.0
vite: ^6.0.0
+ '@swc/helpers@0.3.17':
+ resolution: {integrity: sha512-tb7Iu+oZ+zWJZ3HJqwx8oNwSDIU440hmVMDPhpACWQWnrZHK99Bxs70gT1L2dnr5Hg50ZRWEFkQCAnOVVV0z1Q==}
+
'@testing-library/dom@10.4.0':
resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==}
engines: {node: '>=18'}
@@ -2558,12 +3220,24 @@ packages:
peerDependencies:
'@testing-library/dom': '>=7.21.4'
+ '@tokenizer/token@0.3.0':
+ resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==}
+
+ '@tybys/wasm-util@0.10.1':
+ resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==}
+
'@types/aria-query@5.0.4':
resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==}
'@types/chai@5.2.2':
resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==}
+ '@types/cli-progress@3.11.6':
+ resolution: {integrity: sha512-cE3+jb9WRlu+uOSAugewNpITJDt1VF8dHOopPO4IABFc3SXYL5WE/+PTz/FCdZRRfIujiWW3n3aMbv1eIGVRWA==}
+
+ '@types/clone@2.1.4':
+ resolution: {integrity: sha512-NKRWaEGaVGVLnGLB2GazvDaZnyweW9FJLLFL5LhywGJB3aqGMT9R/EUoJoSRP4nzofYnZysuDmrEJtJdAqUOtQ==}
+
'@types/cookie@0.6.0':
resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
@@ -2579,6 +3253,12 @@ packages:
'@types/estree@1.0.8':
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
+ '@types/fluent-ffmpeg@2.1.27':
+ resolution: {integrity: sha512-QiDWjihpUhriISNoBi2hJBRUUmoj/BMTYcfz+F+ZM9hHWBYABFAE6hjP/TbCZC0GWwlpa3FzvHH9RzFeRusZ7A==}
+
+ '@types/fs-extra@11.0.4':
+ resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==}
+
'@types/gradient-parser@0.1.5':
resolution: {integrity: sha512-r7K3NkJz3A95WkVVmjs0NcchhHstC2C/VIYNX4JC6tieviUNo774FFeOHjThr3Vw/WCeMP9kAT77MKbIRlO/4w==}
@@ -2597,17 +3277,23 @@ packages:
'@types/json-schema@7.0.15':
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+ '@types/jsonfile@6.1.4':
+ resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==}
+
'@types/lodash@4.17.16':
resolution: {integrity: sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==}
'@types/mdx@2.0.13':
resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==}
- '@types/node@24.0.10':
- resolution: {integrity: sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==}
+ '@types/node@16.9.1':
+ resolution: {integrity: sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==}
- '@types/node@24.0.13':
- resolution: {integrity: sha512-Qm9OYVOFHFYg3wJoTSrz80hoec5Lia/dPp84do3X7dZvLikQvM1YpmvTBEdIr/e+U8HTkFjLHLnl78K/qjf+jQ==}
+ '@types/node@24.5.2':
+ resolution: {integrity: sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==}
+
+ '@types/object-hash@3.0.6':
+ resolution: {integrity: sha512-fOBV8C1FIu2ELinoILQ+ApxcUKz4ngq+IWUYrxSGjXzzjUALijilampwkMgEtJ+h2njAW3pi853QpzNVCHB73w==}
'@types/parse-json@4.0.2':
resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==}
@@ -2624,63 +3310,63 @@ packages:
'@types/yargs@17.0.33':
resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==}
- '@typescript-eslint/eslint-plugin@8.35.1':
- resolution: {integrity: sha512-9XNTlo7P7RJxbVeICaIIIEipqxLKguyh+3UbXuT2XQuFp6d8VOeDEGuz5IiX0dgZo8CiI6aOFLg4e8cF71SFVg==}
+ '@typescript-eslint/eslint-plugin@8.44.0':
+ resolution: {integrity: sha512-EGDAOGX+uwwekcS0iyxVDmRV9HX6FLSM5kzrAToLTsr9OWCIKG/y3lQheCq18yZ5Xh78rRKJiEpP0ZaCs4ryOQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- '@typescript-eslint/parser': ^8.35.1
+ '@typescript-eslint/parser': ^8.44.0
eslint: ^8.57.0 || ^9.0.0
- typescript: '>=4.8.4 <5.9.0'
+ typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/parser@8.35.1':
- resolution: {integrity: sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==}
+ '@typescript-eslint/parser@8.44.0':
+ resolution: {integrity: sha512-VGMpFQGUQWYT9LfnPcX8ouFojyrZ/2w3K5BucvxL/spdNehccKhB4jUyB1yBCXpr2XFm0jkECxgrpXBW2ipoAw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
- typescript: '>=4.8.4 <5.9.0'
+ typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/project-service@8.35.1':
- resolution: {integrity: sha512-VYxn/5LOpVxADAuP3NrnxxHYfzVtQzLKeldIhDhzC8UHaiQvYlXvKuVho1qLduFbJjjy5U5bkGwa3rUGUb1Q6Q==}
+ '@typescript-eslint/project-service@8.44.0':
+ resolution: {integrity: sha512-ZeaGNraRsq10GuEohKTo4295Z/SuGcSq2LzfGlqiuEvfArzo/VRrT0ZaJsVPuKZ55lVbNk8U6FcL+ZMH8CoyVA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- typescript: '>=4.8.4 <5.9.0'
+ typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/scope-manager@8.35.1':
- resolution: {integrity: sha512-s/Bpd4i7ht2934nG+UoSPlYXd08KYz3bmjLEb7Ye1UVob0d1ENiT3lY8bsCmik4RqfSbPw9xJJHbugpPpP5JUg==}
+ '@typescript-eslint/scope-manager@8.44.0':
+ resolution: {integrity: sha512-87Jv3E+al8wpD+rIdVJm/ItDBe/Im09zXIjFoipOjr5gHUhJmTzfFLuTJ/nPTMc2Srsroy4IBXwcTCHyRR7KzA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/tsconfig-utils@8.35.1':
- resolution: {integrity: sha512-K5/U9VmT9dTHoNowWZpz+/TObS3xqC5h0xAIjXPw+MNcKV9qg6eSatEnmeAwkjHijhACH0/N7bkhKvbt1+DXWQ==}
+ '@typescript-eslint/tsconfig-utils@8.44.0':
+ resolution: {integrity: sha512-x5Y0+AuEPqAInc6yd0n5DAcvtoQ/vyaGwuX5HE9n6qAefk1GaedqrLQF8kQGylLUb9pnZyLf+iEiL9fr8APDtQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- typescript: '>=4.8.4 <5.9.0'
+ typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/type-utils@8.35.1':
- resolution: {integrity: sha512-HOrUBlfVRz5W2LIKpXzZoy6VTZzMu2n8q9C2V/cFngIC5U1nStJgv0tMV4sZPzdf4wQm9/ToWUFPMN9Vq9VJQQ==}
+ '@typescript-eslint/type-utils@8.44.0':
+ resolution: {integrity: sha512-9cwsoSxJ8Sak67Be/hD2RNt/fsqmWnNE1iHohG8lxqLSNY8xNfyY7wloo5zpW3Nu9hxVgURevqfcH6vvKCt6yg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
- typescript: '>=4.8.4 <5.9.0'
+ typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/types@8.35.1':
- resolution: {integrity: sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==}
+ '@typescript-eslint/types@8.44.0':
+ resolution: {integrity: sha512-ZSl2efn44VsYM0MfDQe68RKzBz75NPgLQXuGypmym6QVOWL5kegTZuZ02xRAT9T+onqvM6T8CdQk0OwYMB6ZvA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/typescript-estree@8.35.1':
- resolution: {integrity: sha512-Vvpuvj4tBxIka7cPs6Y1uvM7gJgdF5Uu9F+mBJBPY4MhvjrjWGK4H0lVgLJd/8PWZ23FTqsaJaLEkBCFUk8Y9g==}
+ '@typescript-eslint/typescript-estree@8.44.0':
+ resolution: {integrity: sha512-lqNj6SgnGcQZwL4/SBJ3xdPEfcBuhCG8zdcwCPgYcmiPLgokiNDKlbPzCwEwu7m279J/lBYWtDYL+87OEfn8Jw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- typescript: '>=4.8.4 <5.9.0'
+ typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/utils@8.35.1':
- resolution: {integrity: sha512-lhnwatFmOFcazAsUm3ZnZFpXSxiwoa1Lj50HphnDe1Et01NF4+hrdXONSUHIcbVu2eFb1bAf+5yjXkGVkXBKAQ==}
+ '@typescript-eslint/utils@8.44.0':
+ resolution: {integrity: sha512-nktOlVcg3ALo0mYlV+L7sWUD58KG4CMj1rb2HUVOO4aL3K/6wcD+NERqd0rrA5Vg06b42YhF6cFxeixsp9Riqg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
- typescript: '>=4.8.4 <5.9.0'
+ typescript: '>=4.8.4 <6.0.0'
- '@typescript-eslint/visitor-keys@8.35.1':
- resolution: {integrity: sha512-VRwixir4zBWCSTP/ljEo091lbpypz57PoeAQ9imjG+vbeof9LplljsL1mos4ccG6H9IjfrVGM359RozUnuFhpw==}
+ '@typescript-eslint/visitor-keys@8.44.0':
+ resolution: {integrity: sha512-zaz9u8EJ4GBmnehlrpoKvj/E3dNbuQ7q0ucyZImm3cLqJ8INTc970B1qEqDX/Rzq65r3TvVTN7kHWPBoyW7DWw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@vitest/expect@3.2.4':
@@ -2702,6 +3388,14 @@ packages:
resolution: {integrity: sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==}
engines: {node: '>=10.0.0'}
+ '@xmldom/xmldom@0.9.8':
+ resolution: {integrity: sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==}
+ engines: {node: '>=14.6'}
+
+ abort-controller@3.0.0:
+ resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
+ engines: {node: '>=6.5'}
+
acorn-jsx@5.3.2:
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
peerDependencies:
@@ -2744,10 +3438,16 @@ packages:
resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
engines: {node: '>=12'}
+ any-base@1.1.0:
+ resolution: {integrity: sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==}
+
anymatch@3.1.3:
resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
engines: {node: '>= 8'}
+ arabic-persian-reshaper@1.0.1:
+ resolution: {integrity: sha512-VYBjkhz6o4W1Xt4mD2LAReljJpLSw5CUZMqSBDIQRvFgUSlTKEYghapgBWvkeMWF4W+KF3Fm+/z8EywJU4PBeg==}
+
argparse@2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
@@ -2758,6 +3458,10 @@ packages:
resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
engines: {node: '>= 0.4'}
+ array-buffer-byte-length@1.0.2:
+ resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
+ engines: {node: '>= 0.4'}
+
assertion-error@2.0.1:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
engines: {node: '>=12'}
@@ -2766,6 +3470,17 @@ packages:
resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==}
engines: {node: '>=4'}
+ async@0.2.10:
+ resolution: {integrity: sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==}
+
+ available-typed-arrays@1.0.7:
+ resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
+ engines: {node: '>= 0.4'}
+
+ await-to-js@3.0.0:
+ resolution: {integrity: sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g==}
+ engines: {node: '>=6.0.0'}
+
axobject-query@4.1.0:
resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
engines: {node: '>= 0.4'}
@@ -2791,6 +3506,9 @@ packages:
bl@4.1.0:
resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
+ bmp-ts@1.0.9:
+ resolution: {integrity: sha512-cTEHk2jLrPyi+12M3dhpEbnnPOsaZuq7C45ylbbQIiWgDFZq4UVYPEY5mlqjvsj/6gJv9qX5sa+ebDzLXT28Vw==}
+
brace-expansion@1.1.12:
resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==}
@@ -2801,16 +3519,38 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
+ brotli@1.3.3:
+ resolution: {integrity: sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==}
+
browserslist@4.25.1:
resolution: {integrity: sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
- buffer-builder@0.2.0:
- resolution: {integrity: sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==}
+ buffer-builder@0.2.0:
+ resolution: {integrity: sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==}
+
+ buffer@5.7.1:
+ resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
+
+ buffer@6.0.3:
+ resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
+
+ buildcheck@0.0.6:
+ resolution: {integrity: sha512-8f9ZJCUXyT1M35Jx7MkBgmBMo3oHTTBIPLiY9xyL0pl3T5RwcPEY8cUHr5LBNfu/fk6c2T4DJZuVM/8ZZT2D2A==}
+ engines: {node: '>=10.0.0'}
+
+ call-bind-apply-helpers@1.0.2:
+ resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}
+ engines: {node: '>= 0.4'}
+
+ call-bind@1.0.8:
+ resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==}
+ engines: {node: '>= 0.4'}
- buffer@5.7.1:
- resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
+ call-bound@1.0.4:
+ resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==}
+ engines: {node: '>= 0.4'}
callsites@3.1.0:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
@@ -2835,6 +3575,10 @@ packages:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
engines: {node: '>=10'}
+ chalk@5.6.2:
+ resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
+ engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+
chardet@0.7.0:
resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
@@ -2866,6 +3610,10 @@ packages:
resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
engines: {node: '>=8'}
+ cli-progress@3.12.0:
+ resolution: {integrity: sha512-tRkV3HJ1ASwm19THiiLIXLO7Im7wlTuKnvkYaTkyoAPefqjNg7W7DHKUlGRxy9vxDvbyCYQkQozvptuMkGCg8A==}
+ engines: {node: '>=4'}
+
cli-spinners@2.9.2:
resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
engines: {node: '>=6'}
@@ -2878,10 +3626,18 @@ packages:
resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==}
engines: {node: '>= 10'}
+ cliui@8.0.1:
+ resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+ engines: {node: '>=12'}
+
clone@1.0.4:
resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
engines: {node: '>=0.8'}
+ clone@2.1.2:
+ resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}
+ engines: {node: '>=0.8'}
+
clsx@2.1.1:
resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
engines: {node: '>=6'}
@@ -2893,6 +3649,13 @@ packages:
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ color-string@1.9.1:
+ resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==}
+
+ color@4.2.3:
+ resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==}
+ engines: {node: '>=12.5.0'}
+
colorjs.io@0.5.2:
resolution: {integrity: sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==}
@@ -2904,6 +3667,10 @@ packages:
resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
engines: {node: '>=14'}
+ commander@14.0.1:
+ resolution: {integrity: sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==}
+ engines: {node: '>=20'}
+
concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
@@ -2927,6 +3694,15 @@ packages:
typescript:
optional: true
+ cpu-features@0.0.10:
+ resolution: {integrity: sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA==}
+ engines: {node: '>=10.0.0'}
+
+ cross-env@10.0.0:
+ resolution: {integrity: sha512-aU8qlEK/nHYtVuN4p7UQgAwVljzMg8hB4YK5ThRqD2l/ziSnryncPNn7bMLt5cFYsKVKBh8HqLqyCoTupEUu7Q==}
+ engines: {node: '>=20'}
+ hasBin: true
+
cross-spawn@7.0.6:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
@@ -2942,6 +3718,9 @@ packages:
csstype@3.1.3:
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+ cubic2quad@1.2.1:
+ resolution: {integrity: sha512-wT5Y7mO8abrV16gnssKdmIhIbA9wSkeMzhh27jAguKrV82i24wER0vL5TGhUJ9dbJNDcigoRZ0IAHFEEEI4THQ==}
+
date-fns@3.6.0:
resolution: {integrity: sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==}
@@ -2969,6 +3748,10 @@ packages:
resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==}
engines: {node: '>=6'}
+ deep-equal@2.2.3:
+ resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==}
+ engines: {node: '>= 0.4'}
+
deep-is@0.1.4:
resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
@@ -2979,17 +3762,32 @@ packages:
defaults@1.0.4:
resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
+ define-data-property@1.1.4:
+ resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
+ engines: {node: '>= 0.4'}
+
define-lazy-prop@2.0.0:
resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
engines: {node: '>=8'}
+ define-properties@1.2.1:
+ resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
+ engines: {node: '>= 0.4'}
+
dequal@2.0.3:
resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
engines: {node: '>=6'}
+ detect-libc@2.1.0:
+ resolution: {integrity: sha512-vEtk+OcP7VBRtQZ1EJ3bdgzSfBjgnEalLTp5zjJrS+2Z1w2KZly4SBdac/WDU3hhsNAZ9E8SC96ME4Ey8MZ7cg==}
+ engines: {node: '>=8'}
+
devalue@5.1.1:
resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==}
+ dfa@1.2.0:
+ resolution: {integrity: sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==}
+
dom-accessibility-api@0.5.16:
resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==}
@@ -3000,6 +3798,10 @@ packages:
resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==}
engines: {node: '>=12'}
+ dunder-proto@1.0.1:
+ resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
+ engines: {node: '>= 0.4'}
+
earcut@2.2.4:
resolution: {integrity: sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==}
@@ -3009,6 +3811,9 @@ packages:
electron-to-chromium@1.5.179:
resolution: {integrity: sha512-UWKi/EbBopgfFsc5k61wFpV7WrnnSlSzW/e2XcBmS6qKYTivZlLtoll5/rdqRTxGglGHkmkW0j0pFNJG10EUIQ==}
+ emoji-regex@10.5.0:
+ resolution: {integrity: sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==}
+
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@@ -3018,6 +3823,21 @@ packages:
error-ex@1.3.2:
resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
+ es-define-property@1.0.1:
+ resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}
+ engines: {node: '>= 0.4'}
+
+ es-errors@1.3.0:
+ resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
+ engines: {node: '>= 0.4'}
+
+ es-get-iterator@1.1.3:
+ resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==}
+
+ es-object-atoms@1.1.1:
+ resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
+ engines: {node: '>= 0.4'}
+
es-toolkit@1.39.6:
resolution: {integrity: sha512-uiVjnLem6kkfXumlwUEWEKnwUN5QbSEB0DHy2rNJt0nkYcob5K0TXJ7oJRzhAcvx+SRmz4TahKyN5V9cly/IPA==}
@@ -3048,20 +3868,20 @@ packages:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
- eslint-config-prettier@10.1.5:
- resolution: {integrity: sha512-zc1UmCpNltmVY34vuLRV61r1K27sWuX39E+uyUnY8xS2Bex88VV9cugG+UZbRSRGtGyFboj+D8JODyme1plMpw==}
+ eslint-config-prettier@10.1.8:
+ resolution: {integrity: sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==}
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
- eslint-config-turbo@2.5.4:
- resolution: {integrity: sha512-OpjpDLXIaus0N/Y+pMj17K430xjpd6WTo0xPUESqYZ9BkMngv2n0ZdjktgJTbJVnDmK7gHrXgJAljtdIMcYBIg==}
+ eslint-config-turbo@2.5.6:
+ resolution: {integrity: sha512-1EV/UqdKE75st9q6y0MCxz7qp2v7RyGvbQsMLSuCz+VH8ScnSfmhd8FcAbqx3BshCy5IluujzMB6T5iCgL3/sA==}
peerDependencies:
eslint: '>6.6.0'
turbo: '>2.0.0'
- eslint-plugin-svelte@3.10.1:
- resolution: {integrity: sha512-csCh2x0ge/DugXC7dCANh46Igi7bjMZEy6rHZCdS13AoGVJSu7a90Kru3I8oMYLGEemPRE1hQXadxvRPVMAAXQ==}
+ eslint-plugin-svelte@3.12.4:
+ resolution: {integrity: sha512-hD7wPe+vrPgx3U2X2b/wyTMtWobm660PygMGKrWWYTc9lvtY8DpNFDaU2CJQn1szLjGbn/aJ3g8WiXuKakrEkw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.1 || ^9.0.0
@@ -3070,8 +3890,8 @@ packages:
svelte:
optional: true
- eslint-plugin-turbo@2.5.4:
- resolution: {integrity: sha512-IZsW61DFj5mLMMaCJxhh1VE4HvNhfdnHnAaXajgne+LUzdyHk2NvYT0ECSa/1SssArcqgTvV74MrLL68hWLLFw==}
+ eslint-plugin-turbo@2.5.6:
+ resolution: {integrity: sha512-KUDE23aP2JV8zbfZ4TeM1HpAXzMM/AYG/bJam7P4AalUxas8Pd/lS/6R3p4uX91qJcH1LwL4h0ED48nDe8KorQ==}
peerDependencies:
eslint: '>6.6.0'
turbo: '>2.0.0'
@@ -3145,9 +3965,20 @@ packages:
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
engines: {node: '>=0.10.0'}
+ event-target-shim@5.0.1:
+ resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
+ engines: {node: '>=6'}
+
eventemitter3@5.0.1:
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
+ events@3.3.0:
+ resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
+ engines: {node: '>=0.8.x'}
+
+ exif-parser@0.1.12:
+ resolution: {integrity: sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==}
+
external-editor@3.1.0:
resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==}
engines: {node: '>=4'}
@@ -3184,6 +4015,10 @@ packages:
resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
engines: {node: '>=16.0.0'}
+ file-type@16.5.4:
+ resolution: {integrity: sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==}
+ engines: {node: '>=10'}
+
filesize@10.1.6:
resolution: {integrity: sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==}
engines: {node: '>= 10.4.0'}
@@ -3200,6 +4035,10 @@ packages:
resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
engines: {node: '>=10'}
+ find-up@7.0.0:
+ resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==}
+ engines: {node: '>=18'}
+
flat-cache@4.0.1:
resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
engines: {node: '>=16'}
@@ -3207,10 +4046,40 @@ packages:
flatted@3.3.3:
resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
+ fluent-ffmpeg@2.1.3:
+ resolution: {integrity: sha512-Be3narBNt2s6bsaqP6Jzq91heDgOEaDCJAXcE3qcma/EJBSy5FB4cvO31XBInuAuKBx8Kptf8dkhjK0IOru39Q==}
+ engines: {node: '>=18'}
+ deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
+
+ fontkit@1.9.0:
+ resolution: {integrity: sha512-HkW/8Lrk8jl18kzQHvAw9aTHe1cqsyx5sDnxncx652+CIfhawokEPkeM3BoIC+z/Xv7a0yMr0f3pRRwhGH455g==}
+
+ for-each@0.3.5:
+ resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==}
+ engines: {node: '>= 0.4'}
+
foreground-child@3.3.1:
resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
engines: {node: '>=14'}
+ framer-motion@12.23.18:
+ resolution: {integrity: sha512-HBVXBL5x3nk/0WrYM5G4VgjBey99ytVYET5AX17s/pcnlH90cyaxVUqgoN8cpF4+PqZRVOhwWsv28F+hxA9Tzg==}
+ peerDependencies:
+ '@emotion/is-prop-valid': '*'
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ '@emotion/is-prop-valid':
+ optional: true
+ react:
+ optional: true
+ react-dom:
+ optional: true
+
+ fs-extra@11.3.2:
+ resolution: {integrity: sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==}
+ engines: {node: '>=14.14'}
+
fsevents@2.3.3:
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
@@ -3219,13 +4088,35 @@ packages:
function-bind@1.1.2:
resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+ functions-have-names@1.2.3:
+ resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
+
gensync@1.0.0-beta.2:
resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
engines: {node: '>=6.9.0'}
+ get-caller-file@2.0.5:
+ resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+
+ get-east-asian-width@1.4.0:
+ resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==}
+ engines: {node: '>=18'}
+
+ get-intrinsic@1.3.0:
+ resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==}
+ engines: {node: '>= 0.4'}
+
+ get-proto@1.0.1:
+ resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
+ engines: {node: '>= 0.4'}
+
gifuct-js@2.1.2:
resolution: {integrity: sha512-rI2asw77u0mGgwhV3qA+OEgYqaDn5UNqgs+Bx0FGwSpuqfYn+Ir6RQY5ENNQ8SbIiG/m5gVa7CD5RriO4f4Lsg==}
+ gifwrap@0.10.1:
+ resolution: {integrity: sha512-2760b1vpJHNmLzZ/ubTtNnEx5WApN/PYWJvXvgS+tL1egTTthayFYIQQNi136FLEDcN/IyEY2EcGpIITD6eYUw==}
+
glob-parent@5.1.2:
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
engines: {node: '>= 6'}
@@ -3247,16 +4138,45 @@ packages:
resolution: {integrity: sha512-bqWEnJ1Nt3neqx2q5SFfGS8r/ahumIakg3HcwtNlrVlwXIeNumWn/c7Pn/wKzGhf6SaW6H6uWXLqC30STCMchQ==}
engines: {node: '>=18'}
+ gopd@1.2.0:
+ resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
+ engines: {node: '>= 0.4'}
+
+ gpu-tex-enc@1.2.5:
+ resolution: {integrity: sha512-4kCvhEYMN2OrDiAYDau54rlKrLv/fLUBsp5nUXKi7GoF2Muumy0QJ9j3URXfiM313WGId78+lJeprTFEhWPcVA==}
+ engines: {node: '>=18.0.0'}
+ hasBin: true
+
graceful-fs@4.2.11:
resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
graphemer@1.4.0:
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+ handlebars@4.7.8:
+ resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==}
+ engines: {node: '>=0.4.7'}
+ hasBin: true
+
+ has-bigints@1.1.0:
+ resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==}
+ engines: {node: '>= 0.4'}
+
has-flag@4.0.0:
resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
engines: {node: '>=8'}
+ has-property-descriptors@1.0.2:
+ resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
+
+ has-symbols@1.1.0:
+ resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
+ engines: {node: '>= 0.4'}
+
+ has-tostringtag@1.0.2:
+ resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
+ engines: {node: '>= 0.4'}
+
hasown@2.0.2:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
@@ -3279,6 +4199,9 @@ packages:
resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
engines: {node: '>= 4'}
+ image-q@4.0.0:
+ resolution: {integrity: sha512-PfJGVgIfKQJuq3s0tTDOKtztksibuUEbJQIYT3by6wctQo+Rdlh7ef4evJ5NCdxY4CfMbvFkocEwbl4BF8RlJw==}
+
immutable@5.1.3:
resolution: {integrity: sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg==}
@@ -3304,17 +4227,48 @@ packages:
resolution: {integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==}
engines: {node: '>=8.0.0'}
+ internal-slot@1.1.0:
+ resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==}
+ engines: {node: '>= 0.4'}
+
+ is-arguments@1.2.0:
+ resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==}
+ engines: {node: '>= 0.4'}
+
+ is-array-buffer@3.0.5:
+ resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==}
+ engines: {node: '>= 0.4'}
+
is-arrayish@0.2.1:
resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+ is-arrayish@0.3.4:
+ resolution: {integrity: sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==}
+
+ is-bigint@1.1.0:
+ resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==}
+ engines: {node: '>= 0.4'}
+
is-binary-path@2.1.0:
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
engines: {node: '>=8'}
+ is-boolean-object@1.2.2:
+ resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==}
+ engines: {node: '>= 0.4'}
+
+ is-callable@1.2.7:
+ resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
+ engines: {node: '>= 0.4'}
+
is-core-module@2.16.1:
resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
engines: {node: '>= 0.4'}
+ is-date-object@1.1.0:
+ resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==}
+ engines: {node: '>= 0.4'}
+
is-docker@2.2.1:
resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
engines: {node: '>=8'}
@@ -3336,6 +4290,18 @@ packages:
resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}
engines: {node: '>=8'}
+ is-invalid-path@1.0.2:
+ resolution: {integrity: sha512-6KLcFrPCEP3AFXMfnWrIFkZpYNBVzZAoBJJDEZKtI3LXkaDjM3uFMJQjxiizUuZTZ9Oh9FNv/soXbx5TcpaDmA==}
+ engines: {node: '>=6.0'}
+
+ is-map@2.0.3:
+ resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
+ engines: {node: '>= 0.4'}
+
+ is-number-object@1.1.1:
+ resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
+ engines: {node: '>= 0.4'}
+
is-number@7.0.0:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'}
@@ -3343,14 +4309,45 @@ packages:
is-reference@3.0.3:
resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==}
+ is-regex@1.2.1:
+ resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==}
+ engines: {node: '>= 0.4'}
+
+ is-set@2.0.3:
+ resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
+ engines: {node: '>= 0.4'}
+
+ is-shared-array-buffer@1.0.4:
+ resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==}
+ engines: {node: '>= 0.4'}
+
+ is-string@1.1.1:
+ resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==}
+ engines: {node: '>= 0.4'}
+
+ is-symbol@1.1.1:
+ resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==}
+ engines: {node: '>= 0.4'}
+
is-unicode-supported@0.1.0:
resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
engines: {node: '>=10'}
+ is-weakmap@2.0.2:
+ resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==}
+ engines: {node: '>= 0.4'}
+
+ is-weakset@2.0.4:
+ resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==}
+ engines: {node: '>= 0.4'}
+
is-wsl@2.2.0:
resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
engines: {node: '>=8'}
+ isarray@2.0.5:
+ resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
+
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -3369,10 +4366,17 @@ packages:
resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+ jimp@1.6.0:
+ resolution: {integrity: sha512-YcwCHw1kiqEeI5xRpDlPPBGL2EOpBKLwO4yIBJcXWHPj5PnA5urGq0jbyhM5KoNpypQ6VboSoxc9D8HyfvngSg==}
+ engines: {node: '>=18'}
+
jiti@1.21.7:
resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==}
hasBin: true
+ jpeg-js@0.4.4:
+ resolution: {integrity: sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==}
+
js-binary-schema-parser@2.0.3:
resolution: {integrity: sha512-xezGJmOb4lk/M1ZZLTR/jaBHQ4gG/lqQnJqdIv4721DMggsa1bDVlHXNeHYogaIEHD9vCRv0fcL4hMA+Coarkg==}
@@ -3386,6 +4390,9 @@ packages:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
hasBin: true
+ js2xmlparser@5.0.0:
+ resolution: {integrity: sha512-ckXs0Fzd6icWurbeAXuqo+3Mhq2m8pOPygsQjTPh8K5UWgKaUgDSHrdDxAfexmT11xvBKOQ6sgYwPkYc5RW/bg==}
+
jsesc@3.1.0:
resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
engines: {node: '>=6'}
@@ -3447,6 +4454,10 @@ packages:
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
engines: {node: '>=10'}
+ locate-path@7.2.0:
+ resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
lodash.get@4.4.2:
resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==}
deprecated: This package is deprecated. Use the optional chaining (?.) operator instead.
@@ -3487,14 +4498,35 @@ packages:
magic-string@0.30.17:
resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
+ map-limit@0.0.1:
+ resolution: {integrity: sha512-pJpcfLPnIF/Sk3taPW21G/RQsEEirGaFpCW3oXRwH9dnFHPHNGjNyvh++rdmC2fNqEaTw2MhYJraoJWAHx8kEg==}
+
+ math-intrinsics@1.1.0:
+ resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
+ engines: {node: '>= 0.4'}
+
+ maxrects-packer@2.7.3:
+ resolution: {integrity: sha512-bG6qXujJ1QgttZVIH4WDanhoJtvbud/xP/XPyf6A69C9RdA61BM4TomFALCq2nrTa+tARRIBB4LuIFsnUQU2wA==}
+
merge2@1.4.1:
resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
engines: {node: '>= 8'}
+ merge@2.1.1:
+ resolution: {integrity: sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==}
+
+ microbuffer@1.0.0:
+ resolution: {integrity: sha512-O/SUXauVN4x6RaEJFqSPcXNtLFL+QzJHKZlyDVYFwcDDRVca3Fa/37QXXC+4zAGGa4YhHrHxKXuuHvLDIQECtA==}
+
micromatch@4.0.8:
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
engines: {node: '>=8.6'}
+ mime@3.0.0:
+ resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
+ engines: {node: '>=10.0.0'}
+ hasBin: true
+
mimic-fn@2.1.0:
resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
engines: {node: '>=6'}
@@ -3514,6 +4546,9 @@ packages:
resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
engines: {node: '>=16 || 14 >=14.17'}
+ minimist@1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+
minipass@7.1.2:
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -3521,6 +4556,26 @@ packages:
moo@0.5.2:
resolution: {integrity: sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==}
+ motion-dom@12.23.18:
+ resolution: {integrity: sha512-9piw3uOcP6DpS0qpnDF95bLDzmgMxLOg/jghLnHwYJ0YFizzuvbH/L8106dy39JNgHYmXFUTztoP9JQvUqlBwQ==}
+
+ motion-utils@12.23.6:
+ resolution: {integrity: sha512-eAWoPgr4eFEOFfg2WjIsMoqJTW6Z8MTUCgn/GZ3VRpClWBdnbjryiA3ZSNLyxCTmCQx4RmYX6jX1iWHbenUPNQ==}
+
+ motion@12.23.18:
+ resolution: {integrity: sha512-uzcEs9eInMnOL2Tm8z6Akje/vETSFUzAlGQyKV58+8vlEFDOKx8jNR/asKei4ETi+8wH6vTyf6gCKgu580x4+w==}
+ peerDependencies:
+ '@emotion/is-prop-valid': '*'
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ '@emotion/is-prop-valid':
+ optional: true
+ react:
+ optional: true
+ react-dom:
+ optional: true
+
mri@1.2.0:
resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
engines: {node: '>=4'}
@@ -3535,6 +4590,9 @@ packages:
mute-stream@0.0.8:
resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==}
+ nan@2.23.0:
+ resolution: {integrity: sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==}
+
nanoid@3.3.11:
resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
@@ -3543,6 +4601,9 @@ packages:
natural-compare@1.4.0:
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+ neo-async@2.6.2:
+ resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+
no-case@3.0.4:
resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
@@ -3553,6 +4614,32 @@ packages:
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
engines: {node: '>=0.10.0'}
+ object-hash@3.0.0:
+ resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
+ engines: {node: '>= 6'}
+
+ object-inspect@1.13.4:
+ resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==}
+ engines: {node: '>= 0.4'}
+
+ object-is@1.1.6:
+ resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==}
+ engines: {node: '>= 0.4'}
+
+ object-keys@1.1.1:
+ resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
+ engines: {node: '>= 0.4'}
+
+ object.assign@4.1.7:
+ resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==}
+ engines: {node: '>= 0.4'}
+
+ omggif@1.0.10:
+ resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==}
+
+ once@1.3.3:
+ resolution: {integrity: sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==}
+
onetime@5.1.2:
resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
engines: {node: '>=6'}
@@ -3561,6 +4648,10 @@ packages:
resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
engines: {node: '>=12'}
+ opentype.js@0.11.0:
+ resolution: {integrity: sha512-Z9NkAyQi/iEKQYzCSa7/VJSqVIs33wknw8Z8po+DzuRUAqivJ+hJZ94mveg3xIeKwLreJdWTMyEO7x1K13l41Q==}
+ hasBin: true
+
optionator@0.9.4:
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
engines: {node: '>= 0.8.0'}
@@ -3573,6 +4664,10 @@ packages:
resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
engines: {node: '>=0.10.0'}
+ otf2svg@1.0.2:
+ resolution: {integrity: sha512-y3U1JC2UAr2T6pvDAWdXMp9KgEs/Jl03bZr30AYbo/7n5N3assuIKGAa3KfsSGzv2zDEzv/lrpU7JMyk/pdupw==}
+ hasBin: true
+
p-limit@2.3.0:
resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
engines: {node: '>=6'}
@@ -3581,6 +4676,10 @@ packages:
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
engines: {node: '>=10'}
+ p-limit@4.0.0:
+ resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
p-locate@3.0.0:
resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==}
engines: {node: '>=6'}
@@ -3589,6 +4688,10 @@ packages:
resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
engines: {node: '>=10'}
+ p-locate@6.0.0:
+ resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
p-try@2.2.0:
resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
engines: {node: '>=6'}
@@ -3596,10 +4699,25 @@ packages:
package-json-from-dist@1.0.1:
resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
+ pako@0.2.9:
+ resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==}
+
+ pako@1.0.11:
+ resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
+
parent-module@1.0.1:
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
engines: {node: '>=6'}
+ parse-bmfont-ascii@1.0.6:
+ resolution: {integrity: sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==}
+
+ parse-bmfont-binary@1.0.6:
+ resolution: {integrity: sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==}
+
+ parse-bmfont-xml@1.1.6:
+ resolution: {integrity: sha512-0cEliVMZEhrFDwMh4SxIyVJpqYoOWDJ9P895tFuS+XuNzI5UBmBk5U5O4KuJdTnZpSBI4LFA2+ZiJaiwfSwlMA==}
+
parse-json@5.2.0:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
@@ -3618,6 +4736,10 @@ packages:
resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
engines: {node: '>=8'}
+ path-exists@5.0.0:
+ resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
path-key@3.1.1:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
@@ -3640,6 +4762,10 @@ packages:
resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==}
engines: {node: '>= 14.16'}
+ peek-readable@4.1.0:
+ resolution: {integrity: sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==}
+ engines: {node: '>=8'}
+
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -3651,6 +4777,10 @@ packages:
resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
engines: {node: '>=12'}
+ pixelmatch@5.3.0:
+ resolution: {integrity: sha512-o8mkY4E/+LNUf6LzX96ht6k6CEDi65k9G2rjMtBe9Oo+VPKSvl+0GKHuH/AlG+GA5LPG/i5hrekkxUc3s2HU+Q==}
+ hasBin: true
+
pixi-filters@6.1.0:
resolution: {integrity: sha512-Btjyg/WvCD/xWqZk1BAygqkTvoN7bSU7b4G/R+FpZ06f0DDwGTVnmlp8ZSITEV89osQHMe+8lKGDbuR1tndePQ==}
peerDependencies:
@@ -3663,9 +4793,21 @@ packages:
resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==}
engines: {node: '>=8'}
+ pngjs@6.0.0:
+ resolution: {integrity: sha512-TRzzuFRRmEoSW/p1KVAmiOgPco2Irlah+bGFCeNfJXxxYGwSw7YwAOAcd7X28K/m5bjBWKsC29KyoMfHbypayg==}
+ engines: {node: '>=12.13.0'}
+
+ pngjs@7.0.0:
+ resolution: {integrity: sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==}
+ engines: {node: '>=14.19.0'}
+
pofile@1.1.4:
resolution: {integrity: sha512-r6Q21sKsY1AjTVVjOuU02VYKVNQGJNQHjTIvs4dEbeuuYfxgYk/DGD2mqqq4RDaVkwdSq0VEtmQUOPe/wH8X3g==}
+ possible-typed-array-names@1.1.0:
+ resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==}
+ engines: {node: '>= 0.4'}
+
postcss-load-config@3.1.4:
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
engines: {node: '>= 10'}
@@ -3726,6 +4868,10 @@ packages:
resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+ process@0.11.10:
+ resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
+ engines: {node: '>= 0.6.0'}
+
pseudolocale@2.1.0:
resolution: {integrity: sha512-af5fsrRvVwD+MBasBJvuDChT0KDqT0nEwD9NTgbtHJ16FKomWac9ua0z6YVNB4G9x9IOaiGWym62aby6n4tFMA==}
engines: {node: '>=16.0.0'}
@@ -3763,6 +4909,14 @@ packages:
resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
engines: {node: '>= 6'}
+ readable-stream@4.7.0:
+ resolution: {integrity: sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ readable-web-to-node-stream@3.0.4:
+ resolution: {integrity: sha512-9nX56alTf5bwXQ3ZDipHJhusu9NTQJ/CVPtb/XHAJCXihZeitfJvIRS4GqQ/mfIoOE3IelHMrpayVrosdHBuLw==}
+ engines: {node: '>=8'}
+
readdirp@3.5.0:
resolution: {integrity: sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==}
engines: {node: '>=8.10.0'}
@@ -3771,6 +4925,9 @@ packages:
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
engines: {node: '>= 14.18.0'}
+ readline@1.3.0:
+ resolution: {integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==}
+
recast@0.23.11:
resolution: {integrity: sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==}
engines: {node: '>= 4'}
@@ -3779,6 +4936,14 @@ packages:
resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
engines: {node: '>=8'}
+ regexp.prototype.flags@1.5.4:
+ resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==}
+ engines: {node: '>= 0.4'}
+
+ require-directory@2.1.1:
+ resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+ engines: {node: '>=0.10.0'}
+
resize-observer@1.0.4:
resolution: {integrity: sha512-AQ2MdkWTng9d6JtjHvljiQR949qdae91pjSNugGGeOFzKIuLHvoZIYhUTjePla5hCFDwQHrnkciAIzjzdsTZew==}
@@ -3795,6 +4960,9 @@ packages:
resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
engines: {node: '>=8'}
+ restructure@2.0.1:
+ resolution: {integrity: sha512-e0dOpjm5DseomnXx2M5lpdZ5zoHqF1+bqdMJUohoYVVQa7cBdnk7fdmeI6byNWP/kiME72EeTiSypTCVnpLiDg==}
+
reusify@1.1.0:
resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
@@ -3825,6 +4993,10 @@ packages:
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+ safe-regex-test@1.1.0:
+ resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==}
+ engines: {node: '>= 0.4'}
+
safer-buffer@2.1.2:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
@@ -4054,6 +5226,9 @@ packages:
engines: {node: '>=16.0.0'}
hasBin: true
+ sax@1.4.1:
+ resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==}
+
scheduler@0.26.0:
resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==}
@@ -4069,6 +5244,22 @@ packages:
set-cookie-parser@2.7.1:
resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==}
+ set-function-length@1.2.2:
+ resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
+ engines: {node: '>= 0.4'}
+
+ set-function-name@2.0.2:
+ resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
+ engines: {node: '>= 0.4'}
+
+ sharp@0.33.5:
+ resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+
+ sharp@0.34.4:
+ resolution: {integrity: sha512-FUH39xp3SBPnxWvd5iib1X8XY7J0K0X7d93sie9CJg2PO8/7gmg89Nve6OjItK53/MlAushNNxteBYfM6DEuoA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+
shebang-command@2.0.0:
resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
engines: {node: '>=8'}
@@ -4077,6 +5268,22 @@ packages:
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
engines: {node: '>=8'}
+ side-channel-list@1.0.0:
+ resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-map@1.0.1:
+ resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-weakmap@1.0.2:
+ resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==}
+ engines: {node: '>= 0.4'}
+
+ side-channel@1.1.0:
+ resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
+ engines: {node: '>= 0.4'}
+
signal-exit@3.0.7:
resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
@@ -4084,6 +5291,13 @@ packages:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
+ simple-swizzle@0.2.4:
+ resolution: {integrity: sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==}
+
+ simple-xml-to-json@1.2.3:
+ resolution: {integrity: sha512-kWJDCr9EWtZ+/EYYM5MareWj2cRnZGF93YDNpH4jQiHB+hBIZnfPFSQiVMzZOdk+zXWqTZ/9fTeQNu2DqeiudA==}
+ engines: {node: '>=20.12.2'}
+
sirv@3.0.1:
resolution: {integrity: sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==}
engines: {node: '>=18'}
@@ -4099,6 +5313,11 @@ packages:
source-map@0.8.0-beta.0:
resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==}
engines: {node: '>= 8'}
+ deprecated: The work that was done in this beta branch won't be included in future versions
+
+ stop-iteration-iterator@1.1.0:
+ resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==}
+ engines: {node: '>= 0.4'}
storybook@9.0.15:
resolution: {integrity: sha512-r9hwcSMM3dq7dkMveaWFTosrmyHCL2FRrV3JOwVnVWraF6GtCgp2k+r4hsYtyp1bY3zdmK9e4KYzXsGs5q1h/Q==}
@@ -4117,6 +5336,13 @@ packages:
resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
engines: {node: '>=12'}
+ string-width@7.2.0:
+ resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
+ engines: {node: '>=18'}
+
+ string.prototype.codepointat@0.2.1:
+ resolution: {integrity: sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==}
+
string_decoder@1.3.0:
resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
@@ -4136,6 +5362,10 @@ packages:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
+ strtok3@6.3.0:
+ resolution: {integrity: sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==}
+ engines: {node: '>=10'}
+
supports-color@7.2.0:
resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
engines: {node: '>=8'}
@@ -4154,8 +5384,8 @@ packages:
peerDependencies:
svelte: ^5.0.0
- svelte-eslint-parser@1.2.0:
- resolution: {integrity: sha512-mbPtajIeuiyU80BEyGvwAktBeTX7KCr5/0l+uRGLq1dafwRNrjfM5kHGJScEBlPG3ipu6dJqfW/k0/fujvIEVw==}
+ svelte-eslint-parser@1.3.3:
+ resolution: {integrity: sha512-oTrDR8Z7Wnguut7QH3YKh7JR19xv1seB/bz4dxU5J/86eJtZOU4eh0/jZq4dy6tAlz/KROxnkRQspv5ZEt7t+Q==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
svelte: ^3.37.0 || ^4.0.0 || ^5.0.0
@@ -4177,6 +5407,9 @@ packages:
resolution: {integrity: sha512-3kNMwstMB2VUBod63H6BQPzBr7NiPRR9qFVzrWqW/nU4ulqqAYZsJ6E7m8LYFoRzuW6yylx+uzdgKVhFKZVf4Q==}
engines: {node: '>=18'}
+ svgpath@2.6.0:
+ resolution: {integrity: sha512-OIWR6bKzXvdXYyO4DK/UWa1VA1JeKq8E+0ug2DG98Y/vOmMpfZNj+TIG988HjfYSqtcy/hFOtZq/n/j5GSESNg==}
+
sync-child-process@1.0.2:
resolution: {integrity: sha512-8lD+t2KrrScJ/7KXCSyfhT3/hRq78rC0wBFqNJXv3mZyn6hW2ypM05JmlSvtqRbeq6jqA94oHbxAr2vYsJ8vDA==}
engines: {node: '>=16.0.0'}
@@ -4185,12 +5418,22 @@ packages:
resolution: {integrity: sha512-GTt8rSKje5FilG+wEdfCkOcLL7LWqpMlr2c3LRuKt/YXxcJ52aGSbGBAdI4L3aaqfrBt6y711El53ItyH1NWzg==}
engines: {node: '>=16.0.0'}
+ terminal-size@4.0.0:
+ resolution: {integrity: sha512-rcdty1xZ2/BkWa4ANjWRp4JGpda2quksXIHgn5TMjNBPZfwzJIgR68DKfSYiTL+CZWowDX/sbOo5ME/FRURvYQ==}
+ engines: {node: '>=18'}
+
through@2.3.8:
resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
+ tiny-inflate@1.0.3:
+ resolution: {integrity: sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==}
+
tiny-invariant@1.3.3:
resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==}
+ tinycolor2@1.6.0:
+ resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==}
+
tinyglobby@0.2.14:
resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==}
engines: {node: '>=12.0.0'}
@@ -4211,6 +5454,10 @@ packages:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
+ token-types@4.2.1:
+ resolution: {integrity: sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==}
+ engines: {node: '>=10'}
+
totalist@3.0.1:
resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
engines: {node: '>=6'}
@@ -4302,6 +5549,9 @@ packages:
resolution: {integrity: sha512-kc8ZibdRcuWUG1pbYSBFWqmIjynlD8Lp7IB6U3vIzvOv9VG+6Sp8bzyeBWE3Oi8XV5KsQrznyRTBPvrf99E4mA==}
hasBin: true
+ tweedle.js@2.1.0:
+ resolution: {integrity: sha512-0ReQgVjepoZkE6t0upWNgCRbplHkQJQYk1LStXugwSR728GLFmGDRuaQJlxeC/iBlxud6+P1RdODjaO25vHAqw==}
+
tween-functions@1.2.0:
resolution: {integrity: sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==}
@@ -4317,13 +5567,36 @@ packages:
resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
engines: {node: '>=12.20'}
+ typed-signals@2.5.0:
+ resolution: {integrity: sha512-m9lHc3eBCJerXYdx+G0uWZihyUXdqTzzgOdqiDDsoUo75WjhFJH6vP5/6w/xhyu04zoxHUqgYhf9FEt85dk/Ng==}
+
+ typescript@5.7.3:
+ resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+
typescript@5.8.3:
resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==}
engines: {node: '>=14.17'}
hasBin: true
- undici-types@7.8.0:
- resolution: {integrity: sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==}
+ uglify-js@3.19.3:
+ resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==}
+ engines: {node: '>=0.8.0'}
+ hasBin: true
+
+ undici-types@7.12.0:
+ resolution: {integrity: sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==}
+
+ unicode-properties@1.4.1:
+ resolution: {integrity: sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==}
+
+ unicode-trie@2.0.0:
+ resolution: {integrity: sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==}
+
+ unicorn-magic@0.1.0:
+ resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
+ engines: {node: '>=18'}
universalify@2.0.1:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
@@ -4336,6 +5609,10 @@ packages:
unraw@3.0.0:
resolution: {integrity: sha512-08/DA66UF65OlpUDIQtbJyrqTR0jTAlJ+jsnkQ4jxR7+K5g5YG1APZKQSMCE1vqqmD+2pv6+IdEjmopFatacvg==}
+ upath@2.0.1:
+ resolution: {integrity: sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==}
+ engines: {node: '>=4'}
+
update-browserslist-db@1.1.3:
resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
hasBin: true
@@ -4345,6 +5622,9 @@ packages:
uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ utif2@4.1.0:
+ resolution: {integrity: sha512-+oknB9FHrJ7oW7A2WZYajOcv4FcDR4CfoGB0dPNfxbi4GO05RRnFmt5oa23+9w32EanrYcSJWspUiJkLMs+37w==}
+
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
@@ -4454,6 +5734,22 @@ packages:
whatwg-url@7.1.0:
resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==}
+ which-boxed-primitive@1.1.1:
+ resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==}
+ engines: {node: '>= 0.4'}
+
+ which-collection@1.0.2:
+ resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==}
+ engines: {node: '>= 0.4'}
+
+ which-typed-array@1.1.19:
+ resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==}
+ engines: {node: '>= 0.4'}
+
+ which@1.3.1:
+ resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
+ hasBin: true
+
which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -4463,6 +5759,9 @@ packages:
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
engines: {node: '>=0.10.0'}
+ wordwrap@1.0.0:
+ resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
+
wrap-ansi@7.0.0:
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
engines: {node: '>=10'}
@@ -4471,6 +5770,9 @@ packages:
resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
engines: {node: '>=12'}
+ wrappy@1.0.2:
+ resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+
ws@8.18.3:
resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==}
engines: {node: '>=10.0.0'}
@@ -4483,9 +5785,27 @@ packages:
utf-8-validate:
optional: true
+ xml-parse-from-string@1.0.1:
+ resolution: {integrity: sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==}
+
+ xml2js@0.5.0:
+ resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==}
+ engines: {node: '>=4.0.0'}
+
+ xmlbuilder@11.0.1:
+ resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==}
+ engines: {node: '>=4.0'}
+
+ xmlcreate@2.0.4:
+ resolution: {integrity: sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==}
+
xstate@5.19.2:
resolution: {integrity: sha512-B8fL2aP0ogn5aviAXFzI5oZseAMqN00fg/TeDa3ZtatyDcViYLIfuQl4y8qmHCiKZgGEzmnTyNtNQL9oeJE2gw==}
+ y18n@5.0.8:
+ resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+ engines: {node: '>=10'}
+
yallist@3.1.1:
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
@@ -4493,13 +5813,28 @@ packages:
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
engines: {node: '>= 6'}
+ yargs-parser@21.1.1:
+ resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+ engines: {node: '>=12'}
+
+ yargs@17.7.2:
+ resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+ engines: {node: '>=12'}
+
yocto-queue@0.1.0:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
+ yocto-queue@1.2.1:
+ resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==}
+ engines: {node: '>=12.20'}
+
zimmerframe@1.1.2:
resolution: {integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==}
+ zod@3.25.76:
+ resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
+
snapshots:
'@adobe/css-tools@4.4.3': {}
@@ -4509,6 +5844,41 @@ snapshots:
'@jridgewell/gen-mapping': 0.3.12
'@jridgewell/trace-mapping': 0.3.29
+ '@assetpack/core@1.5.3':
+ dependencies:
+ '@ffmpeg-installer/ffmpeg': 1.1.0
+ '@napi-rs/woff-build': 0.2.2
+ '@node-rs/crc32': 1.10.6
+ '@pixi/msdf-bmfont-xml': 3.0.0
+ '@pixi/svg2ttf': 6.1.0
+ '@types/cli-progress': 3.11.6
+ '@types/clone': 2.1.4
+ '@types/fluent-ffmpeg': 2.1.27
+ '@types/fs-extra': 11.0.4
+ '@types/object-hash': 3.0.6
+ chalk: 5.6.2
+ chokidar: 4.0.3
+ cli-progress: 3.12.0
+ clone: 2.1.2
+ commander: 14.0.1
+ find-up: 7.0.0
+ fluent-ffmpeg: 2.1.3
+ fs-extra: 11.3.2
+ glob: 11.0.3
+ gpu-tex-enc: 1.2.5
+ json5: 2.2.3
+ maxrects-packer: 2.7.3
+ merge: 2.1.1
+ minimatch: 10.0.3
+ object-hash: 3.0.0
+ otf2svg: 1.0.2
+ readline: 1.3.0
+ sharp: 0.34.4
+ string-width: 7.2.0
+ strip-ansi: 7.1.0
+ terminal-size: 4.0.0
+ upath: 2.0.1
+
'@babel/code-frame@7.27.1':
dependencies:
'@babel/helper-validator-identifier': 7.27.1
@@ -4630,6 +6000,24 @@ snapshots:
- '@chromatic-com/playwright'
- react
+ '@emnapi/core@1.5.0':
+ dependencies:
+ '@emnapi/wasi-threads': 1.1.0
+ tslib: 2.8.1
+ optional: true
+
+ '@emnapi/runtime@1.5.0':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
+ '@emnapi/wasi-threads@1.1.0':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
+ '@epic-web/invariant@1.0.0': {}
+
'@esbuild/aix-ppc64@0.21.5':
optional: true
@@ -4796,107 +6184,506 @@ snapshots:
'@eslint/config-array@0.21.0':
dependencies:
- '@eslint/object-schema': 2.1.6
- debug: 4.4.1
- minimatch: 3.1.2
- transitivePeerDependencies:
- - supports-color
+ '@eslint/object-schema': 2.1.6
+ debug: 4.4.1
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/config-helpers@0.3.0': {}
+
+ '@eslint/core@0.12.0':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
+ '@eslint/core@0.13.0':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
+ '@eslint/core@0.14.0':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
+ '@eslint/core@0.15.1':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
+ '@eslint/eslintrc@3.3.1':
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.4.1
+ espree: 10.4.0
+ globals: 14.0.0
+ ignore: 5.3.2
+ import-fresh: 3.3.1
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/js@9.21.0': {}
+
+ '@eslint/js@9.30.1': {}
+
+ '@eslint/object-schema@2.1.6': {}
+
+ '@eslint/plugin-kit@0.2.8':
+ dependencies:
+ '@eslint/core': 0.13.0
+ levn: 0.4.1
+
+ '@eslint/plugin-kit@0.3.3':
+ dependencies:
+ '@eslint/core': 0.15.1
+ levn: 0.4.1
+
+ '@esotericsoftware/spine-core@4.2.74': {}
+
+ '@esotericsoftware/spine-pixi-v8@4.2.74(pixi.js@8.8.1)':
+ dependencies:
+ '@esotericsoftware/spine-core': 4.2.74
+ pixi.js: 8.8.1
+
+ '@ffmpeg-installer/darwin-arm64@4.1.5':
+ optional: true
+
+ '@ffmpeg-installer/darwin-x64@4.1.0':
+ optional: true
+
+ '@ffmpeg-installer/ffmpeg@1.1.0':
+ optionalDependencies:
+ '@ffmpeg-installer/darwin-arm64': 4.1.5
+ '@ffmpeg-installer/darwin-x64': 4.1.0
+ '@ffmpeg-installer/linux-arm': 4.1.3
+ '@ffmpeg-installer/linux-arm64': 4.1.4
+ '@ffmpeg-installer/linux-ia32': 4.1.0
+ '@ffmpeg-installer/linux-x64': 4.1.0
+ '@ffmpeg-installer/win32-ia32': 4.1.0
+ '@ffmpeg-installer/win32-x64': 4.1.0
+
+ '@ffmpeg-installer/linux-arm64@4.1.4':
+ optional: true
+
+ '@ffmpeg-installer/linux-arm@4.1.3':
+ optional: true
+
+ '@ffmpeg-installer/linux-ia32@4.1.0':
+ optional: true
+
+ '@ffmpeg-installer/linux-x64@4.1.0':
+ optional: true
+
+ '@ffmpeg-installer/win32-ia32@4.1.0':
+ optional: true
+
+ '@ffmpeg-installer/win32-x64@4.1.0':
+ optional: true
+
+ '@gpu-tex-enc/astc@4.7.1':
+ optionalDependencies:
+ cpu-features: 0.0.10
+
+ '@gpu-tex-enc/basis@1.16.4':
+ optionalDependencies:
+ cpu-features: 0.0.10
+
+ '@gpu-tex-enc/bc@1.0.11': {}
+
+ '@gpu-tex-enc/etc@1.0.3': {}
+
+ '@humanfs/core@0.19.1': {}
+
+ '@humanfs/node@0.16.6':
+ dependencies:
+ '@humanfs/core': 0.19.1
+ '@humanwhocodes/retry': 0.3.1
+
+ '@humanwhocodes/module-importer@1.0.1': {}
+
+ '@humanwhocodes/retry@0.3.1': {}
+
+ '@humanwhocodes/retry@0.4.3': {}
+
+ '@img/colour@1.0.0': {}
+
+ '@img/sharp-darwin-arm64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-darwin-arm64': 1.0.4
+ optional: true
+
+ '@img/sharp-darwin-arm64@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-darwin-arm64': 1.2.3
+ optional: true
+
+ '@img/sharp-darwin-x64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-darwin-x64': 1.0.4
+ optional: true
+
+ '@img/sharp-darwin-x64@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-darwin-x64': 1.2.3
+ optional: true
+
+ '@img/sharp-libvips-darwin-arm64@1.0.4':
+ optional: true
+
+ '@img/sharp-libvips-darwin-arm64@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-darwin-x64@1.0.4':
+ optional: true
+
+ '@img/sharp-libvips-darwin-x64@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-linux-arm64@1.0.4':
+ optional: true
+
+ '@img/sharp-libvips-linux-arm64@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-linux-arm@1.0.5':
+ optional: true
+
+ '@img/sharp-libvips-linux-arm@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-linux-ppc64@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-linux-s390x@1.0.4':
+ optional: true
+
+ '@img/sharp-libvips-linux-s390x@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-linux-x64@1.0.4':
+ optional: true
+
+ '@img/sharp-libvips-linux-x64@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-linuxmusl-arm64@1.0.4':
+ optional: true
+
+ '@img/sharp-libvips-linuxmusl-arm64@1.2.3':
+ optional: true
+
+ '@img/sharp-libvips-linuxmusl-x64@1.0.4':
+ optional: true
+
+ '@img/sharp-libvips-linuxmusl-x64@1.2.3':
+ optional: true
+
+ '@img/sharp-linux-arm64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-arm64': 1.0.4
+ optional: true
+
+ '@img/sharp-linux-arm64@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-arm64': 1.2.3
+ optional: true
+
+ '@img/sharp-linux-arm@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-arm': 1.0.5
+ optional: true
+
+ '@img/sharp-linux-arm@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-arm': 1.2.3
+ optional: true
+
+ '@img/sharp-linux-ppc64@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-ppc64': 1.2.3
+ optional: true
+
+ '@img/sharp-linux-s390x@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-s390x': 1.0.4
+ optional: true
+
+ '@img/sharp-linux-s390x@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-s390x': 1.2.3
+ optional: true
+
+ '@img/sharp-linux-x64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-x64': 1.0.4
+ optional: true
+
+ '@img/sharp-linux-x64@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-x64': 1.2.3
+ optional: true
+
+ '@img/sharp-linuxmusl-arm64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linuxmusl-arm64': 1.0.4
+ optional: true
+
+ '@img/sharp-linuxmusl-arm64@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-linuxmusl-arm64': 1.2.3
+ optional: true
+
+ '@img/sharp-linuxmusl-x64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linuxmusl-x64': 1.0.4
+ optional: true
+
+ '@img/sharp-linuxmusl-x64@0.34.4':
+ optionalDependencies:
+ '@img/sharp-libvips-linuxmusl-x64': 1.2.3
+ optional: true
+
+ '@img/sharp-wasm32@0.33.5':
+ dependencies:
+ '@emnapi/runtime': 1.5.0
+ optional: true
+
+ '@img/sharp-wasm32@0.34.4':
+ dependencies:
+ '@emnapi/runtime': 1.5.0
+ optional: true
+
+ '@img/sharp-win32-arm64@0.34.4':
+ optional: true
+
+ '@img/sharp-win32-ia32@0.33.5':
+ optional: true
+
+ '@img/sharp-win32-ia32@0.34.4':
+ optional: true
+
+ '@img/sharp-win32-x64@0.33.5':
+ optional: true
+
+ '@img/sharp-win32-x64@0.34.4':
+ optional: true
+
+ '@isaacs/balanced-match@4.0.1': {}
+
+ '@isaacs/brace-expansion@5.0.0':
+ dependencies:
+ '@isaacs/balanced-match': 4.0.1
+
+ '@isaacs/cliui@8.0.2':
+ dependencies:
+ string-width: 5.1.2
+ string-width-cjs: string-width@4.2.3
+ strip-ansi: 7.1.0
+ strip-ansi-cjs: strip-ansi@6.0.1
+ wrap-ansi: 8.1.0
+ wrap-ansi-cjs: wrap-ansi@7.0.0
+
+ '@jest/schemas@29.6.3':
+ dependencies:
+ '@sinclair/typebox': 0.27.8
+
+ '@jest/types@29.6.3':
+ dependencies:
+ '@jest/schemas': 29.6.3
+ '@types/istanbul-lib-coverage': 2.0.6
+ '@types/istanbul-reports': 3.0.4
+ '@types/node': 24.5.2
+ '@types/yargs': 17.0.33
+ chalk: 4.1.2
+
+ '@jimp/core@1.6.0':
+ dependencies:
+ '@jimp/file-ops': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ await-to-js: 3.0.0
+ exif-parser: 0.1.12
+ file-type: 16.5.4
+ mime: 3.0.0
+
+ '@jimp/diff@1.6.0':
+ dependencies:
+ '@jimp/plugin-resize': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ pixelmatch: 5.3.0
+
+ '@jimp/file-ops@1.6.0': {}
+
+ '@jimp/js-bmp@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ bmp-ts: 1.0.9
+
+ '@jimp/js-gif@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ gifwrap: 0.10.1
+ omggif: 1.0.10
- '@eslint/config-helpers@0.3.0': {}
+ '@jimp/js-jpeg@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ jpeg-js: 0.4.4
- '@eslint/core@0.12.0':
+ '@jimp/js-png@1.6.0':
dependencies:
- '@types/json-schema': 7.0.15
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ pngjs: 7.0.0
- '@eslint/core@0.13.0':
+ '@jimp/js-tiff@1.6.0':
dependencies:
- '@types/json-schema': 7.0.15
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ utif2: 4.1.0
- '@eslint/core@0.14.0':
+ '@jimp/plugin-blit@1.6.0':
dependencies:
- '@types/json-schema': 7.0.15
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ zod: 3.25.76
- '@eslint/core@0.15.1':
+ '@jimp/plugin-blur@1.6.0':
dependencies:
- '@types/json-schema': 7.0.15
+ '@jimp/core': 1.6.0
+ '@jimp/utils': 1.6.0
- '@eslint/eslintrc@3.3.1':
+ '@jimp/plugin-circle@1.6.0':
dependencies:
- ajv: 6.12.6
- debug: 4.4.1
- espree: 10.4.0
- globals: 14.0.0
- ignore: 5.3.2
- import-fresh: 3.3.1
- js-yaml: 4.1.0
- minimatch: 3.1.2
- strip-json-comments: 3.1.1
- transitivePeerDependencies:
- - supports-color
+ '@jimp/types': 1.6.0
+ zod: 3.25.76
- '@eslint/js@9.21.0': {}
+ '@jimp/plugin-color@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ tinycolor2: 1.6.0
+ zod: 3.25.76
- '@eslint/js@9.30.1': {}
+ '@jimp/plugin-contain@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/plugin-blit': 1.6.0
+ '@jimp/plugin-resize': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ zod: 3.25.76
- '@eslint/object-schema@2.1.6': {}
+ '@jimp/plugin-cover@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/plugin-crop': 1.6.0
+ '@jimp/plugin-resize': 1.6.0
+ '@jimp/types': 1.6.0
+ zod: 3.25.76
- '@eslint/plugin-kit@0.2.8':
+ '@jimp/plugin-crop@1.6.0':
dependencies:
- '@eslint/core': 0.13.0
- levn: 0.4.1
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ zod: 3.25.76
- '@eslint/plugin-kit@0.3.3':
+ '@jimp/plugin-displace@1.6.0':
dependencies:
- '@eslint/core': 0.15.1
- levn: 0.4.1
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ zod: 3.25.76
- '@esotericsoftware/spine-core@4.2.74': {}
+ '@jimp/plugin-dither@1.6.0':
+ dependencies:
+ '@jimp/types': 1.6.0
- '@esotericsoftware/spine-pixi-v8@4.2.74(pixi.js@8.8.1)':
+ '@jimp/plugin-fisheye@1.6.0':
dependencies:
- '@esotericsoftware/spine-core': 4.2.74
- pixi.js: 8.8.1
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ zod: 3.25.76
- '@humanfs/core@0.19.1': {}
+ '@jimp/plugin-flip@1.6.0':
+ dependencies:
+ '@jimp/types': 1.6.0
+ zod: 3.25.76
- '@humanfs/node@0.16.6':
+ '@jimp/plugin-hash@1.6.0':
dependencies:
- '@humanfs/core': 0.19.1
- '@humanwhocodes/retry': 0.3.1
+ '@jimp/core': 1.6.0
+ '@jimp/js-bmp': 1.6.0
+ '@jimp/js-jpeg': 1.6.0
+ '@jimp/js-png': 1.6.0
+ '@jimp/js-tiff': 1.6.0
+ '@jimp/plugin-color': 1.6.0
+ '@jimp/plugin-resize': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ any-base: 1.1.0
- '@humanwhocodes/module-importer@1.0.1': {}
+ '@jimp/plugin-mask@1.6.0':
+ dependencies:
+ '@jimp/types': 1.6.0
+ zod: 3.25.76
- '@humanwhocodes/retry@0.3.1': {}
+ '@jimp/plugin-print@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/js-jpeg': 1.6.0
+ '@jimp/js-png': 1.6.0
+ '@jimp/plugin-blit': 1.6.0
+ '@jimp/types': 1.6.0
+ parse-bmfont-ascii: 1.0.6
+ parse-bmfont-binary: 1.0.6
+ parse-bmfont-xml: 1.1.6
+ simple-xml-to-json: 1.2.3
+ zod: 3.25.76
- '@humanwhocodes/retry@0.4.3': {}
+ '@jimp/plugin-quantize@1.6.0':
+ dependencies:
+ image-q: 4.0.0
+ zod: 3.25.76
- '@isaacs/balanced-match@4.0.1': {}
+ '@jimp/plugin-resize@1.6.0':
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/types': 1.6.0
+ zod: 3.25.76
- '@isaacs/brace-expansion@5.0.0':
+ '@jimp/plugin-rotate@1.6.0':
dependencies:
- '@isaacs/balanced-match': 4.0.1
+ '@jimp/core': 1.6.0
+ '@jimp/plugin-crop': 1.6.0
+ '@jimp/plugin-resize': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ zod: 3.25.76
- '@isaacs/cliui@8.0.2':
+ '@jimp/plugin-threshold@1.6.0':
dependencies:
- string-width: 5.1.2
- string-width-cjs: string-width@4.2.3
- strip-ansi: 7.1.0
- strip-ansi-cjs: strip-ansi@6.0.1
- wrap-ansi: 8.1.0
- wrap-ansi-cjs: wrap-ansi@7.0.0
+ '@jimp/core': 1.6.0
+ '@jimp/plugin-color': 1.6.0
+ '@jimp/plugin-hash': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+ zod: 3.25.76
- '@jest/schemas@29.6.3':
+ '@jimp/types@1.6.0':
dependencies:
- '@sinclair/typebox': 0.27.8
+ zod: 3.25.76
- '@jest/types@29.6.3':
+ '@jimp/utils@1.6.0':
dependencies:
- '@jest/schemas': 29.6.3
- '@types/istanbul-lib-coverage': 2.0.6
- '@types/istanbul-reports': 3.0.4
- '@types/node': 24.0.13
- '@types/yargs': 17.0.33
- chalk: 4.1.2
+ '@jimp/types': 1.6.0
+ tinycolor2: 1.6.0
'@jridgewell/gen-mapping@0.3.12':
dependencies:
@@ -4914,19 +6701,20 @@ snapshots:
'@lingui/babel-plugin-extract-messages@5.2.0': {}
- '@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)':
+ '@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.7.3)':
dependencies:
'@babel/core': 7.28.0
'@babel/runtime': 7.27.6
'@babel/types': 7.28.0
- '@lingui/conf': 5.2.0(typescript@5.8.3)
- '@lingui/core': 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
+ '@lingui/conf': 5.2.0(typescript@5.7.3)
+ '@lingui/core': 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)
'@lingui/message-utils': 5.2.0
optionalDependencies:
babel-plugin-macros: 3.1.0
transitivePeerDependencies:
- supports-color
- typescript
+ optional: true
'@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3)':
dependencies:
@@ -4941,9 +6729,8 @@ snapshots:
transitivePeerDependencies:
- supports-color
- typescript
- optional: true
- '@lingui/cli@5.2.0':
+ '@lingui/cli@5.2.0(typescript@5.8.3)':
dependencies:
'@babel/core': 7.28.0
'@babel/generator': 7.28.0
@@ -4951,10 +6738,10 @@ snapshots:
'@babel/runtime': 7.27.6
'@babel/types': 7.28.0
'@lingui/babel-plugin-extract-messages': 5.2.0
- '@lingui/babel-plugin-lingui-macro': 5.2.0(babel-plugin-macros@3.1.0)
+ '@lingui/babel-plugin-lingui-macro': 5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3)
'@lingui/conf': 5.2.0(typescript@5.8.3)
- '@lingui/core': 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)
- '@lingui/format-po': 5.2.0
+ '@lingui/core': 5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)
+ '@lingui/format-po': 5.2.0(typescript@5.8.3)
'@lingui/message-utils': 5.2.0
babel-plugin-macros: 3.1.0
chalk: 4.1.2
@@ -4978,6 +6765,18 @@ snapshots:
- supports-color
- typescript
+ '@lingui/conf@5.2.0(typescript@5.7.3)':
+ dependencies:
+ '@babel/runtime': 7.27.6
+ chalk: 4.1.2
+ cosmiconfig: 8.3.6(typescript@5.7.3)
+ jest-validate: 29.7.0
+ jiti: 1.21.7
+ lodash.get: 4.4.2
+ transitivePeerDependencies:
+ - typescript
+ optional: true
+
'@lingui/conf@5.2.0(typescript@5.8.3)':
dependencies:
'@babel/runtime': 7.27.6
@@ -4989,25 +6788,25 @@ snapshots:
transitivePeerDependencies:
- typescript
- '@lingui/core@5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)':
+ '@lingui/core@5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)':
dependencies:
'@babel/runtime': 7.27.6
'@lingui/message-utils': 5.2.0
unraw: 3.0.0
optionalDependencies:
- '@lingui/babel-plugin-lingui-macro': 5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3)
+ '@lingui/babel-plugin-lingui-macro': 5.2.0(babel-plugin-macros@3.1.0)(typescript@5.7.3)
babel-plugin-macros: 3.1.0
- '@lingui/core@5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0))(babel-plugin-macros@3.1.0)':
+ '@lingui/core@5.2.0(@lingui/babel-plugin-lingui-macro@5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3))(babel-plugin-macros@3.1.0)':
dependencies:
'@babel/runtime': 7.27.6
'@lingui/message-utils': 5.2.0
unraw: 3.0.0
optionalDependencies:
- '@lingui/babel-plugin-lingui-macro': 5.2.0(babel-plugin-macros@3.1.0)
+ '@lingui/babel-plugin-lingui-macro': 5.2.0(babel-plugin-macros@3.1.0)(typescript@5.8.3)
babel-plugin-macros: 3.1.0
- '@lingui/format-po@5.2.0':
+ '@lingui/format-po@5.2.0(typescript@5.8.3)':
dependencies:
'@lingui/conf': 5.2.0(typescript@5.8.3)
'@lingui/message-utils': 5.2.0
@@ -5021,11 +6820,11 @@ snapshots:
'@messageformat/parser': 5.1.1
js-sha256: 0.10.1
- '@lingui/vite-plugin@5.2.0(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@lingui/vite-plugin@5.2.0(typescript@5.8.3)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@lingui/cli': 5.2.0
+ '@lingui/cli': 5.2.0(typescript@5.8.3)
'@lingui/conf': 5.2.0(typescript@5.8.3)
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
transitivePeerDependencies:
- supports-color
- typescript
@@ -5040,6 +6839,134 @@ snapshots:
dependencies:
moo: 0.5.2
+ '@napi-rs/wasm-runtime@0.2.12':
+ dependencies:
+ '@emnapi/core': 1.5.0
+ '@emnapi/runtime': 1.5.0
+ '@tybys/wasm-util': 0.10.1
+ optional: true
+
+ '@napi-rs/wasm-runtime@1.0.5':
+ dependencies:
+ '@emnapi/core': 1.5.0
+ '@emnapi/runtime': 1.5.0
+ '@tybys/wasm-util': 0.10.1
+ optional: true
+
+ '@napi-rs/woff-build-android-arm-eabi@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-android-arm64@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-darwin-arm64@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-darwin-x64@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-linux-arm64-gnu@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-linux-arm64-musl@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-linux-x64-gnu@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-linux-x64-musl@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-wasm32-wasi@0.2.2':
+ dependencies:
+ '@napi-rs/wasm-runtime': 1.0.5
+ optional: true
+
+ '@napi-rs/woff-build-win32-arm64-msvc@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-win32-ia32-msvc@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build-win32-x64-msvc@0.2.2':
+ optional: true
+
+ '@napi-rs/woff-build@0.2.2':
+ optionalDependencies:
+ '@napi-rs/woff-build-android-arm-eabi': 0.2.2
+ '@napi-rs/woff-build-android-arm64': 0.2.2
+ '@napi-rs/woff-build-darwin-arm64': 0.2.2
+ '@napi-rs/woff-build-darwin-x64': 0.2.2
+ '@napi-rs/woff-build-linux-arm64-gnu': 0.2.2
+ '@napi-rs/woff-build-linux-arm64-musl': 0.2.2
+ '@napi-rs/woff-build-linux-x64-gnu': 0.2.2
+ '@napi-rs/woff-build-linux-x64-musl': 0.2.2
+ '@napi-rs/woff-build-wasm32-wasi': 0.2.2
+ '@napi-rs/woff-build-win32-arm64-msvc': 0.2.2
+ '@napi-rs/woff-build-win32-ia32-msvc': 0.2.2
+ '@napi-rs/woff-build-win32-x64-msvc': 0.2.2
+
+ '@node-rs/crc32-android-arm-eabi@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-android-arm64@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-darwin-arm64@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-darwin-x64@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-freebsd-x64@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-linux-arm-gnueabihf@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-linux-arm64-gnu@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-linux-arm64-musl@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-linux-x64-gnu@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-linux-x64-musl@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-wasm32-wasi@1.10.6':
+ dependencies:
+ '@napi-rs/wasm-runtime': 0.2.12
+ optional: true
+
+ '@node-rs/crc32-win32-arm64-msvc@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-win32-ia32-msvc@1.10.6':
+ optional: true
+
+ '@node-rs/crc32-win32-x64-msvc@1.10.6':
+ optional: true
+
+ '@node-rs/crc32@1.10.6':
+ optionalDependencies:
+ '@node-rs/crc32-android-arm-eabi': 1.10.6
+ '@node-rs/crc32-android-arm64': 1.10.6
+ '@node-rs/crc32-darwin-arm64': 1.10.6
+ '@node-rs/crc32-darwin-x64': 1.10.6
+ '@node-rs/crc32-freebsd-x64': 1.10.6
+ '@node-rs/crc32-linux-arm-gnueabihf': 1.10.6
+ '@node-rs/crc32-linux-arm64-gnu': 1.10.6
+ '@node-rs/crc32-linux-arm64-musl': 1.10.6
+ '@node-rs/crc32-linux-x64-gnu': 1.10.6
+ '@node-rs/crc32-linux-x64-musl': 1.10.6
+ '@node-rs/crc32-wasm32-wasi': 1.10.6
+ '@node-rs/crc32-win32-arm64-msvc': 1.10.6
+ '@node-rs/crc32-win32-ia32-msvc': 1.10.6
+ '@node-rs/crc32-win32-x64-msvc': 1.10.6
+
'@nodelib/fs.scandir@2.1.5':
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -5054,6 +6981,38 @@ snapshots:
'@pixi/colord@2.9.6': {}
+ '@pixi/msdf-bmfont-xml@3.0.0':
+ dependencies:
+ arabic-persian-reshaper: 1.0.1
+ cli-progress: 3.12.0
+ commander: 14.0.1
+ handlebars: 4.7.8
+ is-invalid-path: 1.0.2
+ jimp: 1.6.0
+ js2xmlparser: 5.0.0
+ map-limit: 0.0.1
+ maxrects-packer: 2.7.3
+ opentype.js: 0.11.0
+
+ '@pixi/sound@6.0.1(pixi.js@8.8.1)':
+ dependencies:
+ pixi.js: 8.8.1
+
+ '@pixi/svg2ttf@6.1.0':
+ dependencies:
+ '@xmldom/xmldom': 0.9.8
+ argparse: 2.0.1
+ cubic2quad: 1.2.1
+ lodash: 4.17.21
+ microbuffer: 1.0.0
+ svgpath: 2.6.0
+
+ '@pixi/ui@2.2.7(pixi.js@8.8.1)':
+ dependencies:
+ pixi.js: 8.8.1
+ tweedle.js: 2.1.0
+ typed-signals: 2.5.0
+
'@polka/url@1.0.0-next.29': {}
'@rollup/rollup-android-arm-eabi@4.44.1':
@@ -5131,11 +7090,11 @@ snapshots:
transitivePeerDependencies:
- '@types/react'
- '@storybook/addon-svelte-csf@5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@storybook/addon-svelte-csf@5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5))(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
'@storybook/csf': 0.1.13
'@storybook/svelte': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)
- '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
dedent: 1.6.0(babel-plugin-macros@3.1.0)
es-toolkit: 1.39.6
esrap: 1.4.9
@@ -5143,16 +7102,16 @@ snapshots:
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
svelte: 5.20.5
svelte-ast-print: 0.4.2(svelte@5.20.5)
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
zimmerframe: 1.1.2
transitivePeerDependencies:
- babel-plugin-macros
- '@storybook/addon-svelte-csf@5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1))(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@storybook/addon-svelte-csf@5.0.5(@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1))(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(babel-plugin-macros@3.1.0)(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
'@storybook/csf': 0.1.13
'@storybook/svelte': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
dedent: 1.6.0(babel-plugin-macros@3.1.0)
es-toolkit: 1.39.6
esrap: 1.4.9
@@ -5160,17 +7119,17 @@ snapshots:
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
svelte: 5.35.1
svelte-ast-print: 0.4.2(svelte@5.35.1)
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
zimmerframe: 1.1.2
transitivePeerDependencies:
- babel-plugin-macros
- '@storybook/builder-vite@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@storybook/builder-vite@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
'@storybook/csf-plugin': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
ts-dedent: 2.2.0
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
'@storybook/csf-plugin@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))':
dependencies:
@@ -5194,29 +7153,29 @@ snapshots:
react-dom: 19.1.0(react@19.1.0)
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
- '@storybook/svelte-vite@9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@storybook/svelte-vite@9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/svelte': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)
- '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
magic-string: 0.30.17
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
svelte: 5.20.5
- svelte2tsx: 0.7.40(svelte@5.20.5)(typescript@5.8.3)
- typescript: 5.8.3
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ svelte2tsx: 0.7.40(svelte@5.20.5)(typescript@5.7.3)
+ typescript: 5.7.3
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
- '@storybook/svelte-vite@9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@storybook/svelte-vite@9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/svelte': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
magic-string: 0.30.17
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
svelte: 5.35.1
- svelte2tsx: 0.7.40(svelte@5.35.1)(typescript@5.8.3)
- typescript: 5.8.3
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ svelte2tsx: 0.7.40(svelte@5.35.1)(typescript@5.7.3)
+ typescript: 5.7.3
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
'@storybook/svelte@9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)':
dependencies:
@@ -5232,25 +7191,25 @@ snapshots:
ts-dedent: 2.2.0
type-fest: 2.19.0
- '@storybook/sveltekit@9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@storybook/sveltekit@9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/svelte': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)
- '@storybook/svelte-vite': 9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@storybook/svelte-vite': 9.0.15(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
transitivePeerDependencies:
- '@sveltejs/vite-plugin-svelte'
- '@storybook/sveltekit@9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@storybook/sveltekit@9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@storybook/builder-vite': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@storybook/svelte': 9.0.15(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)
- '@storybook/svelte-vite': 9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@storybook/svelte-vite': 9.0.15(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
storybook: 9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2)
svelte: 5.35.1
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
transitivePeerDependencies:
- '@sveltejs/vite-plugin-svelte'
@@ -5258,21 +7217,21 @@ snapshots:
dependencies:
acorn: 8.15.0
- '@sveltejs/adapter-static@3.0.8(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))':
+ '@sveltejs/adapter-static@3.0.9(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))':
dependencies:
- '@sveltejs/kit': 2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))
+ '@sveltejs/kit': 2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))
- '@sveltejs/adapter-static@3.0.8(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))':
+ '@sveltejs/adapter-static@3.0.9(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))':
dependencies:
- '@sveltejs/kit': 2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/kit': 2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
- '@sveltejs/adapter-static@3.0.8(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))':
+ '@sveltejs/adapter-static@3.0.9(@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))':
dependencies:
- '@sveltejs/kit': 2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/kit': 2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
- '@sveltejs/kit@2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/kit@2.17.3(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/cookie': 0.6.0
cookie: 0.6.0
devalue: 5.1.1
@@ -5285,11 +7244,11 @@ snapshots:
set-cookie-parser: 2.7.1
sirv: 3.0.1
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
- '@sveltejs/kit@2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/kit@2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/cookie': 0.6.0
cookie: 0.6.0
devalue: 5.1.1
@@ -5302,11 +7261,11 @@ snapshots:
set-cookie-parser: 2.7.1
sirv: 3.0.1
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
- '@sveltejs/kit@2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/kit@2.17.3(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/cookie': 0.6.0
cookie: 0.6.0
devalue: 5.1.1
@@ -5319,12 +7278,12 @@ snapshots:
set-cookie-parser: 2.7.1
sirv: 3.0.1
svelte: 5.20.5
- vite: 7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
- '@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))':
+ '@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))':
dependencies:
'@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0)
- '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))
+ '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))
'@types/cookie': 0.6.0
acorn: 8.15.0
cookie: 0.6.0
@@ -5337,13 +7296,13 @@ snapshots:
set-cookie-parser: 2.7.1
sirv: 3.0.1
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)
- vitefu: 1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)
+ vitefu: 1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))
- '@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
'@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0)
- '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/cookie': 0.6.0
acorn: 8.15.0
cookie: 0.6.0
@@ -5356,13 +7315,13 @@ snapshots:
set-cookie-parser: 2.7.1
sirv: 3.0.1
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
- vitefu: 1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vitefu: 1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
- '@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/kit@2.22.2(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
'@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0)
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@types/cookie': 0.6.0
acorn: 8.15.0
cookie: 0.6.0
@@ -5375,8 +7334,8 @@ snapshots:
set-cookie-parser: 2.7.1
sirv: 3.0.1
svelte: 5.35.1
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
- vitefu: 1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vitefu: 1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
'@sveltejs/package@2.3.10(svelte@5.20.5)(typescript@5.8.3)':
dependencies:
@@ -5389,116 +7348,120 @@ snapshots:
transitivePeerDependencies:
- typescript
- '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))':
+ '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))
+ '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))
debug: 4.4.1
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
svelte: 5.20.5
- vite: 7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte': 5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
svelte: 5.35.1
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))':
+ '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))':
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))
+ '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))
debug: 4.4.1
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.17
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)
- vitefu: 1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1))
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)
+ vitefu: 1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1))
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.17
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
- vitefu: 1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vitefu: 1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.17
svelte: 5.20.5
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
- vitefu: 1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vitefu: 1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.20.5)(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.17
svelte: 5.20.5
- vite: 7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
- vitefu: 1.0.7(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ vite: 7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vitefu: 1.0.7(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
transitivePeerDependencies:
- supports-color
- '@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))':
+ '@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))':
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.1.0(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)))(svelte@5.35.1)(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
debug: 4.4.1
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.17
svelte: 5.35.1
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
- vitefu: 1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2))
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vitefu: 1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2))
transitivePeerDependencies:
- supports-color
+ '@swc/helpers@0.3.17':
+ dependencies:
+ tslib: 2.8.1
+
'@testing-library/dom@10.4.0':
dependencies:
'@babel/code-frame': 7.27.1
@@ -5524,12 +7487,25 @@ snapshots:
dependencies:
'@testing-library/dom': 10.4.0
+ '@tokenizer/token@0.3.0': {}
+
+ '@tybys/wasm-util@0.10.1':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
'@types/aria-query@5.0.4': {}
'@types/chai@5.2.2':
dependencies:
'@types/deep-eql': 4.0.2
+ '@types/cli-progress@3.11.6':
+ dependencies:
+ '@types/node': 24.5.2
+
+ '@types/clone@2.1.4': {}
+
'@types/cookie@0.6.0': {}
'@types/css-font-loading-module@0.0.12': {}
@@ -5540,6 +7516,15 @@ snapshots:
'@types/estree@1.0.8': {}
+ '@types/fluent-ffmpeg@2.1.27':
+ dependencies:
+ '@types/node': 24.5.2
+
+ '@types/fs-extra@11.0.4':
+ dependencies:
+ '@types/jsonfile': 6.1.4
+ '@types/node': 24.5.2
+
'@types/gradient-parser@0.1.5': {}
'@types/howler@2.2.12': {}
@@ -5556,17 +7541,21 @@ snapshots:
'@types/json-schema@7.0.15': {}
+ '@types/jsonfile@6.1.4':
+ dependencies:
+ '@types/node': 24.5.2
+
'@types/lodash@4.17.16': {}
'@types/mdx@2.0.13': {}
- '@types/node@24.0.10':
- dependencies:
- undici-types: 7.8.0
+ '@types/node@16.9.1': {}
- '@types/node@24.0.13':
+ '@types/node@24.5.2':
dependencies:
- undici-types: 7.8.0
+ undici-types: 7.12.0
+
+ '@types/object-hash@3.0.6': {}
'@types/parse-json@4.0.2': {}
@@ -5582,14 +7571,14 @@ snapshots:
dependencies:
'@types/yargs-parser': 21.0.3
- '@typescript-eslint/eslint-plugin@8.35.1(@typescript-eslint/parser@8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3))(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
+ '@typescript-eslint/eslint-plugin@8.44.0(@typescript-eslint/parser@8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3))(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
dependencies:
'@eslint-community/regexpp': 4.12.1
- '@typescript-eslint/parser': 8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
- '@typescript-eslint/scope-manager': 8.35.1
- '@typescript-eslint/type-utils': 8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
- '@typescript-eslint/utils': 8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
- '@typescript-eslint/visitor-keys': 8.35.1
+ '@typescript-eslint/parser': 8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
+ '@typescript-eslint/scope-manager': 8.44.0
+ '@typescript-eslint/type-utils': 8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
+ '@typescript-eslint/utils': 8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
+ '@typescript-eslint/visitor-keys': 8.44.0
eslint: 9.30.1(jiti@1.21.7)
graphemer: 1.4.0
ignore: 7.0.5
@@ -5599,40 +7588,41 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
+ '@typescript-eslint/parser@8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
dependencies:
- '@typescript-eslint/scope-manager': 8.35.1
- '@typescript-eslint/types': 8.35.1
- '@typescript-eslint/typescript-estree': 8.35.1(typescript@5.8.3)
- '@typescript-eslint/visitor-keys': 8.35.1
+ '@typescript-eslint/scope-manager': 8.44.0
+ '@typescript-eslint/types': 8.44.0
+ '@typescript-eslint/typescript-estree': 8.44.0(typescript@5.8.3)
+ '@typescript-eslint/visitor-keys': 8.44.0
debug: 4.4.1
eslint: 9.30.1(jiti@1.21.7)
typescript: 5.8.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/project-service@8.35.1(typescript@5.8.3)':
+ '@typescript-eslint/project-service@8.44.0(typescript@5.8.3)':
dependencies:
- '@typescript-eslint/tsconfig-utils': 8.35.1(typescript@5.8.3)
- '@typescript-eslint/types': 8.35.1
+ '@typescript-eslint/tsconfig-utils': 8.44.0(typescript@5.8.3)
+ '@typescript-eslint/types': 8.44.0
debug: 4.4.1
typescript: 5.8.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/scope-manager@8.35.1':
+ '@typescript-eslint/scope-manager@8.44.0':
dependencies:
- '@typescript-eslint/types': 8.35.1
- '@typescript-eslint/visitor-keys': 8.35.1
+ '@typescript-eslint/types': 8.44.0
+ '@typescript-eslint/visitor-keys': 8.44.0
- '@typescript-eslint/tsconfig-utils@8.35.1(typescript@5.8.3)':
+ '@typescript-eslint/tsconfig-utils@8.44.0(typescript@5.8.3)':
dependencies:
typescript: 5.8.3
- '@typescript-eslint/type-utils@8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
+ '@typescript-eslint/type-utils@8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
dependencies:
- '@typescript-eslint/typescript-estree': 8.35.1(typescript@5.8.3)
- '@typescript-eslint/utils': 8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
+ '@typescript-eslint/types': 8.44.0
+ '@typescript-eslint/typescript-estree': 8.44.0(typescript@5.8.3)
+ '@typescript-eslint/utils': 8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)
debug: 4.4.1
eslint: 9.30.1(jiti@1.21.7)
ts-api-utils: 2.1.0(typescript@5.8.3)
@@ -5640,14 +7630,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/types@8.35.1': {}
+ '@typescript-eslint/types@8.44.0': {}
- '@typescript-eslint/typescript-estree@8.35.1(typescript@5.8.3)':
+ '@typescript-eslint/typescript-estree@8.44.0(typescript@5.8.3)':
dependencies:
- '@typescript-eslint/project-service': 8.35.1(typescript@5.8.3)
- '@typescript-eslint/tsconfig-utils': 8.35.1(typescript@5.8.3)
- '@typescript-eslint/types': 8.35.1
- '@typescript-eslint/visitor-keys': 8.35.1
+ '@typescript-eslint/project-service': 8.44.0(typescript@5.8.3)
+ '@typescript-eslint/tsconfig-utils': 8.44.0(typescript@5.8.3)
+ '@typescript-eslint/types': 8.44.0
+ '@typescript-eslint/visitor-keys': 8.44.0
debug: 4.4.1
fast-glob: 3.3.3
is-glob: 4.0.3
@@ -5658,20 +7648,20 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/utils@8.35.1(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
+ '@typescript-eslint/utils@8.44.0(eslint@9.30.1(jiti@1.21.7))(typescript@5.8.3)':
dependencies:
'@eslint-community/eslint-utils': 4.7.0(eslint@9.30.1(jiti@1.21.7))
- '@typescript-eslint/scope-manager': 8.35.1
- '@typescript-eslint/types': 8.35.1
- '@typescript-eslint/typescript-estree': 8.35.1(typescript@5.8.3)
+ '@typescript-eslint/scope-manager': 8.44.0
+ '@typescript-eslint/types': 8.44.0
+ '@typescript-eslint/typescript-estree': 8.44.0(typescript@5.8.3)
eslint: 9.30.1(jiti@1.21.7)
typescript: 5.8.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/visitor-keys@8.35.1':
+ '@typescript-eslint/visitor-keys@8.44.0':
dependencies:
- '@typescript-eslint/types': 8.35.1
+ '@typescript-eslint/types': 8.44.0
eslint-visitor-keys: 4.2.1
'@vitest/expect@3.2.4':
@@ -5700,6 +7690,12 @@ snapshots:
'@xmldom/xmldom@0.8.10': {}
+ '@xmldom/xmldom@0.9.8': {}
+
+ abort-controller@3.0.0:
+ dependencies:
+ event-target-shim: 5.0.1
+
acorn-jsx@5.3.2(acorn@8.15.0):
dependencies:
acorn: 8.15.0
@@ -5733,11 +7729,15 @@ snapshots:
ansi-styles@6.2.1: {}
+ any-base@1.1.0: {}
+
anymatch@3.1.3:
dependencies:
normalize-path: 3.0.0
picomatch: 2.3.1
+ arabic-persian-reshaper@1.0.1: {}
+
argparse@2.0.1: {}
aria-query@5.3.0:
@@ -5746,12 +7746,25 @@ snapshots:
aria-query@5.3.2: {}
+ array-buffer-byte-length@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ is-array-buffer: 3.0.5
+
assertion-error@2.0.1: {}
ast-types@0.16.1:
dependencies:
tslib: 2.8.1
+ async@0.2.10: {}
+
+ available-typed-arrays@1.0.7:
+ dependencies:
+ possible-typed-array-names: 1.1.0
+
+ await-to-js@3.0.0: {}
+
axobject-query@4.1.0: {}
babel-plugin-macros@3.1.0:
@@ -5776,6 +7789,8 @@ snapshots:
inherits: 2.0.4
readable-stream: 3.6.2
+ bmp-ts@1.0.9: {}
+
brace-expansion@1.1.12:
dependencies:
balanced-match: 1.0.2
@@ -5789,6 +7804,10 @@ snapshots:
dependencies:
fill-range: 7.1.1
+ brotli@1.3.3:
+ dependencies:
+ base64-js: 1.5.1
+
browserslist@4.25.1:
dependencies:
caniuse-lite: 1.0.30001726
@@ -5803,6 +7822,31 @@ snapshots:
base64-js: 1.5.1
ieee754: 1.2.1
+ buffer@6.0.3:
+ dependencies:
+ base64-js: 1.5.1
+ ieee754: 1.2.1
+
+ buildcheck@0.0.6:
+ optional: true
+
+ call-bind-apply-helpers@1.0.2:
+ dependencies:
+ es-errors: 1.3.0
+ function-bind: 1.1.2
+
+ call-bind@1.0.8:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-define-property: 1.0.1
+ get-intrinsic: 1.3.0
+ set-function-length: 1.2.2
+
+ call-bound@1.0.4:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ get-intrinsic: 1.3.0
+
callsites@3.1.0: {}
camelcase@6.3.0: {}
@@ -5827,6 +7871,8 @@ snapshots:
ansi-styles: 4.3.0
supports-color: 7.2.0
+ chalk@5.6.2: {}
+
chardet@0.7.0: {}
check-error@2.1.1: {}
@@ -5853,6 +7899,10 @@ snapshots:
dependencies:
restore-cursor: 3.1.0
+ cli-progress@3.12.0:
+ dependencies:
+ string-width: 4.2.3
+
cli-spinners@2.9.2: {}
cli-table@0.3.11:
@@ -5861,8 +7911,16 @@ snapshots:
cli-width@3.0.0: {}
+ cliui@8.0.1:
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+
clone@1.0.4: {}
+ clone@2.1.2: {}
+
clsx@2.1.1: {}
color-convert@2.0.1:
@@ -5871,12 +7929,26 @@ snapshots:
color-name@1.1.4: {}
+ color-string@1.9.1:
+ dependencies:
+ color-name: 1.1.4
+ simple-swizzle: 0.2.4
+ optional: true
+
+ color@4.2.3:
+ dependencies:
+ color-convert: 2.0.1
+ color-string: 1.9.1
+ optional: true
+
colorjs.io@0.5.2: {}
colors@1.0.3: {}
commander@10.0.1: {}
+ commander@14.0.1: {}
+
concat-map@0.0.1: {}
convert-source-map@2.0.0: {}
@@ -5891,6 +7963,16 @@ snapshots:
path-type: 4.0.0
yaml: 1.10.2
+ cosmiconfig@8.3.6(typescript@5.7.3):
+ dependencies:
+ import-fresh: 3.3.1
+ js-yaml: 4.1.0
+ parse-json: 5.2.0
+ path-type: 4.0.0
+ optionalDependencies:
+ typescript: 5.7.3
+ optional: true
+
cosmiconfig@8.3.6(typescript@5.8.3):
dependencies:
import-fresh: 3.3.1
@@ -5900,6 +7982,17 @@ snapshots:
optionalDependencies:
typescript: 5.8.3
+ cpu-features@0.0.10:
+ dependencies:
+ buildcheck: 0.0.6
+ nan: 2.23.0
+ optional: true
+
+ cross-env@10.0.0:
+ dependencies:
+ '@epic-web/invariant': 1.0.0
+ cross-spawn: 7.0.6
+
cross-spawn@7.0.6:
dependencies:
path-key: 3.1.1
@@ -5912,6 +8005,8 @@ snapshots:
csstype@3.1.3: {}
+ cubic2quad@1.2.1: {}
+
date-fns@3.6.0: {}
debug@4.4.1:
@@ -5926,6 +8021,27 @@ snapshots:
deep-eql@5.0.2: {}
+ deep-equal@2.2.3:
+ dependencies:
+ array-buffer-byte-length: 1.0.2
+ call-bind: 1.0.8
+ es-get-iterator: 1.1.3
+ get-intrinsic: 1.3.0
+ is-arguments: 1.2.0
+ is-array-buffer: 3.0.5
+ is-date-object: 1.1.0
+ is-regex: 1.2.1
+ is-shared-array-buffer: 1.0.4
+ isarray: 2.0.5
+ object-is: 1.1.6
+ object-keys: 1.1.1
+ object.assign: 4.1.7
+ regexp.prototype.flags: 1.5.4
+ side-channel: 1.1.0
+ which-boxed-primitive: 1.1.1
+ which-collection: 1.0.2
+ which-typed-array: 1.1.19
+
deep-is@0.1.4: {}
deepmerge@4.3.1: {}
@@ -5934,24 +8050,48 @@ snapshots:
dependencies:
clone: 1.0.4
+ define-data-property@1.1.4:
+ dependencies:
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ gopd: 1.2.0
+
define-lazy-prop@2.0.0: {}
+ define-properties@1.2.1:
+ dependencies:
+ define-data-property: 1.1.4
+ has-property-descriptors: 1.0.2
+ object-keys: 1.1.1
+
dequal@2.0.3: {}
+ detect-libc@2.1.0: {}
+
devalue@5.1.1: {}
+ dfa@1.2.0: {}
+
dom-accessibility-api@0.5.16: {}
dom-accessibility-api@0.6.3: {}
dotenv@16.0.3: {}
+ dunder-proto@1.0.1:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-errors: 1.3.0
+ gopd: 1.2.0
+
earcut@2.2.4: {}
eastasianwidth@0.2.0: {}
electron-to-chromium@1.5.179: {}
+ emoji-regex@10.5.0: {}
+
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
@@ -5960,6 +8100,26 @@ snapshots:
dependencies:
is-arrayish: 0.2.1
+ es-define-property@1.0.1: {}
+
+ es-errors@1.3.0: {}
+
+ es-get-iterator@1.1.3:
+ dependencies:
+ call-bind: 1.0.8
+ get-intrinsic: 1.3.0
+ has-symbols: 1.1.0
+ is-arguments: 1.2.0
+ is-map: 2.0.3
+ is-set: 2.0.3
+ is-string: 1.1.1
+ isarray: 2.0.5
+ stop-iteration-iterator: 1.1.0
+
+ es-object-atoms@1.1.1:
+ dependencies:
+ es-errors: 1.3.0
+
es-toolkit@1.39.6: {}
esbuild-register@3.6.0(esbuild@0.25.5):
@@ -6029,17 +8189,17 @@ snapshots:
escape-string-regexp@4.0.0: {}
- eslint-config-prettier@10.1.5(eslint@9.30.1(jiti@1.21.7)):
+ eslint-config-prettier@10.1.8(eslint@9.30.1(jiti@1.21.7)):
dependencies:
eslint: 9.30.1(jiti@1.21.7)
- eslint-config-turbo@2.5.4(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4):
+ eslint-config-turbo@2.5.6(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4):
dependencies:
eslint: 9.30.1(jiti@1.21.7)
- eslint-plugin-turbo: 2.5.4(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4)
+ eslint-plugin-turbo: 2.5.6(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4)
turbo: 2.5.4
- eslint-plugin-svelte@3.10.1(eslint@9.30.1(jiti@1.21.7))(svelte@5.35.1):
+ eslint-plugin-svelte@3.12.4(eslint@9.30.1(jiti@1.21.7))(svelte@5.35.1):
dependencies:
'@eslint-community/eslint-utils': 4.7.0(eslint@9.30.1(jiti@1.21.7))
'@jridgewell/sourcemap-codec': 1.5.4
@@ -6051,13 +8211,13 @@ snapshots:
postcss-load-config: 3.1.4(postcss@8.5.6)
postcss-safe-parser: 7.0.1(postcss@8.5.6)
semver: 7.7.2
- svelte-eslint-parser: 1.2.0(svelte@5.35.1)
+ svelte-eslint-parser: 1.3.3(svelte@5.35.1)
optionalDependencies:
svelte: 5.35.1
transitivePeerDependencies:
- ts-node
- eslint-plugin-turbo@2.5.4(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4):
+ eslint-plugin-turbo@2.5.6(eslint@9.30.1(jiti@1.21.7))(turbo@2.5.4):
dependencies:
dotenv: 16.0.3
eslint: 9.30.1(jiti@1.21.7)
@@ -6190,8 +8350,14 @@ snapshots:
esutils@2.0.3: {}
+ event-target-shim@5.0.1: {}
+
eventemitter3@5.0.1: {}
+ events@3.3.0: {}
+
+ exif-parser@0.1.12: {}
+
external-editor@3.1.0:
dependencies:
chardet: 0.7.0
@@ -6228,6 +8394,12 @@ snapshots:
dependencies:
flat-cache: 4.0.1
+ file-type@16.5.4:
+ dependencies:
+ readable-web-to-node-stream: 3.0.4
+ strtok3: 6.3.0
+ token-types: 4.2.1
+
filesize@10.1.6: {}
fill-range@7.1.1:
@@ -6243,6 +8415,12 @@ snapshots:
locate-path: 6.0.0
path-exists: 4.0.0
+ find-up@7.0.0:
+ dependencies:
+ locate-path: 7.2.0
+ path-exists: 5.0.0
+ unicorn-magic: 0.1.0
+
flat-cache@4.0.1:
dependencies:
flatted: 3.3.3
@@ -6250,22 +8428,87 @@ snapshots:
flatted@3.3.3: {}
+ fluent-ffmpeg@2.1.3:
+ dependencies:
+ async: 0.2.10
+ which: 1.3.1
+
+ fontkit@1.9.0:
+ dependencies:
+ '@swc/helpers': 0.3.17
+ brotli: 1.3.3
+ clone: 2.1.2
+ deep-equal: 2.2.3
+ dfa: 1.2.0
+ restructure: 2.0.1
+ tiny-inflate: 1.0.3
+ unicode-properties: 1.4.1
+ unicode-trie: 2.0.0
+
+ for-each@0.3.5:
+ dependencies:
+ is-callable: 1.2.7
+
foreground-child@3.3.1:
dependencies:
cross-spawn: 7.0.6
signal-exit: 4.1.0
+ framer-motion@12.23.18(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
+ dependencies:
+ motion-dom: 12.23.18
+ motion-utils: 12.23.6
+ tslib: 2.8.1
+ optionalDependencies:
+ react: 19.1.0
+ react-dom: 19.1.0(react@19.1.0)
+
+ fs-extra@11.3.2:
+ dependencies:
+ graceful-fs: 4.2.11
+ jsonfile: 6.1.0
+ universalify: 2.0.1
+
fsevents@2.3.3:
optional: true
function-bind@1.1.2: {}
+ functions-have-names@1.2.3: {}
+
gensync@1.0.0-beta.2: {}
+ get-caller-file@2.0.5: {}
+
+ get-east-asian-width@1.4.0: {}
+
+ get-intrinsic@1.3.0:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ function-bind: 1.1.2
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ has-symbols: 1.1.0
+ hasown: 2.0.2
+ math-intrinsics: 1.1.0
+
+ get-proto@1.0.1:
+ dependencies:
+ dunder-proto: 1.0.1
+ es-object-atoms: 1.1.1
+
gifuct-js@2.1.2:
dependencies:
js-binary-schema-parser: 2.0.3
+ gifwrap@0.10.1:
+ dependencies:
+ image-q: 4.0.0
+ omggif: 1.0.10
+
glob-parent@5.1.2:
dependencies:
is-glob: 4.0.3
@@ -6287,13 +8530,45 @@ snapshots:
globals@16.3.0: {}
- graceful-fs@4.2.11:
- optional: true
+ gopd@1.2.0: {}
+
+ gpu-tex-enc@1.2.5:
+ dependencies:
+ '@gpu-tex-enc/astc': 4.7.1
+ '@gpu-tex-enc/basis': 1.16.4
+ '@gpu-tex-enc/bc': 1.0.11
+ '@gpu-tex-enc/etc': 1.0.3
+ yargs: 17.7.2
+ optionalDependencies:
+ sharp: 0.33.5
+
+ graceful-fs@4.2.11: {}
graphemer@1.4.0: {}
+ handlebars@4.7.8:
+ dependencies:
+ minimist: 1.2.8
+ neo-async: 2.6.2
+ source-map: 0.6.1
+ wordwrap: 1.0.0
+ optionalDependencies:
+ uglify-js: 3.19.3
+
+ has-bigints@1.1.0: {}
+
has-flag@4.0.0: {}
+ has-property-descriptors@1.0.2:
+ dependencies:
+ es-define-property: 1.0.1
+
+ has-symbols@1.1.0: {}
+
+ has-tostringtag@1.0.2:
+ dependencies:
+ has-symbols: 1.1.0
+
hasown@2.0.2:
dependencies:
function-bind: 1.1.2
@@ -6310,6 +8585,10 @@ snapshots:
ignore@7.0.5: {}
+ image-q@4.0.0:
+ dependencies:
+ '@types/node': 16.9.1
+
immutable@5.1.3: {}
import-fresh@3.3.1:
@@ -6341,16 +8620,52 @@ snapshots:
strip-ansi: 6.0.1
through: 2.3.8
+ internal-slot@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ hasown: 2.0.2
+ side-channel: 1.1.0
+
+ is-arguments@1.2.0:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-array-buffer@3.0.5:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+
is-arrayish@0.2.1: {}
+ is-arrayish@0.3.4:
+ optional: true
+
+ is-bigint@1.1.0:
+ dependencies:
+ has-bigints: 1.1.0
+
is-binary-path@2.1.0:
dependencies:
binary-extensions: 2.3.0
+ is-boolean-object@1.2.2:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-callable@1.2.7: {}
+
is-core-module@2.16.1:
dependencies:
hasown: 2.0.2
+ is-date-object@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
is-docker@2.2.1: {}
is-extglob@2.1.1: {}
@@ -6363,18 +8678,60 @@ snapshots:
is-interactive@1.0.0: {}
+ is-invalid-path@1.0.2: {}
+
+ is-map@2.0.3: {}
+
+ is-number-object@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
is-number@7.0.0: {}
is-reference@3.0.3:
dependencies:
'@types/estree': 1.0.8
+ is-regex@1.2.1:
+ dependencies:
+ call-bound: 1.0.4
+ gopd: 1.2.0
+ has-tostringtag: 1.0.2
+ hasown: 2.0.2
+
+ is-set@2.0.3: {}
+
+ is-shared-array-buffer@1.0.4:
+ dependencies:
+ call-bound: 1.0.4
+
+ is-string@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-symbol@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-symbols: 1.1.0
+ safe-regex-test: 1.1.0
+
is-unicode-supported@0.1.0: {}
+ is-weakmap@2.0.2: {}
+
+ is-weakset@2.0.4:
+ dependencies:
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+
is-wsl@2.2.0:
dependencies:
is-docker: 2.2.1
+ isarray@2.0.5: {}
+
isexe@2.0.0: {}
ismobilejs@1.1.1: {}
@@ -6394,8 +8751,40 @@ snapshots:
leven: 3.1.0
pretty-format: 29.7.0
+ jimp@1.6.0:
+ dependencies:
+ '@jimp/core': 1.6.0
+ '@jimp/diff': 1.6.0
+ '@jimp/js-bmp': 1.6.0
+ '@jimp/js-gif': 1.6.0
+ '@jimp/js-jpeg': 1.6.0
+ '@jimp/js-png': 1.6.0
+ '@jimp/js-tiff': 1.6.0
+ '@jimp/plugin-blit': 1.6.0
+ '@jimp/plugin-blur': 1.6.0
+ '@jimp/plugin-circle': 1.6.0
+ '@jimp/plugin-color': 1.6.0
+ '@jimp/plugin-contain': 1.6.0
+ '@jimp/plugin-cover': 1.6.0
+ '@jimp/plugin-crop': 1.6.0
+ '@jimp/plugin-displace': 1.6.0
+ '@jimp/plugin-dither': 1.6.0
+ '@jimp/plugin-fisheye': 1.6.0
+ '@jimp/plugin-flip': 1.6.0
+ '@jimp/plugin-hash': 1.6.0
+ '@jimp/plugin-mask': 1.6.0
+ '@jimp/plugin-print': 1.6.0
+ '@jimp/plugin-quantize': 1.6.0
+ '@jimp/plugin-resize': 1.6.0
+ '@jimp/plugin-rotate': 1.6.0
+ '@jimp/plugin-threshold': 1.6.0
+ '@jimp/types': 1.6.0
+ '@jimp/utils': 1.6.0
+
jiti@1.21.7: {}
+ jpeg-js@0.4.4: {}
+
js-binary-schema-parser@2.0.3: {}
js-sha256@0.10.1: {}
@@ -6406,6 +8795,10 @@ snapshots:
dependencies:
argparse: 2.0.1
+ js2xmlparser@5.0.0:
+ dependencies:
+ xmlcreate: 2.0.4
+
jsesc@3.1.0: {}
json-buffer@3.0.1: {}
@@ -6454,6 +8847,10 @@ snapshots:
dependencies:
p-locate: 5.0.0
+ locate-path@7.2.0:
+ dependencies:
+ p-locate: 6.0.0
+
lodash.get@4.4.2: {}
lodash.merge@4.6.2: {}
@@ -6487,13 +8884,27 @@ snapshots:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.4
+ map-limit@0.0.1:
+ dependencies:
+ once: 1.3.3
+
+ math-intrinsics@1.1.0: {}
+
+ maxrects-packer@2.7.3: {}
+
merge2@1.4.1: {}
+ merge@2.1.1: {}
+
+ microbuffer@1.0.0: {}
+
micromatch@4.0.8:
dependencies:
braces: 3.0.3
picomatch: 2.3.1
+ mime@3.0.0: {}
+
mimic-fn@2.1.0: {}
min-indent@1.0.1: {}
@@ -6510,10 +8921,26 @@ snapshots:
dependencies:
brace-expansion: 2.0.2
+ minimist@1.2.8: {}
+
minipass@7.1.2: {}
moo@0.5.2: {}
+ motion-dom@12.23.18:
+ dependencies:
+ motion-utils: 12.23.6
+
+ motion-utils@12.23.6: {}
+
+ motion@12.23.18(react-dom@19.1.0(react@19.1.0))(react@19.1.0):
+ dependencies:
+ framer-motion: 12.23.18(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
+ tslib: 2.8.1
+ optionalDependencies:
+ react: 19.1.0
+ react-dom: 19.1.0(react@19.1.0)
+
mri@1.2.0: {}
mrmime@2.0.1: {}
@@ -6522,10 +8949,15 @@ snapshots:
mute-stream@0.0.8: {}
+ nan@2.23.0:
+ optional: true
+
nanoid@3.3.11: {}
natural-compare@1.4.0: {}
+ neo-async@2.6.2: {}
+
no-case@3.0.4:
dependencies:
lower-case: 2.0.2
@@ -6535,6 +8967,32 @@ snapshots:
normalize-path@3.0.0: {}
+ object-hash@3.0.0: {}
+
+ object-inspect@1.13.4: {}
+
+ object-is@1.1.6:
+ dependencies:
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+
+ object-keys@1.1.1: {}
+
+ object.assign@4.1.7:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+ has-symbols: 1.1.0
+ object-keys: 1.1.1
+
+ omggif@1.0.10: {}
+
+ once@1.3.3:
+ dependencies:
+ wrappy: 1.0.2
+
onetime@5.1.2:
dependencies:
mimic-fn: 2.1.0
@@ -6545,6 +9003,11 @@ snapshots:
is-docker: 2.2.1
is-wsl: 2.2.0
+ opentype.js@0.11.0:
+ dependencies:
+ string.prototype.codepointat: 0.2.1
+ tiny-inflate: 1.0.3
+
optionator@0.9.4:
dependencies:
deep-is: 0.1.4
@@ -6568,6 +9031,10 @@ snapshots:
os-tmpdir@1.0.2: {}
+ otf2svg@1.0.2:
+ dependencies:
+ fontkit: 1.9.0
+
p-limit@2.3.0:
dependencies:
p-try: 2.2.0
@@ -6576,6 +9043,10 @@ snapshots:
dependencies:
yocto-queue: 0.1.0
+ p-limit@4.0.0:
+ dependencies:
+ yocto-queue: 1.2.1
+
p-locate@3.0.0:
dependencies:
p-limit: 2.3.0
@@ -6584,14 +9055,31 @@ snapshots:
dependencies:
p-limit: 3.1.0
+ p-locate@6.0.0:
+ dependencies:
+ p-limit: 4.0.0
+
p-try@2.2.0: {}
package-json-from-dist@1.0.1: {}
+ pako@0.2.9: {}
+
+ pako@1.0.11: {}
+
parent-module@1.0.1:
dependencies:
callsites: 3.1.0
+ parse-bmfont-ascii@1.0.6: {}
+
+ parse-bmfont-binary@1.0.6: {}
+
+ parse-bmfont-xml@1.1.6:
+ dependencies:
+ xml-parse-from-string: 1.0.1
+ xml2js: 0.5.0
+
parse-json@5.2.0:
dependencies:
'@babel/code-frame': 7.27.1
@@ -6610,6 +9098,8 @@ snapshots:
path-exists@4.0.0: {}
+ path-exists@5.0.0: {}
+
path-key@3.1.1: {}
path-parse@1.0.7: {}
@@ -6625,12 +9115,18 @@ snapshots:
pathval@2.0.1: {}
+ peek-readable@4.1.0: {}
+
picocolors@1.1.1: {}
picomatch@2.3.1: {}
picomatch@4.0.2: {}
+ pixelmatch@5.3.0:
+ dependencies:
+ pngjs: 6.0.0
+
pixi-filters@6.1.0(pixi.js@8.8.1):
dependencies:
'@types/gradient-parser': 0.1.5
@@ -6653,8 +9149,14 @@ snapshots:
dependencies:
find-up: 3.0.0
+ pngjs@6.0.0: {}
+
+ pngjs@7.0.0: {}
+
pofile@1.1.4: {}
+ possible-typed-array-names@1.1.0: {}
+
postcss-load-config@3.1.4(postcss@8.5.6):
dependencies:
lilconfig: 2.1.0
@@ -6710,6 +9212,8 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
+ process@0.11.10: {}
+
pseudolocale@2.1.0:
dependencies:
commander: 10.0.1
@@ -6740,12 +9244,26 @@ snapshots:
string_decoder: 1.3.0
util-deprecate: 1.0.2
+ readable-stream@4.7.0:
+ dependencies:
+ abort-controller: 3.0.0
+ buffer: 6.0.3
+ events: 3.3.0
+ process: 0.11.10
+ string_decoder: 1.3.0
+
+ readable-web-to-node-stream@3.0.4:
+ dependencies:
+ readable-stream: 4.7.0
+
readdirp@3.5.0:
dependencies:
picomatch: 2.3.1
readdirp@4.1.2: {}
+ readline@1.3.0: {}
+
recast@0.23.11:
dependencies:
ast-types: 0.16.1
@@ -6759,6 +9277,17 @@ snapshots:
indent-string: 4.0.0
strip-indent: 3.0.0
+ regexp.prototype.flags@1.5.4:
+ dependencies:
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+ es-errors: 1.3.0
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ set-function-name: 2.0.2
+
+ require-directory@2.1.1: {}
+
resize-observer@1.0.4: {}
resolve-from@4.0.0: {}
@@ -6774,6 +9303,8 @@ snapshots:
onetime: 5.1.2
signal-exit: 3.0.7
+ restructure@2.0.1: {}
+
reusify@1.1.0: {}
rollup@4.44.1:
@@ -6822,6 +9353,12 @@ snapshots:
safe-buffer@5.2.1: {}
+ safe-regex-test@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-regex: 1.2.1
+
safer-buffer@2.1.2: {}
sass-embedded-android-arm64@1.85.1:
@@ -6993,6 +9530,8 @@ snapshots:
sass-embedded-win32-x64: 1.89.2
optional: true
+ sax@1.4.1: {}
+
scheduler@0.26.0: {}
semver@6.3.1: {}
@@ -7001,16 +9540,123 @@ snapshots:
set-cookie-parser@2.7.1: {}
+ set-function-length@1.2.2:
+ dependencies:
+ define-data-property: 1.1.4
+ es-errors: 1.3.0
+ function-bind: 1.1.2
+ get-intrinsic: 1.3.0
+ gopd: 1.2.0
+ has-property-descriptors: 1.0.2
+
+ set-function-name@2.0.2:
+ dependencies:
+ define-data-property: 1.1.4
+ es-errors: 1.3.0
+ functions-have-names: 1.2.3
+ has-property-descriptors: 1.0.2
+
+ sharp@0.33.5:
+ dependencies:
+ color: 4.2.3
+ detect-libc: 2.1.0
+ semver: 7.7.2
+ optionalDependencies:
+ '@img/sharp-darwin-arm64': 0.33.5
+ '@img/sharp-darwin-x64': 0.33.5
+ '@img/sharp-libvips-darwin-arm64': 1.0.4
+ '@img/sharp-libvips-darwin-x64': 1.0.4
+ '@img/sharp-libvips-linux-arm': 1.0.5
+ '@img/sharp-libvips-linux-arm64': 1.0.4
+ '@img/sharp-libvips-linux-s390x': 1.0.4
+ '@img/sharp-libvips-linux-x64': 1.0.4
+ '@img/sharp-libvips-linuxmusl-arm64': 1.0.4
+ '@img/sharp-libvips-linuxmusl-x64': 1.0.4
+ '@img/sharp-linux-arm': 0.33.5
+ '@img/sharp-linux-arm64': 0.33.5
+ '@img/sharp-linux-s390x': 0.33.5
+ '@img/sharp-linux-x64': 0.33.5
+ '@img/sharp-linuxmusl-arm64': 0.33.5
+ '@img/sharp-linuxmusl-x64': 0.33.5
+ '@img/sharp-wasm32': 0.33.5
+ '@img/sharp-win32-ia32': 0.33.5
+ '@img/sharp-win32-x64': 0.33.5
+ optional: true
+
+ sharp@0.34.4:
+ dependencies:
+ '@img/colour': 1.0.0
+ detect-libc: 2.1.0
+ semver: 7.7.2
+ optionalDependencies:
+ '@img/sharp-darwin-arm64': 0.34.4
+ '@img/sharp-darwin-x64': 0.34.4
+ '@img/sharp-libvips-darwin-arm64': 1.2.3
+ '@img/sharp-libvips-darwin-x64': 1.2.3
+ '@img/sharp-libvips-linux-arm': 1.2.3
+ '@img/sharp-libvips-linux-arm64': 1.2.3
+ '@img/sharp-libvips-linux-ppc64': 1.2.3
+ '@img/sharp-libvips-linux-s390x': 1.2.3
+ '@img/sharp-libvips-linux-x64': 1.2.3
+ '@img/sharp-libvips-linuxmusl-arm64': 1.2.3
+ '@img/sharp-libvips-linuxmusl-x64': 1.2.3
+ '@img/sharp-linux-arm': 0.34.4
+ '@img/sharp-linux-arm64': 0.34.4
+ '@img/sharp-linux-ppc64': 0.34.4
+ '@img/sharp-linux-s390x': 0.34.4
+ '@img/sharp-linux-x64': 0.34.4
+ '@img/sharp-linuxmusl-arm64': 0.34.4
+ '@img/sharp-linuxmusl-x64': 0.34.4
+ '@img/sharp-wasm32': 0.34.4
+ '@img/sharp-win32-arm64': 0.34.4
+ '@img/sharp-win32-ia32': 0.34.4
+ '@img/sharp-win32-x64': 0.34.4
+
shebang-command@2.0.0:
dependencies:
shebang-regex: 3.0.0
shebang-regex@3.0.0: {}
+ side-channel-list@1.0.0:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-map@1.0.1:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-weakmap@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-map: 1.0.1
+
+ side-channel@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-list: 1.0.0
+ side-channel-map: 1.0.1
+ side-channel-weakmap: 1.0.2
+
signal-exit@3.0.7: {}
signal-exit@4.1.0: {}
+ simple-swizzle@0.2.4:
+ dependencies:
+ is-arrayish: 0.3.4
+ optional: true
+
+ simple-xml-to-json@1.2.3: {}
+
sirv@3.0.1:
dependencies:
'@polka/url': 1.0.0-next.29
@@ -7025,6 +9671,11 @@ snapshots:
dependencies:
whatwg-url: 7.1.0
+ stop-iteration-iterator@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ internal-slot: 1.1.0
+
storybook@9.0.15(@testing-library/dom@10.4.0)(prettier@3.6.2):
dependencies:
'@storybook/global': 5.0.0
@@ -7058,6 +9709,14 @@ snapshots:
emoji-regex: 9.2.2
strip-ansi: 7.1.0
+ string-width@7.2.0:
+ dependencies:
+ emoji-regex: 10.5.0
+ get-east-asian-width: 1.4.0
+ strip-ansi: 7.1.0
+
+ string.prototype.codepointat@0.2.1: {}
+
string_decoder@1.3.0:
dependencies:
safe-buffer: 5.2.1
@@ -7076,6 +9735,11 @@ snapshots:
strip-json-comments@3.1.1: {}
+ strtok3@6.3.0:
+ dependencies:
+ '@tokenizer/token': 0.3.0
+ peek-readable: 4.1.0
+
supports-color@7.2.0:
dependencies:
has-flag: 4.0.0
@@ -7098,7 +9762,7 @@ snapshots:
svelte: 5.35.1
zimmerframe: 1.1.2
- svelte-eslint-parser@1.2.0(svelte@5.35.1):
+ svelte-eslint-parser@1.3.3(svelte@5.35.1):
dependencies:
eslint-scope: 8.4.0
eslint-visitor-keys: 4.2.1
@@ -7109,6 +9773,13 @@ snapshots:
optionalDependencies:
svelte: 5.35.1
+ svelte2tsx@0.7.40(svelte@5.20.5)(typescript@5.7.3):
+ dependencies:
+ dedent-js: 1.0.1
+ pascal-case: 3.1.2
+ svelte: 5.20.5
+ typescript: 5.7.3
+
svelte2tsx@0.7.40(svelte@5.20.5)(typescript@5.8.3):
dependencies:
dedent-js: 1.0.1
@@ -7116,12 +9787,12 @@ snapshots:
svelte: 5.20.5
typescript: 5.8.3
- svelte2tsx@0.7.40(svelte@5.35.1)(typescript@5.8.3):
+ svelte2tsx@0.7.40(svelte@5.35.1)(typescript@5.7.3):
dependencies:
dedent-js: 1.0.1
pascal-case: 3.1.2
svelte: 5.35.1
- typescript: 5.8.3
+ typescript: 5.7.3
svelte@5.20.5:
dependencies:
@@ -7157,16 +9828,24 @@ snapshots:
magic-string: 0.30.17
zimmerframe: 1.1.2
+ svgpath@2.6.0: {}
+
sync-child-process@1.0.2:
dependencies:
sync-message-port: 1.1.3
sync-message-port@1.1.3: {}
+ terminal-size@4.0.0: {}
+
through@2.3.8: {}
+ tiny-inflate@1.0.3: {}
+
tiny-invariant@1.3.3: {}
+ tinycolor2@1.6.0: {}
+
tinyglobby@0.2.14:
dependencies:
fdir: 6.4.6(picomatch@4.0.2)
@@ -7184,6 +9863,11 @@ snapshots:
dependencies:
is-number: 7.0.0
+ token-types@4.2.1:
+ dependencies:
+ '@tokenizer/token': 0.3.0
+ ieee754: 1.2.1
+
totalist@3.0.1: {}
tr46@1.0.1:
@@ -7254,6 +9938,8 @@ snapshots:
turbo-windows-64: 2.5.4
turbo-windows-arm64: 2.5.4
+ tweedle.js@2.1.0: {}
+
tween-functions@1.2.0: {}
type-check@0.4.0:
@@ -7264,9 +9950,28 @@ snapshots:
type-fest@2.19.0: {}
+ typed-signals@2.5.0: {}
+
+ typescript@5.7.3: {}
+
typescript@5.8.3: {}
- undici-types@7.8.0: {}
+ uglify-js@3.19.3:
+ optional: true
+
+ undici-types@7.12.0: {}
+
+ unicode-properties@1.4.1:
+ dependencies:
+ base64-js: 1.5.1
+ unicode-trie: 2.0.0
+
+ unicode-trie@2.0.0:
+ dependencies:
+ pako: 0.2.9
+ tiny-inflate: 1.0.3
+
+ unicorn-magic@0.1.0: {}
universalify@2.0.1: {}
@@ -7277,6 +9982,8 @@ snapshots:
unraw@3.0.0: {}
+ upath@2.0.1: {}
+
update-browserslist-db@1.1.3(browserslist@4.25.1):
dependencies:
browserslist: 4.25.1
@@ -7287,33 +9994,37 @@ snapshots:
dependencies:
punycode: 2.3.1
+ utif2@4.1.0:
+ dependencies:
+ pako: 1.0.11
+
util-deprecate@1.0.2: {}
varint@6.0.0: {}
- vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1):
+ vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1):
dependencies:
esbuild: 0.25.5
postcss: 8.5.6
rollup: 4.44.1
optionalDependencies:
- '@types/node': 24.0.13
+ '@types/node': 24.5.2
fsevents: 2.3.3
jiti: 1.21.7
sass-embedded: 1.85.1
- vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2):
+ vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2):
dependencies:
esbuild: 0.25.5
postcss: 8.5.6
rollup: 4.44.1
optionalDependencies:
- '@types/node': 24.0.13
+ '@types/node': 24.5.2
fsevents: 2.3.3
jiti: 1.21.7
sass-embedded: 1.89.2
- vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2):
+ vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2):
dependencies:
esbuild: 0.25.5
fdir: 6.4.6(picomatch@4.0.2)
@@ -7322,22 +10033,22 @@ snapshots:
rollup: 4.44.1
tinyglobby: 0.2.14
optionalDependencies:
- '@types/node': 24.0.13
+ '@types/node': 24.5.2
fsevents: 2.3.3
jiti: 1.21.7
sass-embedded: 1.89.2
- vitefu@1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)):
+ vitefu@1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)):
optionalDependencies:
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.85.1)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.85.1)
- vitefu@1.0.7(vite@6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)):
+ vitefu@1.0.7(vite@6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)):
optionalDependencies:
- vite: 6.2.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 6.2.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
- vitefu@1.0.7(vite@7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)):
+ vitefu@1.0.7(vite@7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)):
optionalDependencies:
- vite: 7.0.0(@types/node@24.0.13)(jiti@1.21.7)(sass-embedded@1.89.2)
+ vite: 7.0.0(@types/node@24.5.2)(jiti@1.21.7)(sass-embedded@1.89.2)
wcwidth@1.0.1:
dependencies:
@@ -7355,12 +10066,43 @@ snapshots:
tr46: 1.0.1
webidl-conversions: 4.0.2
+ which-boxed-primitive@1.1.1:
+ dependencies:
+ is-bigint: 1.1.0
+ is-boolean-object: 1.2.2
+ is-number-object: 1.1.1
+ is-string: 1.1.1
+ is-symbol: 1.1.1
+
+ which-collection@1.0.2:
+ dependencies:
+ is-map: 2.0.3
+ is-set: 2.0.3
+ is-weakmap: 2.0.2
+ is-weakset: 2.0.4
+
+ which-typed-array@1.1.19:
+ dependencies:
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ for-each: 0.3.5
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ has-tostringtag: 1.0.2
+
+ which@1.3.1:
+ dependencies:
+ isexe: 2.0.0
+
which@2.0.2:
dependencies:
isexe: 2.0.0
word-wrap@1.2.5: {}
+ wordwrap@1.0.0: {}
+
wrap-ansi@7.0.0:
dependencies:
ansi-styles: 4.3.0
@@ -7373,14 +10115,45 @@ snapshots:
string-width: 5.1.2
strip-ansi: 7.1.0
+ wrappy@1.0.2: {}
+
ws@8.18.3: {}
+ xml-parse-from-string@1.0.1: {}
+
+ xml2js@0.5.0:
+ dependencies:
+ sax: 1.4.1
+ xmlbuilder: 11.0.1
+
+ xmlbuilder@11.0.1: {}
+
+ xmlcreate@2.0.4: {}
+
xstate@5.19.2: {}
+ y18n@5.0.8: {}
+
yallist@3.1.1: {}
yaml@1.10.2: {}
+ yargs-parser@21.1.1: {}
+
+ yargs@17.7.2:
+ dependencies:
+ cliui: 8.0.1
+ escalade: 3.2.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 21.1.1
+
yocto-queue@0.1.0: {}
+ yocto-queue@1.2.1: {}
+
zimmerframe@1.1.2: {}
+
+ zod@3.25.76: {}