diff --git a/.gitignore b/.gitignore
index cec0ce910c..9762ee4ed1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -28,9 +28,9 @@ packages/icons*/icons/*
packages/icons*/src/icons/*
packages/icons*/src/icons.js
packages/icons*/src/icons.ts
+packages/icons*/src/aliases.ts
packages/icons*/LICENSE
packages/icons*/stats/*
-packages/icons*/icons/*
.turbo
.sass-cache
diff --git a/package.json b/package.json
index 556a90634a..597f6d8a36 100644
--- a/package.json
+++ b/package.json
@@ -34,6 +34,7 @@
"build:copy": "rm -rf ./icons && mkdir ./icons && cp ./_site/tags.json tags.json && cp ./_site/icons/* ./icons/ && rm -rf ./_site/",
"build:packages": "pnpm run build:icons && pnpm run build:sprite && pnpm run build:react && pnpm run build:react-native && pnpm run build:preact && pnpm run build:solidjs && pnpm run build:svelte && pnpm run build:vue && pnpm run build:png && pnpm run build:pdf && pnpm run build:esp && pnpm run build:webfont",
"build:icons": "pnpm --filter @tabler/icons build",
+ "build:angular": "pnpm --filter @tabler/icons-angular build",
"build:react": "pnpm --filter @tabler/icons-react build",
"build:react-native": "pnpm --filter @tabler/icons-react-native build",
"build:preact": "pnpm --filter @tabler/icons-preact build",
diff --git a/packages/icons-angular/.gitignore b/packages/icons-angular/.gitignore
new file mode 100644
index 0000000000..0711527ef9
--- /dev/null
+++ b/packages/icons-angular/.gitignore
@@ -0,0 +1,42 @@
+# See http://help.github.com/ignore-files/ for more about ignoring files.
+
+# Compiled output
+/dist
+/tmp
+/out-tsc
+/bazel-out
+
+# Node
+/node_modules
+npm-debug.log
+yarn-error.log
+
+# IDEs and editors
+.idea/
+.project
+.classpath
+.c9/
+*.launch
+.settings/
+*.sublime-workspace
+
+# Visual Studio Code
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+.history/*
+
+# Miscellaneous
+/.angular/cache
+.sass-cache/
+/connect.lock
+/coverage
+/libpeerconnection.log
+testem.log
+/typings
+
+# System files
+.DS_Store
+Thumbs.db
diff --git a/packages/icons-angular/README.md b/packages/icons-angular/README.md
new file mode 100644
index 0000000000..cf0d266095
--- /dev/null
+++ b/packages/icons-angular/README.md
@@ -0,0 +1,212 @@
+# Tabler Icons for Angular
+
+
+
+
+
+
+ Implementation of the Tabler Icons library for Angular applications.
+
+
+
+ Browse all icons at tabler.io →
+
+
+
+
+
+
+
+## Sponsors
+
+**If you want to support our project and help us grow it, you can [become a sponsor on GitHub](https://github.com/sponsors/codecalm) or just [donate on PayPal](https://paypal.me/codecalm) :)**
+
+
+
+
+
+## Prerequisites
+
+The minimal supported version of Angular is 16.0.0.
+
+## Installation
+
+```
+yarn add @tabler/icons-angular
+```
+
+or
+
+```
+npm install @tabler/icons-angular
+```
+
+or
+
+```
+pnpm install @tabler/icons-angular
+```
+
+## How to use
+
+It's build with ESmodules so it's tree-shakable. You decide which icons to include.
+
+You can include icons by providing them with `TablerIconModule` or by importing `TablerIcon` objects in a single component.
+
+### I. Using the provider
+
+#### 1a. Import with NgModules
+
+In a module in which the icons are needed or in a main module
+```ts
+import { TablerIconComponent, TablerIconModule, IconBrandAngular, IconHome } from '@tabler/icons-angular';
+
+@NgModule({
+ imports: [TablerIconModule.pick({ IconBrandAngular, IconHome }), TablerIconComponent]
+ // other configuration
+})
+export class AppModule { }
+```
+
+#### 1b. Import without NgModules
+
+In `main.ts`
+
+```ts
+import { TablerIconModule, IconBrandAngular } from '@tabler/icons-angular';
+
+bootstrapApplication(AppComponent, {
+ providers: [
+ importProvidersFrom(TablerIconModule.pick({ IconBrandAngular }))
+ ]
+})
+```
+
+or in a route configuration
+
+```ts
+import { IconBrandAngular, TablerIconModule } from '@tabler/icons-angular';
+
+export const routes: Routes = [
+ {
+ path: 'demo',
+ component: DemoComponent,
+ providers: [importProvidersFrom(TablerIconModule.pick({ IconBrandAngular }))]
+ }
+];
+```
+
+In a standalone component which needs a TablerIconComponent
+
+```ts
+import { TablerIconComponent } from '@tabler/icons-angular';
+
+@Component({
+ imports: [TablerIconComponent],
+ standalone: true,
+ // other configuration
+})
+export class DemoComponent { }
+```
+
+#### 2. Use an icon component in a template
+
+```html
+
+
+```
+
+### II. Importing an icon object
+
+#### 1a. Import with NgModules
+
+In a module in which the icons are needed or in a main module:
+```ts
+import { TablerIconComponent, TablerIconModule } from '@tabler/icons-angular';
+
+@NgModule({
+ imports: [TablerIconModule, TablerIconComponent]
+ // other configuration
+})
+export class AppModule { }
+```
+
+#### 1b. Import in a standalone component
+
+```ts
+import { TablerIconComponent, IconBrandAngular } from '@tabler/icons-angular';
+
+@Component({
+ imports: [TablerIconComponent],
+ standalone: true,
+ // other configuration
+})
+export class AppComponent {
+ iconBrandAngular = IconBrandAngular;
+}
+```
+
+#### 2. Use an icon component in a template
+
+```html
+
+```
+
+## Props
+
+| name | type | default |
+| ------------- |----------| ------------ |
+| `size` | _number_ | 24 |~~~~
+| `color` | _string_ | currentColor |
+| `stroke` | _number_ | 2 |
+
+```html
+
+```
+
+## Global configuration
+
+If you want to change default property values globally you can overwrite `TablerIconConfig` using providers.
+You are able to set all three properties or just some of them.
+
+```ts
+{
+ provide: TablerIconConfig, useValue: {
+ size: 40,
+ stroke: 1,
+ color: 'blue'
+ }
+}
+```
+
+```ts
+{ provide: TablerIconConfig, useValue: { size: 40 } }
+```
+
+## Loading all icons
+
+There is also a possibility to import all icons at once but this can cause a **significant growth of your application build size**.
+
+```ts
+import { icons, TablerIconComponent, TablerIconModule } from '@tabler/icons-angular';
+
+@NgModule({
+ imports: [TablerIconModule.pick(icons), TablerIconComponent],
+ // other configuration
+})
+export class AppModule {}
+```
+
+## Contributing
+
+For more info on how to contribute please see the [contribution guidelines](https://github.com/tabler/tabler-icons/blob/main/CONTRIBUTING.md).
+
+Caught a mistake or want to contribute to the documentation? [Edit this page on Github](https://github.com/tabler/tabler-icons/blob/main/packages/icons-react/README.md)
+
+## License
+
+Tabler Icons is licensed under the [MIT License](https://github.com/tabler/tabler-icons/blob/master/LICENSE).
+
+## Sponsor Tabler
+
+
diff --git a/packages/icons-angular/angular.json b/packages/icons-angular/angular.json
new file mode 100644
index 0000000000..4466104df9
--- /dev/null
+++ b/packages/icons-angular/angular.json
@@ -0,0 +1,41 @@
+{
+ "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
+ "version": 1,
+ "newProjectRoot": "projects",
+ "projects": {
+ "icons-angular": {
+ "projectType": "library",
+ "root": ".",
+ "sourceRoot": "src",
+ "prefix": "lib",
+ "architect": {
+ "build": {
+ "builder": "@angular-devkit/build-angular:ng-packagr",
+ "options": {
+ "project": "ng-package.json"
+ },
+ "configurations": {
+ "production": {
+ "tsConfig": "tsconfig.lib.prod.json"
+ },
+ "development": {
+ "tsConfig": "tsconfig.lib.json"
+ }
+ },
+ "defaultConfiguration": "production"
+ },
+ "test": {
+ "builder": "@angular-devkit/build-angular:karma",
+ "options": {
+ "tsConfig": "tsconfig.spec.json",
+ "polyfills": [
+ "zone.js",
+ "zone.js/testing"
+ ],
+ "karmaConfig": "karma.conf.js"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/packages/icons-angular/build.mjs b/packages/icons-angular/build.mjs
new file mode 100644
index 0000000000..e53a398fb5
--- /dev/null
+++ b/packages/icons-angular/build.mjs
@@ -0,0 +1,36 @@
+import { buildJsIcons } from '../../.build/build-icons.mjs';
+import prettier from '@prettier/sync';
+
+const componentTemplate = ({ type, name, namePascal, children }) => {
+ const nodes = JSON.stringify(Array.isArray(children) ? children : [children]);
+
+ return prettier.format(
+ `import { TablerIcon } from '../types';
+
+ const ${namePascal}: TablerIcon = {
+ name: '${name}',
+ type: '${type}',
+ nodes: ${nodes}
+ };
+
+ export default ${namePascal};`,
+ { singleQuote: true, printWidth: 120, parser: 'typescript' });
+};
+
+const indexItemTemplate = ({
+ _,
+ namePascal
+ }) => `export { default as ${namePascal}} from './${namePascal}';`;
+
+const aliasTemplate = ({ fromPascal, toPascal }) => `export { default as Icon${fromPascal}} from './icons/Icon${toPascal}';\n`;
+
+buildJsIcons({
+ name: 'icons-angular',
+ componentTemplate,
+ indexItemTemplate,
+ aliasTemplate,
+ indexFile: 'index.ts',
+ pascalCase: true,
+ extension: 'ts',
+ pretty: false
+});
diff --git a/packages/icons-angular/karma.conf.js b/packages/icons-angular/karma.conf.js
new file mode 100644
index 0000000000..67bcfd60a4
--- /dev/null
+++ b/packages/icons-angular/karma.conf.js
@@ -0,0 +1,39 @@
+// Karma configuration file, see link for more information
+// https://karma-runner.github.io/1.0/config/configuration-file.html
+
+module.exports = function (config) {
+ config.set({
+ basePath: '',
+ frameworks: ['jasmine', '@angular-devkit/build-angular'],
+ plugins: [
+ require('karma-jasmine'),
+ require('karma-chrome-launcher'),
+ require('karma-jasmine-html-reporter'),
+ require('karma-coverage'),
+ require('@angular-devkit/build-angular/plugins/karma')
+ ],
+ client: {
+ jasmine: {
+ // you can add configuration options for Jasmine here
+ // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html
+ // for example, you can disable the random execution with `random: false`
+ // or set a specific seed with `seed: 4321`
+ },
+ clearContext: false // leave Jasmine Spec Runner output visible in browser
+ },
+ jasmineHtmlReporter: {
+ suppressAll: true // removes the duplicated traces
+ },
+ coverageReporter: {
+ dir: require('path').join(__dirname, './coverage/icons-angular'),
+ subdir: '.',
+ reporters: [
+ { type: 'html' },
+ { type: 'text-summary' }
+ ]
+ },
+ reporters: ['progress', 'kjhtml'],
+ browsers: ['Chrome'],
+ restartOnFileChange: true
+ });
+};
diff --git a/packages/icons-angular/ng-package.json b/packages/icons-angular/ng-package.json
new file mode 100644
index 0000000000..8c2073f4ab
--- /dev/null
+++ b/packages/icons-angular/ng-package.json
@@ -0,0 +1,7 @@
+{
+ "$schema": "./node_modules/ng-packagr/ng-package.schema.json",
+ "dest": "dist/icons-angular",
+ "lib": {
+ "entryFile": "src/public-api.ts"
+ }
+}
diff --git a/packages/icons-angular/package.json b/packages/icons-angular/package.json
new file mode 100644
index 0000000000..2a87d77a01
--- /dev/null
+++ b/packages/icons-angular/package.json
@@ -0,0 +1,62 @@
+{
+ "name": "@tabler/icons-angular",
+ "version": "3.7.0-alpha.1",
+ "license": "MIT",
+ "author": "BG-Software",
+ "description": "A set of free MIT-licensed high-quality SVG icons for you to use in your Angular projects.",
+ "homepage": "https://tabler.io/icons",
+ "bugs": {
+ "url": "https://github.com/tabler/tabler-icons/issues"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/codecalm"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/tabler/tabler-icons.git",
+ "directory": "packages/icons-angular"
+ },
+ "sideEffects": false,
+ "scripts": {
+ "build": "pnpm run clean && pnpm run copy:license && pnpm run build:icons && pnpm typecheck && pnpm run build:ng",
+ "build:icons": "node build.mjs",
+ "build:ng": "ng build --configuration=production",
+ "copy:license": "cp ../../LICENSE ./LICENSE",
+ "clean": "rm -rf dist && find . ! -name '.gitkeep' -path '*/src/icons/*' -exec rm -rf {} +",
+ "typecheck": "tsc",
+ "test": "ng test --no-watch --no-progress",
+ "test:watch": "ng test"
+ },
+ "main": "./dist/index.js",
+ "module": "./dist/index.mjs",
+ "types": "./dist/index.d.ts",
+ "devDependencies": {
+ "@angular-devkit/build-angular": "^17.3.3",
+ "@angular/animations": "^17.3.3",
+ "@angular/cli": "^17.2.2",
+ "@angular/common": "^17.3.3",
+ "@angular/compiler": "^17.3.3",
+ "@angular/compiler-cli": "^17.3.3",
+ "@angular/core": "^17.3.3",
+ "@angular/platform-browser": "^17.3.3",
+ "@angular/platform-browser-dynamic": "^17.3.3",
+ "@prettier/sync": "^0.5.1",
+ "@types/jasmine": "~5.1.0",
+ "jasmine-core": "~5.1.0",
+ "karma": "~6.4.0",
+ "karma-chrome-launcher": "~3.2.0",
+ "karma-coverage": "~2.2.0",
+ "karma-jasmine": "~5.1.0",
+ "karma-jasmine-html-reporter": "~2.1.0",
+ "ng-packagr": "^17.3.0",
+ "tslib": "^2.3.0",
+ "typescript": "~5.3.2",
+ "zone.js": "~0.14.3"
+ },
+ "peerDependencies": {
+ "@angular/common": "16.x - 18.x",
+ "@angular/core": "16.x - 18.x",
+ "@tabler/icons": "^3.7.0"
+ }
+}
diff --git a/packages/icons-angular/src/defaultAttributes.ts b/packages/icons-angular/src/defaultAttributes.ts
new file mode 100644
index 0000000000..666fd5a363
--- /dev/null
+++ b/packages/icons-angular/src/defaultAttributes.ts
@@ -0,0 +1,21 @@
+export default {
+ outline: {
+ xmlns: 'http://www.w3.org/2000/svg',
+ width: 24,
+ height: 24,
+ viewBox: '0 0 24 24',
+ fill: 'none',
+ stroke: 'currentColor',
+ 'stroke-width': 2,
+ 'stroke-linecap': 'round',
+ 'stroke-linejoin': 'round'
+ },
+ filled: {
+ xmlns: 'http://www.w3.org/2000/svg',
+ width: 24,
+ height: 24,
+ viewBox: '0 0 24 24',
+ fill: 'currentColor',
+ stroke: 'none'
+ }
+};
diff --git a/packages/icons-angular/src/icons/.gitkeep b/packages/icons-angular/src/icons/.gitkeep
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/packages/icons-angular/src/lib/tabler-icon-filled.component.spec.ts b/packages/icons-angular/src/lib/tabler-icon-filled.component.spec.ts
new file mode 100644
index 0000000000..c3e8ec67c8
--- /dev/null
+++ b/packages/icons-angular/src/lib/tabler-icon-filled.component.spec.ts
@@ -0,0 +1,77 @@
+import { Component } from '@angular/core';
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+import defaultAttributes from '../defaultAttributes';
+import { TablerIcon, TablerIcons } from '../types';
+import { TablerIconComponent } from './tabler-icon.component';
+import { TablerIconModule } from './tabler-icon.module';
+
+describe('TablerIconComponent', () => {
+ let hostComponent: TestHostComponent;
+ let fixture: ComponentFixture;
+ const getSvgAttr = (attr: string) => fixture.nativeElement.querySelector('svg').getAttribute(attr);
+ let icon: TablerIcon = { name: 'test', type: 'filled', nodes: [['path', { d: 'M8 7h-4', key: 'svg-0' }]] };
+ let icons: TablerIcons = { IconTest: icon };
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ declarations: [TestHostComponent],
+ imports: [TablerIconComponent, TablerIconModule.pick(icons)]
+ }).compileComponents();
+
+ fixture = TestBed.createComponent(TestHostComponent);
+ hostComponent = fixture.componentInstance;
+ })
+
+ it('should create', () => {
+ fixture.detectChanges();
+ expect(hostComponent).toBeTruthy();
+ });
+
+ it('should have all default values if not provided', () => {
+ fixture.detectChanges();
+ expect(getSvgAttr('width')).toBe(defaultAttributes.filled.width.toString(10));
+ expect(getSvgAttr('fill')).toBe(defaultAttributes.filled.fill);
+ expect(getSvgAttr('stroke')).toBe(defaultAttributes.filled.stroke);
+ expect(getSvgAttr('stroke-width')).toBe(null);
+ expect(getSvgAttr('stroke-linecap')).toBe(null);
+ expect(getSvgAttr('stroke-linejoin')).toBe(null);
+ });
+
+ it('should set size', () => {
+ const size = 40;
+ hostComponent.size = size;
+ fixture.detectChanges();
+ expect(getSvgAttr('height')).toBe(size.toString(10));
+ expect(getSvgAttr('width')).toBe(size.toString(10));
+ })
+
+ it('should set color', () => {
+ const color = '#abcabc';
+ hostComponent.color = color;
+ fixture.detectChanges();
+ expect(getSvgAttr('fill')).toBe(color);
+ })
+
+ it('should add all classes', () => {
+ fixture.detectChanges();
+ expect(getSvgAttr('class')).toBe('tabler-icon tabler-icon-test test-class');
+ })
+
+ @Component({
+ selector: 'tabler-test',
+ template: `
+
+ `,
+ })
+ class TestHostComponent {
+ size?: number;
+ color?: string;
+ class?: string;
+ }
+})
diff --git a/packages/icons-angular/src/lib/tabler-icon-outline.component.spec.ts b/packages/icons-angular/src/lib/tabler-icon-outline.component.spec.ts
new file mode 100644
index 0000000000..4a1493db8f
--- /dev/null
+++ b/packages/icons-angular/src/lib/tabler-icon-outline.component.spec.ts
@@ -0,0 +1,85 @@
+import { Component } from '@angular/core';
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+import defaultAttributes from '../defaultAttributes';
+import { TablerIcon } from '../types';
+import { TablerIconComponent } from './tabler-icon.component';
+
+describe('TablerIconComponent', () => {
+ let hostComponent: TestHostComponent;
+ let fixture: ComponentFixture;
+ const getSvgAttr = (attr: string) => fixture.nativeElement.querySelector('svg').getAttribute(attr);
+ let icon: TablerIcon = { name: 'test', type: 'outline', nodes: [['path', { d: 'M8 7h-4', key: 'svg-0' }]] };
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ declarations: [TestHostComponent],
+ imports: [TablerIconComponent]
+ }).compileComponents();
+
+ fixture = TestBed.createComponent(TestHostComponent);
+ hostComponent = fixture.componentInstance;
+ })
+
+ it('should create', () => {
+ fixture.detectChanges();
+ expect(hostComponent).toBeTruthy();
+ });
+
+ it('should have all default values if not provided', () => {
+ fixture.detectChanges();
+ expect(getSvgAttr('width')).toBe(defaultAttributes.outline.width.toString(10));
+ expect(getSvgAttr('fill')).toBe(defaultAttributes.outline.fill);
+ expect(getSvgAttr('stroke')).toBe(defaultAttributes.outline.stroke);
+ expect(getSvgAttr('stroke-width')).toBe(defaultAttributes.outline['stroke-width'].toString(10));
+ expect(getSvgAttr('stroke-linecap')).toBe(defaultAttributes.outline['stroke-linecap']);
+ expect(getSvgAttr('stroke-linejoin')).toBe(defaultAttributes.outline['stroke-linejoin']);
+ });
+
+ it('should set size', () => {
+ const size = 32;
+ hostComponent.size = size;
+ fixture.detectChanges();
+ expect(getSvgAttr('height')).toBe(size.toString(10));
+ expect(getSvgAttr('width')).toBe(size.toString(10));
+ })
+
+ it('should set color', () => {
+ const color = '#abcabc';
+ hostComponent.color = color;
+ fixture.detectChanges();
+ expect(getSvgAttr('stroke')).toBe(color);
+ })
+
+ it('should set stroke width', () => {
+ const stroke = 1.75;
+ hostComponent.stroke = stroke;
+ fixture.detectChanges();
+ expect(getSvgAttr('stroke-width')).toBe(stroke.toString(10));
+ })
+
+ it('should add all classes', () => {
+ fixture.detectChanges();
+ expect(getSvgAttr('class')).toBe('tabler-icon tabler-icon-test test-class');
+ })
+
+ @Component({
+ selector: 'tabler-test',
+ template: `
+
+ `,
+ })
+ class TestHostComponent {
+ size?: number;
+ color?: string;
+ stroke?: number;
+ class?: string;
+ iconTest = icon;
+ }
+})
diff --git a/packages/icons-angular/src/lib/tabler-icon.component.ts b/packages/icons-angular/src/lib/tabler-icon.component.ts
new file mode 100644
index 0000000000..d9bbb4d3cf
--- /dev/null
+++ b/packages/icons-angular/src/lib/tabler-icon.component.ts
@@ -0,0 +1,113 @@
+import { Component, ElementRef, HostBinding, inject, Inject, Input, OnChanges, Renderer2 } from '@angular/core';
+import defaultAttributes from '../defaultAttributes';
+import { TablerIcon, TablerIconNode } from '../types';
+import { TablerIconConfig } from './tabler-icon.config';
+import { ITablerIconProvider, TABLER_ICONS } from './tabler-icon.provider';
+
+type SvgAttributes = { [key: string]: string | number | undefined };
+
+@Component({
+ selector: 'tabler-icon',
+ standalone: true,
+ template: ''
+})
+export class TablerIconComponent implements OnChanges {
+ @Input({ required: true }) icon!: TablerIcon | string;
+ @Input() color?: string;
+ @Input() stroke?: number;
+ @Input() class?: string;
+ @Input()
+ @HostBinding('style.height.px')
+ @HostBinding('style.width.px')
+ size?: number;
+ config: TablerIconConfig;
+
+ constructor(
+ @Inject(Renderer2) private readonly renderer: Renderer2,
+ @Inject(TABLER_ICONS) private readonly iconProviders: ITablerIconProvider[],
+ @Inject(ElementRef) private readonly elementRef: ElementRef
+ ) {
+ this.config = {
+ size: defaultAttributes.outline.width,
+ color: defaultAttributes.outline.stroke,
+ stroke: defaultAttributes.outline['stroke-width'],
+ ...inject(TablerIconConfig)
+ };
+ }
+
+ ngOnChanges() {
+ this.size ??= this.config.size;
+ if (typeof this.icon === 'string') {
+ const icon = this.getIconFromProviders(this.toPascalCase(this.icon));
+ if (icon) {
+ this.replaceElement(icon);
+ } else {
+ throw new Error(`The ${this.icon} icon is not provided by any of the icon providers.`);
+ }
+ } else if (this.icon != null && Array.isArray(this.icon.nodes)) {
+ this.replaceElement(this.icon);
+ } else {
+ throw new Error(`Icon has to be provided ! ! !.`);
+ }
+ }
+
+ private replaceElement(icon: TablerIcon): void {
+ const typeAttributes = icon.type === 'outline'
+ ? {
+ stroke: this.color ?? this.config.color,
+ 'stroke-width': this.stroke ?? this.config.stroke
+ }
+ : {
+ fill: this.color ?? this.config.color
+ };
+
+ const attributes = {
+ ...defaultAttributes[icon.type],
+ ...typeAttributes,
+ width: this.size,
+ height: this.size
+ };
+
+ const iconElement = this.createElement(['svg', attributes, icon.nodes]);
+ iconElement.classList.add('tabler-icon', `tabler-icon-${icon.name}`, this.class?.split(/ /).map(x => x.trim()));
+
+ const childElements = this.elementRef.nativeElement.childNodes;
+ for (const childElement of childElements) {
+ this.renderer.removeChild(this.elementRef.nativeElement, childElement);
+ }
+
+ this.renderer.appendChild(this.elementRef.nativeElement, iconElement);
+ }
+
+ private createElement([tag, attributes, nodes]: readonly [string, SvgAttributes, TablerIconNode[]?]) {
+ const element = this.renderer.createElement(tag, 'http://www.w3.org/2000/svg');
+
+ Object.keys(attributes).forEach(key => {
+ if (attributes[key]) {
+ const value = typeof attributes[key] === 'string' ? attributes[key] as string : attributes[key]!.toString();
+ this.renderer.setAttribute(element, key, value);
+ }
+ });
+
+ if (nodes && nodes.length > 0) {
+ nodes.forEach((node: TablerIconNode) => {
+ const childElement = this.createElement(node);
+ this.renderer.appendChild(element, childElement);
+ });
+ }
+
+ return element;
+ }
+
+ private getIconFromProviders(iconName: string): TablerIcon | null {
+ for (const provider of Array.isArray(this.iconProviders) ? this.iconProviders : [this.iconProviders]) {
+ const icon = provider.getIcon(iconName);
+ if (icon) return icon;
+ }
+ return null;
+ }
+
+ private toPascalCase = (value: string): string => value.split('-')
+ .map(v => v.charAt(0).toUpperCase() + v.slice(1).toLowerCase())
+ .join('');
+}
diff --git a/packages/icons-angular/src/lib/tabler-icon.config.ts b/packages/icons-angular/src/lib/tabler-icon.config.ts
new file mode 100644
index 0000000000..097c13d134
--- /dev/null
+++ b/packages/icons-angular/src/lib/tabler-icon.config.ts
@@ -0,0 +1,8 @@
+import { Injectable } from '@angular/core';
+
+@Injectable({ providedIn: 'root' })
+export class TablerIconConfig {
+ size?: number;
+ color?: string;
+ stroke?: number;
+}
diff --git a/packages/icons-angular/src/lib/tabler-icon.module.ts b/packages/icons-angular/src/lib/tabler-icon.module.ts
new file mode 100644
index 0000000000..9180a1be08
--- /dev/null
+++ b/packages/icons-angular/src/lib/tabler-icon.module.ts
@@ -0,0 +1,15 @@
+import { ModuleWithProviders, NgModule } from '@angular/core';
+import { TablerIcons } from '../types';
+import { TABLER_ICONS, TablerIconProvider } from './tabler-icon.provider';
+
+@NgModule()
+export class TablerIconModule {
+ static pick(icons: TablerIcons): ModuleWithProviders {
+ return {
+ ngModule: TablerIconModule,
+ providers: [
+ { provide: TABLER_ICONS, multi: true, useValue: new TablerIconProvider(icons) }
+ ]
+ }
+ }
+}
diff --git a/packages/icons-angular/src/lib/tabler-icon.provider.ts b/packages/icons-angular/src/lib/tabler-icon.provider.ts
new file mode 100644
index 0000000000..99875c7bfc
--- /dev/null
+++ b/packages/icons-angular/src/lib/tabler-icon.provider.ts
@@ -0,0 +1,21 @@
+import { InjectionToken } from '@angular/core';
+import { TablerIcon, TablerIcons } from '../types';
+
+export interface ITablerIconProvider {
+ getIcon(name: string): TablerIcon | null;
+}
+
+export class TablerIconProvider implements ITablerIconProvider {
+ constructor(private readonly icons: TablerIcons) {}
+
+ getIcon = (name: string): TablerIcon | null => {
+ name = name.startsWith('Icon') ? name : `Icon${name}`;
+ return this.iconExists(name) ? this.icons[name] : null;
+ };
+
+ private iconExists = (name: string): boolean => typeof this.icons === 'object' && name in this.icons;
+}
+
+export const TABLER_ICONS = new InjectionToken('TablerIcons', {
+ factory: () => new TablerIconProvider({})
+});
diff --git a/packages/icons-angular/src/public-api.ts b/packages/icons-angular/src/public-api.ts
new file mode 100644
index 0000000000..bcf59393bd
--- /dev/null
+++ b/packages/icons-angular/src/public-api.ts
@@ -0,0 +1,9 @@
+import * as icons from './icons';
+
+export * from './lib/tabler-icon.component';
+export * from './lib/tabler-icon.module';
+export * from './lib/tabler-icon.config';
+export * from './lib/tabler-icon.provider';
+export * from './icons';
+export * from './aliases';
+export { icons };
diff --git a/packages/icons-angular/src/types.ts b/packages/icons-angular/src/types.ts
new file mode 100644
index 0000000000..3b368ef267
--- /dev/null
+++ b/packages/icons-angular/src/types.ts
@@ -0,0 +1,3 @@
+export type TablerIconNode = [elementName: string, attrs: Record];
+export type TablerIcon = { name: string, type: 'outline' | 'filled', nodes: TablerIconNode[] };
+export type TablerIcons = { [key: string]: TablerIcon };
diff --git a/packages/icons-angular/tsconfig.json b/packages/icons-angular/tsconfig.json
new file mode 100644
index 0000000000..5ef86f940a
--- /dev/null
+++ b/packages/icons-angular/tsconfig.json
@@ -0,0 +1,41 @@
+/* To learn more about this file see: https://angular.io/config/tsconfig. */
+{
+ "compileOnSave": false,
+ "compilerOptions": {
+ "outDir": "./dist",
+ "declaration": false,
+ "forceConsistentCasingInFileNames": true,
+ "strict": true,
+ "noImplicitOverride": true,
+ "noPropertyAccessFromIndexSignature": true,
+ "noImplicitReturns": true,
+ "noFallthroughCasesInSwitch": true,
+ "skipLibCheck": true,
+ "esModuleInterop": true,
+ "sourceMap": true,
+ "experimentalDecorators": true,
+ "moduleResolution": "node",
+ "importHelpers": true,
+ "target": "ES2022",
+ "module": "ES2022",
+ "resolveJsonModule": true,
+ "allowSyntheticDefaultImports": true,
+ "paths": {
+ "icons-angular": [
+ "./dist/icons-angular"
+ ]
+ },
+ "useDefineForClassFields": false,
+ "lib": [
+ "ES2022",
+ "dom"
+ ]
+ },
+ "angularCompilerOptions": {
+ "enableI18nLegacyMessageIdFormat": false,
+ "strictInjectionParameters": true,
+ "strictInputAccessModifiers": true,
+ "strictTemplates": true
+ },
+ "exclude": ["**/node_modules", "dist"]
+}
diff --git a/packages/icons-angular/tsconfig.lib.json b/packages/icons-angular/tsconfig.lib.json
new file mode 100644
index 0000000000..4a502f7f71
--- /dev/null
+++ b/packages/icons-angular/tsconfig.lib.json
@@ -0,0 +1,14 @@
+/* To learn more about this file see: https://angular.io/config/tsconfig. */
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "outDir": "./out-tsc/lib",
+ "declaration": true,
+ "declarationMap": true,
+ "inlineSources": true,
+ "types": []
+ },
+ "exclude": [
+ "**/*.spec.ts"
+ ]
+}
diff --git a/packages/icons-angular/tsconfig.lib.prod.json b/packages/icons-angular/tsconfig.lib.prod.json
new file mode 100644
index 0000000000..06de549e10
--- /dev/null
+++ b/packages/icons-angular/tsconfig.lib.prod.json
@@ -0,0 +1,10 @@
+/* To learn more about this file see: https://angular.io/config/tsconfig. */
+{
+ "extends": "./tsconfig.lib.json",
+ "compilerOptions": {
+ "declarationMap": false
+ },
+ "angularCompilerOptions": {
+ "compilationMode": "partial"
+ }
+}
diff --git a/packages/icons-angular/tsconfig.spec.json b/packages/icons-angular/tsconfig.spec.json
new file mode 100644
index 0000000000..9e4b20d569
--- /dev/null
+++ b/packages/icons-angular/tsconfig.spec.json
@@ -0,0 +1,12 @@
+/* To learn more about this file see: https://angular.io/config/tsconfig. */
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "outDir": "./out-tsc/spec",
+ "types": ["jasmine"]
+ },
+ "include": [
+ "**/*.spec.ts",
+ "**/*.d.ts"
+ ]
+}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index b5e20eedfe..c3fa89bb72 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -120,6 +120,76 @@ importers:
packages/icons: {}
+ packages/icons-angular:
+ dependencies:
+ '@tabler/icons':
+ specifier: ^3.7.0
+ version: link:../icons
+ devDependencies:
+ '@angular-devkit/build-angular':
+ specifier: ^17.3.3
+ version: 17.3.4(@angular/compiler-cli@17.3.4)(karma@6.4.3)(ng-packagr@17.3.0)(node-sass@9.0.0)(typescript@5.3.3)
+ '@angular/animations':
+ specifier: ^17.3.3
+ version: 17.3.4(@angular/core@17.3.4)
+ '@angular/cli':
+ specifier: ^17.2.2
+ version: 17.3.4
+ '@angular/common':
+ specifier: ^17.3.3
+ version: 17.3.4(@angular/core@17.3.4)(rxjs@7.8.1)
+ '@angular/compiler':
+ specifier: ^17.3.3
+ version: 17.3.4(@angular/core@17.3.4)
+ '@angular/compiler-cli':
+ specifier: ^17.3.3
+ version: 17.3.4(@angular/compiler@17.3.4)(typescript@5.3.3)
+ '@angular/core':
+ specifier: ^17.3.3
+ version: 17.3.4(rxjs@7.8.1)(zone.js@0.14.4)
+ '@angular/platform-browser':
+ specifier: ^17.3.3
+ version: 17.3.4(@angular/animations@17.3.4)(@angular/common@17.3.4)(@angular/core@17.3.4)
+ '@angular/platform-browser-dynamic':
+ specifier: ^17.3.3
+ version: 17.3.4(@angular/common@17.3.4)(@angular/compiler@17.3.4)(@angular/core@17.3.4)(@angular/platform-browser@17.3.4)
+ '@prettier/sync':
+ specifier: ^0.5.1
+ version: 0.5.1(prettier@3.2.5)
+ '@types/jasmine':
+ specifier: ~5.1.0
+ version: 5.1.4
+ jasmine-core:
+ specifier: ~5.1.0
+ version: 5.1.2
+ karma:
+ specifier: ~6.4.0
+ version: 6.4.3
+ karma-chrome-launcher:
+ specifier: ~3.2.0
+ version: 3.2.0
+ karma-coverage:
+ specifier: ~2.2.0
+ version: 2.2.1
+ karma-jasmine:
+ specifier: ~5.1.0
+ version: 5.1.0(karma@6.4.3)
+ karma-jasmine-html-reporter:
+ specifier: ~2.1.0
+ version: 2.1.0(jasmine-core@5.1.2)(karma-jasmine@5.1.0)(karma@6.4.3)
+ ng-packagr:
+ specifier: ^17.3.0
+ version: 17.3.0(@angular/compiler-cli@17.3.4)(tslib@2.6.2)(typescript@5.3.3)
+ tslib:
+ specifier: ^2.3.0
+ version: 2.6.2
+ typescript:
+ specifier: ~5.3.2
+ version: 5.3.3
+ zone.js:
+ specifier: ~0.14.3
+ version: 0.14.4
+
packages/icons-eps:
dependencies:
'@tabler/icons':
@@ -146,7 +216,7 @@ importers:
devDependencies:
'@preact/preset-vite':
specifier: ^2.8.1
- version: 2.8.1(@babel/core@7.24.0)(preact@10.19.6)(vite@5.1.4)
+ version: 2.8.1(@babel/core@7.24.0)(preact@10.19.6)(vite@5.1.7)
'@testing-library/preact':
specifier: ^3.2.3
version: 3.2.3(preact@10.19.6)
@@ -168,7 +238,7 @@ importers:
version: 18.2.60
'@vitejs/plugin-react':
specifier: ^4.2.1
- version: 4.2.1(vite@5.1.4)
+ version: 4.2.1(vite@5.1.7)
react:
specifier: 18.2.0
version: 18.2.0
@@ -193,7 +263,7 @@ importers:
version: 18.2.60
'@vitejs/plugin-react':
specifier: ^4.2.1
- version: 4.2.1(vite@5.1.4)
+ version: 4.2.1(vite@5.1.7)
react:
specifier: 18.2.0
version: 18.2.0
@@ -227,7 +297,7 @@ importers:
version: 1.8.15
vite-plugin-solid:
specifier: ^2.10.1
- version: 2.10.1(@testing-library/jest-dom@6.4.2)(solid-js@1.8.15)(vite@5.1.4)
+ version: 2.10.1(@testing-library/jest-dom@6.4.2)(solid-js@1.8.15)(vite@5.1.7)
packages/icons-sprite:
dependencies:
@@ -246,7 +316,7 @@ importers:
version: 2.2.7(svelte@4.2.12)(typescript@5.3.3)
'@sveltejs/vite-plugin-svelte':
specifier: ^3.0.2
- version: 3.0.2(svelte@4.2.12)(vite@5.1.4)
+ version: 3.0.2(svelte@4.2.12)(vite@5.1.7)
'@testing-library/svelte':
specifier: ^4.2.1
version: 4.2.1(svelte@4.2.12)
@@ -274,7 +344,7 @@ importers:
version: 8.0.2(@vue/compiler-sfc@3.4.21)(vue@3.4.21)
'@vitejs/plugin-vue':
specifier: ^5.0.4
- version: 5.0.4(vite@5.1.4)(vue@3.4.21)
+ version: 5.0.4(vite@5.1.7)(vue@3.4.21)
'@vue/compiler-sfc':
specifier: ^3.4.20
version: 3.4.21
@@ -298,6 +368,58 @@ importers:
specifier: ^11.2.26
version: 11.2.26
+ test/test-angular:
+ dependencies:
+ '@angular/animations':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/core@17.3.11)
+ '@angular/common':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/core@17.3.11)(rxjs@7.8.1)
+ '@angular/compiler':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/core@17.3.11)
+ '@angular/core':
+ specifier: ^17.3.11
+ version: 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ '@angular/forms':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/common@17.3.11)(@angular/core@17.3.11)(@angular/platform-browser@17.3.11)(rxjs@7.8.1)
+ '@angular/platform-browser':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/animations@17.3.11)(@angular/common@17.3.11)(@angular/core@17.3.11)
+ '@angular/platform-browser-dynamic':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/common@17.3.11)(@angular/compiler@17.3.11)(@angular/core@17.3.11)(@angular/platform-browser@17.3.11)
+ '@angular/router':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/common@17.3.11)(@angular/core@17.3.11)(@angular/platform-browser@17.3.11)(rxjs@7.8.1)
+ '@tabler/icons-angular':
+ specifier: ^3.7.0-alpha.1
+ version: link:../../packages/icons-angular
+ rxjs:
+ specifier: ~7.8.0
+ version: 7.8.1
+ tslib:
+ specifier: ^2.3.0
+ version: 2.6.2
+ zone.js:
+ specifier: ~0.14.3
+ version: 0.14.4
+ devDependencies:
+ '@angular-devkit/build-angular':
+ specifier: ^17.3.8
+ version: 17.3.8(@angular/compiler-cli@17.3.11)(node-sass@9.0.0)(typescript@5.3.3)
+ '@angular/cli':
+ specifier: ^17.3.8
+ version: 17.3.8
+ '@angular/compiler-cli':
+ specifier: ^17.3.11
+ version: 17.3.11(@angular/compiler@17.3.11)(typescript@5.3.3)
+ typescript:
+ specifier: ~5.3.2
+ version: 5.3.3
+
test/test-preact:
dependencies:
'@tabler/icons-preact':
@@ -309,7 +431,7 @@ importers:
devDependencies:
'@preact/preset-vite':
specifier: ^2.8.1
- version: 2.8.1(@babel/core@7.24.0)(preact@10.19.6)(vite@5.1.4)
+ version: 2.8.1(@babel/core@7.24.0)(preact@10.19.6)(vite@5.1.7)
test/test-react:
dependencies:
@@ -331,7 +453,7 @@ importers:
version: 18.2.19
'@vitejs/plugin-react':
specifier: ^4.2.1
- version: 4.2.1(vite@5.1.4)
+ version: 4.2.1(vite@5.1.7)
test/test-svelte:
dependencies:
@@ -341,7 +463,7 @@ importers:
devDependencies:
'@sveltejs/vite-plugin-svelte':
specifier: ^3.0.2
- version: 3.0.2(svelte@4.2.12)(vite@5.1.4)
+ version: 3.0.2(svelte@4.2.12)(vite@5.1.7)
'@tsconfig/svelte':
specifier: ^5.0.2
version: 5.0.2
@@ -366,7 +488,7 @@ importers:
devDependencies:
'@vitejs/plugin-vue':
specifier: ^5.0.4
- version: 5.0.4(vite@5.1.4)(vue@3.4.21)
+ version: 5.0.4(vite@5.1.7)(vue@3.4.21)
vue-tsc:
specifier: ^1.8.27
version: 1.8.27(typescript@5.3.3)
@@ -472,6 +594,674 @@ packages:
'@jridgewell/trace-mapping': 0.3.23
dev: true
+ /@ampproject/remapping@2.3.0:
+ resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.5
+ '@jridgewell/trace-mapping': 0.3.25
+ dev: true
+
+ /@angular-devkit/architect@0.1703.4:
+ resolution: {integrity: sha512-o+XCMOiMh8tmQGEwcxjAj2/lmUVT7CGSUAM31ydDomVOFFw4CnBvsoyKqQNRC+/AUXvovb2dCegQl/lTAnrwOg==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ dependencies:
+ '@angular-devkit/core': 17.3.4
+ rxjs: 7.8.1
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
+ /@angular-devkit/architect@0.1703.8:
+ resolution: {integrity: sha512-lKxwG4/QABXZvJpqeSIn/kAwnY6MM9HdHZUV+o5o3UiTi+vO8rZApG4CCaITH3Bxebm7Nam7Xbk8RuukC5rq6g==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ dependencies:
+ '@angular-devkit/core': 17.3.8
+ rxjs: 7.8.1
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
+ /@angular-devkit/build-angular@17.3.4(@angular/compiler-cli@17.3.4)(karma@6.4.3)(ng-packagr@17.3.0)(node-sass@9.0.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-8KieoPrsJcFPoza0gLQ6yebtIb3WdH3j/V1TnAihk4tVpgtdch8tOBE3FP1TnSW3RF+iCsA0I5NO9/4YbEsWtw==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ '@angular/compiler-cli': ^17.0.0
+ '@angular/localize': ^17.0.0
+ '@angular/platform-server': ^17.0.0
+ '@angular/service-worker': ^17.0.0
+ '@web/test-runner': ^0.18.0
+ browser-sync: ^3.0.2
+ jest: ^29.5.0
+ jest-environment-jsdom: ^29.5.0
+ karma: ^6.3.0
+ ng-packagr: ^17.0.0
+ protractor: ^7.0.0
+ tailwindcss: ^2.0.0 || ^3.0.0
+ typescript: '>=5.2 <5.5'
+ peerDependenciesMeta:
+ '@angular/localize':
+ optional: true
+ '@angular/platform-server':
+ optional: true
+ '@angular/service-worker':
+ optional: true
+ '@web/test-runner':
+ optional: true
+ browser-sync:
+ optional: true
+ jest:
+ optional: true
+ jest-environment-jsdom:
+ optional: true
+ karma:
+ optional: true
+ ng-packagr:
+ optional: true
+ protractor:
+ optional: true
+ tailwindcss:
+ optional: true
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@angular-devkit/architect': 0.1703.4
+ '@angular-devkit/build-webpack': 0.1703.4(webpack-dev-server@4.15.1)(webpack@5.90.3)
+ '@angular-devkit/core': 17.3.4
+ '@angular/compiler-cli': 17.3.4(@angular/compiler@17.3.4)(typescript@5.3.3)
+ '@babel/core': 7.24.0
+ '@babel/generator': 7.23.6
+ '@babel/helper-annotate-as-pure': 7.22.5
+ '@babel/helper-split-export-declaration': 7.22.6
+ '@babel/plugin-transform-async-generator-functions': 7.23.9(@babel/core@7.24.0)
+ '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.24.0)
+ '@babel/plugin-transform-runtime': 7.24.0(@babel/core@7.24.0)
+ '@babel/preset-env': 7.24.0(@babel/core@7.24.0)
+ '@babel/runtime': 7.24.0
+ '@discoveryjs/json-ext': 0.5.7
+ '@ngtools/webpack': 17.3.4(@angular/compiler-cli@17.3.4)(typescript@5.3.3)(webpack@5.90.3)
+ '@vitejs/plugin-basic-ssl': 1.1.0(vite@5.1.7)
+ ansi-colors: 4.1.3
+ autoprefixer: 10.4.18(postcss@8.4.35)
+ babel-loader: 9.1.3(@babel/core@7.24.0)(webpack@5.90.3)
+ babel-plugin-istanbul: 6.1.1
+ browserslist: 4.23.0
+ copy-webpack-plugin: 11.0.0(webpack@5.90.3)
+ critters: 0.0.22
+ css-loader: 6.10.0(webpack@5.90.3)
+ esbuild-wasm: 0.20.1
+ fast-glob: 3.3.2
+ http-proxy-middleware: 2.0.6(@types/express@4.17.21)
+ https-proxy-agent: 7.0.4
+ inquirer: 9.2.15
+ jsonc-parser: 3.2.1
+ karma: 6.4.3
+ karma-source-map-support: 1.4.0
+ less: 4.2.0
+ less-loader: 11.1.0(less@4.2.0)(webpack@5.90.3)
+ license-webpack-plugin: 4.0.2(webpack@5.90.3)
+ loader-utils: 3.2.1
+ magic-string: 0.30.8
+ mini-css-extract-plugin: 2.8.1(webpack@5.90.3)
+ mrmime: 2.0.0
+ ng-packagr: 17.3.0(@angular/compiler-cli@17.3.4)(tslib@2.6.2)(typescript@5.3.3)
+ open: 8.4.2
+ ora: 5.4.1
+ parse5-html-rewriting-stream: 7.0.0
+ picomatch: 4.0.1
+ piscina: 4.4.0
+ postcss: 8.4.35
+ postcss-loader: 8.1.1(postcss@8.4.35)(typescript@5.3.3)(webpack@5.90.3)
+ resolve-url-loader: 5.0.0
+ rxjs: 7.8.1
+ sass: 1.71.1
+ sass-loader: 14.1.1(node-sass@9.0.0)(sass@1.71.1)(webpack@5.90.3)
+ semver: 7.6.0
+ source-map-loader: 5.0.0(webpack@5.90.3)
+ source-map-support: 0.5.21
+ terser: 5.29.1
+ tree-kill: 1.2.2
+ tslib: 2.6.2
+ typescript: 5.3.3
+ undici: 6.11.1
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
+ watchpack: 2.4.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ webpack-dev-middleware: 6.1.2(webpack@5.90.3)
+ webpack-dev-server: 4.15.1(webpack@5.90.3)
+ webpack-merge: 5.10.0
+ webpack-subresource-integrity: 5.1.0(webpack@5.90.3)
+ optionalDependencies:
+ esbuild: 0.20.1
+ transitivePeerDependencies:
+ - '@rspack/core'
+ - '@swc/core'
+ - '@types/express'
+ - '@types/node'
+ - bufferutil
+ - chokidar
+ - debug
+ - html-webpack-plugin
+ - lightningcss
+ - node-sass
+ - sass-embedded
+ - stylus
+ - sugarss
+ - supports-color
+ - uglify-js
+ - utf-8-validate
+ - webpack-cli
+ dev: true
+
+ /@angular-devkit/build-angular@17.3.8(@angular/compiler-cli@17.3.11)(node-sass@9.0.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-ixsdXggWaFRP7Jvxd0AMukImnePuGflT9Yy7NJ9/y0cL/k//S/3RnkQv5i411KzN+7D4RIbNkRGGTYeqH24zlg==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ '@angular/compiler-cli': ^17.0.0
+ '@angular/localize': ^17.0.0
+ '@angular/platform-server': ^17.0.0
+ '@angular/service-worker': ^17.0.0
+ '@web/test-runner': ^0.18.0
+ browser-sync: ^3.0.2
+ jest: ^29.5.0
+ jest-environment-jsdom: ^29.5.0
+ karma: ^6.3.0
+ ng-packagr: ^17.0.0
+ protractor: ^7.0.0
+ tailwindcss: ^2.0.0 || ^3.0.0
+ typescript: '>=5.2 <5.5'
+ peerDependenciesMeta:
+ '@angular/localize':
+ optional: true
+ '@angular/platform-server':
+ optional: true
+ '@angular/service-worker':
+ optional: true
+ '@web/test-runner':
+ optional: true
+ browser-sync:
+ optional: true
+ jest:
+ optional: true
+ jest-environment-jsdom:
+ optional: true
+ karma:
+ optional: true
+ ng-packagr:
+ optional: true
+ protractor:
+ optional: true
+ tailwindcss:
+ optional: true
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@angular-devkit/architect': 0.1703.8
+ '@angular-devkit/build-webpack': 0.1703.8(webpack-dev-server@4.15.1)(webpack@5.90.3)
+ '@angular-devkit/core': 17.3.8
+ '@angular/compiler-cli': 17.3.11(@angular/compiler@17.3.11)(typescript@5.3.3)
+ '@babel/core': 7.24.0
+ '@babel/generator': 7.23.6
+ '@babel/helper-annotate-as-pure': 7.22.5
+ '@babel/helper-split-export-declaration': 7.22.6
+ '@babel/plugin-transform-async-generator-functions': 7.23.9(@babel/core@7.24.0)
+ '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.24.0)
+ '@babel/plugin-transform-runtime': 7.24.0(@babel/core@7.24.0)
+ '@babel/preset-env': 7.24.0(@babel/core@7.24.0)
+ '@babel/runtime': 7.24.0
+ '@discoveryjs/json-ext': 0.5.7
+ '@ngtools/webpack': 17.3.8(@angular/compiler-cli@17.3.11)(typescript@5.3.3)(webpack@5.90.3)
+ '@vitejs/plugin-basic-ssl': 1.1.0(vite@5.1.7)
+ ansi-colors: 4.1.3
+ autoprefixer: 10.4.18(postcss@8.4.35)
+ babel-loader: 9.1.3(@babel/core@7.24.0)(webpack@5.90.3)
+ babel-plugin-istanbul: 6.1.1
+ browserslist: 4.23.0
+ copy-webpack-plugin: 11.0.0(webpack@5.90.3)
+ critters: 0.0.22
+ css-loader: 6.10.0(webpack@5.90.3)
+ esbuild-wasm: 0.20.1
+ fast-glob: 3.3.2
+ http-proxy-middleware: 2.0.6(@types/express@4.17.21)
+ https-proxy-agent: 7.0.4
+ inquirer: 9.2.15
+ jsonc-parser: 3.2.1
+ karma-source-map-support: 1.4.0
+ less: 4.2.0
+ less-loader: 11.1.0(less@4.2.0)(webpack@5.90.3)
+ license-webpack-plugin: 4.0.2(webpack@5.90.3)
+ loader-utils: 3.2.1
+ magic-string: 0.30.8
+ mini-css-extract-plugin: 2.8.1(webpack@5.90.3)
+ mrmime: 2.0.0
+ open: 8.4.2
+ ora: 5.4.1
+ parse5-html-rewriting-stream: 7.0.0
+ picomatch: 4.0.1
+ piscina: 4.4.0
+ postcss: 8.4.35
+ postcss-loader: 8.1.1(postcss@8.4.35)(typescript@5.3.3)(webpack@5.90.3)
+ resolve-url-loader: 5.0.0
+ rxjs: 7.8.1
+ sass: 1.71.1
+ sass-loader: 14.1.1(node-sass@9.0.0)(sass@1.71.1)(webpack@5.90.3)
+ semver: 7.6.0
+ source-map-loader: 5.0.0(webpack@5.90.3)
+ source-map-support: 0.5.21
+ terser: 5.29.1
+ tree-kill: 1.2.2
+ tslib: 2.6.2
+ typescript: 5.3.3
+ undici: 6.11.1
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
+ watchpack: 2.4.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ webpack-dev-middleware: 6.1.2(webpack@5.90.3)
+ webpack-dev-server: 4.15.1(webpack@5.90.3)
+ webpack-merge: 5.10.0
+ webpack-subresource-integrity: 5.1.0(webpack@5.90.3)
+ optionalDependencies:
+ esbuild: 0.20.1
+ transitivePeerDependencies:
+ - '@rspack/core'
+ - '@swc/core'
+ - '@types/express'
+ - '@types/node'
+ - bufferutil
+ - chokidar
+ - debug
+ - html-webpack-plugin
+ - lightningcss
+ - node-sass
+ - sass-embedded
+ - stylus
+ - sugarss
+ - supports-color
+ - uglify-js
+ - utf-8-validate
+ - webpack-cli
+ dev: true
+
+ /@angular-devkit/build-webpack@0.1703.4(webpack-dev-server@4.15.1)(webpack@5.90.3):
+ resolution: {integrity: sha512-9Vsl6rfIH8kF02W7i3tW/aMOT2Ld1zpcok7n7JdL3Pb7oW0SOjt73FN6Ykm/hVig12gsOGJtEsDfQRsnCddmfQ==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ webpack: ^5.30.0
+ webpack-dev-server: ^4.0.0
+ dependencies:
+ '@angular-devkit/architect': 0.1703.4
+ rxjs: 7.8.1
+ webpack: 5.90.3(esbuild@0.20.1)
+ webpack-dev-server: 4.15.1(webpack@5.90.3)
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
+ /@angular-devkit/build-webpack@0.1703.8(webpack-dev-server@4.15.1)(webpack@5.90.3):
+ resolution: {integrity: sha512-9u6fl8VVOxcLOEMzrUeaybSvi9hSLSRucHnybneYrabsgreDo32tuy/4G8p6YAHQjpWEj9jvF9Um13ertdni5Q==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ webpack: ^5.30.0
+ webpack-dev-server: ^4.0.0
+ dependencies:
+ '@angular-devkit/architect': 0.1703.8
+ rxjs: 7.8.1
+ webpack: 5.90.3(esbuild@0.20.1)
+ webpack-dev-server: 4.15.1(webpack@5.90.3)
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
+ /@angular-devkit/core@17.3.4:
+ resolution: {integrity: sha512-vE69/Db555NTRPh+LUFO3rAQBbv7QGrK59F7chRggDZKamtCq/FfhEg2O+0BXQnUitOQN6WgQ79+payFYWyCCg==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ chokidar: ^3.5.2
+ peerDependenciesMeta:
+ chokidar:
+ optional: true
+ dependencies:
+ ajv: 8.12.0
+ ajv-formats: 2.1.1(ajv@8.12.0)
+ jsonc-parser: 3.2.1
+ picomatch: 4.0.1
+ rxjs: 7.8.1
+ source-map: 0.7.4
+ dev: true
+
+ /@angular-devkit/core@17.3.8:
+ resolution: {integrity: sha512-Q8q0voCGudbdCgJ7lXdnyaxKHbNQBARH68zPQV72WT8NWy+Gw/tys870i6L58NWbBaCJEUcIj/kb6KoakSRu+Q==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ chokidar: ^3.5.2
+ peerDependenciesMeta:
+ chokidar:
+ optional: true
+ dependencies:
+ ajv: 8.12.0
+ ajv-formats: 2.1.1(ajv@8.12.0)
+ jsonc-parser: 3.2.1
+ picomatch: 4.0.1
+ rxjs: 7.8.1
+ source-map: 0.7.4
+ dev: true
+
+ /@angular-devkit/schematics@17.3.4:
+ resolution: {integrity: sha512-Z6801QhIwrMTcKPzdo9si+ZtJkPz8fys0ftOTfTM66+tDECasU7pvk8Dr54WkDY29mdSHzPxpSxAsooEwfxvQQ==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ dependencies:
+ '@angular-devkit/core': 17.3.4
+ jsonc-parser: 3.2.1
+ magic-string: 0.30.8
+ ora: 5.4.1
+ rxjs: 7.8.1
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
+ /@angular-devkit/schematics@17.3.8:
+ resolution: {integrity: sha512-QRVEYpIfgkprNHc916JlPuNbLzOgrm9DZalHasnLUz4P6g7pR21olb8YCyM2OTJjombNhya9ZpckcADU5Qyvlg==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ dependencies:
+ '@angular-devkit/core': 17.3.8
+ jsonc-parser: 3.2.1
+ magic-string: 0.30.8
+ ora: 5.4.1
+ rxjs: 7.8.1
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
+ /@angular/animations@17.3.11(@angular/core@17.3.11):
+ resolution: {integrity: sha512-1y1Egag5jbdUSUWVK+KA39N9VFDrzq9ObjbAhrXFlXKa0npBRw5bprEEeLFQMETMP9Mpjbmj2PoASfl4vqj/Iw==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/core': 17.3.11
+ dependencies:
+ '@angular/core': 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ tslib: 2.6.2
+ dev: false
+
+ /@angular/animations@17.3.4(@angular/core@17.3.4):
+ resolution: {integrity: sha512-2nBgXRdTSVPZMueV6ZJjajDRucwJBLxwiVhGafk/nI5MJF0Yss/Jfp2Kfzk5Xw2AqGhz0rd00IyNNUQIzO2mlw==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/core': 17.3.4
+ dependencies:
+ '@angular/core': 17.3.4(rxjs@7.8.1)(zone.js@0.14.4)
+ tslib: 2.6.2
+ dev: true
+
+ /@angular/cli@17.3.4:
+ resolution: {integrity: sha512-o4oIA2stUwXOur/T/kP3Zr8ZUCB4VYmvjACbsQ3tpzVCFYPeaW9psQagBNJfaBVVDSYL+EacVYBYJR9ZImvcGw==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ hasBin: true
+ dependencies:
+ '@angular-devkit/architect': 0.1703.4
+ '@angular-devkit/core': 17.3.4
+ '@angular-devkit/schematics': 17.3.4
+ '@schematics/angular': 17.3.4
+ '@yarnpkg/lockfile': 1.1.0
+ ansi-colors: 4.1.3
+ ini: 4.1.2
+ inquirer: 9.2.15
+ jsonc-parser: 3.2.1
+ npm-package-arg: 11.0.1
+ npm-pick-manifest: 9.0.0
+ open: 8.4.2
+ ora: 5.4.1
+ pacote: 17.0.6
+ resolve: 1.22.8
+ semver: 7.6.0
+ symbol-observable: 4.0.0
+ yargs: 17.7.2
+ transitivePeerDependencies:
+ - bluebird
+ - chokidar
+ - supports-color
+ dev: true
+
+ /@angular/cli@17.3.8:
+ resolution: {integrity: sha512-X5ZOQ6ZTKVHjhIsfl32ZRqbs+FUoeHLbT7x4fh2Os/8ObDDwrUcCJPqxe2b2RB5E2d0vepYigknHeLE7gwzlNQ==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ hasBin: true
+ dependencies:
+ '@angular-devkit/architect': 0.1703.8
+ '@angular-devkit/core': 17.3.8
+ '@angular-devkit/schematics': 17.3.8
+ '@schematics/angular': 17.3.8
+ '@yarnpkg/lockfile': 1.1.0
+ ansi-colors: 4.1.3
+ ini: 4.1.2
+ inquirer: 9.2.15
+ jsonc-parser: 3.2.1
+ npm-package-arg: 11.0.1
+ npm-pick-manifest: 9.0.0
+ open: 8.4.2
+ ora: 5.4.1
+ pacote: 17.0.6
+ resolve: 1.22.8
+ semver: 7.6.0
+ symbol-observable: 4.0.0
+ yargs: 17.7.2
+ transitivePeerDependencies:
+ - bluebird
+ - chokidar
+ - supports-color
+ dev: true
+
+ /@angular/common@17.3.11(@angular/core@17.3.11)(rxjs@7.8.1):
+ resolution: {integrity: sha512-WG+HQjUaQziYLGdbcv2aW+G73uroN5VF9yk4qWYcolW+VB8SV/DOAol8uFVgCF21cIOl5+wfJZvA4r5oG3dYaw==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/core': 17.3.11
+ rxjs: ^6.5.3 || ^7.4.0
+ dependencies:
+ '@angular/core': 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ rxjs: 7.8.1
+ tslib: 2.6.2
+ dev: false
+
+ /@angular/common@17.3.4(@angular/core@17.3.4)(rxjs@7.8.1):
+ resolution: {integrity: sha512-rEsmtwUMJaNvaimh9hwaHdDLXaOIrjEnYdhmJUvDaKPQaFfSbH3CGGVz9brUyzVJyiWJYkYM0ssxavczeiEe8g==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/core': 17.3.4
+ rxjs: ^6.5.3 || ^7.4.0
+ dependencies:
+ '@angular/core': 17.3.4(rxjs@7.8.1)(zone.js@0.14.4)
+ rxjs: 7.8.1
+ tslib: 2.6.2
+ dev: true
+
+ /@angular/compiler-cli@17.3.11(@angular/compiler@17.3.11)(typescript@5.3.3):
+ resolution: {integrity: sha512-O44H/BKGw0TYq0aNTOKYZfQiTrfjbmcTl8y4UX6C9Xey8hXvijzZOAsjA0TGvvDJxeLR+sxaRF4i9Ihoatnd8g==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ hasBin: true
+ peerDependencies:
+ '@angular/compiler': 17.3.11
+ typescript: '>=5.2 <5.5'
+ dependencies:
+ '@angular/compiler': 17.3.11(@angular/core@17.3.11)
+ '@babel/core': 7.23.9
+ '@jridgewell/sourcemap-codec': 1.4.15
+ chokidar: 3.6.0
+ convert-source-map: 1.9.0
+ reflect-metadata: 0.2.2
+ semver: 7.6.0
+ tslib: 2.6.2
+ typescript: 5.3.3
+ yargs: 17.7.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@angular/compiler-cli@17.3.4(@angular/compiler@17.3.4)(typescript@5.3.3):
+ resolution: {integrity: sha512-TVWjpZSI/GIXTYsmVgEKYjBckcW8Aj62DcxLNehRFR+c7UB95OY3ZFjU8U4jL0XvWPgTkkVWQVq+P6N4KCBsyw==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ hasBin: true
+ peerDependencies:
+ '@angular/compiler': 17.3.4
+ typescript: '>=5.2 <5.5'
+ dependencies:
+ '@angular/compiler': 17.3.4(@angular/core@17.3.4)
+ '@babel/core': 7.23.9
+ '@jridgewell/sourcemap-codec': 1.4.15
+ chokidar: 3.6.0
+ convert-source-map: 1.9.0
+ reflect-metadata: 0.2.2
+ semver: 7.6.0
+ tslib: 2.6.2
+ typescript: 5.3.3
+ yargs: 17.7.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@angular/compiler@17.3.11(@angular/core@17.3.11):
+ resolution: {integrity: sha512-ingRoREDPkeZGSa13DlztSjZgGArNcmsAWjj+f+vQgQekTjkfQD/N+Bix/LSt5ZdbSjHMtrkDMyRPwbNyk5Keg==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/core': 17.3.11
+ peerDependenciesMeta:
+ '@angular/core':
+ optional: true
+ dependencies:
+ '@angular/core': 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ tslib: 2.6.2
+
+ /@angular/compiler@17.3.4(@angular/core@17.3.4):
+ resolution: {integrity: sha512-YrDClIzgj6nQwiYHrfV6AkT1C5LCDgJh+LICus/2EY1w80j1Qf48Zh4asictReePdVE2Tarq6dnpDh4RW6LenQ==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/core': 17.3.4
+ peerDependenciesMeta:
+ '@angular/core':
+ optional: true
+ dependencies:
+ '@angular/core': 17.3.4(rxjs@7.8.1)(zone.js@0.14.4)
+ tslib: 2.6.2
+ dev: true
+
+ /@angular/core@17.3.11(rxjs@7.8.1)(zone.js@0.14.4):
+ resolution: {integrity: sha512-2wPZwXFei3kVxK2ylIH6CdGebrC4kvooFx7qoX+250OITAEFMODJGdh/e3x0DpFUjlRvQtIFQ+YpQlfC5JnL4g==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ rxjs: ^6.5.3 || ^7.4.0
+ zone.js: ~0.14.0
+ dependencies:
+ rxjs: 7.8.1
+ tslib: 2.6.2
+ zone.js: 0.14.4
+
+ /@angular/core@17.3.4(rxjs@7.8.1)(zone.js@0.14.4):
+ resolution: {integrity: sha512-fvhBkfa/DDBzp1UcNzSxHj+Z9DebSS/o9pZpZlbu/0uEiu9hScmScnhaty5E0EbutzHB0SVUCz7zZuDeAywvWg==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ rxjs: ^6.5.3 || ^7.4.0
+ zone.js: ~0.14.0
+ dependencies:
+ rxjs: 7.8.1
+ tslib: 2.6.2
+ zone.js: 0.14.4
+ dev: true
+
+ /@angular/forms@17.3.11(@angular/common@17.3.11)(@angular/core@17.3.11)(@angular/platform-browser@17.3.11)(rxjs@7.8.1):
+ resolution: {integrity: sha512-719flo/1L64YOAxL3pzszTK+7bczVVOQDXT1khnjb48GVZdBUBwW2D+cFbqSW1VMuWWr2Amwy1lL4YM5S7qPJQ==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/common': 17.3.11
+ '@angular/core': 17.3.11
+ '@angular/platform-browser': 17.3.11
+ rxjs: ^6.5.3 || ^7.4.0
+ dependencies:
+ '@angular/common': 17.3.11(@angular/core@17.3.11)(rxjs@7.8.1)
+ '@angular/core': 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ '@angular/platform-browser': 17.3.11(@angular/animations@17.3.11)(@angular/common@17.3.11)(@angular/core@17.3.11)
+ rxjs: 7.8.1
+ tslib: 2.6.2
+ dev: false
+
+ /@angular/platform-browser-dynamic@17.3.11(@angular/common@17.3.11)(@angular/compiler@17.3.11)(@angular/core@17.3.11)(@angular/platform-browser@17.3.11):
+ resolution: {integrity: sha512-JPA0enJyJQ5H340WQ2wfXbCCHzjBiAljEDMr/Siw/CzSe0XI8aQYDqKMLUMtRyCdYhNCEYjnBWgXBi9Za9blZg==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/common': 17.3.11
+ '@angular/compiler': 17.3.11
+ '@angular/core': 17.3.11
+ '@angular/platform-browser': 17.3.11
+ dependencies:
+ '@angular/common': 17.3.11(@angular/core@17.3.11)(rxjs@7.8.1)
+ '@angular/compiler': 17.3.11(@angular/core@17.3.11)
+ '@angular/core': 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ '@angular/platform-browser': 17.3.11(@angular/animations@17.3.11)(@angular/common@17.3.11)(@angular/core@17.3.11)
+ tslib: 2.6.2
+ dev: false
+
+ /@angular/platform-browser-dynamic@17.3.4(@angular/common@17.3.4)(@angular/compiler@17.3.4)(@angular/core@17.3.4)(@angular/platform-browser@17.3.4):
+ resolution: {integrity: sha512-S53jPyQtInVYkjdGEFt4dxM1NrHNkWCvXGRsCO7Uh+laDf1OpIDp9YHf49OZohYLajJradN6y4QfdZL6IUwXKA==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/common': 17.3.4
+ '@angular/compiler': 17.3.4
+ '@angular/core': 17.3.4
+ '@angular/platform-browser': 17.3.4
+ dependencies:
+ '@angular/common': 17.3.4(@angular/core@17.3.4)(rxjs@7.8.1)
+ '@angular/compiler': 17.3.4(@angular/core@17.3.4)
+ '@angular/core': 17.3.4(rxjs@7.8.1)(zone.js@0.14.4)
+ '@angular/platform-browser': 17.3.4(@angular/animations@17.3.4)(@angular/common@17.3.4)(@angular/core@17.3.4)
+ tslib: 2.6.2
+ dev: true
+
+ /@angular/platform-browser@17.3.11(@angular/animations@17.3.11)(@angular/common@17.3.11)(@angular/core@17.3.11):
+ resolution: {integrity: sha512-sWjMy8qKH6AOt5YV4OMoPhExCbGdRIPjNSwUrxCm8a8Zz5DamoX3Sib9yRk1etjBuRj+oJySSxISJim2OYXJQQ==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/animations': 17.3.11
+ '@angular/common': 17.3.11
+ '@angular/core': 17.3.11
+ peerDependenciesMeta:
+ '@angular/animations':
+ optional: true
+ dependencies:
+ '@angular/animations': 17.3.11(@angular/core@17.3.11)
+ '@angular/common': 17.3.11(@angular/core@17.3.11)(rxjs@7.8.1)
+ '@angular/core': 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ tslib: 2.6.2
+ dev: false
+
+ /@angular/platform-browser@17.3.4(@angular/animations@17.3.4)(@angular/common@17.3.4)(@angular/core@17.3.4):
+ resolution: {integrity: sha512-W2nH9WSQJfdNG4HH9B1Cvj5CTmy9gF3321I+65Tnb8jFmpeljYDBC/VVUhTZUCRpg8udMWeMHEQHuSb8CbozmQ==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/animations': 17.3.4
+ '@angular/common': 17.3.4
+ '@angular/core': 17.3.4
+ peerDependenciesMeta:
+ '@angular/animations':
+ optional: true
+ dependencies:
+ '@angular/animations': 17.3.4(@angular/core@17.3.4)
+ '@angular/common': 17.3.4(@angular/core@17.3.4)(rxjs@7.8.1)
+ '@angular/core': 17.3.4(rxjs@7.8.1)(zone.js@0.14.4)
+ tslib: 2.6.2
+ dev: true
+
+ /@angular/router@17.3.11(@angular/common@17.3.11)(@angular/core@17.3.11)(@angular/platform-browser@17.3.11)(rxjs@7.8.1):
+ resolution: {integrity: sha512-A3aU6uHAeJfsfCw1dgNXHn2Kjw/UieRMnFwENkzz96YFCvFPCEZjy/mODuE3zHludMuqVsJhM/uUxWu8ATRTcA==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ peerDependencies:
+ '@angular/common': 17.3.11
+ '@angular/core': 17.3.11
+ '@angular/platform-browser': 17.3.11
+ rxjs: ^6.5.3 || ^7.4.0
+ dependencies:
+ '@angular/common': 17.3.11(@angular/core@17.3.11)(rxjs@7.8.1)
+ '@angular/core': 17.3.11(rxjs@7.8.1)(zone.js@0.14.4)
+ '@angular/platform-browser': 17.3.11(@angular/animations@17.3.11)(@angular/common@17.3.11)(@angular/core@17.3.11)
+ rxjs: 7.8.1
+ tslib: 2.6.2
+ dev: false
+
/@babel/code-frame@7.23.5:
resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==}
engines: {node: '>=6.9.0'}
@@ -485,11 +1275,34 @@ packages:
engines: {node: '>=6.9.0'}
dev: true
+ /@babel/core@7.23.9:
+ resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==}
+ engines: {node: '>=6.9.0'}
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@babel/code-frame': 7.23.5
+ '@babel/generator': 7.23.6
+ '@babel/helper-compilation-targets': 7.23.6
+ '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9)
+ '@babel/helpers': 7.24.0
+ '@babel/parser': 7.24.0
+ '@babel/template': 7.24.0
+ '@babel/traverse': 7.24.0
+ '@babel/types': 7.24.0
+ convert-source-map: 2.0.0
+ debug: 4.3.4
+ gensync: 1.0.0-beta.2
+ json5: 2.2.3
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@babel/core@7.24.0:
resolution: {integrity: sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==}
engines: {node: '>=6.9.0'}
dependencies:
- '@ampproject/remapping': 2.2.1
+ '@ampproject/remapping': 2.3.0
'@babel/code-frame': 7.23.5
'@babel/generator': 7.23.6
'@babel/helper-compilation-targets': 7.23.6
@@ -513,8 +1326,8 @@ packages:
engines: {node: '>=6.9.0'}
dependencies:
'@babel/types': 7.24.0
- '@jridgewell/gen-mapping': 0.3.4
- '@jridgewell/trace-mapping': 0.3.23
+ '@jridgewell/gen-mapping': 0.3.5
+ '@jridgewell/trace-mapping': 0.3.25
jsesc: 2.5.2
dev: true
@@ -626,7 +1439,21 @@ packages:
resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.24.0
+ '@babel/types': 7.24.0
+ dev: true
+
+ /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9):
+ resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ dependencies:
+ '@babel/core': 7.23.9
+ '@babel/helper-environment-visitor': 7.22.20
+ '@babel/helper-module-imports': 7.22.15
+ '@babel/helper-simple-access': 7.22.5
+ '@babel/helper-split-export-declaration': 7.22.6
+ '@babel/helper-validator-identifier': 7.22.20
dev: true
/@babel/helper-module-transforms@7.23.3(@babel/core@7.24.0):
@@ -1916,6 +2743,16 @@ packages:
'@babel/helper-validator-identifier': 7.22.20
to-fast-properties: 2.0.0
+ /@colors/colors@1.5.0:
+ resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
+ engines: {node: '>=0.1.90'}
+ dev: true
+
+ /@discoveryjs/json-ext@0.5.7:
+ resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==}
+ engines: {node: '>=10.0.0'}
+ dev: true
+
/@esbuild/aix-ppc64@0.19.12:
resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==}
engines: {node: '>=12'}
@@ -2383,6 +3220,22 @@ packages:
engines: {node: '>=12'}
dev: true
+ /@istanbuljs/load-nyc-config@1.1.0:
+ resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ camelcase: 5.3.1
+ find-up: 4.1.0
+ get-package-type: 0.1.0
+ js-yaml: 3.14.1
+ resolve-from: 5.0.0
+ dev: true
+
+ /@istanbuljs/schema@0.1.3:
+ resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
+ engines: {node: '>=8'}
+ dev: true
+
/@jest/create-cache-key-function@29.7.0:
resolution: {integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -2826,6 +3679,15 @@ packages:
'@jridgewell/trace-mapping': 0.3.23
dev: true
+ /@jridgewell/gen-mapping@0.3.5:
+ resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ '@jridgewell/set-array': 1.2.1
+ '@jridgewell/sourcemap-codec': 1.4.15
+ '@jridgewell/trace-mapping': 0.3.25
+ dev: true
+
/@jridgewell/resolve-uri@3.1.2:
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
engines: {node: '>=6.0.0'}
@@ -2836,6 +3698,11 @@ packages:
engines: {node: '>=6.0.0'}
dev: true
+ /@jridgewell/set-array@1.2.1:
+ resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
+ engines: {node: '>=6.0.0'}
+ dev: true
+
/@jridgewell/source-map@0.3.5:
resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==}
dependencies:
@@ -2853,6 +3720,17 @@ packages:
'@jridgewell/sourcemap-codec': 1.4.15
dev: true
+ /@jridgewell/trace-mapping@0.3.25:
+ resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.2
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: true
+
+ /@leichtgewicht/ip-codec@2.0.5:
+ resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==}
+ dev: true
+
/@ljharb/through@2.3.12:
resolution: {integrity: sha512-ajo/heTlG3QgC8EGP6APIejksVAYt4ayz4tqoP3MolFELzcH1x1fzwEYRJTPO0IELutZ5HQ0c26/GqAYy79u3g==}
engines: {node: '>= 0.4'}
@@ -2860,6 +3738,32 @@ packages:
call-bind: 1.0.7
dev: true
+ /@ngtools/webpack@17.3.4(@angular/compiler-cli@17.3.4)(typescript@5.3.3)(webpack@5.90.3):
+ resolution: {integrity: sha512-3uNX4tRTKPm91mSQcnmQtqDMMKLGDevJERSPJU7hlOXZZ05QrT4et1mwvXNYYMpXqi2OkC7D4ryIS2YxAiItBA==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ '@angular/compiler-cli': ^17.0.0
+ typescript: '>=5.2 <5.5'
+ webpack: ^5.54.0
+ dependencies:
+ '@angular/compiler-cli': 17.3.4(@angular/compiler@17.3.4)(typescript@5.3.3)
+ typescript: 5.3.3
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
+ /@ngtools/webpack@17.3.8(@angular/compiler-cli@17.3.11)(typescript@5.3.3)(webpack@5.90.3):
+ resolution: {integrity: sha512-CjSVVa/9fzMpEDQP01SC4colKCbZwj7vUq0H2bivp8jVsmd21x9Fu0gDBH0Y9NdfAIm4eGZvmiZKMII3vIOaYQ==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ peerDependencies:
+ '@angular/compiler-cli': ^17.0.0
+ typescript: '>=5.2 <5.5'
+ webpack: ^5.54.0
+ dependencies:
+ '@angular/compiler-cli': 17.3.11(@angular/compiler@17.3.11)(typescript@5.3.3)
+ typescript: 5.3.3
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
/@nodelib/fs.scandir@2.1.5:
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -2881,6 +3785,19 @@ packages:
fastq: 1.17.1
dev: true
+ /@npmcli/agent@2.2.2:
+ resolution: {integrity: sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ agent-base: 7.1.1
+ http-proxy-agent: 7.0.2
+ https-proxy-agent: 7.0.4
+ lru-cache: 10.2.0
+ socks-proxy-agent: 8.0.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@npmcli/fs@1.1.1:
resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==}
dependencies:
@@ -2919,6 +3836,22 @@ packages:
- bluebird
dev: true
+ /@npmcli/git@5.0.5:
+ resolution: {integrity: sha512-x8hXItC8OFOwdgERzRIxg0ic1lQqW6kSZFFQtZTCNYOeGb9UqzVcod02TYljI9UBl4RtfcyQ0A7ygmcGFvEqWw==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@npmcli/promise-spawn': 7.0.1
+ lru-cache: 10.2.0
+ npm-pick-manifest: 9.0.0
+ proc-log: 3.0.0
+ promise-inflight: 1.0.1
+ promise-retry: 2.0.1
+ semver: 7.6.0
+ which: 4.0.0
+ transitivePeerDependencies:
+ - bluebird
+ dev: true
+
/@npmcli/installed-package-contents@2.0.2:
resolution: {integrity: sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -2951,6 +3884,21 @@ packages:
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
dev: true
+ /@npmcli/package-json@5.0.2:
+ resolution: {integrity: sha512-LmW+tueGSK+FCM3OpcKtwKKo3igpefh6HHiw23sGd8OdJ8l0GrfGfVdGOFVtJRMaXVnvI1RUdEPlB9VUln5Wbw==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@npmcli/git': 5.0.5
+ glob: 10.3.10
+ hosted-git-info: 7.0.1
+ json-parse-even-better-errors: 3.0.1
+ normalize-package-data: 6.0.0
+ proc-log: 3.0.0
+ semver: 7.6.0
+ transitivePeerDependencies:
+ - bluebird
+ dev: true
+
/@npmcli/promise-spawn@6.0.2:
resolution: {integrity: sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -2958,6 +3906,18 @@ packages:
which: 3.0.1
dev: true
+ /@npmcli/promise-spawn@7.0.1:
+ resolution: {integrity: sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ which: 4.0.0
+ dev: true
+
+ /@npmcli/redact@1.1.0:
+ resolution: {integrity: sha512-PfnWuOkQgu7gCbnSsAisaX7hKOdZ4wSAhAzH3/ph5dSGau52kCRrMMGbiSQLwyTZpgldkZ49b0brkOr1AzGBHQ==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dev: true
+
/@npmcli/run-script@6.0.2:
resolution: {integrity: sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -2972,6 +3932,20 @@ packages:
- supports-color
dev: true
+ /@npmcli/run-script@7.0.4:
+ resolution: {integrity: sha512-9ApYM/3+rBt9V80aYg6tZfzj3UWdiYyCt7gJUD1VJKvWF5nwKDSICXbYIQbspFTq6TOpbsEtIC0LArB8d9PFmg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@npmcli/node-gyp': 3.0.0
+ '@npmcli/package-json': 5.0.2
+ '@npmcli/promise-spawn': 7.0.1
+ node-gyp: 10.1.0
+ which: 4.0.0
+ transitivePeerDependencies:
+ - bluebird
+ - supports-color
+ dev: true
+
/@octokit/auth-token@4.0.0:
resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==}
engines: {node: '>= 18'}
@@ -3107,7 +4081,7 @@ packages:
config-chain: 1.1.13
dev: true
- /@preact/preset-vite@2.8.1(@babel/core@7.24.0)(preact@10.19.6)(vite@5.1.4):
+ /@preact/preset-vite@2.8.1(@babel/core@7.24.0)(preact@10.19.6)(vite@5.1.7):
resolution: {integrity: sha512-a9KV4opdj17X2gOFuGup0aE+sXYABX/tJi/QDptOrleX4FlnoZgDWvz45tHOdVfrZX+3uvVsIYPHxRsTerkDNA==}
peerDependencies:
'@babel/core': 7.x
@@ -3116,7 +4090,7 @@ packages:
'@babel/core': 7.24.0
'@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.0)
'@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.24.0)
- '@prefresh/vite': 2.4.5(preact@10.19.6)(vite@5.1.4)
+ '@prefresh/vite': 2.4.5(preact@10.19.6)(vite@5.1.7)
'@rollup/pluginutils': 4.2.1
babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.24.0)
debug: 4.3.4
@@ -3124,7 +4098,7 @@ packages:
magic-string: 0.30.5
node-html-parser: 6.1.12
resolve: 1.22.8
- vite: 5.1.4
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
transitivePeerDependencies:
- preact
- supports-color
@@ -3146,7 +4120,7 @@ packages:
resolution: {integrity: sha512-KtC/fZw+oqtwOLUFM9UtiitB0JsVX0zLKNyRTA332sqREqSALIIQQxdUCS1P3xR/jT1e2e8/5rwH6gdcMLEmsQ==}
dev: true
- /@prefresh/vite@2.4.5(preact@10.19.6)(vite@5.1.4):
+ /@prefresh/vite@2.4.5(preact@10.19.6)(vite@5.1.7):
resolution: {integrity: sha512-iForDVJ2M8gQYnm5pHumvTEJjGGc7YNYC0GVKnHFL+GvFfKHfH9Rpq67nUAzNbjuLEpqEOUuQVQajMazWu2ZNQ==}
peerDependencies:
preact: ^10.4.0
@@ -3158,11 +4132,20 @@ packages:
'@prefresh/utils': 1.2.0
'@rollup/pluginutils': 4.2.1
preact: 10.19.6
- vite: 5.1.4
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
transitivePeerDependencies:
- supports-color
dev: true
+ /@prettier/sync@0.5.1(prettier@3.2.5):
+ resolution: {integrity: sha512-tpF+A1e4ynO2U4fTH21Sjgm9EYENmqg4zmJCMLrmLVfzIzuDc1cKGXyxrxbFgcH8qQRfowyDCZFAUukwhiZlsw==}
+ peerDependencies:
+ prettier: '*'
+ dependencies:
+ make-synchronized: 0.2.8
+ prettier: 3.2.5
+ dev: true
+
/@react-native-community/cli-clean@12.3.6:
resolution: {integrity: sha512-gUU29ep8xM0BbnZjwz9MyID74KKwutq9x5iv4BCr2im6nly4UMf1B1D+V225wR7VcDGzbgWjaezsJShLLhC5ig==}
dependencies:
@@ -3542,6 +4525,19 @@ packages:
rollup: 3.29.4
dev: true
+ /@rollup/plugin-json@6.1.0(rollup@4.12.0):
+ resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@rollup/pluginutils': 5.1.0(rollup@4.12.0)
+ rollup: 4.12.0
+ dev: true
+
/@rollup/plugin-node-resolve@15.2.3(rollup@3.29.4):
resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==}
engines: {node: '>=14.0.0'}
@@ -3560,6 +4556,24 @@ packages:
rollup: 3.29.4
dev: true
+ /@rollup/plugin-node-resolve@15.2.3(rollup@4.12.0):
+ resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^2.78.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@rollup/pluginutils': 5.1.0(rollup@4.12.0)
+ '@types/resolve': 1.20.2
+ deepmerge: 4.3.1
+ is-builtin-module: 3.2.1
+ is-module: 1.0.0
+ resolve: 1.22.8
+ rollup: 4.12.0
+ dev: true
+
/@rollup/plugin-terser@0.1.0(rollup@3.29.4):
resolution: {integrity: sha512-N2KK+qUfHX2hBzVzM41UWGLrEmcjVC37spC8R3c9mt3oEDFKh3N2e12/lLp9aVSt86veR0TQiCNQXrm8C6aiUQ==}
engines: {node: '>=14.0.0'}
@@ -3570,7 +4584,7 @@ packages:
optional: true
dependencies:
rollup: 3.29.4
- terser: 5.28.1
+ terser: 5.29.1
dev: true
/@rollup/pluginutils@4.2.1:
@@ -3715,6 +4729,38 @@ packages:
dev: true
optional: true
+ /@rollup/wasm-node@4.14.2:
+ resolution: {integrity: sha512-iwZbxtvP/0icwPWExUZWfA3A2jqQkDY38E8R5onRY2ALFmom0k7e37n9WDcJMMRcx/pdenfN8NaSohzX9LiDEQ==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
+ dependencies:
+ '@types/estree': 1.0.5
+ optionalDependencies:
+ fsevents: 2.3.3
+ dev: true
+
+ /@schematics/angular@17.3.4:
+ resolution: {integrity: sha512-Rqhp5l76Ej6BOZCHPrvHlA2SBkjv1aHFWAfW9gREke826j46D+fuA0eDAdgeVTz0Fx9e7XM3LdtWsz7CBlV4Ug==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ dependencies:
+ '@angular-devkit/core': 17.3.4
+ '@angular-devkit/schematics': 17.3.4
+ jsonc-parser: 3.2.1
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
+ /@schematics/angular@17.3.8:
+ resolution: {integrity: sha512-2g4OmSyE9YGq50Uj7fNI26P/TSAFJ7ZuirwTF2O7Xc4XRQ29/tYIIqhezpNlTb6rlYblcQuMcUZBrMfWJHcqJw==}
+ engines: {node: ^18.13.0 || >=20.9.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'}
+ dependencies:
+ '@angular-devkit/core': 17.3.8
+ '@angular-devkit/schematics': 17.3.8
+ jsonc-parser: 3.2.1
+ transitivePeerDependencies:
+ - chokidar
+ dev: true
+
/@sideway/address@4.1.5:
resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==}
dependencies:
@@ -3736,11 +4782,28 @@ packages:
'@sigstore/protobuf-specs': 0.2.1
dev: true
+ /@sigstore/bundle@2.3.1:
+ resolution: {integrity: sha512-eqV17lO3EIFqCWK3969Rz+J8MYrRZKw9IBHpSo6DEcEX2c+uzDFOgHE9f2MnyDpfs48LFO4hXmk9KhQ74JzU1g==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@sigstore/protobuf-specs': 0.3.1
+ dev: true
+
+ /@sigstore/core@1.1.0:
+ resolution: {integrity: sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dev: true
+
/@sigstore/protobuf-specs@0.2.1:
resolution: {integrity: sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
dev: true
+ /@sigstore/protobuf-specs@0.3.1:
+ resolution: {integrity: sha512-aIL8Z9NsMr3C64jyQzE0XlkEyBLpgEJJFDHLVVStkFV5Q3Il/r/YtY6NJWKQ4cy4AE7spP1IX5Jq7VCAxHHMfQ==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dev: true
+
/@sigstore/sign@1.0.0:
resolution: {integrity: sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -3752,6 +4815,18 @@ packages:
- supports-color
dev: true
+ /@sigstore/sign@2.3.0:
+ resolution: {integrity: sha512-tsAyV6FC3R3pHmKS880IXcDJuiFJiKITO1jxR1qbplcsBkZLBmjrEw5GbC7ikD6f5RU1hr7WnmxB/2kKc1qUWQ==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@sigstore/bundle': 2.3.1
+ '@sigstore/core': 1.1.0
+ '@sigstore/protobuf-specs': 0.3.1
+ make-fetch-happen: 13.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@sigstore/tuf@1.0.3:
resolution: {integrity: sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -3762,6 +4837,25 @@ packages:
- supports-color
dev: true
+ /@sigstore/tuf@2.3.2:
+ resolution: {integrity: sha512-mwbY1VrEGU4CO55t+Kl6I7WZzIl+ysSzEYdA1Nv/FTrl2bkeaPXo5PnWZAVfcY2zSdhOpsUTJW67/M2zHXGn5w==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@sigstore/protobuf-specs': 0.3.1
+ tuf-js: 2.2.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@sigstore/verify@1.2.0:
+ resolution: {integrity: sha512-hQF60nc9yab+Csi4AyoAmilGNfpXT+EXdBgFkP9OgPwIBPwyqVf7JAWPtmqrrrneTmAT6ojv7OlH1f6Ix5BG4Q==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@sigstore/bundle': 2.3.1
+ '@sigstore/core': 1.1.0
+ '@sigstore/protobuf-specs': 0.3.1
+ dev: true
+
/@sinclair/typebox@0.27.8:
resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
dev: true
@@ -3804,6 +4898,10 @@ packages:
'@sinonjs/commons': 3.0.1
dev: true
+ /@socket.io/component-emitter@3.1.1:
+ resolution: {integrity: sha512-dzJtaDAAoXx4GCOJpbB2eG/Qj8VDpdwkLsWGzGm+0L7E8/434RyMbAHmk9ubXWVAb9nXmc44jUf8GKqVDiKezg==}
+ dev: true
+
/@solidjs/router@0.13.0(solid-js@1.8.15):
resolution: {integrity: sha512-YHLbFv9J53+iG4yVrh0vVdYiyXPTk892UyZ1jiMPsUXn2dYkX4552N+8SjvlKWWsmNmYxaoefM6jZn1YtVIUUg==}
peerDependencies:
@@ -3841,7 +4939,7 @@ packages:
- typescript
dev: true
- /@sveltejs/vite-plugin-svelte-inspector@2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.12)(vite@5.1.4):
+ /@sveltejs/vite-plugin-svelte-inspector@2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.12)(vite@5.1.7):
resolution: {integrity: sha512-gjr9ZFg1BSlIpfZ4PRewigrvYmHWbDrq2uvvPB1AmTWKuM+dI1JXQSUu2pIrYLb/QncyiIGkFDFKTwJ0XqQZZg==}
engines: {node: ^18.0.0 || >=20}
peerDependencies:
@@ -3849,30 +4947,30 @@ packages:
svelte: ^4.0.0 || ^5.0.0-next.0
vite: ^5.0.0
dependencies:
- '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.12)(vite@5.1.4)
+ '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.12)(vite@5.1.7)
debug: 4.3.4
svelte: 4.2.12
- vite: 5.1.4
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
transitivePeerDependencies:
- supports-color
dev: true
- /@sveltejs/vite-plugin-svelte@3.0.2(svelte@4.2.12)(vite@5.1.4):
+ /@sveltejs/vite-plugin-svelte@3.0.2(svelte@4.2.12)(vite@5.1.7):
resolution: {integrity: sha512-MpmF/cju2HqUls50WyTHQBZUV3ovV/Uk8k66AN2gwHogNAG8wnW8xtZDhzNBsFJJuvmq1qnzA5kE7YfMJNFv2Q==}
engines: {node: ^18.0.0 || >=20}
peerDependencies:
svelte: ^4.0.0 || ^5.0.0-next.0
vite: ^5.0.0
dependencies:
- '@sveltejs/vite-plugin-svelte-inspector': 2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.12)(vite@5.1.4)
+ '@sveltejs/vite-plugin-svelte-inspector': 2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.12)(vite@5.1.7)
debug: 4.3.4
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.30.7
svelte: 4.2.12
svelte-hmr: 0.15.3(svelte@4.2.12)
- vite: 5.1.4
- vitefu: 0.2.5(vite@5.1.4)
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
+ vitefu: 0.2.5(vite@5.1.7)
transitivePeerDependencies:
- supports-color
dev: true
@@ -4025,6 +5123,11 @@ packages:
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
dev: true
+ /@tufjs/canonical-json@2.0.0:
+ resolution: {integrity: sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dev: true
+
/@tufjs/models@1.0.4:
resolution: {integrity: sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -4033,6 +5136,14 @@ packages:
minimatch: 9.0.3
dev: true
+ /@tufjs/models@2.0.0:
+ resolution: {integrity: sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@tufjs/canonical-json': 2.0.0
+ minimatch: 9.0.3
+ dev: true
+
/@types/aria-query@5.0.4:
resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==}
dev: true
@@ -4066,14 +5177,92 @@ packages:
'@babel/types': 7.24.0
dev: true
+ /@types/body-parser@1.19.5:
+ resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==}
+ dependencies:
+ '@types/connect': 3.4.38
+ '@types/node': 16.9.1
+ dev: true
+
+ /@types/bonjour@3.5.13:
+ resolution: {integrity: sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==}
+ dependencies:
+ '@types/node': 16.9.1
+ dev: true
+
+ /@types/connect-history-api-fallback@1.5.4:
+ resolution: {integrity: sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==}
+ dependencies:
+ '@types/express-serve-static-core': 4.19.0
+ '@types/node': 16.9.1
+ dev: true
+
+ /@types/connect@3.4.38:
+ resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==}
+ dependencies:
+ '@types/node': 16.9.1
+ dev: true
+
+ /@types/cookie@0.4.1:
+ resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==}
+ dev: true
+
+ /@types/cors@2.8.17:
+ resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==}
+ dependencies:
+ '@types/node': 16.9.1
+ dev: true
+
+ /@types/eslint-scope@3.7.7:
+ resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==}
+ dependencies:
+ '@types/eslint': 8.56.9
+ '@types/estree': 1.0.5
+ dev: true
+
+ /@types/eslint@8.56.9:
+ resolution: {integrity: sha512-W4W3KcqzjJ0sHg2vAq9vfml6OhsJ53TcUjUqfzzZf/EChUtwspszj/S0pzMxnfRcO55/iGq47dscXw71Fxc4Zg==}
+ dependencies:
+ '@types/estree': 1.0.5
+ '@types/json-schema': 7.0.15
+ dev: true
+
/@types/estree@1.0.5:
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
dev: true
+ /@types/express-serve-static-core@4.19.0:
+ resolution: {integrity: sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==}
+ dependencies:
+ '@types/node': 16.9.1
+ '@types/qs': 6.9.14
+ '@types/range-parser': 1.2.7
+ '@types/send': 0.17.4
+ dev: true
+
+ /@types/express@4.17.21:
+ resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==}
+ dependencies:
+ '@types/body-parser': 1.19.5
+ '@types/express-serve-static-core': 4.19.0
+ '@types/qs': 6.9.14
+ '@types/serve-static': 1.15.7
+ dev: true
+
/@types/http-cache-semantics@4.0.4:
resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==}
dev: true
+ /@types/http-errors@2.0.4:
+ resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==}
+ dev: true
+
+ /@types/http-proxy@1.17.14:
+ resolution: {integrity: sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==}
+ dependencies:
+ '@types/node': 16.9.1
+ dev: true
+
/@types/istanbul-lib-coverage@2.0.6:
resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
dev: true
@@ -4090,6 +5279,18 @@ packages:
'@types/istanbul-lib-report': 3.0.3
dev: true
+ /@types/jasmine@5.1.4:
+ resolution: {integrity: sha512-px7OMFO/ncXxixDe1zR13V1iycqWae0MxTaw62RpFlksUi5QuNWgQJFkTQjIOvrmutJbI7Fp2Y2N1F6D2R4G6w==}
+ dev: true
+
+ /@types/json-schema@7.0.15:
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+ dev: true
+
+ /@types/mime@1.3.5:
+ resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==}
+ dev: true
+
/@types/minimatch@3.0.5:
resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==}
dev: true
@@ -4098,6 +5299,12 @@ packages:
resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==}
dev: true
+ /@types/node-forge@1.3.11:
+ resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
+ dependencies:
+ '@types/node': 16.9.1
+ dev: true
+
/@types/node@16.9.1:
resolution: {integrity: sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==}
dev: true
@@ -4114,6 +5321,14 @@ packages:
resolution: {integrity: sha512-Sk/uYFOBAB7mb74XcpizmH0KOR2Pv3D2Hmrh1Dmy5BmK3MpdSa5kqZcg6EKBdklU0bFXX9gCfzvpnyUehrPIuA==}
dev: true
+ /@types/qs@6.9.14:
+ resolution: {integrity: sha512-5khscbd3SwWMhFqylJBLQ0zIu7c1K6Vz0uBIt915BI3zV0q1nfjRQD3RqSBcPaO6PHEF4ov/t9y89fSiyThlPA==}
+ dev: true
+
+ /@types/range-parser@1.2.7:
+ resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==}
+ dev: true
+
/@types/react-dom@18.2.19:
resolution: {integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==}
dependencies:
@@ -4132,14 +5347,51 @@ packages:
resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
dev: true
+ /@types/retry@0.12.0:
+ resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==}
+ dev: true
+
/@types/scheduler@0.16.8:
resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==}
dev: true
+ /@types/send@0.17.4:
+ resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==}
+ dependencies:
+ '@types/mime': 1.3.5
+ '@types/node': 16.9.1
+ dev: true
+
+ /@types/serve-index@1.9.4:
+ resolution: {integrity: sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==}
+ dependencies:
+ '@types/express': 4.17.21
+ dev: true
+
+ /@types/serve-static@1.15.7:
+ resolution: {integrity: sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==}
+ dependencies:
+ '@types/http-errors': 2.0.4
+ '@types/node': 16.9.1
+ '@types/send': 0.17.4
+ dev: true
+
+ /@types/sockjs@0.3.36:
+ resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==}
+ dependencies:
+ '@types/node': 16.9.1
+ dev: true
+
/@types/stack-utils@2.0.3:
resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
dev: true
+ /@types/ws@8.5.10:
+ resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==}
+ dependencies:
+ '@types/node': 16.9.1
+ dev: true
+
/@types/yargs-parser@21.0.3:
resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
dev: true
@@ -4153,10 +5405,19 @@ packages:
/@types/yargs@17.0.32:
resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==}
dependencies:
- '@types/yargs-parser': 21.0.3
+ '@types/yargs-parser': 21.0.3
+ dev: true
+
+ /@vitejs/plugin-basic-ssl@1.1.0(vite@5.1.7):
+ resolution: {integrity: sha512-wO4Dk/rm8u7RNhOf95ZzcEmC9rYOncYgvq4z3duaJrCgjN8BxAnDVyndanfcJZ0O6XZzHz6Q0hTimxTg8Y9g/A==}
+ engines: {node: '>=14.6.0'}
+ peerDependencies:
+ vite: ^3.0.0 || ^4.0.0 || ^5.0.0
+ dependencies:
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
dev: true
- /@vitejs/plugin-react@4.2.1(vite@5.1.4):
+ /@vitejs/plugin-react@4.2.1(vite@5.1.7):
resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
@@ -4167,19 +5428,19 @@ packages:
'@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.24.0)
'@types/babel__core': 7.20.5
react-refresh: 0.14.0
- vite: 5.1.4
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
transitivePeerDependencies:
- supports-color
dev: true
- /@vitejs/plugin-vue@5.0.4(vite@5.1.4)(vue@3.4.21):
+ /@vitejs/plugin-vue@5.0.4(vite@5.1.7)(vue@3.4.21):
resolution: {integrity: sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==}
engines: {node: ^18.0.0 || >=20.0.0}
peerDependencies:
vite: ^5.0.0
vue: ^3.2.25
dependencies:
- vite: 5.1.4
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
vue: 3.4.21(typescript@5.3.3)
dev: true
@@ -4339,11 +5600,129 @@ packages:
vue-component-type-helpers: 1.8.27
dev: true
+ /@webassemblyjs/ast@1.12.1:
+ resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==}
+ dependencies:
+ '@webassemblyjs/helper-numbers': 1.11.6
+ '@webassemblyjs/helper-wasm-bytecode': 1.11.6
+ dev: true
+
+ /@webassemblyjs/floating-point-hex-parser@1.11.6:
+ resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==}
+ dev: true
+
+ /@webassemblyjs/helper-api-error@1.11.6:
+ resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==}
+ dev: true
+
+ /@webassemblyjs/helper-buffer@1.12.1:
+ resolution: {integrity: sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==}
+ dev: true
+
+ /@webassemblyjs/helper-numbers@1.11.6:
+ resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==}
+ dependencies:
+ '@webassemblyjs/floating-point-hex-parser': 1.11.6
+ '@webassemblyjs/helper-api-error': 1.11.6
+ '@xtuc/long': 4.2.2
+ dev: true
+
+ /@webassemblyjs/helper-wasm-bytecode@1.11.6:
+ resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==}
+ dev: true
+
+ /@webassemblyjs/helper-wasm-section@1.12.1:
+ resolution: {integrity: sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==}
+ dependencies:
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-buffer': 1.12.1
+ '@webassemblyjs/helper-wasm-bytecode': 1.11.6
+ '@webassemblyjs/wasm-gen': 1.12.1
+ dev: true
+
+ /@webassemblyjs/ieee754@1.11.6:
+ resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==}
+ dependencies:
+ '@xtuc/ieee754': 1.2.0
+ dev: true
+
+ /@webassemblyjs/leb128@1.11.6:
+ resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==}
+ dependencies:
+ '@xtuc/long': 4.2.2
+ dev: true
+
+ /@webassemblyjs/utf8@1.11.6:
+ resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==}
+ dev: true
+
+ /@webassemblyjs/wasm-edit@1.12.1:
+ resolution: {integrity: sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==}
+ dependencies:
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-buffer': 1.12.1
+ '@webassemblyjs/helper-wasm-bytecode': 1.11.6
+ '@webassemblyjs/helper-wasm-section': 1.12.1
+ '@webassemblyjs/wasm-gen': 1.12.1
+ '@webassemblyjs/wasm-opt': 1.12.1
+ '@webassemblyjs/wasm-parser': 1.12.1
+ '@webassemblyjs/wast-printer': 1.12.1
+ dev: true
+
+ /@webassemblyjs/wasm-gen@1.12.1:
+ resolution: {integrity: sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==}
+ dependencies:
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-wasm-bytecode': 1.11.6
+ '@webassemblyjs/ieee754': 1.11.6
+ '@webassemblyjs/leb128': 1.11.6
+ '@webassemblyjs/utf8': 1.11.6
+ dev: true
+
+ /@webassemblyjs/wasm-opt@1.12.1:
+ resolution: {integrity: sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==}
+ dependencies:
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-buffer': 1.12.1
+ '@webassemblyjs/wasm-gen': 1.12.1
+ '@webassemblyjs/wasm-parser': 1.12.1
+ dev: true
+
+ /@webassemblyjs/wasm-parser@1.12.1:
+ resolution: {integrity: sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==}
+ dependencies:
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-api-error': 1.11.6
+ '@webassemblyjs/helper-wasm-bytecode': 1.11.6
+ '@webassemblyjs/ieee754': 1.11.6
+ '@webassemblyjs/leb128': 1.11.6
+ '@webassemblyjs/utf8': 1.11.6
+ dev: true
+
+ /@webassemblyjs/wast-printer@1.12.1:
+ resolution: {integrity: sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==}
+ dependencies:
+ '@webassemblyjs/ast': 1.12.1
+ '@xtuc/long': 4.2.2
+ dev: true
+
/@xmldom/xmldom@0.7.13:
resolution: {integrity: sha512-lm2GW5PkosIzccsaZIz7tp8cPADSIlIHWDFTR1N0SzfinhhYgeIQjFMz4rYzanCScr3DqQLeomUDArp6MWKm+g==}
engines: {node: '>=10.0.0'}
dev: true
+ /@xtuc/ieee754@1.2.0:
+ resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==}
+ dev: true
+
+ /@xtuc/long@4.2.2:
+ resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
+ dev: true
+
+ /@yarnpkg/lockfile@1.1.0:
+ resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==}
+ dev: true
+
/a-sync-waterfall@1.0.1:
resolution: {integrity: sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA==}
dev: true
@@ -4372,6 +5751,14 @@ packages:
negotiator: 0.6.3
dev: true
+ /acorn-import-assertions@1.9.0(acorn@8.11.3):
+ resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==}
+ peerDependencies:
+ acorn: ^8
+ dependencies:
+ acorn: 8.11.3
+ dev: true
+
/acorn-walk@8.3.2:
resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==}
engines: {node: '>=0.4.0'}
@@ -4389,6 +5776,14 @@ packages:
hasBin: true
dev: true
+ /adjust-sourcemap-loader@4.0.0:
+ resolution: {integrity: sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==}
+ engines: {node: '>=8.9'}
+ dependencies:
+ loader-utils: 2.0.4
+ regex-parser: 2.3.0
+ dev: true
+
/adm-zip@0.5.10:
resolution: {integrity: sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==}
engines: {node: '>=6.0'}
@@ -4412,6 +5807,15 @@ packages:
- supports-color
dev: true
+ /agent-base@7.1.1:
+ resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==}
+ engines: {node: '>= 14'}
+ dependencies:
+ debug: 4.3.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/agentkeepalive@4.5.0:
resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==}
engines: {node: '>= 8.0.0'}
@@ -4427,6 +5831,52 @@ packages:
indent-string: 4.0.0
dev: true
+ /ajv-formats@2.1.1(ajv@8.12.0):
+ resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==}
+ peerDependencies:
+ ajv: ^8.0.0
+ peerDependenciesMeta:
+ ajv:
+ optional: true
+ dependencies:
+ ajv: 8.12.0
+ dev: true
+
+ /ajv-keywords@3.5.2(ajv@6.12.6):
+ resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==}
+ peerDependencies:
+ ajv: ^6.9.1
+ dependencies:
+ ajv: 6.12.6
+ dev: true
+
+ /ajv-keywords@5.1.0(ajv@8.12.0):
+ resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==}
+ peerDependencies:
+ ajv: ^8.8.2
+ dependencies:
+ ajv: 8.12.0
+ fast-deep-equal: 3.1.3
+ dev: true
+
+ /ajv@6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-json-stable-stringify: 2.1.0
+ json-schema-traverse: 0.4.1
+ uri-js: 4.4.1
+ dev: true
+
+ /ajv@8.12.0:
+ resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==}
+ dependencies:
+ fast-deep-equal: 3.1.3
+ json-schema-traverse: 1.0.0
+ require-from-string: 2.0.2
+ uri-js: 4.4.1
+ dev: true
+
/anser@1.4.10:
resolution: {integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==}
dev: true
@@ -4437,6 +5887,11 @@ packages:
string-width: 4.2.3
dev: true
+ /ansi-colors@4.1.3:
+ resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
+ engines: {node: '>=6'}
+ dev: true
+
/ansi-escapes@4.3.2:
resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
engines: {node: '>=8'}
@@ -4452,6 +5907,12 @@ packages:
strip-ansi: 5.2.0
dev: true
+ /ansi-html-community@0.0.8:
+ resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==}
+ engines: {'0': node >= 0.8.0}
+ hasBin: true
+ dev: true
+
/ansi-regex@2.1.1:
resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==}
engines: {node: '>=0.10.0'}
@@ -4584,6 +6045,10 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /array-flatten@1.1.1:
+ resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==}
+ dev: true
+
/array-union@1.0.2:
resolution: {integrity: sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==}
engines: {node: '>=0.10.0'}
@@ -4689,6 +6154,22 @@ packages:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
dev: true
+ /autoprefixer@10.4.18(postcss@8.4.35):
+ resolution: {integrity: sha512-1DKbDfsr6KUElM6wg+0zRNkB/Q7WcKYAaK+pzXn+Xqmszm/5Xa9coeNdtP88Vi+dPzZnMjhge8GIV49ZQkDa+g==}
+ engines: {node: ^10 || ^12 || >=14}
+ hasBin: true
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ browserslist: 4.23.0
+ caniuse-lite: 1.0.30001591
+ fraction.js: 4.3.7
+ normalize-range: 0.1.2
+ picocolors: 1.0.0
+ postcss: 8.4.35
+ postcss-value-parser: 4.2.0
+ dev: true
+
/available-typed-arrays@1.0.7:
resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
engines: {node: '>= 0.4'}
@@ -4710,6 +6191,32 @@ packages:
'@babel/core': 7.24.0
dev: true
+ /babel-loader@9.1.3(@babel/core@7.24.0)(webpack@5.90.3):
+ resolution: {integrity: sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==}
+ engines: {node: '>= 14.15.0'}
+ peerDependencies:
+ '@babel/core': ^7.12.0
+ webpack: '>=5'
+ dependencies:
+ '@babel/core': 7.24.0
+ find-cache-dir: 4.0.0
+ schema-utils: 4.2.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
+ /babel-plugin-istanbul@6.1.1:
+ resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@babel/helper-plugin-utils': 7.24.0
+ '@istanbuljs/load-nyc-config': 1.1.0
+ '@istanbuljs/schema': 0.1.3
+ istanbul-lib-instrument: 5.2.1
+ test-exclude: 6.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/babel-plugin-jsx-dom-expressions@0.37.17(@babel/core@7.24.0):
resolution: {integrity: sha512-1bv8rOTzs6TR3DVyVZ7ElxyPEhnS556FMWRIsB3gBPfkn/cSKaLvXLGk+X1lvI+SzcUo4G+UcmJrn3vr1ig8mQ==}
peerDependencies:
@@ -4799,11 +6306,20 @@ packages:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
dev: true
+ /base64id@2.0.0:
+ resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==}
+ engines: {node: ^4.5.0 || >= 5.9}
+ dev: true
+
/basic-ftp@5.0.5:
resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==}
engines: {node: '>=10.0.0'}
dev: true
+ /batch@0.6.1:
+ resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==}
+ dev: true
+
/bcp-47-match@1.0.3:
resolution: {integrity: sha512-LggQ4YTdjWQSKELZF5JwchnBa1u0pIQSZf5lSdOHEdbVP55h0qICA/FUp3+W99q0xqxYa1ZQizTUH87gecII5w==}
dev: true
@@ -4827,6 +6343,10 @@ packages:
resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==}
dev: true
+ /big.js@5.2.2:
+ resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==}
+ dev: true
+
/binary-extensions@2.2.0:
resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
engines: {node: '>=8'}
@@ -4844,6 +6364,33 @@ packages:
resolution: {integrity: sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==}
dev: true
+ /body-parser@1.20.2:
+ resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==}
+ engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
+ dependencies:
+ bytes: 3.1.2
+ content-type: 1.0.5
+ debug: 2.6.9
+ depd: 2.0.0
+ destroy: 1.2.0
+ http-errors: 2.0.0
+ iconv-lite: 0.4.24
+ on-finished: 2.4.1
+ qs: 6.11.0
+ raw-body: 2.5.2
+ type-is: 1.6.18
+ unpipe: 1.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /bonjour-service@1.2.1:
+ resolution: {integrity: sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==}
+ dependencies:
+ fast-deep-equal: 3.1.3
+ multicast-dns: 7.2.5
+ dev: true
+
/boolbase@1.0.0:
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
dev: true
@@ -4963,6 +6510,11 @@ packages:
engines: {node: '>= 0.8'}
dev: true
+ /bytes@3.1.2:
+ resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
+ engines: {node: '>= 0.8'}
+ dev: true
+
/cac@6.7.14:
resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
engines: {node: '>=8'}
@@ -5038,6 +6590,24 @@ packages:
unique-filename: 3.0.0
dev: true
+ /cacache@18.0.2:
+ resolution: {integrity: sha512-r3NU8h/P+4lVUHfeRw1dtgQYar3DZMm4/cm2bZgOvrFC/su7budSOeqh52VJIC4U4iG1WWwV6vRW0znqBvxNuw==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@npmcli/fs': 3.1.0
+ fs-minipass: 3.0.3
+ glob: 10.3.10
+ lru-cache: 10.2.0
+ minipass: 7.0.4
+ minipass-collect: 2.0.1
+ minipass-flush: 1.0.5
+ minipass-pipeline: 1.2.4
+ p-map: 4.0.0
+ ssri: 10.0.5
+ tar: 6.2.0
+ unique-filename: 3.0.0
+ dev: true
+
/cacheable-lookup@7.0.0:
resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==}
engines: {node: '>=14.16'}
@@ -5246,6 +6816,11 @@ packages:
- supports-color
dev: true
+ /chrome-trace-event@1.0.3:
+ resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==}
+ engines: {node: '>=6.0'}
+ dev: true
+
/chromium-edge-launcher@1.0.0:
resolution: {integrity: sha512-pgtgjNKZ7i5U++1g1PWv75umkHvhVTDOQIZ+sjeUX9483S7Y6MUvO0lrd7ShGlQlFHMN4SwKTCq/X8hWrbv2KA==}
dependencies:
@@ -5322,6 +6897,14 @@ packages:
wrap-ansi: 6.2.0
dev: true
+ /cliui@7.0.4:
+ resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+ dev: true
+
/cliui@8.0.1:
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
engines: {node: '>=12'}
@@ -5429,6 +7012,11 @@ packages:
engines: {node: '>=14'}
dev: true
+ /commander@12.0.0:
+ resolution: {integrity: sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==}
+ engines: {node: '>=18'}
+ dev: true
+
/commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
dev: true
@@ -5452,6 +7040,10 @@ packages:
resolution: {integrity: sha512-YeNK4tavZwtH7jEgK1ZINXzLKm6DZdEMfsaaieOsCAN0S8vsY7UeuO3Q7d/M018EFgE+IeUAuBOKkFccBZsUZA==}
dev: true
+ /common-path-prefix@3.0.0:
+ resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==}
+ dev: true
+
/commondir@1.0.1:
resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
dev: true
@@ -5504,6 +7096,11 @@ packages:
xdg-basedir: 5.1.0
dev: true
+ /connect-history-api-fallback@2.0.0:
+ resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==}
+ engines: {node: '>=0.8'}
+ dev: true
+
/connect@3.7.0:
resolution: {integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==}
engines: {node: '>= 0.10.0'}
@@ -5527,10 +7124,61 @@ packages:
'@babel/types': 7.24.0
dev: true
+ /content-disposition@0.5.4:
+ resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ safe-buffer: 5.2.1
+ dev: true
+
+ /content-type@1.0.5:
+ resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /convert-source-map@1.9.0:
+ resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
+ dev: true
+
/convert-source-map@2.0.0:
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
dev: true
+ /cookie-signature@1.0.6:
+ resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==}
+ dev: true
+
+ /cookie@0.4.2:
+ resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /cookie@0.6.0:
+ resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /copy-anything@2.0.6:
+ resolution: {integrity: sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==}
+ dependencies:
+ is-what: 3.14.1
+ dev: true
+
+ /copy-webpack-plugin@11.0.0(webpack@5.90.3):
+ resolution: {integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==}
+ engines: {node: '>= 14.15.0'}
+ peerDependencies:
+ webpack: ^5.1.0
+ dependencies:
+ fast-glob: 3.3.2
+ glob-parent: 6.0.2
+ globby: 13.2.2
+ normalize-path: 3.0.0
+ schema-utils: 4.2.0
+ serialize-javascript: 6.0.2
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
/core-js-compat@3.36.0:
resolution: {integrity: sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==}
dependencies:
@@ -5541,6 +7189,14 @@ packages:
resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
dev: true
+ /cors@2.8.5:
+ resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ object-assign: 4.1.1
+ vary: 1.1.2
+ dev: true
+
/cosmiconfig@5.2.1:
resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==}
engines: {node: '>=4'}
@@ -5567,6 +7223,18 @@ packages:
typescript: 5.3.3
dev: true
+ /critters@0.0.22:
+ resolution: {integrity: sha512-NU7DEcQZM2Dy8XTKFHxtdnIM/drE312j2T4PCVaSUcS0oBeyT/NImpRw/Ap0zOr/1SE7SgPK9tGPg1WK/sVakw==}
+ dependencies:
+ chalk: 4.1.2
+ css-select: 5.1.0
+ dom-serializer: 2.0.0
+ domhandler: 5.0.3
+ htmlparser2: 8.0.2
+ postcss: 8.4.35
+ postcss-media-query-parser: 0.2.3
+ dev: true
+
/cross-spawn@7.0.3:
resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
engines: {node: '>= 8'}
@@ -5587,6 +7255,29 @@ packages:
type-fest: 1.4.0
dev: true
+ /css-loader@6.10.0(webpack@5.90.3):
+ resolution: {integrity: sha512-LTSA/jWbwdMlk+rhmElbDR2vbtQoTBPr7fkJE+mxrHj+7ru0hUmHafDRzWIjIHTwpitWVaqY2/UWGRca3yUgRw==}
+ engines: {node: '>= 12.13.0'}
+ peerDependencies:
+ '@rspack/core': 0.x || 1.x
+ webpack: ^5.0.0
+ peerDependenciesMeta:
+ '@rspack/core':
+ optional: true
+ webpack:
+ optional: true
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.4.35)
+ postcss: 8.4.35
+ postcss-modules-extract-imports: 3.1.0(postcss@8.4.35)
+ postcss-modules-local-by-default: 4.0.5(postcss@8.4.35)
+ postcss-modules-scope: 3.2.0(postcss@8.4.35)
+ postcss-modules-values: 4.0.0(postcss@8.4.35)
+ postcss-value-parser: 4.2.0
+ semver: 7.6.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
/css-select@5.1.0:
resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==}
dependencies:
@@ -5630,6 +7321,12 @@ packages:
resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==}
dev: true
+ /cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
+ dev: true
+
/csso@5.0.5:
resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==}
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
@@ -5659,6 +7356,10 @@ packages:
resolution: {integrity: sha512-wT5Y7mO8abrV16gnssKdmIhIbA9wSkeMzhh27jAguKrV82i24wER0vL5TGhUJ9dbJNDcigoRZ0IAHFEEEI4THQ==}
dev: true
+ /custom-event@1.0.1:
+ resolution: {integrity: sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==}
+ dev: true
+
/data-uri-to-buffer@4.0.1:
resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==}
engines: {node: '>= 12'}
@@ -5677,6 +7378,11 @@ packages:
whatwg-url: 14.0.0
dev: true
+ /date-format@4.0.14:
+ resolution: {integrity: sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==}
+ engines: {node: '>=4.0'}
+ dev: true
+
/dayjs@1.11.10:
resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==}
dev: true
@@ -5805,6 +7511,13 @@ packages:
default-browser-id: 5.0.0
dev: true
+ /default-gateway@6.0.3:
+ resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==}
+ engines: {node: '>= 10'}
+ dependencies:
+ execa: 5.1.1
+ dev: true
+
/defaults@1.0.4:
resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
dependencies:
@@ -5866,6 +7579,11 @@ packages:
resolution: {integrity: sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==}
dev: true
+ /depd@1.1.2:
+ resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
/depd@2.0.0:
resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
engines: {node: '>= 0.8'}
@@ -5876,6 +7594,11 @@ packages:
engines: {node: '>= 0.6.0'}
dev: true
+ /dependency-graph@1.0.0:
+ resolution: {integrity: sha512-cW3gggJ28HZ/LExwxP2B++aiKxhJXMSIt9K48FOXQkm+vuG5gyatXnLsONRJdzO/7VfjDIiaOOa/bs4l464Lwg==}
+ engines: {node: '>=4'}
+ dev: true
+
/deprecated-react-native-prop-types@5.0.0:
resolution: {integrity: sha512-cIK8KYiiGVOFsKdPMmm1L3tA/Gl+JopXL6F5+C7x39MyPsQYnP57Im/D6bNUzcborD7fcMwiwZqcBdBXXZucYQ==}
engines: {node: '>=18'}
@@ -5915,12 +7638,20 @@ packages:
engines: {node: '>=8'}
dev: true
+ /detect-node@2.1.0:
+ resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==}
+ dev: true
+
/dev-ip@1.0.1:
resolution: {integrity: sha512-LmVkry/oDShEgSZPNgqCIp2/TlqtExeGmymru3uCELnfyjY11IzpAproLYs+1X88fXO6DBoYP3ul2Xo2yz2j6A==}
engines: {node: '>= 0.8.0'}
hasBin: true
dev: true
+ /di@0.0.1:
+ resolution: {integrity: sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==}
+ dev: true
+
/diff-sequences@29.6.3:
resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -5939,6 +7670,13 @@ packages:
path-type: 4.0.0
dev: true
+ /dns-packet@5.6.1:
+ resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==}
+ engines: {node: '>=6'}
+ dependencies:
+ '@leichtgewicht/ip-codec': 2.0.5
+ dev: true
+
/doctypes@1.1.0:
resolution: {integrity: sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==}
dev: true
@@ -5951,6 +7689,15 @@ packages:
resolution: {integrity: sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==}
dev: true
+ /dom-serialize@2.2.1:
+ resolution: {integrity: sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==}
+ dependencies:
+ custom-event: 1.0.1
+ ent: 2.2.0
+ extend: 3.0.2
+ void-elements: 2.0.1
+ dev: true
+
/dom-serializer@0.2.2:
resolution: {integrity: sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==}
dependencies:
@@ -6107,6 +7854,11 @@ packages:
resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
dev: true
+ /emojis-list@3.0.0:
+ resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
+ engines: {node: '>= 4'}
+ dev: true
+
/encodeurl@1.0.2:
resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
engines: {node: '>= 0.8'}
@@ -6126,10 +7878,47 @@ packages:
once: 1.4.0
dev: true
+ /engine.io-parser@5.2.2:
+ resolution: {integrity: sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==}
+ engines: {node: '>=10.0.0'}
+ dev: true
+
+ /engine.io@6.5.4:
+ resolution: {integrity: sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ '@types/cookie': 0.4.1
+ '@types/cors': 2.8.17
+ '@types/node': 16.9.1
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cookie: 0.4.2
+ cors: 2.8.5
+ debug: 4.3.4
+ engine.io-parser: 5.2.2
+ ws: 8.11.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /enhanced-resolve@5.16.0:
+ resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ graceful-fs: 4.2.11
+ tapable: 2.2.1
+ dev: true
+
/ensure-posix-path@1.1.1:
resolution: {integrity: sha512-VWU0/zXzVbeJNXvME/5EmLuEj2TauvoaTz6aFYK1Z92JCBlDlZ3Gu0tuGR42kpW1754ywTs+QB0g5TP0oj9Zaw==}
dev: true
+ /ent@2.2.0:
+ resolution: {integrity: sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==}
+ dev: true
+
/entities@1.1.2:
resolution: {integrity: sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==}
dev: true
@@ -6445,6 +8234,18 @@ packages:
dev: true
optional: true
+ /esbuild-wasm@0.20.1:
+ resolution: {integrity: sha512-6v/WJubRsjxBbQdz6izgvx7LsVFvVaGmSdwrFHmEzoVgfXL89hkKPoQHsnVI2ngOkcBUQT9kmAM1hVL1k/Av4A==}
+ engines: {node: '>=12'}
+ hasBin: true
+ dev: true
+
+ /esbuild-wasm@0.20.2:
+ resolution: {integrity: sha512-7o6nmsEqlcXJXMNqnx5K+M4w4OPx7yTFXQHcJyeP3SkXb8p2T8N9E1ayK4vd/qDBepH6fuPoZwiFvZm8x5qv+w==}
+ engines: {node: '>=12'}
+ hasBin: true
+ dev: true
+
/esbuild-windows-32@0.15.18:
resolution: {integrity: sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==}
engines: {node: '>=12'}
@@ -6605,12 +8406,32 @@ packages:
source-map: 0.6.1
dev: true
+ /eslint-scope@5.1.1:
+ resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 4.3.0
+ dev: true
+
/esprima@4.0.1:
resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
engines: {node: '>=4'}
hasBin: true
dev: true
+ /esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+ dependencies:
+ estraverse: 5.3.0
+ dev: true
+
+ /estraverse@4.3.0:
+ resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
+ engines: {node: '>=4.0'}
+ dev: true
+
/estraverse@5.3.0:
resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
engines: {node: '>=4.0'}
@@ -6644,6 +8465,15 @@ packages:
resolution: {integrity: sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg==}
dev: true
+ /eventemitter3@4.0.7:
+ resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==}
+ dev: true
+
+ /events@3.3.0:
+ resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
+ engines: {node: '>=0.8.x'}
+ dev: true
+
/execa@5.1.1:
resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
engines: {node: '>=10'}
@@ -6687,6 +8517,45 @@ packages:
resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==}
dev: true
+ /express@4.19.2:
+ resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==}
+ engines: {node: '>= 0.10.0'}
+ dependencies:
+ accepts: 1.3.8
+ array-flatten: 1.1.1
+ body-parser: 1.20.2
+ content-disposition: 0.5.4
+ content-type: 1.0.5
+ cookie: 0.6.0
+ cookie-signature: 1.0.6
+ debug: 2.6.9
+ depd: 2.0.0
+ encodeurl: 1.0.2
+ escape-html: 1.0.3
+ etag: 1.8.1
+ finalhandler: 1.2.0
+ fresh: 0.5.2
+ http-errors: 2.0.0
+ merge-descriptors: 1.0.1
+ methods: 1.1.2
+ on-finished: 2.4.1
+ parseurl: 1.3.3
+ path-to-regexp: 0.1.7
+ proxy-addr: 2.0.7
+ qs: 6.11.0
+ range-parser: 1.2.1
+ safe-buffer: 5.2.1
+ send: 0.18.0
+ serve-static: 1.15.0
+ setprototypeof: 1.2.0
+ statuses: 2.0.1
+ type-is: 1.6.18
+ utils-merge: 1.0.1
+ vary: 1.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/extend-shallow@2.0.1:
resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==}
engines: {node: '>=0.10.0'}
@@ -6694,6 +8563,10 @@ packages:
is-extendable: 0.1.1
dev: true
+ /extend@3.0.2:
+ resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
+ dev: true
+
/external-editor@3.1.0:
resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==}
engines: {node: '>=4'}
@@ -6703,6 +8576,10 @@ packages:
tmp: 0.0.33
dev: true
+ /fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+ dev: true
+
/fast-glob@3.3.2:
resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
engines: {node: '>=8.6.0'}
@@ -6714,6 +8591,10 @@ packages:
micromatch: 4.0.5
dev: true
+ /fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+ dev: true
+
/fast-xml-parser@4.3.5:
resolution: {integrity: sha512-sWvP1Pl8H03B8oFJpFR3HE31HUfwtX7Rlf9BNsvdpujD4n7WMhfmu8h9wOV2u+c1k0ZilTADhPqypzx2J690ZQ==}
hasBin: true
@@ -6727,6 +8608,13 @@ packages:
reusify: 1.0.4
dev: true
+ /faye-websocket@0.11.4:
+ resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==}
+ engines: {node: '>=0.8.0'}
+ dependencies:
+ websocket-driver: 0.7.4
+ dev: true
+
/fb-watchman@2.0.2:
resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
dependencies:
@@ -6810,6 +8698,23 @@ packages:
pkg-dir: 3.0.0
dev: true
+ /find-cache-dir@3.3.2:
+ resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==}
+ engines: {node: '>=8'}
+ dependencies:
+ commondir: 1.0.1
+ make-dir: 3.1.0
+ pkg-dir: 4.2.0
+ dev: true
+
+ /find-cache-dir@4.0.0:
+ resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==}
+ engines: {node: '>=14.16'}
+ dependencies:
+ common-path-prefix: 3.0.0
+ pkg-dir: 7.0.0
+ dev: true
+
/find-up@3.0.0:
resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==}
engines: {node: '>=6'}
@@ -6833,6 +8738,23 @@ packages:
path-exists: 4.0.0
dev: true
+ /find-up@6.3.0:
+ resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ locate-path: 7.2.0
+ path-exists: 5.0.0
+ dev: true
+
+ /flat@5.0.2:
+ resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
+ hasBin: true
+ dev: true
+
+ /flatted@3.3.1:
+ resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
+ dev: true
+
/flow-enums-runtime@0.0.6:
resolution: {integrity: sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==}
dev: true
@@ -6842,6 +8764,16 @@ packages:
engines: {node: '>=0.4.0'}
dev: true
+ /follow-redirects@1.15.6:
+ resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==}
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ debug: '*'
+ peerDependenciesMeta:
+ debug:
+ optional: true
+ dev: true
+
/for-each@0.3.3:
resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
dependencies:
@@ -6877,6 +8809,15 @@ packages:
fetch-blob: 3.2.0
dev: true
+ /forwarded@0.2.0:
+ resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /fraction.js@4.3.7:
+ resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
+ dev: true
+
/fresh@0.5.2:
resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
engines: {node: '>= 0.6'}
@@ -6918,6 +8859,10 @@ packages:
minipass: 7.0.4
dev: true
+ /fs-monkey@1.0.5:
+ resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==}
+ dev: true
+
/fs.realpath@1.0.0:
resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
dev: true
@@ -7016,6 +8961,11 @@ packages:
hasown: 2.0.1
dev: true
+ /get-package-type@0.1.0:
+ resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
+ engines: {node: '>=8.0.0'}
+ dev: true
+
/get-stdin@4.0.1:
resolution: {integrity: sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==}
engines: {node: '>=0.10.0'}
@@ -7089,6 +9039,17 @@ packages:
is-glob: 4.0.3
dev: true
+ /glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ is-glob: 4.0.3
+ dev: true
+
+ /glob-to-regexp@0.4.1:
+ resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
+ dev: true
+
/glob@10.3.10:
resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -7107,7 +9068,7 @@ packages:
fs.realpath: 1.0.0
inflight: 1.0.6
inherits: 2.0.4
- minimatch: 3.0.8
+ minimatch: 3.1.2
once: 1.4.0
path-is-absolute: 1.0.1
dev: true
@@ -7172,6 +9133,17 @@ packages:
slash: 3.0.0
dev: true
+ /globby@13.2.2:
+ resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ dir-glob: 3.0.1
+ fast-glob: 3.3.2
+ ignore: 5.3.1
+ merge2: 1.4.1
+ slash: 4.0.0
+ dev: true
+
/globby@14.0.1:
resolution: {integrity: sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==}
engines: {node: '>=18'}
@@ -7262,6 +9234,10 @@ packages:
resolution: {integrity: sha512-/chXRp4WpL47I+HX1vCCdSbEXAljEG2FBMmgO7Am0bYsqgnEjreeWzUdX1onXqwZtcfgxbCg5WtEYYvuZ5muBg==}
dev: true
+ /handle-thing@2.0.1:
+ resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==}
+ dev: true
+
/handlebars@4.7.8:
resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==}
engines: {node: '>=0.4.7'}
@@ -7378,6 +9354,22 @@ packages:
lru-cache: 7.18.3
dev: true
+ /hosted-git-info@7.0.1:
+ resolution: {integrity: sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ lru-cache: 10.2.0
+ dev: true
+
+ /hpack.js@2.1.6:
+ resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==}
+ dependencies:
+ inherits: 2.0.4
+ obuf: 1.1.2
+ readable-stream: 2.3.8
+ wbuf: 1.7.3
+ dev: true
+
/html-encoding-sniffer@4.0.0:
resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==}
engines: {node: '>=18'}
@@ -7389,6 +9381,10 @@ packages:
resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==}
dev: true
+ /html-escaper@2.0.2:
+ resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
+ dev: true
+
/html-minifier@4.0.0:
resolution: {integrity: sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==}
engines: {node: '>=6'}
@@ -7436,11 +9432,25 @@ packages:
resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
dev: true
+ /http-deceiver@1.2.7:
+ resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==}
+ dev: true
+
/http-equiv-refresh@1.0.0:
resolution: {integrity: sha512-TScO04soylRN9i/QdOdgZyhydXg9z6XdaGzEyOgDKycePeDeTT4KvigjBcI+tgfTlieLWauGORMq5F1eIDa+1w==}
engines: {node: '>= 0.10'}
dev: true
+ /http-errors@1.6.3:
+ resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ depd: 1.1.2
+ inherits: 2.0.3
+ setprototypeof: 1.1.0
+ statuses: 1.5.0
+ dev: true
+
/http-errors@2.0.0:
resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
engines: {node: '>= 0.8'}
@@ -7452,6 +9462,10 @@ packages:
toidentifier: 1.0.1
dev: true
+ /http-parser-js@0.5.8:
+ resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==}
+ dev: true
+
/http-proxy-agent@4.0.1:
resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==}
engines: {node: '>= 6'}
@@ -7484,6 +9498,36 @@ packages:
- supports-color
dev: true
+ /http-proxy-middleware@2.0.6(@types/express@4.17.21):
+ resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==}
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ '@types/express': ^4.17.13
+ peerDependenciesMeta:
+ '@types/express':
+ optional: true
+ dependencies:
+ '@types/express': 4.17.21
+ '@types/http-proxy': 1.17.14
+ http-proxy: 1.18.1
+ is-glob: 4.0.3
+ is-plain-obj: 3.0.0
+ micromatch: 4.0.5
+ transitivePeerDependencies:
+ - debug
+ dev: true
+
+ /http-proxy@1.18.1:
+ resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==}
+ engines: {node: '>=8.0.0'}
+ dependencies:
+ eventemitter3: 4.0.7
+ follow-redirects: 1.15.6
+ requires-port: 1.0.0
+ transitivePeerDependencies:
+ - debug
+ dev: true
+
/http2-wrapper@2.2.1:
resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==}
engines: {node: '>=10.19.0'}
@@ -7542,6 +9586,15 @@ packages:
safer-buffer: 2.1.2
dev: true
+ /icss-utils@5.1.0(postcss@8.4.35):
+ resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ postcss: 8.4.35
+ dev: true
+
/ieee754@1.2.1:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
dev: true
@@ -7564,6 +9617,14 @@ packages:
'@types/node': 16.9.1
dev: true
+ /image-size@0.5.5:
+ resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==}
+ engines: {node: '>=0.10.0'}
+ hasBin: true
+ requiresBuild: true
+ dev: true
+ optional: true
+
/image-size@1.1.1:
resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==}
engines: {node: '>=16.x'}
@@ -7618,6 +9679,10 @@ packages:
wrappy: 1.0.2
dev: true
+ /inherits@2.0.3:
+ resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==}
+ dev: true
+
/inherits@2.0.4:
resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
dev: true
@@ -7631,6 +9696,17 @@ packages:
engines: {node: '>=10'}
dev: true
+ /ini@4.1.2:
+ resolution: {integrity: sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ dev: true
+
+ /injection-js@2.4.0:
+ resolution: {integrity: sha512-6jiJt0tCAo9zjHbcwLiPL+IuNe9SQ6a9g0PEzafThW3fOQi0mrmiJGBJvDD6tmhPh8cQHIQtCOrJuBfQME4kPA==}
+ dependencies:
+ tslib: 2.6.2
+ dev: true
+
/inquirer@9.2.14:
resolution: {integrity: sha512-4ByIMt677Iz5AvjyKrDpzaepIyMewNvDcvwpVVRZNmy9dLakVoVgdCHZXbK1SlVJra1db0JZ6XkJyHsanpdrdQ==}
engines: {node: '>=18'}
@@ -7652,6 +9728,27 @@ packages:
wrap-ansi: 6.2.0
dev: true
+ /inquirer@9.2.15:
+ resolution: {integrity: sha512-vI2w4zl/mDluHt9YEQ/543VTCwPKWiHzKtm9dM2V0NdFcqEexDAjUHzO1oA60HRNaVifGXXM1tRRNluLVHa0Kg==}
+ engines: {node: '>=18'}
+ dependencies:
+ '@ljharb/through': 2.3.12
+ ansi-escapes: 4.3.2
+ chalk: 5.3.0
+ cli-cursor: 3.1.0
+ cli-width: 4.1.0
+ external-editor: 3.1.0
+ figures: 3.2.0
+ lodash: 4.17.21
+ mute-stream: 1.0.0
+ ora: 5.4.1
+ run-async: 3.0.0
+ rxjs: 7.8.1
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 6.2.0
+ dev: true
+
/internal-slot@1.0.7:
resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==}
engines: {node: '>= 0.4'}
@@ -7680,6 +9777,16 @@ packages:
sprintf-js: 1.1.3
dev: true
+ /ipaddr.js@1.9.1:
+ resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
+ engines: {node: '>= 0.10'}
+ dev: true
+
+ /ipaddr.js@2.1.0:
+ resolution: {integrity: sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==}
+ engines: {node: '>= 10'}
+ dev: true
+
/is-alphabetical@1.0.4:
resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==}
dev: true
@@ -7923,6 +10030,11 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /is-plain-obj@3.0.0:
+ resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==}
+ engines: {node: '>=10'}
+ dev: true
+
/is-plain-object@2.0.4:
resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==}
engines: {node: '>=0.10.0'}
@@ -8036,6 +10148,10 @@ packages:
get-intrinsic: 1.2.4
dev: true
+ /is-what@3.14.1:
+ resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==}
+ dev: true
+
/is-what@4.1.16:
resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==}
engines: {node: '>=12.13'}
@@ -8072,10 +10188,20 @@ packages:
resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
dev: true
+ /isbinaryfile@4.0.10:
+ resolution: {integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==}
+ engines: {node: '>= 8.0.0'}
+ dev: true
+
/isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
dev: true
+ /isexe@3.1.1:
+ resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==}
+ engines: {node: '>=16'}
+ dev: true
+
/iso-639-1@2.1.15:
resolution: {integrity: sha512-7c7mBznZu2ktfvyT582E2msM+Udc1EjOyhVRE/0ZsjD9LBtWSm23h3PtiRh2a35XoUsTQQjJXaJzuLjXsOdFDg==}
engines: {node: '>=6.0'}
@@ -8090,11 +10216,57 @@ packages:
resolution: {integrity: sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==}
engines: {node: '>=10.13'}
dependencies:
- lodash.capitalize: 4.2.1
- lodash.escaperegexp: 4.1.2
- lodash.isplainobject: 4.0.6
- lodash.isstring: 4.0.1
- lodash.uniqby: 4.7.0
+ lodash.capitalize: 4.2.1
+ lodash.escaperegexp: 4.1.2
+ lodash.isplainobject: 4.0.6
+ lodash.isstring: 4.0.1
+ lodash.uniqby: 4.7.0
+ dev: true
+
+ /istanbul-lib-coverage@3.2.2:
+ resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /istanbul-lib-instrument@5.2.1:
+ resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@babel/core': 7.24.0
+ '@babel/parser': 7.24.0
+ '@istanbuljs/schema': 0.1.3
+ istanbul-lib-coverage: 3.2.2
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /istanbul-lib-report@3.0.1:
+ resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==}
+ engines: {node: '>=10'}
+ dependencies:
+ istanbul-lib-coverage: 3.2.2
+ make-dir: 4.0.0
+ supports-color: 7.2.0
+ dev: true
+
+ /istanbul-lib-source-maps@4.0.1:
+ resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==}
+ engines: {node: '>=10'}
+ dependencies:
+ debug: 4.3.4
+ istanbul-lib-coverage: 3.2.2
+ source-map: 0.6.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /istanbul-reports@3.1.7:
+ resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==}
+ engines: {node: '>=8'}
+ dependencies:
+ html-escaper: 2.0.2
+ istanbul-lib-report: 3.0.1
dev: true
/iterate-iterator@1.0.2:
@@ -8128,6 +10300,14 @@ packages:
minimatch: 3.1.2
dev: true
+ /jasmine-core@4.6.0:
+ resolution: {integrity: sha512-O236+gd0ZXS8YAjFx8xKaJ94/erqUliEkJTDedyE7iHvv4ZVqi+q+8acJxu05/WJDKm512EUNn809In37nWlAQ==}
+ dev: true
+
+ /jasmine-core@5.1.2:
+ resolution: {integrity: sha512-2oIUMGn00FdUiqz6epiiJr7xcFyNYj3rDcfmnzfkBnHyBQ3cBQUs4mmyGsOb7TTLb9kxk7dBcmEmqhDKkBoDyA==}
+ dev: true
+
/jest-environment-node@29.7.0:
resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -8199,6 +10379,15 @@ packages:
pretty-format: 29.7.0
dev: true
+ /jest-worker@27.5.1:
+ resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
+ engines: {node: '>= 10.13.0'}
+ dependencies:
+ '@types/node': 16.9.1
+ merge-stream: 2.0.0
+ supports-color: 8.1.1
+ dev: true
+
/jest-worker@29.7.0:
resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -8219,6 +10408,11 @@ packages:
regenerator-runtime: 0.13.11
dev: true
+ /jiti@1.21.0:
+ resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==}
+ hasBin: true
+ dev: true
+
/joi@17.12.2:
resolution: {integrity: sha512-RonXAIzCiHLc8ss3Ibuz45u28GOsWE1UpfDXLbN/9NKbL4tCJf8TWYVKsoYuuh+sAUt7fsSNpA+r2+TBA6Wjmw==}
dependencies:
@@ -8386,6 +10580,14 @@ packages:
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
dev: true
+ /json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+ dev: true
+
+ /json-schema-traverse@1.0.0:
+ resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
+ dev: true
+
/json5@2.2.3:
resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
engines: {node: '>=6'}
@@ -8427,6 +10629,90 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /karma-chrome-launcher@3.2.0:
+ resolution: {integrity: sha512-rE9RkUPI7I9mAxByQWkGJFXfFD6lE4gC5nPuZdobf/QdTEJI6EU4yIay/cfU/xV4ZxlM5JiTv7zWYgA64NpS5Q==}
+ dependencies:
+ which: 1.3.1
+ dev: true
+
+ /karma-coverage@2.2.1:
+ resolution: {integrity: sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==}
+ engines: {node: '>=10.0.0'}
+ dependencies:
+ istanbul-lib-coverage: 3.2.2
+ istanbul-lib-instrument: 5.2.1
+ istanbul-lib-report: 3.0.1
+ istanbul-lib-source-maps: 4.0.1
+ istanbul-reports: 3.1.7
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /karma-jasmine-html-reporter@2.1.0(jasmine-core@5.1.2)(karma-jasmine@5.1.0)(karma@6.4.3):
+ resolution: {integrity: sha512-sPQE1+nlsn6Hwb5t+HHwyy0A1FNCVKuL1192b+XNauMYWThz2kweiBVW1DqloRpVvZIJkIoHVB7XRpK78n1xbQ==}
+ peerDependencies:
+ jasmine-core: ^4.0.0 || ^5.0.0
+ karma: ^6.0.0
+ karma-jasmine: ^5.0.0
+ dependencies:
+ jasmine-core: 5.1.2
+ karma: 6.4.3
+ karma-jasmine: 5.1.0(karma@6.4.3)
+ dev: true
+
+ /karma-jasmine@5.1.0(karma@6.4.3):
+ resolution: {integrity: sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ karma: ^6.0.0
+ dependencies:
+ jasmine-core: 4.6.0
+ karma: 6.4.3
+ dev: true
+
+ /karma-source-map-support@1.4.0:
+ resolution: {integrity: sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==}
+ dependencies:
+ source-map-support: 0.5.21
+ dev: true
+
+ /karma@6.4.3:
+ resolution: {integrity: sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==}
+ engines: {node: '>= 10'}
+ hasBin: true
+ dependencies:
+ '@colors/colors': 1.5.0
+ body-parser: 1.20.2
+ braces: 3.0.2
+ chokidar: 3.6.0
+ connect: 3.7.0
+ di: 0.0.1
+ dom-serialize: 2.2.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ http-proxy: 1.18.1
+ isbinaryfile: 4.0.10
+ lodash: 4.17.21
+ log4js: 6.9.1
+ mime: 2.6.0
+ minimatch: 3.1.2
+ mkdirp: 0.5.6
+ qjobs: 1.2.0
+ range-parser: 1.2.1
+ rimraf: 3.0.2
+ socket.io: 4.7.5
+ source-map: 0.6.1
+ tmp: 0.2.3
+ ua-parser-js: 0.7.37
+ yargs: 16.2.0
+ transitivePeerDependencies:
+ - bufferutil
+ - debug
+ - supports-color
+ - utf-8-validate
+ dev: true
+
/keyv@4.5.4:
resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
dependencies:
@@ -8455,6 +10741,11 @@ packages:
engines: {node: '>=6'}
dev: true
+ /klona@2.0.6:
+ resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==}
+ engines: {node: '>= 8'}
+ dev: true
+
/kolorist@1.8.0:
resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
dev: true
@@ -8466,11 +10757,60 @@ packages:
package-json: 8.1.1
dev: true
+ /launch-editor@2.6.1:
+ resolution: {integrity: sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==}
+ dependencies:
+ picocolors: 1.0.0
+ shell-quote: 1.8.1
+ dev: true
+
+ /less-loader@11.1.0(less@4.2.0)(webpack@5.90.3):
+ resolution: {integrity: sha512-C+uDBV7kS7W5fJlUjq5mPBeBVhYpTIm5gB09APT9o3n/ILeaXVsiSFTbZpTJCJwQ/Crczfn3DmfQFwxYusWFug==}
+ engines: {node: '>= 14.15.0'}
+ peerDependencies:
+ less: ^3.5.0 || ^4.0.0
+ webpack: ^5.0.0
+ dependencies:
+ klona: 2.0.6
+ less: 4.2.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
+ /less@4.2.0:
+ resolution: {integrity: sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==}
+ engines: {node: '>=6'}
+ hasBin: true
+ dependencies:
+ copy-anything: 2.0.6
+ parse-node-version: 1.0.1
+ tslib: 2.6.2
+ optionalDependencies:
+ errno: 0.1.8
+ graceful-fs: 4.2.11
+ image-size: 0.5.5
+ make-dir: 2.1.0
+ mime: 1.6.0
+ needle: 3.3.1
+ source-map: 0.6.1
+ dev: true
+
/leven@3.1.0:
resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
engines: {node: '>=6'}
dev: true
+ /license-webpack-plugin@4.0.2(webpack@5.90.3):
+ resolution: {integrity: sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==}
+ peerDependencies:
+ webpack: '*'
+ peerDependenciesMeta:
+ webpack:
+ optional: true
+ dependencies:
+ webpack: 5.90.3(esbuild@0.20.1)
+ webpack-sources: 3.2.3
+ dev: true
+
/lighthouse-logger@1.4.2:
resolution: {integrity: sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==}
dependencies:
@@ -8515,6 +10855,25 @@ packages:
xtend: 4.0.2
dev: true
+ /loader-runner@4.3.0:
+ resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==}
+ engines: {node: '>=6.11.5'}
+ dev: true
+
+ /loader-utils@2.0.4:
+ resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==}
+ engines: {node: '>=8.9.0'}
+ dependencies:
+ big.js: 5.2.2
+ emojis-list: 3.0.0
+ json5: 2.2.3
+ dev: true
+
+ /loader-utils@3.2.1:
+ resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==}
+ engines: {node: '>= 12.13.0'}
+ dev: true
+
/local-pkg@0.5.0:
resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==}
engines: {node: '>=14'}
@@ -8549,6 +10908,13 @@ packages:
p-locate: 5.0.0
dev: true
+ /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}
+ dependencies:
+ p-locate: 6.0.0
+ dev: true
+
/lodash._reinterpolate@3.0.0:
resolution: {integrity: sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==}
dev: true
@@ -8618,6 +10984,19 @@ packages:
is-unicode-supported: 1.3.0
dev: true
+ /log4js@6.9.1:
+ resolution: {integrity: sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==}
+ engines: {node: '>=8.0'}
+ dependencies:
+ date-format: 4.0.14
+ debug: 4.3.4
+ flatted: 3.3.1
+ rfdc: 1.3.1
+ streamroller: 3.1.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/logkitty@0.7.1:
resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==}
hasBin: true
@@ -8705,6 +11084,13 @@ packages:
dependencies:
'@jridgewell/sourcemap-codec': 1.4.15
+ /magic-string@0.30.8:
+ resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: true
+
/make-dir@2.1.0:
resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==}
engines: {node: '>=6'}
@@ -8713,6 +11099,20 @@ packages:
semver: 5.7.2
dev: true
+ /make-dir@3.1.0:
+ resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
+ engines: {node: '>=8'}
+ dependencies:
+ semver: 6.3.1
+ dev: true
+
+ /make-dir@4.0.0:
+ resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
+ engines: {node: '>=10'}
+ dependencies:
+ semver: 7.6.0
+ dev: true
+
/make-fetch-happen@10.2.1:
resolution: {integrity: sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==}
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
@@ -8761,6 +11161,25 @@ packages:
- supports-color
dev: true
+ /make-fetch-happen@13.0.0:
+ resolution: {integrity: sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@npmcli/agent': 2.2.2
+ cacache: 18.0.2
+ http-cache-semantics: 4.1.1
+ is-lambda: 1.0.1
+ minipass: 7.0.4
+ minipass-fetch: 3.0.4
+ minipass-flush: 1.0.5
+ minipass-pipeline: 1.2.4
+ negotiator: 0.6.3
+ promise-retry: 2.0.1
+ ssri: 10.0.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/make-fetch-happen@9.1.0:
resolution: {integrity: sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==}
engines: {node: '>= 10'}
@@ -8786,6 +11205,10 @@ packages:
- supports-color
dev: true
+ /make-synchronized@0.2.8:
+ resolution: {integrity: sha512-jtXnKYCxjmGaXiZhXbDbGPbh4YyTvIIbOgcQjtAboc4RSm9k3nyhTFvFQB0cfs7QFKuZXKe2D2RvOkv1c+vpxg==}
+ dev: true
+
/makeerror@1.0.12:
resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
dependencies:
@@ -8851,6 +11274,18 @@ packages:
resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==}
dev: true
+ /media-typer@0.3.0:
+ resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
+ /memfs@3.5.3:
+ resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==}
+ engines: {node: '>= 4.0.0'}
+ dependencies:
+ fs-monkey: 1.0.5
+ dev: true
+
/memoize-one@5.2.1:
resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==}
dev: true
@@ -8880,6 +11315,10 @@ packages:
is-what: 4.1.16
dev: true
+ /merge-descriptors@1.0.1:
+ resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==}
+ dev: true
+
/merge-stream@2.0.0:
resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
dev: true
@@ -8889,6 +11328,11 @@ packages:
engines: {node: '>= 8'}
dev: true
+ /methods@1.1.2:
+ resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
+ engines: {node: '>= 0.6'}
+ dev: true
+
/metro-babel-transformer@0.80.6:
resolution: {integrity: sha512-ssuoVC4OzqaOt3LpwfUbDfBlFGRu9v1Yf2JJnKPz0ROYHNjSBws4aUesqQQ/Ea8DbiH7TK4j4cJmm+XjdHmgqA==}
engines: {node: '>=18'}
@@ -8963,7 +11407,7 @@ packages:
resolution: {integrity: sha512-83eZaH2+B+jP92KuodPqXknzwmiboKAuZY4doRfTEEXAG57pNVNN6cqSRJlwDnmaTBKRffxoncBXbYqHQgulgg==}
engines: {node: '>=18'}
dependencies:
- terser: 5.28.1
+ terser: 5.29.1
dev: true
/metro-resolver@0.80.6:
@@ -9178,6 +11622,21 @@ packages:
engines: {node: '>=4'}
dev: true
+ /mini-css-extract-plugin@2.8.1(webpack@5.90.3):
+ resolution: {integrity: sha512-/1HDlyFRxWIZPI1ZpgqlZ8jMw/1Dp/dl3P0L1jtZ+zVcHqwPhGwaJwKL00WVgfnBy6PWCde9W65or7IIETImuA==}
+ engines: {node: '>= 12.13.0'}
+ peerDependencies:
+ webpack: ^5.0.0
+ dependencies:
+ schema-utils: 4.2.0
+ tapable: 2.2.1
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
+ /minimalistic-assert@1.0.1:
+ resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
+ dev: true
+
/minimatch@3.0.8:
resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==}
dependencies:
@@ -9231,6 +11690,13 @@ packages:
minipass: 3.3.6
dev: true
+ /minipass-collect@2.0.1:
+ resolution: {integrity: sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dependencies:
+ minipass: 7.0.4
+ dev: true
+
/minipass-fetch@1.4.1:
resolution: {integrity: sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==}
engines: {node: '>=8'}
@@ -9366,6 +11832,11 @@ packages:
engines: {node: '>=4'}
dev: true
+ /mrmime@2.0.0:
+ resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==}
+ engines: {node: '>=10'}
+ dev: true
+
/ms@2.0.0:
resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
dev: true
@@ -9382,6 +11853,14 @@ packages:
resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==}
dev: true
+ /multicast-dns@7.2.5:
+ resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==}
+ hasBin: true
+ dependencies:
+ dns-packet: 5.6.1
+ thunky: 1.1.0
+ dev: true
+
/multimatch@5.0.0:
resolution: {integrity: sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==}
engines: {node: '>=10'}
@@ -9422,6 +11901,17 @@ packages:
varstream: 0.3.2
dev: true
+ /needle@3.3.1:
+ resolution: {integrity: sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==}
+ engines: {node: '>= 4.4.x'}
+ hasBin: true
+ requiresBuild: true
+ dependencies:
+ iconv-lite: 0.6.3
+ sax: 1.3.0
+ dev: true
+ optional: true
+
/negotiator@0.6.3:
resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
engines: {node: '>= 0.6'}
@@ -9443,6 +11933,59 @@ packages:
type-fest: 2.19.0
dev: true
+ /ng-packagr@17.3.0(@angular/compiler-cli@17.3.4)(tslib@2.6.2)(typescript@5.3.3):
+ resolution: {integrity: sha512-kMSqxeDgv88SWCoapWNRRN1UdBgwu9/Pw/j7u2WFGmzrIWUFivNWBBSSL94kMxr2La+Z9wMwiL8EwKNvmCpg2A==}
+ engines: {node: ^18.13.0 || >=20.9.0}
+ hasBin: true
+ peerDependencies:
+ '@angular/compiler-cli': ^17.0.0 || ^17.2.0-next.0 || ^17.3.0-next.0
+ tailwindcss: ^2.0.0 || ^3.0.0
+ tslib: ^2.3.0
+ typescript: '>=5.2 <5.5'
+ peerDependenciesMeta:
+ tailwindcss:
+ optional: true
+ dependencies:
+ '@angular/compiler-cli': 17.3.4(@angular/compiler@17.3.4)(typescript@5.3.3)
+ '@rollup/plugin-json': 6.1.0(rollup@4.12.0)
+ '@rollup/plugin-node-resolve': 15.2.3(rollup@4.12.0)
+ '@rollup/wasm-node': 4.14.2
+ ajv: 8.12.0
+ ansi-colors: 4.1.3
+ browserslist: 4.23.0
+ cacache: 18.0.2
+ chokidar: 3.6.0
+ commander: 12.0.0
+ convert-source-map: 2.0.0
+ dependency-graph: 1.0.0
+ esbuild-wasm: 0.20.2
+ fast-glob: 3.3.2
+ find-cache-dir: 3.3.2
+ injection-js: 2.4.0
+ jsonc-parser: 3.2.1
+ less: 4.2.0
+ ora: 5.4.1
+ piscina: 4.4.0
+ postcss: 8.4.35
+ rxjs: 7.8.1
+ sass: 1.71.1
+ tslib: 2.6.2
+ typescript: 5.3.3
+ optionalDependencies:
+ esbuild: 0.20.1
+ rollup: 4.12.0
+ dev: true
+
+ /nice-napi@1.0.2:
+ resolution: {integrity: sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==}
+ os: ['!win32']
+ requiresBuild: true
+ dependencies:
+ node-addon-api: 3.2.1
+ node-gyp-build: 4.8.0
+ dev: true
+ optional: true
+
/no-case@2.3.2:
resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==}
dependencies:
@@ -9508,6 +12051,37 @@ packages:
formdata-polyfill: 4.0.10
dev: true
+ /node-forge@1.3.1:
+ resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==}
+ engines: {node: '>= 6.13.0'}
+ dev: true
+
+ /node-gyp-build@4.8.0:
+ resolution: {integrity: sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==}
+ hasBin: true
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ /node-gyp@10.1.0:
+ resolution: {integrity: sha512-B4J5M1cABxPc5PwfjhbV5hoy2DP9p8lFXASnEN6hugXOa61416tnTZ29x9sSwAd0o99XNIcpvDDy1swAExsVKA==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ hasBin: true
+ dependencies:
+ env-paths: 2.2.1
+ exponential-backoff: 3.1.1
+ glob: 10.3.10
+ graceful-fs: 4.2.11
+ make-fetch-happen: 13.0.0
+ nopt: 7.2.0
+ proc-log: 3.0.0
+ semver: 7.6.0
+ tar: 6.2.0
+ which: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/node-gyp@8.4.1:
resolution: {integrity: sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==}
engines: {node: '>= 10.12.0'}
@@ -9647,11 +12221,26 @@ packages:
validate-npm-package-license: 3.0.4
dev: true
+ /normalize-package-data@6.0.0:
+ resolution: {integrity: sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ hosted-git-info: 7.0.1
+ is-core-module: 2.13.1
+ semver: 7.6.0
+ validate-npm-package-license: 3.0.4
+ dev: true
+
/normalize-path@3.0.0:
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
engines: {node: '>=0.10.0'}
dev: true
+ /normalize-range@0.1.2:
+ resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
/normalize-url@8.0.0:
resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==}
engines: {node: '>=14.16'}
@@ -9686,8 +12275,25 @@ packages:
validate-npm-package-name: 5.0.0
dev: true
- /npm-packlist@7.0.4:
- resolution: {integrity: sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==}
+ /npm-package-arg@11.0.1:
+ resolution: {integrity: sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ hosted-git-info: 7.0.1
+ proc-log: 3.0.0
+ semver: 7.6.0
+ validate-npm-package-name: 5.0.0
+ dev: true
+
+ /npm-packlist@7.0.4:
+ resolution: {integrity: sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ dependencies:
+ ignore-walk: 6.0.4
+ dev: true
+
+ /npm-packlist@8.0.2:
+ resolution: {integrity: sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
dependencies:
ignore-walk: 6.0.4
@@ -9703,6 +12309,16 @@ packages:
semver: 7.6.0
dev: true
+ /npm-pick-manifest@9.0.0:
+ resolution: {integrity: sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ npm-install-checks: 6.3.0
+ npm-normalize-package-bin: 3.0.1
+ npm-package-arg: 11.0.1
+ semver: 7.6.0
+ dev: true
+
/npm-registry-fetch@14.0.5:
resolution: {integrity: sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -9718,6 +12334,22 @@ packages:
- supports-color
dev: true
+ /npm-registry-fetch@16.2.0:
+ resolution: {integrity: sha512-zVH+G0q1O2hqgQBUvQ2LWp6ujr6VJAeDnmWxqiMlCguvLexEzBnuQIwC70r04vcvCMAcYEIpA/rO9YyVi+fmJQ==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@npmcli/redact': 1.1.0
+ make-fetch-happen: 13.0.0
+ minipass: 7.0.4
+ minipass-fetch: 3.0.4
+ minipass-json-stream: 1.0.1
+ minizlib: 2.1.2
+ npm-package-arg: 11.0.1
+ proc-log: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/npm-run-path@4.0.1:
resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
engines: {node: '>=8'}
@@ -9823,6 +12455,10 @@ packages:
object-keys: 1.1.1
dev: true
+ /obuf@1.1.2:
+ resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==}
+ dev: true
+
/omggif@1.0.10:
resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==}
dev: true
@@ -9962,6 +12598,13 @@ packages:
yocto-queue: 0.1.0
dev: true
+ /p-limit@4.0.0:
+ resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ yocto-queue: 1.0.0
+ dev: true
+
/p-limit@5.0.0:
resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==}
engines: {node: '>=18'}
@@ -9990,6 +12633,13 @@ packages:
p-limit: 3.1.0
dev: true
+ /p-locate@6.0.0:
+ resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ p-limit: 4.0.0
+ dev: true
+
/p-map@4.0.0:
resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
engines: {node: '>=10'}
@@ -9997,6 +12647,14 @@ packages:
aggregate-error: 3.1.0
dev: true
+ /p-retry@4.6.2:
+ resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@types/retry': 0.12.0
+ retry: 0.13.1
+ dev: true
+
/p-try@2.2.0:
resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
engines: {node: '>=6'}
@@ -10069,6 +12727,34 @@ packages:
- supports-color
dev: true
+ /pacote@17.0.6:
+ resolution: {integrity: sha512-cJKrW21VRE8vVTRskJo78c/RCvwJCn1f4qgfxL4w77SOWrTCRcmfkYHlHtS0gqpgjv3zhXflRtgsrUCX5xwNnQ==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ hasBin: true
+ dependencies:
+ '@npmcli/git': 5.0.5
+ '@npmcli/installed-package-contents': 2.0.2
+ '@npmcli/promise-spawn': 7.0.1
+ '@npmcli/run-script': 7.0.4
+ cacache: 18.0.2
+ fs-minipass: 3.0.3
+ minipass: 7.0.4
+ npm-package-arg: 11.0.1
+ npm-packlist: 8.0.2
+ npm-pick-manifest: 9.0.0
+ npm-registry-fetch: 16.2.0
+ proc-log: 3.0.0
+ promise-retry: 2.0.1
+ read-package-json: 7.0.0
+ read-package-json-fast: 3.0.2
+ sigstore: 2.3.0
+ ssri: 10.0.5
+ tar: 6.2.0
+ transitivePeerDependencies:
+ - bluebird
+ - supports-color
+ dev: true
+
/pako@1.0.11:
resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
dev: true
@@ -10123,6 +12809,11 @@ packages:
lines-and-columns: 1.2.4
dev: true
+ /parse-node-version@1.0.1:
+ resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==}
+ engines: {node: '>= 0.10'}
+ dev: true
+
/parse-path@7.0.0:
resolution: {integrity: sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==}
dependencies:
@@ -10143,6 +12834,14 @@ packages:
parse-path: 7.0.0
dev: true
+ /parse5-html-rewriting-stream@7.0.0:
+ resolution: {integrity: sha512-mazCyGWkmCRWDI15Zp+UiCqMp/0dgEmkZRvhlsqqKYr4SsVm/TvnSpD9fCvqCA2zoWJcfRym846ejWBBHRiYEg==}
+ dependencies:
+ entities: 4.5.0
+ parse5: 7.1.2
+ parse5-sax-parser: 7.0.0
+ dev: true
+
/parse5-htmlparser2-tree-adapter@7.0.0:
resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==}
dependencies:
@@ -10150,6 +12849,12 @@ packages:
parse5: 7.1.2
dev: true
+ /parse5-sax-parser@7.0.0:
+ resolution: {integrity: sha512-5A+v2SNsq8T6/mG3ahcz8ZtQ0OUFTatxPbeidoMB7tkJSGDY3tdfl4MHovtLQHkEn5CGxijNWRQHhRQ6IRpXKg==}
+ dependencies:
+ parse5: 7.1.2
+ dev: true
+
/parse5@7.1.2:
resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==}
dependencies:
@@ -10182,6 +12887,11 @@ packages:
engines: {node: '>=8'}
dev: true
+ /path-exists@5.0.0:
+ resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dev: true
+
/path-is-absolute@1.0.1:
resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
engines: {node: '>=0.10.0'}
@@ -10221,6 +12931,10 @@ packages:
minipass: 7.0.4
dev: true
+ /path-to-regexp@0.1.7:
+ resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==}
+ dev: true
+
/path-to-regexp@6.2.1:
resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==}
dev: true
@@ -10264,6 +12978,11 @@ packages:
engines: {node: '>=8.6'}
dev: true
+ /picomatch@4.0.1:
+ resolution: {integrity: sha512-xUXwsxNjwTQ8K3GnT4pCJm+xq3RUPQbmkYJTP5aFIfNIvbcc/4MUxgBaaRSZJ6yGJZiGSyYlM6MzwTsRk8SYCg==}
+ engines: {node: '>=12'}
+ dev: true
+
/pify@2.3.0:
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
engines: {node: '>=0.10.0'}
@@ -10272,6 +12991,7 @@ packages:
/pify@4.0.1:
resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==}
engines: {node: '>=6'}
+ requiresBuild: true
dev: true
/pirates@4.0.6:
@@ -10279,6 +12999,12 @@ packages:
engines: {node: '>= 6'}
dev: true
+ /piscina@4.4.0:
+ resolution: {integrity: sha512-+AQduEJefrOApE4bV7KRmp3N2JnnyErlVqq4P/jmko4FPz9Z877BCccl/iB3FdrWSUkvbGV9Kan/KllJgat3Vg==}
+ optionalDependencies:
+ nice-napi: 1.0.2
+ dev: true
+
/pixelmatch@4.0.2:
resolution: {integrity: sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==}
hasBin: true
@@ -10293,6 +13019,20 @@ packages:
find-up: 3.0.0
dev: true
+ /pkg-dir@4.2.0:
+ resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ find-up: 4.1.0
+ dev: true
+
+ /pkg-dir@7.0.0:
+ resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==}
+ engines: {node: '>=14.16'}
+ dependencies:
+ find-up: 6.3.0
+ dev: true
+
/pkg-types@1.0.3:
resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==}
dependencies:
@@ -10317,6 +13057,85 @@ packages:
engines: {node: '>= 0.4'}
dev: true
+ /postcss-loader@8.1.1(postcss@8.4.35)(typescript@5.3.3)(webpack@5.90.3):
+ resolution: {integrity: sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==}
+ engines: {node: '>= 18.12.0'}
+ peerDependencies:
+ '@rspack/core': 0.x || 1.x
+ postcss: ^7.0.0 || ^8.0.1
+ webpack: ^5.0.0
+ peerDependenciesMeta:
+ '@rspack/core':
+ optional: true
+ webpack:
+ optional: true
+ dependencies:
+ cosmiconfig: 9.0.0(typescript@5.3.3)
+ jiti: 1.21.0
+ postcss: 8.4.35
+ semver: 7.6.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ transitivePeerDependencies:
+ - typescript
+ dev: true
+
+ /postcss-media-query-parser@0.2.3:
+ resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==}
+ dev: true
+
+ /postcss-modules-extract-imports@3.1.0(postcss@8.4.35):
+ resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ postcss: 8.4.35
+ dev: true
+
+ /postcss-modules-local-by-default@4.0.5(postcss@8.4.35):
+ resolution: {integrity: sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.4.35)
+ postcss: 8.4.35
+ postcss-selector-parser: 6.0.16
+ postcss-value-parser: 4.2.0
+ dev: true
+
+ /postcss-modules-scope@3.2.0(postcss@8.4.35):
+ resolution: {integrity: sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ postcss: 8.4.35
+ postcss-selector-parser: 6.0.16
+ dev: true
+
+ /postcss-modules-values@4.0.0(postcss@8.4.35):
+ resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.4.35)
+ postcss: 8.4.35
+ dev: true
+
+ /postcss-selector-parser@6.0.16:
+ resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==}
+ engines: {node: '>=4'}
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+ dev: true
+
+ /postcss-value-parser@4.2.0:
+ resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
+ dev: true
+
/postcss@8.4.35:
resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==}
engines: {node: ^10 || ^12 || >=14}
@@ -10505,6 +13324,14 @@ packages:
resolution: {integrity: sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==}
dev: true
+ /proxy-addr@2.0.7:
+ resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ forwarded: 0.2.0
+ ipaddr.js: 1.9.1
+ dev: true
+
/proxy-agent@6.4.0:
resolution: {integrity: sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==}
engines: {node: '>= 14'}
@@ -10643,6 +13470,18 @@ packages:
escape-goat: 4.0.0
dev: true
+ /qjobs@1.2.0:
+ resolution: {integrity: sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==}
+ engines: {node: '>=0.9'}
+ dev: true
+
+ /qs@6.11.0:
+ resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==}
+ engines: {node: '>=0.6'}
+ dependencies:
+ side-channel: 1.0.5
+ dev: true
+
/querystringify@2.2.0:
resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
dev: true
@@ -10667,11 +13506,27 @@ packages:
engines: {node: '>=10'}
dev: true
+ /randombytes@2.1.0:
+ resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
+ dependencies:
+ safe-buffer: 5.2.1
+ dev: true
+
/range-parser@1.2.1:
resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
engines: {node: '>= 0.6'}
dev: true
+ /raw-body@2.5.2:
+ resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ bytes: 3.1.2
+ http-errors: 2.0.0
+ iconv-lite: 0.4.24
+ unpipe: 1.0.0
+ dev: true
+
/rc@1.2.8:
resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
hasBin: true
@@ -10830,6 +13685,16 @@ packages:
npm-normalize-package-bin: 3.0.1
dev: true
+ /read-package-json@7.0.0:
+ resolution: {integrity: sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ glob: 10.3.10
+ json-parse-even-better-errors: 3.0.1
+ normalize-package-data: 6.0.0
+ npm-normalize-package-bin: 3.0.1
+ dev: true
+
/read-pkg-up@7.0.1:
resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
engines: {node: '>=8'}
@@ -10929,6 +13794,10 @@ packages:
strip-indent: 3.0.0
dev: true
+ /reflect-metadata@0.2.2:
+ resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==}
+ dev: true
+
/regenerate-unicode-properties@10.1.1:
resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==}
engines: {node: '>=4'}
@@ -10954,6 +13823,10 @@ packages:
'@babel/runtime': 7.24.0
dev: true
+ /regex-parser@2.3.0:
+ resolution: {integrity: sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==}
+ dev: true
+
/regexp.prototype.flags@1.5.2:
resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==}
engines: {node: '>= 0.4'}
@@ -11049,6 +13922,11 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /require-from-string@2.0.2:
+ resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
/require-main-filename@2.0.0:
resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==}
dev: true
@@ -11088,6 +13966,17 @@ packages:
resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
dev: true
+ /resolve-url-loader@5.0.0:
+ resolution: {integrity: sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==}
+ engines: {node: '>=12'}
+ dependencies:
+ adjust-sourcemap-loader: 4.0.0
+ convert-source-map: 1.9.0
+ loader-utils: 2.0.4
+ postcss: 8.4.35
+ source-map: 0.6.1
+ dev: true
+
/resolve@1.22.8:
resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
hasBin: true
@@ -11135,8 +14024,13 @@ packages:
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
dev: true
+ /rfdc@1.3.1:
+ resolution: {integrity: sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==}
+ dev: true
+
/rimraf@2.6.3:
resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==}
+ deprecated: Rimraf versions prior to v4 are no longer supported
hasBin: true
dependencies:
glob: 7.2.3
@@ -11322,7 +14216,6 @@ packages:
resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
dependencies:
tslib: 2.6.2
- dev: true
/sade@1.8.1:
resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
@@ -11382,6 +14275,33 @@ packages:
yargs: 17.7.2
dev: true
+ /sass-loader@14.1.1(node-sass@9.0.0)(sass@1.71.1)(webpack@5.90.3):
+ resolution: {integrity: sha512-QX8AasDg75monlybel38BZ49JP5Z+uSKfKwF2rO7S74BywaRmGQMUBw9dtkS+ekyM/QnP+NOrRYq8ABMZ9G8jw==}
+ engines: {node: '>= 18.12.0'}
+ peerDependencies:
+ '@rspack/core': 0.x || 1.x
+ node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
+ sass: ^1.3.0
+ sass-embedded: '*'
+ webpack: ^5.0.0
+ peerDependenciesMeta:
+ '@rspack/core':
+ optional: true
+ node-sass:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ webpack:
+ optional: true
+ dependencies:
+ neo-async: 2.6.2
+ node-sass: 9.0.0
+ sass: 1.71.1
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
/sass@1.71.1:
resolution: {integrity: sha512-wovtnV2PxzteLlfNzbgm1tFXPLoZILYAMJtvoXXkD7/+1uP41eKkIt1ypWq5/q2uT94qHjXehEYfmjKOvjL9sg==}
engines: {node: '>=14.0.0'}
@@ -11414,6 +14334,25 @@ packages:
loose-envify: 1.4.0
dev: true
+ /schema-utils@3.3.0:
+ resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==}
+ engines: {node: '>= 10.13.0'}
+ dependencies:
+ '@types/json-schema': 7.0.15
+ ajv: 6.12.6
+ ajv-keywords: 3.5.2(ajv@6.12.6)
+ dev: true
+
+ /schema-utils@4.2.0:
+ resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==}
+ engines: {node: '>= 12.13.0'}
+ dependencies:
+ '@types/json-schema': 7.0.15
+ ajv: 8.12.0
+ ajv-formats: 2.1.1(ajv@8.12.0)
+ ajv-keywords: 5.1.0(ajv@8.12.0)
+ dev: true
+
/scss-tokenizer@0.4.3:
resolution: {integrity: sha512-raKLgf1LI5QMQnG+RxHz6oK0sL3x3I4FN2UDLqgLOGO8hodECNnNh5BXn7fAyBxrA8zVzdQizQ6XjNJQ+uBwMw==}
dependencies:
@@ -11429,6 +14368,18 @@ packages:
kind-of: 6.0.3
dev: true
+ /select-hose@2.0.0:
+ resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==}
+ dev: true
+
+ /selfsigned@2.4.1:
+ resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==}
+ engines: {node: '>=10'}
+ dependencies:
+ '@types/node-forge': 1.3.11
+ node-forge: 1.3.1
+ dev: true
+
/semver-compare@1.0.0:
resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==}
dev: true
@@ -11484,6 +14435,12 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /serialize-javascript@6.0.2:
+ resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
+ dependencies:
+ randombytes: 2.1.0
+ dev: true
+
/seroval-plugins@1.0.4(seroval@1.0.4):
resolution: {integrity: sha512-DQ2IK6oQVvy8k+c2V5x5YCtUa/GGGsUwUBNN9UqohrZ0rWdUapBFpNMYP1bCyRHoxOJjdKGl+dieacFIpU/i1A==}
engines: {node: '>=10'}
@@ -11498,6 +14455,21 @@ packages:
engines: {node: '>=10'}
dev: true
+ /serve-index@1.9.1:
+ resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==}
+ engines: {node: '>= 0.8.0'}
+ dependencies:
+ accepts: 1.3.8
+ batch: 0.6.1
+ debug: 2.6.9
+ escape-html: 1.0.3
+ http-errors: 1.6.3
+ mime-types: 2.1.35
+ parseurl: 1.3.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/serve-static@1.15.0:
resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==}
engines: {node: '>= 0.8.0'}
@@ -11536,6 +14508,10 @@ packages:
has-property-descriptors: 1.0.2
dev: true
+ /setprototypeof@1.1.0:
+ resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==}
+ dev: true
+
/setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
dev: true
@@ -11625,6 +14601,20 @@ packages:
- supports-color
dev: true
+ /sigstore@2.3.0:
+ resolution: {integrity: sha512-q+o8L2ebiWD1AxD17eglf1pFrl9jtW7FHa0ygqY6EKvibK8JHyq9Z26v9MZXeDiw+RbfOJ9j2v70M10Hd6E06A==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@sigstore/bundle': 2.3.1
+ '@sigstore/core': 1.1.0
+ '@sigstore/protobuf-specs': 0.3.1
+ '@sigstore/sign': 2.3.0
+ '@sigstore/tuf': 2.3.2
+ '@sigstore/verify': 1.2.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/simple-concat@1.0.1:
resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==}
dev: true
@@ -11657,6 +14647,11 @@ packages:
engines: {node: '>=8'}
dev: true
+ /slash@4.0.0:
+ resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==}
+ engines: {node: '>=12'}
+ dev: true
+
/slash@5.1.0:
resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
engines: {node: '>=14.16'}
@@ -11681,6 +14676,52 @@ packages:
engines: {node: '>= 6.0.0', npm: '>= 3.0.0'}
dev: true
+ /socket.io-adapter@2.5.4:
+ resolution: {integrity: sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg==}
+ dependencies:
+ debug: 4.3.4
+ ws: 8.11.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /socket.io-parser@4.2.4:
+ resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==}
+ engines: {node: '>=10.0.0'}
+ dependencies:
+ '@socket.io/component-emitter': 3.1.1
+ debug: 4.3.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /socket.io@4.7.5:
+ resolution: {integrity: sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cors: 2.8.5
+ debug: 4.3.4
+ engine.io: 6.5.4
+ socket.io-adapter: 2.5.4
+ socket.io-parser: 4.2.4
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /sockjs@0.3.24:
+ resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==}
+ dependencies:
+ faye-websocket: 0.11.4
+ uuid: 8.3.2
+ websocket-driver: 0.7.4
+ dev: true
+
/socks-proxy-agent@6.2.1:
resolution: {integrity: sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==}
engines: {node: '>= 10'}
@@ -11696,18 +14737,29 @@ packages:
resolution: {integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==}
engines: {node: '>= 10'}
dependencies:
- agent-base: 6.0.2
+ agent-base: 6.0.2
+ debug: 4.3.4
+ socks: 2.8.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /socks-proxy-agent@8.0.2:
+ resolution: {integrity: sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==}
+ engines: {node: '>= 14'}
+ dependencies:
+ agent-base: 7.1.0
debug: 4.3.4
socks: 2.8.1
transitivePeerDependencies:
- supports-color
dev: true
- /socks-proxy-agent@8.0.2:
- resolution: {integrity: sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==}
+ /socks-proxy-agent@8.0.3:
+ resolution: {integrity: sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==}
engines: {node: '>= 14'}
dependencies:
- agent-base: 7.1.0
+ agent-base: 7.1.1
debug: 4.3.4
socks: 2.8.1
transitivePeerDependencies:
@@ -11755,6 +14807,17 @@ packages:
resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
engines: {node: '>=0.10.0'}
+ /source-map-loader@5.0.0(webpack@5.90.3):
+ resolution: {integrity: sha512-k2Dur7CbSLcAH73sBcIkV5xjPV4SzqO1NJ7+XaQl8if3VODDUj3FNchNGpqgJSKbvUfJuhVdv8K2Eu8/TNl2eA==}
+ engines: {node: '>= 18.12.0'}
+ peerDependencies:
+ webpack: ^5.72.1
+ dependencies:
+ iconv-lite: 0.6.3
+ source-map-js: 1.0.2
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
/source-map-support@0.5.21:
resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
dependencies:
@@ -11825,6 +14888,32 @@ packages:
spdx-ranges: 2.1.1
dev: true
+ /spdy-transport@3.0.0:
+ resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==}
+ dependencies:
+ debug: 4.3.4
+ detect-node: 2.1.0
+ hpack.js: 2.1.6
+ obuf: 1.1.2
+ readable-stream: 3.6.2
+ wbuf: 1.7.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /spdy@4.0.2:
+ resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ debug: 4.3.4
+ handle-thing: 2.0.1
+ http-deceiver: 1.2.7
+ select-hose: 2.0.0
+ spdy-transport: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/sprintf-js@1.0.3:
resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
dev: true
@@ -11908,6 +14997,17 @@ packages:
internal-slot: 1.0.7
dev: true
+ /streamroller@3.1.5:
+ resolution: {integrity: sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==}
+ engines: {node: '>=8.0'}
+ dependencies:
+ date-format: 4.0.14
+ debug: 4.3.4
+ fs-extra: 8.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/string-width@1.0.2:
resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==}
engines: {node: '>=0.10.0'}
@@ -12156,7 +15256,7 @@ packages:
dependencies:
'@types/pug': 2.0.10
detect-indent: 6.1.0
- magic-string: 0.30.7
+ magic-string: 0.30.8
sorcery: 0.11.0
strip-indent: 3.0.0
svelte: 4.2.12
@@ -12259,10 +15359,20 @@ packages:
xml-reader: 2.4.3
dev: true
+ /symbol-observable@4.0.0:
+ resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==}
+ engines: {node: '>=0.10'}
+ dev: true
+
/symbol-tree@3.2.4:
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
dev: true
+ /tapable@2.2.1:
+ resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
+ engines: {node: '>=6'}
+ dev: true
+
/tar-fs@2.1.1:
resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==}
dependencies:
@@ -12307,6 +15417,31 @@ packages:
rimraf: 2.6.3
dev: true
+ /terser-webpack-plugin@5.3.10(esbuild@0.20.1)(webpack@5.90.3):
+ resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==}
+ engines: {node: '>= 10.13.0'}
+ peerDependencies:
+ '@swc/core': '*'
+ esbuild: '*'
+ uglify-js: '*'
+ webpack: ^5.1.0
+ peerDependenciesMeta:
+ '@swc/core':
+ optional: true
+ esbuild:
+ optional: true
+ uglify-js:
+ optional: true
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.25
+ esbuild: 0.20.1
+ jest-worker: 27.5.1
+ schema-utils: 3.3.0
+ serialize-javascript: 6.0.2
+ terser: 5.29.1
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
/terser@5.28.1:
resolution: {integrity: sha512-wM+bZp54v/E9eRRGXb5ZFDvinrJIOaTapx3WUokyVGZu5ucVCK55zEgGd5Dl2fSr3jUo5sDiERErUWLY6QPFyA==}
engines: {node: '>=10'}
@@ -12318,6 +15453,26 @@ packages:
source-map-support: 0.5.21
dev: true
+ /terser@5.29.1:
+ resolution: {integrity: sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==}
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ '@jridgewell/source-map': 0.3.5
+ acorn: 8.11.3
+ commander: 2.20.3
+ source-map-support: 0.5.21
+ dev: true
+
+ /test-exclude@6.0.0:
+ resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@istanbuljs/schema': 0.1.3
+ glob: 7.2.3
+ minimatch: 3.1.2
+ dev: true
+
/throat@5.0.0:
resolution: {integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==}
dev: true
@@ -12329,6 +15484,10 @@ packages:
xtend: 4.0.2
dev: true
+ /thunky@1.1.0:
+ resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==}
+ dev: true
+
/timm@1.7.1:
resolution: {integrity: sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==}
dev: true
@@ -12358,6 +15517,11 @@ packages:
os-tmpdir: 1.0.2
dev: true
+ /tmp@0.2.3:
+ resolution: {integrity: sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==}
+ engines: {node: '>=14.14'}
+ dev: true
+
/tmpl@1.0.5:
resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==}
dev: true
@@ -12403,6 +15567,11 @@ packages:
punycode: 2.3.1
dev: true
+ /tree-kill@1.2.2:
+ resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
+ hasBin: true
+ dev: true
+
/trim-newlines@3.0.1:
resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==}
engines: {node: '>=8'}
@@ -12414,7 +15583,6 @@ packages:
/tslib@2.6.2:
resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
- dev: true
/ttf2eot@2.0.0:
resolution: {integrity: sha512-U56aG2Ylw7psLOmakjemAzmpqVgeadwENg9oaDjaZG5NYX4WB6+7h74bNPcc+0BXsoU5A/XWiHabDXyzFOmsxQ==}
@@ -12444,6 +15612,17 @@ packages:
- supports-color
dev: true
+ /tuf-js@2.2.0:
+ resolution: {integrity: sha512-ZSDngmP1z6zw+FIkIBjvOp/II/mIub/O7Pp12j1WNsiCpg5R5wAc//i555bBQsE44O94btLt0xM/Zr2LQjwdCg==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+ dependencies:
+ '@tufjs/models': 2.0.0
+ debug: 4.3.4
+ make-fetch-happen: 13.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/tunnel-agent@0.6.0:
resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==}
dependencies:
@@ -12555,6 +15734,14 @@ packages:
engines: {node: '>=12.20'}
dev: true
+ /type-is@1.6.18:
+ resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ media-typer: 0.3.0
+ mime-types: 2.1.35
+ dev: true
+
/typed-array-buffer@1.0.2:
resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
engines: {node: '>= 0.4'}
@@ -12599,6 +15786,10 @@ packages:
possible-typed-array-names: 1.0.0
dev: true
+ /typed-assert@1.0.9:
+ resolution: {integrity: sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==}
+ dev: true
+
/typedarray-to-buffer@3.1.5:
resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
dependencies:
@@ -12616,6 +15807,10 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ /ua-parser-js@0.7.37:
+ resolution: {integrity: sha512-xV8kqRKM+jhMvcHWUKthV9fNebIzrNy//2O9ZwWcfiBFR5f25XVZPLlEajk/sf3Ra15V92isyQqnIEXRDaZWEA==}
+ dev: true
+
/uc.micro@1.0.6:
resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==}
dev: true
@@ -12639,6 +15834,11 @@ packages:
which-boxed-primitive: 1.0.2
dev: true
+ /undici@6.11.1:
+ resolution: {integrity: sha512-KyhzaLJnV1qa3BSHdj4AZ2ndqI0QWPxYzaIOio0WzcEJB9gvuysprJSLtpvc2D9mhR9jPDUk7xlJlZbH2KR5iw==}
+ engines: {node: '>=18.0'}
+ dev: true
+
/unicode-canonical-property-names-ecmascript@2.0.0:
resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==}
engines: {node: '>=4'}
@@ -12771,6 +15971,12 @@ packages:
resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==}
dev: true
+ /uri-js@4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ dependencies:
+ punycode: 2.3.1
+ dev: true
+
/url-join@4.0.1:
resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==}
dev: true
@@ -12802,6 +16008,11 @@ packages:
engines: {node: '>= 0.4.0'}
dev: true
+ /uuid@8.3.2:
+ resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
+ hasBin: true
+ dev: true
+
/validate-html-nesting@1.2.2:
resolution: {integrity: sha512-hGdgQozCsQJMyfK5urgFcWEqsSSrK63Awe0t/IMR0bZ0QMtnuaiHzThW81guu3qx9abLi99NEuiaN6P9gVYsNg==}
dev: true
@@ -12861,7 +16072,7 @@ packages:
- terser
dev: true
- /vite-plugin-solid@2.10.1(@testing-library/jest-dom@6.4.2)(solid-js@1.8.15)(vite@5.1.4):
+ /vite-plugin-solid@2.10.1(@testing-library/jest-dom@6.4.2)(solid-js@1.8.15)(vite@5.1.7):
resolution: {integrity: sha512-kfVdNLWaJqaJVL52U6iCCKNW/nXE7bS1VVGOWPGllOkJfcNILymVSY0LCBLSnyy0iYnRtrXpiHm14rMuzeC7CA==}
peerDependencies:
'@testing-library/jest-dom': ^5.16.6 || ^5.17.0 || ^6.*
@@ -12878,8 +16089,8 @@ packages:
merge-anything: 5.1.7
solid-js: 1.8.15
solid-refresh: 0.6.3(solid-js@1.8.15)
- vite: 5.1.4
- vitefu: 0.2.5(vite@5.1.4)
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
+ vitefu: 0.2.5(vite@5.1.7)
transitivePeerDependencies:
- supports-color
dev: true
@@ -12919,7 +16130,45 @@ packages:
fsevents: 2.3.3
dev: true
- /vitefu@0.2.5(vite@5.1.4):
+ /vite@5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1):
+ resolution: {integrity: sha512-sgnEEFTZYMui/sTlH1/XEnVNHMujOahPLGMxn1+5sIT45Xjng1Ec1K78jRP15dSmVgg5WBin9yO81j3o9OxofA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': ^18.0.0 || >=20.0.0
+ less: '*'
+ lightningcss: ^1.21.0
+ sass: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.4.0
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ less:
+ optional: true
+ lightningcss:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ dependencies:
+ esbuild: 0.19.12
+ less: 4.2.0
+ postcss: 8.4.35
+ rollup: 4.12.0
+ sass: 1.71.1
+ terser: 5.29.1
+ optionalDependencies:
+ fsevents: 2.3.3
+ dev: true
+
+ /vitefu@0.2.5(vite@5.1.7):
resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==}
peerDependencies:
vite: ^3.0.0 || ^4.0.0 || ^5.0.0
@@ -12927,7 +16176,7 @@ packages:
vite:
optional: true
dependencies:
- vite: 5.1.4
+ vite: 5.1.7(less@4.2.0)(sass@1.71.1)(terser@5.29.1)
dev: true
/vitest@1.3.1(jsdom@24.0.0):
@@ -12990,6 +16239,11 @@ packages:
resolution: {integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==}
dev: true
+ /void-elements@2.0.1:
+ resolution: {integrity: sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
/void-elements@3.1.0:
resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==}
engines: {node: '>=0.10.0'}
@@ -13056,6 +16310,14 @@ packages:
makeerror: 1.0.12
dev: true
+ /watchpack@2.4.0:
+ resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ glob-to-regexp: 0.4.1
+ graceful-fs: 4.2.11
+ dev: true
+
/wawoff2@2.0.1:
resolution: {integrity: sha512-r0CEmvpH63r4T15ebFqeOjGqU4+EgTx4I510NtK35EMciSdcTxCw3Byy3JnBonz7iyIFZ0AbVo0bbFpEVuhCYA==}
hasBin: true
@@ -13063,6 +16325,12 @@ packages:
argparse: 2.0.1
dev: true
+ /wbuf@1.7.3:
+ resolution: {integrity: sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==}
+ dependencies:
+ minimalistic-assert: 1.0.1
+ dev: true
+
/wcwidth@1.0.1:
resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
dependencies:
@@ -13106,6 +16374,170 @@ packages:
engines: {node: '>=12'}
dev: true
+ /webpack-dev-middleware@5.3.4(webpack@5.90.3):
+ resolution: {integrity: sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==}
+ engines: {node: '>= 12.13.0'}
+ peerDependencies:
+ webpack: ^4.0.0 || ^5.0.0
+ dependencies:
+ colorette: 2.0.20
+ memfs: 3.5.3
+ mime-types: 2.1.35
+ range-parser: 1.2.1
+ schema-utils: 4.2.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
+ /webpack-dev-middleware@6.1.2(webpack@5.90.3):
+ resolution: {integrity: sha512-Wu+EHmX326YPYUpQLKmKbTyZZJIB8/n6R09pTmB03kJmnMsVPTo9COzHZFr01txwaCAuZvfBJE4ZCHRcKs5JaQ==}
+ engines: {node: '>= 14.15.0'}
+ peerDependencies:
+ webpack: ^5.0.0
+ peerDependenciesMeta:
+ webpack:
+ optional: true
+ dependencies:
+ colorette: 2.0.20
+ memfs: 3.5.3
+ mime-types: 2.1.35
+ range-parser: 1.2.1
+ schema-utils: 4.2.0
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
+ /webpack-dev-server@4.15.1(webpack@5.90.3):
+ resolution: {integrity: sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==}
+ engines: {node: '>= 12.13.0'}
+ hasBin: true
+ peerDependencies:
+ webpack: ^4.37.0 || ^5.0.0
+ webpack-cli: '*'
+ peerDependenciesMeta:
+ webpack:
+ optional: true
+ webpack-cli:
+ optional: true
+ dependencies:
+ '@types/bonjour': 3.5.13
+ '@types/connect-history-api-fallback': 1.5.4
+ '@types/express': 4.17.21
+ '@types/serve-index': 1.9.4
+ '@types/serve-static': 1.15.7
+ '@types/sockjs': 0.3.36
+ '@types/ws': 8.5.10
+ ansi-html-community: 0.0.8
+ bonjour-service: 1.2.1
+ chokidar: 3.6.0
+ colorette: 2.0.20
+ compression: 1.7.4
+ connect-history-api-fallback: 2.0.0
+ default-gateway: 6.0.3
+ express: 4.19.2
+ graceful-fs: 4.2.11
+ html-entities: 2.3.3
+ http-proxy-middleware: 2.0.6(@types/express@4.17.21)
+ ipaddr.js: 2.1.0
+ launch-editor: 2.6.1
+ open: 8.4.2
+ p-retry: 4.6.2
+ rimraf: 3.0.2
+ schema-utils: 4.2.0
+ selfsigned: 2.4.1
+ serve-index: 1.9.1
+ sockjs: 0.3.24
+ spdy: 4.0.2
+ webpack: 5.90.3(esbuild@0.20.1)
+ webpack-dev-middleware: 5.3.4(webpack@5.90.3)
+ ws: 8.16.0
+ transitivePeerDependencies:
+ - bufferutil
+ - debug
+ - supports-color
+ - utf-8-validate
+ dev: true
+
+ /webpack-merge@5.10.0:
+ resolution: {integrity: sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==}
+ engines: {node: '>=10.0.0'}
+ dependencies:
+ clone-deep: 4.0.1
+ flat: 5.0.2
+ wildcard: 2.0.1
+ dev: true
+
+ /webpack-sources@3.2.3:
+ resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
+ engines: {node: '>=10.13.0'}
+ dev: true
+
+ /webpack-subresource-integrity@5.1.0(webpack@5.90.3):
+ resolution: {integrity: sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==}
+ engines: {node: '>= 12'}
+ peerDependencies:
+ html-webpack-plugin: '>= 5.0.0-beta.1 < 6'
+ webpack: ^5.12.0
+ peerDependenciesMeta:
+ html-webpack-plugin:
+ optional: true
+ dependencies:
+ typed-assert: 1.0.9
+ webpack: 5.90.3(esbuild@0.20.1)
+ dev: true
+
+ /webpack@5.90.3(esbuild@0.20.1):
+ resolution: {integrity: sha512-h6uDYlWCctQRuXBs1oYpVe6sFcWedl0dpcVaTf/YF67J9bKvwJajFulMVSYKHrksMB3I/pIagRzDxwxkebuzKA==}
+ engines: {node: '>=10.13.0'}
+ hasBin: true
+ peerDependencies:
+ webpack-cli: '*'
+ peerDependenciesMeta:
+ webpack-cli:
+ optional: true
+ dependencies:
+ '@types/eslint-scope': 3.7.7
+ '@types/estree': 1.0.5
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/wasm-edit': 1.12.1
+ '@webassemblyjs/wasm-parser': 1.12.1
+ acorn: 8.11.3
+ acorn-import-assertions: 1.9.0(acorn@8.11.3)
+ browserslist: 4.23.0
+ chrome-trace-event: 1.0.3
+ enhanced-resolve: 5.16.0
+ es-module-lexer: 1.4.1
+ eslint-scope: 5.1.1
+ events: 3.3.0
+ glob-to-regexp: 0.4.1
+ graceful-fs: 4.2.11
+ json-parse-even-better-errors: 2.3.1
+ loader-runner: 4.3.0
+ mime-types: 2.1.35
+ neo-async: 2.6.2
+ schema-utils: 3.3.0
+ tapable: 2.2.1
+ terser-webpack-plugin: 5.3.10(esbuild@0.20.1)(webpack@5.90.3)
+ watchpack: 2.4.0
+ webpack-sources: 3.2.3
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - uglify-js
+ dev: true
+
+ /websocket-driver@0.7.4:
+ resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==}
+ engines: {node: '>=0.8.0'}
+ dependencies:
+ http-parser-js: 0.5.8
+ safe-buffer: 5.2.1
+ websocket-extensions: 0.1.4
+ dev: true
+
+ /websocket-extensions@0.1.4:
+ resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==}
+ engines: {node: '>=0.8.0'}
+ dev: true
+
/whatwg-encoding@3.1.1:
resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==}
engines: {node: '>=18'}
@@ -13171,6 +16603,13 @@ packages:
has-tostringtag: 1.0.2
dev: true
+ /which@1.3.1:
+ resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
+ hasBin: true
+ dependencies:
+ isexe: 2.0.0
+ dev: true
+
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -13187,6 +16626,14 @@ packages:
isexe: 2.0.0
dev: true
+ /which@4.0.0:
+ resolution: {integrity: sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==}
+ engines: {node: ^16.13.0 || >=18.0.0}
+ hasBin: true
+ dependencies:
+ isexe: 3.1.1
+ dev: true
+
/why-is-node-running@2.2.2:
resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==}
engines: {node: '>=8'}
@@ -13220,6 +16667,10 @@ packages:
resolution: {integrity: sha512-qNXwI591Z88c8bWxp+yjV60Ch4F8Riawe3iGxbzquhy8Xs9m+0+SLFBGb/0yCTIDElawtaImC37fYZ+dr32KqQ==}
dev: true
+ /wildcard@2.0.1:
+ resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==}
+ dev: true
+
/windows-release@5.1.1:
resolution: {integrity: sha512-NMD00arvqcq2nwqc5Q6KtrSRHK+fVD31erE5FEMahAw5PmVCgD7MUXodq3pdZSUkqA9Cda2iWx6s1XYwiJWRmw==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -13316,6 +16767,19 @@ packages:
optional: true
dev: true
+ /ws@8.11.0:
+ resolution: {integrity: sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==}
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: ^5.0.2
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+ dev: true
+
/ws@8.16.0:
resolution: {integrity: sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==}
engines: {node: '>=10.0.0'}
@@ -13453,6 +16917,19 @@ packages:
yargs-parser: 18.1.3
dev: true
+ /yargs@16.2.0:
+ resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
+ engines: {node: '>=10'}
+ dependencies:
+ cliui: 7.0.4
+ escalade: 3.1.2
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 20.2.9
+ dev: true
+
/yargs@17.7.2:
resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
engines: {node: '>=12'}
@@ -13475,3 +16952,8 @@ packages:
resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
engines: {node: '>=12.20'}
dev: true
+
+ /zone.js@0.14.4:
+ resolution: {integrity: sha512-NtTUvIlNELez7Q1DzKVIFZBzNb646boQMgpATo9z3Ftuu/gWvzxCW7jdjcUDoRGxRikrhVHB/zLXh1hxeJawvw==}
+ dependencies:
+ tslib: 2.6.2
diff --git a/test/test-angular/.gitignore b/test/test-angular/.gitignore
new file mode 100644
index 0000000000..611ff38885
--- /dev/null
+++ b/test/test-angular/.gitignore
@@ -0,0 +1,44 @@
+# See http://help.github.com/ignore-files/ for more about ignoring files.
+
+# Compiled output
+/dist
+/tmp
+/out-tsc
+/bazel-out
+
+# Node
+/node_modules
+npm-debug.log
+yarn-error.log
+
+# IDEs and editors
+.idea/
+.project
+.classpath
+.c9/
+*.launch
+.settings/
+*.sublime-workspace
+
+# Visual Studio Code
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+.history/*
+
+# Miscellaneous
+/.angular/cache
+.sass-cache/
+/connect.lock
+/coverage
+/libpeerconnection.log
+testem.log
+/typings
+
+# System files
+.DS_Store
+Thumbs.db
+
+.vscode
diff --git a/test/test-angular/README.md b/test/test-angular/README.md
new file mode 100644
index 0000000000..156ccd81aa
--- /dev/null
+++ b/test/test-angular/README.md
@@ -0,0 +1,27 @@
+# TestAngular
+
+This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 17.2.2.
+
+## Development server
+
+Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The application will automatically reload if you change any of the source files.
+
+## Code scaffolding
+
+Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
+
+## Build
+
+Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.
+
+## Running unit tests
+
+Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
+
+## Running end-to-end tests
+
+Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.
+
+## Further help
+
+To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
diff --git a/test/test-angular/angular.json b/test/test-angular/angular.json
new file mode 100644
index 0000000000..0eca06d4c1
--- /dev/null
+++ b/test/test-angular/angular.json
@@ -0,0 +1,107 @@
+{
+ "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
+ "version": 1,
+ "cli": {
+ "packageManager": "pnpm"
+ },
+ "newProjectRoot": "projects",
+ "projects": {
+ "test-angular": {
+ "projectType": "application",
+ "schematics": {
+ "@schematics/angular:component": {
+ "inlineTemplate": true,
+ "inlineStyle": true,
+ "skipTests": true
+ },
+ "@schematics/angular:class": {
+ "skipTests": true
+ },
+ "@schematics/angular:directive": {
+ "skipTests": true
+ },
+ "@schematics/angular:guard": {
+ "skipTests": true
+ },
+ "@schematics/angular:interceptor": {
+ "skipTests": true
+ },
+ "@schematics/angular:pipe": {
+ "skipTests": true
+ },
+ "@schematics/angular:resolver": {
+ "skipTests": true
+ },
+ "@schematics/angular:service": {
+ "skipTests": true
+ }
+ },
+ "root": "",
+ "sourceRoot": "src",
+ "prefix": "app",
+ "architect": {
+ "build": {
+ "builder": "@angular-devkit/build-angular:application",
+ "options": {
+ "outputPath": "dist/test-angular",
+ "index": "src/index.html",
+ "browser": "src/main.ts",
+ "polyfills": [
+ "zone.js"
+ ],
+ "tsConfig": "tsconfig.app.json",
+ "assets": [
+ "src/favicon.ico",
+ "src/assets"
+ ],
+ "styles": [
+ "src/styles.css"
+ ],
+ "scripts": []
+ },
+ "configurations": {
+ "production": {
+ "budgets": [
+ {
+ "type": "initial",
+ "maximumWarning": "500kb",
+ "maximumError": "1mb"
+ },
+ {
+ "type": "anyComponentStyle",
+ "maximumWarning": "2kb",
+ "maximumError": "4kb"
+ }
+ ],
+ "outputHashing": "all"
+ },
+ "development": {
+ "optimization": false,
+ "extractLicenses": false,
+ "sourceMap": true
+ }
+ },
+ "defaultConfiguration": "production"
+ },
+ "serve": {
+ "builder": "@angular-devkit/build-angular:dev-server",
+ "configurations": {
+ "production": {
+ "buildTarget": "test-angular:build:production"
+ },
+ "development": {
+ "buildTarget": "test-angular:build:development"
+ }
+ },
+ "defaultConfiguration": "development"
+ },
+ "extract-i18n": {
+ "builder": "@angular-devkit/build-angular:extract-i18n",
+ "options": {
+ "buildTarget": "test-angular:build"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/test/test-angular/package.json b/test/test-angular/package.json
new file mode 100644
index 0000000000..d80d62b601
--- /dev/null
+++ b/test/test-angular/package.json
@@ -0,0 +1,32 @@
+{
+ "name": "test-angular",
+ "private": true,
+ "version": "3.7.0-alpha.1",
+ "type": "module",
+ "scripts": {
+ "ng": "ng",
+ "start": "ng serve",
+ "build": "ng build",
+ "watch": "ng build --watch --configuration development"
+ },
+ "dependencies": {
+ "@angular/animations": "^17.3.11",
+ "@angular/common": "^17.3.11",
+ "@angular/compiler": "^17.3.11",
+ "@angular/core": "^17.3.11",
+ "@angular/forms": "^17.3.11",
+ "@angular/platform-browser": "^17.3.11",
+ "@angular/platform-browser-dynamic": "^17.3.11",
+ "@angular/router": "^17.3.11",
+ "@tabler/icons-angular": "^3.7.0-alpha.1",
+ "rxjs": "~7.8.0",
+ "tslib": "^2.3.0",
+ "zone.js": "~0.14.3"
+ },
+ "devDependencies": {
+ "@angular-devkit/build-angular": "^17.3.8",
+ "@angular/cli": "^17.3.8",
+ "@angular/compiler-cli": "^17.3.11",
+ "typescript": "~5.3.2"
+ }
+}
diff --git a/test/test-angular/src/app/app.component.ts b/test/test-angular/src/app/app.component.ts
new file mode 100644
index 0000000000..1a98194485
--- /dev/null
+++ b/test/test-angular/src/app/app.component.ts
@@ -0,0 +1,17 @@
+import { Component } from '@angular/core';
+import { RouterOutlet } from '@angular/router';
+
+@Component({
+ selector: 'app-root',
+ standalone: true,
+ imports: [RouterOutlet],
+ template: `
+ Welcome to {{title}}!
+
+
+ `,
+ styles: [],
+})
+export class AppComponent {
+ title = 'test-angular';
+}
diff --git a/test/test-angular/src/app/app.config.ts b/test/test-angular/src/app/app.config.ts
new file mode 100644
index 0000000000..8e5a26c5f1
--- /dev/null
+++ b/test/test-angular/src/app/app.config.ts
@@ -0,0 +1,13 @@
+import { ApplicationConfig, importProvidersFrom } from '@angular/core';
+import { provideRouter } from '@angular/router';
+import { IconAB, IconAlertSmall, IconBadge8k, IconHome } from '@tabler/icons-angular/src/icons';
+import { TablerIconModule } from '@tabler/icons-angular/src/lib/tabler-icon.module';
+
+import { routes } from './app.routes';
+
+export const appConfig: ApplicationConfig = {
+ providers: [
+ provideRouter(routes),
+ importProvidersFrom(TablerIconModule.pick({ IconAB, IconBadge8k, IconHome, IconAlertSmall })),
+ ]
+};
diff --git a/test/test-angular/src/app/app.routes.ts b/test/test-angular/src/app/app.routes.ts
new file mode 100644
index 0000000000..dc39edb5f2
--- /dev/null
+++ b/test/test-angular/src/app/app.routes.ts
@@ -0,0 +1,3 @@
+import { Routes } from '@angular/router';
+
+export const routes: Routes = [];
diff --git a/test/test-angular/src/assets/.gitkeep b/test/test-angular/src/assets/.gitkeep
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/test/test-angular/src/favicon.ico b/test/test-angular/src/favicon.ico
new file mode 100644
index 0000000000..57614f9c96
Binary files /dev/null and b/test/test-angular/src/favicon.ico differ
diff --git a/test/test-angular/src/index.html b/test/test-angular/src/index.html
new file mode 100644
index 0000000000..04069781b9
--- /dev/null
+++ b/test/test-angular/src/index.html
@@ -0,0 +1,13 @@
+
+
+
+
+ TestAngular
+
+
+
+
+
+
+
+
diff --git a/test/test-angular/src/main.ts b/test/test-angular/src/main.ts
new file mode 100644
index 0000000000..35b00f3463
--- /dev/null
+++ b/test/test-angular/src/main.ts
@@ -0,0 +1,6 @@
+import { bootstrapApplication } from '@angular/platform-browser';
+import { appConfig } from './app/app.config';
+import { AppComponent } from './app/app.component';
+
+bootstrapApplication(AppComponent, appConfig)
+ .catch((err) => console.error(err));
diff --git a/test/test-angular/src/styles.css b/test/test-angular/src/styles.css
new file mode 100644
index 0000000000..90d4ee0072
--- /dev/null
+++ b/test/test-angular/src/styles.css
@@ -0,0 +1 @@
+/* You can add global styles to this file, and also import other style files */
diff --git a/test/test-angular/tsconfig.app.json b/test/test-angular/tsconfig.app.json
new file mode 100644
index 0000000000..374cc9d294
--- /dev/null
+++ b/test/test-angular/tsconfig.app.json
@@ -0,0 +1,14 @@
+/* To learn more about this file see: https://angular.io/config/tsconfig. */
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "outDir": "./out-tsc/app",
+ "types": []
+ },
+ "files": [
+ "src/main.ts"
+ ],
+ "include": [
+ "src/**/*.d.ts"
+ ]
+}
diff --git a/test/test-angular/tsconfig.json b/test/test-angular/tsconfig.json
new file mode 100644
index 0000000000..f37b67ff02
--- /dev/null
+++ b/test/test-angular/tsconfig.json
@@ -0,0 +1,33 @@
+/* To learn more about this file see: https://angular.io/config/tsconfig. */
+{
+ "compileOnSave": false,
+ "compilerOptions": {
+ "outDir": "./dist/out-tsc",
+ "forceConsistentCasingInFileNames": true,
+ "strict": true,
+ "noImplicitOverride": true,
+ "noPropertyAccessFromIndexSignature": true,
+ "noImplicitReturns": true,
+ "noFallthroughCasesInSwitch": true,
+ "skipLibCheck": true,
+ "esModuleInterop": true,
+ "sourceMap": true,
+ "declaration": false,
+ "experimentalDecorators": true,
+ "moduleResolution": "node",
+ "importHelpers": true,
+ "target": "ES2022",
+ "module": "ES2022",
+ "useDefineForClassFields": false,
+ "lib": [
+ "ES2022",
+ "dom"
+ ]
+ },
+ "angularCompilerOptions": {
+ "enableI18nLegacyMessageIdFormat": false,
+ "strictInjectionParameters": true,
+ "strictInputAccessModifiers": true,
+ "strictTemplates": true
+ }
+}