From f106f8464604a4d807207e64c344285c34650b03 Mon Sep 17 00:00:00 2001
From: ray <1490493387@qq.com>
Date: Fri, 20 Sep 2024 22:52:20 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20:sparkles:=20=E6=95=B4=E5=90=88UnoCSS?=
=?UTF-8?q?=E5=92=8C=E6=B7=BB=E5=8A=A0Tabbar?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.editorconfig | 15 +
.vscode/settings.json | 5 +-
eslint.config.mjs | 62 +--
package.json | 4 +-
pnpm-lock.yaml | 742 +++++++++++++++++++++++++
src/App.vue | 13 +-
src/main.ts | 2 +
src/manifest.json | 136 ++---
src/pages.json | 65 ++-
src/pages/index/index.vue | 25 +-
src/pages/my/index.vue | 5 +
src/pages/workbench/index.vue | 5 +
src/static/tabbar/home-active.png | Bin 0 -> 2678 bytes
src/static/tabbar/home.png | Bin 0 -> 2654 bytes
src/static/tabbar/my-active.png | Bin 0 -> 4064 bytes
src/static/tabbar/my.png | Bin 0 -> 4027 bytes
src/static/tabbar/workbench-active.png | Bin 0 -> 1265 bytes
src/static/tabbar/workbench.png | Bin 0 -> 2965 bytes
tsconfig.json | 1 -
unocss.config.ts | 28 +
vite.config.ts | 14 +-
21 files changed, 959 insertions(+), 163 deletions(-)
create mode 100644 .editorconfig
create mode 100644 src/pages/my/index.vue
create mode 100644 src/pages/workbench/index.vue
create mode 100644 src/static/tabbar/home-active.png
create mode 100644 src/static/tabbar/home.png
create mode 100644 src/static/tabbar/my-active.png
create mode 100644 src/static/tabbar/my.png
create mode 100644 src/static/tabbar/workbench-active.png
create mode 100644 src/static/tabbar/workbench.png
create mode 100644 unocss.config.ts
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..00ee2de
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,15 @@
+# http://editorconfig.org
+root = true
+
+# 表示所有文件适用
+[*]
+charset = utf-8 # 设置文件字符集为 utf-8
+end_of_line = lf # 控制换行类型(lf | cr | crlf)
+indent_style = space # 缩进风格(tab | space)
+indent_size = 2 # 缩进大小
+insert_final_newline = true # 始终在文件末尾插入一个新行
+
+# 表示仅 md 文件适用以下规则
+[*.md]
+max_line_length = off # 关闭最大行长度限制
+trim_trailing_whitespace = false # 关闭末尾空格修剪
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 65c7790..eaad2ff 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -3,8 +3,9 @@
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
- "source.fixAll.eslint": true,
- "source.fixAll.stylelint": true
+ "source.fixAll": "explicit",
+ "source.fixAll.eslint": "explicit",
+ "source.fixAll.stylelint": "explicit"
},
"stylelint.validate": ["css", "scss", "vue", "html"]
}
diff --git a/eslint.config.mjs b/eslint.config.mjs
index ceece49..8fa7d98 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -1,58 +1,32 @@
import globals from "globals"; // 全局变量配置
-import jsPlugin from "@eslint/js"; // JavaScript 推荐配置
-import tsPlugin from "@typescript-eslint/eslint-plugin"; // TypeScript 插件
-import tsParser from "@typescript-eslint/parser"; // TypeScript 解析器
-import vuePlugin from "eslint-plugin-vue"; // Vue 插件
-import prettierConfig from "eslint-config-prettier"; // 禁用 ESLint 冲突规则
-import pluginPrettier from "eslint-plugin-prettier"; // 引入 Prettier 插件
+import pluginJs from "@eslint/js"; // JavaScript 的推荐配置
+import tseslint from "typescript-eslint"; // TypeScript 配置
+import pluginVue from "eslint-plugin-vue"; // Vue 配置
export default [
- // 1. 适用于所有文件的配置 (JavaScript、TypeScript、Vue)
- {
- files: ["**/*.{js,mjs,cjs,ts,vue}"], // 校验的文件类型
- languageOptions: {
- globals: globals.browser, // 设置浏览器环境的全局变量
- },
- },
+ { files: ["**/*.{js,mjs,cjs,ts,vue}"] }, // 校验的文件类型
+ { languageOptions: { globals: globals.browser } }, // 设置浏览器环境的全局变量
+ pluginJs.configs.recommended, // JavaScript 推荐配置
+ ...tseslint.configs.recommended, // TypeScript 推荐配置
+ ...pluginVue.configs["flat/essential"], // Vue 推荐配置
+ { files: ["**/*.vue"], languageOptions: { parserOptions: { parser: tseslint.parser } } }, // 对 .vue 文件使用 TypeScript 解析器
- // 2. 插件推荐的配置
- jsPlugin.configs.recommended, // JavaScript 推荐配置
- tsPlugin.configs.recommended, // TypeScript 推荐配置
- vuePlugin.configs["flat/essential"], // Vue 推荐配置
-
- // 3. Prettier 插件配置
- prettierConfig, // 禁用 ESLint 中与 Prettier 冲突的规则
- pluginPrettier.configs.recommended, // 启用 Prettier 插件
-
- // 4. 对 .vue 文件的特殊处理,使用 TypeScript 解析器
- {
- files: ["**/*.vue"],
- languageOptions: {
- parserOptions: {
- parser: tsParser, // 解析器指定为 TypeScript
- },
- },
- },
-
- // 5. 忽略不需要校验的文件和目录
+ // 添加忽略的文件或目录
{
ignores: [
- "/dist", // 忽略打包生成的文件夹
- "/public", // 忽略 public 文件夹
- "/node_modules", // 忽略依赖模块文件夹
- "**/*.min.js", // 忽略压缩后的 JS 文件
- "**/*.config.mjs", // 忽略配置文件
- "**/*.tsbuildinfo", // 忽略 TypeScript 构建信息文件
- "/src/manifest.json", // 忽略 manifest 文件
+ "/dist",
+ "/public",
+ "/node_modules",
+ "**/*.min.js",
+ "**/*.config.mjs",
+ "**/*.tsbuildinfo",
+ "/src/manifest.json",
],
},
- // 6. 自定义 ESLint 规则配置
+ // 自定义规则
{
rules: {
- // Prettier 规则
- "prettier/prettier": "error", // // 将 Prettier 的格式化错误标记为 ESLint 错误
- // 通用规则
quotes: ["error", "double"], // 强制使用双引号
"quote-props": ["error", "always"], // 强制对象的属性名使用引号
semi: ["error", "always"], // 要求使用分号
diff --git a/package.json b/package.json
index db113b5..1ee02e5 100644
--- a/package.json
+++ b/package.json
@@ -41,7 +41,7 @@
"build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei",
"build:quickapp-webview-union": "uni build -p quickapp-webview-union",
"type-check": "vue-tsc --noEmit",
- "lint:eslint": "eslint --fix ./src",
+ "lint:eslint": "eslint --fix ./src/App.vue",
"lint:stylelint": "stylelint \"**/*.{css,scss,vue,html}\" --fix",
"lint:lint-staged": "lint-staged",
"prepare": "husky",
@@ -124,6 +124,8 @@
"stylelint-prettier": "^5.0.2",
"typescript": "^4.9.4",
"typescript-eslint": "^8.6.0",
+ "unocss": "^0.62.4",
+ "unocss-preset-weapp": "^0.62.2",
"vite": "5.2.8",
"vue-tsc": "^1.0.24"
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 62d7350..63eea98 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -151,6 +151,12 @@ devDependencies:
typescript-eslint:
specifier: ^8.6.0
version: 8.6.0(eslint@9.10.0)(typescript@4.9.5)
+ unocss:
+ specifier: ^0.62.4
+ version: 0.62.4(postcss@8.4.47)(vite@5.2.8)
+ unocss-preset-weapp:
+ specifier: ^0.62.2
+ version: 0.62.2
vite:
specifier: 5.2.8
version: 5.2.8(@types/node@22.5.5)(terser@5.33.0)
@@ -167,6 +173,13 @@ packages:
'@jridgewell/gen-mapping': 0.3.5
'@jridgewell/trace-mapping': 0.3.25
+ /@antfu/install-pkg@0.4.1:
+ resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==}
+ dependencies:
+ package-manager-detector: 0.2.0
+ tinyexec: 0.3.0
+ dev: true
+
/@antfu/utils@0.7.10:
resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==}
@@ -2332,6 +2345,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/aix-ppc64@0.23.1:
+ resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/android-arm64@0.20.2:
resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==}
engines: {node: '>=12'}
@@ -2340,6 +2362,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/android-arm64@0.23.1:
+ resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/android-arm@0.20.2:
resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==}
engines: {node: '>=12'}
@@ -2348,6 +2379,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/android-arm@0.23.1:
+ resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/android-x64@0.20.2:
resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==}
engines: {node: '>=12'}
@@ -2356,6 +2396,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/android-x64@0.23.1:
+ resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/darwin-arm64@0.20.2:
resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==}
engines: {node: '>=12'}
@@ -2364,6 +2413,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/darwin-arm64@0.23.1:
+ resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/darwin-x64@0.20.2:
resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==}
engines: {node: '>=12'}
@@ -2372,6 +2430,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/darwin-x64@0.23.1:
+ resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/freebsd-arm64@0.20.2:
resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==}
engines: {node: '>=12'}
@@ -2380,6 +2447,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/freebsd-arm64@0.23.1:
+ resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/freebsd-x64@0.20.2:
resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==}
engines: {node: '>=12'}
@@ -2388,6 +2464,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/freebsd-x64@0.23.1:
+ resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-arm64@0.20.2:
resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==}
engines: {node: '>=12'}
@@ -2396,6 +2481,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-arm64@0.23.1:
+ resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-arm@0.20.2:
resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==}
engines: {node: '>=12'}
@@ -2404,6 +2498,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-arm@0.23.1:
+ resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-ia32@0.20.2:
resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==}
engines: {node: '>=12'}
@@ -2412,6 +2515,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-ia32@0.23.1:
+ resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-loong64@0.20.2:
resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==}
engines: {node: '>=12'}
@@ -2420,6 +2532,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-loong64@0.23.1:
+ resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-mips64el@0.20.2:
resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==}
engines: {node: '>=12'}
@@ -2428,6 +2549,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-mips64el@0.23.1:
+ resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-ppc64@0.20.2:
resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==}
engines: {node: '>=12'}
@@ -2436,6 +2566,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-ppc64@0.23.1:
+ resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-riscv64@0.20.2:
resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==}
engines: {node: '>=12'}
@@ -2444,6 +2583,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-riscv64@0.23.1:
+ resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-s390x@0.20.2:
resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==}
engines: {node: '>=12'}
@@ -2452,6 +2600,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-s390x@0.23.1:
+ resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/linux-x64@0.20.2:
resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==}
engines: {node: '>=12'}
@@ -2460,6 +2617,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/linux-x64@0.23.1:
+ resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/netbsd-x64@0.20.2:
resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==}
engines: {node: '>=12'}
@@ -2468,6 +2634,24 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/netbsd-x64@0.23.1:
+ resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ /@esbuild/openbsd-arm64@0.23.1:
+ resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/openbsd-x64@0.20.2:
resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==}
engines: {node: '>=12'}
@@ -2476,6 +2660,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/openbsd-x64@0.23.1:
+ resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/sunos-x64@0.20.2:
resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==}
engines: {node: '>=12'}
@@ -2484,6 +2677,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/sunos-x64@0.23.1:
+ resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/win32-arm64@0.20.2:
resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==}
engines: {node: '>=12'}
@@ -2492,6 +2694,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/win32-arm64@0.23.1:
+ resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/win32-ia32@0.20.2:
resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==}
engines: {node: '>=12'}
@@ -2500,6 +2711,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/win32-ia32@0.23.1:
+ resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@esbuild/win32-x64@0.20.2:
resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==}
engines: {node: '>=12'}
@@ -2508,6 +2728,15 @@ packages:
requiresBuild: true
optional: true
+ /@esbuild/win32-x64@0.23.1:
+ resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@eslint-community/eslint-utils@4.4.0(eslint@9.10.0):
resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -2578,6 +2807,24 @@ packages:
engines: {node: '>=18.18'}
dev: true
+ /@iconify/types@2.0.0:
+ resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
+ dev: true
+
+ /@iconify/utils@2.1.33:
+ resolution: {integrity: sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==}
+ dependencies:
+ '@antfu/install-pkg': 0.4.1
+ '@antfu/utils': 0.7.10
+ '@iconify/types': 2.0.0
+ debug: 4.3.7
+ kolorist: 1.8.0
+ local-pkg: 0.5.0
+ mlly: 1.7.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/@intlify/core-base@9.1.9:
resolution: {integrity: sha512-x5T0p/Ja0S8hs5xs+ImKyYckVkL4CzcEXykVYYV6rcbXxJTe2o58IquSqX9bdncVKbRZP7GlBU1EcRaQEEJ+vw==}
engines: {node: '>= 10'}
@@ -3299,6 +3546,12 @@ packages:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.0
+ /@meoc/utils@0.2.8:
+ resolution: {integrity: sha512-SogV9QQpK05CVO3Gz071fRFH/PbbXxCP566VYOs/ux62RTuTbfAVeT8jkiYfzBpg+ImqpKkkK6o6tcbGM0rESQ==}
+ dependencies:
+ dayjs: 1.11.13
+ dev: true
+
/@nodelib/fs.scandir@2.1.5:
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -3322,6 +3575,10 @@ packages:
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
dev: true
+ /@polka/url@1.0.0-next.28:
+ resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==}
+ dev: true
+
/@rollup/pluginutils@5.1.0:
resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
engines: {node: '>=14.0.0'}
@@ -3682,6 +3939,209 @@ packages:
eslint-visitor-keys: 3.4.3
dev: true
+ /@unocss/astro@0.62.4(vite@5.2.8):
+ resolution: {integrity: sha512-98KfkbrNhBLx2+uYxMiGsldIeIZ6/PbL4yaGRHeHoiHd7p4HmIyCF+auYe4Psntx3Yr8kU+XSIAhGDYebvTidQ==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0
+ peerDependenciesMeta:
+ vite:
+ optional: true
+ dependencies:
+ '@unocss/core': 0.62.4
+ '@unocss/reset': 0.62.4
+ '@unocss/vite': 0.62.4(vite@5.2.8)
+ vite: 5.2.8(@types/node@22.5.5)(terser@5.33.0)
+ transitivePeerDependencies:
+ - rollup
+ - supports-color
+ dev: true
+
+ /@unocss/cli@0.62.4:
+ resolution: {integrity: sha512-p4VyS40mzn4LCOkIsbIRzN0Zi50rRepesREi2S1+R4Kpvd4QFeeuxTuZNHEyi2uCboQ9ZWl1gfStCXIrNECwTg==}
+ engines: {node: '>=14'}
+ hasBin: true
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@rollup/pluginutils': 5.1.0
+ '@unocss/config': 0.62.4
+ '@unocss/core': 0.62.4
+ '@unocss/preset-uno': 0.62.4
+ cac: 6.7.14
+ chokidar: 3.6.0
+ colorette: 2.0.20
+ consola: 3.2.3
+ magic-string: 0.30.11
+ pathe: 1.1.2
+ perfect-debounce: 1.0.0
+ tinyglobby: 0.2.6
+ transitivePeerDependencies:
+ - rollup
+ - supports-color
+ dev: true
+
+ /@unocss/config@0.62.4:
+ resolution: {integrity: sha512-XKudKxxW8P44JvlIdS6HBpfE3qZA9rhbemy6/sb8HyZjKYjgeM9jx5yjk+9+4hXNma/KlwDXwjAqY29z0S0SrA==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@unocss/core': 0.62.4
+ unconfig: 0.5.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@unocss/core@0.62.4:
+ resolution: {integrity: sha512-Cc+Vo6XlaQpyVejkJrrzzWtiK9pgMWzVVBpm9VCVtwZPUjD4GSc+g7VQCPXSsr7m03tmSuRySJx72QcASmauNQ==}
+ dev: true
+
+ /@unocss/extractor-arbitrary-variants@0.62.4:
+ resolution: {integrity: sha512-e4hJfBMyFr6T6dYSTTjNv9CQwaU1CVEKxDlYP0GpfSgxsV58pguID9j1mt0/XZD6LvEDzwxj9RTRWKpUSWqp+Q==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ dev: true
+
+ /@unocss/inspector@0.62.4:
+ resolution: {integrity: sha512-bRcnI99gZecNzrUr6kDMdwGHkhUuTPyvvadRdaOxHc9Ow3ANNyqymeFM1q5anZEUZt8h15TYN0mdyQyIWkU3zg==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ '@unocss/rule-utils': 0.62.4
+ gzip-size: 6.0.0
+ sirv: 2.0.4
+ dev: true
+
+ /@unocss/postcss@0.62.4(postcss@8.4.47):
+ resolution: {integrity: sha512-kWdHy7UsSP4bDu8I7sCKeO0VuzvVpNHmn2rifK5gNstUx5dZ1H/SoyXTHx5sKtgfZBRzdNXFu2nZ3PzYGvEFbw==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ postcss: ^8.4.21
+ dependencies:
+ '@unocss/config': 0.62.4
+ '@unocss/core': 0.62.4
+ '@unocss/rule-utils': 0.62.4
+ css-tree: 2.3.1
+ postcss: 8.4.47
+ tinyglobby: 0.2.6
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@unocss/preset-attributify@0.62.4:
+ resolution: {integrity: sha512-ei5nNT58GON9iyCGRRiIrphzyQbBIZ9iEqSBhIY0flcfi1uAPUXV32aO2slqJnWWAIwbRSb1GMpwYR8mmfuz8g==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ dev: true
+
+ /@unocss/preset-icons@0.62.4:
+ resolution: {integrity: sha512-n9m2nRTxyiw0sqOwSioO3rro0kaPW0JJzWlzcfdwQ+ZORNR5WyJL298fLXYUFbZG3EOF+zSPg6CMDWudKk/tlA==}
+ dependencies:
+ '@iconify/utils': 2.1.33
+ '@unocss/core': 0.62.4
+ ofetch: 1.3.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
+ /@unocss/preset-mini@0.62.4:
+ resolution: {integrity: sha512-1O+QpQFx7FT61aheAZEYemW5e4AGib8TFGm+rWLudKq2IBNnXHcS5xsq5QvqdC7rp9Dn3lnW5du6ijow5kCBuw==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ '@unocss/extractor-arbitrary-variants': 0.62.4
+ '@unocss/rule-utils': 0.62.4
+ dev: true
+
+ /@unocss/preset-tagify@0.62.4:
+ resolution: {integrity: sha512-8b2Kcsvt93xu1JqDqcD3QvvW0L5rqvH7ev3BlNEVx6n8ayBqfB5HEd4ILKr7wSC90re+EnCgnMm7EP2FiQAJkw==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ dev: true
+
+ /@unocss/preset-typography@0.62.4:
+ resolution: {integrity: sha512-ZVh+NbcibMmD6ve8Deub/G+XAFcGPuzE2Fx/tMAfWfYlfyOAtrMxuL+AARMthpRxdE0JOtggXNTrJb0ZhGYl9g==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ '@unocss/preset-mini': 0.62.4
+ dev: true
+
+ /@unocss/preset-uno@0.62.4:
+ resolution: {integrity: sha512-2S6+molIz8dH/al0nfkU7i/pMS0oERPr4k9iW80Byt4cKDIhh/0jhZrC83kgZRtCf5hclSBO4oCoMTi1JF7SBw==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ '@unocss/preset-mini': 0.62.4
+ '@unocss/preset-wind': 0.62.4
+ '@unocss/rule-utils': 0.62.4
+ dev: true
+
+ /@unocss/preset-web-fonts@0.62.4:
+ resolution: {integrity: sha512-kaxgYBVyMdBlErseN8kWLiaS2N5OMlwg5ktAxUlei275fMoY7inQjOwppnjDVveJbN9SP6TcqqFpBIPfUayPkQ==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ ofetch: 1.3.4
+ dev: true
+
+ /@unocss/preset-wind@0.62.4:
+ resolution: {integrity: sha512-YOzfQ11AmAnl1ZkcWLMMxCdezLjRKavLNk38LumUMtcdsa0DAy+1JjTp+KEvVQAnD+Et/ld5X+YcBWJkVy5WFQ==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ '@unocss/preset-mini': 0.62.4
+ '@unocss/rule-utils': 0.62.4
+ dev: true
+
+ /@unocss/reset@0.62.4:
+ resolution: {integrity: sha512-CtxjeDgN39fY/eZDLIXN4wy7C8W7+SD+41AlzGVU5JwhcXmnb1XoDpOd2lzMxc/Yy3F5dIJt2+MRDj9RnpX9Ew==}
+ dev: true
+
+ /@unocss/rule-utils@0.62.4:
+ resolution: {integrity: sha512-XUwLbLUzL+VSHCJNK5QBHC9RbFehumge1/XJmsRfmh0+oxgJoO1gvEvxi57gYEmdJdMRJHRJZ66se6+cB0Ymvw==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@unocss/core': 0.62.4
+ magic-string: 0.30.11
+ dev: true
+
+ /@unocss/transformer-attributify-jsx@0.62.4:
+ resolution: {integrity: sha512-z9DDqS2DibDR9gno55diKfAVegeJ9uoyQXQhH3R0KY4YMF49N1fWy/t74gOiHtlPmvjQtDRZYgjgaMCc2w8oWg==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ dev: true
+
+ /@unocss/transformer-compile-class@0.62.4:
+ resolution: {integrity: sha512-8yadY9T7LToJwSsrmYU3rUKlnDgPGVRvON7z9g1IjUCmFCGx7Gpg84x9KpKUG6eUTshPQFUI0YUHocrYFevAEA==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ dev: true
+
+ /@unocss/transformer-directives@0.62.4:
+ resolution: {integrity: sha512-bq9ZDG6/mr6X2mAogAo0PBVrLSLT0900MPqnj/ixadYHc7mRpX+y6bc/1AgWytZIFYSdNzf7XDoquZuwf42Ucg==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ '@unocss/rule-utils': 0.62.4
+ css-tree: 2.3.1
+ dev: true
+
+ /@unocss/transformer-variant-group@0.62.4:
+ resolution: {integrity: sha512-W1fxMc2Lzxu4E+6JBQEBzK+AwoCQYI+EL2FT2BCUsAno37f3JdnwFFEVscck0epSdmdtidsSLDognyX8h10r8A==}
+ dependencies:
+ '@unocss/core': 0.62.4
+ dev: true
+
+ /@unocss/vite@0.62.4(vite@5.2.8):
+ resolution: {integrity: sha512-JKq3V6bcevYl9X5Jl3p9crArbhzI8JVWQkOxKV2nGLFaqvnc47vMSDxlU4MUdRWp3aQvzDw132tcx27oSbrojw==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@rollup/pluginutils': 5.1.0
+ '@unocss/config': 0.62.4
+ '@unocss/core': 0.62.4
+ '@unocss/inspector': 0.62.4
+ chokidar: 3.6.0
+ magic-string: 0.30.11
+ tinyglobby: 0.2.6
+ vite: 5.2.8(@types/node@22.5.5)(terser@5.33.0)
+ transitivePeerDependencies:
+ - rollup
+ - supports-color
+ dev: true
+
/@vitejs/plugin-legacy@5.4.2(terser@5.33.0)(vite@5.2.8):
resolution: {integrity: sha512-hlyyQL+wEIyOWdwsUKX+0g3kBU4AbHmVzHarLvVKiGGGqLIYjttMvvjk6zGY8RD9dab6QuFNhDoxg0YFhQ26xA==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -4357,11 +4817,26 @@ packages:
base64-js: 1.5.1
ieee754: 1.2.1
+ /bundle-require@5.0.0(esbuild@0.20.2):
+ resolution: {integrity: sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ peerDependencies:
+ esbuild: '>=0.18'
+ dependencies:
+ esbuild: 0.20.2
+ load-tsconfig: 0.2.5
+ dev: true
+
/bytes@3.1.2:
resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
engines: {node: '>= 0.8'}
dev: true
+ /cac@6.7.14:
+ resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
+ engines: {node: '>=8'}
+ dev: true
+
/cac@6.7.9:
resolution: {integrity: sha512-XN5qEpfNQCJ8jRaZgitSkkukjMRCGio+X3Ks5KUbGGlPbV+pSem1l9VuzooCBXOiMFshUZgyYqg6rgN8rjkb/w==}
engines: {node: '>=8'}
@@ -4612,6 +5087,11 @@ packages:
/confbox@0.1.7:
resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==}
+ /consola@3.2.3:
+ resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==}
+ engines: {node: ^14.18.0 || >=16.10.0}
+ dev: true
+
/content-disposition@0.5.4:
resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
engines: {node: '>= 0.6'}
@@ -4822,6 +5302,10 @@ packages:
whatwg-url: 8.7.0
dev: true
+ /dayjs@1.11.13:
+ resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==}
+ dev: true
+
/de-indent@1.0.2:
resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
dev: true
@@ -4887,6 +5371,10 @@ packages:
gopd: 1.0.1
dev: true
+ /defu@6.1.4:
+ resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
+ dev: true
+
/delayed-stream@1.0.0:
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
engines: {node: '>=0.4.0'}
@@ -4897,6 +5385,10 @@ packages:
engines: {node: '>= 0.8'}
dev: true
+ /destr@2.0.3:
+ resolution: {integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==}
+ dev: true
+
/destroy@1.2.0:
resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
@@ -4975,6 +5467,10 @@ packages:
is-obj: 2.0.0
dev: true
+ /duplexer@0.1.2:
+ resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
+ dev: true
+
/ee-first@1.1.1:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
dev: true
@@ -5070,6 +5566,38 @@ packages:
'@esbuild/win32-ia32': 0.20.2
'@esbuild/win32-x64': 0.20.2
+ /esbuild@0.23.1:
+ resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==}
+ engines: {node: '>=18'}
+ hasBin: true
+ requiresBuild: true
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.23.1
+ '@esbuild/android-arm': 0.23.1
+ '@esbuild/android-arm64': 0.23.1
+ '@esbuild/android-x64': 0.23.1
+ '@esbuild/darwin-arm64': 0.23.1
+ '@esbuild/darwin-x64': 0.23.1
+ '@esbuild/freebsd-arm64': 0.23.1
+ '@esbuild/freebsd-x64': 0.23.1
+ '@esbuild/linux-arm': 0.23.1
+ '@esbuild/linux-arm64': 0.23.1
+ '@esbuild/linux-ia32': 0.23.1
+ '@esbuild/linux-loong64': 0.23.1
+ '@esbuild/linux-mips64el': 0.23.1
+ '@esbuild/linux-ppc64': 0.23.1
+ '@esbuild/linux-riscv64': 0.23.1
+ '@esbuild/linux-s390x': 0.23.1
+ '@esbuild/linux-x64': 0.23.1
+ '@esbuild/netbsd-x64': 0.23.1
+ '@esbuild/openbsd-arm64': 0.23.1
+ '@esbuild/openbsd-x64': 0.23.1
+ '@esbuild/sunos-x64': 0.23.1
+ '@esbuild/win32-arm64': 0.23.1
+ '@esbuild/win32-ia32': 0.23.1
+ '@esbuild/win32-x64': 0.23.1
+ dev: true
+
/escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -5446,6 +5974,17 @@ packages:
bser: 2.1.1
dev: true
+ /fdir@6.3.0(picomatch@4.0.2):
+ resolution: {integrity: sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ==}
+ peerDependencies:
+ picomatch: ^3 || ^4
+ peerDependenciesMeta:
+ picomatch:
+ optional: true
+ dependencies:
+ picomatch: 4.0.2
+ dev: true
+
/figures@3.2.0:
resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
engines: {node: '>=8'}
@@ -5668,6 +6207,12 @@ packages:
engines: {node: '>=16'}
dev: true
+ /get-tsconfig@4.8.1:
+ resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==}
+ dependencies:
+ resolve-pkg-maps: 1.0.0
+ dev: true
+
/git-raw-commits@4.0.0:
resolution: {integrity: sha512-ICsMM1Wk8xSGMowkOmPrzo2Fgmfo4bMHLNX6ytHjajRJUqvHOw/TFapQ+QG75c3X/tTDDhOSRPGC52dDbNM8FQ==}
engines: {node: '>=16'}
@@ -5803,6 +6348,13 @@ packages:
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
dev: true
+ /gzip-size@6.0.0:
+ resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
+ engines: {node: '>=10'}
+ dependencies:
+ duplexer: 0.1.2
+ dev: true
+
/has-flag@3.0.0:
resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
engines: {node: '>=4'}
@@ -5969,6 +6521,20 @@ packages:
resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==}
dev: true
+ /importx@0.4.4:
+ resolution: {integrity: sha512-Lo1pukzAREqrBnnHC+tj+lreMTAvyxtkKsMxLY8H15M/bvLl54p3YuoTI70Tz7Il0AsgSlD7Lrk/FaApRcBL7w==}
+ dependencies:
+ bundle-require: 5.0.0(esbuild@0.20.2)
+ debug: 4.3.7
+ esbuild: 0.20.2
+ jiti: 2.0.0-beta.3
+ jiti-v1: /jiti@1.21.6
+ pathe: 1.1.2
+ tsx: 4.19.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/imurmurhash@0.1.4:
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
engines: {node: '>=0.8.19'}
@@ -6678,6 +7244,11 @@ packages:
hasBin: true
dev: true
+ /jiti@2.0.0-beta.3:
+ resolution: {integrity: sha512-pmfRbVRs/7khFrSAYnSiJ8C0D5GvzkE4Ey2pAvUcJsw1ly/p+7ut27jbJrjY79BpAJQJ4gXYFtK6d1Aub+9baQ==}
+ hasBin: true
+ dev: true
+
/jpeg-js@0.3.7:
resolution: {integrity: sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==}
dev: false
@@ -6815,6 +7386,10 @@ packages:
resolution: {integrity: sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==}
dev: true
+ /kolorist@1.8.0:
+ resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+ dev: true
+
/lcid@3.1.1:
resolution: {integrity: sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==}
engines: {node: '>=8'}
@@ -6900,6 +7475,11 @@ packages:
- debug
dev: false
+ /load-tsconfig@0.2.5:
+ resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dev: true
+
/loader-utils@3.3.1:
resolution: {integrity: sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==}
engines: {node: '>= 12.13.0'}
@@ -7165,6 +7745,11 @@ packages:
/module-alias@2.2.3:
resolution: {integrity: sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==}
+ /mrmime@2.0.0:
+ resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==}
+ engines: {node: '>=10'}
+ dev: true
+
/ms@2.0.0:
resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
dev: true
@@ -7194,6 +7779,10 @@ packages:
engines: {node: '>= 0.6'}
dev: true
+ /node-fetch-native@1.6.4:
+ resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==}
+ dev: true
+
/node-int64@0.4.0:
resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
dev: true
@@ -7238,6 +7827,14 @@ packages:
engines: {node: '>= 0.4'}
dev: true
+ /ofetch@1.3.4:
+ resolution: {integrity: sha512-KLIET85ik3vhEfS+3fDlc/BAZiAp+43QEC/yCo5zkNoY2YaKvNkOaFr/6wCFgFH1kuYQM5pMNi0Tg8koiIemtw==}
+ dependencies:
+ destr: 2.0.3
+ node-fetch-native: 1.6.4
+ ufo: 1.5.4
+ dev: true
+
/omggif@1.0.10:
resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==}
dev: false
@@ -7361,6 +7958,10 @@ packages:
engines: {node: '>=6'}
dev: true
+ /package-manager-detector@0.2.0:
+ resolution: {integrity: sha512-E385OSk9qDcXhcM9LNSe4sdhx8a9mAPrZ4sMLW+tmxl5ZuGtPUcdFu+MPP2jbgiWAZ6Pfe5soGFMd+0Db5Vrog==}
+ dev: true
+
/pako@1.0.11:
resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
dev: false
@@ -7471,6 +8072,10 @@ packages:
/pathe@1.1.2:
resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==}
+ /perfect-debounce@1.0.0:
+ resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==}
+ dev: true
+
/phin@2.9.3:
resolution: {integrity: sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==}
deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
@@ -7492,6 +8097,11 @@ packages:
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
engines: {node: '>=8.6'}
+ /picomatch@4.0.2:
+ resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
+ engines: {node: '>=12'}
+ dev: true
+
/pidtree@0.6.0:
resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
engines: {node: '>=0.10'}
@@ -7882,6 +8492,10 @@ packages:
engines: {node: '>=8'}
dev: true
+ /resolve-pkg-maps@1.0.0:
+ resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
+ dev: true
+
/resolve.exports@1.1.1:
resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==}
engines: {node: '>=10'}
@@ -8084,6 +8698,15 @@ packages:
engines: {node: '>=14'}
dev: true
+ /sirv@2.0.4:
+ resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==}
+ engines: {node: '>= 10'}
+ dependencies:
+ '@polka/url': 1.0.0-next.28
+ mrmime: 2.0.0
+ totalist: 3.0.1
+ dev: true
+
/sisteransi@1.0.5:
resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
dev: true
@@ -8515,6 +9138,14 @@ packages:
resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==}
dev: true
+ /tinyglobby@0.2.6:
+ resolution: {integrity: sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==}
+ engines: {node: '>=12.0.0'}
+ dependencies:
+ fdir: 6.3.0(picomatch@4.0.2)
+ picomatch: 4.0.2
+ dev: true
+
/tmp@0.0.33:
resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
engines: {node: '>=0.6.0'}
@@ -8541,6 +9172,11 @@ packages:
engines: {node: '>=0.6'}
dev: true
+ /totalist@3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+ dev: true
+
/tough-cookie@4.1.4:
resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
engines: {node: '>=6'}
@@ -8571,6 +9207,17 @@ packages:
resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==}
dev: true
+ /tsx@4.19.1:
+ resolution: {integrity: sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==}
+ engines: {node: '>=18.0.0'}
+ hasBin: true
+ dependencies:
+ esbuild: 0.23.1
+ get-tsconfig: 4.8.1
+ optionalDependencies:
+ fsevents: 2.3.3
+ dev: true
+
/type-check@0.4.0:
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
engines: {node: '>= 0.8.0'}
@@ -8633,6 +9280,16 @@ packages:
/ufo@1.5.4:
resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==}
+ /unconfig@0.5.5:
+ resolution: {integrity: sha512-VQZ5PT9HDX+qag0XdgQi8tJepPhXiR/yVOkn707gJDKo31lGjRilPREiQJ9Z6zd/Ugpv6ZvO5VxVIcatldYcNQ==}
+ dependencies:
+ '@antfu/utils': 0.7.10
+ defu: 6.1.4
+ importx: 0.4.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
+
/undici-types@6.19.8:
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
@@ -8693,11 +9350,72 @@ packages:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
engines: {node: '>= 10.0.0'}
+ /unocss-preset-weapp@0.62.2:
+ resolution: {integrity: sha512-6NmwR+SZLLzk8L5XS6zhVBDPyBmbOhrr9oyvxjbNkquVB/nzSD+5lke6DJvqBsPISLt1yib+XglODRM1MZMIXg==}
+ dependencies:
+ '@rollup/pluginutils': 5.1.0
+ '@unocss/core': 0.62.4
+ '@unocss/extractor-arbitrary-variants': 0.62.4
+ '@unocss/rule-utils': 0.62.4
+ unplugin-attributify-to-class: 0.2.5
+ unplugin-transform-class: 0.5.3
+ transitivePeerDependencies:
+ - rollup
+ - webpack-sources
+ dev: true
+
+ /unocss@0.62.4(postcss@8.4.47)(vite@5.2.8):
+ resolution: {integrity: sha512-SaGbxXQkk8GDPeJpWsBCZ8a23Knu4ixVTt6pvcQWKjOCGTd9XBd+vLZzN2WwdwgBPVwmMmx5wp+/gPHKFNOmIw==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@unocss/webpack': 0.62.4
+ vite: ^2.9.0 || ^3.0.0-0 || ^4.0.0 || ^5.0.0-0
+ peerDependenciesMeta:
+ '@unocss/webpack':
+ optional: true
+ vite:
+ optional: true
+ dependencies:
+ '@unocss/astro': 0.62.4(vite@5.2.8)
+ '@unocss/cli': 0.62.4
+ '@unocss/core': 0.62.4
+ '@unocss/postcss': 0.62.4(postcss@8.4.47)
+ '@unocss/preset-attributify': 0.62.4
+ '@unocss/preset-icons': 0.62.4
+ '@unocss/preset-mini': 0.62.4
+ '@unocss/preset-tagify': 0.62.4
+ '@unocss/preset-typography': 0.62.4
+ '@unocss/preset-uno': 0.62.4
+ '@unocss/preset-web-fonts': 0.62.4
+ '@unocss/preset-wind': 0.62.4
+ '@unocss/transformer-attributify-jsx': 0.62.4
+ '@unocss/transformer-compile-class': 0.62.4
+ '@unocss/transformer-directives': 0.62.4
+ '@unocss/transformer-variant-group': 0.62.4
+ '@unocss/vite': 0.62.4(vite@5.2.8)
+ vite: 5.2.8(@types/node@22.5.5)(terser@5.33.0)
+ transitivePeerDependencies:
+ - postcss
+ - rollup
+ - supports-color
+ dev: true
+
/unpipe@1.0.0:
resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
engines: {node: '>= 0.8'}
dev: true
+ /unplugin-attributify-to-class@0.2.5:
+ resolution: {integrity: sha512-0lTUi01mI19PmTTX4420QO6gJFic1wK4LqNnHeBNDrthQEKI0xw/lYg0bGnWYgPmyqXz88hAdLG+ibaypibXqg==}
+ dependencies:
+ '@rollup/pluginutils': 5.1.0
+ unplugin: 1.14.1
+ unplugin-transform-class: 0.5.3
+ transitivePeerDependencies:
+ - rollup
+ - webpack-sources
+ dev: true
+
/unplugin-auto-import@0.16.7:
resolution: {integrity: sha512-w7XmnRlchq6YUFJVFGSvG1T/6j8GrdYN6Em9Wf0Ye+HXgD/22kont+WnuCAA0UaUoxtuvRR1u/mXKy63g/hfqQ==}
engines: {node: '>=14'}
@@ -8722,6 +9440,16 @@ packages:
- rollup
- webpack-sources
+ /unplugin-transform-class@0.5.3:
+ resolution: {integrity: sha512-4xBvfoeBDqlqi9aD0Hv3TTs8JpRs2h9l8LBMXIRXFNTf8biRk6hAQir+zEM/GpBKoMzvt7JqqbMIYzMazQZysQ==}
+ dependencies:
+ '@meoc/utils': 0.2.8
+ '@rollup/pluginutils': 5.1.0
+ unplugin: 1.7.1
+ transitivePeerDependencies:
+ - rollup
+ dev: true
+
/unplugin@1.14.1:
resolution: {integrity: sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==}
engines: {node: '>=14.0.0'}
@@ -8734,6 +9462,15 @@ packages:
acorn: 8.12.1
webpack-virtual-modules: 0.6.2
+ /unplugin@1.7.1:
+ resolution: {integrity: sha512-JqzORDAPxxs8ErLV4x+LL7bk5pk3YlcWqpSNsIkAZj972KzFZLClc/ekppahKkOczGkwIG6ElFgdOgOlK4tXZw==}
+ dependencies:
+ acorn: 8.12.1
+ chokidar: 3.6.0
+ webpack-sources: 3.2.3
+ webpack-virtual-modules: 0.6.2
+ dev: true
+
/unquote@1.1.1:
resolution: {integrity: sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==}
dev: false
@@ -8934,6 +9671,11 @@ packages:
engines: {node: '>=10.4'}
dev: true
+ /webpack-sources@3.2.3:
+ resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
+ engines: {node: '>=10.13.0'}
+ dev: true
+
/webpack-virtual-modules@0.6.2:
resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==}
diff --git a/src/App.vue b/src/App.vue
index 4a2cfb3..a00416e 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -6,13 +6,8 @@ onLaunch(() => {
onShow(() => {
console.log("App Hide");
});
+onHide(() => {
+ console.log("App Hide");
+});
-
+
diff --git a/src/main.ts b/src/main.ts
index b12c1ee..a99f0a2 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -1,5 +1,7 @@
import { createSSRApp } from "vue";
import App from "./App.vue";
+import "uno.css";
+
export function createApp() {
const app = createSSRApp(App);
return {
diff --git a/src/manifest.json b/src/manifest.json
index 309b9ec..c38e717 100644
--- a/src/manifest.json
+++ b/src/manifest.json
@@ -1,72 +1,72 @@
{
- "name" : "",
- "appid" : "",
- "description" : "",
- "versionName" : "1.0.0",
- "versionCode" : "100",
- "transformPx" : false,
- /* 5+App特有相关 */
- "app-plus" : {
- "usingComponents" : true,
- "nvueStyleCompiler" : "uni-app",
- "compilerVersion" : 3,
- "splashscreen" : {
- "alwaysShowBeforeRender" : true,
- "waiting" : true,
- "autoclose" : true,
- "delay" : 0
- },
- /* 模块配置 */
- "modules" : {},
- /* 应用发布信息 */
- "distribute" : {
- /* android打包配置 */
- "android" : {
- "permissions" : [
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- ""
- ]
- },
- /* ios打包配置 */
- "ios" : {},
- /* SDK配置 */
- "sdkConfigs" : {}
- }
+ "name": "",
+ "appid": "",
+ "description": "",
+ "versionName": "1.0.0",
+ "versionCode": "100",
+ "transformPx": false,
+ /* 5+App特有相关 */
+ "app-plus": {
+ "usingComponents": true,
+ "nvueStyleCompiler": "uni-app",
+ "compilerVersion": 3,
+ "splashscreen": {
+ "alwaysShowBeforeRender": true,
+ "waiting": true,
+ "autoclose": true,
+ "delay": 0
},
- /* 快应用特有相关 */
- "quickapp" : {},
- /* 小程序特有相关 */
- "mp-weixin" : {
- "appid" : "",
- "setting" : {
- "urlCheck" : false
- },
- "usingComponents" : true
+ /* 模块配置 */
+ "modules": {},
+ /* 应用发布信息 */
+ "distribute": {
+ /* android打包配置 */
+ "android": {
+ "permissions": [
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+ },
+ /* ios打包配置 */
+ "ios": {},
+ /* SDK配置 */
+ "sdkConfigs": {}
+ }
+ },
+ /* 快应用特有相关 */
+ "quickapp": {},
+ /* 小程序特有相关 */
+ "mp-weixin": {
+ "appid": "",
+ "setting": {
+ "urlCheck": false
},
- "mp-alipay" : {
- "usingComponents" : true
- },
- "mp-baidu" : {
- "usingComponents" : true
- },
- "mp-toutiao" : {
- "usingComponents" : true
- },
- "uniStatistics": {
- "enable": false
- },
- "vueVersion" : "3"
+ "usingComponents": true
+ },
+ "mp-alipay": {
+ "usingComponents": true
+ },
+ "mp-baidu": {
+ "usingComponents": true
+ },
+ "mp-toutiao": {
+ "usingComponents": true
+ },
+ "uniStatistics": {
+ "enable": false
+ },
+ "vueVersion": "3"
}
diff --git a/src/pages.json b/src/pages.json
index 1aea851..204f316 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -1,16 +1,53 @@
{
- "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
- {
- "path": "pages/index/index",
- "style": {
- "navigationBarTitleText": "uni-app"
- }
- }
- ],
- "globalStyle": {
- "navigationBarTextStyle": "black",
- "navigationBarTitleText": "uni-app",
- "navigationBarBackgroundColor": "#F8F8F8",
- "backgroundColor": "#F8F8F8"
- }
+ "pages": [
+ {
+ "path": "pages/index/index",
+ "style": {
+ "navigationBarTitleText": "首页"
+ }
+ },
+ {
+ "path": "pages/workbench/index",
+ "style": {
+ "navigationBarTitleText": "工作台"
+ }
+ },
+ {
+ "path": "pages/my/index",
+ "style": {
+ "navigationBarTitleText": "我的"
+ }
+ }
+ ],
+ "globalStyle": {
+ "navigationBarTextStyle": "black",
+ "navigationBarTitleText": "vue-uniapp-template",
+ "navigationBarBackgroundColor": "#F8F8F8",
+ "backgroundColor": "#F8F8F8"
+ },
+ "tabBar": {
+ "color": "#474747",
+ "selectedColor": "#3B8DFF",
+ "backgroundColor": "#F8F8F8",
+ "list": [
+ {
+ "pagePath": "pages/index/index",
+ "text": "首页",
+ "iconPath": "static/tabbar/home.png",
+ "selectedIconPath": "static/tabbar/home-active.png"
+ },
+ {
+ "pagePath": "pages/workbench/index",
+ "text": "工作台",
+ "iconPath": "static/tabbar/workbench.png",
+ "selectedIconPath": "static/tabbar/workbench-active.png"
+ },
+ {
+ "pagePath": "pages/my/index",
+ "text": "我的",
+ "iconPath": "static/tabbar/my.png",
+ "selectedIconPath": "static/tabbar/my-active.png"
+ }
+ ]
+ }
}
diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue
index f186814..2f44cea 100644
--- a/src/pages/index/index.vue
+++ b/src/pages/index/index.vue
@@ -1,25 +1,18 @@
-
+
-
- {{ title }}
+
+ {{ title }}
diff --git a/src/pages/my/index.vue b/src/pages/my/index.vue
new file mode 100644
index 0000000..be101f0
--- /dev/null
+++ b/src/pages/my/index.vue
@@ -0,0 +1,5 @@
+
+
+ 我的
+
+
diff --git a/src/pages/workbench/index.vue b/src/pages/workbench/index.vue
new file mode 100644
index 0000000..b79ce57
--- /dev/null
+++ b/src/pages/workbench/index.vue
@@ -0,0 +1,5 @@
+
+
+ 工作台
+
+
diff --git a/src/static/tabbar/home-active.png b/src/static/tabbar/home-active.png
new file mode 100644
index 0000000000000000000000000000000000000000..d62f89cc3b02cd8d139f0a87258477b70395de83
GIT binary patch
literal 2678
zcmc&$dpMM78y~M%4U+M)iKvyeKkn!L-S_ic_x-!C=X!qEgZX-U
z=x7;hkw_#RPZZ%3UQSpCc^R=LzW{F#PA!q|!6w!8m`svLTHksiuKp=uZ_b7$^rI9(
zYS)N*g0|)P7>Pt|B0M~2l2W9KjmFlDFm0?P6QtGXl
zhc;HtCYj4YD#e|OT#2*;sZ!{zG3vL(GNAffNfr)1^is
zOO${9*Ch+Q;~EJA+3*WzI*;)T(_mL{4@W>o!p#sFKQ(n9wqF)!O`#hNp7G3Iox%`O
zEaF3pknMtv+L`F~!;z3V5Go=nUA)DW-QK0GPsX9a63>bi*L;N(&+9#08N$*wB$A4=
zo)us-L?o+5xbz5dfo3M!IlrH{jA3$P;URo?g3YV`QLQnY3G8_Zq>aAs=B|9VwNJI3
zCBt3^=|#1qA;pi$KbJ=tUmF0~713!|gYUq`_iJ|uDbf4PUYq71W{;a}DfH7(%V1;O
z2iYu!FyL|uB6ptQ_ELlWf(*8;S@zt`@DTz>CtBlfv4{6T#^_`zsJy2pnGUo=T~
z4cOYgn=<)}EvnKs1dqKlScd=dDg#O7hTWLXX)6j@xkY~=)qwsfBo!V~vd+bC&=RRK
z3?YmRoYogrCv#=xWNNR2FuB?pZ*rdc3%hEL3WZxmQG*
zv(MRsN-AFh(R>4eCR=_Y0g8YoYrY==o&Zgj{EY-K1)7+AeFB66O$`1#0nP$%FxB|6
zwIc&JvM&);ii2nGCC(z3R#gRIl#4pTASt?olgWzH^lw8I1hY6T{|0o&SD@`*jVjPg
z)>iNmufh^$Q^NrTgFi=b^by8DRZ$qFqlMKZ^1qCbGg(U@=X1sZ95S_S?WZd7O~+X}
z^l#Sd0kj@BkW-4f69vf*#N706h+%c2*X3Bu?QzqCXp{sl&9@WjwABN=qSp=NJK*&M
zn~rm?)J3F|p$9}a>e_LnXduzPc${+1hXXac-QYT)s5JcXnzXGCBGb`f<2xY;3yvYCUxqL(i{6Ryy{0%atu{Wm($V
z^vJK2-~P4lko6|_m1I%J9mV&hf#Po^6H)T{*%M`f2Tqz$CNx93Gd$Bv;K|KNjS~lJ
zSxSMxR9I4E^5cySYTAp|*yWydcl#2F4z|M(@`7!YFi0=FvJ4saPiJCJL4oes*`3Ij}S6A{m)%C&ELZ8C$<~1LF&d#6Md4AJ{v?FKk7Wuka1%HWm_bSQy
zY1Ib#P4?W@OTW0!jQ+9Rq}I=D
z{0sfl-W>*JgAvi)Z|FF~YtLzh0Qn7{w0$jT)HiGsRSnEjv{W^c%%xj+`IQ<_4=PSyEi
zHc~V#K#H`_iPvHV)VrB1+3I5vm)&Juhgq^N4PP`D(W2~SQ+X?H+7A#^ovHs8U3n(r
zTG)60(wERO%)0Dg`eJiu`6MF4b_@muv?0YhjS=yIf7NQn*!NCV*Tuh!E~vYmpEH~O
zbczrI%M*WPR`FoC@3la)E~X5rDt;9uPs?u`ZMpIsKbi4zya*|5TucbMr-4bR2l9fI4vH7CnV~&laqqA_^n5%5`4=SGKXOF!uI%IE;&HTO*v;Xdyt&K$F
znSWhlHjK8j_Z)Mnlb2c<2~%I~5P)_kV5y7l*G
zA+pFyUq48Zyy)`~YWgWL@6(ZuUZp*6Hu+1?F!LC%bCnFacg35f-#!PleyW8Hmi}h)
zvVrd`cu>7lVxvQe)ekdu7
z@<@NX^CR_MU!3>cNyqNk5Lto9`cR~DVY<5aOZ#M&Hnw2(xP5=n!%cJ-9itPR`KcRe
zKJWVKW4GX8`RPlg(?!-UqW;$krw4awhF~)I)Qis1Rf_}A3a|W>88Q`b%WK&EuZJIX
YPo)C}8TCdRh>s-6)7=}XVedNr57Z2eFaQ7m
literal 0
HcmV?d00001
diff --git a/src/static/tabbar/home.png b/src/static/tabbar/home.png
new file mode 100644
index 0000000000000000000000000000000000000000..77d0033daf084e7645057d657ef30cdc826378e0
GIT binary patch
literal 2654
zcmeHJYdnCu=rLvs`+Hqq1rlm)tb08dG
zw-bISiMXKFAbdzLFoLU9XI(Qg!D{^CJ-rO`G?PufzF$jjQR)Soi@05
z04MlIki|s`N}vQY&{zxskOA>($tZ&RCLER)4+>B_)D>tlB{B{|!Dxj&+Gq&e0+2;0
zf+9M=5+f37#RFsonhK`nCoCDi4x)|%Ll%90=`i{{LVkYn^ReG6
z&JWZrw`91Eh!~fTEu4@0R=Fl9J(rhvrs0oo1AG#UrW_&CwwbD7-@fy4#j6jt2`g*V
zBDyO?jNOB;9&746dU!WExh~YUQ#|;TG&3Y-=nSNa6EW890to&*S?nOg%qA)_3our>
zt}xiDETrM6h7)+0ppb5iqtaWAq>%Ch2_P)UaJ3fi2|6Lbv8)>TvX&;IasnitcQ)`q
z=X#MrkJi0X24V6LhFJiu6cQbja4~jNr0Zj77-oL+4m9BaE4E%+)2bH
zK+KgQqVh%KLu8O3x0Nz*le9POP3EOZyyd&7Sei<_*FB)obFglDU!&7oKP*%u_BBCE
zuckvgRRu%D&`q8>fUu@Q{Q^&QXIMDD0!`^$@)`drOtIlDlFzp1<^v>HBeI%`qna3F
zX+E1iP?-30>3n3A6%uHll=Gn~NpCsdoknY#&U5*c$ou{$3&f
z7k@vh^_#$C7e)TrkfGyV8C6a>SFnPBl)ic>kj^CU5Xjw)Qv*Dx7|FJldT5-+%(p~)
zYrM<=u_RCOEozn+E8t_Q7!qX|2YHf1s9ZBVx)9$Yfw=4h;FMw&)uWa`annJ2<4T=j
z9K%cytXXP}09QeMLmJU)=w&-iK~zlPpfiLpnm5B0Bd0&n%AuIcJ5yOD&>7LI)M=oz*ZM3
zhMCL8M1F+4S%{`40SKd>(8Hrm40Y>X&i!bwL7?CwPg6u}CudVUI@D12#aOpkf^649
zwj)P5IqT!mtcpJpG_Z7bd(z~D15}X3
z9rvKS-2}DerB`s5dtxk;!R}gp!Bfk$J}qL|E_p-YKeIiPnIAxqI#}zZZ`6c-n3)=ve`-}dF!EU^@1HAk
z$L!BtY9RU@O`fvqpo_ZF7i|ttu=yoIuBYAP*ht%sK)sHii;G^p+luAd-G62Lcxa<8
z?$PP5hv%E4*=G*2VLz39yOvhiqx_P>ER(o~^7_~G+B@zmwOvg75A>@Q#z(HUa2#DsV~vlUO$^1rm>W&dTI}7-9F+icjmJ<
zB5xHJ7n@1!*d%3`X7q!7xn#e4`N;eFPao#r-H2-p#piixTWGo(bQT=U3DIt5d=x{r
zH{1!OwZ9@lV>m24T=#9A$@sxKKGo#t;I+;0y3$4Piv!D`^W=JnqjiV!0V%^>;d*f)
zu>&St9e%&nPJRDxQMw{5T-Td6W=WG2+^1?J^R(p^jH@v@o$w?$R~8Z*VBHaUM0WIV
zSEg9IZ@X0JQd1jEYwmz)rz(XG1~TG*BOjCP7k?kv7ZtV=Io~gF0S#JGZ`z2EW_
z4;-LbXSx}yXDj;H8!%dvgQcwnOl2L*5#Mct#9+b
zXlw*Z3{yXG?t{rirBpyb;%Fq_KyW6M6n!Pz)I#1zx)NmHgGHe
literal 0
HcmV?d00001
diff --git a/src/static/tabbar/my-active.png b/src/static/tabbar/my-active.png
new file mode 100644
index 0000000000000000000000000000000000000000..68b7deace7bacf108d345e57d8a5f4d68437febd
GIT binary patch
literal 4064
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
bq}t*iTZ#OGSM9gM00000NkvXXu0mjfylgJs
literal 0
HcmV?d00001
diff --git a/src/static/tabbar/workbench.png b/src/static/tabbar/workbench.png
new file mode 100644
index 0000000000000000000000000000000000000000..d36fd873a3e1963974b1706001ee014bd288471e
GIT binary patch
literal 2965
zcmd6p`!^Ko8pq$64BH?Yrrgr(Lb)W$t!*$E84NLIgpo@rBA4Vc*|>}DoO3`U4#
z#74PCo3R_4A=@p3v=P~bq>@IQ+57YloU_hZ=e%pZ@AIs8J?nj*_lNIiebZc=?PTD}
zZ~%aeJq}9{Mc!ZgJ8{wZz@v&S3XqEgJ8MwYr@8=u)Ny;P6_MhzSl}NyZY+1rzL0y=
zzQ9s5{KhBsXlKOy&f-n3xqURED9P~*ak#eIj+XH%fwh7^+fhne`_u`QvwtYFM*)+>
zfjq0E!icg}DMuvZB)wBN)IAUN1+%0Zy*u
zTv-{Q1~uLDuQ$~L3&PE|bF4vMnGx0Zwr^uv
zZY%4}Jq}TP)RQ_?Hs#+i{`gOi)q7r;+M1^`D~{v!?TopR^3%qjnS{8emKLE;#vg$K
zb3><_TftugzWNC2`2y0|7*PUeY*PB+LFDNvheqk&RukH{f^S_9^h0}|>`Y!Ze;6vX
z3%x^x;YOpCe)2XzC*m=pDZVfL&{-F;E^u==o?Xyenm_{6jltghr$*Nk;^Q~!Ldgu$
z3@f3D6<_7g3*OHA&TeV_y?SIw;k>`%X5*QX=BggSFuLC*&ljdXM?L@i}
ze0CBaqy@YSiuCD-XFofgK*3F|wKE+5*rV2RW1CNk|L5}qJLNISB*x9^t_smF62qfh
zXSBDulel8c>l-f&T5NRuBcJtYgoGa6RRdM`mh}j>)p_}@f&ya?)_FoQ=e%cA=qJ(H
zbmLgFwas~Ra^cA4N<=gUD!U`S@~mxsVm?aC09!CV<^>R;u(^qwUGg8R-W0q0-hAZ)
za>q+`(Fuwvwk!#WyUz*hM3r5+Mjsvf7*go&_*)Q6R^__M+1A}{yl{KBYAB{moAlZg
z3|teFJ85Qe0~C{CsOFfky%1~z922!TfrZk-kkr?LrZh3RNo_Fj=%TzNs+k0eL*_LR
zm?#dwj`lgJQ(wD7XjKJyI56-4`agcC7}TasdXVxUSdw1fk2QO@b#UyWEjn6Fmn=%N
z8Z2p_JzJl`s?`qGIgSp^lE3oP*E@>aI@-C4${3Nx{DjjcX5|PW8Q=isOB=(q*9+aM
z%n6@el2S#ujz4lV2;|
zbsX%d#xEoL-!=%F9f7`}q~%Pa~%Y`cz(giWQNP30qD3f;@>io5~)k81!tj
z=dkH04UT9`_U?0v)HtffXnzzcd}iph$yr!!*1koEYZFPaZG17kl5lwl10YP!(M(Q{
zon+LTEnlgtA&Wo`G)2=}ED}ef*PVk_=^fVCIn>SyGhttOtaV_X!^GR8qf38kE?iWR
zTciNbz^d5abijpU9#d5nNC4dnsjBi;v)?zJ+-vER8jYm%Y4j3N)A~K9
zHX*1Z@^#srC8Qf!zYqSU_99Cp*ZL!LN@*dfuC&_0Yp)4a*R@|irgE=k{bnBT;1Z2}
zT7}x{%BelwU@=sy>Q&QA_N?XHuJgy?v!f4PzLQ*@>*+c%l0tTOY!3H?qmUY3G952$
z
z5Z;YkCoR1Y>ORusQ1LI*naYcH=BnEFL0oni>mX*{W#8got5QlRoijQ(#eo>PxPfQFHWFdZ_JF!rgrMb
zM`rIUIy73Ge13t=8S6g14p*sXYtmXpHF2@TDrr#)GMCAx(2Lc
z3fTY8qFdqtArbit-d!?mK+s;@&%URQQc0O1@s+hDzg0j3I;&N`GKNN&0C&H)kisTV
z#hMHGAJ!8
zd$!Jxf6_X&TpLBH2{Rb?;Ido<*4ZWle@o;pV!AM`chDlcL@iy6nV!X}U+!!Fmf`
zTpp20>#Rg{a^z8v2LB^t348^npUt&mafaY>2y4zt$(WK+Q=wKy#j-LcI$mNri8q^`
z-j_E}IrU14_Dnuo)$8P^4aiQjba$W9NES3w+?tiNA%!(fww!4fLlow`DfIi&0D^9deATYN}E38f(5ZTu>50Q?Wx48Qx^nRSmg-E6xZbBzuKsu3Leg@#i_|#gWv{mqkbIej!Kr)hW?cFa9
z3wuD#fJcVxFtvnxiwq)9MuB1{a*yUNq8y^|OyN%Qf7t5%m;B`u%U`T{`|_U {
+ const UnoCss = await import("unocss/vite").then((i) => i.default);
+
+ return {
+ plugins: [
+ uni(),
+
+ // https://github.com/unocss/unocss
+ UnoCss(),
+ ],
+ };
});