diff --git a/build.gradle b/build.gradle
index 37c9069..ee08e4e 100644
--- a/build.gradle
+++ b/build.gradle
@@ -53,4 +53,5 @@ build {
halo {
version = '2.15'
+ debug = true
}
diff --git a/packages/hyperlink-card/index.html b/packages/hyperlink-card/index.html
index e4f3644..3c0ebab 100644
--- a/packages/hyperlink-card/index.html
+++ b/packages/hyperlink-card/index.html
@@ -2,12 +2,71 @@
-
Hyperlink Card Preview
+
+
-
+
+
+
+
+
+
+
+ 123123
+
+
+
+
+
+
+
+
+
diff --git a/packages/hyperlink-card/package.json b/packages/hyperlink-card/package.json
index 83152fc..d23283a 100644
--- a/packages/hyperlink-card/package.json
+++ b/packages/hyperlink-card/package.json
@@ -15,19 +15,23 @@
".": {
"types": "./dist/index.d.ts",
"import": "./dist/hyperlink-card.js"
- }
+ },
+ "./var.css": "./var.css"
},
"main": "./dist/hyperlink-card.js",
"module": "./dist/hyperlink-card.js",
"types": "./dist/index.d.ts",
"files": [
- "dist"
+ "dist",
+ "var.css"
],
"scripts": {
"dev": "vite --config vite.config.dev.ts",
"build": "vite build --config vite.config.lib.ts",
"lint": "lit-analyzer && eslint 'src/**/*.ts'",
- "prettier": "prettier \"**/*.{cjs,html,js,json,md,ts}\" --ignore-path ./.gitignore --write"
+ "prettier": "prettier \"**/*.{cjs,html,js,json,md,ts}\" --ignore-path ./.gitignore --write",
+ "test": "vitest",
+ "test:ci": "vitest --run"
},
"dependencies": {
"lit": "^3.1.3"
@@ -49,6 +53,7 @@
"typescript": "^5.4.5",
"unocss": "^0.60.4",
"vite": "^5.2.12",
- "vite-plugin-dts": "^3.9.1"
+ "vite-plugin-dts": "^3.9.1",
+ "vitest": "^1.6.0"
}
}
diff --git a/packages/hyperlink-card/src/hyperlink-card.ts b/packages/hyperlink-card/src/hyperlink-card.ts
index 8fc79b8..c34cd7e 100644
--- a/packages/hyperlink-card/src/hyperlink-card.ts
+++ b/packages/hyperlink-card/src/hyperlink-card.ts
@@ -1,25 +1,24 @@
import resetStyles from '@unocss/reset/tailwind.css?inline';
import { LitElement, css, html, unsafeCSS } from 'lit';
import { property, state } from 'lit/decorators.js';
-import { styleMap } from 'lit/directives/style-map.js';
import './loading-bar';
+import './themes/grid-card';
+import './themes/regular-card';
+import './themes/small-card';
+import { SiteData } from './types';
export class HyperlinkCard extends LitElement {
@property({ type: String })
- href = location.href; // Mock
+ href = '';
@property({ type: String })
target: '_blank' | '_self' = '_self';
@property({ type: String })
- theme: 'normal' | 'big' = 'normal';
+ theme: 'small' | 'regular' | 'grid' = 'regular';
- // Mock
@state()
- siteTitle = '';
-
- @state()
- siteDescription = '';
+ siteData?: SiteData;
@state()
loading = false;
@@ -33,14 +32,15 @@ export class HyperlinkCard extends LitElement {
// Mock
try {
this.loading = true;
- const response = await fetch(this.href);
- const html = await response.text();
- const parser = new DOMParser();
- const doc = parser.parseFromString(html, 'text/html');
- const title = doc.querySelector('title')?.textContent;
- const description = doc.querySelector('meta[name="description"]')?.getAttribute('content');
- this.siteTitle = title || '';
- this.siteDescription = description || '';
+ const response = await fetch(
+ `/apis/api.hyperlink.halo.run/v1alpha1/link-detail?url=${this.href}`
+ );
+
+ if (!response.ok) {
+ throw new Error('Failed to fetch site data');
+ }
+
+ this.siteData = (await response.json()) as SiteData;
} catch (error) {
console.error(error);
} finally {
@@ -48,44 +48,47 @@ export class HyperlinkCard extends LitElement {
}
}
+ renderCard() {
+ switch (this.theme) {
+ case 'small':
+ return html``;
+ case 'regular':
+ return html``;
+ case 'grid':
+ return html``;
+ default:
+ return html``;
+ }
+ }
+
override render() {
- return this.loading
- ? html``
- : html`
-
-
-
-
-
-
-
- https://www.halo.run
-
-
-
Halo - 强大易用的开源建站工具
-
-
- Halo
- 是一款强大易用的开源建站工具,配合上不同的模板与插件,可以很好地帮助你构建你心中的理想站点。
-
-
-
- `;
+ if (this.loading) {
+ return html``;
+ }
+
+ return html`
+
+ ${this.siteData
+ ? html` ${this.renderCard()} `
+ : html`${this.href}`}
+
+ `;
}
static override styles = [
diff --git a/packages/hyperlink-card/src/hyperlink-inline-card.ts b/packages/hyperlink-card/src/hyperlink-inline-card.ts
new file mode 100644
index 0000000..58e6e79
--- /dev/null
+++ b/packages/hyperlink-card/src/hyperlink-inline-card.ts
@@ -0,0 +1,94 @@
+import resetStyles from '@unocss/reset/tailwind.css?inline';
+import { LitElement, css, html, unsafeCSS } from 'lit';
+import { property, state } from 'lit/decorators.js';
+import { SiteData } from './types';
+
+export class HyperlinkInlineCard extends LitElement {
+ @property({ type: String })
+ href = '';
+
+ @property({ type: String })
+ target: '_blank' | '_self' = '_self';
+
+ @state()
+ siteData?: SiteData;
+
+ @state()
+ loading = false;
+
+ override connectedCallback() {
+ super.connectedCallback();
+ this.fetchSiteData();
+ }
+
+ async fetchSiteData() {
+ // Mock
+ try {
+ this.loading = true;
+ const response = await fetch(
+ `/apis/api.hyperlink.halo.run/v1alpha1/link-detail?url=${this.href}`
+ );
+
+ if (!response.ok) {
+ throw new Error('Failed to fetch site data');
+ }
+
+ this.siteData = (await response.json()) as SiteData;
+ } catch (error) {
+ console.error(error);
+ } finally {
+ this.loading = false;
+ }
+ }
+
+ override render() {
+ const fallback = html`
+ ${this.href}
+ `;
+
+ if (this.loading) {
+ return fallback;
+ }
+
+ if (this.siteData) {
+ return html`
+ ${!!this.siteData.icon || !!this.siteData.image
+ ? html``
+ : ''}
+ ${this.siteData.title || this.href}
+ ${!this.href.startsWith(location.origin)
+ ? html` `
+ : ''}
+ `;
+ }
+
+ return fallback;
+ }
+
+ static override styles = [
+ unsafeCSS(resetStyles),
+ css`
+ :host {
+ display: inline-block;
+ vertical-align: middle;
+ }
+ @unocss-placeholder;
+ `,
+ ];
+}
+
+customElements.get('hyperlink-inline-card') ||
+ customElements.define('hyperlink-inline-card', HyperlinkInlineCard);
+
+declare global {
+ interface HTMLElementTagNameMap {
+ 'hyperlink-inline-card': HyperlinkInlineCard;
+ }
+}
diff --git a/packages/hyperlink-card/src/index.ts b/packages/hyperlink-card/src/index.ts
index 7ff7a4a..ff32c00 100644
--- a/packages/hyperlink-card/src/index.ts
+++ b/packages/hyperlink-card/src/index.ts
@@ -1 +1,3 @@
export * from './hyperlink-card';
+export * from './hyperlink-inline-card';
+
diff --git a/packages/hyperlink-card/src/themes/grid-card.ts b/packages/hyperlink-card/src/themes/grid-card.ts
new file mode 100644
index 0000000..484817a
--- /dev/null
+++ b/packages/hyperlink-card/src/themes/grid-card.ts
@@ -0,0 +1,65 @@
+import resetStyles from '@unocss/reset/tailwind.css?inline';
+import { LitElement, css, html, unsafeCSS } from 'lit';
+import { property } from 'lit/decorators.js';
+import { styleMap } from 'lit/directives/style-map.js';
+import { SiteData } from '../types';
+
+export class HyperlinkGridCard extends LitElement {
+ @property({ type: String })
+ href: string = '';
+
+ @property({ type: Object })
+ siteData?: SiteData;
+
+ override render() {
+ return html`
+ ${this.siteData?.image
+ ? html`
+
+ `
+ : ''}
+ ${this.siteData?.image || this.siteData?.icon
+ ? html`
+
+
`
+ : ''}
+
+
+
${this.siteData?.url}
+
${this.siteData?.title}
+
${this.siteData?.description}
+
+
`;
+ }
+
+ static override styles = [
+ unsafeCSS(resetStyles),
+ css`
+ :host {
+ display: inline-block;
+ width: 100%;
+ }
+ @unocss-placeholder;
+ `,
+ ];
+}
+
+customElements.get('hyperlink-grid-card') ||
+ customElements.define('hyperlink-grid-card', HyperlinkGridCard);
+
+declare global {
+ interface HTMLElementTagNameMap {
+ 'hyperlink-grid-card': HyperlinkGridCard;
+ }
+}
diff --git a/packages/hyperlink-card/src/themes/regular-card.ts b/packages/hyperlink-card/src/themes/regular-card.ts
new file mode 100644
index 0000000..16734a4
--- /dev/null
+++ b/packages/hyperlink-card/src/themes/regular-card.ts
@@ -0,0 +1,73 @@
+import resetStyles from '@unocss/reset/tailwind.css?inline';
+import { LitElement, css, html, unsafeCSS } from 'lit';
+import { property } from 'lit/decorators.js';
+import { styleMap } from 'lit/directives/style-map.js';
+import { SiteData } from '../types';
+
+export class HyperlinkRegularCard extends LitElement {
+ @property({ type: String })
+ href: string = '';
+
+ @property({ type: Object })
+ siteData?: SiteData;
+
+ override render() {
+ return html`
+ ${this.siteData?.image
+ ? html`
+
+ `
+ : ''}
+ ${this.siteData?.image
+ ? html`
+
+
`
+ : ''}
+ ${!this.siteData?.image && this.siteData?.icon
+ ? html`
+
+
`
+ : ''}
+
+
+
+ ${this.siteData?.url}
+
+
+
+ ${this.siteData?.title}
+
+
+
${this.siteData?.description}
+
+
`;
+ }
+
+ static override styles = [
+ unsafeCSS(resetStyles),
+ css`
+ :host {
+ display: inline-block;
+ width: 100%;
+ }
+ @unocss-placeholder;
+ `,
+ ];
+}
+
+customElements.get('hyperlink-regular-card') ||
+ customElements.define('hyperlink-regular-card', HyperlinkRegularCard);
+
+declare global {
+ interface HTMLElementTagNameMap {
+ 'hyperlink-regular-card': HyperlinkRegularCard;
+ }
+}
diff --git a/packages/hyperlink-card/src/themes/small-card.ts b/packages/hyperlink-card/src/themes/small-card.ts
new file mode 100644
index 0000000..2e642fd
--- /dev/null
+++ b/packages/hyperlink-card/src/themes/small-card.ts
@@ -0,0 +1,50 @@
+import resetStyles from '@unocss/reset/tailwind.css?inline';
+import { LitElement, css, html, unsafeCSS } from 'lit';
+import { property } from 'lit/decorators.js';
+import { SiteData } from '../types';
+export class HyperlinkSmallCard extends LitElement {
+ @property({ type: String })
+ href: string = '';
+
+ @property({ type: Object })
+ siteData?: SiteData;
+ override render() {
+ return html`
+
+ ${this.siteData?.image
+ ? html`
+
+
`
+ : ''}
+
+
+ ${this.siteData?.title}
+
+
${this.siteData?.description}
+
+ `;
+ }
+
+ static override styles = [
+ unsafeCSS(resetStyles),
+ css`
+ :host {
+ display: inline-block;
+ width: 100%;
+ }
+ @unocss-placeholder;
+ `,
+ ];
+}
+
+customElements.get('hyperlink-small-card') ||
+ customElements.define('hyperlink-small-card', HyperlinkSmallCard);
+
+declare global {
+ interface HTMLElementTagNameMap {
+ 'hyperlink-small-card': HyperlinkSmallCard;
+ }
+}
diff --git a/packages/hyperlink-card/src/types/index.ts b/packages/hyperlink-card/src/types/index.ts
new file mode 100644
index 0000000..690d914
--- /dev/null
+++ b/packages/hyperlink-card/src/types/index.ts
@@ -0,0 +1,7 @@
+export interface SiteData {
+ title: string;
+ description?: string;
+ url: string;
+ icon?: string;
+ image?: string;
+}
diff --git a/packages/hyperlink-card/src/vite/shared-plugin-config.ts b/packages/hyperlink-card/src/vite/shared-plugin-config.ts
new file mode 100644
index 0000000..8ce3e1f
--- /dev/null
+++ b/packages/hyperlink-card/src/vite/shared-plugin-config.ts
@@ -0,0 +1,22 @@
+import presetIcons from '@unocss/preset-icons';
+import { presetUno } from 'unocss';
+import UnoCSS from 'unocss/vite';
+
+export const sharedPluginsConfig = [
+ UnoCSS({
+ mode: 'shadow-dom',
+ presets: [presetUno(), presetIcons()],
+ shortcuts: {
+ 'bg-card': 'bg-[var(--halo-hyperlink-card-bg-color,#fff)]',
+ 'border-card': 'border-[var(--halo-hyperlink-card-border-color,#e4e4e7)]',
+ 'border-hover-card': 'hover:border-[var(--halo-hyperlink-card-border-hover-color,#818cf8)]',
+ 'text-title': 'text-[var(--halo-hyperlink-card-title-color,#18181b)]',
+ 'text-description': 'text-[var(--halo-hyperlink-card-description-color,#71717a)]',
+ 'text-link': 'text-[var(--halo-hyperlink-card-link-color,#4f46e5)]',
+
+ 'bg-inline-card': 'bg-[var(--halo-hyperlink-card-inline-bg-color,#fafafa)]',
+ 'bg-hover-inline-card': 'hover:bg-[var(--halo-hyperlink-card-inline-hover-bg-color,#f4f4f5)]',
+ 'text-inline-title': 'text-[var(--halo-hyperlink-card-inline-title-color,#27272a)]',
+ },
+ }),
+];
diff --git a/packages/hyperlink-card/var.css b/packages/hyperlink-card/var.css
new file mode 100644
index 0000000..45678fa
--- /dev/null
+++ b/packages/hyperlink-card/var.css
@@ -0,0 +1,38 @@
+@media (prefers-color-scheme: dark) {
+ .color-scheme-auto,
+ [data-color-scheme='auto'] hyperlink-card {
+ color-scheme: dark;
+ --halo-hyperlink-card-bg-color: #18181b;
+ --halo-hyperlink-card-inline-bg-color: #3f3f46;
+ --halo-hyperlink-card-inline-hover-bg-color: #52525b;
+
+ --halo-hyperlink-card-title-color: #f4f4f5;
+ --halo-hyperlink-card-inline-title-color: #f4f4f5;
+
+ --halo-hyperlink-card-description-color: #a1a1aa;
+ --halo-hyperlink-card-link-color: #e4e4e7;
+ --halo-hyperlink-card-bg-gradient: linear-gradient(#454545, #454545),
+ linear-gradient(transparent, transparent);
+ --halo-hyperlink-card-border-color: #52525b;
+ --halo-hyperlink-card-border-hover-color: #e4e4e7;
+ }
+}
+
+.color-scheme-dark,
+.dark,
+[data-color-scheme='dark'] hyperlink-card {
+ color-scheme: dark;
+ --halo-hyperlink-card-bg-color: #18181b;
+ --halo-hyperlink-card-inline-bg-color: #3f3f46;
+ --halo-hyperlink-card-inline-hover-bg-color: #52525b;
+
+ --halo-hyperlink-card-title-color: #f4f4f5;
+ --halo-hyperlink-card-inline-title-color: #f4f4f5;
+
+ --halo-hyperlink-card-description-color: #a1a1aa;
+ --halo-hyperlink-card-link-color: #e4e4e7;
+ --halo-hyperlink-card-bg-gradient: linear-gradient(#454545, #454545),
+ linear-gradient(transparent, transparent);
+ --halo-hyperlink-card-border-color: #52525b;
+ --halo-hyperlink-card-border-hover-color: #e4e4e7;
+}
diff --git a/packages/hyperlink-card/vite.config.dev.ts b/packages/hyperlink-card/vite.config.dev.ts
index 72b5257..446415a 100644
--- a/packages/hyperlink-card/vite.config.dev.ts
+++ b/packages/hyperlink-card/vite.config.dev.ts
@@ -1,13 +1,14 @@
-import presetIcons from '@unocss/preset-icons';
-import { presetUno } from 'unocss';
-import UnoCSS from 'unocss/vite';
import { defineConfig } from 'vite';
+import { sharedPluginsConfig } from './src/vite/shared-plugin-config';
export default defineConfig({
- plugins: [
- UnoCSS({
- mode: 'shadow-dom',
- presets: [presetUno(), presetIcons()],
- }),
- ],
+ plugins: [...sharedPluginsConfig],
+ server: {
+ proxy: {
+ '/apis': {
+ target: 'http://localhost:8090',
+ changeOrigin: true,
+ },
+ },
+ },
});
diff --git a/packages/hyperlink-card/vite.config.lib.ts b/packages/hyperlink-card/vite.config.lib.ts
index 131c68c..921c834 100644
--- a/packages/hyperlink-card/vite.config.lib.ts
+++ b/packages/hyperlink-card/vite.config.lib.ts
@@ -1,10 +1,8 @@
-import presetIcons from '@unocss/preset-icons';
-import { presetUno } from 'unocss';
-import UnoCSS from 'unocss/vite';
-import { defineConfig } from 'vite';
-import dts from 'vite-plugin-dts';
import copy from 'rollup-plugin-copy';
import { fileURLToPath } from 'url';
+import { defineConfig } from 'vite';
+import dts from 'vite-plugin-dts';
+import { sharedPluginsConfig } from './src/vite/shared-plugin-config';
export default defineConfig({
build: {
@@ -22,15 +20,12 @@ export default defineConfig({
},
},
plugins: [
- UnoCSS({
- mode: 'shadow-dom',
- presets: [presetUno(), presetIcons()],
- }),
+ ...sharedPluginsConfig,
dts(),
copy({
targets: [
{
- src: './dist/hyperlink-card.iife.js',
+ src: ['./dist/hyperlink-card.iife.js', './var.css'],
dest: fileURLToPath(new URL('../../src/main/resources/static', import.meta.url)),
},
],
diff --git a/packages/hyperlink-card/vitest.config.ts b/packages/hyperlink-card/vitest.config.ts
new file mode 100644
index 0000000..6ec74ee
--- /dev/null
+++ b/packages/hyperlink-card/vitest.config.ts
@@ -0,0 +1,7 @@
+import { defineConfig } from 'vitest/config';
+
+export default defineConfig({
+ test: {
+ include: ['src/**/*.test.ts'],
+ },
+});
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index e6d0e25..58b8c8d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -25,7 +25,7 @@ importers:
version: 20.14.1
'@typescript-eslint/eslint-plugin':
specifier: ^6.21.0
- version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.4.5)
+ version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/parser':
specifier: ^6.21.0
version: 6.21.0(eslint@8.57.0)(typescript@5.4.5)
@@ -43,7 +43,7 @@ importers:
version: 9.1.0(eslint@8.57.0)
eslint-plugin-prettier:
specifier: ^5.1.3
- version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.3.0)
+ version: 5.1.3(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.3.0)
lit-analyzer:
specifier: ^2.0.3
version: 2.0.3
@@ -58,38 +58,41 @@ importers:
version: 5.4.5
unocss:
specifier: ^0.60.4
- version: 0.60.4(postcss@8.4.38)(vite@5.2.12)
+ version: 0.60.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4))
vite:
specifier: ^5.2.12
- version: 5.2.12(@types/node@20.14.1)
+ version: 5.2.12(@types/node@20.14.1)(sass@1.77.4)
vite-plugin-dts:
specifier: ^3.9.1
- version: 3.9.1(@types/node@20.14.1)(typescript@5.4.5)(vite@5.2.12)
+ version: 3.9.1(@types/node@20.14.1)(rollup@4.18.0)(typescript@5.4.5)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4))
+ vitest:
+ specifier: ^1.6.0
+ version: 1.6.0(@types/node@20.14.1)(jsdom@19.0.0)(sass@1.77.4)
ui:
dependencies:
'@halo-dev/components':
specifier: ^2.16.0
- version: 2.16.0(vue-router@4.3.2)(vue@3.4.27)
+ version: 2.16.0(vue-router@4.3.2(vue@3.4.27(typescript@4.7.4)))(vue@3.4.27(typescript@4.7.4))
'@halo-dev/console-shared':
specifier: ^2.16.0
- version: 2.16.0(vue-router@4.3.2)(vue@3.4.27)
+ version: 2.16.0(vue-router@4.3.2(vue@3.4.27(typescript@4.7.4)))(vue@3.4.27(typescript@4.7.4))
'@halo-dev/hyperlink-card':
specifier: workspace:*
version: link:../packages/hyperlink-card
'@halo-dev/richtext-editor':
specifier: ^2.16.0
- version: 2.16.0(vue@3.4.27)
+ version: 2.16.0(vue@3.4.27(typescript@4.7.4))
floating-vue:
specifier: ^5.2.2
- version: 5.2.2(vue@3.4.27)
+ version: 5.2.2(vue@3.4.27(typescript@4.7.4))
vue:
specifier: ^3.4.27
version: 3.4.27(typescript@4.7.4)
devDependencies:
'@halo-dev/ui-plugin-bundler-kit':
specifier: ^2.16.0
- version: 2.16.0(vite@5.2.12)
+ version: 2.16.0(vite@5.2.12(@types/node@16.18.98)(sass@1.77.4))
'@iconify/json':
specifier: ^2.2.216
version: 2.2.216
@@ -104,13 +107,13 @@ importers:
version: 16.18.98
'@vitejs/plugin-vue':
specifier: ^5.0.5
- version: 5.0.5(vite@5.2.12)(vue@3.4.27)
+ version: 5.0.5(vite@5.2.12(@types/node@16.18.98)(sass@1.77.4))(vue@3.4.27(typescript@4.7.4))
'@vue/eslint-config-prettier':
specifier: ^7.1.0
- version: 7.1.0(eslint@8.57.0)(prettier@2.8.8)
+ version: 7.1.0(eslint@8.57.0)(prettier@3.3.0)
'@vue/eslint-config-typescript':
specifier: ^11.0.3
- version: 11.0.3(eslint-plugin-vue@9.26.0)(eslint@8.57.0)(typescript@4.7.4)
+ version: 11.0.3(eslint-plugin-vue@9.26.0(eslint@8.57.0))(eslint@8.57.0)(typescript@4.7.4)
'@vue/test-utils':
specifier: ^2.4.6
version: 2.4.6
@@ -133,8 +136,11 @@ importers:
specifier: ^8.4.38
version: 8.4.38
prettier:
- specifier: ^2.8.8
- version: 2.8.8
+ specifier: ^3.0.0
+ version: 3.3.0
+ prettier-plugin-tailwindcss:
+ specifier: ^0.6.1
+ version: 0.6.1(prettier@3.3.0)
sass:
specifier: ^1.77.4
version: 1.77.4
@@ -146,7 +152,7 @@ importers:
version: 4.7.4
unplugin-icons:
specifier: ^0.15.3
- version: 0.15.3
+ version: 0.15.3(@vue/compiler-sfc@3.4.27)(vue-template-compiler@2.7.16)
vite:
specifier: ^5.2.12
version: 5.2.12(@types/node@16.18.98)(sass@1.77.4)
@@ -563,6 +569,10 @@ packages:
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
+ '@jest/schemas@29.6.3':
+ resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
'@jridgewell/gen-mapping@0.3.5':
resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
engines: {node: '>=6.0.0'}
@@ -746,6 +756,9 @@ packages:
'@rushstack/ts-command-line@4.19.1':
resolution: {integrity: sha512-J7H768dgcpG60d7skZ5uSSwyCZs/S2HrWP1Ds8d1qYAyaaeJmpmmLr9BVw97RjFzmQPOYnoXcKA4GkqDCkduQg==}
+ '@sinclair/typebox@0.27.8':
+ resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+
'@tiptap/core@2.4.0':
resolution: {integrity: sha512-YJSahk8pkxpCs8SflCZfTnJpE7IPyUWIylfgXM2DefjRQa5DZ+c6sNY0s/zbxKYFQ6AuHVX40r9pCfcqHChGxQ==}
peerDependencies:
@@ -1225,6 +1238,21 @@ packages:
vite: ^5.0.0
vue: ^3.2.25
+ '@vitest/expect@1.6.0':
+ resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==}
+
+ '@vitest/runner@1.6.0':
+ resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==}
+
+ '@vitest/snapshot@1.6.0':
+ resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==}
+
+ '@vitest/spy@1.6.0':
+ resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==}
+
+ '@vitest/utils@1.6.0':
+ resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==}
+
'@volar/language-core@1.11.1':
resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==}
@@ -1325,6 +1353,10 @@ packages:
resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
engines: {node: '>=0.4.0'}
+ acorn-walk@8.3.2:
+ resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==}
+ engines: {node: '>=0.4.0'}
+
acorn@7.4.1:
resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==}
engines: {node: '>=0.4.0'}
@@ -1358,6 +1390,10 @@ packages:
resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
engines: {node: '>=8'}
+ ansi-styles@5.2.0:
+ resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
+ engines: {node: '>=10'}
+
ansi-styles@6.2.1:
resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
engines: {node: '>=12'}
@@ -1597,6 +1633,10 @@ packages:
didyoumean@1.2.2:
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
+ diff-sequences@29.6.3:
+ resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
dir-glob@3.0.1:
resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
engines: {node: '>=8'}
@@ -1872,6 +1912,9 @@ packages:
estree-walker@2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+ estree-walker@3.0.3:
+ resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
+
esutils@2.0.3:
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
engines: {node: '>=0.10.0'}
@@ -1880,6 +1923,10 @@ packages:
resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
engines: {node: '>=10'}
+ execa@8.0.1:
+ resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
+ engines: {node: '>=16.17'}
+
fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
@@ -1972,6 +2019,10 @@ packages:
resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
engines: {node: '>=10'}
+ get-stream@8.0.1:
+ resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
+ engines: {node: '>=16'}
+
github-markdown-css@5.5.1:
resolution: {integrity: sha512-2osyhNgFt7DEHnGHbgIifWawAqlc68gjJiGwO1xNw/S48jivj8kVaocsVkyJqUi3fm7fdYIDi4C6yOtcqR/aEQ==}
engines: {node: '>=10'}
@@ -2059,6 +2110,10 @@ packages:
resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
engines: {node: '>=10.17.0'}
+ human-signals@5.0.0:
+ resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
+ engines: {node: '>=16.17.0'}
+
iconv-lite@0.6.3:
resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
engines: {node: '>=0.10.0'}
@@ -2130,6 +2185,10 @@ packages:
resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
engines: {node: '>=8'}
+ is-stream@3.0.0:
+ resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -2156,6 +2215,9 @@ packages:
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+ js-tokens@9.0.0:
+ resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==}
+
js-yaml@4.1.0:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
hasBin: true
@@ -2318,6 +2380,10 @@ packages:
resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
engines: {node: '>=6'}
+ mimic-fn@4.0.0:
+ resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
+ engines: {node: '>=12'}
+
minimatch@3.0.8:
resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==}
@@ -2390,6 +2456,10 @@ packages:
resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
engines: {node: '>=8'}
+ npm-run-path@5.3.0:
+ resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
nth-check@2.1.1:
resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
@@ -2414,6 +2484,10 @@ packages:
resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
engines: {node: '>=6'}
+ onetime@6.0.0:
+ resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
+ engines: {node: '>=12'}
+
optionator@0.9.4:
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
engines: {node: '>= 0.8.0'}
@@ -2425,6 +2499,10 @@ packages:
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
engines: {node: '>=10'}
+ p-limit@5.0.0:
+ resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==}
+ engines: {node: '>=18'}
+
p-locate@5.0.0:
resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
engines: {node: '>=10'}
@@ -2457,6 +2535,10 @@ packages:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
+ path-key@4.0.0:
+ resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
+ engines: {node: '>=12'}
+
path-parse@1.0.7:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
@@ -2544,16 +2626,67 @@ packages:
resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
engines: {node: '>=6.0.0'}
- prettier@2.8.8:
- resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
- engines: {node: '>=10.13.0'}
- hasBin: true
+ prettier-plugin-tailwindcss@0.6.1:
+ resolution: {integrity: sha512-AnbeYZu0WGj+QgKciUgdMnRxrqcxltleZPgdwfA5104BHM3siBLONN/HLW1yS2HvzSNkzpQ/JAj+LN0jcJO+0w==}
+ engines: {node: '>=14.21.3'}
+ peerDependencies:
+ '@ianvs/prettier-plugin-sort-imports': '*'
+ '@prettier/plugin-pug': '*'
+ '@shopify/prettier-plugin-liquid': '*'
+ '@trivago/prettier-plugin-sort-imports': '*'
+ '@zackad/prettier-plugin-twig-melody': '*'
+ prettier: ^3.0
+ prettier-plugin-astro: '*'
+ prettier-plugin-css-order: '*'
+ prettier-plugin-import-sort: '*'
+ prettier-plugin-jsdoc: '*'
+ prettier-plugin-marko: '*'
+ prettier-plugin-organize-attributes: '*'
+ prettier-plugin-organize-imports: '*'
+ prettier-plugin-sort-imports: '*'
+ prettier-plugin-style-order: '*'
+ prettier-plugin-svelte: '*'
+ peerDependenciesMeta:
+ '@ianvs/prettier-plugin-sort-imports':
+ optional: true
+ '@prettier/plugin-pug':
+ optional: true
+ '@shopify/prettier-plugin-liquid':
+ optional: true
+ '@trivago/prettier-plugin-sort-imports':
+ optional: true
+ '@zackad/prettier-plugin-twig-melody':
+ optional: true
+ prettier-plugin-astro:
+ optional: true
+ prettier-plugin-css-order:
+ optional: true
+ prettier-plugin-import-sort:
+ optional: true
+ prettier-plugin-jsdoc:
+ optional: true
+ prettier-plugin-marko:
+ optional: true
+ prettier-plugin-organize-attributes:
+ optional: true
+ prettier-plugin-organize-imports:
+ optional: true
+ prettier-plugin-sort-imports:
+ optional: true
+ prettier-plugin-style-order:
+ optional: true
+ prettier-plugin-svelte:
+ optional: true
prettier@3.3.0:
resolution: {integrity: sha512-J9odKxERhCQ10OC2yb93583f6UnYutOeiV5i0zEDS7UGTdUt0u+y8erxl3lBKvwo/JHyyoEdXjwp4dke9oyZ/g==}
engines: {node: '>=14'}
hasBin: true
+ pretty-format@29.7.0:
+ resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
prosemirror-changeset@2.2.1:
resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==}
@@ -2632,6 +2765,9 @@ packages:
queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+ react-is@18.3.1:
+ resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
+
read-cache@1.0.0:
resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
@@ -2726,6 +2862,9 @@ packages:
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
engines: {node: '>=8'}
+ siginfo@2.0.0:
+ resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
+
signal-exit@3.0.7:
resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
@@ -2752,6 +2891,12 @@ packages:
sprintf-js@1.0.3:
resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
+ stackback@0.0.2:
+ resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
+
+ std-env@3.7.0:
+ resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==}
+
string-argv@0.3.2:
resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
engines: {node: '>=0.6.19'}
@@ -2776,6 +2921,10 @@ packages:
resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
engines: {node: '>=6'}
+ strip-final-newline@3.0.0:
+ resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
+ engines: {node: '>=12'}
+
strip-json-comments@3.1.1:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
@@ -2783,6 +2932,9 @@ packages:
strip-literal@0.4.2:
resolution: {integrity: sha512-pv48ybn4iE1O9RLgCAN0iU4Xv7RlBTiit6DKmMiErbs9x1wH6vXBs45tWc0H5wUIF6TLTrKweqkmYF/iraQKNw==}
+ strip-literal@2.1.0:
+ resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==}
+
sucrase@3.35.0:
resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -2833,10 +2985,18 @@ packages:
resolution: {integrity: sha512-zLA1ZXlstbU2rlpA4CIeVaqvWq41MTWqLY3FfsAXgC8+f7Pk7zroaJQxDgxn1xNudKW6Kmj4808rPFShUlIRmQ==}
engines: {node: '>=14.0.0'}
+ tinypool@0.8.4:
+ resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==}
+ engines: {node: '>=14.0.0'}
+
tinyspy@1.1.1:
resolution: {integrity: sha512-UVq5AXt/gQlti7oxoIg5oi/9r0WpF7DGEVwXgqWSMmyN16+e3tl5lIvTaOpJ3TAtu5xFzWccFRM4R5NaWHF+4g==}
engines: {node: '>=14.0.0'}
+ tinyspy@2.2.1:
+ resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==}
+ engines: {node: '>=14.0.0'}
+
tippy.js@6.3.7:
resolution: {integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==}
@@ -2988,6 +3148,11 @@ packages:
resolution: {integrity: sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==}
engines: {node: '>= 0.10'}
+ vite-node@1.6.0:
+ resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ hasBin: true
+
vite-plugin-dts@3.9.1:
resolution: {integrity: sha512-rVp2KM9Ue22NGWB8dNtWEr+KekN3rIgz1tWD050QnRGlriUCmaDwa7qA5zDEjbXg5lAXhYMSBJtx3q3hQIJZSg==}
engines: {node: ^14.18.0 || >=16.0.0}
@@ -3073,6 +3238,31 @@ packages:
jsdom:
optional: true
+ vitest@1.6.0:
+ resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ hasBin: true
+ peerDependencies:
+ '@edge-runtime/vm': '*'
+ '@types/node': ^18.0.0 || >=20.0.0
+ '@vitest/browser': 1.6.0
+ '@vitest/ui': 1.6.0
+ happy-dom: '*'
+ jsdom: '*'
+ peerDependenciesMeta:
+ '@edge-runtime/vm':
+ optional: true
+ '@types/node':
+ optional: true
+ '@vitest/browser':
+ optional: true
+ '@vitest/ui':
+ optional: true
+ happy-dom:
+ optional: true
+ jsdom:
+ optional: true
+
vscode-css-languageservice@4.3.0:
resolution: {integrity: sha512-BkQAMz4oVHjr0oOAz5PdeE72txlLQK7NIwzmclfr+b6fj6I8POwB+VoXvrZLTbWt9hWRgfvgiQRkh5JwrjPJ5A==}
@@ -3174,6 +3364,11 @@ packages:
engines: {node: '>= 8'}
hasBin: true
+ why-is-node-running@2.2.2:
+ resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==}
+ engines: {node: '>=8'}
+ hasBin: true
+
word-wrap@1.2.5:
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
engines: {node: '>=0.10.0'}
@@ -3235,6 +3430,10 @@ packages:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
+ yocto-queue@1.0.0:
+ resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
+ engines: {node: '>=12.20'}
+
z-schema@5.0.5:
resolution: {integrity: sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==}
engines: {node: '>=8.0.0'}
@@ -3455,7 +3654,7 @@ snapshots:
'@babel/helper-validator-identifier': 7.24.6
to-fast-properties: 2.0.0
- '@ckpack/vue-color@1.5.0(vue@3.4.27)':
+ '@ckpack/vue-color@1.5.0(vue@3.4.27(typescript@4.7.4))':
dependencies:
'@ctrl/tinycolor': 3.6.1
material-colors: 1.2.6
@@ -3573,62 +3772,62 @@ snapshots:
'@halo-dev/api-client@2.16.0': {}
- '@halo-dev/components@2.16.0(vue-router@4.3.2)(vue@3.4.27)':
+ '@halo-dev/components@2.16.0(vue-router@4.3.2(vue@3.4.27(typescript@4.7.4)))(vue@3.4.27(typescript@4.7.4))':
dependencies:
- floating-vue: 5.2.2(vue@3.4.27)
+ floating-vue: 5.2.2(vue@3.4.27(typescript@4.7.4))
vue: 3.4.27(typescript@4.7.4)
- vue-router: 4.3.2(vue@3.4.27)
+ vue-router: 4.3.2(vue@3.4.27(typescript@4.7.4))
transitivePeerDependencies:
- '@nuxt/kit'
- '@halo-dev/console-shared@2.16.0(vue-router@4.3.2)(vue@3.4.27)':
+ '@halo-dev/console-shared@2.16.0(vue-router@4.3.2(vue@3.4.27(typescript@4.7.4)))(vue@3.4.27(typescript@4.7.4))':
dependencies:
'@halo-dev/api-client': 2.16.0
vue: 3.4.27(typescript@4.7.4)
- vue-router: 4.3.2(vue@3.4.27)
+ vue-router: 4.3.2(vue@3.4.27(typescript@4.7.4))
- '@halo-dev/richtext-editor@2.16.0(vue@3.4.27)':
+ '@halo-dev/richtext-editor@2.16.0(vue@3.4.27(typescript@4.7.4))':
dependencies:
- '@ckpack/vue-color': 1.5.0(vue@3.4.27)
+ '@ckpack/vue-color': 1.5.0(vue@3.4.27(typescript@4.7.4))
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-blockquote': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-bold': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-bullet-list': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-code': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-code-block': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-code-block-lowlight': 2.4.0(@tiptap/core@2.4.0)(@tiptap/extension-code-block@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-color': 2.4.0(@tiptap/core@2.4.0)(@tiptap/extension-text-style@2.4.0)
- '@tiptap/extension-document': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-dropcursor': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-gapcursor': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-hard-break': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-heading': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-highlight': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-history': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-horizontal-rule': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-image': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-italic': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-link': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-list-item': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-list-keymap': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-ordered-list': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-paragraph': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-placeholder': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-strike': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-subscript': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-superscript': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-table': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-table-row': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-task-item': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-task-list': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-text': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-text-align': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-text-style': 2.4.0(@tiptap/core@2.4.0)
- '@tiptap/extension-underline': 2.4.0(@tiptap/core@2.4.0)
+ '@tiptap/extension-blockquote': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-bold': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-bullet-list': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-code': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-code-block': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-code-block-lowlight': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/extension-code-block@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-color': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/extension-text-style@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0)))
+ '@tiptap/extension-document': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-dropcursor': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-gapcursor': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-hard-break': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-heading': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-highlight': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-history': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-horizontal-rule': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-image': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-italic': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-link': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-list-item': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-list-keymap': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-ordered-list': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-paragraph': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-placeholder': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-strike': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-subscript': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-superscript': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-table': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-table-row': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-task-item': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-task-list': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-text': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-text-align': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-text-style': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
+ '@tiptap/extension-underline': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
'@tiptap/pm': 2.4.0
- '@tiptap/suggestion': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/vue-3': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)(vue@3.4.27)
- floating-vue: 5.2.2(vue@3.4.27)
+ '@tiptap/suggestion': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/vue-3': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)(vue@3.4.27(typescript@4.7.4))
+ floating-vue: 5.2.2(vue@3.4.27(typescript@4.7.4))
github-markdown-css: 5.5.1
highlight.js: 11.8.0
linkifyjs: 4.1.3
@@ -3639,7 +3838,7 @@ snapshots:
transitivePeerDependencies:
- '@nuxt/kit'
- '@halo-dev/ui-plugin-bundler-kit@2.16.0(vite@5.2.12)':
+ '@halo-dev/ui-plugin-bundler-kit@2.16.0(vite@5.2.12(@types/node@16.18.98)(sass@1.77.4))':
dependencies:
vite: 5.2.12(@types/node@16.18.98)(sass@1.77.4)
@@ -3683,6 +3882,10 @@ snapshots:
wrap-ansi: 8.1.0
wrap-ansi-cjs: wrap-ansi@7.0.0
+ '@jest/schemas@29.6.3':
+ dependencies:
+ '@sinclair/typebox': 0.27.8
+
'@jridgewell/gen-mapping@0.3.5':
dependencies:
'@jridgewell/set-array': 1.2.1
@@ -3766,11 +3969,13 @@ snapshots:
'@remirror/core-constants@2.0.2': {}
- '@rollup/pluginutils@5.1.0':
+ '@rollup/pluginutils@5.1.0(rollup@4.18.0)':
dependencies:
'@types/estree': 1.0.5
estree-walker: 2.0.2
picomatch: 2.3.1
+ optionalDependencies:
+ rollup: 4.18.0
'@rollup/rollup-android-arm-eabi@4.18.0':
optional: true
@@ -3824,13 +4029,14 @@ snapshots:
'@rushstack/node-core-library@4.0.2(@types/node@20.14.1)':
dependencies:
- '@types/node': 20.14.1
fs-extra: 7.0.1
import-lazy: 4.0.0
jju: 1.4.0
resolve: 1.22.8
semver: 7.5.4
z-schema: 5.0.5
+ optionalDependencies:
+ '@types/node': 20.14.1
'@rushstack/rig-package@0.5.2':
dependencies:
@@ -3840,8 +4046,9 @@ snapshots:
'@rushstack/terminal@0.10.0(@types/node@20.14.1)':
dependencies:
'@rushstack/node-core-library': 4.0.2(@types/node@20.14.1)
- '@types/node': 20.14.1
supports-color: 8.1.1
+ optionalDependencies:
+ '@types/node': 20.14.1
'@rushstack/ts-command-line@4.19.1(@types/node@20.14.1)':
dependencies:
@@ -3852,168 +4059,170 @@ snapshots:
transitivePeerDependencies:
- '@types/node'
+ '@sinclair/typebox@0.27.8': {}
+
'@tiptap/core@2.4.0(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/pm': 2.4.0
- '@tiptap/extension-blockquote@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-blockquote@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-bold@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-bold@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-bubble-menu@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-bubble-menu@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
tippy.js: 6.3.7
- '@tiptap/extension-bullet-list@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-bullet-list@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-code-block-lowlight@2.4.0(@tiptap/core@2.4.0)(@tiptap/extension-code-block@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-code-block-lowlight@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/extension-code-block@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-code-block': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
+ '@tiptap/extension-code-block': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-code-block@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-code-block@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-code@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-code@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-color@2.4.0(@tiptap/core@2.4.0)(@tiptap/extension-text-style@2.4.0)':
+ '@tiptap/extension-color@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/extension-text-style@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0)))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-text-style': 2.4.0(@tiptap/core@2.4.0)
+ '@tiptap/extension-text-style': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))
- '@tiptap/extension-document@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-document@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-dropcursor@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-dropcursor@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-floating-menu@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-floating-menu@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
tippy.js: 6.3.7
- '@tiptap/extension-gapcursor@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-gapcursor@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-hard-break@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-hard-break@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-heading@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-heading@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-highlight@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-highlight@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-history@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-history@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-horizontal-rule@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-horizontal-rule@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-image@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-image@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-italic@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-italic@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-link@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-link@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
linkifyjs: 4.1.3
- '@tiptap/extension-list-item@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-list-item@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-list-keymap@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-list-keymap@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-ordered-list@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-ordered-list@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-paragraph@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-paragraph@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-placeholder@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-placeholder@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-strike@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-strike@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-subscript@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-subscript@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-superscript@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-superscript@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-table-row@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-table-row@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-table@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-table@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-task-item@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/extension-task-item@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/extension-task-list@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-task-list@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-text-align@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-text-align@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-text-style@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-text-style@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-text@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-text@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-underline@2.4.0(@tiptap/core@2.4.0)':
+ '@tiptap/extension-underline@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
@@ -4038,16 +4247,16 @@ snapshots:
prosemirror-transform: 1.9.0
prosemirror-view: 1.33.7
- '@tiptap/suggestion@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)':
+ '@tiptap/suggestion@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
- '@tiptap/vue-3@2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)(vue@3.4.27)':
+ '@tiptap/vue-3@2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)(vue@3.4.27(typescript@4.7.4))':
dependencies:
'@tiptap/core': 2.4.0(@tiptap/pm@2.4.0)
- '@tiptap/extension-bubble-menu': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
- '@tiptap/extension-floating-menu': 2.4.0(@tiptap/core@2.4.0)(@tiptap/pm@2.4.0)
+ '@tiptap/extension-bubble-menu': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
+ '@tiptap/extension-floating-menu': 2.4.0(@tiptap/core@2.4.0(@tiptap/pm@2.4.0))(@tiptap/pm@2.4.0)
'@tiptap/pm': 2.4.0
vue: 3.4.27(typescript@4.7.4)
@@ -4100,7 +4309,7 @@ snapshots:
'@types/unist@3.0.2': {}
- '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.0)(typescript@4.7.4)':
+ '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@4.7.4))(eslint@8.57.0)(typescript@4.7.4)':
dependencies:
'@eslint-community/regexpp': 4.10.1
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@4.7.4)
@@ -4114,11 +4323,12 @@ snapshots:
natural-compare-lite: 1.4.0
semver: 7.6.2
tsutils: 3.21.0(typescript@4.7.4)
+ optionalDependencies:
typescript: 4.7.4
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.4.5)':
+ '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)':
dependencies:
'@eslint-community/regexpp': 4.10.1
'@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.5)
@@ -4133,6 +4343,7 @@ snapshots:
natural-compare: 1.4.0
semver: 7.6.2
ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4144,6 +4355,7 @@ snapshots:
'@typescript-eslint/typescript-estree': 5.62.0(typescript@4.7.4)
debug: 4.3.5
eslint: 8.57.0
+ optionalDependencies:
typescript: 4.7.4
transitivePeerDependencies:
- supports-color
@@ -4156,6 +4368,7 @@ snapshots:
'@typescript-eslint/visitor-keys': 6.21.0
debug: 4.3.5
eslint: 8.57.0
+ optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4177,6 +4390,7 @@ snapshots:
debug: 4.3.5
eslint: 8.57.0
tsutils: 3.21.0(typescript@4.7.4)
+ optionalDependencies:
typescript: 4.7.4
transitivePeerDependencies:
- supports-color
@@ -4188,6 +4402,7 @@ snapshots:
debug: 4.3.5
eslint: 8.57.0
ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4205,6 +4420,7 @@ snapshots:
is-glob: 4.0.3
semver: 7.6.2
tsutils: 3.21.0(typescript@4.7.4)
+ optionalDependencies:
typescript: 4.7.4
transitivePeerDependencies:
- supports-color
@@ -4219,6 +4435,7 @@ snapshots:
minimatch: 9.0.3
semver: 7.6.2
ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
@@ -4264,19 +4481,20 @@ snapshots:
'@ungap/structured-clone@1.2.0': {}
- '@unocss/astro@0.60.4(vite@5.2.12)':
+ '@unocss/astro@0.60.4(rollup@4.18.0)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4))':
dependencies:
'@unocss/core': 0.60.4
'@unocss/reset': 0.60.4
- '@unocss/vite': 0.60.4(vite@5.2.12)
- vite: 5.2.12(@types/node@20.14.1)
+ '@unocss/vite': 0.60.4(rollup@4.18.0)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4))
+ optionalDependencies:
+ vite: 5.2.12(@types/node@20.14.1)(sass@1.77.4)
transitivePeerDependencies:
- rollup
- '@unocss/cli@0.60.4':
+ '@unocss/cli@0.60.4(rollup@4.18.0)':
dependencies:
'@ampproject/remapping': 2.3.0
- '@rollup/pluginutils': 5.1.0
+ '@rollup/pluginutils': 5.1.0(rollup@4.18.0)
'@unocss/config': 0.60.4
'@unocss/core': 0.60.4
'@unocss/preset-uno': 0.60.4
@@ -4400,10 +4618,10 @@ snapshots:
dependencies:
'@unocss/core': 0.60.4
- '@unocss/vite@0.60.4(vite@5.2.12)':
+ '@unocss/vite@0.60.4(rollup@4.18.0)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4))':
dependencies:
'@ampproject/remapping': 2.3.0
- '@rollup/pluginutils': 5.1.0
+ '@rollup/pluginutils': 5.1.0(rollup@4.18.0)
'@unocss/config': 0.60.4
'@unocss/core': 0.60.4
'@unocss/inspector': 0.60.4
@@ -4412,15 +4630,44 @@ snapshots:
chokidar: 3.6.0
fast-glob: 3.3.2
magic-string: 0.30.10
- vite: 5.2.12(@types/node@20.14.1)
+ vite: 5.2.12(@types/node@20.14.1)(sass@1.77.4)
transitivePeerDependencies:
- rollup
- '@vitejs/plugin-vue@5.0.5(vite@5.2.12)(vue@3.4.27)':
+ '@vitejs/plugin-vue@5.0.5(vite@5.2.12(@types/node@16.18.98)(sass@1.77.4))(vue@3.4.27(typescript@4.7.4))':
dependencies:
vite: 5.2.12(@types/node@16.18.98)(sass@1.77.4)
vue: 3.4.27(typescript@4.7.4)
+ '@vitest/expect@1.6.0':
+ dependencies:
+ '@vitest/spy': 1.6.0
+ '@vitest/utils': 1.6.0
+ chai: 4.4.1
+
+ '@vitest/runner@1.6.0':
+ dependencies:
+ '@vitest/utils': 1.6.0
+ p-limit: 5.0.0
+ pathe: 1.1.2
+
+ '@vitest/snapshot@1.6.0':
+ dependencies:
+ magic-string: 0.30.10
+ pathe: 1.1.2
+ pretty-format: 29.7.0
+
+ '@vitest/spy@1.6.0':
+ dependencies:
+ tinyspy: 2.2.1
+
+ '@vitest/utils@1.6.0':
+ dependencies:
+ diff-sequences: 29.6.3
+ estree-walker: 3.0.3
+ loupe: 2.3.7
+ pretty-format: 29.7.0
+
'@volar/language-core@1.11.1':
dependencies:
'@volar/source-map': 1.11.1
@@ -4468,21 +4715,22 @@ snapshots:
'@vue/devtools-api@6.6.3': {}
- '@vue/eslint-config-prettier@7.1.0(eslint@8.57.0)(prettier@2.8.8)':
+ '@vue/eslint-config-prettier@7.1.0(eslint@8.57.0)(prettier@3.3.0)':
dependencies:
eslint: 8.57.0
eslint-config-prettier: 8.10.0(eslint@8.57.0)
- eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.10.0)(eslint@8.57.0)(prettier@2.8.8)
- prettier: 2.8.8
+ eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.3.0)
+ prettier: 3.3.0
- '@vue/eslint-config-typescript@11.0.3(eslint-plugin-vue@9.26.0)(eslint@8.57.0)(typescript@4.7.4)':
+ '@vue/eslint-config-typescript@11.0.3(eslint-plugin-vue@9.26.0(eslint@8.57.0))(eslint@8.57.0)(typescript@4.7.4)':
dependencies:
- '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.0)(typescript@4.7.4)
+ '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@4.7.4))(eslint@8.57.0)(typescript@4.7.4)
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@4.7.4)
eslint: 8.57.0
eslint-plugin-vue: 9.26.0(eslint@8.57.0)
- typescript: 4.7.4
vue-eslint-parser: 9.4.3(eslint@8.57.0)
+ optionalDependencies:
+ typescript: 4.7.4
transitivePeerDependencies:
- supports-color
@@ -4496,8 +4744,9 @@ snapshots:
minimatch: 9.0.4
muggle-string: 0.3.1
path-browserify: 1.0.1
- typescript: 4.7.4
vue-template-compiler: 2.7.16
+ optionalDependencies:
+ typescript: 4.7.4
'@vue/language-core@1.8.27(typescript@5.4.5)':
dependencies:
@@ -4509,8 +4758,9 @@ snapshots:
minimatch: 9.0.4
muggle-string: 0.3.1
path-browserify: 1.0.1
- typescript: 5.4.5
vue-template-compiler: 2.7.16
+ optionalDependencies:
+ typescript: 5.4.5
'@vue/reactivity@3.4.27':
dependencies:
@@ -4527,7 +4777,7 @@ snapshots:
'@vue/shared': 3.4.27
csstype: 3.1.3
- '@vue/server-renderer@3.4.27(vue@3.4.27)':
+ '@vue/server-renderer@3.4.27(vue@3.4.27(typescript@4.7.4))':
dependencies:
'@vue/compiler-ssr': 3.4.27
'@vue/shared': 3.4.27
@@ -4541,7 +4791,7 @@ snapshots:
vue-component-type-helpers: 2.0.19
'@vue/tsconfig@0.1.3(@types/node@16.18.98)':
- dependencies:
+ optionalDependencies:
'@types/node': 16.18.98
abab@2.0.6: {}
@@ -4559,6 +4809,8 @@ snapshots:
acorn-walk@7.2.0: {}
+ acorn-walk@8.3.2: {}
+
acorn@7.4.1: {}
acorn@8.11.3: {}
@@ -4588,6 +4840,8 @@ snapshots:
dependencies:
color-convert: 2.0.1
+ ansi-styles@5.2.0: {}
+
ansi-styles@6.2.1: {}
any-promise@1.3.0: {}
@@ -4809,6 +5063,8 @@ snapshots:
didyoumean@1.2.2: {}
+ diff-sequences@29.6.3: {}
+
dir-glob@3.0.1:
dependencies:
path-type: 4.0.0
@@ -4975,20 +5231,22 @@ snapshots:
dependencies:
eslint: 8.57.0
- eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.10.0)(eslint@8.57.0)(prettier@2.8.8):
+ eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.10.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.3.0):
dependencies:
eslint: 8.57.0
- eslint-config-prettier: 8.10.0(eslint@8.57.0)
- prettier: 2.8.8
+ prettier: 3.3.0
prettier-linter-helpers: 1.0.0
+ optionalDependencies:
+ eslint-config-prettier: 8.10.0(eslint@8.57.0)
- eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.3.0):
+ eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.3.0):
dependencies:
eslint: 8.57.0
- eslint-config-prettier: 9.1.0(eslint@8.57.0)
prettier: 3.3.0
prettier-linter-helpers: 1.0.0
synckit: 0.8.8
+ optionalDependencies:
+ eslint-config-prettier: 9.1.0(eslint@8.57.0)
eslint-plugin-vue@9.26.0(eslint@8.57.0):
dependencies:
@@ -5081,6 +5339,10 @@ snapshots:
estree-walker@2.0.2: {}
+ estree-walker@3.0.3:
+ dependencies:
+ '@types/estree': 1.0.5
+
esutils@2.0.3: {}
execa@5.1.1:
@@ -5095,6 +5357,18 @@ snapshots:
signal-exit: 3.0.7
strip-final-newline: 2.0.0
+ execa@8.0.1:
+ dependencies:
+ cross-spawn: 7.0.3
+ get-stream: 8.0.1
+ human-signals: 5.0.0
+ is-stream: 3.0.0
+ merge-stream: 2.0.0
+ npm-run-path: 5.3.0
+ onetime: 6.0.0
+ signal-exit: 4.1.0
+ strip-final-newline: 3.0.0
+
fast-deep-equal@3.1.3: {}
fast-diff@1.3.0: {}
@@ -5136,11 +5410,11 @@ snapshots:
flatted@3.3.1: {}
- floating-vue@5.2.2(vue@3.4.27):
+ floating-vue@5.2.2(vue@3.4.27(typescript@4.7.4)):
dependencies:
'@floating-ui/dom': 1.1.1
vue: 3.4.27(typescript@4.7.4)
- vue-resize: 2.0.0-alpha.1(vue@3.4.27)
+ vue-resize: 2.0.0-alpha.1(vue@3.4.27(typescript@4.7.4))
foreground-child@3.1.1:
dependencies:
@@ -5182,6 +5456,8 @@ snapshots:
get-stream@6.0.1: {}
+ get-stream@8.0.1: {}
+
github-markdown-css@5.5.1: {}
glob-parent@5.1.2:
@@ -5278,6 +5554,8 @@ snapshots:
human-signals@2.1.0: {}
+ human-signals@5.0.0: {}
+
iconv-lite@0.6.3:
dependencies:
safer-buffer: 2.1.2
@@ -5330,6 +5608,8 @@ snapshots:
is-stream@2.0.1: {}
+ is-stream@3.0.0: {}
+
isexe@2.0.0: {}
jackspeak@3.2.3:
@@ -5354,6 +5634,8 @@ snapshots:
js-tokens@4.0.0: {}
+ js-tokens@9.0.0: {}
+
js-yaml@4.1.0:
dependencies:
argparse: 2.0.1
@@ -5536,6 +5818,8 @@ snapshots:
mimic-fn@2.1.0: {}
+ mimic-fn@4.0.0: {}
+
minimatch@3.0.8:
dependencies:
brace-expansion: 1.1.11
@@ -5599,6 +5883,10 @@ snapshots:
dependencies:
path-key: 3.1.1
+ npm-run-path@5.3.0:
+ dependencies:
+ path-key: 4.0.0
+
nth-check@2.1.1:
dependencies:
boolbase: 1.0.0
@@ -5623,6 +5911,10 @@ snapshots:
dependencies:
mimic-fn: 2.1.0
+ onetime@6.0.0:
+ dependencies:
+ mimic-fn: 4.0.0
+
optionator@0.9.4:
dependencies:
deep-is: 0.1.4
@@ -5638,6 +5930,10 @@ snapshots:
dependencies:
yocto-queue: 0.1.0
+ p-limit@5.0.0:
+ dependencies:
+ yocto-queue: 1.0.0
+
p-locate@5.0.0:
dependencies:
p-limit: 3.1.0
@@ -5662,6 +5958,8 @@ snapshots:
path-key@3.1.1: {}
+ path-key@4.0.0: {}
+
path-parse@1.0.7: {}
path-scurry@1.11.1:
@@ -5706,8 +6004,9 @@ snapshots:
postcss-load-config@4.0.2(postcss@8.4.38):
dependencies:
lilconfig: 3.1.1
- postcss: 8.4.38
yaml: 2.4.3
+ optionalDependencies:
+ postcss: 8.4.38
postcss-nested@6.0.1(postcss@8.4.38):
dependencies:
@@ -5733,10 +6032,18 @@ snapshots:
dependencies:
fast-diff: 1.3.0
- prettier@2.8.8: {}
+ prettier-plugin-tailwindcss@0.6.1(prettier@3.3.0):
+ dependencies:
+ prettier: 3.3.0
prettier@3.3.0: {}
+ pretty-format@29.7.0:
+ dependencies:
+ '@jest/schemas': 29.6.3
+ ansi-styles: 5.2.0
+ react-is: 18.3.1
+
prosemirror-changeset@2.2.1:
dependencies:
prosemirror-transform: 1.9.0
@@ -5851,6 +6158,8 @@ snapshots:
queue-microtask@1.2.3: {}
+ react-is@18.3.1: {}
+
read-cache@1.0.0:
dependencies:
pify: 2.3.0
@@ -5954,6 +6263,8 @@ snapshots:
shebang-regex@3.0.0: {}
+ siginfo@2.0.0: {}
+
signal-exit@3.0.7: {}
signal-exit@4.1.0: {}
@@ -5972,6 +6283,10 @@ snapshots:
sprintf-js@1.0.3: {}
+ stackback@0.0.2: {}
+
+ std-env@3.7.0: {}
+
string-argv@0.3.2: {}
string-width@4.2.3:
@@ -5996,12 +6311,18 @@ snapshots:
strip-final-newline@2.0.0: {}
+ strip-final-newline@3.0.0: {}
+
strip-json-comments@3.1.1: {}
strip-literal@0.4.2:
dependencies:
acorn: 8.11.3
+ strip-literal@2.1.0:
+ dependencies:
+ js-tokens: 9.0.0
+
sucrase@3.35.0:
dependencies:
'@jridgewell/gen-mapping': 0.3.5
@@ -6074,8 +6395,12 @@ snapshots:
tinypool@0.3.1: {}
+ tinypool@0.8.4: {}
+
tinyspy@1.1.1: {}
+ tinyspy@2.2.1: {}
+
tippy.js@6.3.7:
dependencies:
'@popperjs/core': 2.11.8
@@ -6148,10 +6473,10 @@ snapshots:
universalify@0.2.0: {}
- unocss@0.60.4(postcss@8.4.38)(vite@5.2.12):
+ unocss@0.60.4(postcss@8.4.38)(rollup@4.18.0)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4)):
dependencies:
- '@unocss/astro': 0.60.4(vite@5.2.12)
- '@unocss/cli': 0.60.4
+ '@unocss/astro': 0.60.4(rollup@4.18.0)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4))
+ '@unocss/cli': 0.60.4(rollup@4.18.0)
'@unocss/core': 0.60.4
'@unocss/extractor-arbitrary-variants': 0.60.4
'@unocss/postcss': 0.60.4(postcss@8.4.38)
@@ -6169,14 +6494,15 @@ snapshots:
'@unocss/transformer-compile-class': 0.60.4
'@unocss/transformer-directives': 0.60.4
'@unocss/transformer-variant-group': 0.60.4
- '@unocss/vite': 0.60.4(vite@5.2.12)
- vite: 5.2.12(@types/node@20.14.1)
+ '@unocss/vite': 0.60.4(rollup@4.18.0)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4))
+ optionalDependencies:
+ vite: 5.2.12(@types/node@20.14.1)(sass@1.77.4)
transitivePeerDependencies:
- postcss
- rollup
- supports-color
- unplugin-icons@0.15.3:
+ unplugin-icons@0.15.3(@vue/compiler-sfc@3.4.27)(vue-template-compiler@2.7.16):
dependencies:
'@antfu/install-pkg': 0.1.1
'@antfu/utils': 0.7.8
@@ -6185,6 +6511,9 @@ snapshots:
kolorist: 1.8.0
local-pkg: 0.4.3
unplugin: 1.10.1
+ optionalDependencies:
+ '@vue/compiler-sfc': 3.4.27
+ vue-template-compiler: 2.7.16
transitivePeerDependencies:
- supports-color
@@ -6214,17 +6543,35 @@ snapshots:
validator@13.12.0: {}
- vite-plugin-dts@3.9.1(@types/node@20.14.1)(typescript@5.4.5)(vite@5.2.12):
+ vite-node@1.6.0(@types/node@20.14.1)(sass@1.77.4):
+ dependencies:
+ cac: 6.7.14
+ debug: 4.3.5
+ pathe: 1.1.2
+ picocolors: 1.0.1
+ vite: 5.2.12(@types/node@20.14.1)(sass@1.77.4)
+ transitivePeerDependencies:
+ - '@types/node'
+ - less
+ - lightningcss
+ - sass
+ - stylus
+ - sugarss
+ - supports-color
+ - terser
+
+ vite-plugin-dts@3.9.1(@types/node@20.14.1)(rollup@4.18.0)(typescript@5.4.5)(vite@5.2.12(@types/node@20.14.1)(sass@1.77.4)):
dependencies:
'@microsoft/api-extractor': 7.43.0(@types/node@20.14.1)
- '@rollup/pluginutils': 5.1.0
+ '@rollup/pluginutils': 5.1.0(rollup@4.18.0)
'@vue/language-core': 1.8.27(typescript@5.4.5)
debug: 4.3.5
kolorist: 1.8.0
magic-string: 0.30.10
typescript: 5.4.5
- vite: 5.2.12(@types/node@20.14.1)
vue-tsc: 1.8.27(typescript@5.4.5)
+ optionalDependencies:
+ vite: 5.2.12(@types/node@20.14.1)(sass@1.77.4)
transitivePeerDependencies:
- '@types/node'
- rollup
@@ -6232,33 +6579,34 @@ snapshots:
vite@3.2.10(@types/node@16.18.98)(sass@1.77.4):
dependencies:
- '@types/node': 16.18.98
esbuild: 0.15.18
postcss: 8.4.38
resolve: 1.22.8
rollup: 2.79.1
- sass: 1.77.4
optionalDependencies:
+ '@types/node': 16.18.98
fsevents: 2.3.3
+ sass: 1.77.4
vite@5.2.12(@types/node@16.18.98)(sass@1.77.4):
dependencies:
- '@types/node': 16.18.98
esbuild: 0.20.2
postcss: 8.4.38
rollup: 4.18.0
- sass: 1.77.4
optionalDependencies:
+ '@types/node': 16.18.98
fsevents: 2.3.3
+ sass: 1.77.4
- vite@5.2.12(@types/node@20.14.1):
+ vite@5.2.12(@types/node@20.14.1)(sass@1.77.4):
dependencies:
- '@types/node': 20.14.1
esbuild: 0.20.2
postcss: 8.4.38
rollup: 4.18.0
optionalDependencies:
+ '@types/node': 20.14.1
fsevents: 2.3.3
+ sass: 1.77.4
vitest@0.24.5(jsdom@19.0.0)(sass@1.77.4):
dependencies:
@@ -6267,15 +6615,50 @@ snapshots:
'@types/node': 16.18.98
chai: 4.4.1
debug: 4.3.5
- jsdom: 19.0.0
local-pkg: 0.4.3
strip-literal: 0.4.2
tinybench: 2.8.0
tinypool: 0.3.1
tinyspy: 1.1.1
vite: 3.2.10(@types/node@16.18.98)(sass@1.77.4)
+ optionalDependencies:
+ jsdom: 19.0.0
+ transitivePeerDependencies:
+ - less
+ - sass
+ - stylus
+ - sugarss
+ - supports-color
+ - terser
+
+ vitest@1.6.0(@types/node@20.14.1)(jsdom@19.0.0)(sass@1.77.4):
+ dependencies:
+ '@vitest/expect': 1.6.0
+ '@vitest/runner': 1.6.0
+ '@vitest/snapshot': 1.6.0
+ '@vitest/spy': 1.6.0
+ '@vitest/utils': 1.6.0
+ acorn-walk: 8.3.2
+ chai: 4.4.1
+ debug: 4.3.5
+ execa: 8.0.1
+ local-pkg: 0.5.0
+ magic-string: 0.30.10
+ pathe: 1.1.2
+ picocolors: 1.0.1
+ std-env: 3.7.0
+ strip-literal: 2.1.0
+ tinybench: 2.8.0
+ tinypool: 0.8.4
+ vite: 5.2.12(@types/node@20.14.1)(sass@1.77.4)
+ vite-node: 1.6.0(@types/node@20.14.1)(sass@1.77.4)
+ why-is-node-running: 2.2.2
+ optionalDependencies:
+ '@types/node': 20.14.1
+ jsdom: 19.0.0
transitivePeerDependencies:
- less
+ - lightningcss
- sass
- stylus
- sugarss
@@ -6319,11 +6702,11 @@ snapshots:
transitivePeerDependencies:
- supports-color
- vue-resize@2.0.0-alpha.1(vue@3.4.27):
+ vue-resize@2.0.0-alpha.1(vue@3.4.27(typescript@4.7.4)):
dependencies:
vue: 3.4.27(typescript@4.7.4)
- vue-router@4.3.2(vue@3.4.27):
+ vue-router@4.3.2(vue@3.4.27(typescript@4.7.4)):
dependencies:
'@vue/devtools-api': 6.6.3
vue: 3.4.27(typescript@4.7.4)
@@ -6352,8 +6735,9 @@ snapshots:
'@vue/compiler-dom': 3.4.27
'@vue/compiler-sfc': 3.4.27
'@vue/runtime-dom': 3.4.27
- '@vue/server-renderer': 3.4.27(vue@3.4.27)
+ '@vue/server-renderer': 3.4.27(vue@3.4.27(typescript@4.7.4))
'@vue/shared': 3.4.27
+ optionalDependencies:
typescript: 4.7.4
w3c-hr-time@1.0.2:
@@ -6399,6 +6783,11 @@ snapshots:
dependencies:
isexe: 2.0.0
+ why-is-node-running@2.2.2:
+ dependencies:
+ siginfo: 2.0.0
+ stackback: 0.0.2
+
word-wrap@1.2.5: {}
wrap-ansi@7.0.0:
@@ -6443,6 +6832,8 @@ snapshots:
yocto-queue@0.1.0: {}
+ yocto-queue@1.0.0: {}
+
z-schema@5.0.5:
dependencies:
lodash.get: 4.4.2
diff --git a/src/main/java/run/halo/editor/hyperlink/HttpClientFactory.java b/src/main/java/run/halo/editor/hyperlink/HttpClientFactory.java
new file mode 100644
index 0000000..908b8f7
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/HttpClientFactory.java
@@ -0,0 +1,58 @@
+package run.halo.editor.hyperlink;
+
+import java.time.Duration;
+import java.util.List;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+import reactor.core.publisher.Mono;
+import reactor.netty.http.client.HttpClient;
+import reactor.netty.transport.ProxyProvider;
+import run.halo.app.plugin.ReactiveSettingFetcher;
+
+@Component
+@RequiredArgsConstructor
+public class HttpClientFactory {
+
+ private final ReactiveSettingFetcher settingFetcher;
+
+ public Mono createHttpClientBuilder(String host) {
+ return settingFetcher.fetch("proxy", ProxyConfig.class)
+ .map(proxyConfig -> {
+ if (isProxy(proxyConfig, host)) {
+ return getHttpClient()
+ .proxy(proxy ->
+ proxy.type(ProxyProvider.Proxy.HTTP)
+ .host(proxyConfig.host())
+ .port(proxyConfig.port()));
+ }
+ return getHttpClient();
+ });
+ }
+
+ private static boolean isProxy(ProxyConfig proxyConfig, String host) {
+ if (proxyConfig == null) {
+ return false;
+ }
+
+ if (!StringUtils.hasText(proxyConfig.host()) && proxyConfig.port() <= 0) {
+ return false;
+ }
+
+ return !CollectionUtils.isEmpty(proxyConfig.hosts)
+ && proxyConfig.hosts.stream()
+ .anyMatch(addressConfig -> host.contains(addressConfig.value));
+ }
+
+ private static HttpClient getHttpClient() {
+ return HttpClient.create()
+ .responseTimeout(Duration.ofSeconds(10));
+ }
+
+ record ProxyConfig(String host, int port, List hosts) {
+ }
+
+ record AddressConfig(String value) {
+ }
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/HyperLinkCardEndpoint.java b/src/main/java/run/halo/editor/hyperlink/HyperLinkCardEndpoint.java
new file mode 100644
index 0000000..35d7e81
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/HyperLinkCardEndpoint.java
@@ -0,0 +1,53 @@
+package run.halo.editor.hyperlink;
+
+import static org.springdoc.core.fn.builders.apiresponse.Builder.responseBuilder;
+
+import lombok.RequiredArgsConstructor;
+import org.springdoc.webflux.core.fn.SpringdocRouteBuilder;
+import org.springframework.stereotype.Component;
+import org.springframework.web.reactive.function.server.RouterFunction;
+import org.springframework.web.reactive.function.server.ServerRequest;
+import org.springframework.web.reactive.function.server.ServerResponse;
+import org.springframework.web.server.ServerWebInputException;
+import reactor.core.publisher.Mono;
+import run.halo.app.core.extension.endpoint.CustomEndpoint;
+import run.halo.app.extension.GroupVersion;
+import run.halo.app.infra.utils.PathUtils;
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+import run.halo.editor.hyperlink.service.HyperLinkCardService;
+
+/**
+ * @author LIlGG
+ */
+@Component
+@RequiredArgsConstructor
+public class HyperLinkCardEndpoint implements CustomEndpoint {
+
+ private final HyperLinkCardService hyperLinkCardService;
+
+ @Override
+ public RouterFunction endpoint() {
+ final var tag = groupVersion().toString() + "/link";
+ return SpringdocRouteBuilder.route()
+ .GET("link-detail", this::getHyperLinkDetail, builder -> {
+ builder.operationId("GetHyperLinkDetail")
+ .description("Get hyper link detail.")
+ .tag(tag)
+ .response(responseBuilder().implementation(HyperLinkBaseDTO.class));
+ })
+ .build();
+ }
+
+ private Mono getHyperLinkDetail(ServerRequest request) {
+ final var url = request.queryParam("url")
+ .filter(PathUtils::isAbsoluteUri)
+ .orElseThrow(() -> new ServerWebInputException("Invalid url."));
+ return hyperLinkCardService.getHyperLinkDetail(url)
+ .flatMap(dto -> ServerResponse.ok().bodyValue(dto));
+ }
+
+ @Override
+ public GroupVersion groupVersion() {
+ return new GroupVersion("api.hyperlink.halo.run", "v1alpha1");
+ }
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/HyperLinkHeadProcessor.java b/src/main/java/run/halo/editor/hyperlink/HyperLinkHeadProcessor.java
index 40fde2c..023bfd9 100644
--- a/src/main/java/run/halo/editor/hyperlink/HyperLinkHeadProcessor.java
+++ b/src/main/java/run/halo/editor/hyperlink/HyperLinkHeadProcessor.java
@@ -1,5 +1,6 @@
package run.halo.editor.hyperlink;
+import java.util.Properties;
import lombok.RequiredArgsConstructor;
import org.pf4j.PluginWrapper;
import org.springframework.stereotype.Component;
@@ -11,13 +12,12 @@
import reactor.core.publisher.Mono;
import run.halo.app.theme.dialect.TemplateHeadProcessor;
-import java.util.Properties;
-
@Component
@RequiredArgsConstructor
-public class HyperLinkHeadProcessor implements TemplateHeadProcessor {
+public class HyperLinkHeadProcessor implements TemplateHeadProcessor {
- static final PropertyPlaceholderHelper PROPERTY_PLACEHOLDER_HELPER = new PropertyPlaceholderHelper("${", "}");
+ static final PropertyPlaceholderHelper PROPERTY_PLACEHOLDER_HELPER =
+ new PropertyPlaceholderHelper("${", "}");
private final PluginWrapper pluginWrapper;
@@ -35,9 +35,10 @@ private String hyperlinkCardComponentScript() {
properties.setProperty("version", pluginWrapper.getDescriptor().getVersion());
return PROPERTY_PLACEHOLDER_HELPER.replacePlaceholders("""
-
-
-
- """, properties);
+
+
+
+
+ """, properties);
}
}
diff --git a/src/main/java/run/halo/editor/hyperlink/HyperLinkRequest.java b/src/main/java/run/halo/editor/hyperlink/HyperLinkRequest.java
new file mode 100644
index 0000000..d3450eb
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/HyperLinkRequest.java
@@ -0,0 +1,64 @@
+package run.halo.editor.hyperlink;
+
+import java.net.URI;
+import java.nio.charset.StandardCharsets;
+import java.util.concurrent.atomic.AtomicReference;
+import lombok.RequiredArgsConstructor;
+import org.springframework.core.io.buffer.DataBuffer;
+import org.springframework.core.io.buffer.DataBufferUtils;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
+import org.springframework.http.client.reactive.ReactorClientHttpConnector;
+import org.springframework.stereotype.Component;
+import org.springframework.util.StringUtils;
+import org.springframework.web.reactive.function.client.WebClient;
+import reactor.core.publisher.Mono;
+
+/**
+ * @author LIlGG
+ */
+@Component
+@RequiredArgsConstructor
+public class HyperLinkRequest {
+
+ private final HttpClientFactory clientFactory;
+
+ public Mono getHyperLinkDetail(URI linkURI) {
+ AtomicReference resourceUrl = new AtomicReference<>(linkURI.toString());
+ return clientFactory.createHttpClientBuilder(linkURI.getHost())
+ .map(httpClient -> httpClient.followRedirect(true, (clientRequest) -> {
+ if (StringUtils.hasText(clientRequest.resourceUrl())) {
+ resourceUrl.set(clientRequest.resourceUrl());
+ }
+ }))
+ .map(httpClient -> WebClient.builder()
+ .clientConnector(new ReactorClientHttpConnector(httpClient))
+ .build())
+ .flatMap(webClient -> webClient.get()
+ .uri(linkURI)
+ .accept(MediaType.TEXT_HTML)
+ .headers(httpHeaders -> {
+ httpHeaders.set(HttpHeaders.USER_AGENT,
+ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, "
+ + "like Gecko) Chrome/58.0.3029.110 Safari/537.3");
+ httpHeaders.set(HttpHeaders.REFERER,
+ linkURI.getScheme() + "://" + linkURI.getHost());
+ })
+ .retrieve()
+ .bodyToFlux(DataBuffer.class)
+ .flatMap(dataBuffer -> {
+ String content = dataBuffer.toString(StandardCharsets.UTF_8);
+ DataBufferUtils.release(dataBuffer);
+ return Mono.just(content);
+ })
+ .reduce(new StringBuilder(), StringBuilder::append)
+ .filter(stringBuilder -> !stringBuilder.isEmpty())
+ .map(StringBuilder::toString)
+ .map(htmlContent -> new HyperLinkResponse(htmlContent, resourceUrl.get()))
+ );
+ }
+
+ public record HyperLinkResponse(String htmlContent, String url) {
+
+ }
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/dto/HyperLinkBaseDTO.java b/src/main/java/run/halo/editor/hyperlink/dto/HyperLinkBaseDTO.java
new file mode 100644
index 0000000..0cd69c5
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/dto/HyperLinkBaseDTO.java
@@ -0,0 +1,26 @@
+package run.halo.editor.hyperlink.dto;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+/**
+ * @author LIlGG
+ */
+@Data
+public class HyperLinkBaseDTO {
+
+ @JsonProperty(value = "title", required = true)
+ private String title;
+
+ @JsonProperty("description")
+ private String description;
+
+ @JsonProperty(value = "url", required = true)
+ private String url;
+
+ @JsonProperty("icon")
+ private String icon;
+
+ @JsonProperty("image")
+ private String image;
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkDefaultParser.java b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkDefaultParser.java
new file mode 100644
index 0000000..1981f3c
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkDefaultParser.java
@@ -0,0 +1,73 @@
+package run.halo.editor.hyperlink.handler;
+
+import java.util.Arrays;
+import java.util.List;
+import org.jsoup.Jsoup;
+import org.jsoup.nodes.Document;
+import org.jsoup.parser.Parser;
+import org.jsoup.select.Elements;
+import org.springframework.util.StringUtils;
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+
+/**
+ * @author LIlGG
+ */
+public class HyperLinkDefaultParser implements HyperLinkParser {
+
+ @SuppressWarnings("checkstyle:MissingSwitchDefault")
+ @Override
+ public HyperLinkBaseDTO parse(String htmlContent) {
+ var hyperLinkBaseDTO = new HyperLinkBaseDTO();
+ Document parse = Jsoup.parse(htmlContent, Parser.htmlParser());
+
+ Elements meta = parse.getElementsByTag("meta");
+ parserMetas(meta, hyperLinkBaseDTO);
+
+ var title = parse.getElementsByTag("title").get(0).text();
+ hyperLinkBaseDTO.setTitle(title);
+
+ Elements links = parse.getElementsByTag("link");
+ parserLinks(links, hyperLinkBaseDTO);
+
+ return hyperLinkBaseDTO;
+ }
+
+ private void parserLinks(Elements links, HyperLinkBaseDTO hyperLinkBaseDTO) {
+ links.stream().filter(element -> element.hasAttr("rel"))
+ .forEach(element -> {
+ String rel = element.attr("rel");
+ List rels = Arrays.asList(rel.split(" "));
+ if (rels.contains("icon") && !StringUtils.hasText(hyperLinkBaseDTO.getIcon())) {
+ hyperLinkBaseDTO.setIcon(element.attr("href"));
+ }
+ });
+ }
+
+ private void parserMetas(Elements metas, HyperLinkBaseDTO hyperLinkBaseDTO) {
+ metas.stream().filter(element -> element.hasAttr("property"))
+ .forEach(element -> {
+ String property = element.attr("property");
+ String content = element.attr("content");
+ switch (property) {
+ case "og:title" -> hyperLinkBaseDTO.setTitle(content);
+ case "og:description" -> hyperLinkBaseDTO.setDescription(content);
+ case "og:image" -> hyperLinkBaseDTO.setImage(content);
+ case "og:url" -> hyperLinkBaseDTO.setUrl(content);
+ default -> {
+
+ }
+ }
+ });
+
+ if (!StringUtils.hasText(hyperLinkBaseDTO.getDescription())) {
+ metas.stream().filter(element -> element.hasAttr("name"))
+ .forEach(element -> {
+ String name = element.attr("name");
+ String content = element.attr("content");
+ if ("description".equals(name)) {
+ hyperLinkBaseDTO.setDescription(content);
+ }
+ });
+ }
+ }
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParser.java b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParser.java
new file mode 100644
index 0000000..bec72d8
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParser.java
@@ -0,0 +1,11 @@
+package run.halo.editor.hyperlink.handler;
+
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+
+/**
+ * @author LIlGG
+ */
+public interface HyperLinkParser {
+
+ T parse(String htmlContent);
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParserConfiguration.java b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParserConfiguration.java
new file mode 100644
index 0000000..96affd0
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParserConfiguration.java
@@ -0,0 +1,17 @@
+package run.halo.editor.hyperlink.handler;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+
+/**
+ * @author LIlGG
+ */
+@Configuration
+public class HyperLinkParserConfiguration {
+
+ @Bean
+ public HyperLinkParser defaultParser() {
+ return new HyperLinkDefaultParser();
+ }
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParserFactory.java b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParserFactory.java
new file mode 100644
index 0000000..602b03b
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/handler/HyperLinkParserFactory.java
@@ -0,0 +1,22 @@
+package run.halo.editor.hyperlink.handler;
+
+import lombok.RequiredArgsConstructor;
+import org.springframework.context.ApplicationContext;
+import org.springframework.stereotype.Component;
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+
+/**
+ * @author LIlGG
+ */
+@Component
+@RequiredArgsConstructor
+public class HyperLinkParserFactory {
+
+ private final ApplicationContext applicationContext;
+
+ @SuppressWarnings("unchecked")
+ public HyperLinkParser getParser(String host) {
+ Class extends HyperLinkParser>> type = ParserType.getBeanTypeByHost(host);
+ return (HyperLinkParser) type.cast(applicationContext.getBean(type));
+ }
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/handler/ParserType.java b/src/main/java/run/halo/editor/hyperlink/handler/ParserType.java
new file mode 100644
index 0000000..5c37573
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/handler/ParserType.java
@@ -0,0 +1,37 @@
+package run.halo.editor.hyperlink.handler;
+
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+
+/**
+ * @author LIlGG
+ */
+public enum ParserType {
+
+ DEFAULT("default", HyperLinkDefaultParser.class);
+
+ private final String host;
+ private final Class extends HyperLinkParser extends HyperLinkBaseDTO>> type;
+
+ ParserType(String host, Class extends HyperLinkParser extends HyperLinkBaseDTO>> type) {
+ this.host = host;
+ this.type = type;
+ }
+
+ public String getHost() {
+ return host;
+ }
+
+ public Class extends HyperLinkParser extends HyperLinkBaseDTO>> getType() {
+ return type;
+ }
+
+ public static Class extends HyperLinkParser extends HyperLinkBaseDTO>> getBeanTypeByHost(
+ String host) {
+ for (ParserType type : values()) {
+ if (type.getHost().equalsIgnoreCase(host)) {
+ return type.getType();
+ }
+ }
+ return DEFAULT.getType();
+ }
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/service/HyperLinkCardService.java b/src/main/java/run/halo/editor/hyperlink/service/HyperLinkCardService.java
new file mode 100644
index 0000000..d7775d0
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/service/HyperLinkCardService.java
@@ -0,0 +1,11 @@
+package run.halo.editor.hyperlink.service;
+
+import reactor.core.publisher.Mono;
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+
+/**
+ * @author LIlGG
+ */
+public interface HyperLinkCardService {
+ Mono getHyperLinkDetail(String linkUrl);
+}
diff --git a/src/main/java/run/halo/editor/hyperlink/service/HyperLinkCardServiceImpl.java b/src/main/java/run/halo/editor/hyperlink/service/HyperLinkCardServiceImpl.java
new file mode 100644
index 0000000..84ce09c
--- /dev/null
+++ b/src/main/java/run/halo/editor/hyperlink/service/HyperLinkCardServiceImpl.java
@@ -0,0 +1,66 @@
+package run.halo.editor.hyperlink.service;
+
+import com.google.common.cache.Cache;
+import com.google.common.cache.CacheBuilder;
+import java.net.URI;
+import java.util.Objects;
+import java.util.concurrent.TimeUnit;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Component;
+import org.springframework.web.server.ServerWebInputException;
+import reactor.core.publisher.Mono;
+import run.halo.app.infra.utils.PathUtils;
+import run.halo.editor.hyperlink.HyperLinkRequest;
+import run.halo.editor.hyperlink.dto.HyperLinkBaseDTO;
+import run.halo.editor.hyperlink.handler.HyperLinkParserFactory;
+
+/**
+ * @author LIlGG
+ */
+@Slf4j
+@Component
+@RequiredArgsConstructor
+public class HyperLinkCardServiceImpl implements HyperLinkCardService {
+
+ private final HyperLinkRequest request;
+
+ private final HyperLinkParserFactory parserFactory;
+
+ private final Cache hyperLinkCache = CacheBuilder.newBuilder()
+ .expireAfterWrite(12, TimeUnit.HOURS)
+ .build();
+
+ @Override
+ public Mono getHyperLinkDetail(String linkUrl) {
+ URI uri = URI.create(linkUrl);
+ var cacheHyperLink = hyperLinkCache.getIfPresent(linkUrl);
+ if (Objects.nonNull(cacheHyperLink)) {
+ return Mono.just(cacheHyperLink);
+ }
+ return request.getHyperLinkDetail(uri)
+ .switchIfEmpty(
+ Mono.error(new ServerWebInputException("this website is not supported."))
+ )
+ .map(item -> {
+ var actualURI = URI.create(item.url());
+ var hyperLinkDTO = parserFactory.getParser(uri.getHost()).parse(item.htmlContent());
+ if (StringUtils.isNotBlank(hyperLinkDTO.getIcon())
+ && !PathUtils.isAbsoluteUri(hyperLinkDTO.getIcon())) {
+ hyperLinkDTO.setIcon(actualURI.resolve(hyperLinkDTO.getIcon()).toString());
+ }
+ if (StringUtils.isNotBlank(hyperLinkDTO.getImage())
+ && !PathUtils.isAbsoluteUri(hyperLinkDTO.getImage())) {
+ hyperLinkDTO.setImage(actualURI.resolve(hyperLinkDTO.getImage()).toString());
+ }
+ if (StringUtils.isBlank(hyperLinkDTO.getUrl())) {
+ hyperLinkDTO.setUrl(actualURI.toString());
+ }
+ return hyperLinkDTO;
+ })
+ .doOnNext(hyperLinkBaseDTO -> {
+ hyperLinkCache.put(linkUrl, hyperLinkBaseDTO);
+ });
+ }
+}
diff --git a/src/main/resources/extensions/roleTemplate.yaml b/src/main/resources/extensions/roleTemplate.yaml
new file mode 100644
index 0000000..4574f25
--- /dev/null
+++ b/src/main/resources/extensions/roleTemplate.yaml
@@ -0,0 +1,15 @@
+apiVersion: v1alpha1
+kind: Role
+metadata:
+ name: role-template-hyperlink-card-default
+ labels:
+ halo.run/role-template: "true"
+ halo.run/hidden: "true"
+ rbac.authorization.halo.run/aggregate-to-anonymous: "true"
+ annotations:
+ rbac.authorization.halo.run/module: "editor-hyperlink-card"
+ rbac.authorization.halo.run/display-name: "编辑器超链接卡片"
+rules:
+ - apiGroups: ["api.hyperlink.halo.run"]
+ resources: ["*"]
+ verbs: ["*"]
\ No newline at end of file
diff --git a/src/main/resources/extensions/settings.yaml b/src/main/resources/extensions/settings.yaml
new file mode 100644
index 0000000..ba5be8b
--- /dev/null
+++ b/src/main/resources/extensions/settings.yaml
@@ -0,0 +1,26 @@
+apiVersion: v1alpha1
+kind: Setting
+metadata:
+ name: plugin-editor-hyperlink-card-settings
+spec:
+ forms:
+ - group: proxy
+ label: 代理设置
+ formSchema:
+ - $formkit: text
+ name: host
+ label: HTTP 代理地址
+ value: ""
+ - $formkit: number
+ name: port
+ label: HTTP 代理端口
+ - $formkit: repeater
+ name: hosts
+ label: 需要代理 host 的列表
+ help: 如:github.com
+ value: []
+ children:
+ - $formkit: text
+ name: value
+ label: Host 地址
+ value: ""
\ No newline at end of file
diff --git a/src/main/resources/plugin.yaml b/src/main/resources/plugin.yaml
index 66e8a51..f0f86b0 100644
--- a/src/main/resources/plugin.yaml
+++ b/src/main/resources/plugin.yaml
@@ -11,6 +11,8 @@ spec:
name: Halo
website: https://github.com/halo-dev
logo: logo.svg
+ configMapName: plugin-editor-hyperlink-card-configs
+ settingName: plugin-editor-hyperlink-card-settings
homepage: https://github.com/halo-sigs/plugin-editor-hyperlink-card#readme
repo: https://github.com/halo-sigs/plugin-editor-hyperlink-card
issues: https://github.com/halo-sigs/plugin-editor-hyperlink-card/issues
diff --git a/ui/env.d.ts b/ui/env.d.ts
index 4ee89ba..d58e43c 100644
--- a/ui/env.d.ts
+++ b/ui/env.d.ts
@@ -1,7 +1,7 @@
///
///
-declare module "*.vue" {
- import Vue from "vue";
+declare module '*.vue' {
+ import Vue from 'vue';
export default Vue;
}
diff --git a/ui/package.json b/ui/package.json
index 17206d3..9a7b1bb 100644
--- a/ui/package.json
+++ b/ui/package.json
@@ -4,7 +4,8 @@
"build": "vite build",
"test:unit": "vitest --environment jsdom",
"type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false",
- "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore"
+ "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
+ "prettier": "prettier --write './**/*.{ts,json,yaml,yml,html,vue}'"
},
"dependencies": {
"@halo-dev/components": "^2.16.0",
@@ -30,7 +31,8 @@
"eslint-plugin-vue": "^9.26.0",
"jsdom": "^19.0.0",
"postcss": "^8.4.38",
- "prettier": "^2.8.8",
+ "prettier": "^3.0.0",
+ "prettier-plugin-tailwindcss": "^0.6.1",
"sass": "^1.77.4",
"tailwindcss": "^3.4.3",
"typescript": "~4.7.4",
diff --git a/ui/pnpm-lock.yaml b/ui/pnpm-lock.yaml
index b2e15f9..62de428 100644
--- a/ui/pnpm-lock.yaml
+++ b/ui/pnpm-lock.yaml
@@ -5,7 +5,6 @@ settings:
excludeLinksFromLockfile: false
importers:
-
.:
dependencies:
'@halo-dev/components':
@@ -80,404 +79,661 @@ importers:
version: 1.8.27(typescript@4.7.4)
packages:
-
'@aashutoshrathi/word-wrap@1.2.6':
- resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==,
+ }
+ engines: { node: '>=0.10.0' }
'@antfu/install-pkg@0.1.1':
- resolution: {integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==}
+ resolution:
+ {
+ integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==,
+ }
'@antfu/utils@0.7.2':
- resolution: {integrity: sha512-vy9fM3pIxZmX07dL+VX1aZe7ynZ+YyB0jY+jE6r3hOK6GNY2t6W8rzpFC4tgpbXUYABkFQwgJq2XYXlxbXAI0g==}
+ resolution:
+ {
+ integrity: sha512-vy9fM3pIxZmX07dL+VX1aZe7ynZ+YyB0jY+jE6r3hOK6GNY2t6W8rzpFC4tgpbXUYABkFQwgJq2XYXlxbXAI0g==,
+ }
'@antfu/utils@0.7.4':
- resolution: {integrity: sha512-qe8Nmh9rYI/HIspLSTwtbMFPj6dISG6+dJnOguTlPNXtCvS2uezdxscVBb7/3DrmNbQK49TDqpkSQ1chbRGdpQ==}
+ resolution:
+ {
+ integrity: sha512-qe8Nmh9rYI/HIspLSTwtbMFPj6dISG6+dJnOguTlPNXtCvS2uezdxscVBb7/3DrmNbQK49TDqpkSQ1chbRGdpQ==,
+ }
'@babel/helper-string-parser@7.22.5':
- resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==}
- engines: {node: '>=6.9.0'}
+ resolution:
+ {
+ integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==,
+ }
+ engines: { node: '>=6.9.0' }
'@babel/helper-validator-identifier@7.22.5':
- resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==}
- engines: {node: '>=6.9.0'}
+ resolution:
+ {
+ integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==,
+ }
+ engines: { node: '>=6.9.0' }
'@babel/parser@7.23.6':
- resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==}
- engines: {node: '>=6.0.0'}
+ resolution:
+ {
+ integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==,
+ }
+ engines: { node: '>=6.0.0' }
hasBin: true
'@babel/parser@7.24.6':
- resolution: {integrity: sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==}
- engines: {node: '>=6.0.0'}
+ resolution:
+ {
+ integrity: sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==,
+ }
+ engines: { node: '>=6.0.0' }
hasBin: true
'@babel/types@7.22.5':
- resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==}
- engines: {node: '>=6.9.0'}
+ resolution:
+ {
+ integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==,
+ }
+ engines: { node: '>=6.9.0' }
'@esbuild/aix-ppc64@0.20.2':
- resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==,
+ }
+ engines: { node: '>=12' }
cpu: [ppc64]
os: [aix]
'@esbuild/android-arm64@0.20.2':
- resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [android]
'@esbuild/android-arm@0.15.12':
- resolution: {integrity: sha512-IC7TqIqiyE0MmvAhWkl/8AEzpOtbhRNDo7aph47We1NbE5w2bt/Q+giAhe0YYeVpYnIhGMcuZY92qDK6dQauvA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-IC7TqIqiyE0MmvAhWkl/8AEzpOtbhRNDo7aph47We1NbE5w2bt/Q+giAhe0YYeVpYnIhGMcuZY92qDK6dQauvA==,
+ }
+ engines: { node: '>=12' }
cpu: [arm]
os: [android]
'@esbuild/android-arm@0.20.2':
- resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==,
+ }
+ engines: { node: '>=12' }
cpu: [arm]
os: [android]
'@esbuild/android-x64@0.20.2':
- resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [android]
'@esbuild/darwin-arm64@0.20.2':
- resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [darwin]
'@esbuild/darwin-x64@0.20.2':
- resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [darwin]
'@esbuild/freebsd-arm64@0.20.2':
- resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [freebsd]
'@esbuild/freebsd-x64@0.20.2':
- resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [freebsd]
'@esbuild/linux-arm64@0.20.2':
- resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [linux]
'@esbuild/linux-arm@0.20.2':
- resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==,
+ }
+ engines: { node: '>=12' }
cpu: [arm]
os: [linux]
'@esbuild/linux-ia32@0.20.2':
- resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==,
+ }
+ engines: { node: '>=12' }
cpu: [ia32]
os: [linux]
'@esbuild/linux-loong64@0.15.12':
- resolution: {integrity: sha512-tZEowDjvU7O7I04GYvWQOS4yyP9E/7YlsB0jjw1Ycukgr2ycEzKyIk5tms5WnLBymaewc6VmRKnn5IJWgK4eFw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-tZEowDjvU7O7I04GYvWQOS4yyP9E/7YlsB0jjw1Ycukgr2ycEzKyIk5tms5WnLBymaewc6VmRKnn5IJWgK4eFw==,
+ }
+ engines: { node: '>=12' }
cpu: [loong64]
os: [linux]
'@esbuild/linux-loong64@0.20.2':
- resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==,
+ }
+ engines: { node: '>=12' }
cpu: [loong64]
os: [linux]
'@esbuild/linux-mips64el@0.20.2':
- resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==,
+ }
+ engines: { node: '>=12' }
cpu: [mips64el]
os: [linux]
'@esbuild/linux-ppc64@0.20.2':
- resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==,
+ }
+ engines: { node: '>=12' }
cpu: [ppc64]
os: [linux]
'@esbuild/linux-riscv64@0.20.2':
- resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==,
+ }
+ engines: { node: '>=12' }
cpu: [riscv64]
os: [linux]
'@esbuild/linux-s390x@0.20.2':
- resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==,
+ }
+ engines: { node: '>=12' }
cpu: [s390x]
os: [linux]
'@esbuild/linux-x64@0.20.2':
- resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [linux]
'@esbuild/netbsd-x64@0.20.2':
- resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [netbsd]
'@esbuild/openbsd-x64@0.20.2':
- resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [openbsd]
'@esbuild/sunos-x64@0.20.2':
- resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [sunos]
'@esbuild/win32-arm64@0.20.2':
- resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [win32]
'@esbuild/win32-ia32@0.20.2':
- resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==,
+ }
+ engines: { node: '>=12' }
cpu: [ia32]
os: [win32]
'@esbuild/win32-x64@0.20.2':
- resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [win32]
'@eslint-community/eslint-utils@4.4.0':
- resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
'@eslint-community/regexpp@4.10.0':
- resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==}
- engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==,
+ }
+ engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 }
'@eslint-community/regexpp@4.5.1':
- resolution: {integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==}
- engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==,
+ }
+ engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 }
'@eslint/eslintrc@2.1.4':
- resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
'@eslint/js@8.57.0':
- resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
'@floating-ui/core@1.5.2':
- resolution: {integrity: sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==}
+ resolution:
+ {
+ integrity: sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==,
+ }
'@floating-ui/dom@1.1.1':
- resolution: {integrity: sha512-TpIO93+DIujg3g7SykEAGZMDtbJRrmnYRCNYSjJlvIbGhBjRSNTLVbNeDQBrzy9qDgUbiWdc7KA0uZHZ2tJmiw==}
+ resolution:
+ {
+ integrity: sha512-TpIO93+DIujg3g7SykEAGZMDtbJRrmnYRCNYSjJlvIbGhBjRSNTLVbNeDQBrzy9qDgUbiWdc7KA0uZHZ2tJmiw==,
+ }
'@floating-ui/utils@0.1.6':
- resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==}
+ resolution:
+ {
+ integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==,
+ }
'@halo-dev/api-client@2.16.0':
- resolution: {integrity: sha512-oSrP+84p8HZzRjO4DgGxkAJwN8hwHpOUlFhO3PdEi3F2QC3bwH5+LmYJgHilVP9KEMRY+uplE//v908kfkYLhg==}
+ resolution:
+ {
+ integrity: sha512-oSrP+84p8HZzRjO4DgGxkAJwN8hwHpOUlFhO3PdEi3F2QC3bwH5+LmYJgHilVP9KEMRY+uplE//v908kfkYLhg==,
+ }
'@halo-dev/components@2.16.0':
- resolution: {integrity: sha512-r4bGGmR9Hz/m1hnL1Ha0iWwQM2ImtB4DfJOMOfsABP0eGCZL1hXv/08JE05sP9g7gtLlRNQ6xTPLKyp6E6WY4g==}
+ resolution:
+ {
+ integrity: sha512-r4bGGmR9Hz/m1hnL1Ha0iWwQM2ImtB4DfJOMOfsABP0eGCZL1hXv/08JE05sP9g7gtLlRNQ6xTPLKyp6E6WY4g==,
+ }
peerDependencies:
vue: ^3.4.27
vue-router: ^4.3.2
'@halo-dev/console-shared@2.16.0':
- resolution: {integrity: sha512-skt6lvZsJibHYJ/87ofH8rnyVF4SNzleZMh58xhGyQAZcSS09YgXJGd39DqGqxdWSAx/lX3O08b+r/xcJIPc3g==}
+ resolution:
+ {
+ integrity: sha512-skt6lvZsJibHYJ/87ofH8rnyVF4SNzleZMh58xhGyQAZcSS09YgXJGd39DqGqxdWSAx/lX3O08b+r/xcJIPc3g==,
+ }
peerDependencies:
vue: ^3.4.27
vue-router: ^4.3.2
'@halo-dev/ui-plugin-bundler-kit@2.16.0':
- resolution: {integrity: sha512-ctqWgHaUYyfx62ifKTHDNFypJStSnrvNMGGOqYJWiDUCYgKT5b6HlSrkRgPUHUZXjlN8Cjhp40xedlHZ8jGLLQ==}
- engines: {node: ^18.0.0 || >=20.0.0}
+ resolution:
+ {
+ integrity: sha512-ctqWgHaUYyfx62ifKTHDNFypJStSnrvNMGGOqYJWiDUCYgKT5b6HlSrkRgPUHUZXjlN8Cjhp40xedlHZ8jGLLQ==,
+ }
+ engines: { node: ^18.0.0 || >=20.0.0 }
peerDependencies:
vite: ^4.0.0 || ^5.0.0
'@humanwhocodes/config-array@0.11.14':
- resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
- engines: {node: '>=10.10.0'}
+ resolution:
+ {
+ integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==,
+ }
+ engines: { node: '>=10.10.0' }
'@humanwhocodes/module-importer@1.0.1':
- resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
- engines: {node: '>=12.22'}
+ resolution:
+ {
+ integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==,
+ }
+ engines: { node: '>=12.22' }
'@humanwhocodes/object-schema@2.0.3':
- resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
+ resolution:
+ {
+ integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==,
+ }
'@iconify/json@2.2.216':
- resolution: {integrity: sha512-dS2yVIAel1oIAGnaxR+EJyDRjKV9GGm9tUd8Pd8VEF91HB4HJrsMzkvz23GHDWyIITGdinx4ZUjMz3hOAv+D4Q==}
+ resolution:
+ {
+ integrity: sha512-dS2yVIAel1oIAGnaxR+EJyDRjKV9GGm9tUd8Pd8VEF91HB4HJrsMzkvz23GHDWyIITGdinx4ZUjMz3hOAv+D4Q==,
+ }
'@iconify/types@2.0.0':
- resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
+ resolution:
+ {
+ integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==,
+ }
'@iconify/utils@2.1.6':
- resolution: {integrity: sha512-WJNcj/mmFQoYok+576EexlCQe/g2tZ8X9jR4QLo++z6DlVqrjwt7FBYetTQ3iyTtrPMFHcAx0JiCqtUz30XG5A==}
+ resolution:
+ {
+ integrity: sha512-WJNcj/mmFQoYok+576EexlCQe/g2tZ8X9jR4QLo++z6DlVqrjwt7FBYetTQ3iyTtrPMFHcAx0JiCqtUz30XG5A==,
+ }
'@isaacs/cliui@8.0.2':
- resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==,
+ }
+ engines: { node: '>=12' }
'@jridgewell/sourcemap-codec@1.4.15':
- resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
+ resolution:
+ {
+ integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==,
+ }
'@nodelib/fs.scandir@2.1.5':
- resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
- engines: {node: '>= 8'}
+ resolution:
+ {
+ integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==,
+ }
+ engines: { node: '>= 8' }
'@nodelib/fs.stat@2.0.5':
- resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
- engines: {node: '>= 8'}
+ resolution:
+ {
+ integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==,
+ }
+ engines: { node: '>= 8' }
'@nodelib/fs.walk@1.2.8':
- resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
- engines: {node: '>= 8'}
+ resolution:
+ {
+ integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==,
+ }
+ engines: { node: '>= 8' }
'@one-ini/wasm@0.1.1':
- resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==}
+ resolution:
+ {
+ integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==,
+ }
'@pkgjs/parseargs@0.11.0':
- resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==,
+ }
+ engines: { node: '>=14' }
'@rollup/rollup-android-arm-eabi@4.18.0':
- resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==}
+ resolution:
+ {
+ integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==,
+ }
cpu: [arm]
os: [android]
'@rollup/rollup-android-arm64@4.18.0':
- resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==}
+ resolution:
+ {
+ integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==,
+ }
cpu: [arm64]
os: [android]
'@rollup/rollup-darwin-arm64@4.18.0':
- resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==}
+ resolution:
+ {
+ integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==,
+ }
cpu: [arm64]
os: [darwin]
'@rollup/rollup-darwin-x64@4.18.0':
- resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==}
+ resolution:
+ {
+ integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==,
+ }
cpu: [x64]
os: [darwin]
'@rollup/rollup-linux-arm-gnueabihf@4.18.0':
- resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==}
+ resolution:
+ {
+ integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==,
+ }
cpu: [arm]
os: [linux]
'@rollup/rollup-linux-arm-musleabihf@4.18.0':
- resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==}
+ resolution:
+ {
+ integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==,
+ }
cpu: [arm]
os: [linux]
'@rollup/rollup-linux-arm64-gnu@4.18.0':
- resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==}
+ resolution:
+ {
+ integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==,
+ }
cpu: [arm64]
os: [linux]
'@rollup/rollup-linux-arm64-musl@4.18.0':
- resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==}
+ resolution:
+ {
+ integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==,
+ }
cpu: [arm64]
os: [linux]
'@rollup/rollup-linux-powerpc64le-gnu@4.18.0':
- resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==}
+ resolution:
+ {
+ integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==,
+ }
cpu: [ppc64]
os: [linux]
'@rollup/rollup-linux-riscv64-gnu@4.18.0':
- resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==}
+ resolution:
+ {
+ integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==,
+ }
cpu: [riscv64]
os: [linux]
'@rollup/rollup-linux-s390x-gnu@4.18.0':
- resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==}
+ resolution:
+ {
+ integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==,
+ }
cpu: [s390x]
os: [linux]
'@rollup/rollup-linux-x64-gnu@4.18.0':
- resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==}
+ resolution:
+ {
+ integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==,
+ }
cpu: [x64]
os: [linux]
'@rollup/rollup-linux-x64-musl@4.18.0':
- resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==}
+ resolution:
+ {
+ integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==,
+ }
cpu: [x64]
os: [linux]
'@rollup/rollup-win32-arm64-msvc@4.18.0':
- resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==}
+ resolution:
+ {
+ integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==,
+ }
cpu: [arm64]
os: [win32]
'@rollup/rollup-win32-ia32-msvc@4.18.0':
- resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==}
+ resolution:
+ {
+ integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==,
+ }
cpu: [ia32]
os: [win32]
'@rollup/rollup-win32-x64-msvc@4.18.0':
- resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==}
+ resolution:
+ {
+ integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==,
+ }
cpu: [x64]
os: [win32]
'@rushstack/eslint-patch@1.10.3':
- resolution: {integrity: sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==}
+ resolution:
+ {
+ integrity: sha512-qC/xYId4NMebE6w/V33Fh9gWxLgURiNYgVNObbJl2LZv0GUUItCcCqC5axQSwRaAgaxl2mELq1rMzlswaQ0Zxg==,
+ }
'@tootallnate/once@2.0.0':
- resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==}
- engines: {node: '>= 10'}
+ resolution:
+ {
+ integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==,
+ }
+ engines: { node: '>= 10' }
'@types/chai-subset@1.3.3':
- resolution: {integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==}
+ resolution:
+ {
+ integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==,
+ }
'@types/chai@4.3.3':
- resolution: {integrity: sha512-hC7OMnszpxhZPduX+m+nrx+uFoLkWOMiR4oa/AZF3MuSETYTZmFfJAHqZEM8MVlvfG7BEUcgvtwoCTxBp6hm3g==}
+ resolution:
+ {
+ integrity: sha512-hC7OMnszpxhZPduX+m+nrx+uFoLkWOMiR4oa/AZF3MuSETYTZmFfJAHqZEM8MVlvfG7BEUcgvtwoCTxBp6hm3g==,
+ }
'@types/estree@1.0.5':
- resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
+ resolution:
+ {
+ integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==,
+ }
'@types/jsdom@20.0.1':
- resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==}
+ resolution:
+ {
+ integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==,
+ }
'@types/json-schema@7.0.11':
- resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==}
+ resolution:
+ {
+ integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==,
+ }
'@types/node@16.18.98':
- resolution: {integrity: sha512-fpiC20NvLpTLAzo3oVBKIqBGR6Fx/8oAK/SSf7G+fydnXMY1x4x9RZ6sBXhqKlCU21g2QapUsbLlhv3+a7wS+Q==}
+ resolution:
+ {
+ integrity: sha512-fpiC20NvLpTLAzo3oVBKIqBGR6Fx/8oAK/SSf7G+fydnXMY1x4x9RZ6sBXhqKlCU21g2QapUsbLlhv3+a7wS+Q==,
+ }
'@types/semver@7.5.0':
- resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==}
+ resolution:
+ {
+ integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==,
+ }
'@types/tough-cookie@4.0.2':
- resolution: {integrity: sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==}
+ resolution:
+ {
+ integrity: sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==,
+ }
'@typescript-eslint/eslint-plugin@5.59.9':
- resolution: {integrity: sha512-4uQIBq1ffXd2YvF7MAvehWKW3zVv/w+mSfRAu+8cKbfj3nwzyqJLNcZJpQ/WZ1HLbJDiowwmQ6NO+63nCA+fqA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-4uQIBq1ffXd2YvF7MAvehWKW3zVv/w+mSfRAu+8cKbfj3nwzyqJLNcZJpQ/WZ1HLbJDiowwmQ6NO+63nCA+fqA==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
peerDependencies:
'@typescript-eslint/parser': ^5.0.0
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
@@ -487,8 +743,11 @@ packages:
optional: true
'@typescript-eslint/parser@5.59.9':
- resolution: {integrity: sha512-FsPkRvBtcLQ/eVK1ivDiNYBjn3TGJdXy2fhXX+rc7czWl4ARwnpArwbihSOHI2Peg9WbtGHrbThfBUkZZGTtvQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-FsPkRvBtcLQ/eVK1ivDiNYBjn3TGJdXy2fhXX+rc7czWl4ARwnpArwbihSOHI2Peg9WbtGHrbThfBUkZZGTtvQ==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
typescript: '*'
@@ -497,12 +756,18 @@ packages:
optional: true
'@typescript-eslint/scope-manager@5.59.9':
- resolution: {integrity: sha512-8RA+E+w78z1+2dzvK/tGZ2cpGigBZ58VMEHDZtpE1v+LLjzrYGc8mMaTONSxKyEkz3IuXFM0IqYiGHlCsmlZxQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-8RA+E+w78z1+2dzvK/tGZ2cpGigBZ58VMEHDZtpE1v+LLjzrYGc8mMaTONSxKyEkz3IuXFM0IqYiGHlCsmlZxQ==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
'@typescript-eslint/type-utils@5.59.9':
- resolution: {integrity: sha512-ksEsT0/mEHg9e3qZu98AlSrONAQtrSTljL3ow9CGej8eRo7pe+yaC/mvTjptp23Xo/xIf2mLZKC6KPv4Sji26Q==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-ksEsT0/mEHg9e3qZu98AlSrONAQtrSTljL3ow9CGej8eRo7pe+yaC/mvTjptp23Xo/xIf2mLZKC6KPv4Sji26Q==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: '*'
typescript: '*'
@@ -511,12 +776,18 @@ packages:
optional: true
'@typescript-eslint/types@5.59.9':
- resolution: {integrity: sha512-uW8H5NRgTVneSVTfiCVffBb8AbwWSKg7qcA4Ot3JI3MPCJGsB4Db4BhvAODIIYE5mNj7Q+VJkK7JxmRhk2Lyjw==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-uW8H5NRgTVneSVTfiCVffBb8AbwWSKg7qcA4Ot3JI3MPCJGsB4Db4BhvAODIIYE5mNj7Q+VJkK7JxmRhk2Lyjw==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
'@typescript-eslint/typescript-estree@5.59.9':
- resolution: {integrity: sha512-pmM0/VQ7kUhd1QyIxgS+aRvMgw+ZljB3eDb+jYyp6d2bC0mQWLzUDF+DLwCTkQ3tlNyVsvZRXjFyV0LkU/aXjA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-pmM0/VQ7kUhd1QyIxgS+aRvMgw+ZljB3eDb+jYyp6d2bC0mQWLzUDF+DLwCTkQ3tlNyVsvZRXjFyV0LkU/aXjA==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
peerDependencies:
typescript: '*'
peerDependenciesMeta:
@@ -524,64 +795,112 @@ packages:
optional: true
'@typescript-eslint/utils@5.59.9':
- resolution: {integrity: sha512-1PuMYsju/38I5Ggblaeb98TOoUvjhRvLpLa1DoTOFaLWqaXl/1iQ1eGurTXgBY58NUdtfTXKP5xBq7q9NDaLKg==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-1PuMYsju/38I5Ggblaeb98TOoUvjhRvLpLa1DoTOFaLWqaXl/1iQ1eGurTXgBY58NUdtfTXKP5xBq7q9NDaLKg==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
'@typescript-eslint/visitor-keys@5.59.9':
- resolution: {integrity: sha512-bT7s0td97KMaLwpEBckbzj/YohnvXtqbe2XgqNvTl6RJVakY5mvENOTPvw5u66nljfZxthESpDozs86U+oLY8Q==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-bT7s0td97KMaLwpEBckbzj/YohnvXtqbe2XgqNvTl6RJVakY5mvENOTPvw5u66nljfZxthESpDozs86U+oLY8Q==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
'@ungap/structured-clone@1.2.0':
- resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
+ resolution:
+ {
+ integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==,
+ }
'@vitejs/plugin-vue@5.0.5':
- resolution: {integrity: sha512-LOjm7XeIimLBZyzinBQ6OSm3UBCNVCpLkxGC0oWmm2YPzVZoxMsdvNVimLTBzpAnR9hl/yn1SHGuRfe6/Td9rQ==}
- engines: {node: ^18.0.0 || >=20.0.0}
+ resolution:
+ {
+ integrity: sha512-LOjm7XeIimLBZyzinBQ6OSm3UBCNVCpLkxGC0oWmm2YPzVZoxMsdvNVimLTBzpAnR9hl/yn1SHGuRfe6/Td9rQ==,
+ }
+ engines: { node: ^18.0.0 || >=20.0.0 }
peerDependencies:
vite: ^5.0.0
vue: ^3.2.25
'@volar/language-core@1.11.1':
- resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==}
+ resolution:
+ {
+ integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==,
+ }
'@volar/source-map@1.11.1':
- resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==}
+ resolution:
+ {
+ integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==,
+ }
'@volar/typescript@1.11.1':
- resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==}
+ resolution:
+ {
+ integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==,
+ }
'@vue/compiler-core@3.3.12':
- resolution: {integrity: sha512-qAtjyG3GBLG0chzp5xGCyRLLe6wFCHmjI82aGzwuGKyznNP+GJJMxjc0wOYWDB2YKfho7niJFdoFpo0CZZQg9w==}
+ resolution:
+ {
+ integrity: sha512-qAtjyG3GBLG0chzp5xGCyRLLe6wFCHmjI82aGzwuGKyznNP+GJJMxjc0wOYWDB2YKfho7niJFdoFpo0CZZQg9w==,
+ }
'@vue/compiler-core@3.4.27':
- resolution: {integrity: sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==}
+ resolution:
+ {
+ integrity: sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==,
+ }
'@vue/compiler-dom@3.3.12':
- resolution: {integrity: sha512-RdJU9oEYaoPKUdGXCy0l+i4clesdDeLmbvRlszoc9iagsnBnMmQtYfCPVQ5BHB6o7K4SCucDdJM2Dh3oXB0D6g==}
+ resolution:
+ {
+ integrity: sha512-RdJU9oEYaoPKUdGXCy0l+i4clesdDeLmbvRlszoc9iagsnBnMmQtYfCPVQ5BHB6o7K4SCucDdJM2Dh3oXB0D6g==,
+ }
'@vue/compiler-dom@3.4.27':
- resolution: {integrity: sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==}
+ resolution:
+ {
+ integrity: sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==,
+ }
'@vue/compiler-sfc@3.4.27':
- resolution: {integrity: sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==}
+ resolution:
+ {
+ integrity: sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==,
+ }
'@vue/compiler-ssr@3.4.27':
- resolution: {integrity: sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==}
+ resolution:
+ {
+ integrity: sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==,
+ }
'@vue/devtools-api@6.5.0':
- resolution: {integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==}
+ resolution:
+ {
+ integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==,
+ }
'@vue/eslint-config-prettier@7.1.0':
- resolution: {integrity: sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ==}
+ resolution:
+ {
+ integrity: sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ==,
+ }
peerDependencies:
eslint: '>= 7.28.0'
prettier: '>= 2.0.0'
'@vue/eslint-config-typescript@11.0.3':
- resolution: {integrity: sha512-dkt6W0PX6H/4Xuxg/BlFj5xHvksjpSlVjtkQCpaYJBIEuKj2hOVU7r+TIe+ysCwRYFz/lGqvklntRkCAibsbPw==}
- engines: {node: ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-dkt6W0PX6H/4Xuxg/BlFj5xHvksjpSlVjtkQCpaYJBIEuKj2hOVU7r+TIe+ysCwRYFz/lGqvklntRkCAibsbPw==,
+ }
+ engines: { node: ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
eslint-plugin-vue: ^9.0.0
@@ -591,7 +910,10 @@ packages:
optional: true
'@vue/language-core@1.8.27':
- resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==}
+ resolution:
+ {
+ integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==,
+ }
peerDependencies:
typescript: '*'
peerDependenciesMeta:
@@ -599,30 +921,54 @@ packages:
optional: true
'@vue/reactivity@3.4.27':
- resolution: {integrity: sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==}
+ resolution:
+ {
+ integrity: sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==,
+ }
'@vue/runtime-core@3.4.27':
- resolution: {integrity: sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA==}
+ resolution:
+ {
+ integrity: sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA==,
+ }
'@vue/runtime-dom@3.4.27':
- resolution: {integrity: sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q==}
+ resolution:
+ {
+ integrity: sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q==,
+ }
'@vue/server-renderer@3.4.27':
- resolution: {integrity: sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA==}
+ resolution:
+ {
+ integrity: sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA==,
+ }
peerDependencies:
vue: 3.4.27
'@vue/shared@3.3.12':
- resolution: {integrity: sha512-6p0Yin0pclvnER7BLNOQuod9Z+cxSYh8pSh7CzHnWNjAIP6zrTlCdHRvSCb1aYEx6i3Q3kvfuWU7nG16CgG1ag==}
+ resolution:
+ {
+ integrity: sha512-6p0Yin0pclvnER7BLNOQuod9Z+cxSYh8pSh7CzHnWNjAIP6zrTlCdHRvSCb1aYEx6i3Q3kvfuWU7nG16CgG1ag==,
+ }
'@vue/shared@3.4.27':
- resolution: {integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==}
+ resolution:
+ {
+ integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==,
+ }
'@vue/test-utils@2.4.6':
- resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==}
+ resolution:
+ {
+ integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==,
+ }
'@vue/tsconfig@0.1.3':
- resolution: {integrity: sha512-kQVsh8yyWPvHpb8gIc9l/HIDiiVUy1amynLNpCy8p+FoCiZXCo6fQos5/097MmnNZc9AtseDsCrfkhqCrJ8Olg==}
+ resolution:
+ {
+ integrity: sha512-kQVsh8yyWPvHpb8gIc9l/HIDiiVUy1amynLNpCy8p+FoCiZXCo6fQos5/097MmnNZc9AtseDsCrfkhqCrJ8Olg==,
+ }
peerDependencies:
'@types/node': '*'
peerDependenciesMeta:
@@ -630,182 +976,323 @@ packages:
optional: true
abab@2.0.6:
- resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==}
+ resolution:
+ {
+ integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==,
+ }
abbrev@2.0.0:
- resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ resolution:
+ {
+ integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==,
+ }
+ engines: { node: ^14.17.0 || ^16.13.0 || >=18.0.0 }
acorn-globals@6.0.0:
- resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==}
+ resolution:
+ {
+ integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==,
+ }
acorn-jsx@5.3.2:
- resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ resolution:
+ {
+ integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==,
+ }
peerDependencies:
acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
acorn-walk@7.2.0:
- resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
- engines: {node: '>=0.4.0'}
+ resolution:
+ {
+ integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==,
+ }
+ engines: { node: '>=0.4.0' }
acorn@7.4.1:
- resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==}
- engines: {node: '>=0.4.0'}
+ resolution:
+ {
+ integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==,
+ }
+ engines: { node: '>=0.4.0' }
hasBin: true
acorn@8.11.2:
- resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==}
- engines: {node: '>=0.4.0'}
+ resolution:
+ {
+ integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==,
+ }
+ engines: { node: '>=0.4.0' }
hasBin: true
acorn@8.7.1:
- resolution: {integrity: sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==}
- engines: {node: '>=0.4.0'}
+ resolution:
+ {
+ integrity: sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==,
+ }
+ engines: { node: '>=0.4.0' }
hasBin: true
acorn@8.8.1:
- resolution: {integrity: sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==}
- engines: {node: '>=0.4.0'}
+ resolution:
+ {
+ integrity: sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==,
+ }
+ engines: { node: '>=0.4.0' }
hasBin: true
agent-base@6.0.2:
- resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
- engines: {node: '>= 6.0.0'}
+ resolution:
+ {
+ integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==,
+ }
+ engines: { node: '>= 6.0.0' }
ajv@6.12.6:
- resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ resolution:
+ {
+ integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==,
+ }
ansi-regex@5.0.1:
- resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==,
+ }
+ engines: { node: '>=8' }
ansi-regex@6.0.1:
- resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==,
+ }
+ engines: { node: '>=12' }
ansi-styles@4.3.0:
- resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==,
+ }
+ engines: { node: '>=8' }
ansi-styles@6.2.1:
- resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==,
+ }
+ engines: { node: '>=12' }
anymatch@3.1.3:
- resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
- engines: {node: '>= 8'}
+ resolution:
+ {
+ integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==,
+ }
+ engines: { node: '>= 8' }
argparse@2.0.1:
- resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+ resolution:
+ {
+ integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==,
+ }
array-union@2.1.0:
- resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==,
+ }
+ engines: { node: '>=8' }
assertion-error@1.1.0:
- resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
+ resolution:
+ {
+ integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==,
+ }
asynckit@0.4.0:
- resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
+ resolution:
+ {
+ integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==,
+ }
balanced-match@1.0.2:
- resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+ resolution:
+ {
+ integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==,
+ }
binary-extensions@2.2.0:
- resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==,
+ }
+ engines: { node: '>=8' }
boolbase@1.0.0:
- resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
+ resolution:
+ {
+ integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==,
+ }
brace-expansion@1.1.11:
- resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
+ resolution:
+ {
+ integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==,
+ }
brace-expansion@2.0.1:
- resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+ resolution:
+ {
+ integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==,
+ }
braces@3.0.2:
- resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==,
+ }
+ engines: { node: '>=8' }
browser-process-hrtime@1.0.0:
- resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==}
+ resolution:
+ {
+ integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==,
+ }
callsites@3.1.0:
- resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==,
+ }
+ engines: { node: '>=6' }
chai@4.3.6:
- resolution: {integrity: sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==}
- engines: {node: '>=4'}
+ resolution:
+ {
+ integrity: sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==,
+ }
+ engines: { node: '>=4' }
chalk@4.1.2:
- resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==,
+ }
+ engines: { node: '>=10' }
check-error@1.0.2:
- resolution: {integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==}
+ resolution:
+ {
+ integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==,
+ }
chokidar@3.5.3:
- resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
- engines: {node: '>= 8.10.0'}
+ resolution:
+ {
+ integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==,
+ }
+ engines: { node: '>= 8.10.0' }
color-convert@2.0.1:
- resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
- engines: {node: '>=7.0.0'}
+ resolution:
+ {
+ integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==,
+ }
+ engines: { node: '>=7.0.0' }
color-name@1.1.4:
- resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ resolution:
+ {
+ integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==,
+ }
combined-stream@1.0.8:
- resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
- engines: {node: '>= 0.8'}
+ resolution:
+ {
+ integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==,
+ }
+ engines: { node: '>= 0.8' }
commander@10.0.1:
- resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==,
+ }
+ engines: { node: '>=14' }
computeds@0.0.1:
- resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==}
+ resolution:
+ {
+ integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==,
+ }
concat-map@0.0.1:
- resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=}
+ resolution: { integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= }
config-chain@1.1.13:
- resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
+ resolution:
+ {
+ integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==,
+ }
cross-spawn@7.0.3:
- resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
- engines: {node: '>= 8'}
+ resolution:
+ {
+ integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==,
+ }
+ engines: { node: '>= 8' }
cssesc@3.0.0:
- resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
- engines: {node: '>=4'}
+ resolution:
+ {
+ integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==,
+ }
+ engines: { node: '>=4' }
hasBin: true
cssom@0.3.8:
- resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==}
+ resolution:
+ {
+ integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==,
+ }
cssom@0.5.0:
- resolution: {integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==}
+ resolution:
+ {
+ integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==,
+ }
cssstyle@2.3.0:
- resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==,
+ }
+ engines: { node: '>=8' }
csstype@3.1.3:
- resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+ resolution:
+ {
+ integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==,
+ }
data-urls@3.0.2:
- resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==,
+ }
+ engines: { node: '>=12' }
de-indent@1.0.2:
- resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
+ resolution:
+ {
+ integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==,
+ }
debug@4.3.4:
- resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
- engines: {node: '>=6.0'}
+ resolution:
+ {
+ integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==,
+ }
+ engines: { node: '>=6.0' }
peerDependencies:
supports-color: '*'
peerDependenciesMeta:
@@ -813,201 +1300,318 @@ packages:
optional: true
decimal.js@10.3.1:
- resolution: {integrity: sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==}
+ resolution:
+ {
+ integrity: sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==,
+ }
deep-eql@3.0.1:
- resolution: {integrity: sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==}
- engines: {node: '>=0.12'}
+ resolution:
+ {
+ integrity: sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==,
+ }
+ engines: { node: '>=0.12' }
deep-is@0.1.4:
- resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+ resolution:
+ {
+ integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==,
+ }
delayed-stream@1.0.0:
- resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
- engines: {node: '>=0.4.0'}
+ resolution:
+ {
+ integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==,
+ }
+ engines: { node: '>=0.4.0' }
dir-glob@3.0.1:
- resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==,
+ }
+ engines: { node: '>=8' }
doctrine@3.0.0:
- resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
- engines: {node: '>=6.0.0'}
+ resolution:
+ {
+ integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==,
+ }
+ engines: { node: '>=6.0.0' }
domexception@4.0.0:
- resolution: {integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==,
+ }
+ engines: { node: '>=12' }
eastasianwidth@0.2.0:
- resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
+ resolution:
+ {
+ integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==,
+ }
editorconfig@1.0.4:
- resolution: {integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==,
+ }
+ engines: { node: '>=14' }
hasBin: true
emoji-regex@8.0.0:
- resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
+ resolution:
+ {
+ integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==,
+ }
emoji-regex@9.2.2:
- resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+ resolution:
+ {
+ integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==,
+ }
entities@4.4.0:
- resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==}
- engines: {node: '>=0.12'}
+ resolution:
+ {
+ integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==,
+ }
+ engines: { node: '>=0.12' }
entities@4.5.0:
- resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
- engines: {node: '>=0.12'}
+ resolution:
+ {
+ integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==,
+ }
+ engines: { node: '>=0.12' }
esbuild-android-64@0.15.12:
- resolution: {integrity: sha512-MJKXwvPY9g0rGps0+U65HlTsM1wUs9lbjt5CU19RESqycGFDRijMDQsh68MtbzkqWSRdEtiKS1mtPzKneaAI0Q==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-MJKXwvPY9g0rGps0+U65HlTsM1wUs9lbjt5CU19RESqycGFDRijMDQsh68MtbzkqWSRdEtiKS1mtPzKneaAI0Q==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [android]
esbuild-android-arm64@0.15.12:
- resolution: {integrity: sha512-Hc9SEcZbIMhhLcvhr1DH+lrrec9SFTiRzfJ7EGSBZiiw994gfkVV6vG0sLWqQQ6DD7V4+OggB+Hn0IRUdDUqvA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-Hc9SEcZbIMhhLcvhr1DH+lrrec9SFTiRzfJ7EGSBZiiw994gfkVV6vG0sLWqQQ6DD7V4+OggB+Hn0IRUdDUqvA==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [android]
esbuild-darwin-64@0.15.12:
- resolution: {integrity: sha512-qkmqrTVYPFiePt5qFjP8w/S+GIUMbt6k8qmiPraECUWfPptaPJUGkCKrWEfYFRWB7bY23FV95rhvPyh/KARP8Q==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-qkmqrTVYPFiePt5qFjP8w/S+GIUMbt6k8qmiPraECUWfPptaPJUGkCKrWEfYFRWB7bY23FV95rhvPyh/KARP8Q==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [darwin]
esbuild-darwin-arm64@0.15.12:
- resolution: {integrity: sha512-z4zPX02tQ41kcXMyN3c/GfZpIjKoI/BzHrdKUwhC/Ki5BAhWv59A9M8H+iqaRbwpzYrYidTybBwiZAIWCLJAkw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-z4zPX02tQ41kcXMyN3c/GfZpIjKoI/BzHrdKUwhC/Ki5BAhWv59A9M8H+iqaRbwpzYrYidTybBwiZAIWCLJAkw==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [darwin]
esbuild-freebsd-64@0.15.12:
- resolution: {integrity: sha512-XFL7gKMCKXLDiAiBjhLG0XECliXaRLTZh6hsyzqUqPUf/PY4C6EJDTKIeqqPKXaVJ8+fzNek88285krSz1QECw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-XFL7gKMCKXLDiAiBjhLG0XECliXaRLTZh6hsyzqUqPUf/PY4C6EJDTKIeqqPKXaVJ8+fzNek88285krSz1QECw==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [freebsd]
esbuild-freebsd-arm64@0.15.12:
- resolution: {integrity: sha512-jwEIu5UCUk6TjiG1X+KQnCGISI+ILnXzIzt9yDVrhjug2fkYzlLbl0K43q96Q3KB66v6N1UFF0r5Ks4Xo7i72g==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-jwEIu5UCUk6TjiG1X+KQnCGISI+ILnXzIzt9yDVrhjug2fkYzlLbl0K43q96Q3KB66v6N1UFF0r5Ks4Xo7i72g==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [freebsd]
esbuild-linux-32@0.15.12:
- resolution: {integrity: sha512-uSQuSEyF1kVzGzuIr4XM+v7TPKxHjBnLcwv2yPyCz8riV8VUCnO/C4BF3w5dHiVpCd5Z1cebBtZJNlC4anWpwA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-uSQuSEyF1kVzGzuIr4XM+v7TPKxHjBnLcwv2yPyCz8riV8VUCnO/C4BF3w5dHiVpCd5Z1cebBtZJNlC4anWpwA==,
+ }
+ engines: { node: '>=12' }
cpu: [ia32]
os: [linux]
esbuild-linux-64@0.15.12:
- resolution: {integrity: sha512-QcgCKb7zfJxqT9o5z9ZUeGH1k8N6iX1Y7VNsEi5F9+HzN1OIx7ESxtQXDN9jbeUSPiRH1n9cw6gFT3H4qbdvcA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-QcgCKb7zfJxqT9o5z9ZUeGH1k8N6iX1Y7VNsEi5F9+HzN1OIx7ESxtQXDN9jbeUSPiRH1n9cw6gFT3H4qbdvcA==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [linux]
esbuild-linux-arm64@0.15.12:
- resolution: {integrity: sha512-HtNq5xm8fUpZKwWKS2/YGwSfTF+339L4aIA8yphNKYJckd5hVdhfdl6GM2P3HwLSCORS++++7++//ApEwXEuAQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-HtNq5xm8fUpZKwWKS2/YGwSfTF+339L4aIA8yphNKYJckd5hVdhfdl6GM2P3HwLSCORS++++7++//ApEwXEuAQ==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [linux]
esbuild-linux-arm@0.15.12:
- resolution: {integrity: sha512-Wf7T0aNylGcLu7hBnzMvsTfEXdEdJY/hY3u36Vla21aY66xR0MS5I1Hw8nVquXjTN0A6fk/vnr32tkC/C2lb0A==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-Wf7T0aNylGcLu7hBnzMvsTfEXdEdJY/hY3u36Vla21aY66xR0MS5I1Hw8nVquXjTN0A6fk/vnr32tkC/C2lb0A==,
+ }
+ engines: { node: '>=12' }
cpu: [arm]
os: [linux]
esbuild-linux-mips64le@0.15.12:
- resolution: {integrity: sha512-Qol3+AvivngUZkTVFgLpb0H6DT+N5/zM3V1YgTkryPYFeUvuT5JFNDR3ZiS6LxhyF8EE+fiNtzwlPqMDqVcc6A==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-Qol3+AvivngUZkTVFgLpb0H6DT+N5/zM3V1YgTkryPYFeUvuT5JFNDR3ZiS6LxhyF8EE+fiNtzwlPqMDqVcc6A==,
+ }
+ engines: { node: '>=12' }
cpu: [mips64el]
os: [linux]
esbuild-linux-ppc64le@0.15.12:
- resolution: {integrity: sha512-4D8qUCo+CFKaR0cGXtGyVsOI7w7k93Qxb3KFXWr75An0DHamYzq8lt7TNZKoOq/Gh8c40/aKaxvcZnTgQ0TJNg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-4D8qUCo+CFKaR0cGXtGyVsOI7w7k93Qxb3KFXWr75An0DHamYzq8lt7TNZKoOq/Gh8c40/aKaxvcZnTgQ0TJNg==,
+ }
+ engines: { node: '>=12' }
cpu: [ppc64]
os: [linux]
esbuild-linux-riscv64@0.15.12:
- resolution: {integrity: sha512-G9w6NcuuCI6TUUxe6ka0enjZHDnSVK8bO+1qDhMOCtl7Tr78CcZilJj8SGLN00zO5iIlwNRZKHjdMpfFgNn1VA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-G9w6NcuuCI6TUUxe6ka0enjZHDnSVK8bO+1qDhMOCtl7Tr78CcZilJj8SGLN00zO5iIlwNRZKHjdMpfFgNn1VA==,
+ }
+ engines: { node: '>=12' }
cpu: [riscv64]
os: [linux]
esbuild-linux-s390x@0.15.12:
- resolution: {integrity: sha512-Lt6BDnuXbXeqSlVuuUM5z18GkJAZf3ERskGZbAWjrQoi9xbEIsj/hEzVnSAFLtkfLuy2DE4RwTcX02tZFunXww==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-Lt6BDnuXbXeqSlVuuUM5z18GkJAZf3ERskGZbAWjrQoi9xbEIsj/hEzVnSAFLtkfLuy2DE4RwTcX02tZFunXww==,
+ }
+ engines: { node: '>=12' }
cpu: [s390x]
os: [linux]
esbuild-netbsd-64@0.15.12:
- resolution: {integrity: sha512-jlUxCiHO1dsqoURZDQts+HK100o0hXfi4t54MNRMCAqKGAV33JCVvMplLAa2FwviSojT/5ZG5HUfG3gstwAG8w==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-jlUxCiHO1dsqoURZDQts+HK100o0hXfi4t54MNRMCAqKGAV33JCVvMplLAa2FwviSojT/5ZG5HUfG3gstwAG8w==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [netbsd]
esbuild-openbsd-64@0.15.12:
- resolution: {integrity: sha512-1o1uAfRTMIWNOmpf8v7iudND0L6zRBYSH45sofCZywrcf7NcZA+c7aFsS1YryU+yN7aRppTqdUK1PgbZVaB1Dw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-1o1uAfRTMIWNOmpf8v7iudND0L6zRBYSH45sofCZywrcf7NcZA+c7aFsS1YryU+yN7aRppTqdUK1PgbZVaB1Dw==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [openbsd]
esbuild-sunos-64@0.15.12:
- resolution: {integrity: sha512-nkl251DpoWoBO9Eq9aFdoIt2yYmp4I3kvQjba3jFKlMXuqQ9A4q+JaqdkCouG3DHgAGnzshzaGu6xofGcXyPXg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-nkl251DpoWoBO9Eq9aFdoIt2yYmp4I3kvQjba3jFKlMXuqQ9A4q+JaqdkCouG3DHgAGnzshzaGu6xofGcXyPXg==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [sunos]
esbuild-windows-32@0.15.12:
- resolution: {integrity: sha512-WlGeBZHgPC00O08luIp5B2SP4cNCp/PcS+3Pcg31kdcJPopHxLkdCXtadLU9J82LCfw4TVls21A6lilQ9mzHrw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-WlGeBZHgPC00O08luIp5B2SP4cNCp/PcS+3Pcg31kdcJPopHxLkdCXtadLU9J82LCfw4TVls21A6lilQ9mzHrw==,
+ }
+ engines: { node: '>=12' }
cpu: [ia32]
os: [win32]
esbuild-windows-64@0.15.12:
- resolution: {integrity: sha512-VActO3WnWZSN//xjSfbiGOSyC+wkZtI8I4KlgrTo5oHJM6z3MZZBCuFaZHd8hzf/W9KPhF0lY8OqlmWC9HO5AA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-VActO3WnWZSN//xjSfbiGOSyC+wkZtI8I4KlgrTo5oHJM6z3MZZBCuFaZHd8hzf/W9KPhF0lY8OqlmWC9HO5AA==,
+ }
+ engines: { node: '>=12' }
cpu: [x64]
os: [win32]
esbuild-windows-arm64@0.15.12:
- resolution: {integrity: sha512-Of3MIacva1OK/m4zCNIvBfz8VVROBmQT+gRX6pFTLPngFYcj6TFH/12VveAqq1k9VB2l28EoVMNMUCcmsfwyuA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-Of3MIacva1OK/m4zCNIvBfz8VVROBmQT+gRX6pFTLPngFYcj6TFH/12VveAqq1k9VB2l28EoVMNMUCcmsfwyuA==,
+ }
+ engines: { node: '>=12' }
cpu: [arm64]
os: [win32]
esbuild@0.15.12:
- resolution: {integrity: sha512-PcT+/wyDqJQsRVhaE9uX/Oq4XLrFh0ce/bs2TJh4CSaw9xuvI+xFrH2nAYOADbhQjUgAhNWC5LKoUsakm4dxng==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-PcT+/wyDqJQsRVhaE9uX/Oq4XLrFh0ce/bs2TJh4CSaw9xuvI+xFrH2nAYOADbhQjUgAhNWC5LKoUsakm4dxng==,
+ }
+ engines: { node: '>=12' }
hasBin: true
esbuild@0.20.2:
- resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==,
+ }
+ engines: { node: '>=12' }
hasBin: true
escape-string-regexp@4.0.0:
- resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==,
+ }
+ engines: { node: '>=10' }
escodegen@2.0.0:
- resolution: {integrity: sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==}
- engines: {node: '>=6.0'}
+ resolution:
+ {
+ integrity: sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==,
+ }
+ engines: { node: '>=6.0' }
hasBin: true
eslint-config-prettier@8.5.0:
- resolution: {integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==}
+ resolution:
+ {
+ integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==,
+ }
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
eslint-plugin-prettier@4.0.0:
- resolution: {integrity: sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==}
- engines: {node: '>=6.0.0'}
+ resolution:
+ {
+ integrity: sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==,
+ }
+ engines: { node: '>=6.0.0' }
peerDependencies:
eslint: '>=7.28.0'
eslint-config-prettier: '*'
@@ -1017,124 +1621,217 @@ packages:
optional: true
eslint-plugin-vue@9.26.0:
- resolution: {integrity: sha512-eTvlxXgd4ijE1cdur850G6KalZqk65k1JKoOI2d1kT3hr8sPD07j1q98FRFdNnpxBELGPWxZmInxeHGF/GxtqQ==}
- engines: {node: ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-eTvlxXgd4ijE1cdur850G6KalZqk65k1JKoOI2d1kT3hr8sPD07j1q98FRFdNnpxBELGPWxZmInxeHGF/GxtqQ==,
+ }
+ engines: { node: ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
eslint-scope@5.1.1:
- resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
- engines: {node: '>=8.0.0'}
+ resolution:
+ {
+ integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==,
+ }
+ engines: { node: '>=8.0.0' }
eslint-scope@7.1.1:
- resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
eslint-scope@7.2.2:
- resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
eslint-visitor-keys@3.3.0:
- resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
eslint-visitor-keys@3.4.1:
- resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
eslint-visitor-keys@3.4.3:
- resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
eslint@8.57.0:
- resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
hasBin: true
espree@9.4.0:
- resolution: {integrity: sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
espree@9.6.1:
- resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==,
+ }
+ engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
esprima@4.0.1:
- resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
- engines: {node: '>=4'}
+ resolution:
+ {
+ integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==,
+ }
+ engines: { node: '>=4' }
hasBin: true
esquery@1.4.0:
- resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==}
- engines: {node: '>=0.10'}
+ resolution:
+ {
+ integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==,
+ }
+ engines: { node: '>=0.10' }
esquery@1.5.0:
- resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
- engines: {node: '>=0.10'}
+ resolution:
+ {
+ integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==,
+ }
+ engines: { node: '>=0.10' }
esrecurse@4.3.0:
- resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
- engines: {node: '>=4.0'}
+ resolution:
+ {
+ integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==,
+ }
+ engines: { node: '>=4.0' }
estraverse@4.3.0:
- resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
- engines: {node: '>=4.0'}
+ resolution:
+ {
+ integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==,
+ }
+ engines: { node: '>=4.0' }
estraverse@5.3.0:
- resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
- engines: {node: '>=4.0'}
+ resolution:
+ {
+ integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==,
+ }
+ engines: { node: '>=4.0' }
estree-walker@2.0.2:
- resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+ resolution:
+ {
+ integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==,
+ }
esutils@2.0.3:
- resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==,
+ }
+ engines: { node: '>=0.10.0' }
execa@5.1.1:
- resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==,
+ }
+ engines: { node: '>=10' }
fast-deep-equal@3.1.3:
- resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+ resolution:
+ {
+ integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==,
+ }
fast-diff@1.2.0:
- resolution: {integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==}
+ resolution:
+ {
+ integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==,
+ }
fast-glob@3.2.11:
- resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==}
- engines: {node: '>=8.6.0'}
+ resolution:
+ {
+ integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==,
+ }
+ engines: { node: '>=8.6.0' }
fast-json-stable-stringify@2.1.0:
- resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+ resolution:
+ {
+ integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==,
+ }
fast-levenshtein@2.0.6:
- resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+ resolution:
+ {
+ integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==,
+ }
fastq@1.13.0:
- resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==}
+ resolution:
+ {
+ integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==,
+ }
file-entry-cache@6.0.1:
- resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
- engines: {node: ^10.12.0 || >=12.0.0}
+ resolution:
+ {
+ integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==,
+ }
+ engines: { node: ^10.12.0 || >=12.0.0 }
fill-range@7.0.1:
- resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==,
+ }
+ engines: { node: '>=8' }
find-up@5.0.0:
- resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==,
+ }
+ engines: { node: '>=10' }
flat-cache@3.0.4:
- resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==}
- engines: {node: ^10.12.0 || >=12.0.0}
+ resolution:
+ {
+ integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==,
+ }
+ engines: { node: ^10.12.0 || >=12.0.0 }
flatted@3.2.5:
- resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==}
+ resolution:
+ {
+ integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==,
+ }
floating-vue@5.2.2:
- resolution: {integrity: sha512-afW+h2CFafo+7Y9Lvw/xsqjaQlKLdJV7h1fCHfcYQ1C4SVMlu7OAekqWgu5d4SgvkBVU0pVpLlVsrSTBURFRkg==}
+ resolution:
+ {
+ integrity: sha512-afW+h2CFafo+7Y9Lvw/xsqjaQlKLdJV7h1fCHfcYQ1C4SVMlu7OAekqWgu5d4SgvkBVU0pVpLlVsrSTBURFRkg==,
+ }
peerDependencies:
'@nuxt/kit': ^3.2.0
vue: ^3.2.0
@@ -1143,181 +1840,319 @@ packages:
optional: true
foreground-child@3.1.1:
- resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==,
+ }
+ engines: { node: '>=14' }
form-data@4.0.0:
- resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
- engines: {node: '>= 6'}
+ resolution:
+ {
+ integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==,
+ }
+ engines: { node: '>= 6' }
fs.realpath@1.0.0:
- resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
+ resolution:
+ {
+ integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==,
+ }
fsevents@2.3.2:
- resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
- engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ resolution:
+ {
+ integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==,
+ }
+ engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 }
os: [darwin]
fsevents@2.3.3:
- resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
- engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ resolution:
+ {
+ integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==,
+ }
+ engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 }
os: [darwin]
function-bind@1.1.1:
- resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
+ resolution:
+ {
+ integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==,
+ }
get-func-name@2.0.0:
- resolution: {integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==}
+ resolution:
+ {
+ integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==,
+ }
get-stream@6.0.1:
- resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==,
+ }
+ engines: { node: '>=10' }
glob-parent@5.1.2:
- resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
- engines: {node: '>= 6'}
+ resolution:
+ {
+ integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==,
+ }
+ engines: { node: '>= 6' }
glob-parent@6.0.2:
- resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
- engines: {node: '>=10.13.0'}
+ resolution:
+ {
+ integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==,
+ }
+ engines: { node: '>=10.13.0' }
glob@10.3.10:
- resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==}
- engines: {node: '>=16 || 14 >=14.17'}
+ resolution:
+ {
+ integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==,
+ }
+ engines: { node: '>=16 || 14 >=14.17' }
hasBin: true
glob@7.2.3:
- resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+ resolution:
+ {
+ integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==,
+ }
deprecated: Glob versions prior to v9 are no longer supported
globals@13.20.0:
- resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==,
+ }
+ engines: { node: '>=8' }
globals@13.24.0:
- resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==,
+ }
+ engines: { node: '>=8' }
globby@11.1.0:
- resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==,
+ }
+ engines: { node: '>=10' }
grapheme-splitter@1.0.4:
- resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
+ resolution:
+ {
+ integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==,
+ }
graphemer@1.4.0:
- resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+ resolution:
+ {
+ integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==,
+ }
has-flag@4.0.0:
- resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==,
+ }
+ engines: { node: '>=8' }
has@1.0.3:
- resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
- engines: {node: '>= 0.4.0'}
+ resolution:
+ {
+ integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==,
+ }
+ engines: { node: '>= 0.4.0' }
he@1.2.0:
- resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
+ resolution:
+ {
+ integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==,
+ }
hasBin: true
html-encoding-sniffer@3.0.0:
- resolution: {integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==,
+ }
+ engines: { node: '>=12' }
http-proxy-agent@5.0.0:
- resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==}
- engines: {node: '>= 6'}
+ resolution:
+ {
+ integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==,
+ }
+ engines: { node: '>= 6' }
https-proxy-agent@5.0.1:
- resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
- engines: {node: '>= 6'}
+ resolution:
+ {
+ integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==,
+ }
+ engines: { node: '>= 6' }
human-signals@2.1.0:
- resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
- engines: {node: '>=10.17.0'}
+ resolution:
+ {
+ integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==,
+ }
+ engines: { node: '>=10.17.0' }
iconv-lite@0.6.3:
- resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==,
+ }
+ engines: { node: '>=0.10.0' }
ignore@5.2.0:
- resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
- engines: {node: '>= 4'}
+ resolution:
+ {
+ integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==,
+ }
+ engines: { node: '>= 4' }
immutable@4.2.4:
- resolution: {integrity: sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==}
+ resolution:
+ {
+ integrity: sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==,
+ }
import-fresh@3.3.0:
- resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==,
+ }
+ engines: { node: '>=6' }
imurmurhash@0.1.4:
- resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
- engines: {node: '>=0.8.19'}
+ resolution:
+ {
+ integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==,
+ }
+ engines: { node: '>=0.8.19' }
inflight@1.0.6:
- resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
+ resolution:
+ {
+ integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==,
+ }
deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
inherits@2.0.4:
- resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
+ resolution:
+ {
+ integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==,
+ }
ini@1.3.8:
- resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
+ resolution:
+ {
+ integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==,
+ }
is-binary-path@2.1.0:
- resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==,
+ }
+ engines: { node: '>=8' }
is-core-module@2.9.0:
- resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==}
+ resolution:
+ {
+ integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==,
+ }
is-extglob@2.1.1:
- resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==,
+ }
+ engines: { node: '>=0.10.0' }
is-fullwidth-code-point@3.0.0:
- resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==,
+ }
+ engines: { node: '>=8' }
is-glob@4.0.3:
- resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==,
+ }
+ engines: { node: '>=0.10.0' }
is-number@7.0.0:
- resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
- engines: {node: '>=0.12.0'}
+ resolution:
+ {
+ integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==,
+ }
+ engines: { node: '>=0.12.0' }
is-path-inside@3.0.3:
- resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==,
+ }
+ engines: { node: '>=8' }
is-potential-custom-element-name@1.0.1:
- resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
+ resolution:
+ {
+ integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==,
+ }
is-stream@2.0.1:
- resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==,
+ }
+ engines: { node: '>=8' }
isexe@2.0.0:
- resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+ resolution:
+ {
+ integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==,
+ }
jackspeak@2.3.6:
- resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==,
+ }
+ engines: { node: '>=14' }
js-beautify@1.14.11:
- resolution: {integrity: sha512-rPogWqAfoYh1Ryqqh2agUpVfbxAhbjuN1SmU86dskQUKouRiggUTCO4+2ym9UPXllc2WAp0J+T5qxn7Um3lCdw==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-rPogWqAfoYh1Ryqqh2agUpVfbxAhbjuN1SmU86dskQUKouRiggUTCO4+2ym9UPXllc2WAp0J+T5qxn7Um3lCdw==,
+ }
+ engines: { node: '>=14' }
hasBin: true
js-yaml@4.1.0:
- resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+ resolution:
+ {
+ integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==,
+ }
hasBin: true
jsdom@19.0.0:
- resolution: {integrity: sha512-RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A==,
+ }
+ engines: { node: '>=12' }
peerDependencies:
canvas: ^2.5.0
peerDependenciesMeta:
@@ -1325,446 +2160,791 @@ packages:
optional: true
json-schema-traverse@0.4.1:
- resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+ resolution:
+ {
+ integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==,
+ }
json-stable-stringify-without-jsonify@1.0.1:
- resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+ resolution:
+ {
+ integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==,
+ }
kolorist@1.7.0:
- resolution: {integrity: sha512-ymToLHqL02udwVdbkowNpzjFd6UzozMtshPQKVi5k1EjKRqKqBrOnE9QbLEb0/pV76SAiIT13hdL8R6suc+f3g==}
+ resolution:
+ {
+ integrity: sha512-ymToLHqL02udwVdbkowNpzjFd6UzozMtshPQKVi5k1EjKRqKqBrOnE9QbLEb0/pV76SAiIT13hdL8R6suc+f3g==,
+ }
kolorist@1.8.0:
- resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+ resolution:
+ {
+ integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==,
+ }
levn@0.3.0:
- resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==}
- engines: {node: '>= 0.8.0'}
+ resolution:
+ {
+ integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==,
+ }
+ engines: { node: '>= 0.8.0' }
levn@0.4.1:
- resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
- engines: {node: '>= 0.8.0'}
+ resolution:
+ {
+ integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==,
+ }
+ engines: { node: '>= 0.8.0' }
local-pkg@0.4.2:
- resolution: {integrity: sha512-mlERgSPrbxU3BP4qBqAvvwlgW4MTg78iwJdGGnv7kibKjWcJksrG3t6LB5lXI93wXRDvG4NpUgJFmTG4T6rdrg==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-mlERgSPrbxU3BP4qBqAvvwlgW4MTg78iwJdGGnv7kibKjWcJksrG3t6LB5lXI93wXRDvG4NpUgJFmTG4T6rdrg==,
+ }
+ engines: { node: '>=14' }
local-pkg@0.4.3:
- resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==,
+ }
+ engines: { node: '>=14' }
locate-path@6.0.0:
- resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==,
+ }
+ engines: { node: '>=10' }
lodash.merge@4.6.2:
- resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+ resolution:
+ {
+ integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==,
+ }
lodash@4.17.21:
- resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+ resolution:
+ {
+ integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==,
+ }
loupe@2.3.4:
- resolution: {integrity: sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==}
+ resolution:
+ {
+ integrity: sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==,
+ }
lru-cache@10.1.0:
- resolution: {integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==}
- engines: {node: 14 || >=16.14}
+ resolution:
+ {
+ integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==,
+ }
+ engines: { node: 14 || >=16.14 }
lru-cache@6.0.0:
- resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==,
+ }
+ engines: { node: '>=10' }
magic-string@0.30.10:
- resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==}
+ resolution:
+ {
+ integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==,
+ }
merge-stream@2.0.0:
- resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
+ resolution:
+ {
+ integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==,
+ }
merge2@1.4.1:
- resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
- engines: {node: '>= 8'}
+ resolution:
+ {
+ integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==,
+ }
+ engines: { node: '>= 8' }
micromatch@4.0.5:
- resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
- engines: {node: '>=8.6'}
+ resolution:
+ {
+ integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==,
+ }
+ engines: { node: '>=8.6' }
mime-db@1.52.0:
- resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
- engines: {node: '>= 0.6'}
+ resolution:
+ {
+ integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==,
+ }
+ engines: { node: '>= 0.6' }
mime-types@2.1.35:
- resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
- engines: {node: '>= 0.6'}
+ resolution:
+ {
+ integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==,
+ }
+ engines: { node: '>= 0.6' }
mimic-fn@2.1.0:
- resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==,
+ }
+ engines: { node: '>=6' }
minimatch@3.1.2:
- resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+ resolution:
+ {
+ integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==,
+ }
minimatch@9.0.1:
- resolution: {integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==}
- engines: {node: '>=16 || 14 >=14.17'}
+ resolution:
+ {
+ integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==,
+ }
+ engines: { node: '>=16 || 14 >=14.17' }
minimatch@9.0.3:
- resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
- engines: {node: '>=16 || 14 >=14.17'}
+ resolution:
+ {
+ integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==,
+ }
+ engines: { node: '>=16 || 14 >=14.17' }
minipass@7.0.4:
- resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==}
- engines: {node: '>=16 || 14 >=14.17'}
+ resolution:
+ {
+ integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==,
+ }
+ engines: { node: '>=16 || 14 >=14.17' }
ms@2.1.2:
- resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
+ resolution:
+ {
+ integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==,
+ }
muggle-string@0.3.1:
- resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==}
+ resolution:
+ {
+ integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==,
+ }
nanoid@3.3.4:
- resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
- engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ resolution:
+ {
+ integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==,
+ }
+ engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 }
hasBin: true
nanoid@3.3.7:
- resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
- engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ resolution:
+ {
+ integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==,
+ }
+ engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 }
hasBin: true
natural-compare-lite@1.4.0:
- resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
+ resolution:
+ {
+ integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==,
+ }
natural-compare@1.4.0:
- resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+ resolution:
+ {
+ integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==,
+ }
nopt@7.2.0:
- resolution: {integrity: sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ resolution:
+ {
+ integrity: sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==,
+ }
+ engines: { node: ^14.17.0 || ^16.13.0 || >=18.0.0 }
hasBin: true
normalize-path@3.0.0:
- resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==,
+ }
+ engines: { node: '>=0.10.0' }
npm-run-path@4.0.1:
- resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==,
+ }
+ engines: { node: '>=8' }
nth-check@2.1.1:
- resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
+ resolution:
+ {
+ integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==,
+ }
nwsapi@2.2.0:
- resolution: {integrity: sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==}
+ resolution:
+ {
+ integrity: sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==,
+ }
once@1.4.0:
- resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+ resolution:
+ {
+ integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==,
+ }
onetime@5.1.2:
- resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==,
+ }
+ engines: { node: '>=6' }
optionator@0.8.3:
- resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==}
- engines: {node: '>= 0.8.0'}
+ resolution:
+ {
+ integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==,
+ }
+ engines: { node: '>= 0.8.0' }
optionator@0.9.3:
- resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
- engines: {node: '>= 0.8.0'}
+ resolution:
+ {
+ integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==,
+ }
+ engines: { node: '>= 0.8.0' }
p-limit@3.1.0:
- resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==,
+ }
+ engines: { node: '>=10' }
p-locate@5.0.0:
- resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==,
+ }
+ engines: { node: '>=10' }
parent-module@1.0.1:
- resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==,
+ }
+ engines: { node: '>=6' }
parse5@6.0.1:
- resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
+ resolution:
+ {
+ integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==,
+ }
parse5@7.1.1:
- resolution: {integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==}
+ resolution:
+ {
+ integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==,
+ }
path-browserify@1.0.1:
- resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
+ resolution:
+ {
+ integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==,
+ }
path-exists@4.0.0:
- resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==,
+ }
+ engines: { node: '>=8' }
path-is-absolute@1.0.1:
- resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==,
+ }
+ engines: { node: '>=0.10.0' }
path-key@3.1.1:
- resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==,
+ }
+ engines: { node: '>=8' }
path-parse@1.0.7:
- resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+ resolution:
+ {
+ integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==,
+ }
path-scurry@1.10.1:
- resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==}
- engines: {node: '>=16 || 14 >=14.17'}
+ resolution:
+ {
+ integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==,
+ }
+ engines: { node: '>=16 || 14 >=14.17' }
path-type@4.0.0:
- resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==,
+ }
+ engines: { node: '>=8' }
pathe@1.1.2:
- resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==}
+ resolution:
+ {
+ integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==,
+ }
pathval@1.1.1:
- resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
+ resolution:
+ {
+ integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==,
+ }
picocolors@1.0.0:
- resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
+ resolution:
+ {
+ integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==,
+ }
picomatch@2.3.1:
- resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
- engines: {node: '>=8.6'}
+ resolution:
+ {
+ integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==,
+ }
+ engines: { node: '>=8.6' }
postcss-selector-parser@6.1.0:
- resolution: {integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==}
- engines: {node: '>=4'}
+ resolution:
+ {
+ integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==,
+ }
+ engines: { node: '>=4' }
postcss@8.4.18:
- resolution: {integrity: sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==}
- engines: {node: ^10 || ^12 || >=14}
+ resolution:
+ {
+ integrity: sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==,
+ }
+ engines: { node: ^10 || ^12 || >=14 }
postcss@8.4.38:
- resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==}
- engines: {node: ^10 || ^12 || >=14}
+ resolution:
+ {
+ integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==,
+ }
+ engines: { node: ^10 || ^12 || >=14 }
prelude-ls@1.1.2:
- resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==}
- engines: {node: '>= 0.8.0'}
+ resolution:
+ {
+ integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==,
+ }
+ engines: { node: '>= 0.8.0' }
prelude-ls@1.2.1:
- resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
- engines: {node: '>= 0.8.0'}
+ resolution:
+ {
+ integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==,
+ }
+ engines: { node: '>= 0.8.0' }
prettier-linter-helpers@1.0.0:
- resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
- engines: {node: '>=6.0.0'}
+ resolution:
+ {
+ integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==,
+ }
+ engines: { node: '>=6.0.0' }
prettier@2.8.8:
- resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
- engines: {node: '>=10.13.0'}
+ resolution:
+ {
+ integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==,
+ }
+ engines: { node: '>=10.13.0' }
hasBin: true
proto-list@1.2.4:
- resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
+ resolution:
+ {
+ integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==,
+ }
psl@1.8.0:
- resolution: {integrity: sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==}
+ resolution:
+ {
+ integrity: sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==,
+ }
punycode@2.1.1:
- resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==,
+ }
+ engines: { node: '>=6' }
queue-microtask@1.2.3:
- resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+ resolution:
+ {
+ integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==,
+ }
readdirp@3.6.0:
- resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
- engines: {node: '>=8.10.0'}
+ resolution:
+ {
+ integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==,
+ }
+ engines: { node: '>=8.10.0' }
resolve-from@4.0.0:
- resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
- engines: {node: '>=4'}
+ resolution:
+ {
+ integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==,
+ }
+ engines: { node: '>=4' }
resolve@1.22.1:
- resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
+ resolution:
+ {
+ integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==,
+ }
hasBin: true
reusify@1.0.4:
- resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
- engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==,
+ }
+ engines: { iojs: '>=1.0.0', node: '>=0.10.0' }
rimraf@3.0.2:
- resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+ resolution:
+ {
+ integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==,
+ }
deprecated: Rimraf versions prior to v4 are no longer supported
hasBin: true
rollup@2.79.1:
- resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==}
- engines: {node: '>=10.0.0'}
+ resolution:
+ {
+ integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==,
+ }
+ engines: { node: '>=10.0.0' }
hasBin: true
rollup@4.18.0:
- resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==}
- engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ resolution:
+ {
+ integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==,
+ }
+ engines: { node: '>=18.0.0', npm: '>=8.0.0' }
hasBin: true
run-parallel@1.2.0:
- resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+ resolution:
+ {
+ integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==,
+ }
safer-buffer@2.1.2:
- resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+ resolution:
+ {
+ integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==,
+ }
sass@1.77.4:
- resolution: {integrity: sha512-vcF3Ckow6g939GMA4PeU7b2K/9FALXk2KF9J87txdHzXbUF9XRQRwSxcAs/fGaTnJeBFd7UoV22j3lzMLdM0Pw==}
- engines: {node: '>=14.0.0'}
+ resolution:
+ {
+ integrity: sha512-vcF3Ckow6g939GMA4PeU7b2K/9FALXk2KF9J87txdHzXbUF9XRQRwSxcAs/fGaTnJeBFd7UoV22j3lzMLdM0Pw==,
+ }
+ engines: { node: '>=14.0.0' }
hasBin: true
saxes@5.0.1:
- resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==,
+ }
+ engines: { node: '>=10' }
semver@7.5.1:
- resolution: {integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==,
+ }
+ engines: { node: '>=10' }
hasBin: true
semver@7.5.4:
- resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==,
+ }
+ engines: { node: '>=10' }
hasBin: true
semver@7.6.2:
- resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==,
+ }
+ engines: { node: '>=10' }
hasBin: true
shebang-command@2.0.0:
- resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==,
+ }
+ engines: { node: '>=8' }
shebang-regex@3.0.0:
- resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==,
+ }
+ engines: { node: '>=8' }
signal-exit@3.0.7:
- resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+ resolution:
+ {
+ integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==,
+ }
signal-exit@4.1.0:
- resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
- engines: {node: '>=14'}
+ resolution:
+ {
+ integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==,
+ }
+ engines: { node: '>=14' }
slash@3.0.0:
- resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==,
+ }
+ engines: { node: '>=8' }
source-map-js@1.0.2:
- resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==,
+ }
+ engines: { node: '>=0.10.0' }
source-map-js@1.2.0:
- resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==,
+ }
+ engines: { node: '>=0.10.0' }
source-map@0.6.1:
- resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==,
+ }
+ engines: { node: '>=0.10.0' }
string-width@4.2.3:
- resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==,
+ }
+ engines: { node: '>=8' }
string-width@5.1.2:
- resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==,
+ }
+ engines: { node: '>=12' }
strip-ansi@6.0.1:
- resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==,
+ }
+ engines: { node: '>=8' }
strip-ansi@7.1.0:
- resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==,
+ }
+ engines: { node: '>=12' }
strip-final-newline@2.0.0:
- resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==,
+ }
+ engines: { node: '>=6' }
strip-json-comments@3.1.1:
- resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==,
+ }
+ engines: { node: '>=8' }
strip-literal@0.4.2:
- resolution: {integrity: sha512-pv48ybn4iE1O9RLgCAN0iU4Xv7RlBTiit6DKmMiErbs9x1wH6vXBs45tWc0H5wUIF6TLTrKweqkmYF/iraQKNw==}
+ resolution:
+ {
+ integrity: sha512-pv48ybn4iE1O9RLgCAN0iU4Xv7RlBTiit6DKmMiErbs9x1wH6vXBs45tWc0H5wUIF6TLTrKweqkmYF/iraQKNw==,
+ }
supports-color@7.2.0:
- resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
- engines: {node: '>=8'}
+ resolution:
+ {
+ integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==,
+ }
+ engines: { node: '>=8' }
supports-preserve-symlinks-flag@1.0.0:
- resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
- engines: {node: '>= 0.4'}
+ resolution:
+ {
+ integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==,
+ }
+ engines: { node: '>= 0.4' }
symbol-tree@3.2.4:
- resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
+ resolution:
+ {
+ integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==,
+ }
text-table@0.2.0:
- resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+ resolution:
+ {
+ integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==,
+ }
tinybench@2.3.1:
- resolution: {integrity: sha512-hGYWYBMPr7p4g5IarQE7XhlyWveh1EKhy4wUBS1LrHXCKYgvz+4/jCqgmJqZxxldesn05vccrtME2RLLZNW7iA==}
+ resolution:
+ {
+ integrity: sha512-hGYWYBMPr7p4g5IarQE7XhlyWveh1EKhy4wUBS1LrHXCKYgvz+4/jCqgmJqZxxldesn05vccrtME2RLLZNW7iA==,
+ }
tinypool@0.3.0:
- resolution: {integrity: sha512-NX5KeqHOBZU6Bc0xj9Vr5Szbb1j8tUHIeD18s41aDJaPeC5QTdEhK0SpdpUrZlj2nv5cctNcSjaKNanXlfcVEQ==}
- engines: {node: '>=14.0.0'}
+ resolution:
+ {
+ integrity: sha512-NX5KeqHOBZU6Bc0xj9Vr5Szbb1j8tUHIeD18s41aDJaPeC5QTdEhK0SpdpUrZlj2nv5cctNcSjaKNanXlfcVEQ==,
+ }
+ engines: { node: '>=14.0.0' }
tinyspy@1.0.2:
- resolution: {integrity: sha512-bSGlgwLBYf7PnUsQ6WOc6SJ3pGOcd+d8AA6EUnLDDM0kWEstC1JIlSZA3UNliDXhd9ABoS7hiRBDCu+XP/sf1Q==}
- engines: {node: '>=14.0.0'}
+ resolution:
+ {
+ integrity: sha512-bSGlgwLBYf7PnUsQ6WOc6SJ3pGOcd+d8AA6EUnLDDM0kWEstC1JIlSZA3UNliDXhd9ABoS7hiRBDCu+XP/sf1Q==,
+ }
+ engines: { node: '>=14.0.0' }
to-fast-properties@2.0.0:
- resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
- engines: {node: '>=4'}
+ resolution:
+ {
+ integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==,
+ }
+ engines: { node: '>=4' }
to-regex-range@5.0.1:
- resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
- engines: {node: '>=8.0'}
+ resolution:
+ {
+ integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==,
+ }
+ engines: { node: '>=8.0' }
tough-cookie@4.0.0:
- resolution: {integrity: sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==}
- engines: {node: '>=6'}
+ resolution:
+ {
+ integrity: sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==,
+ }
+ engines: { node: '>=6' }
tr46@3.0.0:
- resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==,
+ }
+ engines: { node: '>=12' }
tslib@1.14.1:
- resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
+ resolution:
+ {
+ integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==,
+ }
tsutils@3.21.0:
- resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
- engines: {node: '>= 6'}
+ resolution:
+ {
+ integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==,
+ }
+ engines: { node: '>= 6' }
peerDependencies:
typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
type-check@0.3.2:
- resolution: {integrity: sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=}
- engines: {node: '>= 0.8.0'}
+ resolution: { integrity: sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= }
+ engines: { node: '>= 0.8.0' }
type-check@0.4.0:
- resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
- engines: {node: '>= 0.8.0'}
+ resolution:
+ {
+ integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==,
+ }
+ engines: { node: '>= 0.8.0' }
type-detect@4.0.8:
- resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
- engines: {node: '>=4'}
+ resolution:
+ {
+ integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==,
+ }
+ engines: { node: '>=4' }
type-fest@0.20.2:
- resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==,
+ }
+ engines: { node: '>=10' }
typescript@4.7.4:
- resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==}
- engines: {node: '>=4.2.0'}
+ resolution:
+ {
+ integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==,
+ }
+ engines: { node: '>=4.2.0' }
hasBin: true
universalify@0.1.2:
- resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
- engines: {node: '>= 4.0.0'}
+ resolution:
+ {
+ integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==,
+ }
+ engines: { node: '>= 4.0.0' }
unplugin-icons@0.15.3:
- resolution: {integrity: sha512-YWgJqv5AahrokeOnta8uX/m1damZA6Rf6zPClgHg2Fa/45iyOe3Lj+Wn/Ba+CSsq9yBffn17YfKfJNyWCNZPvw==}
+ resolution:
+ {
+ integrity: sha512-YWgJqv5AahrokeOnta8uX/m1damZA6Rf6zPClgHg2Fa/45iyOe3Lj+Wn/Ba+CSsq9yBffn17YfKfJNyWCNZPvw==,
+ }
peerDependencies:
'@svgr/core': '>=5.5.0'
'@vue/compiler-sfc': ^3.0.2 || ^2.7.0
@@ -1781,17 +2961,29 @@ packages:
optional: true
unplugin@1.0.1:
- resolution: {integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==}
+ resolution:
+ {
+ integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==,
+ }
uri-js@4.4.1:
- resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ resolution:
+ {
+ integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==,
+ }
util-deprecate@1.0.2:
- resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+ resolution:
+ {
+ integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==,
+ }
vite@3.2.7:
- resolution: {integrity: sha512-29pdXjk49xAP0QBr0xXqu2s5jiQIXNvE/xwd0vUizYT2Hzqe4BksNNoWllFVXJf4eLZ+UlVQmXfB4lWrc+t18g==}
- engines: {node: ^14.18.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-29pdXjk49xAP0QBr0xXqu2s5jiQIXNvE/xwd0vUizYT2Hzqe4BksNNoWllFVXJf4eLZ+UlVQmXfB4lWrc+t18g==,
+ }
+ engines: { node: ^14.18.0 || >=16.0.0 }
hasBin: true
peerDependencies:
'@types/node': '>= 14'
@@ -1815,8 +3007,11 @@ packages:
optional: true
vite@5.2.12:
- resolution: {integrity: sha512-/gC8GxzxMK5ntBwb48pR32GGhENnjtY30G4A0jemunsBkiEZFw60s8InGpN8gkhHEkjnRK1aSAxeQgwvFhUHAA==}
- engines: {node: ^18.0.0 || >=20.0.0}
+ resolution:
+ {
+ integrity: sha512-/gC8GxzxMK5ntBwb48pR32GGhENnjtY30G4A0jemunsBkiEZFw60s8InGpN8gkhHEkjnRK1aSAxeQgwvFhUHAA==,
+ }
+ engines: { node: ^18.0.0 || >=20.0.0 }
hasBin: true
peerDependencies:
'@types/node': ^18.0.0 || >=20.0.0
@@ -1843,8 +3038,11 @@ packages:
optional: true
vitest@0.24.5:
- resolution: {integrity: sha512-zw6JhPUHtLILQDe5Q39b/SzoITkG+R7hcFjuthp4xsi6zpmfQPOZcHodZ+3bqoWl4EdGK/p1fuMiEwdxgbGLOA==}
- engines: {node: '>=v14.16.0'}
+ resolution:
+ {
+ integrity: sha512-zw6JhPUHtLILQDe5Q39b/SzoITkG+R7hcFjuthp4xsi6zpmfQPOZcHodZ+3bqoWl4EdGK/p1fuMiEwdxgbGLOA==,
+ }
+ engines: { node: '>=v14.16.0' }
hasBin: true
peerDependencies:
'@edge-runtime/vm': '*'
@@ -1865,41 +3063,65 @@ packages:
optional: true
vue-component-type-helpers@2.0.19:
- resolution: {integrity: sha512-cN3f1aTxxKo4lzNeQAkVopswuImUrb5Iurll9Gaw5cqpnbTAxtEMM1mgi6ou4X79OCyqYv1U1mzBHJkzmiK82w==}
+ resolution:
+ {
+ integrity: sha512-cN3f1aTxxKo4lzNeQAkVopswuImUrb5Iurll9Gaw5cqpnbTAxtEMM1mgi6ou4X79OCyqYv1U1mzBHJkzmiK82w==,
+ }
vue-eslint-parser@9.3.1:
- resolution: {integrity: sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g==}
- engines: {node: ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g==,
+ }
+ engines: { node: ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: '>=6.0.0'
vue-eslint-parser@9.4.3:
- resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==}
- engines: {node: ^14.17.0 || >=16.0.0}
+ resolution:
+ {
+ integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==,
+ }
+ engines: { node: ^14.17.0 || >=16.0.0 }
peerDependencies:
eslint: '>=6.0.0'
vue-resize@2.0.0-alpha.1:
- resolution: {integrity: sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg==}
+ resolution:
+ {
+ integrity: sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg==,
+ }
peerDependencies:
vue: ^3.0.0
vue-router@4.2.5:
- resolution: {integrity: sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw==}
+ resolution:
+ {
+ integrity: sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw==,
+ }
peerDependencies:
vue: ^3.2.0
vue-template-compiler@2.7.14:
- resolution: {integrity: sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==}
+ resolution:
+ {
+ integrity: sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==,
+ }
vue-tsc@1.8.27:
- resolution: {integrity: sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==}
+ resolution:
+ {
+ integrity: sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==,
+ }
hasBin: true
peerDependencies:
typescript: '*'
vue@3.4.27:
- resolution: {integrity: sha512-8s/56uK6r01r1icG/aEOHqyMVxd1bkYcSe9j8HcKtr/xTOFWvnzIVTehNW+5Yt89f+DLBe4A569pnZLS5HzAMA==}
+ resolution:
+ {
+ integrity: sha512-8s/56uK6r01r1icG/aEOHqyMVxd1bkYcSe9j8HcKtr/xTOFWvnzIVTehNW+5Yt89f+DLBe4A569pnZLS5HzAMA==,
+ }
peerDependencies:
typescript: '*'
peerDependenciesMeta:
@@ -1907,62 +3129,107 @@ packages:
optional: true
w3c-hr-time@1.0.2:
- resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==}
+ resolution:
+ {
+ integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==,
+ }
w3c-xmlserializer@3.0.0:
- resolution: {integrity: sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==,
+ }
+ engines: { node: '>=12' }
webidl-conversions@7.0.0:
- resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==,
+ }
+ engines: { node: '>=12' }
webpack-sources@3.2.3:
- resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
- engines: {node: '>=10.13.0'}
+ resolution:
+ {
+ integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==,
+ }
+ engines: { node: '>=10.13.0' }
webpack-virtual-modules@0.5.0:
- resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==}
+ resolution:
+ {
+ integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==,
+ }
whatwg-encoding@2.0.0:
- resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==,
+ }
+ engines: { node: '>=12' }
whatwg-mimetype@3.0.0:
- resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==,
+ }
+ engines: { node: '>=12' }
whatwg-url@10.0.0:
- resolution: {integrity: sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==,
+ }
+ engines: { node: '>=12' }
whatwg-url@11.0.0:
- resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==,
+ }
+ engines: { node: '>=12' }
which@2.0.2:
- resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
- engines: {node: '>= 8'}
+ resolution:
+ {
+ integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==,
+ }
+ engines: { node: '>= 8' }
hasBin: true
word-wrap@1.2.3:
- resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==}
- engines: {node: '>=0.10.0'}
+ resolution:
+ {
+ integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==,
+ }
+ engines: { node: '>=0.10.0' }
wrap-ansi@7.0.0:
- resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==,
+ }
+ engines: { node: '>=10' }
wrap-ansi@8.1.0:
- resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==,
+ }
+ engines: { node: '>=12' }
wrappy@1.0.2:
- resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+ resolution:
+ {
+ integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==,
+ }
ws@8.7.0:
- resolution: {integrity: sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg==}
- engines: {node: '>=10.0.0'}
+ resolution:
+ {
+ integrity: sha512-c2gsP0PRwcLFzUiA8Mkr37/MI7ilIlHQxaEAtd0uNMbVMoy8puJyafRlm0bV9MbGSabUPeLrRRaqIBcFcA2Pqg==,
+ }
+ engines: { node: '>=10.0.0' }
peerDependencies:
bufferutil: ^4.0.1
utf-8-validate: ^5.0.2
@@ -1973,21 +3240,32 @@ packages:
optional: true
xml-name-validator@4.0.0:
- resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
- engines: {node: '>=12'}
+ resolution:
+ {
+ integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==,
+ }
+ engines: { node: '>=12' }
xmlchars@2.2.0:
- resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
+ resolution:
+ {
+ integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==,
+ }
yallist@4.0.0:
- resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
+ resolution:
+ {
+ integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==,
+ }
yocto-queue@0.1.0:
- resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
- engines: {node: '>=10'}
+ resolution:
+ {
+ integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==,
+ }
+ engines: { node: '>=10' }
snapshots:
-
'@aashutoshrathi/word-wrap@1.2.6': {}
'@antfu/install-pkg@0.1.1':
diff --git a/ui/prettier.config.cjs b/ui/prettier.config.cjs
new file mode 100644
index 0000000..cd8a019
--- /dev/null
+++ b/ui/prettier.config.cjs
@@ -0,0 +1,11 @@
+module.exports = {
+ plugins: ['prettier-plugin-tailwindcss'],
+ tabWidth: 2,
+ useTabs: false,
+ endOfLine: "lf",
+ trailingComma: "es5",
+ singleQuote: true,
+ bracketSpacing: true,
+ arrowParens: "always",
+ printWidth: 100
+}
diff --git a/ui/src/components/HyperlinkView.vue b/ui/src/components/HyperlinkView.vue
new file mode 100644
index 0000000..a40f8cf
--- /dev/null
+++ b/ui/src/components/HyperlinkView.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
diff --git a/ui/src/components/LinkViewBubbleMenuItem.vue b/ui/src/components/LinkViewBubbleMenuItem.vue
index 00153ae..8431afa 100644
--- a/ui/src/components/LinkViewBubbleMenuItem.vue
+++ b/ui/src/components/LinkViewBubbleMenuItem.vue
@@ -1,10 +1,10 @@
-
+
-
-
- {{ item.title }}
+
+
+ {{ item.title }}
+
diff --git a/ui/src/components/TextExtensionMenuItem.vue b/ui/src/components/TextExtensionMenuItem.vue
index 46dbf8f..5dc29ab 100644
--- a/ui/src/components/TextExtensionMenuItem.vue
+++ b/ui/src/components/TextExtensionMenuItem.vue
@@ -1,9 +1,8 @@
-
diff --git a/ui/src/editor/hyperlink-card-extension.ts b/ui/src/editor/hyperlink-card-extension.ts
new file mode 100644
index 0000000..b2df6f1
--- /dev/null
+++ b/ui/src/editor/hyperlink-card-extension.ts
@@ -0,0 +1,97 @@
+import HyperlinkView from '@/components/HyperlinkView.vue';
+import LinkViewBubbleMenuItem from '@/components/LinkViewBubbleMenuItem.vue';
+import {
+ EditorState,
+ Node,
+ VueNodeViewRenderer,
+ getNodeAttributes,
+ isActive,
+ mergeAttributes,
+ type Editor,
+} from '@halo-dev/richtext-editor';
+import { markRaw } from 'vue';
+import linkViewTypes from './link-view-type';
+
+const HyperlinkCardExtension = Node.create({
+ name: 'hyperlinkCard',
+
+ atom: true,
+
+ group: 'block',
+
+ addAttributes() {
+ return {
+ target: {
+ default: '_blank',
+ parseHTML: (element: HTMLElement) => {
+ return element.getAttribute('target');
+ },
+ },
+ href: {
+ default: null,
+ parseHTML: (element: HTMLElement) => {
+ return element.getAttribute('href');
+ },
+ },
+ theme: {
+ default: linkViewTypes[1].key,
+ parseHTML: (element: HTMLElement) => {
+ return element.getAttribute('theme');
+ },
+ },
+ style: {
+ default: 'margin-top: 0.75em; margin-bottom: 0;',
+ parseHTML: (element: HTMLElement) => {
+ return element.getAttribute('style');
+ },
+ },
+ };
+ },
+
+ addOptions() {
+ return {
+ ...this.parent?.(),
+ getBubbleMenu() {
+ return {
+ pluginKey: 'linkViewBubbleMenu',
+ shouldShow: ({ state }: { state: EditorState }) => {
+ return isActive(state, HyperlinkCardExtension.name);
+ },
+ defaultAnimation: false,
+ items: [
+ {
+ priority: 10,
+ component: markRaw(LinkViewBubbleMenuItem),
+ props: {
+ type: ({ editor }: { editor: Editor }) => {
+ const attr = getNodeAttributes(editor.state, HyperlinkCardExtension.name);
+ return linkViewTypes.find((type) => type.key == attr.theme) || linkViewTypes[1];
+ },
+ },
+ },
+ ],
+ };
+ },
+ // TODO: The drag-and-drop function of this component does not respond.
+ // Maybe it's because of the Web component?
+ getDraggable() {
+ return true;
+ },
+ };
+ },
+ parseHTML() {
+ return [{ tag: 'hyperlink-card' }];
+ },
+ renderHTML({ HTMLAttributes }) {
+ return [
+ 'hyperlink-card',
+ mergeAttributes(HTMLAttributes),
+ ['a', { href: HTMLAttributes.href, target: HTMLAttributes.target }, HTMLAttributes.href],
+ ];
+ },
+ addNodeView() {
+ return VueNodeViewRenderer(HyperlinkView);
+ },
+});
+
+export default HyperlinkCardExtension;
diff --git a/ui/src/editor/hyperlink-inline-card-extension.ts b/ui/src/editor/hyperlink-inline-card-extension.ts
new file mode 100644
index 0000000..e9ee43f
--- /dev/null
+++ b/ui/src/editor/hyperlink-inline-card-extension.ts
@@ -0,0 +1,133 @@
+import LinkViewBubbleMenuItem from '@/components/LinkViewBubbleMenuItem.vue';
+import {
+ EditorState,
+ Node,
+ NodeSelection,
+ PMNode,
+ Plugin,
+ PluginKey,
+ getNodeAttributes,
+ isActive,
+ mergeAttributes,
+ type Editor,
+} from "@halo-dev/richtext-editor";
+import { markRaw } from "vue";
+import linkViewTypes from "./link-view-type";
+import { resolve } from "./utils";
+
+const HyperlinkInlineCardExtension = Node.create({
+ name: 'hyperlinkInlineCard',
+
+ atom: true,
+
+ inline: true,
+
+ group: 'inline',
+
+ addAttributes() {
+ return {
+ target: {
+ default: '_blank',
+ parseHTML: (element: HTMLElement) => {
+ return element.getAttribute('target');
+ },
+ },
+ href: {
+ default: null,
+ parseHTML: (element: HTMLElement) => {
+ return element.getAttribute('href');
+ },
+ },
+ theme: {
+ default: linkViewTypes[1].key,
+ parseHTML: (element: HTMLElement) => {
+ return element.getAttribute('theme');
+ },
+ },
+ };
+ },
+
+ addOptions() {
+ return {
+ ...this.parent?.(),
+ getBubbleMenu() {
+ return {
+ shouldShow: ({ state }: { state: EditorState }) => {
+ return isActive(state, HyperlinkInlineCardExtension.name);
+ },
+ defaultAnimation: false,
+ items: [
+ {
+ priority: 10,
+ component: markRaw(LinkViewBubbleMenuItem),
+ props: {
+ type: ({ editor }: { editor: Editor }) => {
+ const attr = getNodeAttributes(editor.state, HyperlinkInlineCardExtension.name);
+ return linkViewTypes.find((type) => type.key == attr.theme) || linkViewTypes[1];
+ },
+ },
+ },
+ ],
+ };
+ },
+ };
+ },
+ parseHTML() {
+ return [{ tag: 'hyperlink-inline-card' }];
+ },
+ renderHTML({ HTMLAttributes }) {
+ return [
+ 'hyperlink-inline-card',
+ mergeAttributes(HTMLAttributes),
+ ['a', { href: HTMLAttributes.href, target: HTMLAttributes.target }, HTMLAttributes.href],
+ ];
+ },
+ addProseMirrorPlugins() {
+ return [
+ new Plugin({
+ key: new PluginKey("hyperlinkInlineCardKey"),
+ props: {
+ handleDOMEvents: {
+ mouseover: (view, event) => {
+ const coords = {
+ left: event.clientX,
+ top: event.clientY,
+ };
+ // 从 event 中判断当前移入的元素
+ const pos = view.posAtCoords(coords);
+ if (!pos) {
+ return false;
+ }
+ const $pos = resolve(view.state.doc, pos.pos);
+ if ($pos.length === 0) {
+ return false;
+ }
+ const currentNodePos = $pos[$pos.length - 1];
+ const parentNode = currentNodePos.node;
+ if (
+ parentNode.content.childCount === 0 ||
+ parentNode.content.childCount <= currentNodePos.index
+ ) {
+ return false;
+ }
+ const node = parentNode.child(currentNodePos.index);
+ const state = view.state;
+ const tr = state.tr;
+ if (predicate(node)) {
+ tr.setSelection(new NodeSelection(state.doc.resolve(pos.pos)));
+ view.dispatch(tr);
+ return false;
+ }
+ },
+ },
+ },
+ }),
+ ];
+ },
+});
+
+const predicate = (node: PMNode) => {
+ return node.type.name === HyperlinkInlineCardExtension.name;
+};
+
+export default HyperlinkInlineCardExtension;
diff --git a/ui/src/editor/index.ts b/ui/src/editor/index.ts
index b6cec61..2167f5f 100644
--- a/ui/src/editor/index.ts
+++ b/ui/src/editor/index.ts
@@ -1,254 +1,5 @@
-import LinkViewBubbleMenuItem from "@/components/LinkViewBubbleMenuItem.vue";
-import TextExtensionMenuItem from "@/components/TextExtensionMenuItem.vue";
-import {
- EditorState,
- ExtensionLink,
- ExtensionText,
- Node,
- getMarkAttributes,
- getNodeAttributes,
- isActive,
- mergeAttributes,
- type Editor,
-} from "@halo-dev/richtext-editor";
-import { markRaw, type Component } from "vue";
-import PreviewLinkIcon from "~icons/fluent/preview-link-24-filled";
-import MdiLinkVariant from "~icons/mdi/link-variant";
-import { splitLink } from "./utils";
+import HyperlinkCardExtension from './hyperlink-card-extension';
+import HyperlinkInlineCardExtension from './hyperlink-inline-card-extension';
+import TextBubbleExtension from './text-bubble-extension';
-export interface LinkViewType {
- key: string;
- title: string;
- icon: Component;
- action: ({ editor }: { editor: Editor }) => void;
-}
-
-const HyperlinkCardExtension = Node.create({
- name: "linkView",
-
- atom: true,
-
- group: "block",
-
- onBeforeCreate() {
- const itemKey = "export-text-link-view";
- this.editor.extensionManager.extensions.forEach((extension) => {
- if (extension.name == "text") {
- const bubbleMenu = extension.options?.getBubbleMenu?.({
- editor: this.editor,
- });
- if (!bubbleMenu?.items) {
- return;
- }
- const items = bubbleMenu.items;
- if (!items || items.length == 0) {
- return;
- }
-
- //@ts-ignore
- const linkViewItem = items.find((item) => item.key == itemKey);
- if (linkViewItem) {
- return;
- }
-
- items.push({
- priority: 115,
- key: itemKey,
- component: markRaw(TextExtensionMenuItem),
- props: {
- type: () => {
- return linkViewTypes[0];
- },
- visible: ({ editor }: { editor: Editor }) => {
- return isActive(editor.state, ExtensionLink.name);
- },
- },
- });
- extension.options.getBubbleMenu = () => {
- return {
- ...bubbleMenu,
- items,
- };
- };
- }
- });
- },
-
- addAttributes() {
- return {
- target: {
- default: "_blank",
- parseHTML: (element: HTMLElement) => {
- return element.getAttribute("target");
- },
- },
- href: {
- default: null,
- parseHTML: (element: HTMLElement) => {
- return element.getAttribute("href");
- },
- },
- type: {
- default: linkViewTypes[1].key,
- parseHTML: (element: HTMLElement) => {
- return element.getAttribute("type");
- },
- },
- };
- },
-
- addOptions() {
- return {
- ...this.parent?.(),
- getBubbleMenu() {
- return {
- pluginKey: "linkViewBubbleMenu",
- shouldShow: ({ state }: { state: EditorState }) => {
- return isActive(state, HyperlinkCardExtension.name);
- },
- defaultAnimation: false,
- items: [
- {
- priority: 10,
- component: markRaw(LinkViewBubbleMenuItem),
- props: {
- type: ({ editor }: { editor: Editor }) => {
- const attr = getNodeAttributes(
- editor.state,
- HyperlinkCardExtension.name
- );
- return (
- linkViewTypes.find((type) => type.key == attr.type) ||
- linkViewTypes[1]
- );
- },
- },
- },
- ],
- };
- },
- // TODO: The drag-and-drop function of this component does not respond.
- // Maybe it's because of the Web component?
- getDraggable() {
- return true;
- },
- };
- },
- parseHTML() {
- return [{ tag: "hyperlink-card" }];
- },
- renderHTML({ HTMLAttributes }) {
- return [
- "hyperlink-card",
- mergeAttributes(HTMLAttributes),
- [
- "a",
- { href: HTMLAttributes.href, target: HTMLAttributes.target },
- HTMLAttributes.href,
- ],
- ];
- },
-});
-
-export const linkViewTypes: LinkViewType[] = [
- {
- key: "link",
- title: "链接视图",
- icon: markRaw(MdiLinkVariant),
- action: ({ editor }) => {
- if (!isActive(editor.state, HyperlinkCardExtension.name)) {
- return;
- }
- const linkViewAttr = getNodeAttributes(
- editor.state,
- HyperlinkCardExtension.name
- );
- if (!linkViewAttr || !linkViewAttr.href) {
- return;
- }
- editor.commands.insertContent({
- // TODO: Use ExtensionParagraph to report an error Cannot read properties of undefined (reading 'name')
- type: "paragraph",
- content: [
- {
- type: ExtensionText.name,
- text: linkViewAttr.href,
- marks: [
- {
- type: ExtensionLink.name,
- attrs: {
- href: linkViewAttr.href,
- },
- },
- ],
- },
- ],
- });
- },
- },
- {
- // TODO: convert to in line elements
- key: "title",
- title: "标题视图",
- icon: markRaw(MdiLinkVariant),
- action: ({ editor }) => {
- if (!isActive(editor.state, ExtensionLink.name)) {
- return;
- }
- editor
- .chain()
- .extendMarkRange(ExtensionLink.name)
- .command(({ tr }) => {
- return splitLink(tr);
- })
- .command(({ tr, state }) => {
- const linkAttr = getMarkAttributes(state, ExtensionLink.name);
- if (!linkAttr || !linkAttr.href) {
- return false;
- }
- tr.replaceSelectionWith(
- state.schema.nodes[HyperlinkCardExtension.name].create({
- href: linkAttr.href,
- type: "title-view",
- })
- );
- return true;
- })
- .focus()
- .run();
- },
- },
- {
- key: "card",
- title: "卡片视图",
- icon: markRaw(PreviewLinkIcon),
- action: ({ editor }) => {
- if (!isActive(editor.state, ExtensionLink.name)) {
- return;
- }
- editor
- .chain()
- .extendMarkRange(ExtensionLink.name)
- .command(({ tr }) => {
- return splitLink(tr);
- })
- .command(({ tr, state }) => {
- const linkAttr = getMarkAttributes(state, ExtensionLink.name);
- if (!linkAttr || !linkAttr.href) {
- return false;
- }
- tr.replaceSelectionWith(
- state.schema.nodes[HyperlinkCardExtension.name].create({
- href: linkAttr.href,
- type: "card",
- })
- );
- return true;
- })
- .focus()
- .run();
- },
- },
-];
-
-export default HyperlinkCardExtension;
+export { HyperlinkCardExtension, HyperlinkInlineCardExtension, TextBubbleExtension };
diff --git a/ui/src/editor/link-view-type.ts b/ui/src/editor/link-view-type.ts
new file mode 100644
index 0000000..a1aa727
--- /dev/null
+++ b/ui/src/editor/link-view-type.ts
@@ -0,0 +1,182 @@
+import {
+ ExtensionLink,
+ ExtensionText,
+ getMarkAttributes,
+ getNodeAttributes,
+ isActive,
+ type Editor,
+} from '@halo-dev/richtext-editor';
+import { markRaw, type Component } from 'vue';
+import MdiCardBulletedOutline from '~icons/mdi/card-bulleted-outline';
+import MdiGridLarge from '~icons/mdi/grid-large';
+import MdiLink from '~icons/mdi/link';
+import MdiLinkVariant from '~icons/mdi/link-variant';
+import HyperlinkCardExtension from './hyperlink-card-extension';
+import HyperlinkInlineCardExtension from './hyperlink-inline-card-extension';
+import { splitLink } from './utils';
+
+export interface LinkViewType {
+ key: string;
+ title: string;
+ icon: Component;
+ action: ({ editor }: { editor: Editor }) => void;
+}
+
+const linkViewTypes: LinkViewType[] = [
+ {
+ key: 'link',
+ title: '普通链接',
+ icon: markRaw(MdiLinkVariant),
+ action: ({ editor }) => {
+ let linkViewAttr;
+ if (isActive(editor.state, HyperlinkCardExtension.name)) {
+ linkViewAttr = getNodeAttributes(editor.state, HyperlinkCardExtension.name);
+ }
+
+ if (isActive(editor.state, HyperlinkInlineCardExtension.name)) {
+ linkViewAttr = getNodeAttributes(editor.state, HyperlinkInlineCardExtension.name);
+ }
+
+ if (!linkViewAttr || !linkViewAttr.href) {
+ return;
+ }
+ editor.commands.insertContent({
+ // TODO: Use ExtensionParagraph to report an error Cannot read properties of undefined (reading 'name')
+ type: 'paragraph',
+ content: [
+ {
+ type: ExtensionText.name,
+ text: linkViewAttr.href,
+ marks: [
+ {
+ type: ExtensionLink.name,
+ attrs: {
+ href: linkViewAttr.href,
+ },
+ },
+ ],
+ },
+ ],
+ });
+ },
+ },
+ {
+ key: 'inline',
+ title: '行内卡片',
+ icon: markRaw(MdiLink),
+ action: ({ editor }) => {
+ if (isActive(editor.state, ExtensionLink.name)) {
+ editor
+ .chain()
+ .extendMarkRange(ExtensionLink.name)
+ .command(({ tr, state }) => {
+ const linkAttr = getMarkAttributes(state, ExtensionLink.name);
+ if (!linkAttr || !linkAttr.href) {
+ return false;
+ }
+ tr.replaceSelectionWith(
+ state.schema.nodes[HyperlinkInlineCardExtension.name].create({
+ href: linkAttr.href,
+ theme: 'inline',
+ })
+ );
+ return true;
+ })
+ .focus()
+ .run();
+ return;
+ }
+ if (isActive(editor.state, HyperlinkCardExtension.name)) {
+ const linkViewAttr = getNodeAttributes(editor.state, HyperlinkCardExtension.name);
+ editor
+ .chain()
+ .command(({ tr, state }) => {
+ tr.replaceSelectionWith(
+ state.schema.nodes[HyperlinkInlineCardExtension.name].create({
+ href: linkViewAttr.href,
+ theme: 'inline',
+ })
+ );
+ return true;
+ })
+ .run();
+ return;
+ }
+ },
+ },
+ {
+ key: 'small',
+ title: '链接卡片(小)',
+ icon: markRaw(MdiCardBulletedOutline),
+ action: ({ editor }) => {
+ changeToHyperlinkCardExtension(editor, 'small');
+ },
+ },
+ {
+ key: 'regular',
+ title: '链接卡片(正常)',
+ icon: markRaw(MdiCardBulletedOutline),
+ action: ({ editor }) => {
+ changeToHyperlinkCardExtension(editor, 'regular');
+ },
+ },
+ {
+ key: 'grid',
+ title: '链接卡片(格子)',
+ icon: markRaw(MdiGridLarge),
+ action: ({ editor }) => {
+ changeToHyperlinkCardExtension(editor, 'grid');
+ },
+ },
+];
+
+const changeToHyperlinkCardExtension = (editor: Editor, theme: string) => {
+ if (isActive(editor.state, ExtensionLink.name)) {
+ editor
+ .chain()
+ .extendMarkRange(ExtensionLink.name)
+ .command(({ tr }) => {
+ return splitLink(tr);
+ })
+ .command(({ tr, state }) => {
+ const linkAttr = getMarkAttributes(state, ExtensionLink.name);
+ if (!linkAttr || !linkAttr.href) {
+ return false;
+ }
+ tr.replaceSelectionWith(
+ state.schema.nodes[HyperlinkCardExtension.name].create({
+ href: linkAttr.href,
+ theme: theme,
+ })
+ );
+ return true;
+ })
+ .focus()
+ .run();
+ return;
+ }
+ if (isActive(editor.state, HyperlinkCardExtension.name)) {
+ editor.commands.updateAttributes(HyperlinkCardExtension.name, {
+ theme: theme,
+ });
+ return;
+ }
+ if (isActive(editor.state, HyperlinkInlineCardExtension.name)) {
+ const linkViewAttr = getNodeAttributes(editor.state, HyperlinkInlineCardExtension.name);
+ editor
+ .chain()
+ .command(({ tr, state }) => {
+ tr.replaceSelectionWith(
+ state.schema.nodes[HyperlinkCardExtension.name].create({
+ href: linkViewAttr.href,
+ theme: theme,
+ })
+ );
+ return true;
+ })
+ .run();
+ return;
+ }
+};
+
+export default linkViewTypes;
diff --git a/ui/src/editor/text-bubble-extension.ts b/ui/src/editor/text-bubble-extension.ts
new file mode 100644
index 0000000..a1f2d3b
--- /dev/null
+++ b/ui/src/editor/text-bubble-extension.ts
@@ -0,0 +1,52 @@
+import TextExtensionMenuItem from '@/components/TextExtensionMenuItem.vue';
+import { Editor, Extension, ExtensionLink, isActive } from '@halo-dev/richtext-editor';
+import { markRaw } from 'vue';
+import linkViewTypes from './link-view-type';
+
+const TextBubbleExtension = Extension.create({
+ onBeforeCreate() {
+ const itemKey = 'export-text-link-view';
+ this.editor.extensionManager.extensions.forEach((extension) => {
+ if (extension.name == 'text') {
+ const bubbleMenu = extension.options?.getBubbleMenu?.({
+ editor: this.editor,
+ });
+ if (!bubbleMenu?.items) {
+ return;
+ }
+ const items = bubbleMenu.items;
+ if (!items || items.length == 0) {
+ return;
+ }
+
+ //@ts-ignore
+ const linkViewItem = items.find((item) => item.key == itemKey);
+ if (linkViewItem) {
+ return;
+ }
+
+ items.push({
+ priority: 115,
+ key: itemKey,
+ component: markRaw(TextExtensionMenuItem),
+ props: {
+ type: () => {
+ return linkViewTypes[0];
+ },
+ visible: ({ editor }: { editor: Editor }) => {
+ return isActive(editor.state, ExtensionLink.name);
+ },
+ },
+ });
+ extension.options.getBubbleMenu = () => {
+ return {
+ ...bubbleMenu,
+ items,
+ };
+ };
+ }
+ });
+ },
+});
+
+export default TextBubbleExtension;
diff --git a/ui/src/editor/utils.ts b/ui/src/editor/utils.ts
index 549c0ae..5556614 100644
--- a/ui/src/editor/utils.ts
+++ b/ui/src/editor/utils.ts
@@ -1,4 +1,5 @@
import {
+ PMNode,
TextSelection,
canSplit,
type Transaction,
@@ -27,3 +28,38 @@ export const splitLink = (tr: Transaction) => {
}
return true;
};
+
+export interface NodePath {
+ node: PMNode;
+ index: number;
+ offset: number;
+}
+
+export const resolve = (doc: PMNode, pos: number): NodePath[] => {
+ if (pos < 0 || pos > doc.content.size) {
+ throw new RangeError("Position " + pos + " out of range");
+ }
+
+ const path: NodePath[] = [];
+ let start = 0;
+ let parentOffset = pos;
+ let node: PMNode | null = doc;
+
+ while (node) {
+ const { index, offset } = node.content.findIndex(parentOffset);
+ const rem = parentOffset - offset;
+ path.push({ node, index, offset: start + offset });
+ if (rem === 0) {
+ break;
+ }
+
+ node = node.child(index);
+ if (node.isText) {
+ break;
+ }
+ parentOffset = rem - 1;
+ start += offset + 1;
+ }
+
+ return path;
+};
diff --git a/ui/src/index.ts b/ui/src/index.ts
index 809e0f1..69ce117 100644
--- a/ui/src/index.ts
+++ b/ui/src/index.ts
@@ -1,15 +1,19 @@
-import "@/styles/index.css";
-import "@/styles/tailwind.css";
-import { definePlugin } from "@halo-dev/console-shared";
-import "@halo-dev/hyperlink-card";
-import HyperlinkCardExtension from "./editor";
+import '@/styles/index.css';
+import '@/styles/tailwind.css';
+import { definePlugin } from '@halo-dev/console-shared';
+import '@halo-dev/hyperlink-card';
+import {
+ HyperlinkCardExtension,
+ HyperlinkInlineCardExtension,
+ TextBubbleExtension,
+} from './editor';
export default definePlugin({
components: {},
routes: [],
extensionPoints: {
- "default:editor:extension:create": () => {
- return [HyperlinkCardExtension];
+ 'default:editor:extension:create': () => {
+ return [TextBubbleExtension, HyperlinkCardExtension, HyperlinkInlineCardExtension];
},
},
});
diff --git a/ui/src/styles/index.css b/ui/src/styles/index.css
index 94bc439..f26a9a3 100644
--- a/ui/src/styles/index.css
+++ b/ui/src/styles/index.css
@@ -4,7 +4,7 @@ link-view.ProseMirror-selectednode {
.halo-rich-text-editor .editor-content .ProseMirror link-view {
display: block;
- margin-top: .75em;
+ margin-top: 0.75em;
margin-bottom: 0;
pointer-events: painted;
}
diff --git a/ui/tailwind.config.cjs b/ui/tailwind.config.cjs
index f3c90e1..4861f48 100644
--- a/ui/tailwind.config.cjs
+++ b/ui/tailwind.config.cjs
@@ -1,4 +1,6 @@
/** @type {import('tailwindcss').Config} */
module.exports = {
content: ["./src/**/*.{vue,js,ts,jsx,tsx}"],
+ prefix: "hyperlink-",
+ darkMode: "class",
};
diff --git a/ui/vite.config.ts b/ui/vite.config.ts
index 1b728a0..aa8f90c 100644
--- a/ui/vite.config.ts
+++ b/ui/vite.config.ts
@@ -1,25 +1,25 @@
-import { fileURLToPath, URL } from "url";
+import { fileURLToPath, URL } from 'url';
-import { HaloUIPluginBundlerKit } from "@halo-dev/ui-plugin-bundler-kit";
-import Vue from "@vitejs/plugin-vue";
-import Icons from "unplugin-icons/vite";
-import { defineConfig } from "vite";
+import { HaloUIPluginBundlerKit } from '@halo-dev/ui-plugin-bundler-kit';
+import Vue from '@vitejs/plugin-vue';
+import Icons from 'unplugin-icons/vite';
+import { defineConfig } from 'vite';
export default defineConfig({
plugins: [
Vue({
template: {
compilerOptions: {
- isCustomElement: (tag) => tag === "hyperlink-card",
+ isCustomElement: (tag) => tag === 'hyperlink-card' || tag === 'hyperlink-inline-card',
},
},
}),
- Icons({ compiler: "vue3" }),
+ Icons({ compiler: 'vue3' }),
HaloUIPluginBundlerKit(),
],
resolve: {
alias: {
- "@": fileURLToPath(new URL("./src", import.meta.url)),
+ '@': fileURLToPath(new URL('./src', import.meta.url)),
},
},
});