diff --git a/packages/components/.eslintrc.cjs b/packages/components/.eslintrc.cjs
new file mode 100644
index 0000000..24b40bd
--- /dev/null
+++ b/packages/components/.eslintrc.cjs
@@ -0,0 +1,26 @@
+module.exports = {
+ root: true,
+ env: {
+ node: true,
+ es2022: true,
+ },
+ extends: [
+ 'plugin:vue/vue3-essential',
+ 'eslint:recommended',
+ '@vue/typescript/recommended',
+ '@vue/prettier',
+ '@vue/eslint-config-typescript',
+ ],
+ parserOptions: {
+ ecmaVersion: 2022,
+ },
+ ignorePatterns: ['node_modules'],
+ rules: {
+ 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
+ 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
+ 'no-empty-function': 'off',
+ '@typescript-eslint/no-empty-function': [1],
+ '@typescript-eslint/no-explicit-any': 'off',
+ 'vue/multi-word-component-names': 'off',
+ },
+}
diff --git a/packages/components/index.ts b/packages/components/index.ts
new file mode 100644
index 0000000..7cb367e
--- /dev/null
+++ b/packages/components/index.ts
@@ -0,0 +1,3 @@
+export { default as StreamForm } from './streaming/StreamForm.vue'
+export { default as StreamingACLForm } from './streaming/StreamingACLForm.vue'
+export { default as StreamingAuthForm } from './streaming/StreamingAuthForm.vue'
diff --git a/packages/components/package.json b/packages/components/package.json
new file mode 100644
index 0000000..efdb219
--- /dev/null
+++ b/packages/components/package.json
@@ -0,0 +1,54 @@
+{
+ "name": "@emqx/shared-ui-components",
+ "version": "0.0.1",
+ "homepage": "https://emqx.io",
+ "license": "Apache-2.0",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/emqx/shared-ui"
+ },
+ "publishConfig": {
+ "access": "public"
+ },
+ "type": "module",
+ "types": "./dist/index.d.ts",
+ "files": [
+ "dist",
+ "README.md"
+ ],
+ "main": "./dist/index.umd.cjs",
+ "module": "./dist/index.js",
+ "exports": {
+ ".": {
+ "import": "./dist/index.js",
+ "require": "./dist/index.umd.cjs"
+ }
+ },
+ "scripts": {
+ "dev": "vite",
+ "build": "vue-tsc && vite build && vue-tsc --declaration",
+ "preview": "vite preview",
+ "version:patch": "npm version patch",
+ "version:minor": "npm version minor",
+ "version:major": "npm version major",
+ "release": "npm publish"
+ },
+ "dependencies": {
+ "@emqx/shared-ui-constants": "link:../constants"
+ },
+ "devDependencies": {
+ "@emqx/shared-ui-utils": "link:../utils",
+ "@vitejs/plugin-vue": "^5.0.0",
+ "@vue/eslint-config-prettier": "^9.0.0",
+ "@vue/eslint-config-typescript": "^13.0.0",
+ "element-plus": "^2.3.0",
+ "rollup-plugin-visualizer": "^5.12.0",
+ "vue": "^3.2.0",
+ "vue-tsc": "^2.1.10"
+ },
+ "peerDependencies": {
+ "@emqx/shared-ui-utils": "link:../utils",
+ "element-plus": "^2.3.0",
+ "vue": "^3.2.0"
+ }
+}
diff --git a/packages/components/streaming/StreamForm.vue b/packages/components/streaming/StreamForm.vue
new file mode 100644
index 0000000..70a457b
--- /dev/null
+++ b/packages/components/streaming/StreamForm.vue
@@ -0,0 +1,97 @@
+
+
+
+
+ {{ t('streaming.streamName') }}
+
+
+
+
+
+
+ {{ t('streaming.streamType') }}
+
+
+
+
+
+
+
+
+ {{ t('streaming.mqttTopic') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/components/streaming/StreamingACLForm.vue b/packages/components/streaming/StreamingACLForm.vue
new file mode 100644
index 0000000..e8a2852
--- /dev/null
+++ b/packages/components/streaming/StreamingACLForm.vue
@@ -0,0 +1,146 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.label }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.label }}
+
+
+
+
+
+
+
+
+
diff --git a/packages/components/streaming/StreamingAuthForm.vue b/packages/components/streaming/StreamingAuthForm.vue
new file mode 100644
index 0000000..a401acc
--- /dev/null
+++ b/packages/components/streaming/StreamingAuthForm.vue
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/components/tsconfig.json b/packages/components/tsconfig.json
new file mode 100644
index 0000000..a2c7504
--- /dev/null
+++ b/packages/components/tsconfig.json
@@ -0,0 +1,12 @@
+{
+ "extends": "../../tsconfig.json",
+ "include": ["**/*.ts", "**/*.tsx", "**/*.vue"],
+ "exclude": ["node_modules", "dist", "__test__", "**/*.test.ts", "**/*.spec.ts", "vite.config.ts"],
+ "compilerOptions": {
+ "baseUrl": ".",
+ "declarationDir": "./dist",
+ "allowImportingTsExtensions": false,
+ "emitDeclarationOnly": true,
+ "noEmit": false
+ }
+}
diff --git a/packages/components/vite.config.ts b/packages/components/vite.config.ts
new file mode 100644
index 0000000..a73a21b
--- /dev/null
+++ b/packages/components/vite.config.ts
@@ -0,0 +1,28 @@
+import { resolve } from 'path'
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+import { visualizer } from 'rollup-plugin-visualizer'
+
+export default defineConfig({
+ build: {
+ lib: {
+ entry: resolve(__dirname, 'index.ts'),
+ name: '@emqx/shared-ui-components',
+ fileName: 'index',
+ },
+ rollupOptions: {
+ external: ['vue', 'element-plus', '@emqx/shared-ui-utils'],
+ output: {
+ globals: {
+ vue: 'Vue',
+ 'element-plus': 'ElementPlus',
+ '@emqx/shared-ui-utils': 'SharedUIUtils',
+ },
+ },
+ },
+ },
+ plugins: [vue(), visualizer()],
+ resolve: {
+ extensions: ['.ts', '.vue'],
+ },
+})
diff --git a/packages/constants/constants.ts b/packages/constants/constants.ts
new file mode 100644
index 0000000..030c9fe
--- /dev/null
+++ b/packages/constants/constants.ts
@@ -0,0 +1,2 @@
+export const STREAMING_MATCH_ALL = '*'
+export const STREAMING_CLUSTER_NAME = 'kafka-cluster'
diff --git a/packages/constants/enums.ts b/packages/constants/enums.ts
new file mode 100644
index 0000000..effec0f
--- /dev/null
+++ b/packages/constants/enums.ts
@@ -0,0 +1,42 @@
+export enum StreamType {
+ Default = 'default',
+ Free = 'free',
+}
+
+/**
+ * Authentication Type
+ */
+export enum StreamAuthType {
+ Plain = 'PLAIN',
+ SHA256 = 'SCRAM-SHA-256',
+}
+
+export enum StreamPatternType {
+ Literal = 'LITERAL',
+ Prefixed = 'PREFIXED',
+ /**
+ * just for UX, API doesn't have this value
+ */
+ All = 'ALL',
+}
+
+export enum StreamOperation {
+ All = 'ALL',
+ Read = 'READ',
+ Write = 'WRITE',
+ Describe = 'DESCRIBE',
+ Create = 'CREATE',
+ Delete = 'DELETE',
+ Alter = 'ALTER',
+}
+
+export enum StreamPermission {
+ Allow = 'ALLOW',
+ Deny = 'DENY',
+}
+
+export enum StreamResourceType {
+ Topic = 'TOPIC',
+ Group = 'GROUP',
+ Cluster = 'CLUSTER',
+}
diff --git a/packages/constants/index.ts b/packages/constants/index.ts
new file mode 100644
index 0000000..6921285
--- /dev/null
+++ b/packages/constants/index.ts
@@ -0,0 +1,2 @@
+export * from './constants'
+export * from './enums'
diff --git a/packages/constants/package.json b/packages/constants/package.json
new file mode 100644
index 0000000..0452932
--- /dev/null
+++ b/packages/constants/package.json
@@ -0,0 +1,36 @@
+{
+ "name": "@emqx/shared-ui-constants",
+ "version": "0.0.1",
+ "homepage": "https://emqx.io",
+ "license": "Apache-2.0",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/emqx/shared-ui"
+ },
+ "publishConfig": {
+ "access": "public"
+ },
+ "type": "module",
+ "types": "./dist/index.d.ts",
+ "files": [
+ "dist",
+ "README.md"
+ ],
+ "main": "./dist/index.umd.cjs",
+ "module": "./dist/index.js",
+ "exports": {
+ ".": {
+ "import": "./dist/index.js",
+ "require": "./dist/index.umd.cjs"
+ }
+ },
+ "scripts": {
+ "dev": "vite",
+ "build": "tsc && vite build",
+ "preview": "vite preview",
+ "version:patch": "npm version patch",
+ "version:minor": "npm version minor",
+ "version:major": "npm version major",
+ "release": "npm publish"
+ }
+}
diff --git a/packages/constants/tsconfig.json b/packages/constants/tsconfig.json
new file mode 100644
index 0000000..a50f11f
--- /dev/null
+++ b/packages/constants/tsconfig.json
@@ -0,0 +1,5 @@
+{
+ "extends": "../../tsconfig.json",
+ "include": ["./*.ts"],
+ "exclude": ["node_modules", "dist", "__test__", "**/*.test.ts", "**/*.spec.ts"]
+}
diff --git a/packages/constants/vite.config.ts b/packages/constants/vite.config.ts
new file mode 100644
index 0000000..dae952a
--- /dev/null
+++ b/packages/constants/vite.config.ts
@@ -0,0 +1,14 @@
+import { resolve } from 'path'
+import { defineConfig } from 'vite'
+import dts from 'vite-plugin-dts'
+
+export default defineConfig({
+ build: {
+ lib: {
+ entry: resolve(__dirname, 'index.ts'),
+ name: '@emqx/shared-ui-constants',
+ fileName: 'index',
+ },
+ },
+ plugins: [dts()],
+})
diff --git a/packages/i18n/lib/enCommon.ts b/packages/i18n/lib/enCommon.ts
new file mode 100644
index 0000000..f895f68
--- /dev/null
+++ b/packages/i18n/lib/enCommon.ts
@@ -0,0 +1,6 @@
+export const enCommon = {
+ access: 'Permission',
+ topic: 'Topic',
+ username: 'Username',
+ password: 'Password',
+}
diff --git a/packages/i18n/lib/enStreaming.ts b/packages/i18n/lib/enStreaming.ts
new file mode 100644
index 0000000..6eaa87e
--- /dev/null
+++ b/packages/i18n/lib/enStreaming.ts
@@ -0,0 +1,79 @@
+export const enStreaming = {
+ title: 'Streaming (beta)',
+ streams: 'Streams',
+ streamName: 'Stream Name',
+ partitionNum: 'Number of Partitions',
+ mqttTopic: 'MQTT Topic Filter',
+ mqttTopicTip:
+ 'MQTT messages matching this topic filter are saved to the corresponding default type Stream. The free type Stream is not associated with an MQTT topic filter.',
+ streamNameTip: 'The Kafka topic for a Kafka client is the same as the Stream name.',
+ retention: 'Retention Period',
+ consumerGroups: 'Consumer Groups',
+ groupID: 'Group ID',
+ streamNum: 'Number of Streams',
+ consumerNum: 'Number of Consumers',
+ protocol: 'Protocol',
+ consumers: 'Consumers',
+ consumerID: 'Consumer ID',
+ partition: 'Partition',
+ startOffset: 'Start Offset',
+ endOffset: 'End Offset',
+ partitions: 'Partitions',
+ newStream: 'New Stream',
+ streamNameFormatTip:
+ 'Start with a letter or number and can include letters, numbers, _, . and -, up to 64 characters',
+ maxStreamsTip: 'Up to {num} streams can be created',
+ summary:
+ 'EMQX Streaming is an innovative feature of EMQX Platform that allows users to persistently store MQTT messages as data streams and consume them directly using Kafka clients.',
+ enableStreaming: 'Enable Streaming (beta)',
+ usingStreaming: 'With EMQX Streaming, you can:',
+ streamingBenefits: [
+ 'Reliably store large amounts of MQTT message data',
+ 'Directly use Kafka clients for historical data replay and real-time subscription',
+ 'Seamlessly integrate with existing backend applications and big data systems',
+ 'Directly interface with stream processors like Flink for data processing',
+ ],
+ betaTip: 'This feature is in beta.',
+ needVPCTip: 'Streaming requires intranet access, please create a {vpc} first.',
+ mqttTopicFormatTip: `Can contain letters, numbers, special characters (_, -, /, +, $, %, {'@'}, &, :, {'{'}{'}'} and .) and mid-string spaces (no leading/trailing spaces), up to 128 characters`,
+ streamType: 'Stream Type',
+ streamTypeLabel: {
+ default: 'Default',
+ free: 'Free',
+ },
+ streamTypeTip:
+ 'The default type Stream is associated with an MQTT topic filter, and MQTT messages matching the topic filter are saved to the Stream. The free type Stream is not associated with an MQTT topic filter.',
+ authType: 'Authentication Mechanism',
+ host: 'IP Address',
+ aclResourceType: 'Resource Type',
+ aclResourceName: 'Resource Selector',
+ aclOperation: 'Operation',
+ prefixed: 'Prefix',
+ consumerGroupType: 'Consumer Group',
+ clusterType: 'Cluster',
+ literal: 'Literal',
+ matchAll: 'All',
+ allow: 'Allow',
+ deny: 'Deny',
+ aclOperationLabelDic: {
+ ALL: 'All',
+ READ: 'Read',
+ WRITE: 'Write',
+ DESCRIBE: 'Describe',
+ CREATE: 'Create',
+ DELETE: 'Delete',
+ ALTER: 'Alter',
+ },
+ usernameRule: `Can contain letters, numbers and some special characters (_, -, /, +, #, $, %, {'@'}, & and .), up to 128 characters`,
+ aclDescription: `It refers to the permission control of the resources that Kafka clients can manipulate, including topics, consumer groups and clusters.
+ The default mode is blacklist, meaning that entries added to the list are filtered by the rule, while those not added are allowed by default.`,
+ networkType: 'Network Type',
+ securityProtocol: 'Security Protocol',
+ metricTitleDic: {
+ stream_count: 'Streams',
+ partition_count: 'Partitions',
+ group_count: 'Consumer Groups',
+ total_messages_in_rate: 'Messages In',
+ total_messages_out_rate: 'Messages Out',
+ },
+}
diff --git a/packages/i18n/lib/index.ts b/packages/i18n/lib/index.ts
index e468a32..daa0380 100644
--- a/packages/i18n/lib/index.ts
+++ b/packages/i18n/lib/index.ts
@@ -8,3 +8,9 @@ export * from './enSymbolLabel'
export * from './zhSymbolLabel'
export * from './zhIntegrationDesc'
export * from './enIntegrationDesc'
+export * from './enStreaming'
+export * from './zhStreaming'
+export * from './jaStreaming'
+export * from './enCommon'
+export * from './zhCommon'
+export * from './jaCommon'
diff --git a/packages/i18n/lib/jaCommon.ts b/packages/i18n/lib/jaCommon.ts
new file mode 100644
index 0000000..e8c6050
--- /dev/null
+++ b/packages/i18n/lib/jaCommon.ts
@@ -0,0 +1,6 @@
+export const jaCommon = {
+ access: '許可/拒否',
+ topic: 'トピック',
+ username: 'ユーザー名',
+ password: 'パスワード',
+}
diff --git a/packages/i18n/lib/jaStreaming.ts b/packages/i18n/lib/jaStreaming.ts
new file mode 100644
index 0000000..a51f1e8
--- /dev/null
+++ b/packages/i18n/lib/jaStreaming.ts
@@ -0,0 +1,79 @@
+export const jaStreaming = {
+ title: 'ストリーミング(ベータ)',
+ streams: 'ストリーム',
+ streamName: 'ストリーム名',
+ partitionNum: 'パーティション数',
+ mqttTopic: 'MQTT トピックフィルタ',
+ mqttTopicTip:
+ 'このトピックフィルターに一致する MQTT メッセージは、対応する「Default」タイプのストリームに保存されます。「Free」タイプのストリームは MQTT トピックフィルターと関連付けられていません。',
+ streamNameTip: 'Kafka クライアントで使用する Kafka トピックは、ストリーム名と同じです。',
+ retention: '保持期間',
+ consumerGroups: 'コンシューマーグループ',
+ groupID: 'グループ ID',
+ streamNum: 'ストリーム数',
+ consumerNum: 'コンシューマー数',
+ protocol: 'プロトコル',
+ consumers: 'コンシューマー',
+ consumerID: 'コンシューマー ID',
+ partition: 'パーティション',
+ startOffset: '開始オフセット',
+ endOffset: '終了オフセット',
+ partitions: 'パーティション',
+ newStream: '新規ストリーム',
+ streamNameFormatTip: '文字または数字で始まり、文字、数字、「_」、「.」、「-」を含む最大 64 文字',
+ maxStreamsTip: '最大 {num} 個のストリームを作成できます',
+ summary:
+ '「EMQX Streaming」は、EMQX プラットフォームの革新的な機能で、MQTT メッセージをデータストリームとして永続的に保存し、Kafka クライアントから直接コンシュームできます。',
+ enableStreaming: 'ストリーミングを有効にする(ベータ)',
+ usingStreaming: '「EMQX Streaming」を使用すると、以下のことが可能です:',
+ streamingBenefits: [
+ '大量の MQTT メッセージデータを確実に保存',
+ 'Kafka クライアントを直接使用して履歴データの再生とリアルタイムサブスクリプション',
+ '既存のバックエンドアプリケーションやビッグデータシステムとのシームレスな統合',
+ 'Flink などのストリームプロセッサとの直接インターフェース',
+ ],
+ betaTip: 'この機能はベータ版です。',
+ needVPCTip:
+ 'ストリーミングを利用するには内部ネットワークへのアクセスが必要です。まず{vpc}を作成してください。',
+ mqttTopicFormatTip: `アルファベット、数字、「_」、「-」、「/」、「+」、「$」、「%」、「{'@'}」、「&」、「:」、「{'{'}{'}'}」、中間の空白、および「.」のみ使え、最長 128 文字です`,
+ streamType: 'ストリームタイプ',
+ streamTypeLabel: {
+ default: 'Default',
+ free: 'Free',
+ },
+ streamTypeTip:
+ '「Default」タイプのストリームは MQTT トピックフィルターと関連付けられており、そのフィルターに一致する MQTT メッセージがストリームに保存されます。Kafka クライアントからの「Free」タイプのストリームのは MQTT トピックフィルターと関連付けられていません。',
+ authType: '認証方式',
+ host: 'IP アドレス',
+ aclResourceType: 'リソースタイプ',
+ aclResourceName: 'リソース値',
+ aclOperation: '操作',
+ prefixed: 'プレフィックス',
+ consumerGroupType: 'コンシューマーグループ',
+ clusterType: 'クラスタ',
+ literal: 'リテラル',
+ matchAll: 'すべて',
+ allow: '許可',
+ deny: '拒否',
+ aclOperationLabelDic: {
+ ALL: 'すべて',
+ READ: '読み取り',
+ WRITE: '書き込み',
+ DESCRIBE: '説明',
+ CREATE: '作成',
+ DELETE: '削除',
+ ALTER: '変更する',
+ },
+ usernameRule: `アルファベット、数字、「_」、「-」、「/」、「+」、「#」、「$」、「%」、「{'@'}」、「&」および「.」のみ使え、最長 128 文字です`,
+ aclDescription: `Kafka クライアントが操作できるリソース(トピック、コンシューマーグループ、クラスタなど)の権限制御を指します。デフォルトのモードはブラックリストであり、リストに追加されたエントリはルールによってフィルタリングされ、追加されていないものはデフォルトで許可されます。`,
+ // TODO: ja
+ networkType: 'Network Type',
+ securityProtocol: 'Security Protocol',
+ metricTitleDic: {
+ stream_count: 'ストリーム数',
+ partition_count: 'パーティション数',
+ group_count: 'コンシューマーグループ数',
+ total_messages_in_rate: 'Messages In',
+ total_messages_out_rate: 'Messages Out',
+ },
+}
diff --git a/packages/i18n/lib/zhCommon.ts b/packages/i18n/lib/zhCommon.ts
new file mode 100644
index 0000000..c157eca
--- /dev/null
+++ b/packages/i18n/lib/zhCommon.ts
@@ -0,0 +1,6 @@
+export const zhCommon = {
+ access: '是否允许',
+ topic: '主题',
+ username: '用户名',
+ password: '密码',
+}
diff --git a/packages/i18n/lib/zhStreaming.ts b/packages/i18n/lib/zhStreaming.ts
new file mode 100644
index 0000000..1f524a7
--- /dev/null
+++ b/packages/i18n/lib/zhStreaming.ts
@@ -0,0 +1,79 @@
+export const zhStreaming = {
+ title: 'Streaming (beta)',
+ streams: 'Streams',
+ streamName: 'Stream 名称',
+ partitionNum: '分区数量',
+ mqttTopic: 'MQTT 主题过滤器',
+ mqttTopicTip:
+ '匹配主题过滤器的 MQTT 消息会被保存到对应的 Default 类型的 Stream 中。Free 类型的 Stream 不与 MQTT 主题过滤器关联。',
+ streamNameTip: 'Kafka 客户端看到的 Kafka Topic 的名称和 Stream 名称相同。',
+ retention: '保留天数',
+ consumerGroups: '消费者群组',
+ groupID: '组 ID',
+ streamNum: 'Stream 数量',
+ consumerNum: '消费者数量',
+ protocol: '协议',
+ consumers: '消费者列表',
+ consumerID: '消费者 ID',
+ partition: '分区',
+ startOffset: '起始偏移量',
+ endOffset: '结束偏移量',
+ partitions: '分区列表',
+ newStream: '新建 Stream',
+ streamNameFormatTip:
+ '以字母或数字开头,可包含字母、数字、下划线(_)、连字符(-)和点号(.),最长 64 个字符',
+ maxStreamsTip: '最多可创建 {num} 个 Stream',
+ summary:
+ 'EMQX Streaming 是 EMQX Platform 的一项创新特性,它允许用户将 MQTT 消息持久化存储为数据流,并直接使用 Kafka 客户端进行消费。',
+ enableStreaming: '开通 Streaming (beta)',
+ usingStreaming: '使用 EMQX Streaming,您可以:',
+ streamingBenefits: [
+ '可靠地存储大量的 MQTT 消息数据',
+ '直接使用 Kafka 客户端进行历史数据回放和实时订阅',
+ '无缝集成现有的后端应用程序和大数据系统',
+ '直接与 Flink 等流处理器对接进行实时数据处理',
+ ],
+ betaTip: '此功能目前处于公测阶段。',
+ needVPCTip: 'Streaming 功能需要内网访问,在开通前请先创建 {vpc}。',
+ mqttTopicFormatTip: `可包含字母、数字、部分特殊字符(_、-、/、+、$、%、{'@'}、&、:、{'{'}{'}'} 和 .)及中间空格(无首尾空格),最长 128 个字符`,
+ streamType: 'Stream 类型',
+ streamTypeLabel: {
+ default: 'Default',
+ free: 'Free',
+ },
+ streamTypeTip:
+ 'Default 类型的 Stream 关联 MQTT 主题过滤器,且匹配主题过滤器的 MQTT 消息会被保存到 Stream 中。Free 类型的 Stream 不关联 MQTT 主题过滤器。',
+ authType: '认证方式',
+ host: 'IP 地址',
+ aclResourceType: '资源类型',
+ aclResourceName: '目标值',
+ aclOperation: '操作类型',
+ prefixed: '前缀匹配',
+ consumerGroupType: '消费者组',
+ clusterType: '集群',
+ literal: '精确匹配',
+ matchAll: '匹配所有',
+ allow: '允许',
+ deny: '不允许',
+ aclOperationLabelDic: {
+ ALL: '全部操作',
+ READ: '读',
+ WRITE: '写',
+ DESCRIBE: '查看详情',
+ CREATE: '创建',
+ DELETE: '删除',
+ ALTER: '更改',
+ },
+ usernameRule: `可包含字母、数字和部分特殊字符(_、-、/、+、#、$、%、{'@'}、& 和 .),最长 128 个字符`,
+ aclDescription:
+ '是指对 Kafka 客户端所能操作的资源,包括主题、消费者组和集群等的权限控制。采用黑名单模式,即对添加的条目进行特殊判断,没有添加则默认通过。',
+ networkType: '网络类型',
+ securityProtocol: '安全协议',
+ metricTitleDic: {
+ stream_count: 'Stream 数',
+ partition_count: '分区数',
+ group_count: '消费者群组数',
+ total_messages_in_rate: '消息流入速率',
+ total_messages_out_rate: '消息流出速率',
+ },
+}
diff --git a/packages/utils/lib/index.ts b/packages/utils/lib/index.ts
index 6910006..d3a1d53 100644
--- a/packages/utils/lib/index.ts
+++ b/packages/utils/lib/index.ts
@@ -3,3 +3,5 @@ export * from './jsonUtils'
export * from './format'
export * from './download'
export * from './useBatchSettings'
+export * from './useLocale'
+export * from './useStreamingAuth'
diff --git a/packages/utils/lib/useLocale.ts b/packages/utils/lib/useLocale.ts
new file mode 100644
index 0000000..ad34de6
--- /dev/null
+++ b/packages/utils/lib/useLocale.ts
@@ -0,0 +1,35 @@
+import {
+ jaStreaming,
+ enStreaming,
+ zhStreaming,
+ enCommon,
+ zhCommon,
+ jaCommon,
+} from '@emqx/shared-ui-i18n'
+import { createI18n } from 'vue-i18n'
+import type { ComposerTranslation } from 'vue-i18n'
+
+export const useLocale = (locale: string): { t: ComposerTranslation } => {
+ const { t } = createI18n({
+ mode: 'composition',
+ locale,
+ messages: {
+ en: {
+ streaming: enStreaming,
+ common: enCommon,
+ },
+ zh: {
+ streaming: zhStreaming,
+ common: zhCommon,
+ },
+ ja: {
+ streaming: jaStreaming,
+ common: jaCommon,
+ },
+ },
+ }).global
+
+ return {
+ t,
+ }
+}
diff --git a/packages/utils/lib/useStreamingAuth.ts b/packages/utils/lib/useStreamingAuth.ts
new file mode 100644
index 0000000..aa04195
--- /dev/null
+++ b/packages/utils/lib/useStreamingAuth.ts
@@ -0,0 +1,76 @@
+import { StreamOperation, StreamPermission, StreamResourceType } from '@emqx/shared-ui-constants'
+import { useLocale } from './useLocale'
+
+export const useStreamingAuth = (lang: string) => {
+ const { t } = useLocale(lang)
+
+ const permissionOptions = [
+ {
+ label: t('streaming.allow'),
+ value: StreamPermission.Allow,
+ },
+ {
+ label: t('streaming.deny'),
+ value: StreamPermission.Deny,
+ },
+ ]
+ const resourceTypeOptions = [
+ {
+ label: t('common.topic'),
+ value: StreamResourceType.Topic,
+ },
+ {
+ label: t('streaming.consumerGroupType'),
+ value: StreamResourceType.Group,
+ },
+ {
+ label: t('streaming.clusterType'),
+ value: StreamResourceType.Cluster,
+ },
+ ]
+ const operationOptions = Object.values(StreamOperation).map((value) => {
+ return {
+ label: t(`streaming.aclOperationLabelDic.${value}`),
+ value,
+ }
+ })
+
+ const validOperationMap: Record> = {
+ [StreamResourceType.Topic]: [
+ StreamOperation.All,
+ StreamOperation.Read,
+ StreamOperation.Write,
+ StreamOperation.Describe,
+ StreamOperation.Create,
+ StreamOperation.Delete,
+ ],
+ [StreamResourceType.Group]: [
+ StreamOperation.All,
+ StreamOperation.Read,
+ StreamOperation.Describe,
+ StreamOperation.Delete,
+ ],
+ [StreamResourceType.Cluster]: [
+ StreamOperation.All,
+ StreamOperation.Read,
+ StreamOperation.Describe,
+ StreamOperation.Alter,
+ ],
+ }
+ const getValidOperations = (resourceType: StreamResourceType) => {
+ const list = validOperationMap[resourceType] || []
+ return list.map((value) => {
+ return {
+ label: t(`streaming.aclOperationLabelDic.${value}`),
+ value,
+ }
+ })
+ }
+
+ return {
+ permissionOptions,
+ resourceTypeOptions,
+ operationOptions,
+ getValidOperations,
+ }
+}
diff --git a/packages/utils/package.json b/packages/utils/package.json
index b91e3dd..8376bc4 100644
--- a/packages/utils/package.json
+++ b/packages/utils/package.json
@@ -35,6 +35,8 @@
"release": "npm publish"
},
"dependencies": {
+ "@emqx/shared-ui-constants": "link:../constants",
+ "@emqx/shared-ui-i18n": "link:../i18n",
"json-bigint": "^1.0.0",
"papaparse": "^5.4.1",
"vue-i18n": "^9.10.2"
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 8b18ed2..5c9b3a9 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -45,10 +45,49 @@ importers:
specifier: ^0.34.6
version: 0.34.6(jsdom@22.1.0)
+ packages/components:
+ dependencies:
+ '@emqx/shared-ui-constants':
+ specifier: link:../constants
+ version: link:../constants
+ devDependencies:
+ '@emqx/shared-ui-utils':
+ specifier: link:../utils
+ version: link:../utils
+ '@vitejs/plugin-vue':
+ specifier: ^5.0.0
+ version: 5.2.1(vite@4.5.0(@types/node@20.9.0))(vue@3.5.13(typescript@5.2.2))
+ '@vue/eslint-config-prettier':
+ specifier: ^9.0.0
+ version: 9.0.0(eslint@8.57.1)(prettier@3.0.3)
+ '@vue/eslint-config-typescript':
+ specifier: ^13.0.0
+ version: 13.0.0(eslint-plugin-vue@9.31.0(eslint@8.57.1))(eslint@8.57.1)(typescript@5.2.2)
+ element-plus:
+ specifier: ^2.3.0
+ version: 2.8.8(vue@3.5.13(typescript@5.2.2))
+ rollup-plugin-visualizer:
+ specifier: ^5.12.0
+ version: 5.12.0(rollup@3.29.4)
+ vue:
+ specifier: ^3.2.0
+ version: 3.5.13(typescript@5.2.2)
+ vue-tsc:
+ specifier: ^2.1.10
+ version: 2.1.10(typescript@5.2.2)
+
+ packages/constants: {}
+
packages/i18n: {}
packages/utils:
dependencies:
+ '@emqx/shared-ui-constants':
+ specifier: link:../constants
+ version: link:../constants
+ '@emqx/shared-ui-i18n':
+ specifier: link:../i18n
+ version: link:../i18n
json-bigint:
specifier: ^1.0.0
version: 1.0.0
@@ -57,7 +96,7 @@ importers:
version: 5.4.1
vue-i18n:
specifier: ^9.10.2
- version: 9.10.2(vue@3.4.21(typescript@5.2.2))
+ version: 9.10.2(vue@3.5.13(typescript@5.2.2))
devDependencies:
'@types/json-bigint':
specifier: ^1.0.4
@@ -126,10 +165,18 @@ packages:
resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==}
engines: {node: '>=6.9.0'}
+ '@babel/helper-string-parser@7.25.9':
+ resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==}
+ engines: {node: '>=6.9.0'}
+
'@babel/helper-validator-identifier@7.22.20':
resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
engines: {node: '>=6.9.0'}
+ '@babel/helper-validator-identifier@7.25.9':
+ resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
+ engines: {node: '>=6.9.0'}
+
'@babel/helper-validator-option@7.22.15':
resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==}
engines: {node: '>=6.9.0'}
@@ -152,6 +199,11 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
+ '@babel/parser@7.26.2':
+ resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
'@babel/runtime@7.23.2':
resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==}
engines: {node: '>=6.9.0'}
@@ -168,6 +220,10 @@ packages:
resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==}
engines: {node: '>=6.9.0'}
+ '@babel/types@7.26.0':
+ resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==}
+ engines: {node: '>=6.9.0'}
+
'@changesets/apply-release-plan@6.1.4':
resolution: {integrity: sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==}
@@ -220,6 +276,15 @@ packages:
'@changesets/write@0.2.3':
resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==}
+ '@ctrl/tinycolor@3.6.1':
+ resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==}
+ engines: {node: '>=10'}
+
+ '@element-plus/icons-vue@2.3.1':
+ resolution: {integrity: sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==}
+ peerDependencies:
+ vue: ^3.2.0
+
'@esbuild/android-arm64@0.18.20':
resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==}
engines: {node: '>=12'}
@@ -352,6 +417,46 @@ packages:
cpu: [x64]
os: [win32]
+ '@eslint-community/eslint-utils@4.4.1':
+ resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==}
+ 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.12.1':
+ resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==}
+ 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}
+
+ '@eslint/js@8.57.1':
+ resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ '@floating-ui/core@1.6.8':
+ resolution: {integrity: sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==}
+
+ '@floating-ui/dom@1.6.12':
+ resolution: {integrity: sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==}
+
+ '@floating-ui/utils@0.2.8':
+ resolution: {integrity: sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==}
+
+ '@humanwhocodes/config-array@0.13.0':
+ resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==}
+ engines: {node: '>=10.10.0'}
+ deprecated: Use @eslint/config-array instead
+
+ '@humanwhocodes/module-importer@1.0.1':
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
+
+ '@humanwhocodes/object-schema@2.0.3':
+ resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
+ deprecated: Use @eslint/object-schema instead
+
'@intlify/core-base@9.10.2':
resolution: {integrity: sha512-HGStVnKobsJL0DoYIyRCGXBH63DMQqEZxDUGrkNI05FuTcruYUtOAxyL3zoAZu/uDGO6mcUvm3VXBaHG2GdZCg==}
engines: {node: '>= 16'}
@@ -387,6 +492,9 @@ packages:
'@jridgewell/sourcemap-codec@1.4.15':
resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
+ '@jridgewell/sourcemap-codec@1.5.0':
+ resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
+
'@jridgewell/trace-mapping@0.3.20':
resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==}
@@ -421,6 +529,10 @@ packages:
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
engines: {node: '>= 8'}
+ '@pkgr/core@0.1.1':
+ resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+
'@rollup/pluginutils@5.0.5':
resolution: {integrity: sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==}
engines: {node: '>=14.0.0'}
@@ -447,6 +559,9 @@ packages:
'@sinclair/typebox@0.27.8':
resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+ '@sxzz/popperjs-es@2.11.7':
+ resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==}
+
'@tootallnate/once@2.0.0':
resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==}
engines: {node: '>= 10'}
@@ -469,6 +584,12 @@ packages:
'@types/json-bigint@1.0.4':
resolution: {integrity: sha512-ydHooXLbOmxBbubnA7Eh+RpBzuaIiQjh8WGJYQB50JFGFrdxW7JzVlyEV7fAXw0T2sqJ1ysTneJbiyNLqZRAag==}
+ '@types/lodash-es@4.17.12':
+ resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
+
+ '@types/lodash@4.17.13':
+ resolution: {integrity: sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg==}
+
'@types/minimist@1.2.5':
resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==}
@@ -487,6 +608,77 @@ packages:
'@types/semver@7.5.5':
resolution: {integrity: sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg==}
+ '@types/web-bluetooth@0.0.16':
+ resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==}
+
+ '@typescript-eslint/eslint-plugin@7.18.0':
+ resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^7.0.0
+ eslint: ^8.56.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/parser@7.18.0':
+ resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ eslint: ^8.56.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/scope-manager@7.18.0':
+ resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+
+ '@typescript-eslint/type-utils@7.18.0':
+ resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ eslint: ^8.56.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/types@7.18.0':
+ resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+
+ '@typescript-eslint/typescript-estree@7.18.0':
+ resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/utils@7.18.0':
+ resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ eslint: ^8.56.0
+
+ '@typescript-eslint/visitor-keys@7.18.0':
+ resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+
+ '@ungap/structured-clone@1.2.0':
+ resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
+
+ '@vitejs/plugin-vue@5.2.1':
+ resolution: {integrity: sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ vite: ^5.0.0 || ^6.0.0
+ vue: ^3.2.25
+
'@vitest/coverage-istanbul@0.34.6':
resolution: {integrity: sha512-5KaBNZPDSk2ybavC3rZ1pWGniw7sJ5usuwVGRUYzJwiBfWvnLpuUer7bjw7qUCRGdKJXrBgb/Dsgif9rkwMX/A==}
peerDependencies:
@@ -510,33 +702,56 @@ packages:
'@volar/language-core@1.10.10':
resolution: {integrity: sha512-nsV1o3AZ5n5jaEAObrS3MWLBWaGwUj/vAsc15FVNIv+DbpizQRISg9wzygsHBr56ELRH8r4K75vkYNMtsSNNWw==}
+ '@volar/language-core@2.4.10':
+ resolution: {integrity: sha512-hG3Z13+nJmGaT+fnQzAkS0hjJRa2FCeqZt6Bd+oGNhUkQ+mTFsDETg5rqUTxyzIh5pSOGY7FHCWUS8G82AzLCA==}
+
'@volar/source-map@1.10.10':
resolution: {integrity: sha512-GVKjLnifV4voJ9F0vhP56p4+F3WGf+gXlRtjFZsv6v3WxBTWU3ZVeaRaEHJmWrcv5LXmoYYpk/SC25BKemPRkg==}
+ '@volar/source-map@2.4.10':
+ resolution: {integrity: sha512-OCV+b5ihV0RF3A7vEvNyHPi4G4kFa6ukPmyVocmqm5QzOd8r5yAtiNvaPEjl8dNvgC/lj4JPryeeHLdXd62rWA==}
+
'@volar/typescript@1.10.10':
resolution: {integrity: sha512-4a2r5bdUub2m+mYVnLu2wt59fuoYWe7nf0uXtGHU8QQ5LDNfzAR0wK7NgDiQ9rcl2WT3fxT2AA9AylAwFtj50A==}
- '@vue/compiler-core@3.3.8':
- resolution: {integrity: sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==}
+ '@volar/typescript@2.4.10':
+ resolution: {integrity: sha512-F8ZtBMhSXyYKuBfGpYwqA5rsONnOwAVvjyE7KPYJ7wgZqo2roASqNWUnianOomJX5u1cxeRooHV59N0PhvEOgw==}
- '@vue/compiler-core@3.4.21':
- resolution: {integrity: sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==}
+ '@vue/compiler-core@3.5.13':
+ resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==}
- '@vue/compiler-dom@3.3.8':
- resolution: {integrity: sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==}
+ '@vue/compiler-dom@3.5.13':
+ resolution: {integrity: sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==}
- '@vue/compiler-dom@3.4.21':
- resolution: {integrity: sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==}
+ '@vue/compiler-sfc@3.5.13':
+ resolution: {integrity: sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==}
- '@vue/compiler-sfc@3.4.21':
- resolution: {integrity: sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==}
+ '@vue/compiler-ssr@3.5.13':
+ resolution: {integrity: sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==}
- '@vue/compiler-ssr@3.4.21':
- resolution: {integrity: sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==}
+ '@vue/compiler-vue2@2.7.16':
+ resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==}
'@vue/devtools-api@6.6.1':
resolution: {integrity: sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA==}
+ '@vue/eslint-config-prettier@9.0.0':
+ resolution: {integrity: sha512-z1ZIAAUS9pKzo/ANEfd2sO+v2IUalz7cM/cTLOZ7vRFOPk5/xuRKQteOu1DErFLAh/lYGXMVZ0IfYKlyInuDVg==}
+ peerDependencies:
+ eslint: '>= 8.0.0'
+ prettier: '>= 3.0.0'
+
+ '@vue/eslint-config-typescript@13.0.0':
+ resolution: {integrity: sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ eslint: ^8.56.0
+ eslint-plugin-vue: ^9.0.0
+ typescript: '>=4.7.4'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@vue/language-core@1.8.22':
resolution: {integrity: sha512-bsMoJzCrXZqGsxawtUea1cLjUT9dZnDsy5TuZ+l1fxRMzUGQUG9+Ypq4w//CqpWmrx7nIAJpw2JVF/t258miRw==}
peerDependencies:
@@ -545,28 +760,48 @@ packages:
typescript:
optional: true
- '@vue/reactivity@3.4.21':
- resolution: {integrity: sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==}
+ '@vue/language-core@2.1.10':
+ resolution: {integrity: sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
- '@vue/runtime-core@3.4.21':
- resolution: {integrity: sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==}
+ '@vue/reactivity@3.5.13':
+ resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==}
- '@vue/runtime-dom@3.4.21':
- resolution: {integrity: sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==}
+ '@vue/runtime-core@3.5.13':
+ resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==}
- '@vue/server-renderer@3.4.21':
- resolution: {integrity: sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==}
+ '@vue/runtime-dom@3.5.13':
+ resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==}
+
+ '@vue/server-renderer@3.5.13':
+ resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==}
peerDependencies:
- vue: 3.4.21
+ vue: 3.5.13
+
+ '@vue/shared@3.5.13':
+ resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==}
- '@vue/shared@3.3.8':
- resolution: {integrity: sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==}
+ '@vueuse/core@9.13.0':
+ resolution: {integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==}
- '@vue/shared@3.4.21':
- resolution: {integrity: sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==}
+ '@vueuse/metadata@9.13.0':
+ resolution: {integrity: sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==}
+
+ '@vueuse/shared@9.13.0':
+ resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==}
abab@2.0.6:
resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==}
+ deprecated: Use your platform's native atob() and btoa() methods instead
+
+ acorn-jsx@5.3.2:
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
acorn-walk@8.3.0:
resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==}
@@ -584,6 +819,9 @@ packages:
ajv@6.12.6:
resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ alien-signals@0.2.2:
+ resolution: {integrity: sha512-cZIRkbERILsBOXTQmMrxc9hgpxglstn69zm+F1ARf4aPAzdAFYd6sBq87ErO0Fj3DV94tglcyHG5kQz9nDC/8A==}
+
ansi-colors@4.1.3:
resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
engines: {node: '>=6'}
@@ -619,6 +857,9 @@ packages:
argparse@1.0.10:
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
+ argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+
array-buffer-byte-length@1.0.0:
resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==}
@@ -641,6 +882,9 @@ packages:
assertion-error@1.1.0:
resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
+ async-validator@4.2.5:
+ resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==}
+
asynckit@0.4.0:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
@@ -658,6 +902,9 @@ packages:
bignumber.js@9.1.2:
resolution: {integrity: sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==}
+ boolbase@1.0.0:
+ resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
+
brace-expansion@1.1.11:
resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
@@ -683,6 +930,10 @@ packages:
call-bind@1.0.5:
resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==}
+ callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
+
camelcase-keys@6.2.2:
resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==}
engines: {node: '>=8'}
@@ -787,6 +1038,11 @@ packages:
resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
engines: {node: '>= 8'}
+ cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
+
cssstyle@3.0.0:
resolution: {integrity: sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==}
engines: {node: '>=14'}
@@ -811,6 +1067,9 @@ packages:
resolution: {integrity: sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==}
engines: {node: '>=14'}
+ dayjs@1.11.13:
+ resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==}
+
de-indent@1.0.2:
resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
@@ -838,6 +1097,9 @@ packages:
resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==}
engines: {node: '>=6'}
+ deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+
defaults@1.0.4:
resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
@@ -845,6 +1107,10 @@ packages:
resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==}
engines: {node: '>= 0.4'}
+ define-lazy-prop@2.0.0:
+ resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
+ engines: {node: '>=8'}
+
define-properties@1.2.1:
resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
engines: {node: '>= 0.4'}
@@ -865,9 +1131,14 @@ packages:
resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
engines: {node: '>=8'}
+ doctrine@3.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'}
+ deprecated: Use your platform's native DOMException instead
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
@@ -875,6 +1146,11 @@ packages:
electron-to-chromium@1.4.578:
resolution: {integrity: sha512-V0ZhSu1BQZKfG0yNEL6Dadzik8E1vAzfpVOapdSiT9F6yapEJ3Bk+4tZ4SMPdWiUchCgnM/ByYtBzp5ntzDMIA==}
+ element-plus@2.8.8:
+ resolution: {integrity: sha512-MLAH1x2PGTnOT7Iwqh9ASgfZhvgqQqrdbxuJH0w2fGjzE4ZjryyLQj24HXoQO7Zon66U3lrYxbdLI57M6OX0qw==}
+ peerDependencies:
+ vue: ^3.2.0
+
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@@ -916,18 +1192,85 @@ packages:
resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
engines: {node: '>=6'}
+ escape-html@1.0.3:
+ resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
+
escape-string-regexp@1.0.5:
resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
engines: {node: '>=0.8.0'}
+ escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
+
+ eslint-config-prettier@9.1.0:
+ resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==}
+ hasBin: true
+ peerDependencies:
+ eslint: '>=7.0.0'
+
+ eslint-plugin-prettier@5.2.1:
+ resolution: {integrity: sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ '@types/eslint': '>=8.0.0'
+ eslint: '>=8.0.0'
+ eslint-config-prettier: '*'
+ prettier: '>=3.0.0'
+ peerDependenciesMeta:
+ '@types/eslint':
+ optional: true
+ eslint-config-prettier:
+ optional: true
+
+ eslint-plugin-vue@9.31.0:
+ resolution: {integrity: sha512-aYMUCgivhz1o4tLkRHj5oq9YgYPM4/EJc0M7TAKRLCUA5OYxRLAhYEVD2nLtTwLyixEFI+/QXSvKU9ESZFgqjQ==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.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}
+
+ 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}
+
+ eslint@8.57.1:
+ resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options.
+ hasBin: true
+
+ espree@9.6.1:
+ 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'}
hasBin: true
+ esquery@1.6.0:
+ resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
+ engines: {node: '>=0.10'}
+
+ esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+
+ estraverse@5.3.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==}
+ esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
+
eventemitter3@5.0.1:
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
@@ -945,6 +1288,9 @@ packages:
fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+ fast-diff@1.3.0:
+ resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
+
fast-glob@3.3.2:
resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
engines: {node: '>=8.6.0'}
@@ -952,9 +1298,16 @@ packages:
fast-json-stable-stringify@2.1.0:
resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+ fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+
fastq@1.15.0:
resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
+ file-entry-cache@6.0.1:
+ 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'}
@@ -970,6 +1323,13 @@ packages:
find-yarn-workspace-root2@1.2.16:
resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==}
+ flat-cache@3.2.0:
+ resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+
+ flatted@3.3.2:
+ resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==}
+
for-each@0.3.3:
resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
@@ -1029,13 +1389,22 @@ packages:
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'}
+
glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+ deprecated: Glob versions prior to v9 are no longer supported
globals@11.12.0:
resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
engines: {node: '>=4'}
+ globals@13.24.0:
+ resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
+ engines: {node: '>=8'}
+
globalthis@1.0.3:
resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==}
engines: {node: '>= 0.4'}
@@ -1053,6 +1422,9 @@ packages:
grapheme-splitter@1.0.4:
resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
+ graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+
hard-rejection@2.1.0:
resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==}
engines: {node: '>=6'}
@@ -1133,16 +1505,29 @@ packages:
resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==}
engines: {node: '>= 4'}
+ ignore@5.3.2:
+ resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
+ engines: {node: '>= 4'}
+
+ import-fresh@3.3.0:
+ resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
+ engines: {node: '>=6'}
+
import-lazy@4.0.0:
resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==}
engines: {node: '>=8'}
+ imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
+
indent-string@4.0.0:
resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
engines: {node: '>=8'}
inflight@1.0.6:
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==}
@@ -1179,6 +1564,11 @@ packages:
resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
engines: {node: '>= 0.4'}
+ 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'}
@@ -1207,6 +1597,10 @@ packages:
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'}
+
is-plain-obj@1.1.0:
resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==}
engines: {node: '>=0.10.0'}
@@ -1248,6 +1642,10 @@ 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@2.0.5:
resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
@@ -1284,6 +1682,10 @@ packages:
resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
hasBin: true
+ js-yaml@4.1.0:
+ resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+ hasBin: true
+
jsdom@22.1.0:
resolution: {integrity: sha512-/9AVW7xNbsBv6GfWho4TTNjEo9fe6Zhf9O7s0Fhhr3u+awPwAJMKwAMXnkk5vBxflqLW9hTHX/0cs+P3gW+cQw==}
engines: {node: '>=16'}
@@ -1301,12 +1703,18 @@ packages:
json-bigint@1.0.0:
resolution: {integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==}
+ json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+
json-parse-even-better-errors@2.3.1:
resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
json-schema-traverse@0.4.1:
resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+ json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+
json5@2.2.3:
resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
engines: {node: '>=6'}
@@ -1318,6 +1726,9 @@ packages:
jsonfile@4.0.0:
resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
+ keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+
kind-of@6.0.3:
resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
engines: {node: '>=0.10.0'}
@@ -1329,6 +1740,10 @@ packages:
kolorist@1.8.0:
resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+ levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
+
lilconfig@2.1.0:
resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
engines: {node: '>=10'}
@@ -1361,12 +1776,25 @@ packages:
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
engines: {node: '>=10'}
+ lodash-es@4.17.21:
+ resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+
+ lodash-unified@1.0.3:
+ resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==}
+ peerDependencies:
+ '@types/lodash-es': '*'
+ lodash: '*'
+ lodash-es: '*'
+
lodash.get@4.4.2:
resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==}
lodash.isequal@4.5.0:
resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==}
+ lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+
lodash.startcase@4.4.0:
resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==}
@@ -1390,14 +1818,13 @@ packages:
resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
engines: {node: '>=10'}
+ magic-string@0.30.14:
+ resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==}
+
magic-string@0.30.5:
resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==}
engines: {node: '>=12'}
- magic-string@0.30.8:
- resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==}
- engines: {node: '>=12'}
-
make-dir@4.0.0:
resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
engines: {node: '>=10'}
@@ -1410,6 +1837,9 @@ packages:
resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==}
engines: {node: '>=8'}
+ memoize-one@6.0.0:
+ resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==}
+
meow@6.1.1:
resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==}
engines: {node: '>=8'}
@@ -1452,6 +1882,10 @@ packages:
resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
engines: {node: '>=16 || 14 >=14.17'}
+ minimatch@9.0.5:
+ resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
+ engines: {node: '>=16 || 14 >=14.17'}
+
minimist-options@4.1.0:
resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==}
engines: {node: '>= 6'}
@@ -1469,21 +1903,33 @@ packages:
muggle-string@0.3.1:
resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==}
+ muggle-string@0.4.1:
+ resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==}
+
nanoid@3.3.7:
resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
+ natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+
node-releases@2.0.13:
resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==}
normalize-package-data@2.5.0:
resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
+ normalize-wheel-es@1.2.0:
+ resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==}
+
npm-run-path@5.1.0:
resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==}
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==}
+
nwsapi@2.2.7:
resolution: {integrity: sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==}
@@ -1509,6 +1955,14 @@ packages:
resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
engines: {node: '>=12'}
+ open@8.4.2:
+ resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
+ engines: {node: '>=12'}
+
+ optionator@0.9.4:
+ resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
+ engines: {node: '>= 0.8.0'}
+
os-tmpdir@1.0.2:
resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
engines: {node: '>=0.10.0'}
@@ -1551,6 +2005,10 @@ packages:
papaparse@5.4.1:
resolution: {integrity: sha512-HipMsgJkZu8br23pW15uvo6sib6wne/4woLZPlFf3rpDyMe9ywEXUsuD7+6K9PRkJlVT51j/sCOYDKGGS3ZJrw==}
+ parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
+
parse-json@5.2.0:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
@@ -1593,6 +2051,9 @@ packages:
picocolors@1.0.0:
resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
+ picocolors@1.1.1:
+ resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
+
picomatch@2.3.1:
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
engines: {node: '>=8.6'}
@@ -1613,18 +2074,26 @@ packages:
pkg-types@1.0.3:
resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==}
- postcss@8.4.31:
- resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
- engines: {node: ^10 || ^12 || >=14}
+ postcss-selector-parser@6.1.2:
+ resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+ engines: {node: '>=4'}
- postcss@8.4.36:
- resolution: {integrity: sha512-/n7eumA6ZjFHAsbX30yhHup/IMkOmlmvtEi7P+6RMYf+bGJSUHc3geH4a0NSZxAz/RJfiS9tooCTs9LAVYUZKw==}
+ postcss@8.4.49:
+ resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==}
engines: {node: ^10 || ^12 || >=14}
preferred-pm@3.1.2:
resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==}
engines: {node: '>=10'}
+ prelude-ls@1.2.1:
+ 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'}
+
prettier@2.8.8:
resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
engines: {node: '>=10.13.0'}
@@ -1695,6 +2164,10 @@ packages:
requires-port@1.0.0:
resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
+ resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+ engines: {node: '>=4'}
+
resolve-from@5.0.0:
resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
engines: {node: '>=8'}
@@ -1717,6 +2190,21 @@ packages:
rfdc@1.3.0:
resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==}
+ rimraf@3.0.2:
+ resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+ deprecated: Rimraf versions prior to v4 are no longer supported
+ hasBin: true
+
+ rollup-plugin-visualizer@5.12.0:
+ resolution: {integrity: sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==}
+ engines: {node: '>=14'}
+ hasBin: true
+ peerDependencies:
+ rollup: 2.x || 3.x || 4.x
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+
rollup@3.29.4:
resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==}
engines: {node: '>=14.18.0', npm: '>=8.0.0'}
@@ -1755,6 +2243,11 @@ packages:
engines: {node: '>=10'}
hasBin: true
+ semver@7.6.3:
+ resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
+ engines: {node: '>=10'}
+ hasBin: true
+
set-blocking@2.0.0:
resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
@@ -1812,14 +2305,18 @@ packages:
resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
engines: {node: '>=0.10.0'}
- source-map-js@1.1.0:
- resolution: {integrity: sha512-9vC2SfsJzlej6MAaMPLu8HiBSHGdRAJ9hVFYN1ibZoNkeanmDmLUcIrj6G9DGL7XMJ54AKg/G75akXl1/izTOw==}
+ source-map-js@1.2.1:
+ resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'}
source-map@0.6.1:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
+ source-map@0.7.4:
+ resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==}
+ engines: {node: '>= 8'}
+
spawndamnit@2.0.0:
resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==}
@@ -1911,6 +2408,10 @@ packages:
symbol-tree@3.2.4:
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
+ synckit@0.9.2:
+ resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+
term-size@2.2.1:
resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
engines: {node: '>=8'}
@@ -1919,6 +2420,9 @@ packages:
resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==}
engines: {node: '>=8'}
+ text-table@0.2.0:
+ resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+
tinybench@2.5.1:
resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==}
@@ -1954,6 +2458,15 @@ packages:
resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==}
engines: {node: '>=8'}
+ ts-api-utils@1.4.2:
+ resolution: {integrity: sha512-ZF5gQIQa/UmzfvxbHZI3JXN0/Jt+vnAfAviNRAMc491laiK6YCLpCW9ft8oaCRFOTxCZtUTE6XB0ZQAe3olntw==}
+ engines: {node: '>=16'}
+ peerDependencies:
+ typescript: '>=4.2.0'
+
+ tslib@2.8.1:
+ resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
+
tty-table@4.2.3:
resolution: {integrity: sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==}
engines: {node: '>=8.0.0'}
@@ -1993,6 +2506,10 @@ packages:
resolution: {integrity: sha512-2CEaK4FIuSZiP83iFa9GqMTQhroW2QryckVqUydmg4tx78baftTOS0O+oDAhvo9r9Nit4xUEtC1RAHoqs6ZEtg==}
hasBin: true
+ type-check@0.4.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'}
@@ -2001,6 +2518,10 @@ packages:
resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==}
engines: {node: '>=10'}
+ type-fest@0.20.2:
+ resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
+ engines: {node: '>=10'}
+
type-fest@0.6.0:
resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
engines: {node: '>=8'}
@@ -2067,6 +2588,9 @@ packages:
url-parse@1.5.10:
resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
+ util-deprecate@1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
validate-npm-package-license@3.0.4:
resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
@@ -2148,6 +2672,26 @@ packages:
webdriverio:
optional: true
+ vscode-uri@3.0.8:
+ resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
+
+ vue-demi@0.14.10:
+ resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
+ engines: {node: '>=12'}
+ hasBin: true
+ peerDependencies:
+ '@vue/composition-api': ^1.0.0-rc.1
+ vue: ^3.0.0-0 || ^2.6.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+
+ vue-eslint-parser@9.4.3:
+ resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
vue-i18n@9.10.2:
resolution: {integrity: sha512-ECJ8RIFd+3c1d3m1pctQ6ywG5Yj8Efy1oYoAKQ9neRdkLbuKLVeW4gaY5HPkD/9ssf1pOnUrmIFjx2/gkGxmEw==}
engines: {node: '>= 16'}
@@ -2163,8 +2707,14 @@ packages:
peerDependencies:
typescript: '*'
- vue@3.4.21:
- resolution: {integrity: sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==}
+ vue-tsc@2.1.10:
+ resolution: {integrity: sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA==}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=5.0.0'
+
+ vue@3.5.13:
+ resolution: {integrity: sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==}
peerDependencies:
typescript: '*'
peerDependenciesMeta:
@@ -2222,6 +2772,10 @@ packages:
engines: {node: '>=8'}
hasBin: true
+ word-wrap@1.2.5:
+ resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
+ engines: {node: '>=0.10.0'}
+
wrap-ansi@6.2.0:
resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
engines: {node: '>=8'}
@@ -2388,8 +2942,12 @@ snapshots:
'@babel/helper-string-parser@7.22.5': {}
+ '@babel/helper-string-parser@7.25.9': {}
+
'@babel/helper-validator-identifier@7.22.20': {}
+ '@babel/helper-validator-identifier@7.25.9': {}
+
'@babel/helper-validator-option@7.22.15': {}
'@babel/helpers@7.23.2':
@@ -2414,6 +2972,10 @@ snapshots:
dependencies:
'@babel/types': 7.23.0
+ '@babel/parser@7.26.2':
+ dependencies:
+ '@babel/types': 7.26.0
+
'@babel/runtime@7.23.2':
dependencies:
regenerator-runtime: 0.14.0
@@ -2421,7 +2983,7 @@ snapshots:
'@babel/template@7.22.15':
dependencies:
'@babel/code-frame': 7.22.13
- '@babel/parser': 7.23.0
+ '@babel/parser': 7.24.1
'@babel/types': 7.23.0
'@babel/traverse@7.23.2':
@@ -2432,7 +2994,7 @@ snapshots:
'@babel/helper-function-name': 7.23.0
'@babel/helper-hoist-variables': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
- '@babel/parser': 7.23.0
+ '@babel/parser': 7.24.1
'@babel/types': 7.23.0
debug: 4.3.4
globals: 11.12.0
@@ -2445,6 +3007,11 @@ snapshots:
'@babel/helper-validator-identifier': 7.22.20
to-fast-properties: 2.0.0
+ '@babel/types@7.26.0':
+ dependencies:
+ '@babel/helper-string-parser': 7.25.9
+ '@babel/helper-validator-identifier': 7.25.9
+
'@changesets/apply-release-plan@6.1.4':
dependencies:
'@babel/runtime': 7.23.2
@@ -2594,6 +3161,12 @@ snapshots:
human-id: 1.0.2
prettier: 2.8.8
+ '@ctrl/tinycolor@3.6.1': {}
+
+ '@element-plus/icons-vue@2.3.1(vue@3.5.13(typescript@5.2.2))':
+ dependencies:
+ vue: 3.5.13(typescript@5.2.2)
+
'@esbuild/android-arm64@0.18.20':
optional: true
@@ -2660,6 +3233,52 @@ snapshots:
'@esbuild/win32-x64@0.18.20':
optional: true
+ '@eslint-community/eslint-utils@4.4.1(eslint@8.57.1)':
+ dependencies:
+ eslint: 8.57.1
+ eslint-visitor-keys: 3.4.3
+
+ '@eslint-community/regexpp@4.12.1': {}
+
+ '@eslint/eslintrc@2.1.4':
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.3.4
+ espree: 9.6.1
+ globals: 13.24.0
+ ignore: 5.3.2
+ import-fresh: 3.3.0
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/js@8.57.1': {}
+
+ '@floating-ui/core@1.6.8':
+ dependencies:
+ '@floating-ui/utils': 0.2.8
+
+ '@floating-ui/dom@1.6.12':
+ dependencies:
+ '@floating-ui/core': 1.6.8
+ '@floating-ui/utils': 0.2.8
+
+ '@floating-ui/utils@0.2.8': {}
+
+ '@humanwhocodes/config-array@0.13.0':
+ dependencies:
+ '@humanwhocodes/object-schema': 2.0.3
+ debug: 4.3.4
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@humanwhocodes/module-importer@1.0.1': {}
+
+ '@humanwhocodes/object-schema@2.0.3': {}
+
'@intlify/core-base@9.10.2':
dependencies:
'@intlify/message-compiler': 9.10.2
@@ -2690,6 +3309,8 @@ snapshots:
'@jridgewell/sourcemap-codec@1.4.15': {}
+ '@jridgewell/sourcemap-codec@1.5.0': {}
+
'@jridgewell/trace-mapping@0.3.20':
dependencies:
'@jridgewell/resolve-uri': 3.1.1
@@ -2757,6 +3378,8 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.15.0
+ '@pkgr/core@0.1.1': {}
+
'@rollup/pluginutils@5.0.5(rollup@3.29.4)':
dependencies:
'@types/estree': 1.0.5
@@ -2791,6 +3414,8 @@ snapshots:
'@sinclair/typebox@0.27.8': {}
+ '@sxzz/popperjs-es@2.11.7': {}
+
'@tootallnate/once@2.0.0': {}
'@types/argparse@1.0.38': {}
@@ -2809,6 +3434,12 @@ snapshots:
'@types/json-bigint@1.0.4': {}
+ '@types/lodash-es@4.17.12':
+ dependencies:
+ '@types/lodash': 4.17.13
+
+ '@types/lodash@4.17.13': {}
+
'@types/minimist@1.2.5': {}
'@types/node@12.20.55': {}
@@ -2825,6 +3456,96 @@ snapshots:
'@types/semver@7.5.5': {}
+ '@types/web-bluetooth@0.0.16': {}
+
+ '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.2.2))(eslint@8.57.1)(typescript@5.2.2)':
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.2.2)
+ '@typescript-eslint/scope-manager': 7.18.0
+ '@typescript-eslint/type-utils': 7.18.0(eslint@8.57.1)(typescript@5.2.2)
+ '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.2.2)
+ '@typescript-eslint/visitor-keys': 7.18.0
+ eslint: 8.57.1
+ graphemer: 1.4.0
+ ignore: 5.3.2
+ natural-compare: 1.4.0
+ ts-api-utils: 1.4.2(typescript@5.2.2)
+ optionalDependencies:
+ typescript: 5.2.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.2.2)':
+ dependencies:
+ '@typescript-eslint/scope-manager': 7.18.0
+ '@typescript-eslint/types': 7.18.0
+ '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.2.2)
+ '@typescript-eslint/visitor-keys': 7.18.0
+ debug: 4.3.4
+ eslint: 8.57.1
+ optionalDependencies:
+ typescript: 5.2.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/scope-manager@7.18.0':
+ dependencies:
+ '@typescript-eslint/types': 7.18.0
+ '@typescript-eslint/visitor-keys': 7.18.0
+
+ '@typescript-eslint/type-utils@7.18.0(eslint@8.57.1)(typescript@5.2.2)':
+ dependencies:
+ '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.2.2)
+ '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.2.2)
+ debug: 4.3.4
+ eslint: 8.57.1
+ ts-api-utils: 1.4.2(typescript@5.2.2)
+ optionalDependencies:
+ typescript: 5.2.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/types@7.18.0': {}
+
+ '@typescript-eslint/typescript-estree@7.18.0(typescript@5.2.2)':
+ dependencies:
+ '@typescript-eslint/types': 7.18.0
+ '@typescript-eslint/visitor-keys': 7.18.0
+ debug: 4.3.4
+ globby: 11.1.0
+ is-glob: 4.0.3
+ minimatch: 9.0.5
+ semver: 7.6.3
+ ts-api-utils: 1.4.2(typescript@5.2.2)
+ optionalDependencies:
+ typescript: 5.2.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/utils@7.18.0(eslint@8.57.1)(typescript@5.2.2)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1)
+ '@typescript-eslint/scope-manager': 7.18.0
+ '@typescript-eslint/types': 7.18.0
+ '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.2.2)
+ eslint: 8.57.1
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ '@typescript-eslint/visitor-keys@7.18.0':
+ dependencies:
+ '@typescript-eslint/types': 7.18.0
+ eslint-visitor-keys: 3.4.3
+
+ '@ungap/structured-clone@1.2.0': {}
+
+ '@vitejs/plugin-vue@5.2.1(vite@4.5.0(@types/node@20.9.0))(vue@3.5.13(typescript@5.2.2))':
+ dependencies:
+ vite: 4.5.0(@types/node@20.9.0)
+ vue: 3.5.13(typescript@5.2.2)
+
'@vitest/coverage-istanbul@0.34.6(vitest@0.34.6(jsdom@22.1.0))':
dependencies:
istanbul-lib-coverage: 3.2.1
@@ -2870,65 +3591,91 @@ snapshots:
dependencies:
'@volar/source-map': 1.10.10
+ '@volar/language-core@2.4.10':
+ dependencies:
+ '@volar/source-map': 2.4.10
+
'@volar/source-map@1.10.10':
dependencies:
muggle-string: 0.3.1
+ '@volar/source-map@2.4.10': {}
+
'@volar/typescript@1.10.10':
dependencies:
'@volar/language-core': 1.10.10
path-browserify: 1.0.1
- '@vue/compiler-core@3.3.8':
+ '@volar/typescript@2.4.10':
dependencies:
- '@babel/parser': 7.23.0
- '@vue/shared': 3.3.8
- estree-walker: 2.0.2
- source-map-js: 1.0.2
+ '@volar/language-core': 2.4.10
+ path-browserify: 1.0.1
+ vscode-uri: 3.0.8
- '@vue/compiler-core@3.4.21':
+ '@vue/compiler-core@3.5.13':
dependencies:
- '@babel/parser': 7.24.1
- '@vue/shared': 3.4.21
+ '@babel/parser': 7.26.2
+ '@vue/shared': 3.5.13
entities: 4.5.0
estree-walker: 2.0.2
- source-map-js: 1.1.0
+ source-map-js: 1.2.1
- '@vue/compiler-dom@3.3.8':
+ '@vue/compiler-dom@3.5.13':
dependencies:
- '@vue/compiler-core': 3.3.8
- '@vue/shared': 3.3.8
+ '@vue/compiler-core': 3.5.13
+ '@vue/shared': 3.5.13
- '@vue/compiler-dom@3.4.21':
+ '@vue/compiler-sfc@3.5.13':
dependencies:
- '@vue/compiler-core': 3.4.21
- '@vue/shared': 3.4.21
+ '@babel/parser': 7.26.2
+ '@vue/compiler-core': 3.5.13
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-ssr': 3.5.13
+ '@vue/shared': 3.5.13
+ estree-walker: 2.0.2
+ magic-string: 0.30.14
+ postcss: 8.4.49
+ source-map-js: 1.2.1
- '@vue/compiler-sfc@3.4.21':
+ '@vue/compiler-ssr@3.5.13':
dependencies:
- '@babel/parser': 7.24.1
- '@vue/compiler-core': 3.4.21
- '@vue/compiler-dom': 3.4.21
- '@vue/compiler-ssr': 3.4.21
- '@vue/shared': 3.4.21
- estree-walker: 2.0.2
- magic-string: 0.30.8
- postcss: 8.4.36
- source-map-js: 1.1.0
+ '@vue/compiler-dom': 3.5.13
+ '@vue/shared': 3.5.13
- '@vue/compiler-ssr@3.4.21':
+ '@vue/compiler-vue2@2.7.16':
dependencies:
- '@vue/compiler-dom': 3.4.21
- '@vue/shared': 3.4.21
+ de-indent: 1.0.2
+ he: 1.2.0
'@vue/devtools-api@6.6.1': {}
+ '@vue/eslint-config-prettier@9.0.0(eslint@8.57.1)(prettier@3.0.3)':
+ dependencies:
+ eslint: 8.57.1
+ eslint-config-prettier: 9.1.0(eslint@8.57.1)
+ eslint-plugin-prettier: 5.2.1(eslint-config-prettier@9.1.0(eslint@8.57.1))(eslint@8.57.1)(prettier@3.0.3)
+ prettier: 3.0.3
+ transitivePeerDependencies:
+ - '@types/eslint'
+
+ '@vue/eslint-config-typescript@13.0.0(eslint-plugin-vue@9.31.0(eslint@8.57.1))(eslint@8.57.1)(typescript@5.2.2)':
+ dependencies:
+ '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.2.2))(eslint@8.57.1)(typescript@5.2.2)
+ '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.2.2)
+ eslint: 8.57.1
+ eslint-plugin-vue: 9.31.0(eslint@8.57.1)
+ vue-eslint-parser: 9.4.3(eslint@8.57.1)
+ optionalDependencies:
+ typescript: 5.2.2
+ transitivePeerDependencies:
+ - supports-color
+
'@vue/language-core@1.8.22(typescript@5.2.2)':
dependencies:
'@volar/language-core': 1.10.10
'@volar/source-map': 1.10.10
- '@vue/compiler-dom': 3.3.8
- '@vue/shared': 3.3.8
+ '@vue/compiler-dom': 3.5.13
+ '@vue/shared': 3.5.13
computeds: 0.0.1
minimatch: 9.0.3
muggle-string: 0.3.1
@@ -2936,33 +3683,68 @@ snapshots:
optionalDependencies:
typescript: 5.2.2
- '@vue/reactivity@3.4.21':
+ '@vue/language-core@2.1.10(typescript@5.2.2)':
dependencies:
- '@vue/shared': 3.4.21
+ '@volar/language-core': 2.4.10
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-vue2': 2.7.16
+ '@vue/shared': 3.5.13
+ alien-signals: 0.2.2
+ minimatch: 9.0.5
+ muggle-string: 0.4.1
+ path-browserify: 1.0.1
+ optionalDependencies:
+ typescript: 5.2.2
+
+ '@vue/reactivity@3.5.13':
+ dependencies:
+ '@vue/shared': 3.5.13
- '@vue/runtime-core@3.4.21':
+ '@vue/runtime-core@3.5.13':
dependencies:
- '@vue/reactivity': 3.4.21
- '@vue/shared': 3.4.21
+ '@vue/reactivity': 3.5.13
+ '@vue/shared': 3.5.13
- '@vue/runtime-dom@3.4.21':
+ '@vue/runtime-dom@3.5.13':
dependencies:
- '@vue/runtime-core': 3.4.21
- '@vue/shared': 3.4.21
+ '@vue/reactivity': 3.5.13
+ '@vue/runtime-core': 3.5.13
+ '@vue/shared': 3.5.13
csstype: 3.1.3
- '@vue/server-renderer@3.4.21(vue@3.4.21(typescript@5.2.2))':
+ '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.2.2))':
dependencies:
- '@vue/compiler-ssr': 3.4.21
- '@vue/shared': 3.4.21
- vue: 3.4.21(typescript@5.2.2)
+ '@vue/compiler-ssr': 3.5.13
+ '@vue/shared': 3.5.13
+ vue: 3.5.13(typescript@5.2.2)
- '@vue/shared@3.3.8': {}
+ '@vue/shared@3.5.13': {}
- '@vue/shared@3.4.21': {}
+ '@vueuse/core@9.13.0(vue@3.5.13(typescript@5.2.2))':
+ dependencies:
+ '@types/web-bluetooth': 0.0.16
+ '@vueuse/metadata': 9.13.0
+ '@vueuse/shared': 9.13.0(vue@3.5.13(typescript@5.2.2))
+ vue-demi: 0.14.10(vue@3.5.13(typescript@5.2.2))
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+
+ '@vueuse/metadata@9.13.0': {}
+
+ '@vueuse/shared@9.13.0(vue@3.5.13(typescript@5.2.2))':
+ dependencies:
+ vue-demi: 0.14.10(vue@3.5.13(typescript@5.2.2))
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
abab@2.0.6: {}
+ acorn-jsx@5.3.2(acorn@8.11.2):
+ dependencies:
+ acorn: 8.11.2
+
acorn-walk@8.3.0: {}
acorn@8.11.2: {}
@@ -2980,6 +3762,8 @@ snapshots:
json-schema-traverse: 0.4.1
uri-js: 4.4.1
+ alien-signals@0.2.2: {}
+
ansi-colors@4.1.3: {}
ansi-escapes@5.0.0:
@@ -3006,6 +3790,8 @@ snapshots:
dependencies:
sprintf-js: 1.0.3
+ argparse@2.0.1: {}
+
array-buffer-byte-length@1.0.0:
dependencies:
call-bind: 1.0.5
@@ -3034,6 +3820,8 @@ snapshots:
assertion-error@1.1.0: {}
+ async-validator@4.2.5: {}
+
asynckit@0.4.0: {}
available-typed-arrays@1.0.5: {}
@@ -3046,6 +3834,8 @@ snapshots:
bignumber.js@9.1.2: {}
+ boolbase@1.0.0: {}
+
brace-expansion@1.1.11:
dependencies:
balanced-match: 1.0.2
@@ -3078,6 +3868,8 @@ snapshots:
get-intrinsic: 1.2.2
set-function-length: 1.1.1
+ callsites@3.1.0: {}
+
camelcase-keys@6.2.2:
dependencies:
camelcase: 5.3.1
@@ -3185,6 +3977,8 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
+ cssesc@3.0.0: {}
+
cssstyle@3.0.0:
dependencies:
rrweb-cssom: 0.6.0
@@ -3210,6 +4004,8 @@ snapshots:
whatwg-mimetype: 3.0.0
whatwg-url: 12.0.1
+ dayjs@1.11.13: {}
+
de-indent@1.0.2: {}
debug@4.3.4:
@@ -3229,6 +4025,8 @@ snapshots:
dependencies:
type-detect: 4.0.8
+ deep-is@0.1.4: {}
+
defaults@1.0.4:
dependencies:
clone: 1.0.4
@@ -3239,6 +4037,8 @@ snapshots:
gopd: 1.0.1
has-property-descriptors: 1.0.1
+ define-lazy-prop@2.0.0: {}
+
define-properties@1.2.1:
dependencies:
define-data-property: 1.1.1
@@ -3255,6 +4055,10 @@ snapshots:
dependencies:
path-type: 4.0.0
+ doctrine@3.0.0:
+ dependencies:
+ esutils: 2.0.3
+
domexception@4.0.0:
dependencies:
webidl-conversions: 7.0.0
@@ -3263,6 +4067,27 @@ snapshots:
electron-to-chromium@1.4.578: {}
+ element-plus@2.8.8(vue@3.5.13(typescript@5.2.2)):
+ dependencies:
+ '@ctrl/tinycolor': 3.6.1
+ '@element-plus/icons-vue': 2.3.1(vue@3.5.13(typescript@5.2.2))
+ '@floating-ui/dom': 1.6.12
+ '@popperjs/core': '@sxzz/popperjs-es@2.11.7'
+ '@types/lodash': 4.17.13
+ '@types/lodash-es': 4.17.12
+ '@vueuse/core': 9.13.0(vue@3.5.13(typescript@5.2.2))
+ async-validator: 4.2.5
+ dayjs: 1.11.13
+ escape-html: 1.0.3
+ lodash: 4.17.21
+ lodash-es: 4.17.21
+ lodash-unified: 1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.17.21)(lodash@4.17.21)
+ memoize-one: 6.0.0
+ normalize-wheel-es: 1.2.0
+ vue: 3.5.13(typescript@5.2.2)
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
@@ -3363,12 +4188,111 @@ snapshots:
escalade@3.1.1: {}
+ escape-html@1.0.3: {}
+
escape-string-regexp@1.0.5: {}
+ escape-string-regexp@4.0.0: {}
+
+ eslint-config-prettier@9.1.0(eslint@8.57.1):
+ dependencies:
+ eslint: 8.57.1
+
+ eslint-plugin-prettier@5.2.1(eslint-config-prettier@9.1.0(eslint@8.57.1))(eslint@8.57.1)(prettier@3.0.3):
+ dependencies:
+ eslint: 8.57.1
+ prettier: 3.0.3
+ prettier-linter-helpers: 1.0.0
+ synckit: 0.9.2
+ optionalDependencies:
+ eslint-config-prettier: 9.1.0(eslint@8.57.1)
+
+ eslint-plugin-vue@9.31.0(eslint@8.57.1):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1)
+ eslint: 8.57.1
+ globals: 13.24.0
+ natural-compare: 1.4.0
+ nth-check: 2.1.1
+ postcss-selector-parser: 6.1.2
+ semver: 7.6.3
+ vue-eslint-parser: 9.4.3(eslint@8.57.1)
+ xml-name-validator: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-scope@7.2.2:
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
+
+ eslint-visitor-keys@3.4.3: {}
+
+ eslint@8.57.1:
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.1)
+ '@eslint-community/regexpp': 4.12.1
+ '@eslint/eslintrc': 2.1.4
+ '@eslint/js': 8.57.1
+ '@humanwhocodes/config-array': 0.13.0
+ '@humanwhocodes/module-importer': 1.0.1
+ '@nodelib/fs.walk': 1.2.8
+ '@ungap/structured-clone': 1.2.0
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.3
+ debug: 4.3.4
+ doctrine: 3.0.0
+ escape-string-regexp: 4.0.0
+ eslint-scope: 7.2.2
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ esquery: 1.6.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 6.0.1
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ globals: 13.24.0
+ graphemer: 1.4.0
+ ignore: 5.3.2
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ is-path-inside: 3.0.3
+ js-yaml: 4.1.0
+ json-stable-stringify-without-jsonify: 1.0.1
+ levn: 0.4.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.4
+ strip-ansi: 6.0.1
+ text-table: 0.2.0
+ transitivePeerDependencies:
+ - supports-color
+
+ espree@9.6.1:
+ dependencies:
+ acorn: 8.11.2
+ acorn-jsx: 5.3.2(acorn@8.11.2)
+ eslint-visitor-keys: 3.4.3
+
esprima@4.0.1: {}
+ esquery@1.6.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ esrecurse@4.3.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ estraverse@5.3.0: {}
+
estree-walker@2.0.2: {}
+ esutils@2.0.3: {}
+
eventemitter3@5.0.1: {}
execa@8.0.1:
@@ -3393,6 +4317,8 @@ snapshots:
fast-deep-equal@3.1.3: {}
+ fast-diff@1.3.0: {}
+
fast-glob@3.3.2:
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -3403,10 +4329,16 @@ snapshots:
fast-json-stable-stringify@2.1.0: {}
+ fast-levenshtein@2.0.6: {}
+
fastq@1.15.0:
dependencies:
reusify: 1.0.4
+ file-entry-cache@6.0.1:
+ dependencies:
+ flat-cache: 3.2.0
+
fill-range@7.0.1:
dependencies:
to-regex-range: 5.0.1
@@ -3426,6 +4358,14 @@ snapshots:
micromatch: 4.0.5
pkg-dir: 4.2.0
+ flat-cache@3.2.0:
+ dependencies:
+ flatted: 3.3.2
+ keyv: 4.5.4
+ rimraf: 3.0.2
+
+ flatted@3.3.2: {}
+
for-each@0.3.3:
dependencies:
is-callable: 1.2.7
@@ -3488,6 +4428,10 @@ snapshots:
dependencies:
is-glob: 4.0.3
+ glob-parent@6.0.2:
+ dependencies:
+ is-glob: 4.0.3
+
glob@7.2.3:
dependencies:
fs.realpath: 1.0.0
@@ -3499,6 +4443,10 @@ snapshots:
globals@11.12.0: {}
+ globals@13.24.0:
+ dependencies:
+ type-fest: 0.20.2
+
globalthis@1.0.3:
dependencies:
define-properties: 1.2.1
@@ -3520,6 +4468,8 @@ snapshots:
grapheme-splitter@1.0.4: {}
+ graphemer@1.4.0: {}
+
hard-rejection@2.1.0: {}
has-bigints@1.0.2: {}
@@ -3585,8 +4535,17 @@ snapshots:
ignore@5.2.4: {}
+ ignore@5.3.2: {}
+
+ import-fresh@3.3.0:
+ dependencies:
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
+
import-lazy@4.0.0: {}
+ imurmurhash@0.1.4: {}
+
indent-string@4.0.0: {}
inflight@1.0.6:
@@ -3633,6 +4592,8 @@ snapshots:
dependencies:
has-tostringtag: 1.0.0
+ is-docker@2.2.1: {}
+
is-extglob@2.1.1: {}
is-fullwidth-code-point@3.0.0: {}
@@ -3651,6 +4612,8 @@ snapshots:
is-number@7.0.0: {}
+ is-path-inside@3.0.3: {}
+
is-plain-obj@1.1.0: {}
is-potential-custom-element-name@1.0.1: {}
@@ -3688,6 +4651,10 @@ snapshots:
is-windows@1.0.2: {}
+ is-wsl@2.2.0:
+ dependencies:
+ is-docker: 2.2.1
+
isarray@2.0.5: {}
isexe@2.0.0: {}
@@ -3732,6 +4699,10 @@ snapshots:
argparse: 1.0.10
esprima: 4.0.1
+ js-yaml@4.1.0:
+ dependencies:
+ argparse: 2.0.1
+
jsdom@22.1.0:
dependencies:
abab: 2.0.6
@@ -3768,10 +4739,14 @@ snapshots:
dependencies:
bignumber.js: 9.1.2
+ json-buffer@3.0.1: {}
+
json-parse-even-better-errors@2.3.1: {}
json-schema-traverse@0.4.1: {}
+ json-stable-stringify-without-jsonify@1.0.1: {}
+
json5@2.2.3: {}
jsonc-parser@3.2.0: {}
@@ -3780,12 +4755,21 @@ snapshots:
optionalDependencies:
graceful-fs: 4.2.11
+ keyv@4.5.4:
+ dependencies:
+ json-buffer: 3.0.1
+
kind-of@6.0.3: {}
kleur@4.1.5: {}
kolorist@1.8.0: {}
+ levn@0.4.1:
+ dependencies:
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+
lilconfig@2.1.0: {}
lines-and-columns@1.2.4: {}
@@ -3831,10 +4815,20 @@ snapshots:
dependencies:
p-locate: 5.0.0
+ lodash-es@4.17.21: {}
+
+ lodash-unified@1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.17.21)(lodash@4.17.21):
+ dependencies:
+ '@types/lodash-es': 4.17.12
+ lodash: 4.17.21
+ lodash-es: 4.17.21
+
lodash.get@4.4.2: {}
lodash.isequal@4.5.0: {}
+ lodash.merge@4.6.2: {}
+
lodash.startcase@4.4.0: {}
lodash@4.17.21: {}
@@ -3864,11 +4858,11 @@ snapshots:
dependencies:
yallist: 4.0.0
- magic-string@0.30.5:
+ magic-string@0.30.14:
dependencies:
- '@jridgewell/sourcemap-codec': 1.4.15
+ '@jridgewell/sourcemap-codec': 1.5.0
- magic-string@0.30.8:
+ magic-string@0.30.5:
dependencies:
'@jridgewell/sourcemap-codec': 1.4.15
@@ -3880,6 +4874,8 @@ snapshots:
map-obj@4.3.0: {}
+ memoize-one@6.0.0: {}
+
meow@6.1.1:
dependencies:
'@types/minimist': 1.2.5
@@ -3923,6 +4919,10 @@ snapshots:
dependencies:
brace-expansion: 2.0.1
+ minimatch@9.0.5:
+ dependencies:
+ brace-expansion: 2.0.1
+
minimist-options@4.1.0:
dependencies:
arrify: 1.0.1
@@ -3942,8 +4942,12 @@ snapshots:
muggle-string@0.3.1: {}
+ muggle-string@0.4.1: {}
+
nanoid@3.3.7: {}
+ natural-compare@1.4.0: {}
+
node-releases@2.0.13: {}
normalize-package-data@2.5.0:
@@ -3953,10 +4957,16 @@ snapshots:
semver: 5.7.2
validate-npm-package-license: 3.0.4
+ normalize-wheel-es@1.2.0: {}
+
npm-run-path@5.1.0:
dependencies:
path-key: 4.0.0
+ nth-check@2.1.1:
+ dependencies:
+ boolbase: 1.0.0
+
nwsapi@2.2.7: {}
object-inspect@1.13.1: {}
@@ -3982,6 +4992,21 @@ snapshots:
dependencies:
mimic-fn: 4.0.0
+ open@8.4.2:
+ dependencies:
+ define-lazy-prop: 2.0.0
+ is-docker: 2.2.1
+ is-wsl: 2.2.0
+
+ optionator@0.9.4:
+ dependencies:
+ deep-is: 0.1.4
+ fast-levenshtein: 2.0.6
+ levn: 0.4.1
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ word-wrap: 1.2.5
+
os-tmpdir@1.0.2: {}
outdent@0.5.0: {}
@@ -4016,6 +5041,10 @@ snapshots:
papaparse@5.4.1: {}
+ parent-module@1.0.1:
+ dependencies:
+ callsites: 3.1.0
+
parse-json@5.2.0:
dependencies:
'@babel/code-frame': 7.22.13
@@ -4047,6 +5076,8 @@ snapshots:
picocolors@1.0.0: {}
+ picocolors@1.1.1: {}
+
picomatch@2.3.1: {}
pidtree@0.6.0: {}
@@ -4063,17 +5094,16 @@ snapshots:
mlly: 1.4.2
pathe: 1.1.1
- postcss@8.4.31:
+ postcss-selector-parser@6.1.2:
dependencies:
- nanoid: 3.3.7
- picocolors: 1.0.0
- source-map-js: 1.0.2
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
- postcss@8.4.36:
+ postcss@8.4.49:
dependencies:
nanoid: 3.3.7
- picocolors: 1.0.0
- source-map-js: 1.1.0
+ picocolors: 1.1.1
+ source-map-js: 1.2.1
preferred-pm@3.1.2:
dependencies:
@@ -4082,6 +5112,12 @@ snapshots:
path-exists: 4.0.0
which-pm: 2.0.0
+ prelude-ls@1.2.1: {}
+
+ prettier-linter-helpers@1.0.0:
+ dependencies:
+ fast-diff: 1.3.0
+
prettier@2.8.8: {}
prettier@3.0.3: {}
@@ -4145,6 +5181,8 @@ snapshots:
requires-port@1.0.0: {}
+ resolve-from@4.0.0: {}
+
resolve-from@5.0.0: {}
resolve@1.19.0:
@@ -4167,6 +5205,19 @@ snapshots:
rfdc@1.3.0: {}
+ rimraf@3.0.2:
+ dependencies:
+ glob: 7.2.3
+
+ rollup-plugin-visualizer@5.12.0(rollup@3.29.4):
+ dependencies:
+ open: 8.4.2
+ picomatch: 2.3.1
+ source-map: 0.7.4
+ yargs: 17.7.2
+ optionalDependencies:
+ rollup: 3.29.4
+
rollup@3.29.4:
optionalDependencies:
fsevents: 2.3.3
@@ -4204,6 +5255,8 @@ snapshots:
dependencies:
lru-cache: 6.0.0
+ semver@7.6.3: {}
+
set-blocking@2.0.0: {}
set-function-length@1.1.1:
@@ -4261,10 +5314,12 @@ snapshots:
source-map-js@1.0.2: {}
- source-map-js@1.1.0: {}
+ source-map-js@1.2.1: {}
source-map@0.6.1: {}
+ source-map@0.7.4: {}
+
spawndamnit@2.0.0:
dependencies:
cross-spawn: 5.1.0
@@ -4360,6 +5415,11 @@ snapshots:
symbol-tree@3.2.4: {}
+ synckit@0.9.2:
+ dependencies:
+ '@pkgr/core': 0.1.1
+ tslib: 2.8.1
+
term-size@2.2.1: {}
test-exclude@6.0.0:
@@ -4368,6 +5428,8 @@ snapshots:
glob: 7.2.3
minimatch: 3.1.2
+ text-table@0.2.0: {}
+
tinybench@2.5.1: {}
tinypool@0.7.0: {}
@@ -4397,6 +5459,12 @@ snapshots:
trim-newlines@3.0.1: {}
+ ts-api-utils@1.4.2(typescript@5.2.2):
+ dependencies:
+ typescript: 5.2.2
+
+ tslib@2.8.1: {}
+
tty-table@4.2.3:
dependencies:
chalk: 4.1.2
@@ -4434,10 +5502,16 @@ snapshots:
turbo-windows-64: 1.10.16
turbo-windows-arm64: 1.10.16
+ type-check@0.4.0:
+ dependencies:
+ prelude-ls: 1.2.1
+
type-detect@4.0.8: {}
type-fest@0.13.1: {}
+ type-fest@0.20.2: {}
+
type-fest@0.6.0: {}
type-fest@0.8.1: {}
@@ -4505,6 +5579,8 @@ snapshots:
querystringify: 2.2.0
requires-port: 1.0.0
+ util-deprecate@1.0.2: {}
+
validate-npm-package-license@3.0.4:
dependencies:
spdx-correct: 3.2.0
@@ -4549,7 +5625,7 @@ snapshots:
vite@4.5.0(@types/node@20.9.0):
dependencies:
esbuild: 0.18.20
- postcss: 8.4.31
+ postcss: 8.4.49
rollup: 3.29.4
optionalDependencies:
'@types/node': 20.9.0
@@ -4592,12 +5668,31 @@ snapshots:
- supports-color
- terser
- vue-i18n@9.10.2(vue@3.4.21(typescript@5.2.2)):
+ vscode-uri@3.0.8: {}
+
+ vue-demi@0.14.10(vue@3.5.13(typescript@5.2.2)):
+ dependencies:
+ vue: 3.5.13(typescript@5.2.2)
+
+ vue-eslint-parser@9.4.3(eslint@8.57.1):
+ dependencies:
+ debug: 4.3.4
+ eslint: 8.57.1
+ eslint-scope: 7.2.2
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ esquery: 1.6.0
+ lodash: 4.17.21
+ semver: 7.5.4
+ transitivePeerDependencies:
+ - supports-color
+
+ vue-i18n@9.10.2(vue@3.5.13(typescript@5.2.2)):
dependencies:
'@intlify/core-base': 9.10.2
'@intlify/shared': 9.10.2
'@vue/devtools-api': 6.6.1
- vue: 3.4.21(typescript@5.2.2)
+ vue: 3.5.13(typescript@5.2.2)
vue-template-compiler@2.7.15:
dependencies:
@@ -4611,13 +5706,20 @@ snapshots:
semver: 7.5.4
typescript: 5.2.2
- vue@3.4.21(typescript@5.2.2):
+ vue-tsc@2.1.10(typescript@5.2.2):
dependencies:
- '@vue/compiler-dom': 3.4.21
- '@vue/compiler-sfc': 3.4.21
- '@vue/runtime-dom': 3.4.21
- '@vue/server-renderer': 3.4.21(vue@3.4.21(typescript@5.2.2))
- '@vue/shared': 3.4.21
+ '@volar/typescript': 2.4.10
+ '@vue/language-core': 2.1.10(typescript@5.2.2)
+ semver: 7.6.3
+ typescript: 5.2.2
+
+ vue@3.5.13(typescript@5.2.2):
+ dependencies:
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-sfc': 3.5.13
+ '@vue/runtime-dom': 3.5.13
+ '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.2.2))
+ '@vue/shared': 3.5.13
optionalDependencies:
typescript: 5.2.2
@@ -4678,6 +5780,8 @@ snapshots:
siginfo: 2.0.0
stackback: 0.0.2
+ word-wrap@1.2.5: {}
+
wrap-ansi@6.2.0:
dependencies:
ansi-styles: 4.3.0