diff --git a/packages/elements/index.html b/packages/elements/index.html
new file mode 100644
index 000000000..93d3782ab
--- /dev/null
+++ b/packages/elements/index.html
@@ -0,0 +1,14 @@
+
+
+
+
+
+ Logto elements dev page
+
+
+
+
+
+
+
+
diff --git a/packages/elements/package.json b/packages/elements/package.json
index b9640c5ec..a9bcfd3cd 100644
--- a/packages/elements/package.json
+++ b/packages/elements/package.json
@@ -8,6 +8,7 @@
"type": "module",
"private": true,
"main": "dist/index.js",
+ "module": "dist/index.js",
"exports": {
".": {
"import": "./dist/index.js",
@@ -28,12 +29,14 @@
"scripts": {
"precommit": "lint-staged",
"build": "lit-localize build && tsup",
+ "start": "web-dev-server",
"dev": "lit-localize build && tsup --watch --no-splitting",
"lint": "eslint --ext .ts src",
"lint:report": "pnpm lint --format json --output-file report.json",
"test": "echo \"No tests yet.\"",
"test:ci": "pnpm run test --silent --coverage",
- "prepack": "pnpm check && pnpm build",
+ "prepublishOnly": "pnpm check",
+ "prepack": "pnpm build",
"localize": "lit-localize",
"check": "lit-localize extract && git add . -N && git diff --exit-code"
},
@@ -53,6 +56,8 @@
"@lit/localize-tools": "^0.7.2",
"@silverhand/eslint-config": "6.0.1",
"@silverhand/ts-config": "6.0.0",
+ "@web/dev-server": "^0.4.6",
+ "@web/dev-server-esbuild": "^1.0.2",
"eslint": "^8.56.0",
"lint-staged": "^15.0.0",
"prettier": "^3.0.0",
diff --git a/packages/elements/src/components/logto-avatar.ts b/packages/elements/src/components/logto-avatar.ts
new file mode 100644
index 000000000..7ab7a82a5
--- /dev/null
+++ b/packages/elements/src/components/logto-avatar.ts
@@ -0,0 +1,53 @@
+import { msg } from '@lit/localize';
+import { LitElement, css } from 'lit';
+import { customElement, property } from 'lit/decorators.js';
+
+import { unit } from '../utils/css.js';
+
+const tagName = 'logto-avatar';
+
+const sizes = Object.freeze({
+ medium: unit(8),
+ large: unit(10),
+});
+
+@customElement(tagName)
+export class LogtoAvatar extends LitElement {
+ static tagName = tagName;
+ static styles = css`
+ :host {
+ display: block;
+ border-radius: ${unit(2)};
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+ }
+ `;
+
+ @property({ reflect: true })
+ size: 'medium' | 'large' = 'medium';
+
+ @property({ reflect: true })
+ src = '';
+
+ @property({ reflect: true })
+ alt = msg('Avatar', {
+ id: 'account.profile.personal-info.avatar',
+ desc: 'The avatar of the user.',
+ });
+
+ connectedCallback(): void {
+ super.connectedCallback();
+ this.style.setProperty('width', sizes[this.size].cssText);
+ this.style.setProperty('height', sizes[this.size].cssText);
+
+ if (this.src) {
+ // Show the image holder with the provided image.
+ this.style.setProperty('background-color', '#adaab422');
+ this.style.setProperty('background-image', `url(${this.src})`);
+ } else {
+ // A temporary default fallback color. Need to implement the relevant logic in `` later.
+ this.style.setProperty('background-color', '#e74c3c');
+ }
+ }
+}
diff --git a/packages/elements/src/components/logto-button.ts b/packages/elements/src/components/logto-button.ts
new file mode 100644
index 000000000..78972cfbe
--- /dev/null
+++ b/packages/elements/src/components/logto-button.ts
@@ -0,0 +1,67 @@
+import { LitElement, css, html } from 'lit';
+import { customElement, property } from 'lit/decorators.js';
+
+import { unit } from '../utils/css.js';
+import { vars } from '../utils/theme.js';
+
+const tagName = 'logto-button';
+
+@customElement(tagName)
+export class LogtoButton extends LitElement {
+ static tagName = tagName;
+ static styles = css`
+ :host {
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ border: none;
+ outline: none;
+ font: ${vars.fontLabel2};
+ transition: background-color 0.2s ease-in-out;
+ white-space: nowrap;
+ user-select: none;
+ position: relative;
+ text-decoration: none;
+ gap: ${unit(2)};
+ cursor: pointer;
+ }
+
+ :host(:disabled) {
+ cursor: not-allowed;
+ }
+
+ :host([type='text']) {
+ background: none;
+ border-color: none;
+ font: ${vars.fontLabel2};
+ color: ${vars.colorTextLink};
+ padding: ${unit(0.5, 1)};
+ border-radius: ${unit(1)};
+ }
+
+ :host([type='text']:disabled) {
+ color: ${vars.colorDisabled};
+ }
+
+ :host([type='text']:focus-visible) {
+ outline: 2px solid ${vars.colorFocusedVariant};
+ }
+
+ :host([type='text']:not(:disabled):hover) {
+ background: ${vars.colorHoverVariant};
+ }
+ `;
+
+ @property()
+ type: 'default' | 'text' = 'default';
+
+ connectedCallback(): void {
+ super.connectedCallback();
+ this.role = 'button';
+ this.tabIndex = 0;
+ }
+
+ render() {
+ return html``;
+ }
+}
diff --git a/packages/elements/src/components/logto-card-section.ts b/packages/elements/src/components/logto-card-section.ts
index de4e88be5..3ce9da6af 100644
--- a/packages/elements/src/components/logto-card-section.ts
+++ b/packages/elements/src/components/logto-card-section.ts
@@ -7,6 +7,7 @@ import { vars } from '../utils/theme.js';
const tagName = 'logto-card-section';
+/** A section in a form card with a heading. It is used to group related content. */
@customElement(tagName)
@localized()
export class LogtoCardSection extends LitElement {
@@ -14,7 +15,7 @@ export class LogtoCardSection extends LitElement {
static styles = css`
header {
font: ${vars.fontLabel2};
- color: ${vars.colorText};
+ color: ${vars.colorTextPrimary};
margin-bottom: ${unit(1)};
}
`;
diff --git a/packages/elements/src/components/logto-card.ts b/packages/elements/src/components/logto-card.ts
index a6bde4ad6..da67b4103 100644
--- a/packages/elements/src/components/logto-card.ts
+++ b/packages/elements/src/components/logto-card.ts
@@ -6,6 +6,16 @@ import { vars } from '../utils/theme.js';
const tagName = 'logto-card';
+/**
+ * A card with background, padding, and border radius.
+ *
+ * @example
+ * ```html
+ *
+ *
+ *
+ * ```
+ */
@customElement(tagName)
export class LogtoCard extends LitElement {
static tagName = tagName;
diff --git a/packages/elements/src/components/logto-form-card.ts b/packages/elements/src/components/logto-form-card.ts
index dc02bbd99..6252d8393 100644
--- a/packages/elements/src/components/logto-form-card.ts
+++ b/packages/elements/src/components/logto-form-card.ts
@@ -8,6 +8,26 @@ import { vars } from '../utils/theme.js';
const tagName = 'logto-form-card';
+/**
+ * A card that contains a form or form-like content. A heading and an optional description can be
+ * provided to describe the purpose of the content.
+ *
+ * To group related content in a form card, use the `logto-card-section` element.
+ *
+ * @example
+ * ```tsx
+ * html`
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ * `
+ * ```
+ */
@customElement(tagName)
@localized()
export class LogtoFormCard extends LitElement {
@@ -30,7 +50,8 @@ export class LogtoFormCard extends LitElement {
flex: 1;
}
- ::slotted(*) {
+ slot {
+ display: block;
flex: 16;
}
`;
diff --git a/packages/elements/src/components/logto-list-row.ts b/packages/elements/src/components/logto-list-row.ts
new file mode 100644
index 000000000..5faf2c45f
--- /dev/null
+++ b/packages/elements/src/components/logto-list-row.ts
@@ -0,0 +1,50 @@
+import { localized, msg } from '@lit/localize';
+import { LitElement, css, html } from 'lit';
+import { customElement } from 'lit/decorators.js';
+
+import { unit } from '../utils/css.js';
+import { vars } from '../utils/theme.js';
+
+const tagName = 'logto-list-row';
+
+@customElement(tagName)
+@localized()
+export class LogtoListRow extends LitElement {
+ static tagName = tagName;
+ static styles = css`
+ :host {
+ box-sizing: border-box;
+ display: grid;
+ height: ${unit(16)};
+ padding: ${unit(2, 6)};
+ grid-template-columns: 1fr 2fr 1fr;
+ align-items: center;
+ color: ${vars.colorTextPrimary};
+ font: ${vars.fontBody2};
+ }
+
+ :host(:not(:last-child)) {
+ border-bottom: 1px solid ${vars.colorLineDivider};
+ }
+
+ slot {
+ display: block;
+ }
+
+ slot[name='title'] {
+ font: ${vars.fontLabel2};
+ }
+
+ slot[name='actions'] {
+ text-align: right;
+ }
+ `;
+
+ render() {
+ return html`
+ {${msg('Title', { id: 'general.title' })}}
+ {${msg('Content', { id: 'general.content' })}}
+ {${msg('Actions', { id: 'general.actions' })}}
+ `;
+ }
+}
diff --git a/packages/elements/src/components/logto-list.ts b/packages/elements/src/components/logto-list.ts
new file mode 100644
index 000000000..a26ab1174
--- /dev/null
+++ b/packages/elements/src/components/logto-list.ts
@@ -0,0 +1,23 @@
+import { LitElement, css, html } from 'lit';
+import { customElement } from 'lit/decorators.js';
+
+import { unit } from '../utils/css.js';
+import { vars } from '../utils/theme.js';
+
+const tagName = 'logto-list';
+
+@customElement(tagName)
+export class LogtoList extends LitElement {
+ static tagName = tagName;
+ static styles = css`
+ :host {
+ display: block;
+ border-radius: ${unit(2)};
+ border: 1px solid ${vars.colorLineDivider};
+ }
+ `;
+
+ render() {
+ return html``;
+ }
+}
diff --git a/packages/elements/src/elements/logto-profile-card.ts b/packages/elements/src/elements/logto-profile-card.ts
index faa12273a..31fcc9bd3 100644
--- a/packages/elements/src/elements/logto-profile-card.ts
+++ b/packages/elements/src/elements/logto-profile-card.ts
@@ -11,7 +11,7 @@ const tagName = 'logto-profile-card';
export class LogtoProfileCard extends LitElement {
static tagName = tagName;
static styles = css`
- p {
+ p.dev {
color: ${vars.colorTextSecondary};
}
`;
@@ -19,10 +19,42 @@ export class LogtoProfileCard extends LitElement {
render() {
return html`
+ 🚧 This section is a dev feature that is still working in progress.
- 🚧 This section is a dev feature that is still working in progress.
+
+
+
+ ${msg('Avatar', {
+ id: 'account.profile.personal-info.avatar',
+ desc: 'The avatar of the user.',
+ })}
+
+
+
+
+
+
+ ${msg('Change', { id: 'general.change' })}
+
+
+
+
+
+ ${msg('Name', {
+ id: 'account.profile.personal-info.name',
+ desc: 'The name of the user.',
+ })}
+
+ John Doe
+
+
+ ${msg('Change', { id: 'general.change' })}
+
+
+
+
`;
diff --git a/packages/elements/src/index.ts b/packages/elements/src/index.ts
index de8f49832..9d2edf45a 100644
--- a/packages/elements/src/index.ts
+++ b/packages/elements/src/index.ts
@@ -1,6 +1,10 @@
+export * from './components/logto-avatar.js';
+export * from './components/logto-button.js';
export * from './components/logto-card-section.js';
export * from './components/logto-card.js';
export * from './components/logto-form-card.js';
+export * from './components/logto-list-row.js';
+export * from './components/logto-list.js';
export * from './components/logto-theme-provider.js';
export * from './elements/logto-profile-card.js';
export * from './utils/locale.js';
diff --git a/packages/elements/src/react.ts b/packages/elements/src/react.ts
index cacc64ea1..28b363ae4 100644
--- a/packages/elements/src/react.ts
+++ b/packages/elements/src/react.ts
@@ -1,6 +1,12 @@
import { createComponent } from '@lit/react';
-import { LogtoThemeProvider, LogtoCard, LogtoFormCard, LogtoProfileCard } from './index.js';
+import {
+ LogtoThemeProvider,
+ LogtoCard,
+ LogtoFormCard,
+ LogtoProfileCard,
+ LogtoList,
+} from './index.js';
export * from './utils/locale.js';
@@ -11,6 +17,11 @@ export const createReactComponents = (react: Parameters[
elementClass: LogtoFormCard,
react,
}),
+ LogtoList: createComponent({
+ tagName: LogtoList.tagName,
+ elementClass: LogtoList,
+ react,
+ }),
LogtoProfileCard: createComponent({
tagName: LogtoProfileCard.tagName,
elementClass: LogtoProfileCard,
diff --git a/packages/elements/src/utils/theme.ts b/packages/elements/src/utils/theme.ts
index 8eb806d1d..41a72810f 100644
--- a/packages/elements/src/utils/theme.ts
+++ b/packages/elements/src/utils/theme.ts
@@ -5,13 +5,18 @@ import { type KebabCase, kebabCase } from './string.js';
/** All the colors to be used in the Logto components and elements. */
export type Color = {
colorPrimary: string;
- colorText: string;
+ colorTextPrimary: string;
colorTextLink: string;
colorTextSecondary: string;
colorBorder: string;
colorCardTitle: string;
colorLayer1: string;
colorLayer2: string;
+ colorLineDivider: string;
+ colorDisabled: string;
+ colorHover: string;
+ colorHoverVariant: string;
+ colorFocusedVariant: string;
};
/** All the fonts to be used in the Logto components and elements. */
@@ -19,6 +24,9 @@ export type Font = {
fontLabel1: string;
fontLabel2: string;
fontLabel3: string;
+ fontBody1: string;
+ fontBody2: string;
+ fontBody3: string;
fontSectionHeading1: string;
fontSectionHeading2: string;
};
@@ -33,6 +41,9 @@ export const defaultFont: Readonly = Object.freeze({
fontLabel1: `500 16px / 24px ${defaultFontFamily}`,
fontLabel2: `500 14px / 20px ${defaultFontFamily}`,
fontLabel3: `500 12px / 16px ${defaultFontFamily}`,
+ fontBody1: `400 16px / 24px ${defaultFontFamily}`,
+ fontBody2: `400 14px / 20px ${defaultFontFamily}`,
+ fontBody3: `400 12px / 16px ${defaultFontFamily}`,
fontSectionHeading1: `700 12px / 16px ${defaultFontFamily}`,
fontSectionHeading2: `700 10px / 16px ${defaultFontFamily}`,
});
@@ -40,25 +51,35 @@ export const defaultFont: Readonly = Object.freeze({
export const defaultTheme: Readonly = Object.freeze({
...defaultFont,
colorPrimary: '#5d34f2',
- colorText: '#191c1d',
+ colorTextPrimary: '#191c1d',
colorTextLink: '#5d34f2',
colorTextSecondary: '#747778',
colorBorder: '#c4c7c7',
colorCardTitle: '#928f9a',
colorLayer1: '#000',
colorLayer2: '#2d3132',
+ colorLineDivider: '#191c1d1f',
+ colorDisabled: '#5c5f60',
+ colorHover: '#191c1d14',
+ colorHoverVariant: '#5d34f214',
+ colorFocusedVariant: '#5d34f229',
});
export const darkTheme: Readonly = Object.freeze({
...defaultFont,
colorPrimary: '#7958ff',
- colorText: '#f7f8f8',
+ colorTextPrimary: '#f7f8f8',
colorTextLink: '#cabeff',
colorTextSecondary: '#a9acac',
colorBorder: '#5c5f60',
colorCardTitle: '#928f9a',
colorLayer1: '#2a2c32',
colorLayer2: '#34353f',
+ colorLineDivider: '#f7f8f824',
+ colorDisabled: '#5c5f60',
+ colorHover: '#f7f8f814',
+ colorHoverVariant: '#cabeff14',
+ colorFocusedVariant: '#cabeff29',
});
/**
@@ -109,7 +130,7 @@ export const toVar = (value: string) => unsafeCSS(`var(--logto-${kebabCase(value
* `
*/
// eslint-disable-next-line no-restricted-syntax -- `Object.fromEntries` will lose the type
-export const vars = Object.freeze(
+export const vars: Record = Object.freeze(
Object.fromEntries(Object.keys(defaultTheme).map((key) => [key, toVar(key)]))
) as Record;
diff --git a/packages/elements/web-dev-server.config.js b/packages/elements/web-dev-server.config.js
new file mode 100644
index 000000000..ea305a4b8
--- /dev/null
+++ b/packages/elements/web-dev-server.config.js
@@ -0,0 +1,21 @@
+// eslint-disable-next-line unicorn/prevent-abbreviations
+import { fileURLToPath } from 'node:url';
+
+import { esbuildPlugin } from '@web/dev-server-esbuild';
+
+const config = {
+ open: true,
+ watch: true,
+ appIndex: 'index.html',
+ nodeResolve: {
+ exportConditions: ['development'],
+ },
+ plugins: [
+ esbuildPlugin({
+ ts: true,
+ tsconfig: fileURLToPath(new URL('tsconfig.json', import.meta.url)),
+ }),
+ ],
+};
+
+export default config;
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 3cfa8d267..cbbc3abc2 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -3576,6 +3576,12 @@ importers:
'@silverhand/ts-config':
specifier: 6.0.0
version: 6.0.0(typescript@5.3.3)
+ '@web/dev-server':
+ specifier: ^0.4.6
+ version: 0.4.6
+ '@web/dev-server-esbuild':
+ specifier: ^1.0.2
+ version: 1.0.2
eslint:
specifier: ^8.56.0
version: 8.57.0
@@ -4243,6 +4249,10 @@ importers:
packages:
+ '@75lb/deep-merge@1.1.1':
+ resolution: {integrity: sha512-xvgv6pkMGBA6GwdyJbNAnDmfAIR/DfWhrj9jgWh3TY7gRm3KO46x/GPjRg6wJ0nOepwqrNxFfojebh0Df4h4Tw==}
+ engines: {node: '>=12.17'}
+
'@aashutoshrathi/word-wrap@1.2.6':
resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==}
engines: {node: '>=0.10.0'}
@@ -4856,138 +4866,276 @@ packages:
peerDependencies:
postcss-selector-parser: ^6.0.13
+ '@esbuild/aix-ppc64@0.19.12':
+ resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [aix]
+
'@esbuild/aix-ppc64@0.21.5':
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
engines: {node: '>=12'}
cpu: [ppc64]
os: [aix]
+ '@esbuild/android-arm64@0.19.12':
+ resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+
'@esbuild/android-arm64@0.21.5':
resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
engines: {node: '>=12'}
cpu: [arm64]
os: [android]
+ '@esbuild/android-arm@0.19.12':
+ resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+
'@esbuild/android-arm@0.21.5':
resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
engines: {node: '>=12'}
cpu: [arm]
os: [android]
+ '@esbuild/android-x64@0.19.12':
+ resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+
'@esbuild/android-x64@0.21.5':
resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
engines: {node: '>=12'}
cpu: [x64]
os: [android]
+ '@esbuild/darwin-arm64@0.19.12':
+ resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+
'@esbuild/darwin-arm64@0.21.5':
resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
engines: {node: '>=12'}
cpu: [arm64]
os: [darwin]
+ '@esbuild/darwin-x64@0.19.12':
+ resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+
'@esbuild/darwin-x64@0.21.5':
resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
engines: {node: '>=12'}
cpu: [x64]
os: [darwin]
+ '@esbuild/freebsd-arm64@0.19.12':
+ resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+
'@esbuild/freebsd-arm64@0.21.5':
resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
engines: {node: '>=12'}
cpu: [arm64]
os: [freebsd]
+ '@esbuild/freebsd-x64@0.19.12':
+ resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+
'@esbuild/freebsd-x64@0.21.5':
resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
engines: {node: '>=12'}
cpu: [x64]
os: [freebsd]
+ '@esbuild/linux-arm64@0.19.12':
+ resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+
'@esbuild/linux-arm64@0.21.5':
resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
engines: {node: '>=12'}
cpu: [arm64]
os: [linux]
+ '@esbuild/linux-arm@0.19.12':
+ resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+
'@esbuild/linux-arm@0.21.5':
resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
engines: {node: '>=12'}
cpu: [arm]
os: [linux]
+ '@esbuild/linux-ia32@0.19.12':
+ resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+
'@esbuild/linux-ia32@0.21.5':
resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
engines: {node: '>=12'}
cpu: [ia32]
os: [linux]
+ '@esbuild/linux-loong64@0.19.12':
+ resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+
'@esbuild/linux-loong64@0.21.5':
resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
engines: {node: '>=12'}
cpu: [loong64]
os: [linux]
+ '@esbuild/linux-mips64el@0.19.12':
+ resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+
'@esbuild/linux-mips64el@0.21.5':
resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
engines: {node: '>=12'}
cpu: [mips64el]
os: [linux]
+ '@esbuild/linux-ppc64@0.19.12':
+ resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+
'@esbuild/linux-ppc64@0.21.5':
resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
engines: {node: '>=12'}
cpu: [ppc64]
os: [linux]
+ '@esbuild/linux-riscv64@0.19.12':
+ resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+
'@esbuild/linux-riscv64@0.21.5':
resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
engines: {node: '>=12'}
cpu: [riscv64]
os: [linux]
+ '@esbuild/linux-s390x@0.19.12':
+ resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+
'@esbuild/linux-s390x@0.21.5':
resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
engines: {node: '>=12'}
cpu: [s390x]
os: [linux]
+ '@esbuild/linux-x64@0.19.12':
+ resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+
'@esbuild/linux-x64@0.21.5':
resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
engines: {node: '>=12'}
cpu: [x64]
os: [linux]
+ '@esbuild/netbsd-x64@0.19.12':
+ resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+
'@esbuild/netbsd-x64@0.21.5':
resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
engines: {node: '>=12'}
cpu: [x64]
os: [netbsd]
+ '@esbuild/openbsd-x64@0.19.12':
+ resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+
'@esbuild/openbsd-x64@0.21.5':
resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
engines: {node: '>=12'}
cpu: [x64]
os: [openbsd]
+ '@esbuild/sunos-x64@0.19.12':
+ resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+
'@esbuild/sunos-x64@0.21.5':
resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
engines: {node: '>=12'}
cpu: [x64]
os: [sunos]
+ '@esbuild/win32-arm64@0.19.12':
+ resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+
'@esbuild/win32-arm64@0.21.5':
resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
engines: {node: '>=12'}
cpu: [arm64]
os: [win32]
+ '@esbuild/win32-ia32@0.19.12':
+ resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+
'@esbuild/win32-ia32@0.21.5':
resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
engines: {node: '>=12'}
cpu: [ia32]
os: [win32]
+ '@esbuild/win32-x64@0.19.12':
+ resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+
'@esbuild/win32-x64@0.21.5':
resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
engines: {node: '>=12'}
@@ -5300,6 +5448,9 @@ packages:
'@manypkg/get-packages@1.1.3':
resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==}
+ '@mdn/browser-compat-data@4.2.1':
+ resolution: {integrity: sha512-EWUguj2kd7ldmrF9F+vI5hUOralPd+sdsUnYbRy33vZTuZkduC1shE9TtEMEjAQwyfyMb4ole5KtjF8MsnQOlA==}
+
'@mdx-js/mdx@3.0.1':
resolution: {integrity: sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==}
@@ -6497,6 +6648,9 @@ packages:
'@types/color@3.0.3':
resolution: {integrity: sha512-X//qzJ3d3Zj82J9sC/C18ZY5f43utPbAJ6PhYt/M7uG6etcF6MRpKdN880KBy43B0BMzSfeT96MzrsNjFI3GbA==}
+ '@types/command-line-args@5.2.3':
+ resolution: {integrity: sha512-uv0aG6R0Y8WHZLTamZwtfsDLVRnOa+n+n5rEvFWL5Na5gZ8V2Teab/duDPFzIIIhs9qizDpcavCusCLJZu62Kw==}
+
'@types/connect@3.4.35':
resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==}
@@ -6662,6 +6816,9 @@ packages:
'@types/parse-json@4.0.0':
resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==}
+ '@types/parse5@6.0.3':
+ resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==}
+
'@types/pg@8.11.2':
resolution: {integrity: sha512-G2Mjygf2jFMU/9hCaTYxJrwdObdcnuQde1gndooZSOHsNSaCehAuwc7EIuSA34Do8Jx2yZ19KtvW8P0j4EuUXw==}
@@ -6773,6 +6930,9 @@ packages:
'@types/unist@3.0.0':
resolution: {integrity: sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==}
+ '@types/ws@7.4.7':
+ resolution: {integrity: sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==}
+
'@types/yargs-parser@21.0.0':
resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==}
@@ -6866,6 +7026,31 @@ packages:
'@vitest/utils@2.0.0':
resolution: {integrity: sha512-t0jbx8VugWEP6A29NbyfQKVU68Vo6oUw0iX3a8BwO3nrZuivfHcFO4Y5UsqXlplX+83P9UaqEvC2YQhspC0JSA==}
+ '@web/config-loader@0.3.1':
+ resolution: {integrity: sha512-IYjHXUgSGGNpO3YJQ9foLcazbJlAWDdJGRe9be7aOhon0Nd6Na5JIOJAej7jsMu76fKHr4b4w2LfIdNQ4fJ8pA==}
+ engines: {node: '>=18.0.0'}
+
+ '@web/dev-server-core@0.7.2':
+ resolution: {integrity: sha512-Q/0jpF13Ipk+qGGQ+Yx/FW1TQBYazpkfgYHHo96HBE7qv4V4KKHqHglZcSUxti/zd4bToxX1cFTz8dmbTlb8JA==}
+ engines: {node: '>=18.0.0'}
+
+ '@web/dev-server-esbuild@1.0.2':
+ resolution: {integrity: sha512-ak5mKt7L0H/Fa470Ku7p9A1eI32DNyFGM83jDkJviBO8r3lM00O5hVFW1K+UIYNC5EyanLyPxTqgtIuQEyMYcQ==}
+ engines: {node: '>=18.0.0'}
+
+ '@web/dev-server-rollup@0.6.4':
+ resolution: {integrity: sha512-sJZfTGCCrdku5xYnQQG51odGI092hKY9YFM0X3Z0tRY3iXKXcYRaLZrErw5KfCxr6g0JRuhe4BBhqXTA5Q2I3Q==}
+ engines: {node: '>=18.0.0'}
+
+ '@web/dev-server@0.4.6':
+ resolution: {integrity: sha512-jj/1bcElAy5EZet8m2CcUdzxT+CRvUjIXGh8Lt7vxtthkN9PzY9wlhWx/9WOs5iwlnG1oj0VGo6f/zvbPO0s9w==}
+ engines: {node: '>=18.0.0'}
+ hasBin: true
+
+ '@web/parse5-utils@2.1.0':
+ resolution: {integrity: sha512-GzfK5disEJ6wEjoPwx8AVNwUe9gYIiwc+x//QYxYDAFKUp4Xb1OJAGLc2l2gVrSQmtPGLKrTRcW90Hv4pEq1qA==}
+ engines: {node: '>=18.0.0'}
+
'@withtyped/client@0.8.7':
resolution: {integrity: sha512-qK+Tsczvko8mBRACtHGYj0CdMZFaBmosMGUahTAr544Jb183INPZPn/NpUFtTEpl5g3e4lUjMc5jPH0V78D0+g==}
@@ -7036,6 +7221,14 @@ packages:
aria-query@5.3.0:
resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
+ array-back@3.1.0:
+ resolution: {integrity: sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==}
+ engines: {node: '>=6'}
+
+ array-back@6.2.2:
+ resolution: {integrity: sha512-gUAZ7HPyb4SJczXAMUXMGAvI976JoK3qEx9v1FTmeYuJj0IBiaKttG1ydtGKdkfqWkIkouke7nG8ufGy77+Cvw==}
+ engines: {node: '>=12.17'}
+
array-buffer-byte-length@1.0.1:
resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==}
engines: {node: '>= 0.4'}
@@ -7129,6 +7322,9 @@ packages:
async-retry@1.3.3:
resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==}
+ async@2.6.4:
+ resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==}
+
asynckit@0.4.0:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
@@ -7359,6 +7555,10 @@ packages:
resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==}
engines: {node: '>=12'}
+ chalk-template@0.4.0:
+ resolution: {integrity: sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg==}
+ engines: {node: '>=12'}
+
chalk@2.4.2:
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
engines: {node: '>=4'}
@@ -7534,6 +7734,14 @@ packages:
comma-separated-tokens@2.0.2:
resolution: {integrity: sha512-G5yTt3KQN4Yn7Yk4ed73hlZ1evrFKXeUW3086p3PRFNp7m2vIjI6Pg+Kgb+oyzhd9F2qdcoj67+y3SdxL5XWsg==}
+ command-line-args@5.2.1:
+ resolution: {integrity: sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==}
+ engines: {node: '>=4.0.0'}
+
+ command-line-usage@7.0.2:
+ resolution: {integrity: sha512-MwNFB8nxi3IVnzir+nkSIbDTU4H6ne26zqicO2eTt1wPrvdOAphPhnYqWOjxXKWYLNYDu4Z/r2ESEziEqKuOVg==}
+ engines: {node: '>=12.20.0'}
+
commander@11.1.0:
resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==}
engines: {node: '>=16'}
@@ -7945,6 +8153,9 @@ packages:
dayjs@1.11.6:
resolution: {integrity: sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ==}
+ debounce@1.2.1:
+ resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==}
+
debug@3.2.7:
resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
peerDependencies:
@@ -8033,6 +8244,10 @@ packages:
resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
engines: {node: '>=0.10.0'}
+ default-gateway@6.0.3:
+ resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==}
+ engines: {node: '>= 10'}
+
defaults@1.0.4:
resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
@@ -8044,6 +8259,10 @@ packages:
resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
engines: {node: '>= 0.4'}
+ define-lazy-prop@2.0.0:
+ resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
+ engines: {node: '>=8'}
+
define-properties@1.1.4:
resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==}
engines: {node: '>= 0.4'}
@@ -8293,6 +8512,9 @@ packages:
resolution: {integrity: sha512-scxAJaewsahbqTYrGKJihhViaM6DDZDDoucfvzNbK0pOren1g/daDQ3IAhzn+1G14rBG7w+i5N+qul60++zlKA==}
engines: {node: '>= 0.4'}
+ es-module-lexer@1.5.4:
+ resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==}
+
es-object-atoms@1.0.0:
resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
engines: {node: '>= 0.4'}
@@ -8311,6 +8533,11 @@ packages:
resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
engines: {node: '>= 0.4'}
+ esbuild@0.19.12:
+ resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==}
+ engines: {node: '>=12'}
+ hasBin: true
+
esbuild@0.21.5:
resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
engines: {node: '>=12'}
@@ -8741,6 +8968,10 @@ packages:
resolution: {integrity: sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==}
hasBin: true
+ find-replace@3.0.0:
+ resolution: {integrity: sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==}
+ engines: {node: '>=4.0.0'}
+
find-up@4.1.0:
resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
engines: {node: '>=8'}
@@ -9373,6 +9604,10 @@ packages:
resolution: {integrity: sha512-9hiJxE5gkK/cM2d1mTEnuurGTAoHebbkX0BYl3h7iEg7FYfuNIom+nDfBCSWtvSnoSrWCeBxqqBZu26xdlJlXA==}
engines: {node: '>=12.0.0'}
+ internal-ip@6.2.0:
+ resolution: {integrity: sha512-D8WGsR6yDt8uq7vDMu7mjcR+yRMm3dW8yufyChmszWRjcSHuxLBkR3GdS2HZAjodsaGuCvXeEJpueisXJULghg==}
+ engines: {node: '>=10'}
+
internal-slot@1.0.3:
resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==}
engines: {node: '>= 0.4'}
@@ -9384,12 +9619,20 @@ packages:
internmap@1.0.1:
resolution: {integrity: sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==}
+ ip-regex@4.3.0:
+ resolution: {integrity: sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==}
+ engines: {node: '>=8'}
+
ip@1.1.9:
resolution: {integrity: sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ==}
ip@2.0.1:
resolution: {integrity: sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==}
+ ipaddr.js@1.9.1:
+ resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
+ engines: {node: '>= 0.10'}
+
ipaddr.js@2.1.0:
resolution: {integrity: sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==}
engines: {node: '>= 10'}
@@ -9463,6 +9706,11 @@ packages:
is-decimal@2.0.1:
resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==}
+ is-docker@2.2.1:
+ resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
+ engines: {node: '>=8'}
+ hasBin: true
+
is-extglob@2.1.1:
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
engines: {node: '>=0.10.0'}
@@ -9503,6 +9751,10 @@ packages:
resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==}
engines: {node: '>=12'}
+ is-ip@3.1.0:
+ resolution: {integrity: sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==}
+ engines: {node: '>=8'}
+
is-js-type@2.0.0:
resolution: {integrity: sha512-Aj13l47+uyTjlQNHtXBV8Cji3jb037vxwMWCgopRR8h6xocgBGW3qG8qGlIOEmbXQtkKShKuBM9e8AA1OeQ+xw==}
@@ -9637,12 +9889,20 @@ packages:
resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
engines: {node: '>=0.10.0'}
+ is-wsl@2.2.0:
+ resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
+ engines: {node: '>=8'}
+
isarray@0.0.1:
resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==}
isarray@2.0.5:
resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
+ isbinaryfile@5.0.2:
+ resolution: {integrity: sha512-GvcjojwonMjWbTkfMpnVHVqXW/wKMYDfEpY94/8zy8HFMOqb/VL6oeONq9v87q4ttVlaTLnGXnJD4B5B1OTGIg==}
+ engines: {node: '>= 18.0.0'}
+
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -10041,6 +10301,9 @@ packages:
resolution: {integrity: sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==}
engines: {node: '>= 10'}
+ koa-etag@4.0.0:
+ resolution: {integrity: sha512-1cSdezCkBWlyuB9l6c/IFoe1ANCDdPBxkDkRiaIup40xpUub6U/wwRXoKBZw/O5BifX9OlqAjYnDyzM6+l+TAg==}
+
koa-is-json@1.0.0:
resolution: {integrity: sha512-+97CtHAlWDx0ndt0J8y3P12EWLwTLMXIfMnYDev3wOTwH/RpBGMlfn4bDXlMEg1u73K6XRE9BbUp+5ZAYoRYWw==}
@@ -10065,6 +10328,10 @@ packages:
resolution: {integrity: sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==}
engines: {node: '>= 8'}
+ koa-static@5.0.0:
+ resolution: {integrity: sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==}
+ engines: {node: '>= 7.6.0'}
+
koa@2.13.4:
resolution: {integrity: sha512-43zkIKubNbnrULWlHdN5h1g3SEKXOEzoAlRsHOTFpnlDu8JlAOZSMJBLULusuXRequboiwJcj5vtYXKB3k7+2g==}
engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4}
@@ -10210,6 +10477,9 @@ packages:
lodash-es@4.17.21:
resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+ lodash.assignwith@4.2.0:
+ resolution: {integrity: sha512-ZznplvbvtjK2gMvnQ1BR/zqPFZmS6jbK4p+6Up4xcRYA7yMIwxHCfbTcrYxXKzzqLsQ05eJPVznEW3tuwV7k1g==}
+
lodash.camelcase@4.3.0:
resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
@@ -10334,6 +10604,10 @@ packages:
resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==}
engines: {node: '>=12'}
+ lru-cache@8.0.5:
+ resolution: {integrity: sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA==}
+ engines: {node: '>=16.14'}
+
lz-string@1.5.0:
resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==}
hasBin: true
@@ -10732,6 +11006,10 @@ packages:
resolution: {integrity: sha512-3KYa4m4Vlqx98GPdOHghxSdNtTvcP8E0kkaJ5Dlh+h2DRzF7zpuVVcA8B0QpKd11YJeP9QQ7ASkKzOeu195Wzw==}
engines: {node: '>= 8.0.0'}
+ mkdirp@0.5.6:
+ resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
+ hasBin: true
+
mkdirp@3.0.1:
resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==}
engines: {node: '>=10'}
@@ -10766,6 +11044,9 @@ packages:
mz@2.7.0:
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
+ nanocolors@0.2.13:
+ resolution: {integrity: sha512-0n3mSAQLPpGLV9ORXT5+C/D4mwew7Ebws69Hx4E2sgz2ZA5+32Q80B9tL8PbL7XHnRDiAxH/pnrUJ9a4fkTNTA==}
+
nanoid@3.3.7:
resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
@@ -11000,6 +11281,10 @@ packages:
only@0.0.2:
resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==}
+ open@8.4.2:
+ resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
+ engines: {node: '>=12'}
+
openapi-schema-validator@12.1.3:
resolution: {integrity: sha512-xTHOmxU/VQGUgo7Cm0jhwbklOKobXby+/237EG967+3TQEYJztMgX9Q5UE2taZKwyKPUq0j11dngpGjUuxz1hQ==}
@@ -11056,10 +11341,18 @@ packages:
resolution: {integrity: sha512-Vb3QRvQ0Y5XnF40ZUWW7JfLogicVh/EnA5gBIvKDJoYpeI82+1E3AlB9yOcKFS0AhHrWVnAQO39fbR0G99IVEQ==}
engines: {node: '>=12'}
+ p-event@4.2.0:
+ resolution: {integrity: sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==}
+ engines: {node: '>=8'}
+
p-filter@2.1.0:
resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==}
engines: {node: '>=8'}
+ p-finally@1.0.0:
+ resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==}
+ engines: {node: '>=4'}
+
p-limit@2.3.0:
resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
engines: {node: '>=6'}
@@ -11104,6 +11397,10 @@ packages:
resolution: {integrity: sha512-6NuuXu8Upembd4sNdo4PRbs+M6aHgBTrFE6lkH0YKjVzne3cDW4gkncB98ty/bkMxLxLVNeD5bX9FyWjM7WZ+A==}
engines: {node: '>=16.17'}
+ p-timeout@3.2.0:
+ resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==}
+ engines: {node: '>=8'}
+
p-timeout@6.1.2:
resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==}
engines: {node: '>=14.16'}
@@ -11158,6 +11455,9 @@ packages:
resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==}
engines: {node: '>=0.10.0'}
+ parse5@6.0.1:
+ resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
+
parse5@7.1.1:
resolution: {integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==}
@@ -11329,6 +11629,10 @@ packages:
resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==}
engines: {node: '>=10.13.0'}
+ portfinder@1.0.32:
+ resolution: {integrity: sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==}
+ engines: {node: '>= 0.12.0'}
+
possible-typed-array-names@1.0.0:
resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
engines: {node: '>= 0.4'}
@@ -11568,6 +11872,10 @@ packages:
resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==}
engines: {node: '>=6'}
+ punycode@2.3.1:
+ resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+ engines: {node: '>=6'}
+
puppeteer-core@22.6.5:
resolution: {integrity: sha512-s0/5XkAWe0/dWISiljdrybjwDCHhgN31Nu/wznOZPKeikgcJtZtbvPKBz0t802XWqfSQnQDt3L6xiAE5JLlfuw==}
engines: {node: '>=18'}
@@ -12360,6 +12668,10 @@ packages:
stream-events@1.0.5:
resolution: {integrity: sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==}
+ stream-read-all@3.0.1:
+ resolution: {integrity: sha512-EWZT9XOceBPlVJRrYcykW8jyRSZYbkb/0ZK36uLEmoWVO5gxBOnntNTseNzfREsqxqdfEGQrD8SXQ3QWbBmq8A==}
+ engines: {node: '>=10'}
+
stream-shift@1.0.3:
resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==}
@@ -12575,6 +12887,11 @@ packages:
resolution: {integrity: sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==}
engines: {node: ^14.18.0 || >=16.0.0}
+ table-layout@3.0.2:
+ resolution: {integrity: sha512-rpyNZYRw+/C+dYkcQ3Pr+rLxW4CfHpXjPDnG7lYhdRoUcZTUt+KEsX+94RGp/aVp/MQU35JCITv2T/beY4m+hw==}
+ engines: {node: '>=12.17'}
+ hasBin: true
+
table@6.8.1:
resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==}
engines: {node: '>=10.0.0'}
@@ -12690,6 +13007,10 @@ packages:
resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==}
engines: {node: '>=12'}
+ tr46@5.0.0:
+ resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==}
+ engines: {node: '>=18'}
+
tree-kill@1.2.2:
resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
hasBin: true
@@ -12859,6 +13180,14 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ typical@4.0.0:
+ resolution: {integrity: sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==}
+ engines: {node: '>=8'}
+
+ typical@7.1.1:
+ resolution: {integrity: sha512-T+tKVNs6Wu7IWiAce5BgMd7OZfNYUndHwc5MknN+UHOudi7sGZzuHdCadllRuqJ3fPtgFtIH9+lt9qRv6lmpfA==}
+ engines: {node: '>=12.17'}
+
ua-parser-js@1.0.37:
resolution: {integrity: sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==}
@@ -13101,6 +13430,10 @@ packages:
resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==}
engines: {node: '>=12'}
+ whatwg-url@14.0.0:
+ resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==}
+ engines: {node: '>=18'}
+
whatwg-url@5.0.0:
resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
@@ -13143,6 +13476,10 @@ packages:
engines: {node: '>=8'}
hasBin: true
+ wordwrapjs@5.1.0:
+ resolution: {integrity: sha512-JNjcULU2e4KJwUNv6CHgI46UvDGitb6dGryHajXTDiLgg1/RiGoPSDw4kZfYnwGtEXf2ZMeIewDQgFGzkCB2Sg==}
+ engines: {node: '>=12.17'}
+
wrap-ansi@6.2.0:
resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
engines: {node: '>=8'}
@@ -13170,6 +13507,18 @@ packages:
resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ ws@7.5.10:
+ resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==}
+ engines: {node: '>=8.3.0'}
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: ^5.0.2
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+
ws@8.16.0:
resolution: {integrity: sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==}
engines: {node: '>=10.0.0'}
@@ -13315,6 +13664,11 @@ packages:
snapshots:
+ '@75lb/deep-merge@1.1.1':
+ dependencies:
+ lodash.assignwith: 4.2.0
+ typical: 7.1.1
+
'@aashutoshrathi/word-wrap@1.2.6': {}
'@ampproject/remapping@2.3.0':
@@ -14019,7 +14373,7 @@ snapshots:
'@babel/code-frame@7.24.2':
dependencies:
'@babel/highlight': 7.24.2
- picocolors: 1.0.0
+ picocolors: 1.0.1
'@babel/compat-data@7.24.4': {}
@@ -14123,7 +14477,7 @@ snapshots:
'@babel/helper-validator-identifier': 7.22.20
chalk: 2.4.2
js-tokens: 4.0.0
- picocolors: 1.0.0
+ picocolors: 1.0.1
'@babel/parser@7.24.4':
dependencies:
@@ -14530,72 +14884,141 @@ snapshots:
dependencies:
postcss-selector-parser: 6.0.16
+ '@esbuild/aix-ppc64@0.19.12':
+ optional: true
+
'@esbuild/aix-ppc64@0.21.5':
optional: true
+ '@esbuild/android-arm64@0.19.12':
+ optional: true
+
'@esbuild/android-arm64@0.21.5':
optional: true
+ '@esbuild/android-arm@0.19.12':
+ optional: true
+
'@esbuild/android-arm@0.21.5':
optional: true
+ '@esbuild/android-x64@0.19.12':
+ optional: true
+
'@esbuild/android-x64@0.21.5':
optional: true
+ '@esbuild/darwin-arm64@0.19.12':
+ optional: true
+
'@esbuild/darwin-arm64@0.21.5':
optional: true
+ '@esbuild/darwin-x64@0.19.12':
+ optional: true
+
'@esbuild/darwin-x64@0.21.5':
optional: true
+ '@esbuild/freebsd-arm64@0.19.12':
+ optional: true
+
'@esbuild/freebsd-arm64@0.21.5':
optional: true
+ '@esbuild/freebsd-x64@0.19.12':
+ optional: true
+
'@esbuild/freebsd-x64@0.21.5':
optional: true
+ '@esbuild/linux-arm64@0.19.12':
+ optional: true
+
'@esbuild/linux-arm64@0.21.5':
optional: true
+ '@esbuild/linux-arm@0.19.12':
+ optional: true
+
'@esbuild/linux-arm@0.21.5':
optional: true
+ '@esbuild/linux-ia32@0.19.12':
+ optional: true
+
'@esbuild/linux-ia32@0.21.5':
optional: true
+ '@esbuild/linux-loong64@0.19.12':
+ optional: true
+
'@esbuild/linux-loong64@0.21.5':
optional: true
+ '@esbuild/linux-mips64el@0.19.12':
+ optional: true
+
'@esbuild/linux-mips64el@0.21.5':
optional: true
+ '@esbuild/linux-ppc64@0.19.12':
+ optional: true
+
'@esbuild/linux-ppc64@0.21.5':
optional: true
+ '@esbuild/linux-riscv64@0.19.12':
+ optional: true
+
'@esbuild/linux-riscv64@0.21.5':
optional: true
+ '@esbuild/linux-s390x@0.19.12':
+ optional: true
+
'@esbuild/linux-s390x@0.21.5':
optional: true
+ '@esbuild/linux-x64@0.19.12':
+ optional: true
+
'@esbuild/linux-x64@0.21.5':
optional: true
+ '@esbuild/netbsd-x64@0.19.12':
+ optional: true
+
'@esbuild/netbsd-x64@0.21.5':
optional: true
+ '@esbuild/openbsd-x64@0.19.12':
+ optional: true
+
'@esbuild/openbsd-x64@0.21.5':
optional: true
+ '@esbuild/sunos-x64@0.19.12':
+ optional: true
+
'@esbuild/sunos-x64@0.21.5':
optional: true
+ '@esbuild/win32-arm64@0.19.12':
+ optional: true
+
'@esbuild/win32-arm64@0.21.5':
optional: true
+ '@esbuild/win32-ia32@0.19.12':
+ optional: true
+
'@esbuild/win32-ia32@0.21.5':
optional: true
+ '@esbuild/win32-x64@0.19.12':
+ optional: true
+
'@esbuild/win32-x64@0.21.5':
optional: true
@@ -15081,6 +15504,8 @@ snapshots:
globby: 11.1.0
read-yaml-file: 1.1.0
+ '@mdn/browser-compat-data@4.2.1': {}
+
'@mdx-js/mdx@3.0.1':
dependencies:
'@types/estree': 1.0.5
@@ -16768,6 +17193,8 @@ snapshots:
dependencies:
'@types/color-convert': 2.0.0
+ '@types/command-line-args@5.2.3': {}
+
'@types/connect@3.4.35':
dependencies:
'@types/node': 20.12.7
@@ -16968,6 +17395,8 @@ snapshots:
'@types/parse-json@4.0.0': {}
+ '@types/parse5@6.0.3': {}
+
'@types/pg@8.11.2':
dependencies:
'@types/node': 20.12.7
@@ -17100,6 +17529,10 @@ snapshots:
'@types/unist@3.0.0': {}
+ '@types/ws@7.4.7':
+ dependencies:
+ '@types/node': 20.12.7
+
'@types/yargs-parser@21.0.0': {}
'@types/yargs@16.0.4':
@@ -17288,6 +17721,85 @@ snapshots:
loupe: 3.1.1
pretty-format: 29.7.0
+ '@web/config-loader@0.3.1': {}
+
+ '@web/dev-server-core@0.7.2':
+ dependencies:
+ '@types/koa': 2.15.0
+ '@types/ws': 7.4.7
+ '@web/parse5-utils': 2.1.0
+ chokidar: 3.5.3
+ clone: 2.1.2
+ es-module-lexer: 1.5.4
+ get-stream: 6.0.1
+ is-stream: 2.0.1
+ isbinaryfile: 5.0.2
+ koa: 2.15.3
+ koa-etag: 4.0.0
+ koa-send: 5.0.1
+ koa-static: 5.0.0
+ lru-cache: 8.0.5
+ mime-types: 2.1.35
+ parse5: 6.0.1
+ picomatch: 2.3.1
+ ws: 7.5.10
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
+ '@web/dev-server-esbuild@1.0.2':
+ dependencies:
+ '@mdn/browser-compat-data': 4.2.1
+ '@web/dev-server-core': 0.7.2
+ esbuild: 0.19.12
+ get-tsconfig: 4.7.3
+ parse5: 6.0.1
+ ua-parser-js: 1.0.37
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
+ '@web/dev-server-rollup@0.6.4':
+ dependencies:
+ '@rollup/plugin-node-resolve': 15.2.3(rollup@4.14.3)
+ '@web/dev-server-core': 0.7.2
+ nanocolors: 0.2.13
+ parse5: 6.0.1
+ rollup: 4.14.3
+ whatwg-url: 14.0.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
+ '@web/dev-server@0.4.6':
+ dependencies:
+ '@babel/code-frame': 7.24.2
+ '@types/command-line-args': 5.2.3
+ '@web/config-loader': 0.3.1
+ '@web/dev-server-core': 0.7.2
+ '@web/dev-server-rollup': 0.6.4
+ camelcase: 6.3.0
+ command-line-args: 5.2.1
+ command-line-usage: 7.0.2
+ debounce: 1.2.1
+ deepmerge: 4.3.1
+ internal-ip: 6.2.0
+ nanocolors: 0.2.13
+ open: 8.4.2
+ portfinder: 1.0.32
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
+ '@web/parse5-utils@2.1.0':
+ dependencies:
+ '@types/parse5': 6.0.3
+ parse5: 6.0.1
+
'@withtyped/client@0.8.7(zod@3.23.8)':
dependencies:
'@withtyped/server': 0.13.6(zod@3.23.8)
@@ -17457,6 +17969,10 @@ snapshots:
dependencies:
dequal: 2.0.3
+ array-back@3.1.0: {}
+
+ array-back@6.2.2: {}
+
array-buffer-byte-length@1.0.1:
dependencies:
call-bind: 1.0.7
@@ -17581,6 +18097,10 @@ snapshots:
dependencies:
retry: 0.13.1
+ async@2.6.4:
+ dependencies:
+ lodash: 4.17.21
+
asynckit@0.4.0: {}
attr-accept@2.2.2: {}
@@ -17844,6 +18364,10 @@ snapshots:
loupe: 3.1.1
pathval: 2.0.0
+ chalk-template@0.4.0:
+ dependencies:
+ chalk: 4.1.2
+
chalk@2.4.2:
dependencies:
ansi-styles: 3.2.1
@@ -18004,6 +18528,20 @@ snapshots:
comma-separated-tokens@2.0.2: {}
+ command-line-args@5.2.1:
+ dependencies:
+ array-back: 3.1.0
+ find-replace: 3.0.0
+ lodash.camelcase: 4.3.0
+ typical: 4.0.0
+
+ command-line-usage@7.0.2:
+ dependencies:
+ array-back: 6.2.2
+ chalk-template: 0.4.0
+ table-layout: 3.0.2
+ typical: 7.1.1
+
commander@11.1.0: {}
commander@4.1.1: {}
@@ -18470,6 +19008,8 @@ snapshots:
dayjs@1.11.6: {}
+ debounce@1.2.1: {}
+
debug@3.2.7(supports-color@5.5.0):
dependencies:
ms: 2.1.3
@@ -18523,6 +19063,10 @@ snapshots:
deepmerge@4.3.1: {}
+ default-gateway@6.0.3:
+ dependencies:
+ execa: 5.1.1
+
defaults@1.0.4:
dependencies:
clone: 1.0.4
@@ -18535,6 +19079,8 @@ snapshots:
es-errors: 1.3.0
gopd: 1.0.1
+ define-lazy-prop@2.0.0: {}
+
define-properties@1.1.4:
dependencies:
has-property-descriptors: 1.0.0
@@ -18833,6 +19379,8 @@ snapshots:
iterator.prototype: 1.1.2
safe-array-concat: 1.1.2
+ es-module-lexer@1.5.4: {}
+
es-object-atoms@1.0.0:
dependencies:
es-errors: 1.3.0
@@ -18857,6 +19405,32 @@ snapshots:
is-date-object: 1.0.5
is-symbol: 1.0.4
+ esbuild@0.19.12:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.19.12
+ '@esbuild/android-arm': 0.19.12
+ '@esbuild/android-arm64': 0.19.12
+ '@esbuild/android-x64': 0.19.12
+ '@esbuild/darwin-arm64': 0.19.12
+ '@esbuild/darwin-x64': 0.19.12
+ '@esbuild/freebsd-arm64': 0.19.12
+ '@esbuild/freebsd-x64': 0.19.12
+ '@esbuild/linux-arm': 0.19.12
+ '@esbuild/linux-arm64': 0.19.12
+ '@esbuild/linux-ia32': 0.19.12
+ '@esbuild/linux-loong64': 0.19.12
+ '@esbuild/linux-mips64el': 0.19.12
+ '@esbuild/linux-ppc64': 0.19.12
+ '@esbuild/linux-riscv64': 0.19.12
+ '@esbuild/linux-s390x': 0.19.12
+ '@esbuild/linux-x64': 0.19.12
+ '@esbuild/netbsd-x64': 0.19.12
+ '@esbuild/openbsd-x64': 0.19.12
+ '@esbuild/sunos-x64': 0.19.12
+ '@esbuild/win32-arm64': 0.19.12
+ '@esbuild/win32-ia32': 0.19.12
+ '@esbuild/win32-x64': 0.19.12
+
esbuild@0.21.5:
optionalDependencies:
'@esbuild/aix-ppc64': 0.21.5
@@ -19421,6 +19995,10 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ find-replace@3.0.0:
+ dependencies:
+ array-back: 3.1.0
+
find-up@4.1.0:
dependencies:
locate-path: 5.0.0
@@ -20134,6 +20712,13 @@ snapshots:
through: 2.3.8
wrap-ansi: 8.0.1
+ internal-ip@6.2.0:
+ dependencies:
+ default-gateway: 6.0.3
+ ipaddr.js: 1.9.1
+ is-ip: 3.1.0
+ p-event: 4.2.0
+
internal-slot@1.0.3:
dependencies:
get-intrinsic: 1.2.4
@@ -20148,10 +20733,14 @@ snapshots:
internmap@1.0.1: {}
+ ip-regex@4.3.0: {}
+
ip@1.1.9: {}
ip@2.0.1: {}
+ ipaddr.js@1.9.1: {}
+
ipaddr.js@2.1.0: {}
is-alphabetical@1.0.4: {}
@@ -20224,6 +20813,8 @@ snapshots:
is-decimal@2.0.1: {}
+ is-docker@2.2.1: {}
+
is-extglob@2.1.1: {}
is-finalizationregistry@1.0.2:
@@ -20255,6 +20846,10 @@ snapshots:
is-interactive@2.0.0: {}
+ is-ip@3.1.0:
+ dependencies:
+ ip-regex: 4.3.0
+
is-js-type@2.0.0:
dependencies:
js-types: 1.0.0
@@ -20363,10 +20958,16 @@ snapshots:
is-windows@1.0.2: {}
+ is-wsl@2.2.0:
+ dependencies:
+ is-docker: 2.2.1
+
isarray@0.0.1: {}
isarray@2.0.5: {}
+ isbinaryfile@5.0.2: {}
+
isexe@2.0.0: {}
iso8601-duration@2.1.2: {}
@@ -21139,6 +21740,10 @@ snapshots:
co: 4.6.0
koa-compose: 4.1.0
+ koa-etag@4.0.0:
+ dependencies:
+ etag: 1.8.1
+
koa-is-json@1.0.0: {}
koa-logger@3.2.1:
@@ -21182,6 +21787,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ koa-static@5.0.0:
+ dependencies:
+ debug: 3.2.7(supports-color@5.5.0)
+ koa-send: 5.0.1
+ transitivePeerDependencies:
+ - supports-color
+
koa@2.13.4:
dependencies:
accepts: 1.3.7
@@ -21380,6 +21992,8 @@ snapshots:
lodash-es@4.17.21: {}
+ lodash.assignwith@4.2.0: {}
+
lodash.camelcase@4.3.0: {}
lodash.get@4.4.2: {}
@@ -21484,6 +22098,8 @@ snapshots:
lru-cache@7.18.3: {}
+ lru-cache@8.0.5: {}
+
lz-string@1.5.0: {}
magic-string@0.30.10:
@@ -22234,6 +22850,10 @@ snapshots:
mixme@0.5.4: {}
+ mkdirp@0.5.6:
+ dependencies:
+ minimist: 1.2.8
+
mkdirp@3.0.1: {}
module-details-from-path@1.0.3: {}
@@ -22270,6 +22890,8 @@ snapshots:
object-assign: 4.1.1
thenify-all: 1.6.0
+ nanocolors@0.2.13: {}
+
nanoid@3.3.7: {}
nanoid@4.0.2: {}
@@ -22516,6 +23138,12 @@ snapshots:
only@0.0.2: {}
+ open@8.4.2:
+ dependencies:
+ define-lazy-prop: 2.0.0
+ is-docker: 2.2.1
+ is-wsl: 2.2.0
+
openapi-schema-validator@12.1.3:
dependencies:
ajv: 8.12.0
@@ -22585,10 +23213,16 @@ snapshots:
p-defer@4.0.0: {}
+ p-event@4.2.0:
+ dependencies:
+ p-timeout: 3.2.0
+
p-filter@2.1.0:
dependencies:
p-map: 2.1.0
+ p-finally@1.0.0: {}
+
p-limit@2.3.0:
dependencies:
p-try: 2.2.0
@@ -22631,6 +23265,10 @@ snapshots:
'@types/retry': 0.12.2
retry: 0.13.1
+ p-timeout@3.2.0:
+ dependencies:
+ p-finally: 1.0.0
+
p-timeout@6.1.2: {}
p-try@2.2.0: {}
@@ -22723,6 +23361,8 @@ snapshots:
parse-passwd@1.0.0: {}
+ parse5@6.0.1: {}
+
parse5@7.1.1:
dependencies:
entities: 4.5.0
@@ -22871,6 +23511,14 @@ snapshots:
pngjs@5.0.0: {}
+ portfinder@1.0.32:
+ dependencies:
+ async: 2.6.4
+ debug: 3.2.7(supports-color@5.5.0)
+ mkdirp: 0.5.6
+ transitivePeerDependencies:
+ - supports-color
+
possible-typed-array-names@1.0.0: {}
postcss-load-config@4.0.2(postcss@8.4.39)(ts-node@10.9.2(@swc/core@1.3.52)(@types/node@20.12.7)(typescript@5.3.3)):
@@ -23089,6 +23737,8 @@ snapshots:
punycode@2.3.0: {}
+ punycode@2.3.1: {}
+
puppeteer-core@22.6.5:
dependencies:
'@puppeteer/browsers': 2.2.2
@@ -24021,6 +24671,8 @@ snapshots:
dependencies:
stubs: 3.0.0
+ stream-read-all@3.0.1: {}
+
stream-shift@1.0.3: {}
stream-transform@2.1.3:
@@ -24320,6 +24972,16 @@ snapshots:
'@pkgr/core': 0.1.1
tslib: 2.6.2
+ table-layout@3.0.2:
+ dependencies:
+ '@75lb/deep-merge': 1.1.1
+ array-back: 6.2.2
+ command-line-args: 5.2.1
+ command-line-usage: 7.0.2
+ stream-read-all: 3.0.1
+ typical: 7.1.1
+ wordwrapjs: 5.1.0
+
table@6.8.1:
dependencies:
ajv: 8.12.0
@@ -24445,6 +25107,10 @@ snapshots:
dependencies:
punycode: 2.3.0
+ tr46@5.0.0:
+ dependencies:
+ punycode: 2.3.1
+
tree-kill@1.2.2: {}
trim-lines@3.0.1: {}
@@ -24603,6 +25269,10 @@ snapshots:
typescript@5.3.3: {}
+ typical@4.0.0: {}
+
+ typical@7.1.1: {}
+
ua-parser-js@1.0.37: {}
unbox-primitive@1.0.2:
@@ -24978,6 +25648,11 @@ snapshots:
tr46: 3.0.0
webidl-conversions: 7.0.0
+ whatwg-url@14.0.0:
+ dependencies:
+ tr46: 5.0.0
+ webidl-conversions: 7.0.0
+
whatwg-url@5.0.0:
dependencies:
tr46: 0.0.3
@@ -25047,6 +25722,8 @@ snapshots:
siginfo: 2.0.0
stackback: 0.0.2
+ wordwrapjs@5.1.0: {}
+
wrap-ansi@6.2.0:
dependencies:
ansi-styles: 4.3.0
@@ -25083,6 +25760,8 @@ snapshots:
imurmurhash: 0.1.4
signal-exit: 4.1.0
+ ws@7.5.10: {}
+
ws@8.16.0: {}
xml-crypto@3.0.1: