diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000..fd0901482 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +Dockerfile +.dockerignore +node_modules +npm-debug.log +README.md +.next +.git + +.yalc/ +yalc.lock \ No newline at end of file diff --git a/.env.template b/.env.template new file mode 100644 index 000000000..0937fa9a6 --- /dev/null +++ b/.env.template @@ -0,0 +1,6 @@ +AXIOS_PROXY_HOST=127.0.0.1 +AXIOS_PROXY_PORT=33210 +MONGODB_UR= +MY_MAIL= +MAILE_CODE= +TOKEN_KEY= \ No newline at end of file diff --git a/.gitignore b/.gitignore index c87c9b392..c66bf9086 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,5 @@ yarn-error.log* # typescript *.tsbuildinfo next-env.d.ts +public/trainData/ +.vscode/ \ No newline at end of file diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100644 index 000000000..3e0b1db68 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,6 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +if command -v npx >/dev/null 2>&1; then + npx lint-staged +fi \ No newline at end of file diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 000000000..7aef7f6b0 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,4 @@ +dist +.vscode +**/.DS_Store +node_modules diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 000000000..cb1553cbe --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,21 @@ +module.exports = { + printWidth: 100, + tabWidth: 2, + useTabs: false, + semi: true, + singleQuote: true, + quoteProps: 'as-needed', + jsxSingleQuote: false, + trailingComma: 'none', + bracketSpacing: true, + jsxBracketSameLine: false, + arrowParens: 'always', + rangeStart: 0, + rangeEnd: Infinity, + requirePragma: false, + insertPragma: false, + proseWrap: 'preserve', + htmlWhitespaceSensitivity: 'css', + endOfLine: 'lf' +}; + \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 000000000..d916a93e2 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "editor.formatOnType": true, + "editor.formatOnSave": true , + "prettier.tabWidth": 2 +} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..972de549c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,59 @@ +# Install dependencies only when needed +FROM node:current-alpine AS deps +# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. +RUN apk add --no-cache libc6-compat && npm install -g pnpm +WORKDIR /app + +# Install dependencies based on the preferred package manager +COPY package.json pnpm-lock.yaml* ./ +RUN \ + [ -f pnpm-lock.yaml ] && pnpm install || \ + (echo "Lockfile not found." && exit 1) + +# Rebuild the source code only when needed +FROM node:current-alpine AS builder +WORKDIR /app +COPY --from=deps /app/node_modules ./node_modules +COPY . . + +# Next.js collects completely anonymous telemetry data about general usage. +# Learn more here: https://nextjs.org/telemetry +# Uncomment the following line in case you want to disable telemetry during the build. +ENV NEXT_TELEMETRY_DISABLED 1 + +RUN npm install -g pnpm && pnpm run build + +# Production image, copy all the files and run next +FROM node:current-alpine AS runner +WORKDIR /app + +ENV NODE_ENV production +# Uncomment the following line in case you want to disable telemetry during runtime. +ENV NEXT_TELEMETRY_DISABLED 1 + +RUN addgroup --system --gid 1001 nodejs +RUN adduser --system --uid 1001 nextjs + +RUN sed -i 's/https/http/' /etc/apk/repositories +RUN apk add curl \ + && apk add ca-certificates \ + && update-ca-certificates + +# You only need to copy next.config.js if you are NOT using the default configuration +# COPY --from=builder /app/next.config.js ./ +COPY --from=builder /app/public ./public +COPY --from=builder /app/package.json ./package.json +# COPY --from=builder /app/.env* . + +# Automatically leverage output traces to reduce image size +# https://nextjs.org/docs/advanced-features/output-file-tracing +COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./ +COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static + +USER nextjs + +EXPOSE 3000 + +ENV PORT 3000 + +CMD ["node", "server.js"] diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..dea6c6360 --- /dev/null +++ b/Makefile @@ -0,0 +1,47 @@ +SERVICE_NAME=doc-gpt +# Image URL to use all building/pushing image targets +IMG ?= $(SERVICE_NAME):latest + +.PHONY: all +all: build + +##@ General + +# The help target prints out all targets with their descriptions organized +# beneath their categories. The categories are represented by '##@' and the +# target descriptions by '##'. The awk commands is responsible for reading the +# entire set of makefiles included in this invocation, looking for lines of the +# file as xyz: ## something, and then pretty-format the target and help. Then, +# if there's a line with ##@ something, that gets pretty-printed as a category. +# More info on the usage of ANSI control characters for terminal formatting: +# https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_parameters +# More info on the awk command: +# http://linuxcommand.org/lc3_adv_awk.php + +.PHONY: help +help: ## Display this help. + @awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m\033[0m\n"} /^[a-zA-Z_0-9-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST) + +##@ Build + +.PHONY: build +build: ## Build desktop-frontend binary. + pnpm run build + +.PHONY: run +run: ## Run a dev service from host. + pnpm run start + +.PHONY: docker-build +docker-build: ## Build docker image with the desktop-frontend. + docker build -t c121914yu/doc-gpt:latest . + +##@ Deployment + +.PHONY: docker-run +docker-run: ## Push docker image. + docker run -d -p 8008:3000 --name doc-gpt -v /web_project/yjl/doc-gpt/logs:/app/.next/logs c121914yu/doc-gpt:latest + +#TODO: add support of docker push + +#TODO: add support of sealos apply diff --git a/README.md b/README.md index 965a1228c..a8e8c227b 100644 --- a/README.md +++ b/README.md @@ -1,38 +1,73 @@ -This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). +# Doc GPT -## Getting Started +## 初始化 +复制 .env.template 成 .env.local ,填写核心参数 -First, run the development server: +``` +AXIOS_PROXY_HOST=axios代理地址,目前 openai 接口都需要走代理,本机的话就填 127.0.0.1 +AXIOS_PROXY_PORT=代理端口 +MONGODB_UR=mongo数据库地址 +MY_MAIL=发送验证码邮箱 +MAILE_CODE=邮箱秘钥 +TOKEN_KEY=随便填一个,用于生成和校验token +``` ```bash -npm run dev -# or -yarn dev -# or pnpm dev ``` +## 部署 +```bash +# 本地 docker 打包 +docker build -t imageName . +docker push imageName + +# 服务器拉取部署 +docker pull imageName +docker stop doc-gpt || true +docker rm doc-gpt || true +# 运行时才把参数写入 +docker run -d --network=host --name doc-gpt -e AXIOS_PROXY_HOST= -e AXIOS_PROXY_PORT= -e MAILE_CODE= -e TOKEN_KEY= -e MONGODB_UR= imageName +``` + Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. -You can start editing the page by modifying `pages/index.tsx`. The page auto-updates as you edit the file. +# 介绍页 -[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.ts`. +## 欢迎使用 Doc GPT -The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. +时间比较赶,介绍没来得及完善,先直接上怎么使用: -This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. +1. 使用邮箱注册账号。 +2. 进入账号页面,添加关联账号,目前只有 openai 的账号可以添加,直接去 openai 官网,把 API Key 粘贴过来。 +3. 进入模型页,创建一个模型,建议直接用 ChatGPT。 +4. 在模型列表点击【对话】,即可使用 API 进行聊天。 -## Learn More +### 模型配置 -To learn more about Next.js, take a look at the following resources: +1. **提示语**:会在每个对话框的第一句自动加入,用于限定该模型的对话内容。 -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! +2. **单句最大长度**:每个聊天,单次输入内容的最大长度。 -## Deploy on Vercel -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. +3. **上下文最大长度**:每个聊天,最多的轮数除以2,建议设置为偶数。可以持续聊天,但是旧的聊天内容会被截断,AI 就不会知道被截取的内容。 +例如:上下文最大长度为6。在第 4 轮对话时,第一轮对话的内容不会被计入。 -Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. +4. **过期时间**:生成对话框后,这个对话框多久过期。 + +5. **聊天最大加载次数**:单个对话框最多被加载几次,设置为-1代表不限制,正数代表只能加载 n 次,防止被盗刷。 + +### 对话框介绍 + +1. 每个对话框以 windowId 作为标识。 +2. 每次点击【对话】,都会生成新的对话框,无法回到旧的对话框。对话框内刷新,会恢复对话内容。 +3. 直接分享对话框(网页)的链接给朋友,会共享同一个对话内容。但是!!!千万不要两个人同时用一个链接,会串味,还没解决这个问题。 +4. 如果想分享一个纯的对话框,可以把链接里 windowId 参数去掉。例如: + +* 当前网页链接:http://docgpt.ahapocket.cn/chat?chatId=6402c9f64cb5d6283f764&windowId=6402c94cb5d6283f76fb49 +* 分享链接应为:http://docgpt.ahapocket.cn/chat?chatId=6402c9f64cb5d6283f764 + +### 其他问题 +还有其他问题,可以加我 wx,拉个交流群大家一起聊聊。 +![](/imgs/erweima.jpg) \ No newline at end of file diff --git a/docs/FineTunes b/docs/FineTunes new file mode 100644 index 000000000..44c4291c0 --- /dev/null +++ b/docs/FineTunes @@ -0,0 +1,4 @@ +{"prompt": "sealos的介绍", "completion": "sealos 是以 kubernetes 为内核的云操作系统发行版"} +{"prompt": "sealos是什么", "completion": "sealos 是以 kubernetes 为内核的云操作系统发行版"} +{"prompt": "sealos安装的先决条件", "completion": "sealos 是一个简单的 go 二进制文件,可以安装在大多数 Linux 操作系统中。"} +{"prompt": "sealos的CPU架构", "completion": "目前支持 amd64 和 arm64 架构。"} \ No newline at end of file diff --git a/next.config.js b/next.config.js index a843cbee0..04c3c8a67 100644 --- a/next.config.js +++ b/next.config.js @@ -1,6 +1,12 @@ /** @type {import('next').NextConfig} */ -const nextConfig = { - reactStrictMode: true, -} -module.exports = nextConfig +const path = require('path'); +const isDev = process.env.NODE_ENV === 'development'; + +const nextConfig = { + output: 'standalone', + reactStrictMode: false, + compress: true +}; + +module.exports = nextConfig; diff --git a/package.json b/package.json index c5e77b503..bebac8c95 100644 --- a/package.json +++ b/package.json @@ -6,18 +6,61 @@ "dev": "next dev", "build": "next build", "start": "next start", - "lint": "next lint" + "lint": "next lint", + "prepare": "husky install", + "format": "prettier --config \"./.prettierrc.js\" --write \"./src/**/*.{ts,tsx,scss}\"" }, "dependencies": { + "@chakra-ui/icons": "^2.0.17", + "@chakra-ui/react": "^2.5.1", + "@chakra-ui/system": "^2.5.1", + "@emotion/react": "^11.10.6", + "@emotion/styled": "^11.10.6", "@next/font": "13.1.6", - "@types/node": "18.14.0", - "@types/react": "18.0.28", - "@types/react-dom": "18.0.11", + "@reduxjs/toolkit": "^1.9.3", + "@tanstack/react-query": "^4.24.10", + "axios": "^1.3.3", + "crypto": "^1.0.1", + "dayjs": "^1.11.7", "eslint": "8.34.0", "eslint-config-next": "13.1.6", + "formidable": "^2.1.1", + "framer-motion": "^9.0.6", + "hyperdown": "^2.4.29", + "immer": "^9.0.19", + "jsonwebtoken": "^9.0.0", + "mongoose": "^6.10.0", "next": "13.1.6", + "nodemailer": "^6.9.1", + "openai": "^3.2.1", "react": "18.2.0", "react-dom": "18.2.0", - "typescript": "4.9.5" + "react-hook-form": "^7.43.1", + "react-markdown": "^8.0.5", + "react-syntax-highlighter": "^15.5.0", + "remark-gfm": "^3.0.1", + "sass": "^1.58.3", + "sharp": "^0.31.3", + "tunnel": "^0.0.6", + "typescript": "4.9.5", + "uuid": "^9.0.0", + "zustand": "^4.3.5" + }, + "devDependencies": { + "@types/formidable": "^2.0.5", + "@types/jsonwebtoken": "^9.0.1", + "@types/node": "18.14.0", + "@types/nodemailer": "^6.4.7", + "@types/react": "18.0.28", + "@types/react-dom": "18.0.11", + "@types/react-syntax-highlighter": "^15.5.6", + "@types/tunnel": "^0.0.3", + "@types/uuid": "^9.0.1", + "husky": "^8.0.3", + "lint-staged": "^13.1.2", + "prettier": "^2.8.4" + }, + "lint-staged": { + "./src/**/*.{ts,tsx,scss}": "npm run format" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e2b9a1904..fe816d878 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,31 +1,1093 @@ lockfileVersion: 5.4 specifiers: + '@chakra-ui/icons': ^2.0.17 + '@chakra-ui/react': ^2.5.1 + '@chakra-ui/system': ^2.5.1 + '@emotion/react': ^11.10.6 + '@emotion/styled': ^11.10.6 '@next/font': 13.1.6 + '@reduxjs/toolkit': ^1.9.3 + '@tanstack/react-query': ^4.24.10 + '@types/formidable': ^2.0.5 + '@types/jsonwebtoken': ^9.0.1 '@types/node': 18.14.0 + '@types/nodemailer': ^6.4.7 '@types/react': 18.0.28 '@types/react-dom': 18.0.11 + '@types/react-syntax-highlighter': ^15.5.6 + '@types/tunnel': ^0.0.3 + '@types/uuid': ^9.0.1 + axios: ^1.3.3 + crypto: ^1.0.1 + dayjs: ^1.11.7 eslint: 8.34.0 eslint-config-next: 13.1.6 + formidable: ^2.1.1 + framer-motion: ^9.0.6 + husky: ^8.0.3 + hyperdown: ^2.4.29 + immer: ^9.0.19 + jsonwebtoken: ^9.0.0 + lint-staged: ^13.1.2 + mongoose: ^6.10.0 next: 13.1.6 + nodemailer: ^6.9.1 + openai: ^3.2.1 + prettier: ^2.8.4 react: 18.2.0 react-dom: 18.2.0 + react-hook-form: ^7.43.1 + react-markdown: ^8.0.5 + react-syntax-highlighter: ^15.5.0 + remark-gfm: ^3.0.1 + sass: ^1.58.3 + sharp: ^0.31.3 + tunnel: ^0.0.6 typescript: 4.9.5 + uuid: ^9.0.0 + zustand: ^4.3.5 dependencies: + '@chakra-ui/icons': registry.npmmirror.com/@chakra-ui/icons/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react': registry.npmmirror.com/@chakra-ui/react/2.5.1_e6pzu3hsaqmql4fl7jx73ckiym + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@emotion/react': registry.npmmirror.com/@emotion/react/11.10.6_pmekkgnqduwlme35zpnqhenc34 + '@emotion/styled': registry.npmmirror.com/@emotion/styled/11.10.6_oouaibmszuch5k64ms7uxp2aia '@next/font': registry.npmmirror.com/@next/font/13.1.6 - '@types/node': registry.npmmirror.com/@types/node/18.14.0 - '@types/react': registry.npmmirror.com/@types/react/18.0.28 - '@types/react-dom': registry.npmmirror.com/@types/react-dom/18.0.11 + '@reduxjs/toolkit': registry.npmmirror.com/@reduxjs/toolkit/1.9.3_react@18.2.0 + '@tanstack/react-query': registry.npmmirror.com/@tanstack/react-query/4.24.10_biqbaboplfbrettd7655fr4n2y + axios: registry.npmmirror.com/axios/1.3.3 + crypto: registry.npmmirror.com/crypto/1.0.1 + dayjs: registry.npmmirror.com/dayjs/1.11.7 eslint: registry.npmmirror.com/eslint/8.34.0 eslint-config-next: registry.npmmirror.com/eslint-config-next/13.1.6_7kw3g6rralp5ps6mg3uyzz6azm - next: registry.npmmirror.com/next/13.1.6_biqbaboplfbrettd7655fr4n2y + formidable: registry.npmmirror.com/formidable/2.1.1 + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + hyperdown: registry.npmmirror.com/hyperdown/2.4.29 + immer: registry.npmmirror.com/immer/9.0.19 + jsonwebtoken: registry.npmmirror.com/jsonwebtoken/9.0.0 + mongoose: registry.npmmirror.com/mongoose/6.10.0 + next: registry.npmmirror.com/next/13.1.6_wiv434v7erz4aedd5whhdwmpv4 + nodemailer: registry.npmmirror.com/nodemailer/6.9.1 + openai: registry.npmmirror.com/openai/3.2.1 react: registry.npmmirror.com/react/18.2.0 react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + react-hook-form: registry.npmmirror.com/react-hook-form/7.43.1_react@18.2.0 + react-markdown: registry.npmmirror.com/react-markdown/8.0.5_pmekkgnqduwlme35zpnqhenc34 + react-syntax-highlighter: registry.npmmirror.com/react-syntax-highlighter/15.5.0_react@18.2.0 + remark-gfm: registry.npmmirror.com/remark-gfm/3.0.1 + sass: registry.npmmirror.com/sass/1.58.3 + sharp: registry.npmmirror.com/sharp/0.31.3 + tunnel: registry.npmmirror.com/tunnel/0.0.6 typescript: registry.npmmirror.com/typescript/4.9.5 + uuid: registry.npmmirror.com/uuid/9.0.0 + zustand: registry.npmmirror.com/zustand/4.3.5_immer@9.0.19+react@18.2.0 + +devDependencies: + '@types/formidable': registry.npmmirror.com/@types/formidable/2.0.5 + '@types/jsonwebtoken': registry.npmmirror.com/@types/jsonwebtoken/9.0.1 + '@types/node': registry.npmmirror.com/@types/node/18.14.0 + '@types/nodemailer': registry.npmmirror.com/@types/nodemailer/6.4.7 + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + '@types/react-dom': registry.npmmirror.com/@types/react-dom/18.0.11 + '@types/react-syntax-highlighter': registry.npmmirror.com/@types/react-syntax-highlighter/15.5.6 + '@types/tunnel': registry.npmmirror.com/@types/tunnel/0.0.3 + '@types/uuid': registry.npmmirror.com/@types/uuid/9.0.1 + husky: registry.npmmirror.com/husky/8.0.3 + lint-staged: registry.npmmirror.com/lint-staged/13.1.2 + prettier: registry.npmmirror.com/prettier/2.8.4 packages: + registry.npmmirror.com/@aws-crypto/ie11-detection/3.0.0: + resolution: {integrity: sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz} + name: '@aws-crypto/ie11-detection' + version: 3.0.0 + dependencies: + tslib: registry.npmmirror.com/tslib/1.14.1 + dev: false + optional: true + + registry.npmmirror.com/@aws-crypto/sha256-browser/3.0.0: + resolution: {integrity: sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz} + name: '@aws-crypto/sha256-browser' + version: 3.0.0 + dependencies: + '@aws-crypto/ie11-detection': registry.npmmirror.com/@aws-crypto/ie11-detection/3.0.0 + '@aws-crypto/sha256-js': registry.npmmirror.com/@aws-crypto/sha256-js/3.0.0 + '@aws-crypto/supports-web-crypto': registry.npmmirror.com/@aws-crypto/supports-web-crypto/3.0.0 + '@aws-crypto/util': registry.npmmirror.com/@aws-crypto/util/3.0.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-locate-window': registry.npmmirror.com/@aws-sdk/util-locate-window/3.208.0 + '@aws-sdk/util-utf8-browser': registry.npmmirror.com/@aws-sdk/util-utf8-browser/3.259.0 + tslib: registry.npmmirror.com/tslib/1.14.1 + dev: false + optional: true + + registry.npmmirror.com/@aws-crypto/sha256-js/3.0.0: + resolution: {integrity: sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz} + name: '@aws-crypto/sha256-js' + version: 3.0.0 + dependencies: + '@aws-crypto/util': registry.npmmirror.com/@aws-crypto/util/3.0.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/1.14.1 + dev: false + optional: true + + registry.npmmirror.com/@aws-crypto/supports-web-crypto/3.0.0: + resolution: {integrity: sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz} + name: '@aws-crypto/supports-web-crypto' + version: 3.0.0 + dependencies: + tslib: registry.npmmirror.com/tslib/1.14.1 + dev: false + optional: true + + registry.npmmirror.com/@aws-crypto/util/3.0.0: + resolution: {integrity: sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-crypto/util/-/util-3.0.0.tgz} + name: '@aws-crypto/util' + version: 3.0.0 + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-utf8-browser': registry.npmmirror.com/@aws-sdk/util-utf8-browser/3.259.0 + tslib: registry.npmmirror.com/tslib/1.14.1 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/abort-controller/3.272.0: + resolution: {integrity: sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/abort-controller/-/abort-controller-3.272.0.tgz} + name: '@aws-sdk/abort-controller' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/client-cognito-identity/3.278.0: + resolution: {integrity: sha512-YqHJwKKkV0Uodr647k83D8MVqNnFLm/Lgj5DMQOaCxylEsJC37lS2PveHe/EVWLbwQH6KRsn/85cZm0DPzDAXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.278.0.tgz} + name: '@aws-sdk/client-cognito-identity' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': registry.npmmirror.com/@aws-crypto/sha256-browser/3.0.0 + '@aws-crypto/sha256-js': registry.npmmirror.com/@aws-crypto/sha256-js/3.0.0 + '@aws-sdk/client-sts': registry.npmmirror.com/@aws-sdk/client-sts/3.278.0 + '@aws-sdk/config-resolver': registry.npmmirror.com/@aws-sdk/config-resolver/3.272.0 + '@aws-sdk/credential-provider-node': registry.npmmirror.com/@aws-sdk/credential-provider-node/3.278.0 + '@aws-sdk/fetch-http-handler': registry.npmmirror.com/@aws-sdk/fetch-http-handler/3.272.0 + '@aws-sdk/hash-node': registry.npmmirror.com/@aws-sdk/hash-node/3.272.0 + '@aws-sdk/invalid-dependency': registry.npmmirror.com/@aws-sdk/invalid-dependency/3.272.0 + '@aws-sdk/middleware-content-length': registry.npmmirror.com/@aws-sdk/middleware-content-length/3.272.0 + '@aws-sdk/middleware-endpoint': registry.npmmirror.com/@aws-sdk/middleware-endpoint/3.272.0 + '@aws-sdk/middleware-host-header': registry.npmmirror.com/@aws-sdk/middleware-host-header/3.278.0 + '@aws-sdk/middleware-logger': registry.npmmirror.com/@aws-sdk/middleware-logger/3.272.0 + '@aws-sdk/middleware-recursion-detection': registry.npmmirror.com/@aws-sdk/middleware-recursion-detection/3.272.0 + '@aws-sdk/middleware-retry': registry.npmmirror.com/@aws-sdk/middleware-retry/3.272.0 + '@aws-sdk/middleware-serde': registry.npmmirror.com/@aws-sdk/middleware-serde/3.272.0 + '@aws-sdk/middleware-signing': registry.npmmirror.com/@aws-sdk/middleware-signing/3.272.0 + '@aws-sdk/middleware-stack': registry.npmmirror.com/@aws-sdk/middleware-stack/3.272.0 + '@aws-sdk/middleware-user-agent': registry.npmmirror.com/@aws-sdk/middleware-user-agent/3.272.0 + '@aws-sdk/node-config-provider': registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0 + '@aws-sdk/node-http-handler': registry.npmmirror.com/@aws-sdk/node-http-handler/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/smithy-client': registry.npmmirror.com/@aws-sdk/smithy-client/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/url-parser': registry.npmmirror.com/@aws-sdk/url-parser/3.272.0 + '@aws-sdk/util-base64': registry.npmmirror.com/@aws-sdk/util-base64/3.208.0 + '@aws-sdk/util-body-length-browser': registry.npmmirror.com/@aws-sdk/util-body-length-browser/3.188.0 + '@aws-sdk/util-body-length-node': registry.npmmirror.com/@aws-sdk/util-body-length-node/3.208.0 + '@aws-sdk/util-defaults-mode-browser': registry.npmmirror.com/@aws-sdk/util-defaults-mode-browser/3.272.0 + '@aws-sdk/util-defaults-mode-node': registry.npmmirror.com/@aws-sdk/util-defaults-mode-node/3.272.0 + '@aws-sdk/util-endpoints': registry.npmmirror.com/@aws-sdk/util-endpoints/3.272.0 + '@aws-sdk/util-retry': registry.npmmirror.com/@aws-sdk/util-retry/3.272.0 + '@aws-sdk/util-user-agent-browser': registry.npmmirror.com/@aws-sdk/util-user-agent-browser/3.272.0 + '@aws-sdk/util-user-agent-node': registry.npmmirror.com/@aws-sdk/util-user-agent-node/3.272.0 + '@aws-sdk/util-utf8': registry.npmmirror.com/@aws-sdk/util-utf8/3.254.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/client-sso-oidc/3.278.0: + resolution: {integrity: sha512-9vLyk1xbSK97j0crumCcHpPPppkAmEC2GnJmzQ2CW1SARuUU9ybE4wOIzWW0AQgVcY5mckJewEE23BGmo9L+6A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.278.0.tgz} + name: '@aws-sdk/client-sso-oidc' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': registry.npmmirror.com/@aws-crypto/sha256-browser/3.0.0 + '@aws-crypto/sha256-js': registry.npmmirror.com/@aws-crypto/sha256-js/3.0.0 + '@aws-sdk/config-resolver': registry.npmmirror.com/@aws-sdk/config-resolver/3.272.0 + '@aws-sdk/fetch-http-handler': registry.npmmirror.com/@aws-sdk/fetch-http-handler/3.272.0 + '@aws-sdk/hash-node': registry.npmmirror.com/@aws-sdk/hash-node/3.272.0 + '@aws-sdk/invalid-dependency': registry.npmmirror.com/@aws-sdk/invalid-dependency/3.272.0 + '@aws-sdk/middleware-content-length': registry.npmmirror.com/@aws-sdk/middleware-content-length/3.272.0 + '@aws-sdk/middleware-endpoint': registry.npmmirror.com/@aws-sdk/middleware-endpoint/3.272.0 + '@aws-sdk/middleware-host-header': registry.npmmirror.com/@aws-sdk/middleware-host-header/3.278.0 + '@aws-sdk/middleware-logger': registry.npmmirror.com/@aws-sdk/middleware-logger/3.272.0 + '@aws-sdk/middleware-recursion-detection': registry.npmmirror.com/@aws-sdk/middleware-recursion-detection/3.272.0 + '@aws-sdk/middleware-retry': registry.npmmirror.com/@aws-sdk/middleware-retry/3.272.0 + '@aws-sdk/middleware-serde': registry.npmmirror.com/@aws-sdk/middleware-serde/3.272.0 + '@aws-sdk/middleware-stack': registry.npmmirror.com/@aws-sdk/middleware-stack/3.272.0 + '@aws-sdk/middleware-user-agent': registry.npmmirror.com/@aws-sdk/middleware-user-agent/3.272.0 + '@aws-sdk/node-config-provider': registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0 + '@aws-sdk/node-http-handler': registry.npmmirror.com/@aws-sdk/node-http-handler/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/smithy-client': registry.npmmirror.com/@aws-sdk/smithy-client/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/url-parser': registry.npmmirror.com/@aws-sdk/url-parser/3.272.0 + '@aws-sdk/util-base64': registry.npmmirror.com/@aws-sdk/util-base64/3.208.0 + '@aws-sdk/util-body-length-browser': registry.npmmirror.com/@aws-sdk/util-body-length-browser/3.188.0 + '@aws-sdk/util-body-length-node': registry.npmmirror.com/@aws-sdk/util-body-length-node/3.208.0 + '@aws-sdk/util-defaults-mode-browser': registry.npmmirror.com/@aws-sdk/util-defaults-mode-browser/3.272.0 + '@aws-sdk/util-defaults-mode-node': registry.npmmirror.com/@aws-sdk/util-defaults-mode-node/3.272.0 + '@aws-sdk/util-endpoints': registry.npmmirror.com/@aws-sdk/util-endpoints/3.272.0 + '@aws-sdk/util-retry': registry.npmmirror.com/@aws-sdk/util-retry/3.272.0 + '@aws-sdk/util-user-agent-browser': registry.npmmirror.com/@aws-sdk/util-user-agent-browser/3.272.0 + '@aws-sdk/util-user-agent-node': registry.npmmirror.com/@aws-sdk/util-user-agent-node/3.272.0 + '@aws-sdk/util-utf8': registry.npmmirror.com/@aws-sdk/util-utf8/3.254.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/client-sso/3.278.0: + resolution: {integrity: sha512-BrbarXxb2KFnZR/nlvdI6r2d6wPeFMWfYX3gtSpt5WFDPxb3LyH2piM6aKLkcEL9QVhgZTFhXf7766n2tMjyjA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/client-sso/-/client-sso-3.278.0.tgz} + name: '@aws-sdk/client-sso' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': registry.npmmirror.com/@aws-crypto/sha256-browser/3.0.0 + '@aws-crypto/sha256-js': registry.npmmirror.com/@aws-crypto/sha256-js/3.0.0 + '@aws-sdk/config-resolver': registry.npmmirror.com/@aws-sdk/config-resolver/3.272.0 + '@aws-sdk/fetch-http-handler': registry.npmmirror.com/@aws-sdk/fetch-http-handler/3.272.0 + '@aws-sdk/hash-node': registry.npmmirror.com/@aws-sdk/hash-node/3.272.0 + '@aws-sdk/invalid-dependency': registry.npmmirror.com/@aws-sdk/invalid-dependency/3.272.0 + '@aws-sdk/middleware-content-length': registry.npmmirror.com/@aws-sdk/middleware-content-length/3.272.0 + '@aws-sdk/middleware-endpoint': registry.npmmirror.com/@aws-sdk/middleware-endpoint/3.272.0 + '@aws-sdk/middleware-host-header': registry.npmmirror.com/@aws-sdk/middleware-host-header/3.278.0 + '@aws-sdk/middleware-logger': registry.npmmirror.com/@aws-sdk/middleware-logger/3.272.0 + '@aws-sdk/middleware-recursion-detection': registry.npmmirror.com/@aws-sdk/middleware-recursion-detection/3.272.0 + '@aws-sdk/middleware-retry': registry.npmmirror.com/@aws-sdk/middleware-retry/3.272.0 + '@aws-sdk/middleware-serde': registry.npmmirror.com/@aws-sdk/middleware-serde/3.272.0 + '@aws-sdk/middleware-stack': registry.npmmirror.com/@aws-sdk/middleware-stack/3.272.0 + '@aws-sdk/middleware-user-agent': registry.npmmirror.com/@aws-sdk/middleware-user-agent/3.272.0 + '@aws-sdk/node-config-provider': registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0 + '@aws-sdk/node-http-handler': registry.npmmirror.com/@aws-sdk/node-http-handler/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/smithy-client': registry.npmmirror.com/@aws-sdk/smithy-client/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/url-parser': registry.npmmirror.com/@aws-sdk/url-parser/3.272.0 + '@aws-sdk/util-base64': registry.npmmirror.com/@aws-sdk/util-base64/3.208.0 + '@aws-sdk/util-body-length-browser': registry.npmmirror.com/@aws-sdk/util-body-length-browser/3.188.0 + '@aws-sdk/util-body-length-node': registry.npmmirror.com/@aws-sdk/util-body-length-node/3.208.0 + '@aws-sdk/util-defaults-mode-browser': registry.npmmirror.com/@aws-sdk/util-defaults-mode-browser/3.272.0 + '@aws-sdk/util-defaults-mode-node': registry.npmmirror.com/@aws-sdk/util-defaults-mode-node/3.272.0 + '@aws-sdk/util-endpoints': registry.npmmirror.com/@aws-sdk/util-endpoints/3.272.0 + '@aws-sdk/util-retry': registry.npmmirror.com/@aws-sdk/util-retry/3.272.0 + '@aws-sdk/util-user-agent-browser': registry.npmmirror.com/@aws-sdk/util-user-agent-browser/3.272.0 + '@aws-sdk/util-user-agent-node': registry.npmmirror.com/@aws-sdk/util-user-agent-node/3.272.0 + '@aws-sdk/util-utf8': registry.npmmirror.com/@aws-sdk/util-utf8/3.254.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/client-sts/3.278.0: + resolution: {integrity: sha512-gYuaJxZG2Qjkfo8nnY65OfEP0Z0Iwzav5rLHVVQfKszBmbY9S/OTzODvM2NnK7fBJRk2QYSGEiob6VQXXhiAjA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/client-sts/-/client-sts-3.278.0.tgz} + name: '@aws-sdk/client-sts' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': registry.npmmirror.com/@aws-crypto/sha256-browser/3.0.0 + '@aws-crypto/sha256-js': registry.npmmirror.com/@aws-crypto/sha256-js/3.0.0 + '@aws-sdk/config-resolver': registry.npmmirror.com/@aws-sdk/config-resolver/3.272.0 + '@aws-sdk/credential-provider-node': registry.npmmirror.com/@aws-sdk/credential-provider-node/3.278.0 + '@aws-sdk/fetch-http-handler': registry.npmmirror.com/@aws-sdk/fetch-http-handler/3.272.0 + '@aws-sdk/hash-node': registry.npmmirror.com/@aws-sdk/hash-node/3.272.0 + '@aws-sdk/invalid-dependency': registry.npmmirror.com/@aws-sdk/invalid-dependency/3.272.0 + '@aws-sdk/middleware-content-length': registry.npmmirror.com/@aws-sdk/middleware-content-length/3.272.0 + '@aws-sdk/middleware-endpoint': registry.npmmirror.com/@aws-sdk/middleware-endpoint/3.272.0 + '@aws-sdk/middleware-host-header': registry.npmmirror.com/@aws-sdk/middleware-host-header/3.278.0 + '@aws-sdk/middleware-logger': registry.npmmirror.com/@aws-sdk/middleware-logger/3.272.0 + '@aws-sdk/middleware-recursion-detection': registry.npmmirror.com/@aws-sdk/middleware-recursion-detection/3.272.0 + '@aws-sdk/middleware-retry': registry.npmmirror.com/@aws-sdk/middleware-retry/3.272.0 + '@aws-sdk/middleware-sdk-sts': registry.npmmirror.com/@aws-sdk/middleware-sdk-sts/3.272.0 + '@aws-sdk/middleware-serde': registry.npmmirror.com/@aws-sdk/middleware-serde/3.272.0 + '@aws-sdk/middleware-signing': registry.npmmirror.com/@aws-sdk/middleware-signing/3.272.0 + '@aws-sdk/middleware-stack': registry.npmmirror.com/@aws-sdk/middleware-stack/3.272.0 + '@aws-sdk/middleware-user-agent': registry.npmmirror.com/@aws-sdk/middleware-user-agent/3.272.0 + '@aws-sdk/node-config-provider': registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0 + '@aws-sdk/node-http-handler': registry.npmmirror.com/@aws-sdk/node-http-handler/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/smithy-client': registry.npmmirror.com/@aws-sdk/smithy-client/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/url-parser': registry.npmmirror.com/@aws-sdk/url-parser/3.272.0 + '@aws-sdk/util-base64': registry.npmmirror.com/@aws-sdk/util-base64/3.208.0 + '@aws-sdk/util-body-length-browser': registry.npmmirror.com/@aws-sdk/util-body-length-browser/3.188.0 + '@aws-sdk/util-body-length-node': registry.npmmirror.com/@aws-sdk/util-body-length-node/3.208.0 + '@aws-sdk/util-defaults-mode-browser': registry.npmmirror.com/@aws-sdk/util-defaults-mode-browser/3.272.0 + '@aws-sdk/util-defaults-mode-node': registry.npmmirror.com/@aws-sdk/util-defaults-mode-node/3.272.0 + '@aws-sdk/util-endpoints': registry.npmmirror.com/@aws-sdk/util-endpoints/3.272.0 + '@aws-sdk/util-retry': registry.npmmirror.com/@aws-sdk/util-retry/3.272.0 + '@aws-sdk/util-user-agent-browser': registry.npmmirror.com/@aws-sdk/util-user-agent-browser/3.272.0 + '@aws-sdk/util-user-agent-node': registry.npmmirror.com/@aws-sdk/util-user-agent-node/3.272.0 + '@aws-sdk/util-utf8': registry.npmmirror.com/@aws-sdk/util-utf8/3.254.0 + fast-xml-parser: registry.npmmirror.com/fast-xml-parser/4.1.2 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/config-resolver/3.272.0: + resolution: {integrity: sha512-Dr4CffRVNsOp3LRNdpvcH6XuSgXOSLblWliCy/5I86cNl567KVMxujVx6uPrdTXYs2h1rt3MNl6jQGnAiJeTbw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/config-resolver/-/config-resolver-3.272.0.tgz} + name: '@aws-sdk/config-resolver' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/signature-v4': registry.npmmirror.com/@aws-sdk/signature-v4/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-config-provider': registry.npmmirror.com/@aws-sdk/util-config-provider/3.208.0 + '@aws-sdk/util-middleware': registry.npmmirror.com/@aws-sdk/util-middleware/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-cognito-identity/3.278.0: + resolution: {integrity: sha512-ykWufGr3u1nZPGAYGrlp0Z3Q7uBgBUt3DfiItkndLuFvZmrNYyZtT8LrTHGmeQ55GMG8m7QMkXgONSzz/w2JsQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.278.0.tgz} + name: '@aws-sdk/credential-provider-cognito-identity' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/client-cognito-identity': registry.npmmirror.com/@aws-sdk/client-cognito-identity/3.278.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-env/3.272.0: + resolution: {integrity: sha512-QI65NbLnKLYHyTYhXaaUrq6eVsCCrMUb05WDA7+TJkWkjXesovpjc8vUKgFiLSxmgKmb2uOhHNcDyObKMrYQFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.272.0.tgz} + name: '@aws-sdk/credential-provider-env' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-imds/3.272.0: + resolution: {integrity: sha512-wwAfVY1jTFQEfxVfdYD5r5ieYGl+0g4nhekVxNMqE8E1JeRDd18OqiwAflzpgBIqxfqvCUkf+vl5JYyacMkNAQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.272.0.tgz} + name: '@aws-sdk/credential-provider-imds' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/node-config-provider': registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/url-parser': registry.npmmirror.com/@aws-sdk/url-parser/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-ini/3.278.0: + resolution: {integrity: sha512-S0JaPwgiMrLcdDRKjh7Lg0rLnDOHyxRHBQMGP7v4UKvzFt67L7H4fx8Nnj2qwLCndMXOsIo8lyfVkLccj4Ucww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.278.0.tgz} + name: '@aws-sdk/credential-provider-ini' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/credential-provider-env': registry.npmmirror.com/@aws-sdk/credential-provider-env/3.272.0 + '@aws-sdk/credential-provider-imds': registry.npmmirror.com/@aws-sdk/credential-provider-imds/3.272.0 + '@aws-sdk/credential-provider-process': registry.npmmirror.com/@aws-sdk/credential-provider-process/3.272.0 + '@aws-sdk/credential-provider-sso': registry.npmmirror.com/@aws-sdk/credential-provider-sso/3.278.0 + '@aws-sdk/credential-provider-web-identity': registry.npmmirror.com/@aws-sdk/credential-provider-web-identity/3.272.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/shared-ini-file-loader': registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-node/3.278.0: + resolution: {integrity: sha512-MxGApXv0McA5CE5Rh51HYMF24TEAa6MSPI5PkU4lGBfLzXJIrQU0zIueTiwkI2+MZTM5slStkgSEq/ps81RiXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.278.0.tgz} + name: '@aws-sdk/credential-provider-node' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/credential-provider-env': registry.npmmirror.com/@aws-sdk/credential-provider-env/3.272.0 + '@aws-sdk/credential-provider-imds': registry.npmmirror.com/@aws-sdk/credential-provider-imds/3.272.0 + '@aws-sdk/credential-provider-ini': registry.npmmirror.com/@aws-sdk/credential-provider-ini/3.278.0 + '@aws-sdk/credential-provider-process': registry.npmmirror.com/@aws-sdk/credential-provider-process/3.272.0 + '@aws-sdk/credential-provider-sso': registry.npmmirror.com/@aws-sdk/credential-provider-sso/3.278.0 + '@aws-sdk/credential-provider-web-identity': registry.npmmirror.com/@aws-sdk/credential-provider-web-identity/3.272.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/shared-ini-file-loader': registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-process/3.272.0: + resolution: {integrity: sha512-hiCAjWWm2PeBFp5cjkxqyam/XADjiS+e7GzwC34TbZn3LisS0uoweLojj9tD11NnnUhyhbLteUvu5+rotOLwrg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.272.0.tgz} + name: '@aws-sdk/credential-provider-process' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/shared-ini-file-loader': registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-sso/3.278.0: + resolution: {integrity: sha512-vhNm1cgA/WIpYTGKt7tIU1dmAznxaa1G8X74k5IoDo/BO/yn4TcddZdCvrey1w6eou3Iyn95n8guy519zun/FA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.278.0.tgz} + name: '@aws-sdk/credential-provider-sso' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/client-sso': registry.npmmirror.com/@aws-sdk/client-sso/3.278.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/shared-ini-file-loader': registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0 + '@aws-sdk/token-providers': registry.npmmirror.com/@aws-sdk/token-providers/3.278.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-provider-web-identity/3.272.0: + resolution: {integrity: sha512-ImrHMkcgneGa/HadHAQXPwOrX26sAKuB8qlMxZF/ZCM2B55u8deY+ZVkVuraeKb7YsahMGehPFOfRAF6mvFI5Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.272.0.tgz} + name: '@aws-sdk/credential-provider-web-identity' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/credential-providers/3.278.0: + resolution: {integrity: sha512-XeCyXru9+gxePvrnPbdITZLSCC5qg3C/hgdItstDEvrQh+vMw9DJvX5ztoKh987C0puwkbB6HENC04ZTh/0Buw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-providers/-/credential-providers-3.278.0.tgz} + name: '@aws-sdk/credential-providers' + version: 3.278.0 + engines: {node: '>=14.0.0'} + requiresBuild: true + dependencies: + '@aws-sdk/client-cognito-identity': registry.npmmirror.com/@aws-sdk/client-cognito-identity/3.278.0 + '@aws-sdk/client-sso': registry.npmmirror.com/@aws-sdk/client-sso/3.278.0 + '@aws-sdk/client-sts': registry.npmmirror.com/@aws-sdk/client-sts/3.278.0 + '@aws-sdk/credential-provider-cognito-identity': registry.npmmirror.com/@aws-sdk/credential-provider-cognito-identity/3.278.0 + '@aws-sdk/credential-provider-env': registry.npmmirror.com/@aws-sdk/credential-provider-env/3.272.0 + '@aws-sdk/credential-provider-imds': registry.npmmirror.com/@aws-sdk/credential-provider-imds/3.272.0 + '@aws-sdk/credential-provider-ini': registry.npmmirror.com/@aws-sdk/credential-provider-ini/3.278.0 + '@aws-sdk/credential-provider-node': registry.npmmirror.com/@aws-sdk/credential-provider-node/3.278.0 + '@aws-sdk/credential-provider-process': registry.npmmirror.com/@aws-sdk/credential-provider-process/3.272.0 + '@aws-sdk/credential-provider-sso': registry.npmmirror.com/@aws-sdk/credential-provider-sso/3.278.0 + '@aws-sdk/credential-provider-web-identity': registry.npmmirror.com/@aws-sdk/credential-provider-web-identity/3.272.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/shared-ini-file-loader': registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/fetch-http-handler/3.272.0: + resolution: {integrity: sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.272.0.tgz} + name: '@aws-sdk/fetch-http-handler' + version: 3.272.0 + dependencies: + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/querystring-builder': registry.npmmirror.com/@aws-sdk/querystring-builder/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-base64': registry.npmmirror.com/@aws-sdk/util-base64/3.208.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/hash-node/3.272.0: + resolution: {integrity: sha512-40dwND+iAm3VtPHPZu7/+CIdVJFk2s0cWZt1lOiMPMSXycSYJ45wMk7Lly3uoqRx0uWfFK5iT2OCv+fJi5jTng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/hash-node/-/hash-node-3.272.0.tgz} + name: '@aws-sdk/hash-node' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-buffer-from': registry.npmmirror.com/@aws-sdk/util-buffer-from/3.208.0 + '@aws-sdk/util-utf8': registry.npmmirror.com/@aws-sdk/util-utf8/3.254.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/invalid-dependency/3.272.0: + resolution: {integrity: sha512-ysW6wbjl1Y78txHUQ/Tldj2Rg1BI7rpMO9B9xAF6yAX3mQ7t6SUPQG/ewOGvH2208NBIl3qP5e/hDf0Q6r/1iw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/invalid-dependency/-/invalid-dependency-3.272.0.tgz} + name: '@aws-sdk/invalid-dependency' + version: 3.272.0 + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/is-array-buffer/3.201.0: + resolution: {integrity: sha512-UPez5qLh3dNgt0DYnPD/q0mVJY84rA17QE26hVNOW3fAji8W2wrwrxdacWOxyXvlxWsVRcKmr+lay1MDqpAMfg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/is-array-buffer/-/is-array-buffer-3.201.0.tgz} + name: '@aws-sdk/is-array-buffer' + version: 3.201.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-content-length/3.272.0: + resolution: {integrity: sha512-sAbDZSTNmLX+UTGwlUHJBWy0QGQkiClpHwVFXACon+aG0ySLNeRKEVYs6NCPYldw4cj6hveLUn50cX44ukHErw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-content-length/-/middleware-content-length-3.272.0.tgz} + name: '@aws-sdk/middleware-content-length' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-endpoint/3.272.0: + resolution: {integrity: sha512-Dk3JVjj7SxxoUKv3xGiOeBksvPtFhTDrVW75XJ98Ymv8gJH5L1sq4hIeJAHRKogGiRFq2J73mnZSlM9FVXEylg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.272.0.tgz} + name: '@aws-sdk/middleware-endpoint' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/middleware-serde': registry.npmmirror.com/@aws-sdk/middleware-serde/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/signature-v4': registry.npmmirror.com/@aws-sdk/signature-v4/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/url-parser': registry.npmmirror.com/@aws-sdk/url-parser/3.272.0 + '@aws-sdk/util-config-provider': registry.npmmirror.com/@aws-sdk/util-config-provider/3.208.0 + '@aws-sdk/util-middleware': registry.npmmirror.com/@aws-sdk/util-middleware/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-host-header/3.278.0: + resolution: {integrity: sha512-oTkF3exy89KE8NgSeXFwD+0H0GRKL2qUw92t3caEj7+4KzU/0m3t7NtKlq2NLRtTJhZ/izYRpV536oogLzGm3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.278.0.tgz} + name: '@aws-sdk/middleware-host-header' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-logger/3.272.0: + resolution: {integrity: sha512-u2SQ0hWrFwxbxxYMG5uMEgf01pQY5jauK/LYWgGIvuCmFgiyRQQP3oN7kkmsxnS9MWmNmhbyQguX2NY02s5e9w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-logger/-/middleware-logger-3.272.0.tgz} + name: '@aws-sdk/middleware-logger' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-recursion-detection/3.272.0: + resolution: {integrity: sha512-Gp/eKWeUWVNiiBdmUM2qLkBv+VLSJKoWAO+aKmyxxwjjmWhE0FrfA1NQ1a3g+NGMhRbAfQdaYswRAKsul70ISg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.272.0.tgz} + name: '@aws-sdk/middleware-recursion-detection' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-retry/3.272.0: + resolution: {integrity: sha512-pCGvHM7C76VbO/dFerH+Vwf7tGv7j+e+eGrvhQ35mRghCtfIou/WMfTZlD1TNee93crrAQQVZKjtW3dMB3WCzg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-retry/-/middleware-retry-3.272.0.tgz} + name: '@aws-sdk/middleware-retry' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/service-error-classification': registry.npmmirror.com/@aws-sdk/service-error-classification/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-middleware': registry.npmmirror.com/@aws-sdk/util-middleware/3.272.0 + '@aws-sdk/util-retry': registry.npmmirror.com/@aws-sdk/util-retry/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + uuid: registry.npmmirror.com/uuid/8.3.2 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-sdk-sts/3.272.0: + resolution: {integrity: sha512-VvYPg7LrDIjUOWueSzo2wBzcNG7dw+cmzV6zAKaLxf0RC5jeAP4hE0OzDiiZfDrjNghEzgq/V+0NO+LewqYL9Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.272.0.tgz} + name: '@aws-sdk/middleware-sdk-sts' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/middleware-signing': registry.npmmirror.com/@aws-sdk/middleware-signing/3.272.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/signature-v4': registry.npmmirror.com/@aws-sdk/signature-v4/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-serde/3.272.0: + resolution: {integrity: sha512-kW1uOxgPSwtXPB5rm3QLdWomu42lkYpQL94tM1BjyFOWmBLO2lQhk5a7Dw6HkTozT9a+vxtscLChRa6KZe61Hw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-serde/-/middleware-serde-3.272.0.tgz} + name: '@aws-sdk/middleware-serde' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-signing/3.272.0: + resolution: {integrity: sha512-4LChFK4VAR91X+dupqM8fQqYhFGE0G4Bf9rQlVTgGSbi2KUOmpqXzH0/WKE228nKuEhmH8+Qd2VPSAE2JcyAUA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-signing/-/middleware-signing-3.272.0.tgz} + name: '@aws-sdk/middleware-signing' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/signature-v4': registry.npmmirror.com/@aws-sdk/signature-v4/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-middleware': registry.npmmirror.com/@aws-sdk/util-middleware/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-stack/3.272.0: + resolution: {integrity: sha512-jhwhknnPBGhfXAGV5GXUWfEhDFoP/DN8MPCO2yC5OAxyp6oVJ8lTPLkZYMTW5VL0c0eG44dXpF4Ib01V+PlDrQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-stack/-/middleware-stack-3.272.0.tgz} + name: '@aws-sdk/middleware-stack' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/middleware-user-agent/3.272.0: + resolution: {integrity: sha512-Qy7/0fsDJxY5l0bEk7WKDfqb4Os/sCAgFR2zEvrhDtbkhYPf72ysvg/nRUTncmCbo8tOok4SJii2myk8KMfjjw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.272.0.tgz} + name: '@aws-sdk/middleware-user-agent' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0: + resolution: {integrity: sha512-YYCIBh9g1EQo7hm2l22HX5Yr9RoPQ2RCvhzKvF1n1e8t1QH4iObQrYUtqHG4khcm64Cft8C5MwZmgzHbya5Z6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/node-config-provider/-/node-config-provider-3.272.0.tgz} + name: '@aws-sdk/node-config-provider' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/shared-ini-file-loader': registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/node-http-handler/3.272.0: + resolution: {integrity: sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/node-http-handler/-/node-http-handler-3.272.0.tgz} + name: '@aws-sdk/node-http-handler' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/abort-controller': registry.npmmirror.com/@aws-sdk/abort-controller/3.272.0 + '@aws-sdk/protocol-http': registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0 + '@aws-sdk/querystring-builder': registry.npmmirror.com/@aws-sdk/querystring-builder/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/property-provider/3.272.0: + resolution: {integrity: sha512-V1pZTaH5eqpAt8O8CzbItHhOtzIfFuWymvwZFkAtwKuaHpnl7jjrTouV482zoq8AD/fF+VVSshwBKYA7bhidIw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/property-provider/-/property-provider-3.272.0.tgz} + name: '@aws-sdk/property-provider' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/protocol-http/3.272.0: + resolution: {integrity: sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz} + name: '@aws-sdk/protocol-http' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/querystring-builder/3.272.0: + resolution: {integrity: sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz} + name: '@aws-sdk/querystring-builder' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-uri-escape': registry.npmmirror.com/@aws-sdk/util-uri-escape/3.201.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/querystring-parser/3.272.0: + resolution: {integrity: sha512-5oS4/9n6N1LZW9tI3qq/0GnCuWoOXRgcHVB+AJLRBvDbEe+GI+C/xK1tKLsfpDNgsQJHc4IPQoIt4megyZ/1+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/querystring-parser/-/querystring-parser-3.272.0.tgz} + name: '@aws-sdk/querystring-parser' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/service-error-classification/3.272.0: + resolution: {integrity: sha512-REoltM1LK9byyIufLqx9znhSolPcHQgVHIA2S0zu5sdt5qER4OubkLAXuo4MBbisUTmh8VOOvIyUb5ijZCXq1w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/service-error-classification/-/service-error-classification-3.272.0.tgz} + name: '@aws-sdk/service-error-classification' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0: + resolution: {integrity: sha512-lzFPohp5sy2XvwFjZIzLVCRpC0i5cwBiaXmFzXYQZJm6FSCszHO4ax+m9yrtlyVFF/2YPWl+/bzNthy4aJtseA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.272.0.tgz} + name: '@aws-sdk/shared-ini-file-loader' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/signature-v4/3.272.0: + resolution: {integrity: sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/signature-v4/-/signature-v4-3.272.0.tgz} + name: '@aws-sdk/signature-v4' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/is-array-buffer': registry.npmmirror.com/@aws-sdk/is-array-buffer/3.201.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + '@aws-sdk/util-hex-encoding': registry.npmmirror.com/@aws-sdk/util-hex-encoding/3.201.0 + '@aws-sdk/util-middleware': registry.npmmirror.com/@aws-sdk/util-middleware/3.272.0 + '@aws-sdk/util-uri-escape': registry.npmmirror.com/@aws-sdk/util-uri-escape/3.201.0 + '@aws-sdk/util-utf8': registry.npmmirror.com/@aws-sdk/util-utf8/3.254.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/smithy-client/3.272.0: + resolution: {integrity: sha512-pvdleJ3kaRvyRw2pIZnqL85ZlWBOZrPKmR9I69GCvlyrfdjRBhbSjIEZ+sdhZudw0vdHxq25AGoLUXhofVLf5Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/smithy-client/-/smithy-client-3.272.0.tgz} + name: '@aws-sdk/smithy-client' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/middleware-stack': registry.npmmirror.com/@aws-sdk/middleware-stack/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/token-providers/3.278.0: + resolution: {integrity: sha512-OgDLPnwRZ+yk1tssrYMDiApMc+E0n9qSmbVa5etRfCkXQSrFx/4LCqvW2g4XfDufHpVdXiedoRUV97SvklzDLg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/token-providers/-/token-providers-3.278.0.tgz} + name: '@aws-sdk/token-providers' + version: 3.278.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/client-sso-oidc': registry.npmmirror.com/@aws-sdk/client-sso-oidc/3.278.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/shared-ini-file-loader': registry.npmmirror.com/@aws-sdk/shared-ini-file-loader/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + transitivePeerDependencies: + - aws-crt + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/types/3.272.0: + resolution: {integrity: sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/types/-/types-3.272.0.tgz} + name: '@aws-sdk/types' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/url-parser/3.272.0: + resolution: {integrity: sha512-vX/Tx02PlnQ/Kgtf5TnrNDHPNbY+amLZjW0Z1d9vzAvSZhQ4i9Y18yxoRDIaDTCNVRDjdhV8iuctW+05PB5JtQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/url-parser/-/url-parser-3.272.0.tgz} + name: '@aws-sdk/url-parser' + version: 3.272.0 + dependencies: + '@aws-sdk/querystring-parser': registry.npmmirror.com/@aws-sdk/querystring-parser/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-base64/3.208.0: + resolution: {integrity: sha512-PQniZph5A6N7uuEOQi+1hnMz/FSOK/8kMFyFO+4DgA1dZ5pcKcn5wiFwHkcTb/BsgVqQa3Jx0VHNnvhlS8JyTg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-base64/-/util-base64-3.208.0.tgz} + name: '@aws-sdk/util-base64' + version: 3.208.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/util-buffer-from': registry.npmmirror.com/@aws-sdk/util-buffer-from/3.208.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-body-length-browser/3.188.0: + resolution: {integrity: sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.188.0.tgz} + name: '@aws-sdk/util-body-length-browser' + version: 3.188.0 + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-body-length-node/3.208.0: + resolution: {integrity: sha512-3zj50e5g7t/MQf53SsuuSf0hEELzMtD8RX8C76f12OSRo2Bca4FLLYHe0TZbxcfQHom8/hOaeZEyTyMogMglqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-body-length-node/-/util-body-length-node-3.208.0.tgz} + name: '@aws-sdk/util-body-length-node' + version: 3.208.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-buffer-from/3.208.0: + resolution: {integrity: sha512-7L0XUixNEFcLUGPeBF35enCvB9Xl+K6SQsmbrPk1P3mlV9mguWSDQqbOBwY1Ir0OVbD6H/ZOQU7hI/9RtRI0Zw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-buffer-from/-/util-buffer-from-3.208.0.tgz} + name: '@aws-sdk/util-buffer-from' + version: 3.208.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/is-array-buffer': registry.npmmirror.com/@aws-sdk/is-array-buffer/3.201.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-config-provider/3.208.0: + resolution: {integrity: sha512-DSRqwrERUsT34ug+anlMBIFooBEGwM8GejC7q00Y/9IPrQy50KnG5PW2NiTjuLKNi7pdEOlwTSEocJE15eDZIg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-config-provider/-/util-config-provider-3.208.0.tgz} + name: '@aws-sdk/util-config-provider' + version: 3.208.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-defaults-mode-browser/3.272.0: + resolution: {integrity: sha512-W8ZVJSZRuUBg8l0JEZzUc+9fKlthVp/cdE+pFeF8ArhZelOLCiaeCrMaZAeJusaFzIpa6cmOYQAjtSMVyrwRtg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.272.0.tgz} + name: '@aws-sdk/util-defaults-mode-browser' + version: 3.272.0 + engines: {node: '>= 10.0.0'} + dependencies: + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + bowser: registry.npmmirror.com/bowser/2.11.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-defaults-mode-node/3.272.0: + resolution: {integrity: sha512-U0NTcbMw6KFk7uz/avBmfxQSTREEiX6JDMH68oN/3ux4AICd2I4jHyxnloSWGuiER1FxZf1dEJ8ZTwy8Ibl21Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.272.0.tgz} + name: '@aws-sdk/util-defaults-mode-node' + version: 3.272.0 + engines: {node: '>= 10.0.0'} + dependencies: + '@aws-sdk/config-resolver': registry.npmmirror.com/@aws-sdk/config-resolver/3.272.0 + '@aws-sdk/credential-provider-imds': registry.npmmirror.com/@aws-sdk/credential-provider-imds/3.272.0 + '@aws-sdk/node-config-provider': registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0 + '@aws-sdk/property-provider': registry.npmmirror.com/@aws-sdk/property-provider/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-endpoints/3.272.0: + resolution: {integrity: sha512-c4MPUaJt2G6gGpoiwIOqDfUa98c1J63RpYvf/spQEKOtC/tF5Gfqlxuq8FnAl5lHnrqj1B9ZXLLxFhHtDR0IiQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-endpoints/-/util-endpoints-3.272.0.tgz} + name: '@aws-sdk/util-endpoints' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-hex-encoding/3.201.0: + resolution: {integrity: sha512-7t1vR1pVxKx0motd3X9rI3m/xNp78p3sHtP5yo4NP4ARpxyJ0fokBomY8ScaH2D/B+U5o9ARxldJUdMqyBlJcA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.201.0.tgz} + name: '@aws-sdk/util-hex-encoding' + version: 3.201.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-locate-window/3.208.0: + resolution: {integrity: sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-locate-window/-/util-locate-window-3.208.0.tgz} + name: '@aws-sdk/util-locate-window' + version: 3.208.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-middleware/3.272.0: + resolution: {integrity: sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-middleware/-/util-middleware-3.272.0.tgz} + name: '@aws-sdk/util-middleware' + version: 3.272.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-retry/3.272.0: + resolution: {integrity: sha512-Ngha5414LR4gRHURVKC9ZYXsEJhMkm+SJ+44wlzOhavglfdcKKPUsibz5cKY1jpUV7oKECwaxHWpBB8r6h+hOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-retry/-/util-retry-3.272.0.tgz} + name: '@aws-sdk/util-retry' + version: 3.272.0 + engines: {node: '>= 14.0.0'} + dependencies: + '@aws-sdk/service-error-classification': registry.npmmirror.com/@aws-sdk/service-error-classification/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-uri-escape/3.201.0: + resolution: {integrity: sha512-TeTWbGx4LU2c5rx0obHeDFeO9HvwYwQtMh1yniBz00pQb6Qt6YVOETVQikRZ+XRQwEyCg/dA375UplIpiy54mA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-uri-escape/-/util-uri-escape-3.201.0.tgz} + name: '@aws-sdk/util-uri-escape' + version: 3.201.0 + engines: {node: '>=14.0.0'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-user-agent-browser/3.272.0: + resolution: {integrity: sha512-Lp5QX5bH6uuwBlIdr7w7OAcAI50ttyskb++yUr9i+SPvj6RI2dsfIBaK4mDg1qUdM5LeUdvIyqwj3XHjFKAAvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.272.0.tgz} + name: '@aws-sdk/util-user-agent-browser' + version: 3.272.0 + dependencies: + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + bowser: registry.npmmirror.com/bowser/2.11.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-user-agent-node/3.272.0: + resolution: {integrity: sha512-ljK+R3l+Q1LIHrcR+Knhk0rmcSkfFadZ8V+crEGpABf/QUQRg7NkZMsoe814tfBO5F7tMxo8wwwSdaVNNHtoRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.272.0.tgz} + name: '@aws-sdk/util-user-agent-node' + version: 3.272.0 + engines: {node: '>=14.0.0'} + peerDependencies: + aws-crt: '>=1.0.0' + peerDependenciesMeta: + aws-crt: + optional: true + dependencies: + '@aws-sdk/node-config-provider': registry.npmmirror.com/@aws-sdk/node-config-provider/3.272.0 + '@aws-sdk/types': registry.npmmirror.com/@aws-sdk/types/3.272.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-utf8-browser/3.259.0: + resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz} + name: '@aws-sdk/util-utf8-browser' + version: 3.259.0 + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@aws-sdk/util-utf8/3.254.0: + resolution: {integrity: sha512-14Kso/eIt5/qfIBmhEL9L1IfyUqswjSTqO2mY7KOzUZ9SZbwn3rpxmtkhmATkRjD7XIlLKaxBkI7tU9Zjzj8Kw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/util-utf8/-/util-utf8-3.254.0.tgz} + name: '@aws-sdk/util-utf8' + version: 3.254.0 + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/util-buffer-from': registry.npmmirror.com/@aws-sdk/util-buffer-from/3.208.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + optional: true + + registry.npmmirror.com/@babel/code-frame/7.18.6: + resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.18.6.tgz} + name: '@babel/code-frame' + version: 7.18.6 + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': registry.npmmirror.com/@babel/highlight/7.18.6 + dev: false + + registry.npmmirror.com/@babel/helper-module-imports/7.18.6: + resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz} + name: '@babel/helper-module-imports' + version: 7.18.6 + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': registry.npmmirror.com/@babel/types/7.21.0 + dev: false + + registry.npmmirror.com/@babel/helper-string-parser/7.19.4: + resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz} + name: '@babel/helper-string-parser' + version: 7.19.4 + engines: {node: '>=6.9.0'} + dev: false + + registry.npmmirror.com/@babel/helper-validator-identifier/7.19.1: + resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz} + name: '@babel/helper-validator-identifier' + version: 7.19.1 + engines: {node: '>=6.9.0'} + dev: false + + registry.npmmirror.com/@babel/highlight/7.18.6: + resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/highlight/-/highlight-7.18.6.tgz} + name: '@babel/highlight' + version: 7.18.6 + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': registry.npmmirror.com/@babel/helper-validator-identifier/7.19.1 + chalk: registry.npmmirror.com/chalk/2.4.2 + js-tokens: registry.npmmirror.com/js-tokens/4.0.0 + dev: false + registry.npmmirror.com/@babel/runtime/7.20.13: resolution: {integrity: sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/runtime/-/runtime-7.20.13.tgz} name: '@babel/runtime' @@ -35,6 +1097,1498 @@ packages: regenerator-runtime: registry.npmmirror.com/regenerator-runtime/0.13.11 dev: false + registry.npmmirror.com/@babel/types/7.21.0: + resolution: {integrity: sha512-uR7NWq2VNFnDi7EYqiRz2Jv/VQIu38tu64Zy8TX2nQFQ6etJ9V/Rr2msW8BS132mum2rL645qpDrLtAJtVpuow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@babel/types/-/types-7.21.0.tgz} + name: '@babel/types' + version: 7.21.0 + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': registry.npmmirror.com/@babel/helper-string-parser/7.19.4 + '@babel/helper-validator-identifier': registry.npmmirror.com/@babel/helper-validator-identifier/7.19.1 + to-fast-properties: registry.npmmirror.com/to-fast-properties/2.0.0 + dev: false + + registry.npmmirror.com/@chakra-ui/accordion/2.1.9_6k64q2ggygf5zznlgufl3vff54: + resolution: {integrity: sha512-a9CKIAUHezc0f5FR/SQ4GVxnWuIb2HbDTxTEKTp58w/J9pecIbJaNrJ5TUZ0MVbDU9jkgO9RsZ29jkja8PomAw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/accordion/-/accordion-2.1.9.tgz} + id: registry.npmmirror.com/@chakra-ui/accordion/2.1.9 + name: '@chakra-ui/accordion' + version: 2.1.9 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + framer-motion: '>=4.0.0' + react: '>=18' + dependencies: + '@chakra-ui/descendant': registry.npmmirror.com/@chakra-ui/descendant/3.0.13_react@18.2.0 + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-controllable-state': registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@chakra-ui/transition': registry.npmmirror.com/@chakra-ui/transition/2.0.15_pzwl6r6fldxibqxqtuniqxwu5a + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/alert/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-0Y5vw+HkeXpwbL1roVpSSNM6luMRmUbwduUSHEA4OnX1ismvsDb1ZBfpi4Vxp6w8euJ2Uj6df3krbd5tbCP6tg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/alert/-/alert-2.0.17.tgz} + id: registry.npmmirror.com/@chakra-ui/alert/2.0.17 + name: '@chakra-ui/alert' + version: 2.0.17 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/spinner': registry.npmmirror.com/@chakra-ui/spinner/2.0.13_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/anatomy/2.1.2: + resolution: {integrity: sha512-pKfOS/mztc4sUXHNc8ypJ1gPWSolWT770jrgVRfolVbYlki8y5Y+As996zMF6k5lewTu6j9DQequ7Cc9a69IVQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/anatomy/-/anatomy-2.1.2.tgz} + name: '@chakra-ui/anatomy' + version: 2.1.2 + dev: false + + registry.npmmirror.com/@chakra-ui/avatar/2.2.5_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-TEHXuGE79+fEn61qJ7J/A0Ec+WjyNwobrDTATcLg9Zx2/WEMmZNfrWIAlI5ANQAwVbdSWeGVbyoLAK5mbcrE0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/avatar/-/avatar-2.2.5.tgz} + id: registry.npmmirror.com/@chakra-ui/avatar/2.2.5 + name: '@chakra-ui/avatar' + version: 2.2.5 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/image': registry.npmmirror.com/@chakra-ui/image/2.0.15_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-children-utils': registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/breadcrumb/2.1.4_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-vyBx5TAxPnHhb0b8nyRGfqyjleD//9mySFhk96c9GL+T6YDO4swHw5y/kvDv3Ngc/iRwJ9hdI49PZKwPxLqsEg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/breadcrumb/-/breadcrumb-2.1.4.tgz} + id: registry.npmmirror.com/@chakra-ui/breadcrumb/2.1.4 + name: '@chakra-ui/breadcrumb' + version: 2.1.4 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/react-children-utils': registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/breakpoint-utils/2.0.8: + resolution: {integrity: sha512-Pq32MlEX9fwb5j5xx8s18zJMARNHlQZH2VH1RZgfgRDpp7DcEgtRW5AInfN5CfqdHLO1dGxA7I3MqEuL5JnIsA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/breakpoint-utils/-/breakpoint-utils-2.0.8.tgz} + name: '@chakra-ui/breakpoint-utils' + version: 2.0.8 + dependencies: + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + dev: false + + registry.npmmirror.com/@chakra-ui/button/2.0.16_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-NjuTKa7gNhnGSUutKuTc8HoAOe9WWIigpciBG7yj3ok67kg8bXtSzPyQFZlgTY6XGdAckWTT+Do4tvhwa5LA+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/button/-/button-2.0.16.tgz} + id: registry.npmmirror.com/@chakra-ui/button/2.0.16 + name: '@chakra-ui/button' + version: 2.0.16 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/spinner': registry.npmmirror.com/@chakra-ui/spinner/2.0.13_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/card/2.1.6_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-fFd/WAdRNVY/WOSQv4skpy0WeVhhI0f7dTY1Sm0jVl0KLmuP/GnpsWtKtqWjNcV00K963EXDyhlk6+9oxbP4gw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/card/-/card-2.1.6.tgz} + id: registry.npmmirror.com/@chakra-ui/card/2.1.6 + name: '@chakra-ui/card' + version: 2.1.6 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/checkbox/2.2.10_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-vzxEjw99qj7loxAdP1WuHNt4EAvj/t6cc8oxyOB2mEvkAzhxI34rLR+3zWDuHWsmhyUO+XEDh4FiWdR+DK5Siw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/checkbox/-/checkbox-2.2.10.tgz} + id: registry.npmmirror.com/@chakra-ui/checkbox/2.2.10 + name: '@chakra-ui/checkbox' + version: 2.2.10 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/form-control': registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + '@chakra-ui/react-use-controllable-state': registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + '@chakra-ui/react-use-update-effect': registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@chakra-ui/visually-hidden': registry.npmmirror.com/@chakra-ui/visually-hidden/2.0.15_n3dxrjldmk5gnycgnw7noyo5tu + '@zag-js/focus-visible': registry.npmmirror.com/@zag-js/focus-visible/0.2.1 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/clickable/2.0.14_react@18.2.0: + resolution: {integrity: sha512-jfsM1qaD74ZykLHmvmsKRhDyokLUxEfL8Il1VoZMNX5RBI0xW/56vKpLTFF/v/+vLPLS+Te2cZdD4+2O+G6ulA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/clickable/-/clickable-2.0.14.tgz} + id: registry.npmmirror.com/@chakra-ui/clickable/2.0.14 + name: '@chakra-ui/clickable' + version: 2.0.14 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/close-button/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-05YPXk456t1Xa3KpqTrvm+7smx+95dmaPiwjiBN3p7LHUQVHJd8ZXSDB0V+WKi419k3cVQeJUdU/azDO2f40sw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/close-button/-/close-button-2.0.17.tgz} + id: registry.npmmirror.com/@chakra-ui/close-button/2.0.17 + name: '@chakra-ui/close-button' + version: 2.0.17 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/color-mode/2.1.12_react@18.2.0: + resolution: {integrity: sha512-sYyfJGDoJSLYO+V2hxV9r033qhte5Nw/wAn5yRGGZnEEN1dKPEdWQ3XZvglWSDTNd0w9zkoH2w6vP4FBBYb/iw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/color-mode/-/color-mode-2.1.12.tgz} + id: registry.npmmirror.com/@chakra-ui/color-mode/2.1.12 + name: '@chakra-ui/color-mode' + version: 2.1.12 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/control-box/2.0.13_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-FEyrU4crxati80KUF/+1Z1CU3eZK6Sa0Yv7Z/ydtz9/tvGblXW9NFanoomXAOvcIFLbaLQPPATm9Gmpr7VG05A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/control-box/-/control-box-2.0.13.tgz} + id: registry.npmmirror.com/@chakra-ui/control-box/2.0.13 + name: '@chakra-ui/control-box' + version: 2.0.13 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/counter/2.0.14_react@18.2.0: + resolution: {integrity: sha512-KxcSRfUbb94dP77xTip2myoE7P2HQQN4V5fRJmNAGbzcyLciJ+aDylUU/UxgNcEjawUp6Q242NbWb1TSbKoqog==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/counter/-/counter-2.0.14.tgz} + id: registry.npmmirror.com/@chakra-ui/counter/2.0.14 + name: '@chakra-ui/counter' + version: 2.0.14 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/number-utils': registry.npmmirror.com/@chakra-ui/number-utils/2.0.7 + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/css-reset/2.0.12_3og6jmu6wvzuytygvdoxepq3x4: + resolution: {integrity: sha512-Q5OYIMvqTl2vZ947kIYxcS5DhQXeStB84BzzBd6C10wOx1gFUu9pL+jLpOnHR3hhpWRMdX5o7eT+gMJWIYUZ0Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/css-reset/-/css-reset-2.0.12.tgz} + id: registry.npmmirror.com/@chakra-ui/css-reset/2.0.12 + name: '@chakra-ui/css-reset' + version: 2.0.12 + peerDependencies: + '@emotion/react': '>=10.0.35' + react: '>=18' + dependencies: + '@emotion/react': registry.npmmirror.com/@emotion/react/11.10.6_pmekkgnqduwlme35zpnqhenc34 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/descendant/3.0.13_react@18.2.0: + resolution: {integrity: sha512-9nzxZVxUSMc4xPL5fSaRkEOQjDQWUGjGvrZI7VzWk9eq63cojOtIxtWMSW383G9148PzWJjJYt30Eud5tdZzlg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/descendant/-/descendant-3.0.13.tgz} + id: registry.npmmirror.com/@chakra-ui/descendant/3.0.13 + name: '@chakra-ui/descendant' + version: 3.0.13 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/dom-utils/2.0.6: + resolution: {integrity: sha512-PVtDkPrDD5b8aoL6Atg7SLjkwhWb7BwMcLOF1L449L3nZN+DAO3nyAh6iUhZVJyunELj9d0r65CDlnMREyJZmA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/dom-utils/-/dom-utils-2.0.6.tgz} + name: '@chakra-ui/dom-utils' + version: 2.0.6 + dev: false + + registry.npmmirror.com/@chakra-ui/editable/2.0.19_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-YxRJsJ2JQd42zfPBgTKzIhg1HugT+gfQz1ZosmUN+IZT9YZXL2yodHTUz6Lee04Vc/CdEqgBFLuREXEUNBfGtA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/editable/-/editable-2.0.19.tgz} + id: registry.npmmirror.com/@chakra-ui/editable/2.0.19 + name: '@chakra-ui/editable' + version: 2.0.19 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + '@chakra-ui/react-use-controllable-state': registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-focus-on-pointer-down': registry.npmmirror.com/@chakra-ui/react-use-focus-on-pointer-down/2.0.6_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + '@chakra-ui/react-use-update-effect': registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/event-utils/2.0.8: + resolution: {integrity: sha512-IGM/yGUHS+8TOQrZGpAKOJl/xGBrmRYJrmbHfUE7zrG3PpQyXvbLDP1M+RggkCFVgHlJi2wpYIf0QtQlU0XZfw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/event-utils/-/event-utils-2.0.8.tgz} + name: '@chakra-ui/event-utils' + version: 2.0.8 + dev: false + + registry.npmmirror.com/@chakra-ui/focus-lock/2.0.16_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-UuAdGCPVrCa1lecoAvpOQD7JFT7a9RdmhKWhFt5ioIcekSLJcerdLHuuL3w0qz//8kd1/SOt7oP0aJqdAJQrCw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/focus-lock/-/focus-lock-2.0.16.tgz} + id: registry.npmmirror.com/@chakra-ui/focus-lock/2.0.16 + name: '@chakra-ui/focus-lock' + version: 2.0.16 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/dom-utils': registry.npmmirror.com/@chakra-ui/dom-utils/2.0.6 + react: registry.npmmirror.com/react/18.2.0 + react-focus-lock: registry.npmmirror.com/react-focus-lock/2.9.4_pmekkgnqduwlme35zpnqhenc34 + transitivePeerDependencies: + - '@types/react' + dev: false + + registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-34ptCaJ2LNvQNOlB6MAKsmH1AkT1xo7E+3Vw10Urr81yTOjDTM/iU6vG3JKPfRDMyXeowPjXmutlnuk72SSjRg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/form-control/-/form-control-2.0.17.tgz} + id: registry.npmmirror.com/@chakra-ui/form-control/2.0.17 + name: '@chakra-ui/form-control' + version: 2.0.17 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/hooks/2.1.6_react@18.2.0: + resolution: {integrity: sha512-oMSOeoOF6/UpwTVlDFHSROAA4hPY8WgJ0erdHs1ZkuwAwHv7UzjDkvrb6xYzAAH9qHoFzc5RIBm6jVoh3LCc+Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/hooks/-/hooks-2.1.6.tgz} + id: registry.npmmirror.com/@chakra-ui/hooks/2.1.6 + name: '@chakra-ui/hooks' + version: 2.1.6 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-utils': registry.npmmirror.com/@chakra-ui/react-utils/2.0.12_react@18.2.0 + '@chakra-ui/utils': registry.npmmirror.com/@chakra-ui/utils/2.0.15 + compute-scroll-into-view: registry.npmmirror.com/compute-scroll-into-view/1.0.20 + copy-to-clipboard: registry.npmmirror.com/copy-to-clipboard/3.3.3 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-RpA1X5Ptz8Mt39HSyEIW1wxAz2AXyf9H0JJ5HVx/dBdMZaGMDJ0HyyPBVci0m4RCoJuyG1HHG/DXJaVfUTVAeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/icon/-/icon-3.0.16.tgz} + id: registry.npmmirror.com/@chakra-ui/icon/3.0.16 + name: '@chakra-ui/icon' + version: 3.0.16 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/icons/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-HMJP0WrJgAmFR9+Xh/CBH0nVnGMsJ4ZC8MK6tMgxPKd9/muvn0I4hsicHqdPlLpmB0TlxlhkBAKaVMtOdz6F0w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/icons/-/icons-2.0.17.tgz} + id: registry.npmmirror.com/@chakra-ui/icons/2.0.17 + name: '@chakra-ui/icons' + version: 2.0.17 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/image/2.0.15_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-w2rElXtI3FHXuGpMCsSklus+pO1Pl2LWDwsCGdpBQUvGFbnHfl7MftQgTlaGHeD5OS95Pxva39hKrA2VklKHiQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/image/-/image-2.0.15.tgz} + id: registry.npmmirror.com/@chakra-ui/image/2.0.15 + name: '@chakra-ui/image' + version: 2.0.15 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/input/2.0.20_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-ypmsy4n4uNBVgn6Gd24Zrpi+qRf/T9WEzWkysuYC9Qfxo+i7yuf3snp7XmBy8KSGVSiXE11eO8ZN5oCg6Xg0jg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/input/-/input-2.0.20.tgz} + id: registry.npmmirror.com/@chakra-ui/input/2.0.20 + name: '@chakra-ui/input' + version: 2.0.20 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/form-control': registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/object-utils': registry.npmmirror.com/@chakra-ui/object-utils/2.0.8 + '@chakra-ui/react-children-utils': registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/layout/2.1.16_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-QFS3feozIGsvB0H74lUocev55aRF26eNrdmhfJifwikZAiq+zzZAMdBdNU9UJhHClnMOU8/iGZ0MF7ti4zQS1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/layout/-/layout-2.1.16.tgz} + id: registry.npmmirror.com/@chakra-ui/layout/2.1.16 + name: '@chakra-ui/layout' + version: 2.1.16 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/breakpoint-utils': registry.npmmirror.com/@chakra-ui/breakpoint-utils/2.0.8 + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/object-utils': registry.npmmirror.com/@chakra-ui/object-utils/2.0.8 + '@chakra-ui/react-children-utils': registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/lazy-utils/2.0.5: + resolution: {integrity: sha512-UULqw7FBvcckQk2n3iPO56TMJvDsNv0FKZI6PlUNJVaGsPbsYxK/8IQ60vZgaTVPtVcjY6BE+y6zg8u9HOqpyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/lazy-utils/-/lazy-utils-2.0.5.tgz} + name: '@chakra-ui/lazy-utils' + version: 2.0.5 + dev: false + + registry.npmmirror.com/@chakra-ui/live-region/2.0.13_react@18.2.0: + resolution: {integrity: sha512-Ja+Slk6ZkxSA5oJzU2VuGU7TpZpbMb/4P4OUhIf2D30ctmIeXkxTWw1Bs1nGJAVtAPcGS5sKA+zb89i8g+0cTQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/live-region/-/live-region-2.0.13.tgz} + id: registry.npmmirror.com/@chakra-ui/live-region/2.0.13 + name: '@chakra-ui/live-region' + version: 2.0.13 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/media-query/3.2.12_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-8pSLDf3oxxhFrhd40rs7vSeIBfvOmIKHA7DJlGUC/y+9irD24ZwgmCtFnn+y3gI47hTJsopbSX+wb8nr7XPswA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/media-query/-/media-query-3.2.12.tgz} + id: registry.npmmirror.com/@chakra-ui/media-query/3.2.12 + name: '@chakra-ui/media-query' + version: 3.2.12 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/breakpoint-utils': registry.npmmirror.com/@chakra-ui/breakpoint-utils/2.0.8 + '@chakra-ui/react-env': registry.npmmirror.com/@chakra-ui/react-env/3.0.0_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/menu/2.1.9_6k64q2ggygf5zznlgufl3vff54: + resolution: {integrity: sha512-ue5nD4QJcl3H3UwN0zZNJmH89XUebnvEdW6THAUL41hDjJ0J/Fjpg9Sgzwug2aBbBXBNbVMsUuhcCj6x91d+IQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/menu/-/menu-2.1.9.tgz} + id: registry.npmmirror.com/@chakra-ui/menu/2.1.9 + name: '@chakra-ui/menu' + version: 2.1.9 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + framer-motion: '>=4.0.0' + react: '>=18' + dependencies: + '@chakra-ui/clickable': registry.npmmirror.com/@chakra-ui/clickable/2.0.14_react@18.2.0 + '@chakra-ui/descendant': registry.npmmirror.com/@chakra-ui/descendant/3.0.13_react@18.2.0 + '@chakra-ui/lazy-utils': registry.npmmirror.com/@chakra-ui/lazy-utils/2.0.5 + '@chakra-ui/popper': registry.npmmirror.com/@chakra-ui/popper/3.0.13_react@18.2.0 + '@chakra-ui/react-children-utils': registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-animation-state': registry.npmmirror.com/@chakra-ui/react-use-animation-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-controllable-state': registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-disclosure': registry.npmmirror.com/@chakra-ui/react-use-disclosure/2.0.8_react@18.2.0 + '@chakra-ui/react-use-focus-effect': registry.npmmirror.com/@chakra-ui/react-use-focus-effect/2.0.9_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/react-use-outside-click': registry.npmmirror.com/@chakra-ui/react-use-outside-click/2.0.7_react@18.2.0 + '@chakra-ui/react-use-update-effect': registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@chakra-ui/transition': registry.npmmirror.com/@chakra-ui/transition/2.0.15_pzwl6r6fldxibqxqtuniqxwu5a + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/modal/2.2.9_yhhvvnut2voqkduvocxf26p2ie: + resolution: {integrity: sha512-nTfNp7XsVwn5+xJOtstoFA8j0kq/9sJj7KesyYzjEDaMKvCZvIOntRYowoydho43jb4+YC7ebKhp0KOIINS0gg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/modal/-/modal-2.2.9.tgz} + id: registry.npmmirror.com/@chakra-ui/modal/2.2.9 + name: '@chakra-ui/modal' + version: 2.2.9 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + framer-motion: '>=4.0.0' + react: '>=18' + react-dom: '>=18' + dependencies: + '@chakra-ui/close-button': registry.npmmirror.com/@chakra-ui/close-button/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/focus-lock': registry.npmmirror.com/@chakra-ui/focus-lock/2.0.16_pmekkgnqduwlme35zpnqhenc34 + '@chakra-ui/portal': registry.npmmirror.com/@chakra-ui/portal/2.0.15_biqbaboplfbrettd7655fr4n2y + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@chakra-ui/transition': registry.npmmirror.com/@chakra-ui/transition/2.0.15_pzwl6r6fldxibqxqtuniqxwu5a + aria-hidden: registry.npmmirror.com/aria-hidden/1.2.2_pmekkgnqduwlme35zpnqhenc34 + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + react-remove-scroll: registry.npmmirror.com/react-remove-scroll/2.5.5_pmekkgnqduwlme35zpnqhenc34 + transitivePeerDependencies: + - '@types/react' + dev: false + + registry.npmmirror.com/@chakra-ui/number-input/2.0.18_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-cPkyAFFHHzeFBselrT1BtjlzMkJ6TKrTDUnHFlzqXy6aqeXuhrjFhMfXucjedSpOqedsP9ZbKFTdIAhu9DdL/A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/number-input/-/number-input-2.0.18.tgz} + id: registry.npmmirror.com/@chakra-ui/number-input/2.0.18 + name: '@chakra-ui/number-input' + version: 2.0.18 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/counter': registry.npmmirror.com/@chakra-ui/counter/2.0.14_react@18.2.0 + '@chakra-ui/form-control': registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + '@chakra-ui/react-use-event-listener': registry.npmmirror.com/@chakra-ui/react-use-event-listener/2.0.7_react@18.2.0 + '@chakra-ui/react-use-interval': registry.npmmirror.com/@chakra-ui/react-use-interval/2.0.5_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + '@chakra-ui/react-use-update-effect': registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/number-utils/2.0.7: + resolution: {integrity: sha512-yOGxBjXNvLTBvQyhMDqGU0Oj26s91mbAlqKHiuw737AXHt0aPllOthVUqQMeaYLwLCjGMg0jtI7JReRzyi94Dg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/number-utils/-/number-utils-2.0.7.tgz} + name: '@chakra-ui/number-utils' + version: 2.0.7 + dev: false + + registry.npmmirror.com/@chakra-ui/object-utils/2.0.8: + resolution: {integrity: sha512-2upjT2JgRuiupdrtBWklKBS6tqeGMA77Nh6Q0JaoQuH/8yq+15CGckqn3IUWkWoGI0Fg3bK9LDlbbD+9DLw95Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/object-utils/-/object-utils-2.0.8.tgz} + name: '@chakra-ui/object-utils' + version: 2.0.8 + dev: false + + registry.npmmirror.com/@chakra-ui/pin-input/2.0.19_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-6O7s4vWz4cqQ6zvMov9sYj6ZqWAsTxR/MNGe3DNgu1zWQg8veNCYtj1rNGhNS3eZNUMAa8uM2dXIphGTP53Xow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/pin-input/-/pin-input-2.0.19.tgz} + id: registry.npmmirror.com/@chakra-ui/pin-input/2.0.19 + name: '@chakra-ui/pin-input' + version: 2.0.19 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/descendant': registry.npmmirror.com/@chakra-ui/descendant/3.0.13_react@18.2.0 + '@chakra-ui/react-children-utils': registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-controllable-state': registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/popover/2.1.8_6k64q2ggygf5zznlgufl3vff54: + resolution: {integrity: sha512-ob7fAz+WWmXIq7iGHVB3wDKzZTj+T+noYBT/U1Q+jIf+jMr2WOpJLTfb0HTZcfhvn4EBFlfBg7Wk5qbXNaOn7g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/popover/-/popover-2.1.8.tgz} + id: registry.npmmirror.com/@chakra-ui/popover/2.1.8 + name: '@chakra-ui/popover' + version: 2.1.8 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + framer-motion: '>=4.0.0' + react: '>=18' + dependencies: + '@chakra-ui/close-button': registry.npmmirror.com/@chakra-ui/close-button/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/lazy-utils': registry.npmmirror.com/@chakra-ui/lazy-utils/2.0.5 + '@chakra-ui/popper': registry.npmmirror.com/@chakra-ui/popper/3.0.13_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-animation-state': registry.npmmirror.com/@chakra-ui/react-use-animation-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-disclosure': registry.npmmirror.com/@chakra-ui/react-use-disclosure/2.0.8_react@18.2.0 + '@chakra-ui/react-use-focus-effect': registry.npmmirror.com/@chakra-ui/react-use-focus-effect/2.0.9_react@18.2.0 + '@chakra-ui/react-use-focus-on-pointer-down': registry.npmmirror.com/@chakra-ui/react-use-focus-on-pointer-down/2.0.6_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/popper/3.0.13_react@18.2.0: + resolution: {integrity: sha512-FwtmYz80Ju8oK3Z1HQfisUE7JIMmDsCQsRBu6XuJ3TFQnBHit73yjZmxKjuRJ4JgyT4WBnZoTF3ATbRKSagBeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/popper/-/popper-3.0.13.tgz} + id: registry.npmmirror.com/@chakra-ui/popper/3.0.13 + name: '@chakra-ui/popper' + version: 3.0.13 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@popperjs/core': registry.npmmirror.com/@popperjs/core/2.11.6 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/portal/2.0.15_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-z8v7K3j1/nMuBzp2+wRIIw7s/eipVtnXLdjK5yqbMxMRa44E8Mu5VNJLz3aQFLHXEUST+ifqrjImQeli9do6LQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/portal/-/portal-2.0.15.tgz} + id: registry.npmmirror.com/@chakra-ui/portal/2.0.15 + name: '@chakra-ui/portal' + version: 2.0.15 + peerDependencies: + react: '>=18' + react-dom: '>=18' + dependencies: + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/progress/2.1.5_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-jj5Vp4lxUchuwp4RPCepM0yAyKi344bgsOd3Apd+ldxclDcewPc82fbwDu7g/Xv27LqJkT+7E/SlQy04wGrk0g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/progress/-/progress-2.1.5.tgz} + id: registry.npmmirror.com/@chakra-ui/progress/2.1.5 + name: '@chakra-ui/progress' + version: 2.1.5 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/provider/2.1.2_fbxtuirhogpez7m7qjkm3itwca: + resolution: {integrity: sha512-4lLlz8QuJv00BhfyKzWpzfoti9MDOdJ/MqXixJV/EZ02RMBOdE9qy9bSz/WckPC2MVhtRUuwMkxH+0QY21PXuw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/provider/-/provider-2.1.2.tgz} + id: registry.npmmirror.com/@chakra-ui/provider/2.1.2 + name: '@chakra-ui/provider' + version: 2.1.2 + peerDependencies: + '@emotion/react': ^11.0.0 + '@emotion/styled': ^11.0.0 + react: '>=18' + react-dom: '>=18' + dependencies: + '@chakra-ui/css-reset': registry.npmmirror.com/@chakra-ui/css-reset/2.0.12_3og6jmu6wvzuytygvdoxepq3x4 + '@chakra-ui/portal': registry.npmmirror.com/@chakra-ui/portal/2.0.15_biqbaboplfbrettd7655fr4n2y + '@chakra-ui/react-env': registry.npmmirror.com/@chakra-ui/react-env/3.0.0_react@18.2.0 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@chakra-ui/utils': registry.npmmirror.com/@chakra-ui/utils/2.0.15 + '@emotion/react': registry.npmmirror.com/@emotion/react/11.10.6_pmekkgnqduwlme35zpnqhenc34 + '@emotion/styled': registry.npmmirror.com/@emotion/styled/11.10.6_oouaibmszuch5k64ms7uxp2aia + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/radio/2.0.19_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-PlJiV59eGSmeKP4v/4+ccQUWGRd0cjPKkj/p3L+UbOf8pl9dWm8y9kIeL5TYbghQSDv0nzkrH4+yMnnDTZjdMQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/radio/-/radio-2.0.19.tgz} + id: registry.npmmirror.com/@chakra-ui/radio/2.0.19 + name: '@chakra-ui/radio' + version: 2.0.19 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/form-control': registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@zag-js/focus-visible': registry.npmmirror.com/@zag-js/focus-visible/0.2.1 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0: + resolution: {integrity: sha512-QVR2RC7QsOsbWwEnq9YduhpqSFnZGvjjGREV8ygKi8ADhXh93C8azLECCUVgRJF2Wc+So1fgxmjLcbZfY2VmBA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-children-utils/-/react-children-utils-2.0.6.tgz} + id: registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6 + name: '@chakra-ui/react-children-utils' + version: 2.0.6 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0: + resolution: {integrity: sha512-i7EGmSU+h2GB30cwrKB4t1R5BMHyGoJM5L2Zz7b+ZUX4aAqyPcfe97wPiQB6Rgr1ImGXrUeov4CDVrRZ2FPgLQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-context/-/react-context-2.0.7.tgz} + id: registry.npmmirror.com/@chakra-ui/react-context/2.0.7 + name: '@chakra-ui/react-context' + version: 2.0.7 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-env/3.0.0_react@18.2.0: + resolution: {integrity: sha512-tfMRO2v508HQWAqSADFrwZgR9oU10qC97oV6zGbjHh9ALP0/IcFR+Bi71KRTveDTm85fMeAzZYGj57P3Dsipkw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-env/-/react-env-3.0.0.tgz} + id: registry.npmmirror.com/@chakra-ui/react-env/3.0.0 + name: '@chakra-ui/react-env' + version: 3.0.0 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0: + resolution: {integrity: sha512-12zv2qIZ8EHwiytggtGvo4iLT0APris7T0qaAWqzpUGS0cdUtR8W+V1BJ5Ocq+7tA6dzQ/7+w5hmXih61TuhWQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-types/-/react-types-2.0.7.tgz} + id: registry.npmmirror.com/@chakra-ui/react-types/2.0.7 + name: '@chakra-ui/react-types' + version: 2.0.7 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-animation-state/2.0.8_react@18.2.0: + resolution: {integrity: sha512-xv9zSF2Rd1mHWQ+m5DLBWeh4atF8qrNvsOs3MNrvxKYBS3f79N3pqcQGrWAEvirXWXfiCeje2VAkEggqFRIo+Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-animation-state/-/react-use-animation-state-2.0.8.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-animation-state/2.0.8 + name: '@chakra-ui/react-use-animation-state' + version: 2.0.8 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/dom-utils': registry.npmmirror.com/@chakra-ui/dom-utils/2.0.6 + '@chakra-ui/react-use-event-listener': registry.npmmirror.com/@chakra-ui/react-use-event-listener/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0: + resolution: {integrity: sha512-YjT76nTpfHAK5NxplAlZsQwNju5KmQExnqsWNPFeOR6vvbC34+iPSTr+r91i1Hdy7gBSbevsOsd5Wm6RN3GuMw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-callback-ref/-/react-use-callback-ref-2.0.7.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7 + name: '@chakra-ui/react-use-callback-ref' + version: 2.0.7 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0: + resolution: {integrity: sha512-F7rdCbLEmRjwwODqWZ3y+mKgSSHPcLQxeUygwk1BkZPXbKkJJKymOIjIynil2cbH7ku3hcSIWRvuhpCcfQWJ7Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-controllable-state/-/react-use-controllable-state-2.0.8.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8 + name: '@chakra-ui/react-use-controllable-state' + version: 2.0.8 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-disclosure/2.0.8_react@18.2.0: + resolution: {integrity: sha512-2ir/mHe1YND40e+FyLHnDsnDsBQPwzKDLzfe9GZri7y31oU83JSbHdlAXAhp3bpjohslwavtRCp+S/zRxfO9aQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-disclosure/-/react-use-disclosure-2.0.8.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-disclosure/2.0.8 + name: '@chakra-ui/react-use-disclosure' + version: 2.0.8 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-event-listener/2.0.7_react@18.2.0: + resolution: {integrity: sha512-4wvpx4yudIO3B31pOrXuTHDErawmwiXnvAN7gLEOVREi16+YGNcFnRJ5X5nRrmB7j2MDUtsEDpRBFfw5Z9xQ5g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-event-listener/-/react-use-event-listener-2.0.7.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-event-listener/2.0.7 + name: '@chakra-ui/react-use-event-listener' + version: 2.0.7 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-focus-effect/2.0.9_react@18.2.0: + resolution: {integrity: sha512-20nfNkpbVwyb41q9wxp8c4jmVp6TUGAPE3uFTDpiGcIOyPW5aecQtPmTXPMJH+2aa8Nu1wyoT1btxO+UYiQM3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-focus-effect/-/react-use-focus-effect-2.0.9.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-focus-effect/2.0.9 + name: '@chakra-ui/react-use-focus-effect' + version: 2.0.9 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/dom-utils': registry.npmmirror.com/@chakra-ui/dom-utils/2.0.6 + '@chakra-ui/react-use-event-listener': registry.npmmirror.com/@chakra-ui/react-use-event-listener/2.0.7_react@18.2.0 + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + '@chakra-ui/react-use-update-effect': registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-focus-on-pointer-down/2.0.6_react@18.2.0: + resolution: {integrity: sha512-OigXiLRVySn3tyVqJ/rn57WGuukW8TQe8fJYiLwXbcNyAMuYYounvRxvCy2b53sQ7QIZamza0N0jhirbH5FNoQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-focus-on-pointer-down/-/react-use-focus-on-pointer-down-2.0.6.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-focus-on-pointer-down/2.0.6 + name: '@chakra-ui/react-use-focus-on-pointer-down' + version: 2.0.6 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-event-listener': registry.npmmirror.com/@chakra-ui/react-use-event-listener/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-interval/2.0.5_react@18.2.0: + resolution: {integrity: sha512-1nbdwMi2K87V6p5f5AseOKif2CkldLaJlq1TOqaPRwb7v3aU9rltBtYdf+fIyuHSToNJUV6wd9budCFdLCl3Fg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-interval/-/react-use-interval-2.0.5.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-interval/2.0.5 + name: '@chakra-ui/react-use-interval' + version: 2.0.5 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-latest-ref/2.0.5_react@18.2.0: + resolution: {integrity: sha512-3mIuFzMyIo3Ok/D8uhV9voVg7KkrYVO/pwVvNPJOHsDQqCA6DpYE4WDsrIx+fVcwad3Ta7SupexR5PoI+kq6QQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-latest-ref/-/react-use-latest-ref-2.0.5.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-latest-ref/2.0.5 + name: '@chakra-ui/react-use-latest-ref' + version: 2.0.5 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0: + resolution: {integrity: sha512-zds4Uhsc+AMzdH8JDDkLVet9baUBgtOjPbhC5r3A0ZXjZvGhCztFAVE3aExYiVoMPoHLKbLcqvCWE6ioFKz1lw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-merge-refs/-/react-use-merge-refs-2.0.7.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7 + name: '@chakra-ui/react-use-merge-refs' + version: 2.0.7 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-outside-click/2.0.7_react@18.2.0: + resolution: {integrity: sha512-MsAuGLkwYNxNJ5rb8lYNvXApXxYMnJ3MzqBpQj1kh5qP/+JSla9XMjE/P94ub4fSEttmNSqs43SmPPrmPuihsQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-outside-click/-/react-use-outside-click-2.0.7.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-outside-click/2.0.7 + name: '@chakra-ui/react-use-outside-click' + version: 2.0.7 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-pan-event/2.0.9_react@18.2.0: + resolution: {integrity: sha512-xu35QXkiyrgsHUOnctl+SwNcwf9Rl62uYE5y8soKOZdBm8E+FvZIt2hxUzK1EoekbJCMzEZ0Yv1ZQCssVkSLaQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-pan-event/-/react-use-pan-event-2.0.9.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-pan-event/2.0.9 + name: '@chakra-ui/react-use-pan-event' + version: 2.0.9 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/event-utils': registry.npmmirror.com/@chakra-ui/event-utils/2.0.8 + '@chakra-ui/react-use-latest-ref': registry.npmmirror.com/@chakra-ui/react-use-latest-ref/2.0.5_react@18.2.0 + framesync: registry.npmmirror.com/framesync/6.1.2 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-previous/2.0.5_react@18.2.0: + resolution: {integrity: sha512-BIZgjycPE4Xr+MkhKe0h67uHXzQQkBX/u5rYPd65iMGdX1bCkbE0oorZNfOHLKdTmnEb4oVsNvfN6Rfr+Mnbxw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-previous/-/react-use-previous-2.0.5.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-previous/2.0.5 + name: '@chakra-ui/react-use-previous' + version: 2.0.5 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0: + resolution: {integrity: sha512-MwAQBz3VxoeFLaesaSEN87reVNVbjcQBDex2WGexAg6hUB6n4gc1OWYH/iXp4tzp4kuggBNhEHkk9BMYXWfhJQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/-/react-use-safe-layout-effect-2.0.5.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5 + name: '@chakra-ui/react-use-safe-layout-effect' + version: 2.0.5 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-size/2.0.9_react@18.2.0: + resolution: {integrity: sha512-Jce7QmO1jlQZq+Y77VKckWzroRnajChzUQ8xhLQZO6VbYvrpg3cu+X2QCz3G+MZzB+1/hnvvAqmZ+uJLd8rEJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-size/-/react-use-size-2.0.9.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-size/2.0.9 + name: '@chakra-ui/react-use-size' + version: 2.0.9 + peerDependencies: + react: '>=18' + dependencies: + '@zag-js/element-size': registry.npmmirror.com/@zag-js/element-size/0.3.1 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-timeout/2.0.5_react@18.2.0: + resolution: {integrity: sha512-QqmB+jVphh3h/CS60PieorpY7UqSPkrQCB7f7F+i9vwwIjtP8fxVHMmkb64K7VlzQiMPzv12nlID5dqkzlv0mw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-timeout/-/react-use-timeout-2.0.5.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-timeout/2.0.5 + name: '@chakra-ui/react-use-timeout' + version: 2.0.5 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0: + resolution: {integrity: sha512-vBM2bmmM83ZdDtasWv3PXPznpTUd+FvqBC8J8rxoRmvdMEfrxTiQRBJhiGHLpS9BPLLPQlosN6KdFU97csB6zg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-use-update-effect/-/react-use-update-effect-2.0.7.tgz} + id: registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7 + name: '@chakra-ui/react-use-update-effect' + version: 2.0.7 + peerDependencies: + react: '>=18' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react-utils/2.0.12_react@18.2.0: + resolution: {integrity: sha512-GbSfVb283+YA3kA8w8xWmzbjNWk14uhNpntnipHCftBibl0lxtQ9YqMFQLwuFOO0U2gYVocszqqDWX+XNKq9hw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react-utils/-/react-utils-2.0.12.tgz} + id: registry.npmmirror.com/@chakra-ui/react-utils/2.0.12 + name: '@chakra-ui/react-utils' + version: 2.0.12 + peerDependencies: + react: '>=18' + dependencies: + '@chakra-ui/utils': registry.npmmirror.com/@chakra-ui/utils/2.0.15 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/react/2.5.1_e6pzu3hsaqmql4fl7jx73ckiym: + resolution: {integrity: sha512-ugkaqfcNMb9L4TkalWiF3rnqfr0TlUUD46JZaDIZiORVisaSwXTZTQrVfG40VghhaJT28rnC5WtiE8kd567ZBQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/react/-/react-2.5.1.tgz} + id: registry.npmmirror.com/@chakra-ui/react/2.5.1 + name: '@chakra-ui/react' + version: 2.5.1 + peerDependencies: + '@emotion/react': ^11.0.0 + '@emotion/styled': ^11.0.0 + framer-motion: '>=4.0.0' + react: '>=18' + react-dom: '>=18' + dependencies: + '@chakra-ui/accordion': registry.npmmirror.com/@chakra-ui/accordion/2.1.9_6k64q2ggygf5zznlgufl3vff54 + '@chakra-ui/alert': registry.npmmirror.com/@chakra-ui/alert/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/avatar': registry.npmmirror.com/@chakra-ui/avatar/2.2.5_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/breadcrumb': registry.npmmirror.com/@chakra-ui/breadcrumb/2.1.4_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/button': registry.npmmirror.com/@chakra-ui/button/2.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/card': registry.npmmirror.com/@chakra-ui/card/2.1.6_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/checkbox': registry.npmmirror.com/@chakra-ui/checkbox/2.2.10_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/close-button': registry.npmmirror.com/@chakra-ui/close-button/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/control-box': registry.npmmirror.com/@chakra-ui/control-box/2.0.13_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/counter': registry.npmmirror.com/@chakra-ui/counter/2.0.14_react@18.2.0 + '@chakra-ui/css-reset': registry.npmmirror.com/@chakra-ui/css-reset/2.0.12_3og6jmu6wvzuytygvdoxepq3x4 + '@chakra-ui/editable': registry.npmmirror.com/@chakra-ui/editable/2.0.19_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/focus-lock': registry.npmmirror.com/@chakra-ui/focus-lock/2.0.16_pmekkgnqduwlme35zpnqhenc34 + '@chakra-ui/form-control': registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/hooks': registry.npmmirror.com/@chakra-ui/hooks/2.1.6_react@18.2.0 + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/image': registry.npmmirror.com/@chakra-ui/image/2.0.15_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/input': registry.npmmirror.com/@chakra-ui/input/2.0.20_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/layout': registry.npmmirror.com/@chakra-ui/layout/2.1.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/live-region': registry.npmmirror.com/@chakra-ui/live-region/2.0.13_react@18.2.0 + '@chakra-ui/media-query': registry.npmmirror.com/@chakra-ui/media-query/3.2.12_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/menu': registry.npmmirror.com/@chakra-ui/menu/2.1.9_6k64q2ggygf5zznlgufl3vff54 + '@chakra-ui/modal': registry.npmmirror.com/@chakra-ui/modal/2.2.9_yhhvvnut2voqkduvocxf26p2ie + '@chakra-ui/number-input': registry.npmmirror.com/@chakra-ui/number-input/2.0.18_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/pin-input': registry.npmmirror.com/@chakra-ui/pin-input/2.0.19_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/popover': registry.npmmirror.com/@chakra-ui/popover/2.1.8_6k64q2ggygf5zznlgufl3vff54 + '@chakra-ui/popper': registry.npmmirror.com/@chakra-ui/popper/3.0.13_react@18.2.0 + '@chakra-ui/portal': registry.npmmirror.com/@chakra-ui/portal/2.0.15_biqbaboplfbrettd7655fr4n2y + '@chakra-ui/progress': registry.npmmirror.com/@chakra-ui/progress/2.1.5_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/provider': registry.npmmirror.com/@chakra-ui/provider/2.1.2_fbxtuirhogpez7m7qjkm3itwca + '@chakra-ui/radio': registry.npmmirror.com/@chakra-ui/radio/2.0.19_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-env': registry.npmmirror.com/@chakra-ui/react-env/3.0.0_react@18.2.0 + '@chakra-ui/select': registry.npmmirror.com/@chakra-ui/select/2.0.18_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/skeleton': registry.npmmirror.com/@chakra-ui/skeleton/2.0.24_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/slider': registry.npmmirror.com/@chakra-ui/slider/2.0.21_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/spinner': registry.npmmirror.com/@chakra-ui/spinner/2.0.13_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/stat': registry.npmmirror.com/@chakra-ui/stat/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/styled-system': registry.npmmirror.com/@chakra-ui/styled-system/2.6.1 + '@chakra-ui/switch': registry.npmmirror.com/@chakra-ui/switch/2.0.22_6k64q2ggygf5zznlgufl3vff54 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@chakra-ui/table': registry.npmmirror.com/@chakra-ui/table/2.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/tabs': registry.npmmirror.com/@chakra-ui/tabs/2.1.8_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/tag': registry.npmmirror.com/@chakra-ui/tag/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/textarea': registry.npmmirror.com/@chakra-ui/textarea/2.0.18_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/theme': registry.npmmirror.com/@chakra-ui/theme/2.2.5_es2flcfvdj7o2v4vs237ptvmhy + '@chakra-ui/theme-utils': registry.npmmirror.com/@chakra-ui/theme-utils/2.0.11 + '@chakra-ui/toast': registry.npmmirror.com/@chakra-ui/toast/6.0.1_jgj3ekl54faqnu3nlobnfmds2q + '@chakra-ui/tooltip': registry.npmmirror.com/@chakra-ui/tooltip/2.2.6_jgj3ekl54faqnu3nlobnfmds2q + '@chakra-ui/transition': registry.npmmirror.com/@chakra-ui/transition/2.0.15_pzwl6r6fldxibqxqtuniqxwu5a + '@chakra-ui/utils': registry.npmmirror.com/@chakra-ui/utils/2.0.15 + '@chakra-ui/visually-hidden': registry.npmmirror.com/@chakra-ui/visually-hidden/2.0.15_n3dxrjldmk5gnycgnw7noyo5tu + '@emotion/react': registry.npmmirror.com/@emotion/react/11.10.6_pmekkgnqduwlme35zpnqhenc34 + '@emotion/styled': registry.npmmirror.com/@emotion/styled/11.10.6_oouaibmszuch5k64ms7uxp2aia + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + transitivePeerDependencies: + - '@types/react' + dev: false + + registry.npmmirror.com/@chakra-ui/select/2.0.18_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-1d2lUT5LM6oOs5x4lzBh4GFDuXX62+lr+sgV7099g951/5UNbb0CS2hSZHsO7yZThLNbr7QTWZvAOAayVcGzdw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/select/-/select-2.0.18.tgz} + id: registry.npmmirror.com/@chakra-ui/select/2.0.18 + name: '@chakra-ui/select' + version: 2.0.18 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/form-control': registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5: + resolution: {integrity: sha512-4/Wur0FqDov7Y0nCXl7HbHzCg4aq86h+SXdoUeuCMD3dSj7dpsVnStLYhng1vxvlbUnLpdF4oz5Myt3i/a7N3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/shared-utils/-/shared-utils-2.0.5.tgz} + name: '@chakra-ui/shared-utils' + version: 2.0.5 + dev: false + + registry.npmmirror.com/@chakra-ui/skeleton/2.0.24_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-1jXtVKcl/jpbrJlc/TyMsFyI651GTXY5ma30kWyTXoby2E+cxbV6OR8GB/NMZdGxbQBax8/VdtYVjI0n+OBqWA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/skeleton/-/skeleton-2.0.24.tgz} + id: registry.npmmirror.com/@chakra-ui/skeleton/2.0.24 + name: '@chakra-ui/skeleton' + version: 2.0.24 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/media-query': registry.npmmirror.com/@chakra-ui/media-query/3.2.12_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-use-previous': registry.npmmirror.com/@chakra-ui/react-use-previous/2.0.5_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/slider/2.0.21_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-Mm76yJxEqJl21+3waEcKg3tM8Y4elJ7mcViN6Brj35PTfzUJfSJxeBGo1nLPJ+X5jLj7o/L4kfBmUk3lY4QYEQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/slider/-/slider-2.0.21.tgz} + id: registry.npmmirror.com/@chakra-ui/slider/2.0.21 + name: '@chakra-ui/slider' + version: 2.0.21 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/number-utils': registry.npmmirror.com/@chakra-ui/number-utils/2.0.7 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-callback-ref': registry.npmmirror.com/@chakra-ui/react-use-callback-ref/2.0.7_react@18.2.0 + '@chakra-ui/react-use-controllable-state': registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-latest-ref': registry.npmmirror.com/@chakra-ui/react-use-latest-ref/2.0.5_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/react-use-pan-event': registry.npmmirror.com/@chakra-ui/react-use-pan-event/2.0.9_react@18.2.0 + '@chakra-ui/react-use-size': registry.npmmirror.com/@chakra-ui/react-use-size/2.0.9_react@18.2.0 + '@chakra-ui/react-use-update-effect': registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/spinner/2.0.13_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-T1/aSkVpUIuiYyrjfn1+LsQEG7Onbi1UE9ccS/evgf61Dzy4GgTXQUnDuWFSgpV58owqirqOu6jn/9eCwDlzlg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/spinner/-/spinner-2.0.13.tgz} + id: registry.npmmirror.com/@chakra-ui/spinner/2.0.13 + name: '@chakra-ui/spinner' + version: 2.0.13 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/stat/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-PhD+5oVLWjQmGLfeZSmexp3AtLcaggWBwoMZ4z8QMZIQzf/fJJWMk0bMqxlpTv8ORDkfY/4ImuFB/RJHvcqlcA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/stat/-/stat-2.0.17.tgz} + id: registry.npmmirror.com/@chakra-ui/stat/2.0.17 + name: '@chakra-ui/stat' + version: 2.0.17 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/styled-system/2.6.1: + resolution: {integrity: sha512-jy/1dVi1LxjoRCm+Eo5mqBgvPy5SCWMlIcz6GbIZBDpkGeKZwtqrZLjekxxLBCy8ORY+kJlUB0FT6AzVR/1tjw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/styled-system/-/styled-system-2.6.1.tgz} + name: '@chakra-ui/styled-system' + version: 2.6.1 + dependencies: + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + csstype: registry.npmmirror.com/csstype/3.1.1 + lodash.mergewith: registry.npmmirror.com/lodash.mergewith/4.6.2 + dev: false + + registry.npmmirror.com/@chakra-ui/switch/2.0.22_6k64q2ggygf5zznlgufl3vff54: + resolution: {integrity: sha512-+/Yy6y7VFD91uSPruF8ZvePi3tl5D8UNVATtWEQ+QBI92DLSM+PtgJ2F0Y9GMZ9NzMxpZ80DqwY7/kqcPCfLvw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/switch/-/switch-2.0.22.tgz} + id: registry.npmmirror.com/@chakra-ui/switch/2.0.22 + name: '@chakra-ui/switch' + version: 2.0.22 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + framer-motion: '>=4.0.0' + react: '>=18' + dependencies: + '@chakra-ui/checkbox': registry.npmmirror.com/@chakra-ui/checkbox/2.2.10_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba: + resolution: {integrity: sha512-4+86OrcSoq7lGkm5fh+sJ3IWXSTzjz+HOllRbCW2Rtnmcg7ritiXVNV2VygEg2DrCcx5+tNqRHDM764zW+AEug==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/system/-/system-2.5.1.tgz} + id: registry.npmmirror.com/@chakra-ui/system/2.5.1 + name: '@chakra-ui/system' + version: 2.5.1 + peerDependencies: + '@emotion/react': ^11.0.0 + '@emotion/styled': ^11.0.0 + react: '>=18' + dependencies: + '@chakra-ui/color-mode': registry.npmmirror.com/@chakra-ui/color-mode/2.1.12_react@18.2.0 + '@chakra-ui/object-utils': registry.npmmirror.com/@chakra-ui/object-utils/2.0.8 + '@chakra-ui/react-utils': registry.npmmirror.com/@chakra-ui/react-utils/2.0.12_react@18.2.0 + '@chakra-ui/styled-system': registry.npmmirror.com/@chakra-ui/styled-system/2.6.1 + '@chakra-ui/theme-utils': registry.npmmirror.com/@chakra-ui/theme-utils/2.0.11 + '@chakra-ui/utils': registry.npmmirror.com/@chakra-ui/utils/2.0.15 + '@emotion/react': registry.npmmirror.com/@emotion/react/11.10.6_pmekkgnqduwlme35zpnqhenc34 + '@emotion/styled': registry.npmmirror.com/@emotion/styled/11.10.6_oouaibmszuch5k64ms7uxp2aia + react: registry.npmmirror.com/react/18.2.0 + react-fast-compare: registry.npmmirror.com/react-fast-compare/3.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/table/2.0.16_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-vWDXZ6Ad3Aj66curp1tZBHvCfQHX2FJ4ijLiqGgQszWFIchfhJ5vMgEBJaFMZ+BN1draAjuRTZqaQefOApzvRg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/table/-/table-2.0.16.tgz} + id: registry.npmmirror.com/@chakra-ui/table/2.0.16 + name: '@chakra-ui/table' + version: 2.0.16 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/tabs/2.1.8_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-B7LeFN04Ny2jsSy5TFOQxnbZ6ITxGxLxsB2PE0vvQjMSblBrUryOxdjw80HZhfiw6od0ikK9CeKQOIt9QCguSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/tabs/-/tabs-2.1.8.tgz} + id: registry.npmmirror.com/@chakra-ui/tabs/2.1.8 + name: '@chakra-ui/tabs' + version: 2.1.8 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/clickable': registry.npmmirror.com/@chakra-ui/clickable/2.0.14_react@18.2.0 + '@chakra-ui/descendant': registry.npmmirror.com/@chakra-ui/descendant/3.0.13_react@18.2.0 + '@chakra-ui/lazy-utils': registry.npmmirror.com/@chakra-ui/lazy-utils/2.0.5 + '@chakra-ui/react-children-utils': registry.npmmirror.com/@chakra-ui/react-children-utils/2.0.6_react@18.2.0 + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-controllable-state': registry.npmmirror.com/@chakra-ui/react-use-controllable-state/2.0.8_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/react-use-safe-layout-effect': registry.npmmirror.com/@chakra-ui/react-use-safe-layout-effect/2.0.5_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/tag/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-A47zE9Ft9qxOJ+5r1cUseKRCoEdqCRzFm0pOtZgRcckqavglk75Xjgz8HbBpUO2zqqd49MlqdOwR8o87fXS1vg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/tag/-/tag-2.0.17.tgz} + id: registry.npmmirror.com/@chakra-ui/tag/2.0.17 + name: '@chakra-ui/tag' + version: 2.0.17 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/icon': registry.npmmirror.com/@chakra-ui/icon/3.0.16_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/textarea/2.0.18_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-aGHHb29vVifO0OtcK/k8cMykzjOKo/coDTU0NJqz7OOLAWIMNV2eGenvmO1n9tTZbmbqHiX+Sa1nPRX+pd14lg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/textarea/-/textarea-2.0.18.tgz} + id: registry.npmmirror.com/@chakra-ui/textarea/2.0.18 + name: '@chakra-ui/textarea' + version: 2.0.18 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/form-control': registry.npmmirror.com/@chakra-ui/form-control/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/theme-tools/2.0.17_es2flcfvdj7o2v4vs237ptvmhy: + resolution: {integrity: sha512-Auu38hnihlJZQcPok6itRDBbwof3TpXGYtDPnOvrq4Xp7jnab36HLt7KEXSDPXbtOk3ZqU99pvI1en5LbDrdjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/theme-tools/-/theme-tools-2.0.17.tgz} + id: registry.npmmirror.com/@chakra-ui/theme-tools/2.0.17 + name: '@chakra-ui/theme-tools' + version: 2.0.17 + peerDependencies: + '@chakra-ui/styled-system': '>=2.0.0' + dependencies: + '@chakra-ui/anatomy': registry.npmmirror.com/@chakra-ui/anatomy/2.1.2 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/styled-system': registry.npmmirror.com/@chakra-ui/styled-system/2.6.1 + color2k: registry.npmmirror.com/color2k/2.0.2 + dev: false + + registry.npmmirror.com/@chakra-ui/theme-utils/2.0.11: + resolution: {integrity: sha512-lBAay6Sq3/fl7exd3mFxWAbzgdQowytor0fnlHrpNStn1HgFjXukwsf6356XQOie2Vd8qaMM7qZtMh4AiC0dcg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/theme-utils/-/theme-utils-2.0.11.tgz} + name: '@chakra-ui/theme-utils' + version: 2.0.11 + dependencies: + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/styled-system': registry.npmmirror.com/@chakra-ui/styled-system/2.6.1 + '@chakra-ui/theme': registry.npmmirror.com/@chakra-ui/theme/2.2.5_es2flcfvdj7o2v4vs237ptvmhy + lodash.mergewith: registry.npmmirror.com/lodash.mergewith/4.6.2 + dev: false + + registry.npmmirror.com/@chakra-ui/theme/2.2.5_es2flcfvdj7o2v4vs237ptvmhy: + resolution: {integrity: sha512-hYASZMwu0NqEv6PPydu+F3I+kMNd44yR4TwjR/lXBz/LEh64L6UPY6kQjebCfgdVtsGdl3HKg+eLlfa7SvfRgw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/theme/-/theme-2.2.5.tgz} + id: registry.npmmirror.com/@chakra-ui/theme/2.2.5 + name: '@chakra-ui/theme' + version: 2.2.5 + peerDependencies: + '@chakra-ui/styled-system': '>=2.0.0' + dependencies: + '@chakra-ui/anatomy': registry.npmmirror.com/@chakra-ui/anatomy/2.1.2 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/styled-system': registry.npmmirror.com/@chakra-ui/styled-system/2.6.1 + '@chakra-ui/theme-tools': registry.npmmirror.com/@chakra-ui/theme-tools/2.0.17_es2flcfvdj7o2v4vs237ptvmhy + dev: false + + registry.npmmirror.com/@chakra-ui/toast/6.0.1_jgj3ekl54faqnu3nlobnfmds2q: + resolution: {integrity: sha512-ej2kJXvu/d2h6qnXU5D8XTyw0qpsfmbiU7hUffo/sPxkz89AUOQ08RUuUmB1ssW/FZcQvNMJ5WgzCTKHGBxtxw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/toast/-/toast-6.0.1.tgz} + id: registry.npmmirror.com/@chakra-ui/toast/6.0.1 + name: '@chakra-ui/toast' + version: 6.0.1 + peerDependencies: + '@chakra-ui/system': 2.5.1 + framer-motion: '>=4.0.0' + react: '>=18' + react-dom: '>=18' + dependencies: + '@chakra-ui/alert': registry.npmmirror.com/@chakra-ui/alert/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/close-button': registry.npmmirror.com/@chakra-ui/close-button/2.0.17_n3dxrjldmk5gnycgnw7noyo5tu + '@chakra-ui/portal': registry.npmmirror.com/@chakra-ui/portal/2.0.15_biqbaboplfbrettd7655fr4n2y + '@chakra-ui/react-context': registry.npmmirror.com/@chakra-ui/react-context/2.0.7_react@18.2.0 + '@chakra-ui/react-use-timeout': registry.npmmirror.com/@chakra-ui/react-use-timeout/2.0.5_react@18.2.0 + '@chakra-ui/react-use-update-effect': registry.npmmirror.com/@chakra-ui/react-use-update-effect/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/styled-system': registry.npmmirror.com/@chakra-ui/styled-system/2.6.1 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + '@chakra-ui/theme': registry.npmmirror.com/@chakra-ui/theme/2.2.5_es2flcfvdj7o2v4vs237ptvmhy + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/tooltip/2.2.6_jgj3ekl54faqnu3nlobnfmds2q: + resolution: {integrity: sha512-4cbneidZ5+HCWge3OZzewRQieIvhDjSsl+scrl4Scx7E0z3OmqlTIESU5nGIZDBLYqKn/UirEZhqaQ33FOS2fw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/tooltip/-/tooltip-2.2.6.tgz} + id: registry.npmmirror.com/@chakra-ui/tooltip/2.2.6 + name: '@chakra-ui/tooltip' + version: 2.2.6 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + framer-motion: '>=4.0.0' + react: '>=18' + react-dom: '>=18' + dependencies: + '@chakra-ui/popper': registry.npmmirror.com/@chakra-ui/popper/3.0.13_react@18.2.0 + '@chakra-ui/portal': registry.npmmirror.com/@chakra-ui/portal/2.0.15_biqbaboplfbrettd7655fr4n2y + '@chakra-ui/react-types': registry.npmmirror.com/@chakra-ui/react-types/2.0.7_react@18.2.0 + '@chakra-ui/react-use-disclosure': registry.npmmirror.com/@chakra-ui/react-use-disclosure/2.0.8_react@18.2.0 + '@chakra-ui/react-use-event-listener': registry.npmmirror.com/@chakra-ui/react-use-event-listener/2.0.7_react@18.2.0 + '@chakra-ui/react-use-merge-refs': registry.npmmirror.com/@chakra-ui/react-use-merge-refs/2.0.7_react@18.2.0 + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/transition/2.0.15_pzwl6r6fldxibqxqtuniqxwu5a: + resolution: {integrity: sha512-o9LBK/llQfUDHF/Ty3cQ6nShpekKTqHUoJlUOzNKhoTsNpoRerr9v0jwojrX1YI02KtVjfhFU6PiqXlDfREoNw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/transition/-/transition-2.0.15.tgz} + id: registry.npmmirror.com/@chakra-ui/transition/2.0.15 + name: '@chakra-ui/transition' + version: 2.0.15 + peerDependencies: + framer-motion: '>=4.0.0' + react: '>=18' + dependencies: + '@chakra-ui/shared-utils': registry.npmmirror.com/@chakra-ui/shared-utils/2.0.5 + framer-motion: registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@chakra-ui/utils/2.0.15: + resolution: {integrity: sha512-El4+jL0WSaYYs+rJbuYFDbjmfCcfGDmRY95GO4xwzit6YAPZBLcR65rOEwLps+XWluZTy1xdMrusg/hW0c1aAA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/utils/-/utils-2.0.15.tgz} + name: '@chakra-ui/utils' + version: 2.0.15 + dependencies: + '@types/lodash.mergewith': registry.npmmirror.com/@types/lodash.mergewith/4.6.7 + css-box-model: registry.npmmirror.com/css-box-model/1.2.1 + framesync: registry.npmmirror.com/framesync/6.1.2 + lodash.mergewith: registry.npmmirror.com/lodash.mergewith/4.6.2 + dev: false + + registry.npmmirror.com/@chakra-ui/visually-hidden/2.0.15_n3dxrjldmk5gnycgnw7noyo5tu: + resolution: {integrity: sha512-WWULIiucYRBIewHKFA7BssQ2ABLHLVd9lrUo3N3SZgR0u4ZRDDVEUNOy+r+9ruDze8+36dGbN9wsN1IdELtdOw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@chakra-ui/visually-hidden/-/visually-hidden-2.0.15.tgz} + id: registry.npmmirror.com/@chakra-ui/visually-hidden/2.0.15 + name: '@chakra-ui/visually-hidden' + version: 2.0.15 + peerDependencies: + '@chakra-ui/system': '>=2.0.0' + react: '>=18' + dependencies: + '@chakra-ui/system': registry.npmmirror.com/@chakra-ui/system/2.5.1_xqp3pgpqjlfxxa3zxu4zoc4fba + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@emotion/babel-plugin/11.10.6: + resolution: {integrity: sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz} + name: '@emotion/babel-plugin' + version: 11.10.6 + dependencies: + '@babel/helper-module-imports': registry.npmmirror.com/@babel/helper-module-imports/7.18.6 + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + '@emotion/hash': registry.npmmirror.com/@emotion/hash/0.9.0 + '@emotion/memoize': registry.npmmirror.com/@emotion/memoize/0.8.0 + '@emotion/serialize': registry.npmmirror.com/@emotion/serialize/1.1.1 + babel-plugin-macros: registry.npmmirror.com/babel-plugin-macros/3.1.0 + convert-source-map: registry.npmmirror.com/convert-source-map/1.9.0 + escape-string-regexp: registry.npmmirror.com/escape-string-regexp/4.0.0 + find-root: registry.npmmirror.com/find-root/1.1.0 + source-map: registry.npmmirror.com/source-map/0.5.7 + stylis: registry.npmmirror.com/stylis/4.1.3 + dev: false + + registry.npmmirror.com/@emotion/cache/11.10.5: + resolution: {integrity: sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/cache/-/cache-11.10.5.tgz} + name: '@emotion/cache' + version: 11.10.5 + dependencies: + '@emotion/memoize': registry.npmmirror.com/@emotion/memoize/0.8.0 + '@emotion/sheet': registry.npmmirror.com/@emotion/sheet/1.2.1 + '@emotion/utils': registry.npmmirror.com/@emotion/utils/1.2.0 + '@emotion/weak-memoize': registry.npmmirror.com/@emotion/weak-memoize/0.3.0 + stylis: registry.npmmirror.com/stylis/4.1.3 + dev: false + + registry.npmmirror.com/@emotion/hash/0.9.0: + resolution: {integrity: sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/hash/-/hash-0.9.0.tgz} + name: '@emotion/hash' + version: 0.9.0 + dev: false + + registry.npmmirror.com/@emotion/is-prop-valid/0.8.8: + resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz} + name: '@emotion/is-prop-valid' + version: 0.8.8 + requiresBuild: true + dependencies: + '@emotion/memoize': registry.npmmirror.com/@emotion/memoize/0.7.4 + dev: false + optional: true + + registry.npmmirror.com/@emotion/is-prop-valid/1.2.0: + resolution: {integrity: sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz} + name: '@emotion/is-prop-valid' + version: 1.2.0 + dependencies: + '@emotion/memoize': registry.npmmirror.com/@emotion/memoize/0.8.0 + dev: false + + registry.npmmirror.com/@emotion/memoize/0.7.4: + resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/memoize/-/memoize-0.7.4.tgz} + name: '@emotion/memoize' + version: 0.7.4 + dev: false + optional: true + + registry.npmmirror.com/@emotion/memoize/0.8.0: + resolution: {integrity: sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/memoize/-/memoize-0.8.0.tgz} + name: '@emotion/memoize' + version: 0.8.0 + dev: false + + registry.npmmirror.com/@emotion/react/11.10.6_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-6HT8jBmcSkfzO7mc+N1L9uwvOnlcGoix8Zn7srt+9ga0MjREo6lRpuVX0kzo6Jp6oTqDhREOFsygN6Ew4fEQbw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/react/-/react-11.10.6.tgz} + id: registry.npmmirror.com/@emotion/react/11.10.6 + name: '@emotion/react' + version: 11.10.6 + peerDependencies: + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + '@emotion/babel-plugin': registry.npmmirror.com/@emotion/babel-plugin/11.10.6 + '@emotion/cache': registry.npmmirror.com/@emotion/cache/11.10.5 + '@emotion/serialize': registry.npmmirror.com/@emotion/serialize/1.1.1 + '@emotion/use-insertion-effect-with-fallbacks': registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/1.0.0_react@18.2.0 + '@emotion/utils': registry.npmmirror.com/@emotion/utils/1.2.0 + '@emotion/weak-memoize': registry.npmmirror.com/@emotion/weak-memoize/0.3.0 + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + hoist-non-react-statics: registry.npmmirror.com/hoist-non-react-statics/3.3.2 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@emotion/serialize/1.1.1: + resolution: {integrity: sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/serialize/-/serialize-1.1.1.tgz} + name: '@emotion/serialize' + version: 1.1.1 + dependencies: + '@emotion/hash': registry.npmmirror.com/@emotion/hash/0.9.0 + '@emotion/memoize': registry.npmmirror.com/@emotion/memoize/0.8.0 + '@emotion/unitless': registry.npmmirror.com/@emotion/unitless/0.8.0 + '@emotion/utils': registry.npmmirror.com/@emotion/utils/1.2.0 + csstype: registry.npmmirror.com/csstype/3.1.1 + dev: false + + registry.npmmirror.com/@emotion/sheet/1.2.1: + resolution: {integrity: sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/sheet/-/sheet-1.2.1.tgz} + name: '@emotion/sheet' + version: 1.2.1 + dev: false + + registry.npmmirror.com/@emotion/styled/11.10.6_oouaibmszuch5k64ms7uxp2aia: + resolution: {integrity: sha512-OXtBzOmDSJo5Q0AFemHCfl+bUueT8BIcPSxu0EGTpGk6DmI5dnhSzQANm1e1ze0YZL7TDyAyy6s/b/zmGOS3Og==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/styled/-/styled-11.10.6.tgz} + id: registry.npmmirror.com/@emotion/styled/11.10.6 + name: '@emotion/styled' + version: 11.10.6 + peerDependencies: + '@emotion/react': ^11.0.0-rc.0 + '@types/react': '*' + react: '>=16.8.0' + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + '@emotion/babel-plugin': registry.npmmirror.com/@emotion/babel-plugin/11.10.6 + '@emotion/is-prop-valid': registry.npmmirror.com/@emotion/is-prop-valid/1.2.0 + '@emotion/react': registry.npmmirror.com/@emotion/react/11.10.6_pmekkgnqduwlme35zpnqhenc34 + '@emotion/serialize': registry.npmmirror.com/@emotion/serialize/1.1.1 + '@emotion/use-insertion-effect-with-fallbacks': registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/1.0.0_react@18.2.0 + '@emotion/utils': registry.npmmirror.com/@emotion/utils/1.2.0 + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@emotion/unitless/0.8.0: + resolution: {integrity: sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/unitless/-/unitless-0.8.0.tgz} + name: '@emotion/unitless' + version: 0.8.0 + dev: false + + registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/1.0.0_react@18.2.0: + resolution: {integrity: sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz} + id: registry.npmmirror.com/@emotion/use-insertion-effect-with-fallbacks/1.0.0 + name: '@emotion/use-insertion-effect-with-fallbacks' + version: 1.0.0 + peerDependencies: + react: '>=16.8.0' + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/@emotion/utils/1.2.0: + resolution: {integrity: sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/utils/-/utils-1.2.0.tgz} + name: '@emotion/utils' + version: 1.2.0 + dev: false + + registry.npmmirror.com/@emotion/weak-memoize/0.3.0: + resolution: {integrity: sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz} + name: '@emotion/weak-memoize' + version: 0.3.0 + dev: false + registry.npmmirror.com/@eslint/eslintrc/1.4.1: resolution: {integrity: sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz} name: '@eslint/eslintrc' @@ -80,6 +2634,65 @@ packages: version: 1.2.1 dev: false + registry.npmmirror.com/@motionone/animation/10.15.1: + resolution: {integrity: sha512-mZcJxLjHor+bhcPuIFErMDNyrdb2vJur8lSfMCsuCB4UyV8ILZLvK+t+pg56erv8ud9xQGK/1OGPt10agPrCyQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@motionone/animation/-/animation-10.15.1.tgz} + name: '@motionone/animation' + version: 10.15.1 + dependencies: + '@motionone/easing': registry.npmmirror.com/@motionone/easing/10.15.1 + '@motionone/types': registry.npmmirror.com/@motionone/types/10.15.1 + '@motionone/utils': registry.npmmirror.com/@motionone/utils/10.15.1 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/@motionone/dom/10.15.5: + resolution: {integrity: sha512-Xc5avlgyh3xukU9tydh9+8mB8+2zAq+WlLsC3eEIp7Ax7DnXgY7Bj/iv0a4X2R9z9ZFZiaXK3BO0xMYHKbAAdA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@motionone/dom/-/dom-10.15.5.tgz} + name: '@motionone/dom' + version: 10.15.5 + dependencies: + '@motionone/animation': registry.npmmirror.com/@motionone/animation/10.15.1 + '@motionone/generators': registry.npmmirror.com/@motionone/generators/10.15.1 + '@motionone/types': registry.npmmirror.com/@motionone/types/10.15.1 + '@motionone/utils': registry.npmmirror.com/@motionone/utils/10.15.1 + hey-listen: registry.npmmirror.com/hey-listen/1.0.8 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/@motionone/easing/10.15.1: + resolution: {integrity: sha512-6hIHBSV+ZVehf9dcKZLT7p5PEKHGhDwky2k8RKkmOvUoYP3S+dXsKupyZpqx5apjd9f+php4vXk4LuS+ADsrWw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@motionone/easing/-/easing-10.15.1.tgz} + name: '@motionone/easing' + version: 10.15.1 + dependencies: + '@motionone/utils': registry.npmmirror.com/@motionone/utils/10.15.1 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/@motionone/generators/10.15.1: + resolution: {integrity: sha512-67HLsvHJbw6cIbLA/o+gsm7h+6D4Sn7AUrB/GPxvujse1cGZ38F5H7DzoH7PhX+sjvtDnt2IhFYF2Zp1QTMKWQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@motionone/generators/-/generators-10.15.1.tgz} + name: '@motionone/generators' + version: 10.15.1 + dependencies: + '@motionone/types': registry.npmmirror.com/@motionone/types/10.15.1 + '@motionone/utils': registry.npmmirror.com/@motionone/utils/10.15.1 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/@motionone/types/10.15.1: + resolution: {integrity: sha512-iIUd/EgUsRZGrvW0jqdst8st7zKTzS9EsKkP+6c6n4MPZoQHwiHuVtTQLD6Kp0bsBLhNzKIBlHXponn/SDT4hA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@motionone/types/-/types-10.15.1.tgz} + name: '@motionone/types' + version: 10.15.1 + dev: false + + registry.npmmirror.com/@motionone/utils/10.15.1: + resolution: {integrity: sha512-p0YncgU+iklvYr/Dq4NobTRdAPv9PveRDUXabPEeOjBLSO/1FNB2phNTZxOxpi1/GZwYpAoECEa0Wam+nsmhSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@motionone/utils/-/utils-10.15.1.tgz} + name: '@motionone/utils' + version: 10.15.1 + dependencies: + '@motionone/types': registry.npmmirror.com/@motionone/types/10.15.1 + hey-listen: registry.npmmirror.com/hey-listen/1.0.8 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + registry.npmmirror.com/@next/env/13.1.6: resolution: {integrity: sha512-s+W9Fdqh5MFk6ECrbnVmmAOwxKQuhGMT7xXHrkYIBMBcTiOqNWhv5KbJIboKR5STXxNXl32hllnvKaffzFaWQg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@next/env/-/env-13.1.6.tgz} name: '@next/env' @@ -288,6 +2901,33 @@ packages: tslib: registry.npmmirror.com/tslib/2.5.0 dev: false + registry.npmmirror.com/@popperjs/core/2.11.6: + resolution: {integrity: sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@popperjs/core/-/core-2.11.6.tgz} + name: '@popperjs/core' + version: 2.11.6 + dev: false + + registry.npmmirror.com/@reduxjs/toolkit/1.9.3_react@18.2.0: + resolution: {integrity: sha512-GU2TNBQVofL09VGmuSioNPQIu6Ml0YLf4EJhgj0AvBadRlCGzUWet8372LjvO4fqKZF2vH1xU0htAa7BrK9pZg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@reduxjs/toolkit/-/toolkit-1.9.3.tgz} + id: registry.npmmirror.com/@reduxjs/toolkit/1.9.3 + name: '@reduxjs/toolkit' + version: 1.9.3 + peerDependencies: + react: ^16.9.0 || ^17.0.0 || ^18 + react-redux: ^7.2.1 || ^8.0.2 + peerDependenciesMeta: + react: + optional: true + react-redux: + optional: true + dependencies: + immer: registry.npmmirror.com/immer/9.0.19 + react: registry.npmmirror.com/react/18.2.0 + redux: registry.npmmirror.com/redux/4.2.1 + redux-thunk: registry.npmmirror.com/redux-thunk/2.4.2_redux@4.2.1 + reselect: registry.npmmirror.com/reselect/4.1.7 + dev: false + registry.npmmirror.com/@rushstack/eslint-patch/1.2.0: resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz} name: '@rushstack/eslint-patch' @@ -302,23 +2942,122 @@ packages: tslib: registry.npmmirror.com/tslib/2.5.0 dev: false + registry.npmmirror.com/@tanstack/query-core/4.24.10: + resolution: {integrity: sha512-2QywqXEAGBIUoTdgn1lAB4/C8QEqwXHj2jrCLeYTk2xVGtLiPEUD8jcMoeB2noclbiW2mMt4+Fq7fZStuz3wAQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@tanstack/query-core/-/query-core-4.24.10.tgz} + name: '@tanstack/query-core' + version: 4.24.10 + dev: false + + registry.npmmirror.com/@tanstack/react-query/4.24.10_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-FY1DixytOcNNCydPQXLxuKEV7VSST32CAuJ55BjhDNqASnMLZn+6c30yQBMrODjmWMNwzfjMZnq0Vw7C62Fwow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@tanstack/react-query/-/react-query-4.24.10.tgz} + id: registry.npmmirror.com/@tanstack/react-query/4.24.10 + name: '@tanstack/react-query' + version: 4.24.10 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + dependencies: + '@tanstack/query-core': registry.npmmirror.com/@tanstack/query-core/4.24.10 + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + use-sync-external-store: registry.npmmirror.com/use-sync-external-store/1.2.0_react@18.2.0 + dev: false + + registry.npmmirror.com/@types/debug/4.1.7: + resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/debug/-/debug-4.1.7.tgz} + name: '@types/debug' + version: 4.1.7 + dependencies: + '@types/ms': registry.npmmirror.com/@types/ms/0.7.31 + dev: false + + registry.npmmirror.com/@types/formidable/2.0.5: + resolution: {integrity: sha512-uvMcdn/KK3maPOaVUAc3HEYbCEhjaGFwww4EsX6IJfWIJ1tzHtDHczuImH3GKdusPnAAmzB07St90uabZeCKPA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/formidable/-/formidable-2.0.5.tgz} + name: '@types/formidable' + version: 2.0.5 + dependencies: + '@types/node': registry.npmmirror.com/@types/node/18.14.0 + dev: true + + registry.npmmirror.com/@types/hast/2.3.4: + resolution: {integrity: sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/hast/-/hast-2.3.4.tgz} + name: '@types/hast' + version: 2.3.4 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + dev: false + registry.npmmirror.com/@types/json5/0.0.29: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/json5/-/json5-0.0.29.tgz} name: '@types/json5' version: 0.0.29 dev: false + registry.npmmirror.com/@types/jsonwebtoken/9.0.1: + resolution: {integrity: sha512-c5ltxazpWabia/4UzhIoaDcIza4KViOQhdbjRlfcIGVnsE3c3brkz9Z+F/EeJIECOQP7W7US2hNE930cWWkPiw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz} + name: '@types/jsonwebtoken' + version: 9.0.1 + dependencies: + '@types/node': registry.npmmirror.com/@types/node/18.14.0 + dev: true + + registry.npmmirror.com/@types/lodash.mergewith/4.6.7: + resolution: {integrity: sha512-3m+lkO5CLRRYU0fhGRp7zbsGi6+BZj0uTVSwvcKU+nSlhjA9/QRNfuSGnD2mX6hQA7ZbmcCkzk5h4ZYGOtk14A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/lodash.mergewith/-/lodash.mergewith-4.6.7.tgz} + name: '@types/lodash.mergewith' + version: 4.6.7 + dependencies: + '@types/lodash': registry.npmmirror.com/@types/lodash/4.14.191 + dev: false + + registry.npmmirror.com/@types/lodash/4.14.191: + resolution: {integrity: sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.191.tgz} + name: '@types/lodash' + version: 4.14.191 + dev: false + + registry.npmmirror.com/@types/mdast/3.0.10: + resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/mdast/-/mdast-3.0.10.tgz} + name: '@types/mdast' + version: 3.0.10 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + dev: false + + registry.npmmirror.com/@types/ms/0.7.31: + resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/ms/-/ms-0.7.31.tgz} + name: '@types/ms' + version: 0.7.31 + dev: false + registry.npmmirror.com/@types/node/18.14.0: resolution: {integrity: sha512-5EWrvLmglK+imbCJY0+INViFWUHg1AHel1sq4ZVSfdcNqGy9Edv3UB9IIzzg+xPaUcAgZYcfVs2fBcwDeZzU0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/node/-/node-18.14.0.tgz} name: '@types/node' version: 18.14.0 + + registry.npmmirror.com/@types/nodemailer/6.4.7: + resolution: {integrity: sha512-f5qCBGAn/f0qtRcd4SEn88c8Fp3Swct1731X4ryPKqS61/A3LmmzN8zaEz7hneJvpjFbUUgY7lru/B/7ODTazg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/nodemailer/-/nodemailer-6.4.7.tgz} + name: '@types/nodemailer' + version: 6.4.7 + dependencies: + '@types/node': registry.npmmirror.com/@types/node/18.14.0 + dev: true + + registry.npmmirror.com/@types/parse-json/4.0.0: + resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/parse-json/-/parse-json-4.0.0.tgz} + name: '@types/parse-json' + version: 4.0.0 dev: false registry.npmmirror.com/@types/prop-types/15.7.5: resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/prop-types/-/prop-types-15.7.5.tgz} name: '@types/prop-types' version: 15.7.5 - dev: false registry.npmmirror.com/@types/react-dom/18.0.11: resolution: {integrity: sha512-O38bPbI2CWtgw/OoQoY+BRelw7uysmXbWvw3nLWO21H1HSh+GOlqPuXshJfjmpNlKiiSDG9cc1JZAaMmVdcTlw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/react-dom/-/react-dom-18.0.11.tgz} @@ -326,7 +3065,15 @@ packages: version: 18.0.11 dependencies: '@types/react': registry.npmmirror.com/@types/react/18.0.28 - dev: false + dev: true + + registry.npmmirror.com/@types/react-syntax-highlighter/15.5.6: + resolution: {integrity: sha512-i7wFuLbIAFlabTeD2I1cLjEOrG/xdMa/rpx2zwzAoGHuXJDhSqp9BSfDlMHSh9JSuNfxHk9eEmMX6D55GiyjGg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/react-syntax-highlighter/-/react-syntax-highlighter-15.5.6.tgz} + name: '@types/react-syntax-highlighter' + version: 15.5.6 + dependencies: + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + dev: true registry.npmmirror.com/@types/react/18.0.28: resolution: {integrity: sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/react/-/react-18.0.28.tgz} @@ -336,12 +3083,45 @@ packages: '@types/prop-types': registry.npmmirror.com/@types/prop-types/15.7.5 '@types/scheduler': registry.npmmirror.com/@types/scheduler/0.16.2 csstype: registry.npmmirror.com/csstype/3.1.1 - dev: false registry.npmmirror.com/@types/scheduler/0.16.2: resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/scheduler/-/scheduler-0.16.2.tgz} name: '@types/scheduler' version: 0.16.2 + + registry.npmmirror.com/@types/tunnel/0.0.3: + resolution: {integrity: sha512-sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/tunnel/-/tunnel-0.0.3.tgz} + name: '@types/tunnel' + version: 0.0.3 + dependencies: + '@types/node': registry.npmmirror.com/@types/node/18.14.0 + dev: true + + registry.npmmirror.com/@types/unist/2.0.6: + resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/unist/-/unist-2.0.6.tgz} + name: '@types/unist' + version: 2.0.6 + dev: false + + registry.npmmirror.com/@types/uuid/9.0.1: + resolution: {integrity: sha512-rFT3ak0/2trgvp4yYZo5iKFEPsET7vKydKF+VRCxlQ9bpheehyAJH89dAkaLEq/j/RZXJIqcgsmPJKUP1Z28HA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/uuid/-/uuid-9.0.1.tgz} + name: '@types/uuid' + version: 9.0.1 + dev: true + + registry.npmmirror.com/@types/webidl-conversions/7.0.0: + resolution: {integrity: sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz} + name: '@types/webidl-conversions' + version: 7.0.0 + dev: false + + registry.npmmirror.com/@types/whatwg-url/8.2.2: + resolution: {integrity: sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/whatwg-url/-/whatwg-url-8.2.2.tgz} + name: '@types/whatwg-url' + version: 8.2.2 + dependencies: + '@types/node': registry.npmmirror.com/@types/node/18.14.0 + '@types/webidl-conversions': registry.npmmirror.com/@types/webidl-conversions/7.0.0 dev: false registry.npmmirror.com/@typescript-eslint/parser/5.52.0_7kw3g6rralp5ps6mg3uyzz6azm: @@ -418,6 +3198,18 @@ packages: eslint-visitor-keys: registry.npmmirror.com/eslint-visitor-keys/3.3.0 dev: false + registry.npmmirror.com/@zag-js/element-size/0.3.1: + resolution: {integrity: sha512-jR5j4G//bRzcxwAACWi9EfITnwjNmn10LxF4NmALrdZU7/PNWP3uUCdhCxd/0SCyeiJXUl0yvD57rWAbKPs1nw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@zag-js/element-size/-/element-size-0.3.1.tgz} + name: '@zag-js/element-size' + version: 0.3.1 + dev: false + + registry.npmmirror.com/@zag-js/focus-visible/0.2.1: + resolution: {integrity: sha512-19uTjoZGP4/Ax7kSNhhay9JA83BirKzpqLkeEAilrpdI1hE5xuq6q+tzJOsrMOOqJrm7LkmZp5lbsTQzvK2pYg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@zag-js/focus-visible/-/focus-visible-0.2.1.tgz} + name: '@zag-js/focus-visible' + version: 0.2.1 + dev: false + registry.npmmirror.com/acorn-jsx/5.3.2_acorn@8.8.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz} id: registry.npmmirror.com/acorn-jsx/5.3.2 @@ -437,6 +3229,16 @@ packages: hasBin: true dev: false + registry.npmmirror.com/aggregate-error/3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/aggregate-error/-/aggregate-error-3.1.0.tgz} + name: aggregate-error + version: 3.1.0 + engines: {node: '>=8'} + dependencies: + clean-stack: registry.npmmirror.com/clean-stack/2.2.0 + indent-string: registry.npmmirror.com/indent-string/4.0.0 + dev: true + registry.npmmirror.com/ajv/6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz} name: ajv @@ -448,11 +3250,35 @@ packages: uri-js: registry.npmmirror.com/uri-js/4.4.1 dev: false + registry.npmmirror.com/ansi-escapes/4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz} + name: ansi-escapes + version: 4.3.2 + engines: {node: '>=8'} + dependencies: + type-fest: registry.npmmirror.com/type-fest/0.21.3 + dev: true + registry.npmmirror.com/ansi-regex/5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz} name: ansi-regex version: 5.0.1 engines: {node: '>=8'} + + registry.npmmirror.com/ansi-regex/6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-regex/-/ansi-regex-6.0.1.tgz} + name: ansi-regex + version: 6.0.1 + engines: {node: '>=12'} + dev: true + + registry.npmmirror.com/ansi-styles/3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz} + name: ansi-styles + version: 3.2.1 + engines: {node: '>=4'} + dependencies: + color-convert: registry.npmmirror.com/color-convert/1.9.3 dev: false registry.npmmirror.com/ansi-styles/4.3.0: @@ -462,6 +3288,22 @@ packages: engines: {node: '>=8'} dependencies: color-convert: registry.npmmirror.com/color-convert/2.0.1 + + registry.npmmirror.com/ansi-styles/6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-styles/-/ansi-styles-6.2.1.tgz} + name: ansi-styles + version: 6.2.1 + engines: {node: '>=12'} + dev: true + + registry.npmmirror.com/anymatch/3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz} + name: anymatch + version: 3.1.3 + engines: {node: '>= 8'} + dependencies: + normalize-path: registry.npmmirror.com/normalize-path/3.0.0 + picomatch: registry.npmmirror.com/picomatch/2.3.1 dev: false registry.npmmirror.com/argparse/2.0.1: @@ -470,6 +3312,24 @@ packages: version: 2.0.1 dev: false + registry.npmmirror.com/aria-hidden/1.2.2_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-6y/ogyDTk/7YAe91T3E2PR1ALVKyM2QbTio5HwM+N1Q6CMlCKhvClyIjkckBswa0f2xJhjsfzIGa1yVSe1UMVA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/aria-hidden/-/aria-hidden-1.2.2.tgz} + id: registry.npmmirror.com/aria-hidden/1.2.2 + name: aria-hidden + version: 1.2.2 + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 + react: ^16.9.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + react: registry.npmmirror.com/react/18.2.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + registry.npmmirror.com/aria-query/5.1.3: resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/aria-query/-/aria-query-5.1.3.tgz} name: aria-query @@ -534,12 +3394,31 @@ packages: get-intrinsic: registry.npmmirror.com/get-intrinsic/1.2.0 dev: false + registry.npmmirror.com/asap/2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/asap/-/asap-2.0.6.tgz} + name: asap + version: 2.0.6 + dev: false + registry.npmmirror.com/ast-types-flow/0.0.7: resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz} name: ast-types-flow version: 0.0.7 dev: false + registry.npmmirror.com/astral-regex/2.0.0: + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/astral-regex/-/astral-regex-2.0.0.tgz} + name: astral-regex + version: 2.0.0 + engines: {node: '>=8'} + dev: true + + registry.npmmirror.com/asynckit/0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz} + name: asynckit + version: 0.4.0 + dev: false + registry.npmmirror.com/available-typed-arrays/1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz} name: available-typed-arrays @@ -554,6 +3433,28 @@ packages: engines: {node: '>=4'} dev: false + registry.npmmirror.com/axios/0.26.1: + resolution: {integrity: sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/axios/-/axios-0.26.1.tgz} + name: axios + version: 0.26.1 + dependencies: + follow-redirects: registry.npmmirror.com/follow-redirects/1.15.2 + transitivePeerDependencies: + - debug + dev: false + + registry.npmmirror.com/axios/1.3.3: + resolution: {integrity: sha512-eYq77dYIFS77AQlhzEL937yUBSepBfPIe8FcgEDN35vMNZKMrs81pgnyrQpwfy4NF4b4XWX1Zgx7yX+25w8QJA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/axios/-/axios-1.3.3.tgz} + name: axios + version: 1.3.3 + dependencies: + follow-redirects: registry.npmmirror.com/follow-redirects/1.15.2 + form-data: registry.npmmirror.com/form-data/4.0.0 + proxy-from-env: registry.npmmirror.com/proxy-from-env/1.1.0 + transitivePeerDependencies: + - debug + dev: false + registry.npmmirror.com/axobject-query/3.1.1: resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/axobject-query/-/axobject-query-3.1.1.tgz} name: axobject-query @@ -562,12 +3463,59 @@ packages: deep-equal: registry.npmmirror.com/deep-equal/2.2.0 dev: false + registry.npmmirror.com/babel-plugin-macros/3.1.0: + resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz} + name: babel-plugin-macros + version: 3.1.0 + engines: {node: '>=10', npm: '>=6'} + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + cosmiconfig: registry.npmmirror.com/cosmiconfig/7.1.0 + resolve: registry.npmmirror.com/resolve/1.22.1 + dev: false + + registry.npmmirror.com/bail/2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bail/-/bail-2.0.2.tgz} + name: bail + version: 2.0.2 + dev: false + registry.npmmirror.com/balanced-match/1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz} name: balanced-match version: 1.0.2 dev: false + registry.npmmirror.com/base64-js/1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz} + name: base64-js + version: 1.5.1 + dev: false + + registry.npmmirror.com/binary-extensions/2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz} + name: binary-extensions + version: 2.2.0 + engines: {node: '>=8'} + dev: false + + registry.npmmirror.com/bl/4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz} + name: bl + version: 4.1.0 + dependencies: + buffer: registry.npmmirror.com/buffer/5.7.1 + inherits: registry.npmmirror.com/inherits/2.0.4 + readable-stream: registry.npmmirror.com/readable-stream/3.6.1 + dev: false + + registry.npmmirror.com/bowser/2.11.0: + resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bowser/-/bowser-2.11.0.tgz} + name: bowser + version: 2.11.0 + dev: false + optional: true + registry.npmmirror.com/brace-expansion/1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz} name: brace-expansion @@ -584,6 +3532,29 @@ packages: engines: {node: '>=8'} dependencies: fill-range: registry.npmmirror.com/fill-range/7.0.1 + + registry.npmmirror.com/bson/4.7.2: + resolution: {integrity: sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/bson/-/bson-4.7.2.tgz} + name: bson + version: 4.7.2 + engines: {node: '>=6.9.0'} + dependencies: + buffer: registry.npmmirror.com/buffer/5.7.1 + dev: false + + registry.npmmirror.com/buffer-equal-constant-time/1.0.1: + resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz} + name: buffer-equal-constant-time + version: 1.0.1 + dev: false + + registry.npmmirror.com/buffer/5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz} + name: buffer + version: 5.7.1 + dependencies: + base64-js: registry.npmmirror.com/base64-js/1.5.1 + ieee754: registry.npmmirror.com/ieee754/1.2.1 dev: false registry.npmmirror.com/call-bind/1.0.2: @@ -608,6 +3579,23 @@ packages: version: 1.0.30001456 dev: false + registry.npmmirror.com/ccount/2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ccount/-/ccount-2.0.1.tgz} + name: ccount + version: 2.0.1 + dev: false + + registry.npmmirror.com/chalk/2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz} + name: chalk + version: 2.4.2 + engines: {node: '>=4'} + dependencies: + ansi-styles: registry.npmmirror.com/ansi-styles/3.2.1 + escape-string-regexp: registry.npmmirror.com/escape-string-regexp/1.0.5 + supports-color: registry.npmmirror.com/supports-color/5.5.0 + dev: false + registry.npmmirror.com/chalk/4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz} name: chalk @@ -618,12 +3606,103 @@ packages: supports-color: registry.npmmirror.com/supports-color/7.2.0 dev: false + registry.npmmirror.com/character-entities-legacy/1.1.4: + resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz} + name: character-entities-legacy + version: 1.1.4 + dev: false + + registry.npmmirror.com/character-entities/1.2.4: + resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/character-entities/-/character-entities-1.2.4.tgz} + name: character-entities + version: 1.2.4 + dev: false + + registry.npmmirror.com/character-entities/2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/character-entities/-/character-entities-2.0.2.tgz} + name: character-entities + version: 2.0.2 + dev: false + + registry.npmmirror.com/character-reference-invalid/1.1.4: + resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz} + name: character-reference-invalid + version: 1.1.4 + dev: false + + registry.npmmirror.com/chokidar/3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz} + name: chokidar + version: 3.5.3 + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: registry.npmmirror.com/anymatch/3.1.3 + braces: registry.npmmirror.com/braces/3.0.2 + glob-parent: registry.npmmirror.com/glob-parent/5.1.2 + is-binary-path: registry.npmmirror.com/is-binary-path/2.1.0 + is-glob: registry.npmmirror.com/is-glob/4.0.3 + normalize-path: registry.npmmirror.com/normalize-path/3.0.0 + readdirp: registry.npmmirror.com/readdirp/3.6.0 + optionalDependencies: + fsevents: registry.npmmirror.com/fsevents/2.3.2 + dev: false + + registry.npmmirror.com/chownr/1.1.4: + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chownr/-/chownr-1.1.4.tgz} + name: chownr + version: 1.1.4 + dev: false + + registry.npmmirror.com/clean-stack/2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz} + name: clean-stack + version: 2.2.0 + engines: {node: '>=6'} + dev: true + + registry.npmmirror.com/cli-cursor/3.1.0: + resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cli-cursor/-/cli-cursor-3.1.0.tgz} + name: cli-cursor + version: 3.1.0 + engines: {node: '>=8'} + dependencies: + restore-cursor: registry.npmmirror.com/restore-cursor/3.1.0 + dev: true + + registry.npmmirror.com/cli-truncate/2.1.0: + resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cli-truncate/-/cli-truncate-2.1.0.tgz} + name: cli-truncate + version: 2.1.0 + engines: {node: '>=8'} + dependencies: + slice-ansi: registry.npmmirror.com/slice-ansi/3.0.0 + string-width: registry.npmmirror.com/string-width/4.2.3 + dev: true + + registry.npmmirror.com/cli-truncate/3.1.0: + resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cli-truncate/-/cli-truncate-3.1.0.tgz} + name: cli-truncate + version: 3.1.0 + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + slice-ansi: registry.npmmirror.com/slice-ansi/5.0.0 + string-width: registry.npmmirror.com/string-width/5.1.2 + dev: true + registry.npmmirror.com/client-only/0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/client-only/-/client-only-0.0.1.tgz} name: client-only version: 0.0.1 dev: false + registry.npmmirror.com/color-convert/1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz} + name: color-convert + version: 1.9.3 + dependencies: + color-name: registry.npmmirror.com/color-name/1.1.3 + dev: false + registry.npmmirror.com/color-convert/2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz} name: color-convert @@ -631,12 +3710,81 @@ packages: engines: {node: '>=7.0.0'} dependencies: color-name: registry.npmmirror.com/color-name/1.1.4 + + registry.npmmirror.com/color-name/1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz} + name: color-name + version: 1.1.3 dev: false registry.npmmirror.com/color-name/1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz} name: color-name version: 1.1.4 + + registry.npmmirror.com/color-string/1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-string/-/color-string-1.9.1.tgz} + name: color-string + version: 1.9.1 + dependencies: + color-name: registry.npmmirror.com/color-name/1.1.4 + simple-swizzle: registry.npmmirror.com/simple-swizzle/0.2.2 + dev: false + + registry.npmmirror.com/color/4.2.3: + resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color/-/color-4.2.3.tgz} + name: color + version: 4.2.3 + engines: {node: '>=12.5.0'} + dependencies: + color-convert: registry.npmmirror.com/color-convert/2.0.1 + color-string: registry.npmmirror.com/color-string/1.9.1 + dev: false + + registry.npmmirror.com/color2k/2.0.2: + resolution: {integrity: sha512-kJhwH5nAwb34tmyuqq/lgjEKzlFXn1U99NlnB6Ws4qVaERcRUYeYP1cBw6BJ4vxaWStAUEef4WMr7WjOCnBt8w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color2k/-/color2k-2.0.2.tgz} + name: color2k + version: 2.0.2 + dev: false + + registry.npmmirror.com/colorette/2.0.19: + resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/colorette/-/colorette-2.0.19.tgz} + name: colorette + version: 2.0.19 + dev: true + + registry.npmmirror.com/combined-stream/1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz} + name: combined-stream + version: 1.0.8 + engines: {node: '>= 0.8'} + dependencies: + delayed-stream: registry.npmmirror.com/delayed-stream/1.0.0 + dev: false + + registry.npmmirror.com/comma-separated-tokens/1.0.8: + resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz} + name: comma-separated-tokens + version: 1.0.8 + dev: false + + registry.npmmirror.com/comma-separated-tokens/2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz} + name: comma-separated-tokens + version: 2.0.3 + dev: false + + registry.npmmirror.com/commander/9.5.0: + resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/commander/-/commander-9.5.0.tgz} + name: commander + version: 9.5.0 + engines: {node: ^12.20.0 || >=14} + dev: true + + registry.npmmirror.com/compute-scroll-into-view/1.0.20: + resolution: {integrity: sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz} + name: compute-scroll-into-view + version: 1.0.20 dev: false registry.npmmirror.com/concat-map/0.0.1: @@ -645,6 +3793,33 @@ packages: version: 0.0.1 dev: false + registry.npmmirror.com/convert-source-map/1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz} + name: convert-source-map + version: 1.9.0 + dev: false + + registry.npmmirror.com/copy-to-clipboard/3.3.3: + resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz} + name: copy-to-clipboard + version: 3.3.3 + dependencies: + toggle-selection: registry.npmmirror.com/toggle-selection/1.0.6 + dev: false + + registry.npmmirror.com/cosmiconfig/7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz} + name: cosmiconfig + version: 7.1.0 + engines: {node: '>=10'} + dependencies: + '@types/parse-json': registry.npmmirror.com/@types/parse-json/4.0.0 + import-fresh: registry.npmmirror.com/import-fresh/3.3.0 + parse-json: registry.npmmirror.com/parse-json/5.2.0 + path-type: registry.npmmirror.com/path-type/4.0.0 + yaml: registry.npmmirror.com/yaml/1.10.2 + dev: false + registry.npmmirror.com/cross-spawn/7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz} name: cross-spawn @@ -654,13 +3829,26 @@ packages: path-key: registry.npmmirror.com/path-key/3.1.1 shebang-command: registry.npmmirror.com/shebang-command/2.0.0 which: registry.npmmirror.com/which/2.0.2 + + registry.npmmirror.com/crypto/1.0.1: + resolution: {integrity: sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/crypto/-/crypto-1.0.1.tgz} + name: crypto + version: 1.0.1 + deprecated: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in. + dev: false + + registry.npmmirror.com/css-box-model/1.2.1: + resolution: {integrity: sha512-a7Vr4Q/kd/aw96bnJG332W9V9LkJO69JRcaCYDUqjp6/z0w6VcZjgAcTbgFxEPfBgdnAwlh3iwu+hLopa+flJw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/css-box-model/-/css-box-model-1.2.1.tgz} + name: css-box-model + version: 1.2.1 + dependencies: + tiny-invariant: registry.npmmirror.com/tiny-invariant/1.3.1 dev: false registry.npmmirror.com/csstype/3.1.1: resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/csstype/-/csstype-3.1.1.tgz} name: csstype version: 3.1.1 - dev: false registry.npmmirror.com/damerau-levenshtein/1.0.8: resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz} @@ -668,6 +3856,12 @@ packages: version: 1.0.8 dev: false + registry.npmmirror.com/dayjs/1.11.7: + resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz} + name: dayjs + version: 1.11.7 + dev: false + registry.npmmirror.com/debug/3.2.7: resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz} name: debug @@ -693,6 +3887,22 @@ packages: optional: true dependencies: ms: registry.npmmirror.com/ms/2.1.2 + + registry.npmmirror.com/decode-named-character-reference/1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz} + name: decode-named-character-reference + version: 1.0.2 + dependencies: + character-entities: registry.npmmirror.com/character-entities/2.0.2 + dev: false + + registry.npmmirror.com/decompress-response/6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/decompress-response/-/decompress-response-6.0.0.tgz} + name: decompress-response + version: 6.0.0 + engines: {node: '>=10'} + dependencies: + mimic-response: registry.npmmirror.com/mimic-response/3.1.0 dev: false registry.npmmirror.com/deep-equal/2.2.0: @@ -719,6 +3929,13 @@ packages: which-typed-array: registry.npmmirror.com/which-typed-array/1.1.9 dev: false + registry.npmmirror.com/deep-extend/0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/deep-extend/-/deep-extend-0.6.0.tgz} + name: deep-extend + version: 0.6.0 + engines: {node: '>=4.0.0'} + dev: false + registry.npmmirror.com/deep-is/0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz} name: deep-is @@ -742,6 +3959,49 @@ packages: object-keys: registry.npmmirror.com/object-keys/1.1.1 dev: false + registry.npmmirror.com/delayed-stream/1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz} + name: delayed-stream + version: 1.0.0 + engines: {node: '>=0.4.0'} + dev: false + + registry.npmmirror.com/dequal/2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dequal/-/dequal-2.0.3.tgz} + name: dequal + version: 2.0.3 + engines: {node: '>=6'} + dev: false + + registry.npmmirror.com/detect-libc/2.0.1: + resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/detect-libc/-/detect-libc-2.0.1.tgz} + name: detect-libc + version: 2.0.1 + engines: {node: '>=8'} + dev: false + + registry.npmmirror.com/detect-node-es/1.1.0: + resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/detect-node-es/-/detect-node-es-1.1.0.tgz} + name: detect-node-es + version: 1.1.0 + dev: false + + registry.npmmirror.com/dezalgo/1.0.4: + resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dezalgo/-/dezalgo-1.0.4.tgz} + name: dezalgo + version: 1.0.4 + dependencies: + asap: registry.npmmirror.com/asap/2.0.6 + wrappy: registry.npmmirror.com/wrappy/1.0.2 + dev: false + + registry.npmmirror.com/diff/5.1.0: + resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/diff/-/diff-5.1.0.tgz} + name: diff + version: 5.1.0 + engines: {node: '>=0.3.1'} + dev: false + registry.npmmirror.com/dir-glob/3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz} name: dir-glob @@ -769,10 +4029,37 @@ packages: esutils: registry.npmmirror.com/esutils/2.0.3 dev: false + registry.npmmirror.com/eastasianwidth/0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz} + name: eastasianwidth + version: 0.2.0 + dev: true + + registry.npmmirror.com/ecdsa-sig-formatter/1.0.11: + resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz} + name: ecdsa-sig-formatter + version: 1.0.11 + dependencies: + safe-buffer: registry.npmmirror.com/safe-buffer/5.2.1 + dev: false + + registry.npmmirror.com/emoji-regex/8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz} + name: emoji-regex + version: 8.0.0 + dev: true + registry.npmmirror.com/emoji-regex/9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz} name: emoji-regex version: 9.2.2 + + registry.npmmirror.com/end-of-stream/1.4.4: + resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz} + name: end-of-stream + version: 1.4.4 + dependencies: + once: registry.npmmirror.com/once/1.4.0 dev: false registry.npmmirror.com/enhanced-resolve/5.12.0: @@ -785,6 +4072,14 @@ packages: tapable: registry.npmmirror.com/tapable/2.2.1 dev: false + registry.npmmirror.com/error-ex/1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz} + name: error-ex + version: 1.3.2 + dependencies: + is-arrayish: registry.npmmirror.com/is-arrayish/0.2.1 + dev: false + registry.npmmirror.com/es-abstract/1.21.1: resolution: {integrity: sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/es-abstract/-/es-abstract-1.21.1.tgz} name: es-abstract @@ -872,6 +4167,13 @@ packages: is-symbol: registry.npmmirror.com/is-symbol/1.0.4 dev: false + registry.npmmirror.com/escape-string-regexp/1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz} + name: escape-string-regexp + version: 1.0.5 + engines: {node: '>=0.8.0'} + dev: false + registry.npmmirror.com/escape-string-regexp/4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz} name: escape-string-regexp @@ -879,6 +4181,13 @@ packages: engines: {node: '>=10'} dev: false + registry.npmmirror.com/escape-string-regexp/5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz} + name: escape-string-regexp + version: 5.0.0 + engines: {node: '>=12'} + dev: false + registry.npmmirror.com/eslint-config-next/13.1.6_7kw3g6rralp5ps6mg3uyzz6azm: resolution: {integrity: sha512-0cg7h5wztg/SoLAlxljZ0ZPUQ7i6QKqRiP4M2+MgTZtxWwNKb2JSwNc18nJ6/kXBI6xYvPraTbQSIhAuVw6czw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-config-next/-/eslint-config-next-13.1.6.tgz} id: registry.npmmirror.com/eslint-config-next/13.1.6 @@ -1208,6 +4517,36 @@ packages: engines: {node: '>=0.10.0'} dev: false + registry.npmmirror.com/execa/6.1.0: + resolution: {integrity: sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/execa/-/execa-6.1.0.tgz} + name: execa + version: 6.1.0 + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + cross-spawn: registry.npmmirror.com/cross-spawn/7.0.3 + get-stream: registry.npmmirror.com/get-stream/6.0.1 + human-signals: registry.npmmirror.com/human-signals/3.0.1 + is-stream: registry.npmmirror.com/is-stream/3.0.0 + merge-stream: registry.npmmirror.com/merge-stream/2.0.0 + npm-run-path: registry.npmmirror.com/npm-run-path/5.1.0 + onetime: registry.npmmirror.com/onetime/6.0.0 + signal-exit: registry.npmmirror.com/signal-exit/3.0.7 + strip-final-newline: registry.npmmirror.com/strip-final-newline/3.0.0 + dev: true + + registry.npmmirror.com/expand-template/2.0.3: + resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/expand-template/-/expand-template-2.0.3.tgz} + name: expand-template + version: 2.0.3 + engines: {node: '>=6'} + dev: false + + registry.npmmirror.com/extend/3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz} + name: extend + version: 3.0.2 + dev: false + registry.npmmirror.com/fast-deep-equal/3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz} name: fast-deep-equal @@ -1239,6 +4578,16 @@ packages: version: 2.0.6 dev: false + registry.npmmirror.com/fast-xml-parser/4.1.2: + resolution: {integrity: sha512-CDYeykkle1LiA/uqQyNwYpFbyF6Axec6YapmpUP+/RHWIoR1zKjocdvNaTsxCxZzQ6v9MLXaSYm9Qq0thv0DHg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-xml-parser/-/fast-xml-parser-4.1.2.tgz} + name: fast-xml-parser + version: 4.1.2 + hasBin: true + dependencies: + strnum: registry.npmmirror.com/strnum/1.0.5 + dev: false + optional: true + registry.npmmirror.com/fastq/1.15.0: resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fastq/-/fastq-1.15.0.tgz} name: fastq @@ -1247,6 +4596,14 @@ packages: reusify: registry.npmmirror.com/reusify/1.0.4 dev: false + registry.npmmirror.com/fault/1.0.4: + resolution: {integrity: sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fault/-/fault-1.0.4.tgz} + name: fault + version: 1.0.4 + dependencies: + format: registry.npmmirror.com/format/0.2.2 + dev: false + registry.npmmirror.com/file-entry-cache/6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz} name: file-entry-cache @@ -1263,6 +4620,11 @@ packages: engines: {node: '>=8'} dependencies: to-regex-range: registry.npmmirror.com/to-regex-range/5.0.1 + + registry.npmmirror.com/find-root/1.1.0: + resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/find-root/-/find-root-1.1.0.tgz} + name: find-root + version: 1.1.0 dev: false registry.npmmirror.com/find-up/5.0.0: @@ -1291,6 +4653,27 @@ packages: version: 3.2.7 dev: false + registry.npmmirror.com/focus-lock/0.11.6: + resolution: {integrity: sha512-KSuV3ur4gf2KqMNoZx3nXNVhqCkn42GuTYCX4tXPEwf0MjpFQmNMiN6m7dXaUXgIoivL6/65agoUMg4RLS0Vbg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/focus-lock/-/focus-lock-0.11.6.tgz} + name: focus-lock + version: 0.11.6 + engines: {node: '>=10'} + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/follow-redirects/1.15.2: + resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz} + name: follow-redirects + version: 1.15.2 + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dev: false + registry.npmmirror.com/for-each/0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/for-each/-/for-each-0.3.3.tgz} name: for-each @@ -1299,12 +4682,83 @@ packages: is-callable: registry.npmmirror.com/is-callable/1.2.7 dev: false + registry.npmmirror.com/form-data/4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz} + name: form-data + version: 4.0.0 + engines: {node: '>= 6'} + dependencies: + asynckit: registry.npmmirror.com/asynckit/0.4.0 + combined-stream: registry.npmmirror.com/combined-stream/1.0.8 + mime-types: registry.npmmirror.com/mime-types/2.1.35 + dev: false + + registry.npmmirror.com/format/0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/format/-/format-0.2.2.tgz} + name: format + version: 0.2.2 + engines: {node: '>=0.4.x'} + dev: false + + registry.npmmirror.com/formidable/2.1.1: + resolution: {integrity: sha512-0EcS9wCFEzLvfiks7omJ+SiYJAiD+TzK4Pcw1UlUoGnhUxDcMKjt0P7x8wEb0u6OHu8Nb98WG3nxtlF5C7bvUQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/formidable/-/formidable-2.1.1.tgz} + name: formidable + version: 2.1.1 + dependencies: + dezalgo: registry.npmmirror.com/dezalgo/1.0.4 + hexoid: registry.npmmirror.com/hexoid/1.0.0 + once: registry.npmmirror.com/once/1.4.0 + qs: registry.npmmirror.com/qs/6.11.0 + dev: false + + registry.npmmirror.com/framer-motion/9.0.6_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-NBETSa14yI/osK6DxKmiiDj1N6Os6YFiXKN6fzxYsNKKeO0vjoQz3m40g0kJYiAWrMdXQjhjyCMJqfOLR+nnRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/framer-motion/-/framer-motion-9.0.6.tgz} + id: registry.npmmirror.com/framer-motion/9.0.6 + name: framer-motion + version: 9.0.6 + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + dependencies: + '@motionone/dom': registry.npmmirror.com/@motionone/dom/10.15.5 + hey-listen: registry.npmmirror.com/hey-listen/1.0.8 + react: registry.npmmirror.com/react/18.2.0 + react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + optionalDependencies: + '@emotion/is-prop-valid': registry.npmmirror.com/@emotion/is-prop-valid/0.8.8 + dev: false + + registry.npmmirror.com/framesync/6.1.2: + resolution: {integrity: sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/framesync/-/framesync-6.1.2.tgz} + name: framesync + version: 6.1.2 + dependencies: + tslib: registry.npmmirror.com/tslib/2.4.0 + dev: false + + registry.npmmirror.com/fs-constants/1.0.0: + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fs-constants/-/fs-constants-1.0.0.tgz} + name: fs-constants + version: 1.0.0 + dev: false + registry.npmmirror.com/fs.realpath/1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz} name: fs.realpath version: 1.0.0 dev: false + registry.npmmirror.com/fsevents/2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz} + name: fsevents + version: 2.3.2 + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: false + optional: true + registry.npmmirror.com/function-bind/1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz} name: function-bind @@ -1339,6 +4793,20 @@ packages: has-symbols: registry.npmmirror.com/has-symbols/1.0.3 dev: false + registry.npmmirror.com/get-nonce/1.0.1: + resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/get-nonce/-/get-nonce-1.0.1.tgz} + name: get-nonce + version: 1.0.1 + engines: {node: '>=6'} + dev: false + + registry.npmmirror.com/get-stream/6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz} + name: get-stream + version: 6.0.1 + engines: {node: '>=10'} + dev: true + registry.npmmirror.com/get-symbol-description/1.0.0: resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz} name: get-symbol-description @@ -1355,6 +4823,12 @@ packages: version: 4.4.0 dev: false + registry.npmmirror.com/github-from-package/0.0.0: + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/github-from-package/-/github-from-package-0.0.0.tgz} + name: github-from-package + version: 0.0.0 + dev: false + registry.npmmirror.com/glob-parent/5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz} name: glob-parent @@ -1482,6 +4956,13 @@ packages: version: 1.0.2 dev: false + registry.npmmirror.com/has-flag/3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz} + name: has-flag + version: 3.0.0 + engines: {node: '>=4'} + dev: false + registry.npmmirror.com/has-flag/4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz} name: has-flag @@ -1529,6 +5010,84 @@ packages: function-bind: registry.npmmirror.com/function-bind/1.1.1 dev: false + registry.npmmirror.com/hast-util-parse-selector/2.2.5: + resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz} + name: hast-util-parse-selector + version: 2.2.5 + dev: false + + registry.npmmirror.com/hast-util-whitespace/2.0.1: + resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz} + name: hast-util-whitespace + version: 2.0.1 + dev: false + + registry.npmmirror.com/hastscript/6.0.0: + resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/hastscript/-/hastscript-6.0.0.tgz} + name: hastscript + version: 6.0.0 + dependencies: + '@types/hast': registry.npmmirror.com/@types/hast/2.3.4 + comma-separated-tokens: registry.npmmirror.com/comma-separated-tokens/1.0.8 + hast-util-parse-selector: registry.npmmirror.com/hast-util-parse-selector/2.2.5 + property-information: registry.npmmirror.com/property-information/5.6.0 + space-separated-tokens: registry.npmmirror.com/space-separated-tokens/1.1.5 + dev: false + + registry.npmmirror.com/hexoid/1.0.0: + resolution: {integrity: sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/hexoid/-/hexoid-1.0.0.tgz} + name: hexoid + version: 1.0.0 + engines: {node: '>=8'} + dev: false + + registry.npmmirror.com/hey-listen/1.0.8: + resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/hey-listen/-/hey-listen-1.0.8.tgz} + name: hey-listen + version: 1.0.8 + dev: false + + registry.npmmirror.com/highlight.js/10.7.3: + resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/highlight.js/-/highlight.js-10.7.3.tgz} + name: highlight.js + version: 10.7.3 + dev: false + + registry.npmmirror.com/hoist-non-react-statics/3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz} + name: hoist-non-react-statics + version: 3.3.2 + dependencies: + react-is: registry.npmmirror.com/react-is/16.13.1 + dev: false + + registry.npmmirror.com/human-signals/3.0.1: + resolution: {integrity: sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/human-signals/-/human-signals-3.0.1.tgz} + name: human-signals + version: 3.0.1 + engines: {node: '>=12.20.0'} + dev: true + + registry.npmmirror.com/husky/8.0.3: + resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/husky/-/husky-8.0.3.tgz} + name: husky + version: 8.0.3 + engines: {node: '>=14'} + hasBin: true + dev: true + + registry.npmmirror.com/hyperdown/2.4.29: + resolution: {integrity: sha512-vwpa65JOmo6zBdvmNV3tM5IxNMbTRCXmCz4rajM9NHuiI9aAMw9tGzp8FBO8NT7ZnyWND0HEY6vKCVYl//U8kA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/hyperdown/-/hyperdown-2.4.29.tgz} + name: hyperdown + version: 2.4.29 + dev: false + + registry.npmmirror.com/ieee754/1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz} + name: ieee754 + version: 1.2.1 + dev: false + registry.npmmirror.com/ignore/5.2.4: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ignore/-/ignore-5.2.4.tgz} name: ignore @@ -1536,6 +5095,18 @@ packages: engines: {node: '>= 4'} dev: false + registry.npmmirror.com/immer/9.0.19: + resolution: {integrity: sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/immer/-/immer-9.0.19.tgz} + name: immer + version: 9.0.19 + dev: false + + registry.npmmirror.com/immutable/4.2.4: + resolution: {integrity: sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/immutable/-/immutable-4.2.4.tgz} + name: immutable + version: 4.2.4 + dev: false + registry.npmmirror.com/import-fresh/3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz} name: import-fresh @@ -1553,6 +5124,13 @@ packages: engines: {node: '>=0.8.19'} dev: false + registry.npmmirror.com/indent-string/4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/indent-string/-/indent-string-4.0.0.tgz} + name: indent-string + version: 4.0.0 + engines: {node: '>=8'} + dev: true + registry.npmmirror.com/inflight/1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz} name: inflight @@ -1568,6 +5146,18 @@ packages: version: 2.0.4 dev: false + registry.npmmirror.com/ini/1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz} + name: ini + version: 1.3.8 + dev: false + + registry.npmmirror.com/inline-style-parser/0.1.1: + resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz} + name: inline-style-parser + version: 0.1.1 + dev: false + registry.npmmirror.com/internal-slot/1.0.5: resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/internal-slot/-/internal-slot-1.0.5.tgz} name: internal-slot @@ -1579,6 +5169,35 @@ packages: side-channel: registry.npmmirror.com/side-channel/1.0.4 dev: false + registry.npmmirror.com/invariant/2.2.4: + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/invariant/-/invariant-2.2.4.tgz} + name: invariant + version: 2.2.4 + dependencies: + loose-envify: registry.npmmirror.com/loose-envify/1.4.0 + dev: false + + registry.npmmirror.com/ip/2.0.0: + resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ip/-/ip-2.0.0.tgz} + name: ip + version: 2.0.0 + dev: false + + registry.npmmirror.com/is-alphabetical/1.0.4: + resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz} + name: is-alphabetical + version: 1.0.4 + dev: false + + registry.npmmirror.com/is-alphanumerical/1.0.4: + resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz} + name: is-alphanumerical + version: 1.0.4 + dependencies: + is-alphabetical: registry.npmmirror.com/is-alphabetical/1.0.4 + is-decimal: registry.npmmirror.com/is-decimal/1.0.4 + dev: false + registry.npmmirror.com/is-arguments/1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-arguments/-/is-arguments-1.1.1.tgz} name: is-arguments @@ -1599,6 +5218,18 @@ packages: is-typed-array: registry.npmmirror.com/is-typed-array/1.1.10 dev: false + registry.npmmirror.com/is-arrayish/0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz} + name: is-arrayish + version: 0.2.1 + dev: false + + registry.npmmirror.com/is-arrayish/0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.3.2.tgz} + name: is-arrayish + version: 0.3.2 + dev: false + registry.npmmirror.com/is-bigint/1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-bigint/-/is-bigint-1.0.4.tgz} name: is-bigint @@ -1607,6 +5238,15 @@ packages: has-bigints: registry.npmmirror.com/has-bigints/1.0.2 dev: false + registry.npmmirror.com/is-binary-path/2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz} + name: is-binary-path + version: 2.1.0 + engines: {node: '>=8'} + dependencies: + binary-extensions: registry.npmmirror.com/binary-extensions/2.2.0 + dev: false + registry.npmmirror.com/is-boolean-object/1.1.2: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz} name: is-boolean-object @@ -1617,6 +5257,13 @@ packages: has-tostringtag: registry.npmmirror.com/has-tostringtag/1.0.0 dev: false + registry.npmmirror.com/is-buffer/2.0.5: + resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-buffer/-/is-buffer-2.0.5.tgz} + name: is-buffer + version: 2.0.5 + engines: {node: '>=4'} + dev: false + registry.npmmirror.com/is-callable/1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-callable/-/is-callable-1.2.7.tgz} name: is-callable @@ -1641,6 +5288,12 @@ packages: has-tostringtag: registry.npmmirror.com/has-tostringtag/1.0.0 dev: false + registry.npmmirror.com/is-decimal/1.0.4: + resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-decimal/-/is-decimal-1.0.4.tgz} + name: is-decimal + version: 1.0.4 + dev: false + registry.npmmirror.com/is-docker/2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-docker/-/is-docker-2.2.1.tgz} name: is-docker @@ -1656,6 +5309,20 @@ packages: engines: {node: '>=0.10.0'} dev: false + registry.npmmirror.com/is-fullwidth-code-point/3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz} + name: is-fullwidth-code-point + version: 3.0.0 + engines: {node: '>=8'} + dev: true + + registry.npmmirror.com/is-fullwidth-code-point/4.0.0: + resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz} + name: is-fullwidth-code-point + version: 4.0.0 + engines: {node: '>=12'} + dev: true + registry.npmmirror.com/is-glob/4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz} name: is-glob @@ -1665,6 +5332,12 @@ packages: is-extglob: registry.npmmirror.com/is-extglob/2.1.1 dev: false + registry.npmmirror.com/is-hexadecimal/1.0.4: + resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz} + name: is-hexadecimal + version: 1.0.4 + dev: false + registry.npmmirror.com/is-map/2.0.2: resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-map/-/is-map-2.0.2.tgz} name: is-map @@ -1692,7 +5365,6 @@ packages: name: is-number version: 7.0.0 engines: {node: '>=0.12.0'} - dev: false registry.npmmirror.com/is-path-inside/3.0.3: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-path-inside/-/is-path-inside-3.0.3.tgz} @@ -1701,6 +5373,13 @@ packages: engines: {node: '>=8'} dev: false + registry.npmmirror.com/is-plain-obj/4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz} + name: is-plain-obj + version: 4.1.0 + engines: {node: '>=12'} + dev: false + registry.npmmirror.com/is-regex/1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-regex/-/is-regex-1.1.4.tgz} name: is-regex @@ -1725,6 +5404,13 @@ packages: call-bind: registry.npmmirror.com/call-bind/1.0.2 dev: false + registry.npmmirror.com/is-stream/3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-stream/-/is-stream-3.0.0.tgz} + name: is-stream + version: 3.0.0 + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + registry.npmmirror.com/is-string/1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-string/-/is-string-1.0.7.tgz} name: is-string @@ -1798,7 +5484,6 @@ packages: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz} name: isexe version: 2.0.0 - dev: false registry.npmmirror.com/js-sdsl/4.3.0: resolution: {integrity: sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.3.0.tgz} @@ -1821,6 +5506,12 @@ packages: argparse: registry.npmmirror.com/argparse/2.0.1 dev: false + registry.npmmirror.com/json-parse-even-better-errors/2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz} + name: json-parse-even-better-errors + version: 2.3.1 + dev: false + registry.npmmirror.com/json-schema-traverse/0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz} name: json-schema-traverse @@ -1842,6 +5533,18 @@ packages: minimist: registry.npmmirror.com/minimist/1.2.8 dev: false + registry.npmmirror.com/jsonwebtoken/9.0.0: + resolution: {integrity: sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz} + name: jsonwebtoken + version: 9.0.0 + engines: {node: '>=12', npm: '>=6'} + dependencies: + jws: registry.npmmirror.com/jws/3.2.2 + lodash: registry.npmmirror.com/lodash/4.17.21 + ms: registry.npmmirror.com/ms/2.1.3 + semver: registry.npmmirror.com/semver/7.3.8 + dev: false + registry.npmmirror.com/jsx-ast-utils/3.3.3: resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz} name: jsx-ast-utils @@ -1852,6 +5555,39 @@ packages: object.assign: registry.npmmirror.com/object.assign/4.1.4 dev: false + registry.npmmirror.com/jwa/1.4.1: + resolution: {integrity: sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jwa/-/jwa-1.4.1.tgz} + name: jwa + version: 1.4.1 + dependencies: + buffer-equal-constant-time: registry.npmmirror.com/buffer-equal-constant-time/1.0.1 + ecdsa-sig-formatter: registry.npmmirror.com/ecdsa-sig-formatter/1.0.11 + safe-buffer: registry.npmmirror.com/safe-buffer/5.2.1 + dev: false + + registry.npmmirror.com/jws/3.2.2: + resolution: {integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/jws/-/jws-3.2.2.tgz} + name: jws + version: 3.2.2 + dependencies: + jwa: registry.npmmirror.com/jwa/1.4.1 + safe-buffer: registry.npmmirror.com/safe-buffer/5.2.1 + dev: false + + registry.npmmirror.com/kareem/2.5.1: + resolution: {integrity: sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/kareem/-/kareem-2.5.1.tgz} + name: kareem + version: 2.5.1 + engines: {node: '>=12.0.0'} + dev: false + + registry.npmmirror.com/kleur/4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/kleur/-/kleur-4.1.5.tgz} + name: kleur + version: 4.1.5 + engines: {node: '>=6'} + dev: false + registry.npmmirror.com/language-subtag-registry/0.3.22: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz} name: language-subtag-registry @@ -1876,6 +5612,65 @@ packages: type-check: registry.npmmirror.com/type-check/0.4.0 dev: false + registry.npmmirror.com/lilconfig/2.0.6: + resolution: {integrity: sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lilconfig/-/lilconfig-2.0.6.tgz} + name: lilconfig + version: 2.0.6 + engines: {node: '>=10'} + dev: true + + registry.npmmirror.com/lines-and-columns/1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz} + name: lines-and-columns + version: 1.2.4 + dev: false + + registry.npmmirror.com/lint-staged/13.1.2: + resolution: {integrity: sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lint-staged/-/lint-staged-13.1.2.tgz} + name: lint-staged + version: 13.1.2 + engines: {node: ^14.13.1 || >=16.0.0} + hasBin: true + dependencies: + cli-truncate: registry.npmmirror.com/cli-truncate/3.1.0 + colorette: registry.npmmirror.com/colorette/2.0.19 + commander: registry.npmmirror.com/commander/9.5.0 + debug: registry.npmmirror.com/debug/4.3.4 + execa: registry.npmmirror.com/execa/6.1.0 + lilconfig: registry.npmmirror.com/lilconfig/2.0.6 + listr2: registry.npmmirror.com/listr2/5.0.7 + micromatch: registry.npmmirror.com/micromatch/4.0.5 + normalize-path: registry.npmmirror.com/normalize-path/3.0.0 + object-inspect: registry.npmmirror.com/object-inspect/1.12.3 + pidtree: registry.npmmirror.com/pidtree/0.6.0 + string-argv: registry.npmmirror.com/string-argv/0.3.1 + yaml: registry.npmmirror.com/yaml/2.2.1 + transitivePeerDependencies: + - enquirer + - supports-color + dev: true + + registry.npmmirror.com/listr2/5.0.7: + resolution: {integrity: sha512-MD+qXHPmtivrHIDRwPYdfNkrzqDiuaKU/rfBcec3WMyMF3xylQj3jMq344OtvQxz7zaCFViRAeqlr2AFhPvXHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/listr2/-/listr2-5.0.7.tgz} + name: listr2 + version: 5.0.7 + engines: {node: ^14.13.1 || >=16.0.0} + peerDependencies: + enquirer: '>= 2.3.0 < 3' + peerDependenciesMeta: + enquirer: + optional: true + dependencies: + cli-truncate: registry.npmmirror.com/cli-truncate/2.1.0 + colorette: registry.npmmirror.com/colorette/2.0.19 + log-update: registry.npmmirror.com/log-update/4.0.0 + p-map: registry.npmmirror.com/p-map/4.0.0 + rfdc: registry.npmmirror.com/rfdc/1.3.0 + rxjs: registry.npmmirror.com/rxjs/7.8.0 + through: registry.npmmirror.com/through/2.3.8 + wrap-ansi: registry.npmmirror.com/wrap-ansi/7.0.0 + dev: true + registry.npmmirror.com/locate-path/6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz} name: locate-path @@ -1891,6 +5686,36 @@ packages: version: 4.6.2 dev: false + registry.npmmirror.com/lodash.mergewith/4.6.2: + resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz} + name: lodash.mergewith + version: 4.6.2 + dev: false + + registry.npmmirror.com/lodash/4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz} + name: lodash + version: 4.17.21 + dev: false + + registry.npmmirror.com/log-update/4.0.0: + resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/log-update/-/log-update-4.0.0.tgz} + name: log-update + version: 4.0.0 + engines: {node: '>=10'} + dependencies: + ansi-escapes: registry.npmmirror.com/ansi-escapes/4.3.2 + cli-cursor: registry.npmmirror.com/cli-cursor/3.1.0 + slice-ansi: registry.npmmirror.com/slice-ansi/4.0.0 + wrap-ansi: registry.npmmirror.com/wrap-ansi/6.2.0 + dev: true + + registry.npmmirror.com/longest-streak/3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/longest-streak/-/longest-streak-3.1.0.tgz} + name: longest-streak + version: 3.1.0 + dev: false + registry.npmmirror.com/loose-envify/1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/loose-envify/-/loose-envify-1.4.0.tgz} name: loose-envify @@ -1900,6 +5725,15 @@ packages: js-tokens: registry.npmmirror.com/js-tokens/4.0.0 dev: false + registry.npmmirror.com/lowlight/1.20.0: + resolution: {integrity: sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lowlight/-/lowlight-1.20.0.tgz} + name: lowlight + version: 1.20.0 + dependencies: + fault: registry.npmmirror.com/fault/1.0.4 + highlight.js: registry.npmmirror.com/highlight.js/10.7.3 + dev: false + registry.npmmirror.com/lru-cache/6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz} name: lru-cache @@ -1909,6 +5743,182 @@ packages: yallist: registry.npmmirror.com/yallist/4.0.0 dev: false + registry.npmmirror.com/markdown-table/3.0.3: + resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/markdown-table/-/markdown-table-3.0.3.tgz} + name: markdown-table + version: 3.0.3 + dev: false + + registry.npmmirror.com/mdast-util-definitions/5.1.2: + resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz} + name: mdast-util-definitions + version: 5.1.2 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + unist-util-visit: registry.npmmirror.com/unist-util-visit/4.1.2 + dev: false + + registry.npmmirror.com/mdast-util-find-and-replace/2.2.2: + resolution: {integrity: sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz} + name: mdast-util-find-and-replace + version: 2.2.2 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + escape-string-regexp: registry.npmmirror.com/escape-string-regexp/5.0.0 + unist-util-is: registry.npmmirror.com/unist-util-is/5.2.0 + unist-util-visit-parents: registry.npmmirror.com/unist-util-visit-parents/5.1.3 + dev: false + + registry.npmmirror.com/mdast-util-from-markdown/1.3.0: + resolution: {integrity: sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz} + name: mdast-util-from-markdown + version: 1.3.0 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + decode-named-character-reference: registry.npmmirror.com/decode-named-character-reference/1.0.2 + mdast-util-to-string: registry.npmmirror.com/mdast-util-to-string/3.1.1 + micromark: registry.npmmirror.com/micromark/3.1.0 + micromark-util-decode-numeric-character-reference: registry.npmmirror.com/micromark-util-decode-numeric-character-reference/1.0.0 + micromark-util-decode-string: registry.npmmirror.com/micromark-util-decode-string/1.0.2 + micromark-util-normalize-identifier: registry.npmmirror.com/micromark-util-normalize-identifier/1.0.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + unist-util-stringify-position: registry.npmmirror.com/unist-util-stringify-position/3.0.3 + uvu: registry.npmmirror.com/uvu/0.5.6 + transitivePeerDependencies: + - supports-color + dev: false + + registry.npmmirror.com/mdast-util-gfm-autolink-literal/1.0.3: + resolution: {integrity: sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz} + name: mdast-util-gfm-autolink-literal + version: 1.0.3 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + ccount: registry.npmmirror.com/ccount/2.0.1 + mdast-util-find-and-replace: registry.npmmirror.com/mdast-util-find-and-replace/2.2.2 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + dev: false + + registry.npmmirror.com/mdast-util-gfm-footnote/1.0.2: + resolution: {integrity: sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz} + name: mdast-util-gfm-footnote + version: 1.0.2 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + mdast-util-to-markdown: registry.npmmirror.com/mdast-util-to-markdown/1.5.0 + micromark-util-normalize-identifier: registry.npmmirror.com/micromark-util-normalize-identifier/1.0.0 + dev: false + + registry.npmmirror.com/mdast-util-gfm-strikethrough/1.0.3: + resolution: {integrity: sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz} + name: mdast-util-gfm-strikethrough + version: 1.0.3 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + mdast-util-to-markdown: registry.npmmirror.com/mdast-util-to-markdown/1.5.0 + dev: false + + registry.npmmirror.com/mdast-util-gfm-table/1.0.7: + resolution: {integrity: sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz} + name: mdast-util-gfm-table + version: 1.0.7 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + markdown-table: registry.npmmirror.com/markdown-table/3.0.3 + mdast-util-from-markdown: registry.npmmirror.com/mdast-util-from-markdown/1.3.0 + mdast-util-to-markdown: registry.npmmirror.com/mdast-util-to-markdown/1.5.0 + transitivePeerDependencies: + - supports-color + dev: false + + registry.npmmirror.com/mdast-util-gfm-task-list-item/1.0.2: + resolution: {integrity: sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz} + name: mdast-util-gfm-task-list-item + version: 1.0.2 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + mdast-util-to-markdown: registry.npmmirror.com/mdast-util-to-markdown/1.5.0 + dev: false + + registry.npmmirror.com/mdast-util-gfm/2.0.2: + resolution: {integrity: sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz} + name: mdast-util-gfm + version: 2.0.2 + dependencies: + mdast-util-from-markdown: registry.npmmirror.com/mdast-util-from-markdown/1.3.0 + mdast-util-gfm-autolink-literal: registry.npmmirror.com/mdast-util-gfm-autolink-literal/1.0.3 + mdast-util-gfm-footnote: registry.npmmirror.com/mdast-util-gfm-footnote/1.0.2 + mdast-util-gfm-strikethrough: registry.npmmirror.com/mdast-util-gfm-strikethrough/1.0.3 + mdast-util-gfm-table: registry.npmmirror.com/mdast-util-gfm-table/1.0.7 + mdast-util-gfm-task-list-item: registry.npmmirror.com/mdast-util-gfm-task-list-item/1.0.2 + mdast-util-to-markdown: registry.npmmirror.com/mdast-util-to-markdown/1.5.0 + transitivePeerDependencies: + - supports-color + dev: false + + registry.npmmirror.com/mdast-util-phrasing/3.0.1: + resolution: {integrity: sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz} + name: mdast-util-phrasing + version: 3.0.1 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + unist-util-is: registry.npmmirror.com/unist-util-is/5.2.0 + dev: false + + registry.npmmirror.com/mdast-util-to-hast/12.3.0: + resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz} + name: mdast-util-to-hast + version: 12.3.0 + dependencies: + '@types/hast': registry.npmmirror.com/@types/hast/2.3.4 + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + mdast-util-definitions: registry.npmmirror.com/mdast-util-definitions/5.1.2 + micromark-util-sanitize-uri: registry.npmmirror.com/micromark-util-sanitize-uri/1.1.0 + trim-lines: registry.npmmirror.com/trim-lines/3.0.1 + unist-util-generated: registry.npmmirror.com/unist-util-generated/2.0.1 + unist-util-position: registry.npmmirror.com/unist-util-position/4.0.4 + unist-util-visit: registry.npmmirror.com/unist-util-visit/4.1.2 + dev: false + + registry.npmmirror.com/mdast-util-to-markdown/1.5.0: + resolution: {integrity: sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz} + name: mdast-util-to-markdown + version: 1.5.0 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + longest-streak: registry.npmmirror.com/longest-streak/3.1.0 + mdast-util-phrasing: registry.npmmirror.com/mdast-util-phrasing/3.0.1 + mdast-util-to-string: registry.npmmirror.com/mdast-util-to-string/3.1.1 + micromark-util-decode-string: registry.npmmirror.com/micromark-util-decode-string/1.0.2 + unist-util-visit: registry.npmmirror.com/unist-util-visit/4.1.2 + zwitch: registry.npmmirror.com/zwitch/2.0.4 + dev: false + + registry.npmmirror.com/mdast-util-to-string/3.1.1: + resolution: {integrity: sha512-tGvhT94e+cVnQt8JWE9/b3cUQZWS732TJxXHktvP+BYo62PpYD53Ls/6cC60rW21dW+txxiM4zMdc6abASvZKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mdast-util-to-string/-/mdast-util-to-string-3.1.1.tgz} + name: mdast-util-to-string + version: 3.1.1 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + dev: false + + registry.npmmirror.com/memory-pager/1.5.0: + resolution: {integrity: sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/memory-pager/-/memory-pager-1.5.0.tgz} + name: memory-pager + version: 1.5.0 + dev: false + optional: true + + registry.npmmirror.com/merge-stream/2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz} + name: merge-stream + version: 2.0.0 + dev: true + registry.npmmirror.com/merge2/1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz} name: merge2 @@ -1916,6 +5926,311 @@ packages: engines: {node: '>= 8'} dev: false + registry.npmmirror.com/micromark-core-commonmark/1.0.6: + resolution: {integrity: sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz} + name: micromark-core-commonmark + version: 1.0.6 + dependencies: + decode-named-character-reference: registry.npmmirror.com/decode-named-character-reference/1.0.2 + micromark-factory-destination: registry.npmmirror.com/micromark-factory-destination/1.0.0 + micromark-factory-label: registry.npmmirror.com/micromark-factory-label/1.0.2 + micromark-factory-space: registry.npmmirror.com/micromark-factory-space/1.0.0 + micromark-factory-title: registry.npmmirror.com/micromark-factory-title/1.0.2 + micromark-factory-whitespace: registry.npmmirror.com/micromark-factory-whitespace/1.0.0 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-chunked: registry.npmmirror.com/micromark-util-chunked/1.0.0 + micromark-util-classify-character: registry.npmmirror.com/micromark-util-classify-character/1.0.0 + micromark-util-html-tag-name: registry.npmmirror.com/micromark-util-html-tag-name/1.1.0 + micromark-util-normalize-identifier: registry.npmmirror.com/micromark-util-normalize-identifier/1.0.0 + micromark-util-resolve-all: registry.npmmirror.com/micromark-util-resolve-all/1.0.0 + micromark-util-subtokenize: registry.npmmirror.com/micromark-util-subtokenize/1.0.2 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-extension-gfm-autolink-literal/1.0.3: + resolution: {integrity: sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.3.tgz} + name: micromark-extension-gfm-autolink-literal + version: 1.0.3 + dependencies: + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-sanitize-uri: registry.npmmirror.com/micromark-util-sanitize-uri/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-extension-gfm-footnote/1.0.4: + resolution: {integrity: sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.4.tgz} + name: micromark-extension-gfm-footnote + version: 1.0.4 + dependencies: + micromark-core-commonmark: registry.npmmirror.com/micromark-core-commonmark/1.0.6 + micromark-factory-space: registry.npmmirror.com/micromark-factory-space/1.0.0 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-normalize-identifier: registry.npmmirror.com/micromark-util-normalize-identifier/1.0.0 + micromark-util-sanitize-uri: registry.npmmirror.com/micromark-util-sanitize-uri/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-extension-gfm-strikethrough/1.0.4: + resolution: {integrity: sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.4.tgz} + name: micromark-extension-gfm-strikethrough + version: 1.0.4 + dependencies: + micromark-util-chunked: registry.npmmirror.com/micromark-util-chunked/1.0.0 + micromark-util-classify-character: registry.npmmirror.com/micromark-util-classify-character/1.0.0 + micromark-util-resolve-all: registry.npmmirror.com/micromark-util-resolve-all/1.0.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-extension-gfm-table/1.0.5: + resolution: {integrity: sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.5.tgz} + name: micromark-extension-gfm-table + version: 1.0.5 + dependencies: + micromark-factory-space: registry.npmmirror.com/micromark-factory-space/1.0.0 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-extension-gfm-tagfilter/1.0.1: + resolution: {integrity: sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.1.tgz} + name: micromark-extension-gfm-tagfilter + version: 1.0.1 + dependencies: + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-extension-gfm-task-list-item/1.0.3: + resolution: {integrity: sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.3.tgz} + name: micromark-extension-gfm-task-list-item + version: 1.0.3 + dependencies: + micromark-factory-space: registry.npmmirror.com/micromark-factory-space/1.0.0 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-extension-gfm/2.0.1: + resolution: {integrity: sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-extension-gfm/-/micromark-extension-gfm-2.0.1.tgz} + name: micromark-extension-gfm + version: 2.0.1 + dependencies: + micromark-extension-gfm-autolink-literal: registry.npmmirror.com/micromark-extension-gfm-autolink-literal/1.0.3 + micromark-extension-gfm-footnote: registry.npmmirror.com/micromark-extension-gfm-footnote/1.0.4 + micromark-extension-gfm-strikethrough: registry.npmmirror.com/micromark-extension-gfm-strikethrough/1.0.4 + micromark-extension-gfm-table: registry.npmmirror.com/micromark-extension-gfm-table/1.0.5 + micromark-extension-gfm-tagfilter: registry.npmmirror.com/micromark-extension-gfm-tagfilter/1.0.1 + micromark-extension-gfm-task-list-item: registry.npmmirror.com/micromark-extension-gfm-task-list-item/1.0.3 + micromark-util-combine-extensions: registry.npmmirror.com/micromark-util-combine-extensions/1.0.0 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-factory-destination/1.0.0: + resolution: {integrity: sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz} + name: micromark-factory-destination + version: 1.0.0 + dependencies: + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-factory-label/1.0.2: + resolution: {integrity: sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz} + name: micromark-factory-label + version: 1.0.2 + dependencies: + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-factory-space/1.0.0: + resolution: {integrity: sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz} + name: micromark-factory-space + version: 1.0.0 + dependencies: + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-factory-title/1.0.2: + resolution: {integrity: sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz} + name: micromark-factory-title + version: 1.0.2 + dependencies: + micromark-factory-space: registry.npmmirror.com/micromark-factory-space/1.0.0 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-factory-whitespace/1.0.0: + resolution: {integrity: sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz} + name: micromark-factory-whitespace + version: 1.0.0 + dependencies: + micromark-factory-space: registry.npmmirror.com/micromark-factory-space/1.0.0 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-util-character/1.1.0: + resolution: {integrity: sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-character/-/micromark-util-character-1.1.0.tgz} + name: micromark-util-character + version: 1.1.0 + dependencies: + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-util-chunked/1.0.0: + resolution: {integrity: sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz} + name: micromark-util-chunked + version: 1.0.0 + dependencies: + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + dev: false + + registry.npmmirror.com/micromark-util-classify-character/1.0.0: + resolution: {integrity: sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz} + name: micromark-util-classify-character + version: 1.0.0 + dependencies: + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-util-combine-extensions/1.0.0: + resolution: {integrity: sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz} + name: micromark-util-combine-extensions + version: 1.0.0 + dependencies: + micromark-util-chunked: registry.npmmirror.com/micromark-util-chunked/1.0.0 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-util-decode-numeric-character-reference/1.0.0: + resolution: {integrity: sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz} + name: micromark-util-decode-numeric-character-reference + version: 1.0.0 + dependencies: + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + dev: false + + registry.npmmirror.com/micromark-util-decode-string/1.0.2: + resolution: {integrity: sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz} + name: micromark-util-decode-string + version: 1.0.2 + dependencies: + decode-named-character-reference: registry.npmmirror.com/decode-named-character-reference/1.0.2 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-decode-numeric-character-reference: registry.npmmirror.com/micromark-util-decode-numeric-character-reference/1.0.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + dev: false + + registry.npmmirror.com/micromark-util-encode/1.0.1: + resolution: {integrity: sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz} + name: micromark-util-encode + version: 1.0.1 + dev: false + + registry.npmmirror.com/micromark-util-html-tag-name/1.1.0: + resolution: {integrity: sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz} + name: micromark-util-html-tag-name + version: 1.1.0 + dev: false + + registry.npmmirror.com/micromark-util-normalize-identifier/1.0.0: + resolution: {integrity: sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz} + name: micromark-util-normalize-identifier + version: 1.0.0 + dependencies: + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + dev: false + + registry.npmmirror.com/micromark-util-resolve-all/1.0.0: + resolution: {integrity: sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz} + name: micromark-util-resolve-all + version: 1.0.0 + dependencies: + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + dev: false + + registry.npmmirror.com/micromark-util-sanitize-uri/1.1.0: + resolution: {integrity: sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz} + name: micromark-util-sanitize-uri + version: 1.1.0 + dependencies: + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-encode: registry.npmmirror.com/micromark-util-encode/1.0.1 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + dev: false + + registry.npmmirror.com/micromark-util-subtokenize/1.0.2: + resolution: {integrity: sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz} + name: micromark-util-subtokenize + version: 1.0.2 + dependencies: + micromark-util-chunked: registry.npmmirror.com/micromark-util-chunked/1.0.0 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + dev: false + + registry.npmmirror.com/micromark-util-symbol/1.0.1: + resolution: {integrity: sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz} + name: micromark-util-symbol + version: 1.0.1 + dev: false + + registry.npmmirror.com/micromark-util-types/1.0.2: + resolution: {integrity: sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark-util-types/-/micromark-util-types-1.0.2.tgz} + name: micromark-util-types + version: 1.0.2 + dev: false + + registry.npmmirror.com/micromark/3.1.0: + resolution: {integrity: sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromark/-/micromark-3.1.0.tgz} + name: micromark + version: 3.1.0 + dependencies: + '@types/debug': registry.npmmirror.com/@types/debug/4.1.7 + debug: registry.npmmirror.com/debug/4.3.4 + decode-named-character-reference: registry.npmmirror.com/decode-named-character-reference/1.0.2 + micromark-core-commonmark: registry.npmmirror.com/micromark-core-commonmark/1.0.6 + micromark-factory-space: registry.npmmirror.com/micromark-factory-space/1.0.0 + micromark-util-character: registry.npmmirror.com/micromark-util-character/1.1.0 + micromark-util-chunked: registry.npmmirror.com/micromark-util-chunked/1.0.0 + micromark-util-combine-extensions: registry.npmmirror.com/micromark-util-combine-extensions/1.0.0 + micromark-util-decode-numeric-character-reference: registry.npmmirror.com/micromark-util-decode-numeric-character-reference/1.0.0 + micromark-util-encode: registry.npmmirror.com/micromark-util-encode/1.0.1 + micromark-util-normalize-identifier: registry.npmmirror.com/micromark-util-normalize-identifier/1.0.0 + micromark-util-resolve-all: registry.npmmirror.com/micromark-util-resolve-all/1.0.0 + micromark-util-sanitize-uri: registry.npmmirror.com/micromark-util-sanitize-uri/1.1.0 + micromark-util-subtokenize: registry.npmmirror.com/micromark-util-subtokenize/1.0.2 + micromark-util-symbol: registry.npmmirror.com/micromark-util-symbol/1.0.1 + micromark-util-types: registry.npmmirror.com/micromark-util-types/1.0.2 + uvu: registry.npmmirror.com/uvu/0.5.6 + transitivePeerDependencies: + - supports-color + dev: false + registry.npmmirror.com/micromatch/4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz} name: micromatch @@ -1924,6 +6239,42 @@ packages: dependencies: braces: registry.npmmirror.com/braces/3.0.2 picomatch: registry.npmmirror.com/picomatch/2.3.1 + + registry.npmmirror.com/mime-db/1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz} + name: mime-db + version: 1.52.0 + engines: {node: '>= 0.6'} + dev: false + + registry.npmmirror.com/mime-types/2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz} + name: mime-types + version: 2.1.35 + engines: {node: '>= 0.6'} + dependencies: + mime-db: registry.npmmirror.com/mime-db/1.52.0 + dev: false + + registry.npmmirror.com/mimic-fn/2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz} + name: mimic-fn + version: 2.1.0 + engines: {node: '>=6'} + dev: true + + registry.npmmirror.com/mimic-fn/4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mimic-fn/-/mimic-fn-4.0.0.tgz} + name: mimic-fn + version: 4.0.0 + engines: {node: '>=12'} + dev: true + + registry.npmmirror.com/mimic-response/3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mimic-response/-/mimic-response-3.1.0.tgz} + name: mimic-response + version: 3.1.0 + engines: {node: '>=10'} dev: false registry.npmmirror.com/minimatch/3.1.2: @@ -1940,11 +6291,84 @@ packages: version: 1.2.8 dev: false + registry.npmmirror.com/mkdirp-classic/0.5.3: + resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz} + name: mkdirp-classic + version: 0.5.3 + dev: false + + registry.npmmirror.com/mongodb-connection-string-url/2.6.0: + resolution: {integrity: sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz} + name: mongodb-connection-string-url + version: 2.6.0 + dependencies: + '@types/whatwg-url': registry.npmmirror.com/@types/whatwg-url/8.2.2 + whatwg-url: registry.npmmirror.com/whatwg-url/11.0.0 + dev: false + + registry.npmmirror.com/mongodb/4.14.0: + resolution: {integrity: sha512-coGKkWXIBczZPr284tYKFLg+KbGPPLlSbdgfKAb6QqCFt5bo5VFZ50O3FFzsw4rnkqjwT6D8Qcoo9nshYKM7Mg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mongodb/-/mongodb-4.14.0.tgz} + name: mongodb + version: 4.14.0 + engines: {node: '>=12.9.0'} + dependencies: + bson: registry.npmmirror.com/bson/4.7.2 + mongodb-connection-string-url: registry.npmmirror.com/mongodb-connection-string-url/2.6.0 + socks: registry.npmmirror.com/socks/2.7.1 + optionalDependencies: + '@aws-sdk/credential-providers': registry.npmmirror.com/@aws-sdk/credential-providers/3.278.0 + saslprep: registry.npmmirror.com/saslprep/1.0.3 + transitivePeerDependencies: + - aws-crt + dev: false + + registry.npmmirror.com/mongoose/6.10.0: + resolution: {integrity: sha512-0zrKDEnmNscYyAyN94smo2LlJ63gaezKHpHM+KQ+6EiAgAnah5Kt3hQSYzOTQX/63YNdT1oJXiLlB5LqTdcjUw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mongoose/-/mongoose-6.10.0.tgz} + name: mongoose + version: 6.10.0 + engines: {node: '>=12.0.0'} + dependencies: + bson: registry.npmmirror.com/bson/4.7.2 + kareem: registry.npmmirror.com/kareem/2.5.1 + mongodb: registry.npmmirror.com/mongodb/4.14.0 + mpath: registry.npmmirror.com/mpath/0.9.0 + mquery: registry.npmmirror.com/mquery/4.0.3 + ms: registry.npmmirror.com/ms/2.1.3 + sift: registry.npmmirror.com/sift/16.0.1 + transitivePeerDependencies: + - aws-crt + - supports-color + dev: false + + registry.npmmirror.com/mpath/0.9.0: + resolution: {integrity: sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mpath/-/mpath-0.9.0.tgz} + name: mpath + version: 0.9.0 + engines: {node: '>=4.0.0'} + dev: false + + registry.npmmirror.com/mquery/4.0.3: + resolution: {integrity: sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mquery/-/mquery-4.0.3.tgz} + name: mquery + version: 4.0.3 + engines: {node: '>=12.0.0'} + dependencies: + debug: registry.npmmirror.com/debug/4.3.4 + transitivePeerDependencies: + - supports-color + dev: false + + registry.npmmirror.com/mri/1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mri/-/mri-1.2.0.tgz} + name: mri + version: 1.2.0 + engines: {node: '>=4'} + dev: false + registry.npmmirror.com/ms/2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz} name: ms version: 2.1.2 - dev: false registry.npmmirror.com/ms/2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz} @@ -1960,13 +6384,19 @@ packages: hasBin: true dev: false + registry.npmmirror.com/napi-build-utils/1.0.2: + resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz} + name: napi-build-utils + version: 1.0.2 + dev: false + registry.npmmirror.com/natural-compare/1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz} name: natural-compare version: 1.4.0 dev: false - registry.npmmirror.com/next/13.1.6_biqbaboplfbrettd7655fr4n2y: + registry.npmmirror.com/next/13.1.6_wiv434v7erz4aedd5whhdwmpv4: resolution: {integrity: sha512-hHlbhKPj9pW+Cymvfzc15lvhaOZ54l+8sXDXJWm3OBNBzgrVj6hwGPmqqsXg40xO1Leq+kXpllzRPuncpC0Phw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/next/-/next-13.1.6.tgz} id: registry.npmmirror.com/next/13.1.6 name: next @@ -1993,6 +6423,7 @@ packages: postcss: registry.npmmirror.com/postcss/8.4.14 react: registry.npmmirror.com/react/18.2.0 react-dom: registry.npmmirror.com/react-dom/18.2.0_react@18.2.0 + sass: registry.npmmirror.com/sass/1.58.3 styled-jsx: registry.npmmirror.com/styled-jsx/5.1.1_react@18.2.0 optionalDependencies: '@next/swc-android-arm-eabi': registry.npmmirror.com/@next/swc-android-arm-eabi/13.1.6 @@ -2013,6 +6444,43 @@ packages: - babel-plugin-macros dev: false + registry.npmmirror.com/node-abi/3.33.0: + resolution: {integrity: sha512-7GGVawqyHF4pfd0YFybhv/eM9JwTtPqx0mAanQ146O3FlSh3pA24zf9IRQTOsfTSqXTNzPSP5iagAJ94jjuVog==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/node-abi/-/node-abi-3.33.0.tgz} + name: node-abi + version: 3.33.0 + engines: {node: '>=10'} + dependencies: + semver: registry.npmmirror.com/semver/7.3.8 + dev: false + + registry.npmmirror.com/node-addon-api/5.1.0: + resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/node-addon-api/-/node-addon-api-5.1.0.tgz} + name: node-addon-api + version: 5.1.0 + dev: false + + registry.npmmirror.com/nodemailer/6.9.1: + resolution: {integrity: sha512-qHw7dOiU5UKNnQpXktdgQ1d3OFgRAekuvbJLcdG5dnEo/GtcTHRYM7+UfJARdOFU9WUQO8OiIamgWPmiSFHYAA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/nodemailer/-/nodemailer-6.9.1.tgz} + name: nodemailer + version: 6.9.1 + engines: {node: '>=6.0.0'} + dev: false + + registry.npmmirror.com/normalize-path/3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz} + name: normalize-path + version: 3.0.0 + engines: {node: '>=0.10.0'} + + registry.npmmirror.com/npm-run-path/5.1.0: + resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/npm-run-path/-/npm-run-path-5.1.0.tgz} + name: npm-run-path + version: 5.1.0 + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + path-key: registry.npmmirror.com/path-key/4.0.0 + dev: true + registry.npmmirror.com/object-assign/4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz} name: object-assign @@ -2024,7 +6492,6 @@ packages: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz} name: object-inspect version: 1.12.3 - dev: false registry.npmmirror.com/object-is/1.1.5: resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/object-is/-/object-is-1.1.5.tgz} @@ -2105,6 +6572,24 @@ packages: wrappy: registry.npmmirror.com/wrappy/1.0.2 dev: false + registry.npmmirror.com/onetime/5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz} + name: onetime + version: 5.1.2 + engines: {node: '>=6'} + dependencies: + mimic-fn: registry.npmmirror.com/mimic-fn/2.1.0 + dev: true + + registry.npmmirror.com/onetime/6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/onetime/-/onetime-6.0.0.tgz} + name: onetime + version: 6.0.0 + engines: {node: '>=12'} + dependencies: + mimic-fn: registry.npmmirror.com/mimic-fn/4.0.0 + dev: true + registry.npmmirror.com/open/8.4.1: resolution: {integrity: sha512-/4b7qZNhv6Uhd7jjnREh1NjnPxlTq+XNWPG88Ydkj5AILcA5m3ajvcg57pB24EQjKv0dK62XnDqk9c/hkIG5Kg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/open/-/open-8.4.1.tgz} name: open @@ -2116,6 +6601,17 @@ packages: is-wsl: registry.npmmirror.com/is-wsl/2.2.0 dev: false + registry.npmmirror.com/openai/3.2.1: + resolution: {integrity: sha512-762C9BNlJPbjjlWZi4WYK9iM2tAVAv0uUp1UmI34vb0CN5T2mjB/qM6RYBmNKMh/dN9fC+bxqPwWJZUTWW052A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/openai/-/openai-3.2.1.tgz} + name: openai + version: 3.2.1 + dependencies: + axios: registry.npmmirror.com/axios/0.26.1 + form-data: registry.npmmirror.com/form-data/4.0.0 + transitivePeerDependencies: + - debug + dev: false + registry.npmmirror.com/optionator/0.9.1: resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/optionator/-/optionator-0.9.1.tgz} name: optionator @@ -2148,6 +6644,15 @@ packages: p-limit: registry.npmmirror.com/p-limit/3.1.0 dev: false + registry.npmmirror.com/p-map/4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/p-map/-/p-map-4.0.0.tgz} + name: p-map + version: 4.0.0 + engines: {node: '>=10'} + dependencies: + aggregate-error: registry.npmmirror.com/aggregate-error/3.1.0 + dev: true + registry.npmmirror.com/parent-module/1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz} name: parent-module @@ -2157,6 +6662,31 @@ packages: callsites: registry.npmmirror.com/callsites/3.1.0 dev: false + registry.npmmirror.com/parse-entities/2.0.0: + resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parse-entities/-/parse-entities-2.0.0.tgz} + name: parse-entities + version: 2.0.0 + dependencies: + character-entities: registry.npmmirror.com/character-entities/1.2.4 + character-entities-legacy: registry.npmmirror.com/character-entities-legacy/1.1.4 + character-reference-invalid: registry.npmmirror.com/character-reference-invalid/1.1.4 + is-alphanumerical: registry.npmmirror.com/is-alphanumerical/1.0.4 + is-decimal: registry.npmmirror.com/is-decimal/1.0.4 + is-hexadecimal: registry.npmmirror.com/is-hexadecimal/1.0.4 + dev: false + + registry.npmmirror.com/parse-json/5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz} + name: parse-json + version: 5.2.0 + engines: {node: '>=8'} + dependencies: + '@babel/code-frame': registry.npmmirror.com/@babel/code-frame/7.18.6 + error-ex: registry.npmmirror.com/error-ex/1.3.2 + json-parse-even-better-errors: registry.npmmirror.com/json-parse-even-better-errors/2.3.1 + lines-and-columns: registry.npmmirror.com/lines-and-columns/1.2.4 + dev: false + registry.npmmirror.com/path-exists/4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz} name: path-exists @@ -2176,7 +6706,13 @@ packages: name: path-key version: 3.1.1 engines: {node: '>=8'} - dev: false + + registry.npmmirror.com/path-key/4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-key/-/path-key-4.0.0.tgz} + name: path-key + version: 4.0.0 + engines: {node: '>=12'} + dev: true registry.npmmirror.com/path-parse/1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz} @@ -2202,7 +6738,14 @@ packages: name: picomatch version: 2.3.1 engines: {node: '>=8.6'} - dev: false + + registry.npmmirror.com/pidtree/0.6.0: + resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pidtree/-/pidtree-0.6.0.tgz} + name: pidtree + version: 0.6.0 + engines: {node: '>=0.10'} + hasBin: true + dev: true registry.npmmirror.com/postcss/8.4.14: resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss/-/postcss-8.4.14.tgz} @@ -2215,6 +6758,27 @@ packages: source-map-js: registry.npmmirror.com/source-map-js/1.0.2 dev: false + registry.npmmirror.com/prebuild-install/7.1.1: + resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prebuild-install/-/prebuild-install-7.1.1.tgz} + name: prebuild-install + version: 7.1.1 + engines: {node: '>=10'} + hasBin: true + dependencies: + detect-libc: registry.npmmirror.com/detect-libc/2.0.1 + expand-template: registry.npmmirror.com/expand-template/2.0.3 + github-from-package: registry.npmmirror.com/github-from-package/0.0.0 + minimist: registry.npmmirror.com/minimist/1.2.8 + mkdirp-classic: registry.npmmirror.com/mkdirp-classic/0.5.3 + napi-build-utils: registry.npmmirror.com/napi-build-utils/1.0.2 + node-abi: registry.npmmirror.com/node-abi/3.33.0 + pump: registry.npmmirror.com/pump/3.0.0 + rc: registry.npmmirror.com/rc/1.2.8 + simple-get: registry.npmmirror.com/simple-get/4.0.1 + tar-fs: registry.npmmirror.com/tar-fs/2.1.1 + tunnel-agent: registry.npmmirror.com/tunnel-agent/0.6.0 + dev: false + registry.npmmirror.com/prelude-ls/1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz} name: prelude-ls @@ -2222,6 +6786,28 @@ packages: engines: {node: '>= 0.8.0'} dev: false + registry.npmmirror.com/prettier/2.8.4: + resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prettier/-/prettier-2.8.4.tgz} + name: prettier + version: 2.8.4 + engines: {node: '>=10.13.0'} + hasBin: true + dev: true + + registry.npmmirror.com/prismjs/1.27.0: + resolution: {integrity: sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prismjs/-/prismjs-1.27.0.tgz} + name: prismjs + version: 1.27.0 + engines: {node: '>=6'} + dev: false + + registry.npmmirror.com/prismjs/1.29.0: + resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prismjs/-/prismjs-1.29.0.tgz} + name: prismjs + version: 1.29.0 + engines: {node: '>=6'} + dev: false + registry.npmmirror.com/prop-types/15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/prop-types/-/prop-types-15.8.1.tgz} name: prop-types @@ -2232,6 +6818,35 @@ packages: react-is: registry.npmmirror.com/react-is/16.13.1 dev: false + registry.npmmirror.com/property-information/5.6.0: + resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/property-information/-/property-information-5.6.0.tgz} + name: property-information + version: 5.6.0 + dependencies: + xtend: registry.npmmirror.com/xtend/4.0.2 + dev: false + + registry.npmmirror.com/property-information/6.2.0: + resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/property-information/-/property-information-6.2.0.tgz} + name: property-information + version: 6.2.0 + dev: false + + registry.npmmirror.com/proxy-from-env/1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz} + name: proxy-from-env + version: 1.1.0 + dev: false + + registry.npmmirror.com/pump/3.0.0: + resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pump/-/pump-3.0.0.tgz} + name: pump + version: 3.0.0 + dependencies: + end-of-stream: registry.npmmirror.com/end-of-stream/1.4.4 + once: registry.npmmirror.com/once/1.4.0 + dev: false + registry.npmmirror.com/punycode/2.3.0: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/punycode/-/punycode-2.3.0.tgz} name: punycode @@ -2239,12 +6854,45 @@ packages: engines: {node: '>=6'} dev: false + registry.npmmirror.com/qs/6.11.0: + resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/qs/-/qs-6.11.0.tgz} + name: qs + version: 6.11.0 + engines: {node: '>=0.6'} + dependencies: + side-channel: registry.npmmirror.com/side-channel/1.0.4 + dev: false + registry.npmmirror.com/queue-microtask/1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz} name: queue-microtask version: 1.2.3 dev: false + registry.npmmirror.com/rc/1.2.8: + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rc/-/rc-1.2.8.tgz} + name: rc + version: 1.2.8 + hasBin: true + dependencies: + deep-extend: registry.npmmirror.com/deep-extend/0.6.0 + ini: registry.npmmirror.com/ini/1.3.8 + minimist: registry.npmmirror.com/minimist/1.2.8 + strip-json-comments: registry.npmmirror.com/strip-json-comments/2.0.1 + dev: false + + registry.npmmirror.com/react-clientside-effect/1.2.6_react@18.2.0: + resolution: {integrity: sha512-XGGGRQAKY+q25Lz9a/4EPqom7WRjz3z9R2k4jhVKA/puQFH/5Nt27vFZYql4m4NVNdUvX8PS3O7r/Zzm7cjUlg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-clientside-effect/-/react-clientside-effect-1.2.6.tgz} + id: registry.npmmirror.com/react-clientside-effect/1.2.6 + name: react-clientside-effect + version: 1.2.6 + peerDependencies: + react: ^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + react: registry.npmmirror.com/react/18.2.0 + dev: false + registry.npmmirror.com/react-dom/18.2.0_react@18.2.0: resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-dom/-/react-dom-18.2.0.tgz} id: registry.npmmirror.com/react-dom/18.2.0 @@ -2258,12 +6906,165 @@ packages: scheduler: registry.npmmirror.com/scheduler/0.23.0 dev: false + registry.npmmirror.com/react-fast-compare/3.2.0: + resolution: {integrity: sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-fast-compare/-/react-fast-compare-3.2.0.tgz} + name: react-fast-compare + version: 3.2.0 + dev: false + + registry.npmmirror.com/react-focus-lock/2.9.4_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-7pEdXyMseqm3kVjhdVH18sovparAzLg5h6WvIx7/Ck3ekjhrrDMEegHSa3swwC8wgfdd7DIdUVRGeiHT9/7Sgg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-focus-lock/-/react-focus-lock-2.9.4.tgz} + id: registry.npmmirror.com/react-focus-lock/2.9.4 + name: react-focus-lock + version: 2.9.4 + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + focus-lock: registry.npmmirror.com/focus-lock/0.11.6 + prop-types: registry.npmmirror.com/prop-types/15.8.1 + react: registry.npmmirror.com/react/18.2.0 + react-clientside-effect: registry.npmmirror.com/react-clientside-effect/1.2.6_react@18.2.0 + use-callback-ref: registry.npmmirror.com/use-callback-ref/1.3.0_pmekkgnqduwlme35zpnqhenc34 + use-sidecar: registry.npmmirror.com/use-sidecar/1.1.2_pmekkgnqduwlme35zpnqhenc34 + dev: false + + registry.npmmirror.com/react-hook-form/7.43.1_react@18.2.0: + resolution: {integrity: sha512-+s3+s8LLytRMriwwuSqeLStVjRXFGxgjjx2jED7Z+wz1J/88vpxieRQGvJVvzrzVxshZ0BRuocFERb779m2kNg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-hook-form/-/react-hook-form-7.43.1.tgz} + id: registry.npmmirror.com/react-hook-form/7.43.1 + name: react-hook-form + version: 7.43.1 + engines: {node: '>=12.22.0'} + peerDependencies: + react: ^16.8.0 || ^17 || ^18 + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + registry.npmmirror.com/react-is/16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-is/-/react-is-16.13.1.tgz} name: react-is version: 16.13.1 dev: false + registry.npmmirror.com/react-is/18.2.0: + resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-is/-/react-is-18.2.0.tgz} + name: react-is + version: 18.2.0 + dev: false + + registry.npmmirror.com/react-markdown/8.0.5_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-jGJolWWmOWAvzf+xMdB9zwStViODyyFQhNB/bwCerbBKmrTmgmA599CGiOlP58OId1IMoIRsA8UdI1Lod4zb5A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-markdown/-/react-markdown-8.0.5.tgz} + id: registry.npmmirror.com/react-markdown/8.0.5 + name: react-markdown + version: 8.0.5 + peerDependencies: + '@types/react': '>=16' + react: '>=16' + dependencies: + '@types/hast': registry.npmmirror.com/@types/hast/2.3.4 + '@types/prop-types': registry.npmmirror.com/@types/prop-types/15.7.5 + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + comma-separated-tokens: registry.npmmirror.com/comma-separated-tokens/2.0.3 + hast-util-whitespace: registry.npmmirror.com/hast-util-whitespace/2.0.1 + prop-types: registry.npmmirror.com/prop-types/15.8.1 + property-information: registry.npmmirror.com/property-information/6.2.0 + react: registry.npmmirror.com/react/18.2.0 + react-is: registry.npmmirror.com/react-is/18.2.0 + remark-parse: registry.npmmirror.com/remark-parse/10.0.1 + remark-rehype: registry.npmmirror.com/remark-rehype/10.1.0 + space-separated-tokens: registry.npmmirror.com/space-separated-tokens/2.0.2 + style-to-object: registry.npmmirror.com/style-to-object/0.4.1 + unified: registry.npmmirror.com/unified/10.1.2 + unist-util-visit: registry.npmmirror.com/unist-util-visit/4.1.2 + vfile: registry.npmmirror.com/vfile/5.3.7 + transitivePeerDependencies: + - supports-color + dev: false + + registry.npmmirror.com/react-remove-scroll-bar/2.3.4_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.4.tgz} + id: registry.npmmirror.com/react-remove-scroll-bar/2.3.4 + name: react-remove-scroll-bar + version: 2.3.4 + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + react: registry.npmmirror.com/react/18.2.0 + react-style-singleton: registry.npmmirror.com/react-style-singleton/2.2.1_pmekkgnqduwlme35zpnqhenc34 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/react-remove-scroll/2.5.5_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz} + id: registry.npmmirror.com/react-remove-scroll/2.5.5 + name: react-remove-scroll + version: 2.5.5 + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + react: registry.npmmirror.com/react/18.2.0 + react-remove-scroll-bar: registry.npmmirror.com/react-remove-scroll-bar/2.3.4_pmekkgnqduwlme35zpnqhenc34 + react-style-singleton: registry.npmmirror.com/react-style-singleton/2.2.1_pmekkgnqduwlme35zpnqhenc34 + tslib: registry.npmmirror.com/tslib/2.5.0 + use-callback-ref: registry.npmmirror.com/use-callback-ref/1.3.0_pmekkgnqduwlme35zpnqhenc34 + use-sidecar: registry.npmmirror.com/use-sidecar/1.1.2_pmekkgnqduwlme35zpnqhenc34 + dev: false + + registry.npmmirror.com/react-style-singleton/2.2.1_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-style-singleton/-/react-style-singleton-2.2.1.tgz} + id: registry.npmmirror.com/react-style-singleton/2.2.1 + name: react-style-singleton + version: 2.2.1 + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + get-nonce: registry.npmmirror.com/get-nonce/1.0.1 + invariant: registry.npmmirror.com/invariant/2.2.4 + react: registry.npmmirror.com/react/18.2.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/react-syntax-highlighter/15.5.0_react@18.2.0: + resolution: {integrity: sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react-syntax-highlighter/-/react-syntax-highlighter-15.5.0.tgz} + id: registry.npmmirror.com/react-syntax-highlighter/15.5.0 + name: react-syntax-highlighter + version: 15.5.0 + peerDependencies: + react: '>= 0.14.0' + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + highlight.js: registry.npmmirror.com/highlight.js/10.7.3 + lowlight: registry.npmmirror.com/lowlight/1.20.0 + prismjs: registry.npmmirror.com/prismjs/1.29.0 + react: registry.npmmirror.com/react/18.2.0 + refractor: registry.npmmirror.com/refractor/3.6.0 + dev: false + registry.npmmirror.com/react/18.2.0: resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/react/-/react-18.2.0.tgz} name: react @@ -2273,6 +7074,55 @@ packages: loose-envify: registry.npmmirror.com/loose-envify/1.4.0 dev: false + registry.npmmirror.com/readable-stream/3.6.1: + resolution: {integrity: sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.1.tgz} + name: readable-stream + version: 3.6.1 + engines: {node: '>= 6'} + dependencies: + inherits: registry.npmmirror.com/inherits/2.0.4 + string_decoder: registry.npmmirror.com/string_decoder/1.3.0 + util-deprecate: registry.npmmirror.com/util-deprecate/1.0.2 + dev: false + + registry.npmmirror.com/readdirp/3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz} + name: readdirp + version: 3.6.0 + engines: {node: '>=8.10.0'} + dependencies: + picomatch: registry.npmmirror.com/picomatch/2.3.1 + dev: false + + registry.npmmirror.com/redux-thunk/2.4.2_redux@4.2.1: + resolution: {integrity: sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/redux-thunk/-/redux-thunk-2.4.2.tgz} + id: registry.npmmirror.com/redux-thunk/2.4.2 + name: redux-thunk + version: 2.4.2 + peerDependencies: + redux: ^4 + dependencies: + redux: registry.npmmirror.com/redux/4.2.1 + dev: false + + registry.npmmirror.com/redux/4.2.1: + resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/redux/-/redux-4.2.1.tgz} + name: redux + version: 4.2.1 + dependencies: + '@babel/runtime': registry.npmmirror.com/@babel/runtime/7.20.13 + dev: false + + registry.npmmirror.com/refractor/3.6.0: + resolution: {integrity: sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/refractor/-/refractor-3.6.0.tgz} + name: refractor + version: 3.6.0 + dependencies: + hastscript: registry.npmmirror.com/hastscript/6.0.0 + parse-entities: registry.npmmirror.com/parse-entities/2.0.0 + prismjs: registry.npmmirror.com/prismjs/1.27.0 + dev: false + registry.npmmirror.com/regenerator-runtime/0.13.11: resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz} name: regenerator-runtime @@ -2297,6 +7147,48 @@ packages: engines: {node: '>=8'} dev: false + registry.npmmirror.com/remark-gfm/3.0.1: + resolution: {integrity: sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/remark-gfm/-/remark-gfm-3.0.1.tgz} + name: remark-gfm + version: 3.0.1 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + mdast-util-gfm: registry.npmmirror.com/mdast-util-gfm/2.0.2 + micromark-extension-gfm: registry.npmmirror.com/micromark-extension-gfm/2.0.1 + unified: registry.npmmirror.com/unified/10.1.2 + transitivePeerDependencies: + - supports-color + dev: false + + registry.npmmirror.com/remark-parse/10.0.1: + resolution: {integrity: sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/remark-parse/-/remark-parse-10.0.1.tgz} + name: remark-parse + version: 10.0.1 + dependencies: + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + mdast-util-from-markdown: registry.npmmirror.com/mdast-util-from-markdown/1.3.0 + unified: registry.npmmirror.com/unified/10.1.2 + transitivePeerDependencies: + - supports-color + dev: false + + registry.npmmirror.com/remark-rehype/10.1.0: + resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/remark-rehype/-/remark-rehype-10.1.0.tgz} + name: remark-rehype + version: 10.1.0 + dependencies: + '@types/hast': registry.npmmirror.com/@types/hast/2.3.4 + '@types/mdast': registry.npmmirror.com/@types/mdast/3.0.10 + mdast-util-to-hast: registry.npmmirror.com/mdast-util-to-hast/12.3.0 + unified: registry.npmmirror.com/unified/10.1.2 + dev: false + + registry.npmmirror.com/reselect/4.1.7: + resolution: {integrity: sha512-Zu1xbUt3/OPwsXL46hvOOoQrap2azE7ZQbokq61BQfiXvhewsKDwhMeZjTX9sX0nvw1t/U5Audyn1I9P/m9z0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/reselect/-/reselect-4.1.7.tgz} + name: reselect + version: 4.1.7 + dev: false + registry.npmmirror.com/resolve-from/4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz} name: resolve-from @@ -2326,6 +7218,16 @@ packages: supports-preserve-symlinks-flag: registry.npmmirror.com/supports-preserve-symlinks-flag/1.0.0 dev: false + registry.npmmirror.com/restore-cursor/3.1.0: + resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/restore-cursor/-/restore-cursor-3.1.0.tgz} + name: restore-cursor + version: 3.1.0 + engines: {node: '>=8'} + dependencies: + onetime: registry.npmmirror.com/onetime/5.1.2 + signal-exit: registry.npmmirror.com/signal-exit/3.0.7 + dev: true + registry.npmmirror.com/reusify/1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz} name: reusify @@ -2333,6 +7235,12 @@ packages: engines: {iojs: '>=1.0.0', node: '>=0.10.0'} dev: false + registry.npmmirror.com/rfdc/1.3.0: + resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rfdc/-/rfdc-1.3.0.tgz} + name: rfdc + version: 1.3.0 + dev: true + registry.npmmirror.com/rimraf/3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz} name: rimraf @@ -2350,6 +7258,29 @@ packages: queue-microtask: registry.npmmirror.com/queue-microtask/1.2.3 dev: false + registry.npmmirror.com/rxjs/7.8.0: + resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rxjs/-/rxjs-7.8.0.tgz} + name: rxjs + version: 7.8.0 + dependencies: + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: true + + registry.npmmirror.com/sade/1.8.1: + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sade/-/sade-1.8.1.tgz} + name: sade + version: 1.8.1 + engines: {node: '>=6'} + dependencies: + mri: registry.npmmirror.com/mri/1.2.0 + dev: false + + registry.npmmirror.com/safe-buffer/5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz} + name: safe-buffer + version: 5.2.1 + dev: false + registry.npmmirror.com/safe-regex-test/1.0.0: resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz} name: safe-regex-test @@ -2360,6 +7291,29 @@ packages: is-regex: registry.npmmirror.com/is-regex/1.1.4 dev: false + registry.npmmirror.com/saslprep/1.0.3: + resolution: {integrity: sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/saslprep/-/saslprep-1.0.3.tgz} + name: saslprep + version: 1.0.3 + engines: {node: '>=6'} + requiresBuild: true + dependencies: + sparse-bitfield: registry.npmmirror.com/sparse-bitfield/3.0.3 + dev: false + optional: true + + registry.npmmirror.com/sass/1.58.3: + resolution: {integrity: sha512-Q7RaEtYf6BflYrQ+buPudKR26/lH+10EmO9bBqbmPh/KeLqv8bjpTNqxe71ocONqXq+jYiCbpPUmQMS+JJPk4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass/-/sass-1.58.3.tgz} + name: sass + version: 1.58.3 + engines: {node: '>=12.0.0'} + hasBin: true + dependencies: + chokidar: registry.npmmirror.com/chokidar/3.5.3 + immutable: registry.npmmirror.com/immutable/4.2.4 + source-map-js: registry.npmmirror.com/source-map-js/1.0.2 + dev: false + registry.npmmirror.com/scheduler/0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/scheduler/-/scheduler-0.23.0.tgz} name: scheduler @@ -2385,6 +7339,23 @@ packages: lru-cache: registry.npmmirror.com/lru-cache/6.0.0 dev: false + registry.npmmirror.com/sharp/0.31.3: + resolution: {integrity: sha512-XcR4+FCLBFKw1bdB+GEhnUNXNXvnt0tDo4WsBsraKymuo/IAuPuCBVAL2wIkUw2r/dwFW5Q5+g66Kwl2dgDFVg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sharp/-/sharp-0.31.3.tgz} + name: sharp + version: 0.31.3 + engines: {node: '>=14.15.0'} + requiresBuild: true + dependencies: + color: registry.npmmirror.com/color/4.2.3 + detect-libc: registry.npmmirror.com/detect-libc/2.0.1 + node-addon-api: registry.npmmirror.com/node-addon-api/5.1.0 + prebuild-install: registry.npmmirror.com/prebuild-install/7.1.1 + semver: registry.npmmirror.com/semver/7.3.8 + simple-get: registry.npmmirror.com/simple-get/4.0.1 + tar-fs: registry.npmmirror.com/tar-fs/2.1.1 + tunnel-agent: registry.npmmirror.com/tunnel-agent/0.6.0 + dev: false + registry.npmmirror.com/shebang-command/2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz} name: shebang-command @@ -2392,14 +7363,12 @@ packages: engines: {node: '>=8'} dependencies: shebang-regex: registry.npmmirror.com/shebang-regex/3.0.0 - dev: false registry.npmmirror.com/shebang-regex/3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz} name: shebang-regex version: 3.0.0 engines: {node: '>=8'} - dev: false registry.npmmirror.com/side-channel/1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/side-channel/-/side-channel-1.0.4.tgz} @@ -2411,6 +7380,42 @@ packages: object-inspect: registry.npmmirror.com/object-inspect/1.12.3 dev: false + registry.npmmirror.com/sift/16.0.1: + resolution: {integrity: sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sift/-/sift-16.0.1.tgz} + name: sift + version: 16.0.1 + dev: false + + registry.npmmirror.com/signal-exit/3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz} + name: signal-exit + version: 3.0.7 + dev: true + + registry.npmmirror.com/simple-concat/1.0.1: + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/simple-concat/-/simple-concat-1.0.1.tgz} + name: simple-concat + version: 1.0.1 + dev: false + + registry.npmmirror.com/simple-get/4.0.1: + resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/simple-get/-/simple-get-4.0.1.tgz} + name: simple-get + version: 4.0.1 + dependencies: + decompress-response: registry.npmmirror.com/decompress-response/6.0.0 + once: registry.npmmirror.com/once/1.4.0 + simple-concat: registry.npmmirror.com/simple-concat/1.0.1 + dev: false + + registry.npmmirror.com/simple-swizzle/0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz} + name: simple-swizzle + version: 0.2.2 + dependencies: + is-arrayish: registry.npmmirror.com/is-arrayish/0.3.2 + dev: false + registry.npmmirror.com/slash/3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz} name: slash @@ -2425,6 +7430,55 @@ packages: engines: {node: '>=12'} dev: false + registry.npmmirror.com/slice-ansi/3.0.0: + resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/slice-ansi/-/slice-ansi-3.0.0.tgz} + name: slice-ansi + version: 3.0.0 + engines: {node: '>=8'} + dependencies: + ansi-styles: registry.npmmirror.com/ansi-styles/4.3.0 + astral-regex: registry.npmmirror.com/astral-regex/2.0.0 + is-fullwidth-code-point: registry.npmmirror.com/is-fullwidth-code-point/3.0.0 + dev: true + + registry.npmmirror.com/slice-ansi/4.0.0: + resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/slice-ansi/-/slice-ansi-4.0.0.tgz} + name: slice-ansi + version: 4.0.0 + engines: {node: '>=10'} + dependencies: + ansi-styles: registry.npmmirror.com/ansi-styles/4.3.0 + astral-regex: registry.npmmirror.com/astral-regex/2.0.0 + is-fullwidth-code-point: registry.npmmirror.com/is-fullwidth-code-point/3.0.0 + dev: true + + registry.npmmirror.com/slice-ansi/5.0.0: + resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/slice-ansi/-/slice-ansi-5.0.0.tgz} + name: slice-ansi + version: 5.0.0 + engines: {node: '>=12'} + dependencies: + ansi-styles: registry.npmmirror.com/ansi-styles/6.2.1 + is-fullwidth-code-point: registry.npmmirror.com/is-fullwidth-code-point/4.0.0 + dev: true + + registry.npmmirror.com/smart-buffer/4.2.0: + resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/smart-buffer/-/smart-buffer-4.2.0.tgz} + name: smart-buffer + version: 4.2.0 + engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + dev: false + + registry.npmmirror.com/socks/2.7.1: + resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/socks/-/socks-2.7.1.tgz} + name: socks + version: 2.7.1 + engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} + dependencies: + ip: registry.npmmirror.com/ip/2.0.0 + smart-buffer: registry.npmmirror.com/smart-buffer/4.2.0 + dev: false + registry.npmmirror.com/source-map-js/1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz} name: source-map-js @@ -2432,6 +7486,34 @@ packages: engines: {node: '>=0.10.0'} dev: false + registry.npmmirror.com/source-map/0.5.7: + resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz} + name: source-map + version: 0.5.7 + engines: {node: '>=0.10.0'} + dev: false + + registry.npmmirror.com/space-separated-tokens/1.1.5: + resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz} + name: space-separated-tokens + version: 1.1.5 + dev: false + + registry.npmmirror.com/space-separated-tokens/2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz} + name: space-separated-tokens + version: 2.0.2 + dev: false + + registry.npmmirror.com/sparse-bitfield/3.0.3: + resolution: {integrity: sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz} + name: sparse-bitfield + version: 3.0.3 + dependencies: + memory-pager: registry.npmmirror.com/memory-pager/1.5.0 + dev: false + optional: true + registry.npmmirror.com/stop-iteration-iterator/1.0.0: resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz} name: stop-iteration-iterator @@ -2441,6 +7523,35 @@ packages: internal-slot: registry.npmmirror.com/internal-slot/1.0.5 dev: false + registry.npmmirror.com/string-argv/0.3.1: + resolution: {integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/string-argv/-/string-argv-0.3.1.tgz} + name: string-argv + version: 0.3.1 + engines: {node: '>=0.6.19'} + dev: true + + registry.npmmirror.com/string-width/4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz} + name: string-width + version: 4.2.3 + engines: {node: '>=8'} + dependencies: + emoji-regex: registry.npmmirror.com/emoji-regex/8.0.0 + is-fullwidth-code-point: registry.npmmirror.com/is-fullwidth-code-point/3.0.0 + strip-ansi: registry.npmmirror.com/strip-ansi/6.0.1 + dev: true + + registry.npmmirror.com/string-width/5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/string-width/-/string-width-5.1.2.tgz} + name: string-width + version: 5.1.2 + engines: {node: '>=12'} + dependencies: + eastasianwidth: registry.npmmirror.com/eastasianwidth/0.2.0 + emoji-regex: registry.npmmirror.com/emoji-regex/9.2.2 + strip-ansi: registry.npmmirror.com/strip-ansi/7.0.1 + dev: true + registry.npmmirror.com/string.prototype.matchall/4.0.8: resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz} name: string.prototype.matchall @@ -2476,6 +7587,14 @@ packages: es-abstract: registry.npmmirror.com/es-abstract/1.21.1 dev: false + registry.npmmirror.com/string_decoder/1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz} + name: string_decoder + version: 1.3.0 + dependencies: + safe-buffer: registry.npmmirror.com/safe-buffer/5.2.1 + dev: false + registry.npmmirror.com/strip-ansi/6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz} name: strip-ansi @@ -2483,7 +7602,15 @@ packages: engines: {node: '>=8'} dependencies: ansi-regex: registry.npmmirror.com/ansi-regex/5.0.1 - dev: false + + registry.npmmirror.com/strip-ansi/7.0.1: + resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.0.1.tgz} + name: strip-ansi + version: 7.0.1 + engines: {node: '>=12'} + dependencies: + ansi-regex: registry.npmmirror.com/ansi-regex/6.0.1 + dev: true registry.npmmirror.com/strip-bom/3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-bom/-/strip-bom-3.0.0.tgz} @@ -2492,6 +7619,20 @@ packages: engines: {node: '>=4'} dev: false + registry.npmmirror.com/strip-final-newline/3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz} + name: strip-final-newline + version: 3.0.0 + engines: {node: '>=12'} + dev: true + + registry.npmmirror.com/strip-json-comments/2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz} + name: strip-json-comments + version: 2.0.1 + engines: {node: '>=0.10.0'} + dev: false + registry.npmmirror.com/strip-json-comments/3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz} name: strip-json-comments @@ -2499,6 +7640,21 @@ packages: engines: {node: '>=8'} dev: false + registry.npmmirror.com/strnum/1.0.5: + resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strnum/-/strnum-1.0.5.tgz} + name: strnum + version: 1.0.5 + dev: false + optional: true + + registry.npmmirror.com/style-to-object/0.4.1: + resolution: {integrity: sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/style-to-object/-/style-to-object-0.4.1.tgz} + name: style-to-object + version: 0.4.1 + dependencies: + inline-style-parser: registry.npmmirror.com/inline-style-parser/0.1.1 + dev: false + registry.npmmirror.com/styled-jsx/5.1.1_react@18.2.0: resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/styled-jsx/-/styled-jsx-5.1.1.tgz} id: registry.npmmirror.com/styled-jsx/5.1.1 @@ -2519,6 +7675,21 @@ packages: react: registry.npmmirror.com/react/18.2.0 dev: false + registry.npmmirror.com/stylis/4.1.3: + resolution: {integrity: sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/stylis/-/stylis-4.1.3.tgz} + name: stylis + version: 4.1.3 + dev: false + + registry.npmmirror.com/supports-color/5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz} + name: supports-color + version: 5.5.0 + engines: {node: '>=4'} + dependencies: + has-flag: registry.npmmirror.com/has-flag/3.0.0 + dev: false + registry.npmmirror.com/supports-color/7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz} name: supports-color @@ -2552,12 +7723,42 @@ packages: engines: {node: '>=6'} dev: false + registry.npmmirror.com/tar-fs/2.1.1: + resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tar-fs/-/tar-fs-2.1.1.tgz} + name: tar-fs + version: 2.1.1 + dependencies: + chownr: registry.npmmirror.com/chownr/1.1.4 + mkdirp-classic: registry.npmmirror.com/mkdirp-classic/0.5.3 + pump: registry.npmmirror.com/pump/3.0.0 + tar-stream: registry.npmmirror.com/tar-stream/2.2.0 + dev: false + + registry.npmmirror.com/tar-stream/2.2.0: + resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tar-stream/-/tar-stream-2.2.0.tgz} + name: tar-stream + version: 2.2.0 + engines: {node: '>=6'} + dependencies: + bl: registry.npmmirror.com/bl/4.1.0 + end-of-stream: registry.npmmirror.com/end-of-stream/1.4.4 + fs-constants: registry.npmmirror.com/fs-constants/1.0.0 + inherits: registry.npmmirror.com/inherits/2.0.4 + readable-stream: registry.npmmirror.com/readable-stream/3.6.1 + dev: false + registry.npmmirror.com/text-table/0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/text-table/-/text-table-0.2.0.tgz} name: text-table version: 0.2.0 dev: false + registry.npmmirror.com/through/2.3.8: + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/through/-/through-2.3.8.tgz} + name: through + version: 2.3.8 + dev: true + registry.npmmirror.com/tiny-glob/0.2.9: resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tiny-glob/-/tiny-glob-0.2.9.tgz} name: tiny-glob @@ -2567,6 +7768,19 @@ packages: globrex: registry.npmmirror.com/globrex/0.1.2 dev: false + registry.npmmirror.com/tiny-invariant/1.3.1: + resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tiny-invariant/-/tiny-invariant-1.3.1.tgz} + name: tiny-invariant + version: 1.3.1 + dev: false + + registry.npmmirror.com/to-fast-properties/2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz} + name: to-fast-properties + version: 2.0.0 + engines: {node: '>=4'} + dev: false + registry.npmmirror.com/to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz} name: to-regex-range @@ -2574,6 +7788,32 @@ packages: engines: {node: '>=8.0'} dependencies: is-number: registry.npmmirror.com/is-number/7.0.0 + + registry.npmmirror.com/toggle-selection/1.0.6: + resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/toggle-selection/-/toggle-selection-1.0.6.tgz} + name: toggle-selection + version: 1.0.6 + dev: false + + registry.npmmirror.com/tr46/3.0.0: + resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tr46/-/tr46-3.0.0.tgz} + name: tr46 + version: 3.0.0 + engines: {node: '>=12'} + dependencies: + punycode: registry.npmmirror.com/punycode/2.3.0 + dev: false + + registry.npmmirror.com/trim-lines/3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/trim-lines/-/trim-lines-3.0.1.tgz} + name: trim-lines + version: 3.0.1 + dev: false + + registry.npmmirror.com/trough/2.1.0: + resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/trough/-/trough-2.1.0.tgz} + name: trough + version: 2.1.0 dev: false registry.npmmirror.com/tsconfig-paths/3.14.1: @@ -2593,11 +7833,16 @@ packages: version: 1.14.1 dev: false + registry.npmmirror.com/tslib/2.4.0: + resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tslib/-/tslib-2.4.0.tgz} + name: tslib + version: 2.4.0 + dev: false + registry.npmmirror.com/tslib/2.5.0: resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tslib/-/tslib-2.5.0.tgz} name: tslib version: 2.5.0 - dev: false registry.npmmirror.com/tsutils/3.21.0_typescript@4.9.5: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tsutils/-/tsutils-3.21.0.tgz} @@ -2612,6 +7857,21 @@ packages: typescript: registry.npmmirror.com/typescript/4.9.5 dev: false + registry.npmmirror.com/tunnel-agent/0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz} + name: tunnel-agent + version: 0.6.0 + dependencies: + safe-buffer: registry.npmmirror.com/safe-buffer/5.2.1 + dev: false + + registry.npmmirror.com/tunnel/0.0.6: + resolution: {integrity: sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tunnel/-/tunnel-0.0.6.tgz} + name: tunnel + version: 0.0.6 + engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'} + dev: false + registry.npmmirror.com/type-check/0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/type-check/-/type-check-0.4.0.tgz} name: type-check @@ -2628,6 +7888,13 @@ packages: engines: {node: '>=10'} dev: false + registry.npmmirror.com/type-fest/0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/type-fest/-/type-fest-0.21.3.tgz} + name: type-fest + version: 0.21.3 + engines: {node: '>=10'} + dev: true + registry.npmmirror.com/typed-array-length/1.0.4: resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/typed-array-length/-/typed-array-length-1.0.4.tgz} name: typed-array-length @@ -2657,6 +7924,67 @@ packages: which-boxed-primitive: registry.npmmirror.com/which-boxed-primitive/1.0.2 dev: false + registry.npmmirror.com/unified/10.1.2: + resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unified/-/unified-10.1.2.tgz} + name: unified + version: 10.1.2 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + bail: registry.npmmirror.com/bail/2.0.2 + extend: registry.npmmirror.com/extend/3.0.2 + is-buffer: registry.npmmirror.com/is-buffer/2.0.5 + is-plain-obj: registry.npmmirror.com/is-plain-obj/4.1.0 + trough: registry.npmmirror.com/trough/2.1.0 + vfile: registry.npmmirror.com/vfile/5.3.7 + dev: false + + registry.npmmirror.com/unist-util-generated/2.0.1: + resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unist-util-generated/-/unist-util-generated-2.0.1.tgz} + name: unist-util-generated + version: 2.0.1 + dev: false + + registry.npmmirror.com/unist-util-is/5.2.0: + resolution: {integrity: sha512-Glt17jWwZeyqrFqOK0pF1Ded5U3yzJnFr8CG1GMjCWTp9zDo2p+cmD6pWbZU8AgM5WU3IzRv6+rBwhzsGh6hBQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unist-util-is/-/unist-util-is-5.2.0.tgz} + name: unist-util-is + version: 5.2.0 + dev: false + + registry.npmmirror.com/unist-util-position/4.0.4: + resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unist-util-position/-/unist-util-position-4.0.4.tgz} + name: unist-util-position + version: 4.0.4 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + dev: false + + registry.npmmirror.com/unist-util-stringify-position/3.0.3: + resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz} + name: unist-util-stringify-position + version: 3.0.3 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + dev: false + + registry.npmmirror.com/unist-util-visit-parents/5.1.3: + resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz} + name: unist-util-visit-parents + version: 5.1.3 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + unist-util-is: registry.npmmirror.com/unist-util-is/5.2.0 + dev: false + + registry.npmmirror.com/unist-util-visit/4.1.2: + resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/unist-util-visit/-/unist-util-visit-4.1.2.tgz} + name: unist-util-visit + version: 4.1.2 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + unist-util-is: registry.npmmirror.com/unist-util-is/5.2.0 + unist-util-visit-parents: registry.npmmirror.com/unist-util-visit-parents/5.1.3 + dev: false + registry.npmmirror.com/uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz} name: uri-js @@ -2665,6 +7993,125 @@ packages: punycode: registry.npmmirror.com/punycode/2.3.0 dev: false + registry.npmmirror.com/use-callback-ref/1.3.0_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/use-callback-ref/-/use-callback-ref-1.3.0.tgz} + id: registry.npmmirror.com/use-callback-ref/1.3.0 + name: use-callback-ref + version: 1.3.0 + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + react: registry.npmmirror.com/react/18.2.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/use-sidecar/1.1.2_pmekkgnqduwlme35zpnqhenc34: + resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/use-sidecar/-/use-sidecar-1.1.2.tgz} + id: registry.npmmirror.com/use-sidecar/1.1.2 + name: use-sidecar + version: 1.1.2 + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': registry.npmmirror.com/@types/react/18.0.28 + detect-node-es: registry.npmmirror.com/detect-node-es/1.1.0 + react: registry.npmmirror.com/react/18.2.0 + tslib: registry.npmmirror.com/tslib/2.5.0 + dev: false + + registry.npmmirror.com/use-sync-external-store/1.2.0_react@18.2.0: + resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz} + id: registry.npmmirror.com/use-sync-external-store/1.2.0 + name: use-sync-external-store + version: 1.2.0 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: + react: registry.npmmirror.com/react/18.2.0 + dev: false + + registry.npmmirror.com/util-deprecate/1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz} + name: util-deprecate + version: 1.0.2 + dev: false + + registry.npmmirror.com/uuid/8.3.2: + resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz} + name: uuid + version: 8.3.2 + hasBin: true + dev: false + optional: true + + registry.npmmirror.com/uuid/9.0.0: + resolution: {integrity: sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/uuid/-/uuid-9.0.0.tgz} + name: uuid + version: 9.0.0 + hasBin: true + dev: false + + registry.npmmirror.com/uvu/0.5.6: + resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/uvu/-/uvu-0.5.6.tgz} + name: uvu + version: 0.5.6 + engines: {node: '>=8'} + hasBin: true + dependencies: + dequal: registry.npmmirror.com/dequal/2.0.3 + diff: registry.npmmirror.com/diff/5.1.0 + kleur: registry.npmmirror.com/kleur/4.1.5 + sade: registry.npmmirror.com/sade/1.8.1 + dev: false + + registry.npmmirror.com/vfile-message/3.1.4: + resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vfile-message/-/vfile-message-3.1.4.tgz} + name: vfile-message + version: 3.1.4 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + unist-util-stringify-position: registry.npmmirror.com/unist-util-stringify-position/3.0.3 + dev: false + + registry.npmmirror.com/vfile/5.3.7: + resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vfile/-/vfile-5.3.7.tgz} + name: vfile + version: 5.3.7 + dependencies: + '@types/unist': registry.npmmirror.com/@types/unist/2.0.6 + is-buffer: registry.npmmirror.com/is-buffer/2.0.5 + unist-util-stringify-position: registry.npmmirror.com/unist-util-stringify-position/3.0.3 + vfile-message: registry.npmmirror.com/vfile-message/3.1.4 + dev: false + + registry.npmmirror.com/webidl-conversions/7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz} + name: webidl-conversions + version: 7.0.0 + engines: {node: '>=12'} + dev: false + + registry.npmmirror.com/whatwg-url/11.0.0: + resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/whatwg-url/-/whatwg-url-11.0.0.tgz} + name: whatwg-url + version: 11.0.0 + engines: {node: '>=12'} + dependencies: + tr46: registry.npmmirror.com/tr46/3.0.0 + webidl-conversions: registry.npmmirror.com/webidl-conversions/7.0.0 + dev: false + registry.npmmirror.com/which-boxed-primitive/1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz} name: which-boxed-primitive @@ -2710,7 +8157,6 @@ packages: hasBin: true dependencies: isexe: registry.npmmirror.com/isexe/2.0.0 - dev: false registry.npmmirror.com/word-wrap/1.2.3: resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz} @@ -2719,21 +8165,90 @@ packages: engines: {node: '>=0.10.0'} dev: false + registry.npmmirror.com/wrap-ansi/6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz} + name: wrap-ansi + version: 6.2.0 + engines: {node: '>=8'} + dependencies: + ansi-styles: registry.npmmirror.com/ansi-styles/4.3.0 + string-width: registry.npmmirror.com/string-width/4.2.3 + strip-ansi: registry.npmmirror.com/strip-ansi/6.0.1 + dev: true + + registry.npmmirror.com/wrap-ansi/7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz} + name: wrap-ansi + version: 7.0.0 + engines: {node: '>=10'} + dependencies: + ansi-styles: registry.npmmirror.com/ansi-styles/4.3.0 + string-width: registry.npmmirror.com/string-width/4.2.3 + strip-ansi: registry.npmmirror.com/strip-ansi/6.0.1 + dev: true + registry.npmmirror.com/wrappy/1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz} name: wrappy version: 1.0.2 dev: false + registry.npmmirror.com/xtend/4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz} + name: xtend + version: 4.0.2 + engines: {node: '>=0.4'} + dev: false + registry.npmmirror.com/yallist/4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz} name: yallist version: 4.0.0 dev: false + registry.npmmirror.com/yaml/1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yaml/-/yaml-1.10.2.tgz} + name: yaml + version: 1.10.2 + engines: {node: '>= 6'} + dev: false + + registry.npmmirror.com/yaml/2.2.1: + resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yaml/-/yaml-2.2.1.tgz} + name: yaml + version: 2.2.1 + engines: {node: '>= 14'} + dev: true + registry.npmmirror.com/yocto-queue/0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz} name: yocto-queue version: 0.1.0 engines: {node: '>=10'} dev: false + + registry.npmmirror.com/zustand/4.3.5_immer@9.0.19+react@18.2.0: + resolution: {integrity: sha512-2iPUzfwx+g3f0PagOMz2vDO9mZzEp2puFpNe7vrAymVPOEIEUjCPkC4/zy84eAscxIWmTU4j9g6upXYkJdzEFQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/zustand/-/zustand-4.3.5.tgz} + id: registry.npmmirror.com/zustand/4.3.5 + name: zustand + version: 4.3.5 + engines: {node: '>=12.7.0'} + peerDependencies: + immer: '>=9.0' + react: '>=16.8' + peerDependenciesMeta: + immer: + optional: true + react: + optional: true + dependencies: + immer: registry.npmmirror.com/immer/9.0.19 + react: registry.npmmirror.com/react/18.2.0 + use-sync-external-store: registry.npmmirror.com/use-sync-external-store/1.2.0_react@18.2.0 + dev: false + + registry.npmmirror.com/zwitch/2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/zwitch/-/zwitch-2.0.4.tgz} + name: zwitch + version: 2.0.4 + dev: false diff --git a/public/TrainingTemplate.jsonl b/public/TrainingTemplate.jsonl new file mode 100644 index 000000000..82ca08ff9 --- /dev/null +++ b/public/TrainingTemplate.jsonl @@ -0,0 +1,21 @@ +{"prompt":"什么是死锁?如何避免死锁?\n\n###\n\n","completion":" 死锁是指两个或多个进程在执行过程中,由于互相等待对方释放资源而造成的一种僵局。避免死锁的常用方法包括:破坏互斥条件、破坏请求和保持条件、破坏不剥夺条件、破坏循环等待条件。###"} +{"prompt":"什么是虚拟内存?\n\n###\n\n","completion":" 虚拟内存是指一种计算机内存管理技术,它使得操作系统可以将进程所使用的虚拟地址空间映射到物理内存中,从而可以让多个进程共享物理内存。当物理内存不足时,操作系统会将一部分不常用的内存页面暂时存储到硬盘上,这样就可以释放出更多的物理内存供其他进程使用。###"} +{"prompt":"什么是分页和分段?有什么区别?\n\n###\n\n","completion":" 分页和分段是虚拟内存管理中常用的两种技术。分页是将虚拟地址空间划分为固定大小的页面,而分段则是将虚拟地址空间划分为不同大小的段。区别在于,分页的页面大小是固定的,而分段的段大小是可变的;另外,分页是为了实现虚拟内存,而分段则是为了实现逻辑地址空间的管理。###"} +{"prompt":"什么是lru算法?\n\n###\n\n","completion":" lru算法是一种页面置换算法,它的全称是least recently used,即最近最少使用算法。lru算法的基本思想是在物理内存中维护一个页面访问历史记录,当需要替换一页时,选择最近最少被访问的页面进行替换。###"} +{"prompt":"什么是文件系统?\n\n###\n\n","completion":" 文件系统是一种用于管理计算机存储设备上文件和目录的组织方式。文件系统通常包括存储管理、目录管理、文件访问控制、文件系统维护等功能。常见的文件系统包括fat、ntfs、ext等。###"} +{"prompt":"什么是并发和并行?\n\n###\n\n","completion":" 并发是指多个任务交替执行的情况,而并行是指多个任务同时执行的情况。并发的实现方式是通过时间分片技术,而并行的实现方式是通过多核处理器等硬件设备。###"} +{"prompt":"什么是系统调用?\n\n###\n\n","completion":" 系统调用是操作系统中的一种机制,它允许用户空间程序请求操作系统内核提供一些服务,如读写文件、创建进程等。系统调用通常是通过软中断实现的###"} +{"prompt":"什么是进程间通信?\n\n###\n\n","completion":" 进程间通信是指不同进程之间进行数据交换和通信的机制,常见的方式有管道、共享内存、消息队列、信号量等。###"} +{"prompt":"什么是文件描述符?\n\n###\n\n","completion":" 文件描述符是一个非负整数,它是操作系统内核为了管理打开的文件而维护的一种抽象概念。应用程序使用文件描述符来访问文件或其他i\/o设备###"} +{"prompt":"什么是中断? \n\n###\n\n","completion":" 中断是指计算机硬件或软件在执行程序时,暂停当前程序的执行,转而去执行另一个程序或处理器所需的其他任务的过程。中断可以是外部中断、内部中断或软中断。###"} +{"prompt":"什么是页表?\n\n###\n\n","completion":" 页表是一种数据结构,它用于将虚拟地址转换为物理地址。在虚拟内存中,每个进程都有自己的页表,它描述了虚拟地址空间中每个页面对应的物理地址。 ###"} +{"prompt":"什么是僵尸进程?\n\n###\n\n","completion":" 僵尸进程是指一个已经完成执行但其父进程还没有对其进行善后处理的进程,它会一直占用系统资源,直到其父进程将其处理为止。###"} +{"prompt":"什么是守护进程? \n\n###\n\n","completion":" 守护进程是一种在后台运行的特殊进程,它通常用于提供某种服务或执行某种系统任务。守护进程通常不与任何用户界面交互,也不会终止,直到操作系统关机或重启。###"} +{"prompt":"计算机操作系统是什么?\n\n###\n\n","completion":" 计算机操作系统是一种控制计算机硬件和协调应用程序运行的系统软件。###"} +{"prompt":"什么是进程?\n\n###\n\n","completion":" 进程是一个正在执行中的程序实例,它包括了程序计数器、堆栈、数据区等信息。###"} +{"prompt":"什么是线程?\n\n###\n\n","completion":" 线程是操作系统能够进行运算调度的最小单位,它是进程的一个执行流程,共享进程的地址空间。###"} +{"prompt":"什么是虚拟内存?\n\n###\n\n","completion":" 虚拟内存是一种计算机系统内存管理技术,它使得应用程序认为它拥有连续的可用的内存,而实际上它通常是被分成多个物理内存碎片。###"} +{"prompt":"什么是死锁?\n\n###\n\n","completion":" 死锁是指两个或多个进程在执行过程中,因争夺资源而造成的一种互相等待的现象,导致所有进程都无法继续执行。###"} +{"prompt":"什么是缓存?\n\n###\n\n","completion":" 缓存是指在计算机中暂存数据的高速存储器,它可以提高计算机对数据的访问速度,避免频繁地访问较慢的主存储器。###"} +{"prompt":"什么是文件系统?\n\n###\n\n","completion":" 文件系统是计算机中用来管理和组织文件的一种机制,它通过一系列的数据结构来描述文件和目录的组织方式,以及文件如何存储和访问。###"} +{"prompt":"什么是调度算法?\n\n###\n\n","completion":" 调度算法是指操作系统中用来决定进程或线程在cpu上执行顺序的一种算法,它的目标是最大化系统吞吐量、最小化响应时间或最大化资源利用率等。###"} diff --git a/public/favicon.ico b/public/favicon.ico index 718d6fea4..c69fd648f 100644 Binary files a/public/favicon.ico and b/public/favicon.ico differ diff --git a/public/icon/chatting.svg b/public/icon/chatting.svg new file mode 100644 index 000000000..32edead6e --- /dev/null +++ b/public/icon/chatting.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/icon/login-bg.svg b/public/icon/login-bg.svg new file mode 100644 index 000000000..125f07c4a --- /dev/null +++ b/public/icon/login-bg.svg @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/public/icon/loginLeft.svg b/public/icon/loginLeft.svg new file mode 100644 index 000000000..e943b9c8d --- /dev/null +++ b/public/icon/loginLeft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/icon/menu-left.svg b/public/icon/menu-left.svg new file mode 100644 index 000000000..7ed50b75d --- /dev/null +++ b/public/icon/menu-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/iconfont.js b/public/iconfont.js new file mode 100644 index 000000000..4052f5de7 --- /dev/null +++ b/public/iconfont.js @@ -0,0 +1 @@ +window._iconfont_svg_string_3913924='',function(e){var t=(t=document.getElementsByTagName("script"))[t.length-1],c=t.getAttribute("data-injectcss"),t=t.getAttribute("data-disable-injectsvg");if(!t){var a,o,n,i,s,l=function(t,c){c.parentNode.insertBefore(t,c)};if(c&&!e.__iconfont__svg__cssinject__){e.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(t){console&&console.log(t)}}a=function(){var t,c=document.createElement("div");c.innerHTML=e._iconfont_svg_string_3913924,(c=c.getElementsByTagName("svg")[0])&&(c.setAttribute("aria-hidden","true"),c.style.position="absolute",c.style.width=0,c.style.height=0,c.style.overflow="hidden",c=c,(t=document.body).firstChild?l(c,t.firstChild):t.appendChild(c))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(a,0):(o=function(){document.removeEventListener("DOMContentLoaded",o,!1),a()},document.addEventListener("DOMContentLoaded",o,!1)):document.attachEvent&&(n=a,i=e.document,s=!1,d(),i.onreadystatechange=function(){"complete"==i.readyState&&(i.onreadystatechange=null,h())})}function h(){s||(s=!0,n())}function d(){try{i.documentElement.doScroll("left")}catch(t){return void setTimeout(d,50)}h()}}(window); \ No newline at end of file diff --git a/public/imgs/erweima.jpg b/public/imgs/erweima.jpg new file mode 100644 index 000000000..268b6e8e6 Binary files /dev/null and b/public/imgs/erweima.jpg differ diff --git a/public/imgs/human.png b/public/imgs/human.png new file mode 100644 index 000000000..639c38755 Binary files /dev/null and b/public/imgs/human.png differ diff --git a/public/imgs/modelAvatar.png b/public/imgs/modelAvatar.png new file mode 100644 index 000000000..264453d9d Binary files /dev/null and b/public/imgs/modelAvatar.png differ diff --git a/public/logo.svg b/public/logo.svg new file mode 100644 index 000000000..f58a84dce --- /dev/null +++ b/public/logo.svg @@ -0,0 +1 @@ +2.5D \ No newline at end of file diff --git a/public/next.svg b/public/next.svg deleted file mode 100644 index 5174b28c5..000000000 --- a/public/next.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/thirteen.svg b/public/thirteen.svg deleted file mode 100644 index 8977c1bd1..000000000 --- a/public/thirteen.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/trainData/4d89aa7a10c65cf0e3cec4300.jsonl b/public/trainData/4d89aa7a10c65cf0e3cec4300.jsonl new file mode 100644 index 000000000..7d7291975 --- /dev/null +++ b/public/trainData/4d89aa7a10c65cf0e3cec4300.jsonl @@ -0,0 +1,21 @@ +{"prompt": "什么是高潜公司\n\n###\n\n", "completion": " 高潜公司是指高潜力的公司,其所处的赛道有发展潜力和前景。###"} +{"prompt": "高潜公司的优势是什么\n\n###\n\n", "completion": " 高潜公司所处的整个行业和赛道有一定的增量空间,头部vc通过严格的筛选和加持为高潜公司背书,高潜公司的创始者一般都特别优秀。加入高潜公司可以获得很多机会来锻炼自己、强化自己的认知,快速成长、展现自己,并有可能成为公司扩张后的管理层###"} +{"prompt": "高潜公司的风险是什么\n\n###\n\n", "completion": " 高潜公司的高风险问题也很明显。一旦公司失败,很多边缘人就会被淘汰掉。但宏观来讲,只要赛道是有潜力的,即便这家公司失败了,也可以跳槽到成功的公司去。###"} +{"prompt": "高潜公司的例子有哪些\n\n###\n\n", "completion": " 很多高潜公司在做最近比较火的AIGC,包括去年的元宇宙,前两年比较火的新消费、企业服务和出海之类的。###"} +{"prompt": "为什么现在加入大厂的前景不广阔?\n\n###\n\n", "completion": " 今年的大形势之下,互联网大厂纷纷开始裁员、取消普调、晋升比例严重缩水,HC也急剧减少。###"} +{"prompt": "加入高潜公司可以获得什么样的机会?\n\n###\n\n", "completion": " 加入高潜公司可以获得很多机会来锻炼自己、强化自己的认知,快速成长、展现自己,并有可能成为公司扩张后的管理层。###"} +{"prompt": "什么是高潜公司?\n\n###\n\n", "completion": " 高潜公司的定义是“高潜力的公司”,所处的行业和赛道有发展潜力和前景,头部vc为其背书,创始者一般都特别优秀。###"} +{"prompt": "加入高潜公司有哪些优点\n\n###\n\n", "completion": " 加入高潜公司能够获得锻炼自己、强化认知的机会,快速成长、展现自己,在公司扩张后成为团队的管理层。同时,所处的行业还处于上升期,发展前景广阔。###"} +{"prompt": "高潜公司存在哪些风险?\n\n###\n\n", "completion": " 高潜公司存在高风险问题,一旦公司失败,很多边缘人就会被淘汰掉。但宏观来讲,只要赛道是有潜力的,即便这家公司失败了,也可以跳槽到成功的公司去。###"} +{"prompt": "高潜公司和互联网有什么相似之处?\n\n###\n\n", "completion": " 目前来说,高潜公司的风格大部分都比较像互联网大厂,有风格,但又没有那么内卷,因为大家每天都在开拓边疆,突破和探索市场的边界。同时,互联网产业的蓬勃发展也给其他行业,包括新能源汽车、新消费等,带来了用户增长和运营的经验###"} +{"prompt": "互联网大厂的制度和分工如何?\n\n###\n\n", "completion": " 目前的互联网大厂的制度和分工非常明确,基本是按照一些标准SOP做事。同时,由于已经没有用户增量了,内卷和向上管理的问题也比较严重。###"} +{"prompt": "高潜公司对于哪些毕业生是很好的选择\n\n###\n\n", "completion": " 对于追求长期创造价值而非想找份安稳的工作的毕业生来说,高潜公司是很好的选择。###"} +{"prompt": "互联网大厂的晋升方式有哪些?\n\n###\n\n", "completion": " 互联网大厂的晋升方式有两种:老板特别喜欢你或者你的战功支撑你的竞争###"} +{"prompt": "为什么目前更多优秀的人都会加入创业公司?\n\n###\n\n", "completion": " 目前社会的大趋势是更多优秀的人都会加入创业公司,因为真正在创造价值的其实永远是创业公司###"} +{"prompt": "为什么选择高潜公司主要是因为我们迎来了什么三个繁荣?\n\n###\n\n", "completion": " 选择高潜公司主要是因为我们迎来了创新生态的三个繁荣:人才繁荣、资本繁荣和环境繁荣###"} +{"prompt": "资本繁荣是如何推动创业生态的崛起的?\n\n###\n\n", "completion": " 资本繁荣,无论中国还是美国,创业生态的崛起都是伴随着移动互联网的发展。中国这一代VC的崛起,主要是通过投资移动互联网项目所积累的战绩扩大了资金池,通过这些成本低、增长快、回报率高的项目,才有了底气去推动更多行业发展,尝试着投资toB和硬科技这类成本高、增长慢、回报率低、风险大的项目。###"} +{"prompt": "环境繁荣是指什么?\n\n###\n\n", "completion": " 环境繁荣是指互联网带动起经济发展后,各地政府也开始了对于创业进行培育,免费场地、巨额无偿补贴、各地送钱竞赛,大幅度降低了创业成本。###"} +{"prompt": "高潜公司对于追求长期创造价值的毕业生来说为什么是好的选择?\n\n###\n\n", "completion": " 因为在高潜公司,毕业生可以通过参与创业公司的发展,获得更多的机会和成长空间,而不是被固定在某个职位上。此外,高潜公司通常会注重团队建设和文化建设,能够提供更好的工作环境和发展机会。###"} +{"prompt": "如果想要寻找高潜公司,有哪些渠道可以利用?\n\n###\n\n", "completion": " 可以利用领英职场app和知潜微信小程序。领英职场app中入驻了很多高潜公司及高管,而知潜小程序现在也已经有100+高潜力创业公司入驻,都是经过筛选的、top VC投资过且赛道有前景的公司。此外,红杉和真格等VC机构自己的公众号也会经常披露投资的企业。###"} +{"prompt": "为什么现在更多优秀的人才会加入创业公司?\n\n###\n\n", "completion": " 因为在当前社会的大趋势下,创业公司成为了创新生态的重要组成部分。创业公司在创造价值和推动行业发展方面具有更大的空间和潜力,而且随着移动互联网的发展,创业公司的崛起也得到了资本和政策的支持。因此,更多优秀的人才选择加入创业公司,以实现自己的创业梦想和获得更好的发展机会。###"} +{"prompt": "高潜公司的优势在哪些方面?\n\n###\n\n", "completion": " 高潜公司在团队建设、文化建设和发展机会等方面具有优势。高潜公司通常会注重团队建设和文化建设,能够提供更好的工作环境和发展机会。同时,高潜公司的发展潜力和创新能力也很强,可以为毕业生提供更多的机会和成长空间。###"} \ No newline at end of file diff --git a/public/trainData/d95c4a3c319667d5f24955602.jsonl b/public/trainData/d95c4a3c319667d5f24955602.jsonl new file mode 100644 index 000000000..82ca08ff9 --- /dev/null +++ b/public/trainData/d95c4a3c319667d5f24955602.jsonl @@ -0,0 +1,21 @@ +{"prompt":"什么是死锁?如何避免死锁?\n\n###\n\n","completion":" 死锁是指两个或多个进程在执行过程中,由于互相等待对方释放资源而造成的一种僵局。避免死锁的常用方法包括:破坏互斥条件、破坏请求和保持条件、破坏不剥夺条件、破坏循环等待条件。###"} +{"prompt":"什么是虚拟内存?\n\n###\n\n","completion":" 虚拟内存是指一种计算机内存管理技术,它使得操作系统可以将进程所使用的虚拟地址空间映射到物理内存中,从而可以让多个进程共享物理内存。当物理内存不足时,操作系统会将一部分不常用的内存页面暂时存储到硬盘上,这样就可以释放出更多的物理内存供其他进程使用。###"} +{"prompt":"什么是分页和分段?有什么区别?\n\n###\n\n","completion":" 分页和分段是虚拟内存管理中常用的两种技术。分页是将虚拟地址空间划分为固定大小的页面,而分段则是将虚拟地址空间划分为不同大小的段。区别在于,分页的页面大小是固定的,而分段的段大小是可变的;另外,分页是为了实现虚拟内存,而分段则是为了实现逻辑地址空间的管理。###"} +{"prompt":"什么是lru算法?\n\n###\n\n","completion":" lru算法是一种页面置换算法,它的全称是least recently used,即最近最少使用算法。lru算法的基本思想是在物理内存中维护一个页面访问历史记录,当需要替换一页时,选择最近最少被访问的页面进行替换。###"} +{"prompt":"什么是文件系统?\n\n###\n\n","completion":" 文件系统是一种用于管理计算机存储设备上文件和目录的组织方式。文件系统通常包括存储管理、目录管理、文件访问控制、文件系统维护等功能。常见的文件系统包括fat、ntfs、ext等。###"} +{"prompt":"什么是并发和并行?\n\n###\n\n","completion":" 并发是指多个任务交替执行的情况,而并行是指多个任务同时执行的情况。并发的实现方式是通过时间分片技术,而并行的实现方式是通过多核处理器等硬件设备。###"} +{"prompt":"什么是系统调用?\n\n###\n\n","completion":" 系统调用是操作系统中的一种机制,它允许用户空间程序请求操作系统内核提供一些服务,如读写文件、创建进程等。系统调用通常是通过软中断实现的###"} +{"prompt":"什么是进程间通信?\n\n###\n\n","completion":" 进程间通信是指不同进程之间进行数据交换和通信的机制,常见的方式有管道、共享内存、消息队列、信号量等。###"} +{"prompt":"什么是文件描述符?\n\n###\n\n","completion":" 文件描述符是一个非负整数,它是操作系统内核为了管理打开的文件而维护的一种抽象概念。应用程序使用文件描述符来访问文件或其他i\/o设备###"} +{"prompt":"什么是中断? \n\n###\n\n","completion":" 中断是指计算机硬件或软件在执行程序时,暂停当前程序的执行,转而去执行另一个程序或处理器所需的其他任务的过程。中断可以是外部中断、内部中断或软中断。###"} +{"prompt":"什么是页表?\n\n###\n\n","completion":" 页表是一种数据结构,它用于将虚拟地址转换为物理地址。在虚拟内存中,每个进程都有自己的页表,它描述了虚拟地址空间中每个页面对应的物理地址。 ###"} +{"prompt":"什么是僵尸进程?\n\n###\n\n","completion":" 僵尸进程是指一个已经完成执行但其父进程还没有对其进行善后处理的进程,它会一直占用系统资源,直到其父进程将其处理为止。###"} +{"prompt":"什么是守护进程? \n\n###\n\n","completion":" 守护进程是一种在后台运行的特殊进程,它通常用于提供某种服务或执行某种系统任务。守护进程通常不与任何用户界面交互,也不会终止,直到操作系统关机或重启。###"} +{"prompt":"计算机操作系统是什么?\n\n###\n\n","completion":" 计算机操作系统是一种控制计算机硬件和协调应用程序运行的系统软件。###"} +{"prompt":"什么是进程?\n\n###\n\n","completion":" 进程是一个正在执行中的程序实例,它包括了程序计数器、堆栈、数据区等信息。###"} +{"prompt":"什么是线程?\n\n###\n\n","completion":" 线程是操作系统能够进行运算调度的最小单位,它是进程的一个执行流程,共享进程的地址空间。###"} +{"prompt":"什么是虚拟内存?\n\n###\n\n","completion":" 虚拟内存是一种计算机系统内存管理技术,它使得应用程序认为它拥有连续的可用的内存,而实际上它通常是被分成多个物理内存碎片。###"} +{"prompt":"什么是死锁?\n\n###\n\n","completion":" 死锁是指两个或多个进程在执行过程中,因争夺资源而造成的一种互相等待的现象,导致所有进程都无法继续执行。###"} +{"prompt":"什么是缓存?\n\n###\n\n","completion":" 缓存是指在计算机中暂存数据的高速存储器,它可以提高计算机对数据的访问速度,避免频繁地访问较慢的主存储器。###"} +{"prompt":"什么是文件系统?\n\n###\n\n","completion":" 文件系统是计算机中用来管理和组织文件的一种机制,它通过一系列的数据结构来描述文件和目录的组织方式,以及文件如何存储和访问。###"} +{"prompt":"什么是调度算法?\n\n###\n\n","completion":" 调度算法是指操作系统中用来决定进程或线程在cpu上执行顺序的一种算法,它的目标是最大化系统吞吐量、最小化响应时间或最大化资源利用率等。###"} diff --git a/public/vercel.svg b/public/vercel.svg deleted file mode 100644 index d2f842227..000000000 --- a/public/vercel.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/api/chat.ts b/src/api/chat.ts new file mode 100644 index 000000000..9184b415a --- /dev/null +++ b/src/api/chat.ts @@ -0,0 +1,65 @@ +import { GET, POST, DELETE } from './request'; +import { ChatItemType, ChatSiteType, ChatSiteItemType } from '@/types/chat'; + +/** + * 获取一个聊天框的ID + */ +export const getChatSiteId = (modelId: string) => GET(`/chat/generate?modelId=${modelId}`); + +/** + * 获取初始化聊天内容 + */ +export const getInitChatSiteInfo = (chatId: string, windowId: string = '') => + GET<{ + windowId: string; + chatSite: ChatSiteType; + history: ChatItemType[]; + }>(`/chat/init?chatId=${chatId}&windowId=${windowId}`); + +/** + * 发送 GPT3 prompt + */ +export const postGPT3SendPrompt = ({ + chatId, + prompt +}: { + prompt: ChatSiteItemType[]; + chatId: string; +}) => + POST(`/chat/gpt3`, { + chatId, + prompt: prompt.map((item) => ({ + obj: item.obj, + value: item.value + })) + }); + +/** + * 预发 prompt 进行存储 + */ +export const postChatGptPrompt = ({ + prompt, + windowId, + chatId +}: { + prompt: ChatSiteItemType; + windowId: string; + chatId: string; +}) => + POST(`/chat/preChat`, { + windowId, + prompt: { + obj: prompt.obj, + value: prompt.value + }, + chatId + }); +/* 获取 Chat 的 Event 对象,进行持续通信 */ +export const getChatGPTSendEvent = (chatId: string, windowId: string) => + new EventSource(`/api/chat/chatGpt?chatId=${chatId}&windowId=${windowId}`); + +/** + * 删除最后一句 + */ +export const delLastMessage = (windowId?: string) => + windowId ? DELETE(`/chat/delLastMessage?windowId=${windowId}`) : null; diff --git a/src/api/model.ts b/src/api/model.ts new file mode 100644 index 000000000..dd35707e9 --- /dev/null +++ b/src/api/model.ts @@ -0,0 +1,28 @@ +import { GET, POST, DELETE, PUT } from './request'; +import type { ModelType } from '@/types/model'; +import { ModelUpdateParams } from '@/types/model'; +import { TrainingItemType } from '../types/training'; + +export const getMyModels = () => GET('/model/list'); + +export const postCreateModel = (data: { name: string; serviceModelName: string }) => + POST('/model/create', data); + +export const delModelById = (id: string) => DELETE(`/model/del?modelId=${id}`); + +export const getModelById = (id: string) => GET(`/model/detail?modelId=${id}`); + +export const putModelById = (id: string, data: ModelUpdateParams) => + PUT(`/model/update?modelId=${id}`, data); + +export const postTrainModel = (id: string, form: FormData) => + POST(`/model/train?modelId=${id}`, form, { + headers: { + 'content-type': 'multipart/form-data' + } + }); + +export const putModelTrainingStatus = (id: string) => PUT(`/model/putTrainStatus?modelId=${id}`); + +export const getModelTrainings = (id: string) => + GET(`/model/getTrainings?modelId=${id}`); diff --git a/src/api/request.ts b/src/api/request.ts new file mode 100644 index 000000000..3ab06f6df --- /dev/null +++ b/src/api/request.ts @@ -0,0 +1,124 @@ +import axios, { Method, InternalAxiosRequestConfig, AxiosResponse } from 'axios'; +import { getToken, clearToken } from '@/utils/user'; +import { TOKEN_ERROR_CODE } from '@/constants/responseCode'; + +interface ConfigType { + headers?: { [key: string]: string }; + hold?: boolean; +} +interface ResponseDataType { + code: number; + message: string; + data: any; +} + +/** + * 请求开始 + */ +function requestStart(config: InternalAxiosRequestConfig): InternalAxiosRequestConfig { + if (config.headers) { + config.headers.Authorization = getToken(); + } + + return config; +} + +/** + * 请求成功,检查请求头 + */ +function responseSuccess(response: AxiosResponse) { + return response; +} +/** + * 响应数据检查 + */ +function checkRes(data: ResponseDataType) { + if (data === undefined) { + console.log(data, 'data is empty'); + return Promise.reject('服务器异常'); + } else if (data.code < 200 || data.code >= 400) { + return Promise.reject(data.message); + } + return data.data; +} + +/** + * 响应错误 + */ +function responseError(err: any) { + console.error('请求错误', err); + + if (!err) { + return Promise.reject('未知错误'); + } + if (typeof err === 'string') { + return Promise.reject(err); + } + if (err.response) { + // 有报错响应 + const res = err.response; + /* token过期,判断请求token与本地是否相同,若不同需要重发 */ + if (res.data.code in TOKEN_ERROR_CODE) { + clearToken(); + return Promise.reject('token过期,重新登录'); + } + } + return Promise.reject('未知错误'); +} + +/* 创建请求实例 */ +const instance = axios.create({ + timeout: 60000, // 超时时间 + headers: { + 'content-type': 'application/json' + } +}); + +/* 请求拦截 */ +instance.interceptors.request.use(requestStart, (err) => Promise.reject(err)); +/* 响应拦截 */ +instance.interceptors.response.use(responseSuccess, (err) => Promise.reject(err)); + +function request(url: string, data: any, config: ConfigType, method: Method): any { + /* 去空 */ + for (const key in data) { + if (data[key] === null || data[key] === undefined) { + delete data[key]; + } + } + + return instance + .request({ + baseURL: '/api', + url, + method, + data: method === 'GET' ? null : data, + params: method === 'GET' ? data : null, // get请求不携带data,params放在url上 + ...config // 用户自定义配置,可以覆盖前面的配置 + }) + .then((res) => checkRes(res.data)) + .catch((err) => responseError(err)); +} + +/** + * api请求方式 + * @param {String} url + * @param {Any} params + * @param {Object} config + * @returns + */ +export function GET(url: string, params = {}, config: ConfigType = {}): Promise { + return request(url, params, config, 'GET'); +} + +export function POST(url: string, data = {}, config: ConfigType = {}): Promise { + return request(url, data, config, 'POST'); +} + +export function PUT(url: string, data = {}, config: ConfigType = {}): Promise { + return request(url, data, config, 'PUT'); +} + +export function DELETE(url: string, config: ConfigType = {}): Promise { + return request(url, {}, config, 'DELETE'); +} diff --git a/src/api/response/user.d.ts b/src/api/response/user.d.ts new file mode 100644 index 000000000..2a99aca3f --- /dev/null +++ b/src/api/response/user.d.ts @@ -0,0 +1,5 @@ +import type { UserType } from '@/types/user'; +export interface ResLogin { + token: string; + user: UserType; +} diff --git a/src/api/user.ts b/src/api/user.ts new file mode 100644 index 000000000..5f904ba83 --- /dev/null +++ b/src/api/user.ts @@ -0,0 +1,48 @@ +import { GET, POST, PUT } from './request'; +import { createHashPassword } from '@/utils/tools'; +import { ResLogin } from './response/user'; +import { EmailTypeEnum } from '@/constants/common'; +import { UserType, UserUpdateParams } from '@/types/user'; + +export const sendCodeToEmail = ({ email, type }: { email: string; type: `${EmailTypeEnum}` }) => + GET('/user/sendEmail', { email, type }); + +export const getTokenLogin = () => GET('/user/tokenLogin'); + +export const postRegister = ({ + email, + password, + code +}: { + email: string; + code: string; + password: string; +}) => + POST('/user/register', { + email, + code, + password: createHashPassword(password) + }); + +export const postFindPassword = ({ + email, + code, + password +}: { + email: string; + code: string; + password: string; +}) => + POST('/user/updatePasswordByCode', { + email, + code, + password: createHashPassword(password) + }); + +export const postLogin = ({ email, password }: { email: string; password: string }) => + POST('/user/loginByPassword', { + email, + password: createHashPassword(password) + }); + +export const putUserInfo = (data: UserUpdateParams) => PUT('/user/update', data); diff --git a/src/components/Icon/index.tsx b/src/components/Icon/index.tsx new file mode 100644 index 000000000..cbcc82f3e --- /dev/null +++ b/src/components/Icon/index.tsx @@ -0,0 +1,23 @@ +type TIconfont = { + name: string; + color?: string; + width?: number | string; + height?: number | string; + className?: string; +}; + +function Icon({ name, color = 'inherit', width = 16, height = 16, className = '' }: TIconfont) { + const style = { + fill: color, + width, + height + }; + + return ( + + ); +} + +export default Icon; diff --git a/src/components/Layout/auth.tsx b/src/components/Layout/auth.tsx new file mode 100644 index 000000000..a9e85fcfe --- /dev/null +++ b/src/components/Layout/auth.tsx @@ -0,0 +1,54 @@ +import React from 'react'; +import { useRouter } from 'next/router'; +import { useToast } from '@chakra-ui/react'; +import { getTokenLogin } from '@/api/user'; +import { useUserStore } from '@/store/user'; +import { useGlobalStore } from '@/store/global'; +import { useQuery } from '@tanstack/react-query'; + +const unAuthPage: { [key: string]: boolean } = { + '/login': true, + '/chat': true +}; + +const Auth = ({ children }: { children: JSX.Element }) => { + const router = useRouter(); + const toast = useToast({ + title: '请先登录', + position: 'top', + status: 'warning' + }); + const { userInfo, setUserInfo } = useUserStore(); + const { setLoading } = useGlobalStore(); + + useQuery( + [router.pathname, userInfo], + () => { + setLoading(true); + if (unAuthPage[router.pathname] === true || userInfo) { + return setLoading(false); + } else { + return getTokenLogin(); + } + }, + { + onSuccess(user) { + if (user) { + setUserInfo(user); + } + }, + onError(error) { + console.log(error); + router.push('/login'); + toast(); + }, + onSettled() { + setLoading(false); + } + } + ); + + return userInfo || unAuthPage[router.pathname] === true ? <>{children} : null; +}; + +export default Auth; diff --git a/src/components/Layout/index.tsx b/src/components/Layout/index.tsx new file mode 100644 index 000000000..924456169 --- /dev/null +++ b/src/components/Layout/index.tsx @@ -0,0 +1,95 @@ +import React from 'react'; +import { Box } from '@chakra-ui/react'; +import Navbar from './navbar'; +import NavbarPhone from './navbarPhone'; +import { useRouter } from 'next/router'; +import { useScreen } from '@/hooks/useScreen'; +import { useLoading } from '@/hooks/useLoading'; +import Auth from './auth'; +import { useGlobalStore } from '@/store/global'; + +const unShowLayoutRoute: { [key: string]: boolean } = { + '/login': true, + '/chat': true +}; + +const navbarList = [ + { + label: '介绍', + icon: 'icon-gongzuotai-01', + link: '/', + activeLink: ['/'] + }, + { + label: '模型', + icon: 'icon-moxing', + link: '/model/list', + activeLink: ['/model/list', '/model/detail'] + }, + // { + // label: '数据', + // icon: 'icon-datafull', + // link: '/training/dataList', + // activeLink: ['/training/dataList'] + // }, + { + label: '账号', + icon: 'icon-yonghu-yuan', + link: '/number/setting', + activeLink: ['/number/setting'] + } +]; + +const Layout = ({ children }: { children: JSX.Element }) => { + const { isPc } = useScreen(); + const router = useRouter(); + const { Loading } = useLoading({ + defaultLoading: true + }); + const { loading } = useGlobalStore(); + + return ( + <> + {!unShowLayoutRoute[router.pathname] ? ( + + {isPc ? ( + <> + + + + + + {children} + + + + ) : ( + + + + + + {children} + + + )} + + ) : ( + + <>{children} + + )} + {loading && } + + ); +}; + +export default Layout; diff --git a/src/components/Layout/navbar.tsx b/src/components/Layout/navbar.tsx new file mode 100644 index 000000000..2dcfd2f40 --- /dev/null +++ b/src/components/Layout/navbar.tsx @@ -0,0 +1,87 @@ +import React from 'react'; +import { Box, Flex } from '@chakra-ui/react'; +import Image from 'next/image'; +import { useRouter } from 'next/router'; +import Icon from '../Icon'; +import styles from './style.module.scss'; + +export enum NavbarTypeEnum { + normal = 'normal', + small = 'small' +} + +const Navbar = ({ + navbarList +}: { + navbarList: { + label: string; + icon: string; + link: string; + activeLink: string[]; + }[]; +}) => { + const router = useRouter(); + + return ( + + {/* logo */} + + + + {/* 导航列表 */} + + {navbarList.map((item) => ( + + router.push(item.link, undefined, { + shallow: true + }) + } + cursor={'pointer'} + fontSize={'sm'} + w={'60px'} + h={'70px'} + borderRadius={'sm'} + {...(item.activeLink.includes(router.pathname) + ? { + color: '#2B6CB0', + backgroundColor: '#BEE3F8' + } + : { + color: '#4A5568', + backgroundColor: 'transparent' + })} + > + + {item.label} + + ))} + + {/* 通知 icon */} + {/* + + */} + + ); +}; + +export default Navbar; diff --git a/src/components/Layout/navbarPhone.tsx b/src/components/Layout/navbarPhone.tsx new file mode 100644 index 000000000..ca7a49c67 --- /dev/null +++ b/src/components/Layout/navbarPhone.tsx @@ -0,0 +1,99 @@ +import React from 'react'; +import { useRouter } from 'next/router'; +import Icon from '../Icon'; +import { + Flex, + Drawer, + DrawerBody, + DrawerFooter, + DrawerOverlay, + DrawerContent, + Box, + useDisclosure, + Button, + Image +} from '@chakra-ui/react'; + +const NavbarPhone = ({ + navbarList +}: { + navbarList: { + label: string; + icon: string; + link: string; + activeLink: string[]; + }[]; +}) => { + const router = useRouter(); + + const { isOpen, onClose, onOpen } = useDisclosure(); + + return ( + <> + + + + + {/* */} + + + + + + + + + {navbarList.map((item) => ( + { + router.push(item.link); + onClose(); + }} + cursor={'pointer'} + fontSize={'sm'} + h={'65px'} + borderRadius={'md'} + {...(item.activeLink.includes(router.pathname) + ? { + color: '#2B6CB0', + backgroundColor: '#BEE3F8' + } + : { + color: '#4A5568', + backgroundColor: 'transparent' + })} + > + + {item.label} + + ))} + + + + + + + + + ); +}; + +export default NavbarPhone; diff --git a/src/components/Layout/style.module.scss b/src/components/Layout/style.module.scss new file mode 100644 index 000000000..116466fc9 --- /dev/null +++ b/src/components/Layout/style.module.scss @@ -0,0 +1,6 @@ +.informIcon { + svg { + cursor: pointer; + margin: 0; + } +} diff --git a/src/components/Markdown/codeLight.ts b/src/components/Markdown/codeLight.ts new file mode 100644 index 000000000..d6f17fd10 --- /dev/null +++ b/src/components/Markdown/codeLight.ts @@ -0,0 +1,283 @@ +import React from 'react'; +export const codeLight: { [key: string]: React.CSSProperties } = { + 'code[class*=language-]': { + color: '#d4d4d4', + fontSize: '13px', + textShadow: 'none', + fontFamily: 'Menlo,Monaco,Consolas,"Andale Mono","Ubuntu Mono","Courier New",monospace', + direction: 'ltr', + textAlign: 'left', + whiteSpace: 'pre', + wordSpacing: 'normal', + wordBreak: 'normal', + lineHeight: '1.5', + MozTabSize: '4', + OTabSize: '4', + tabSize: '4', + WebkitHyphens: 'none', + MozHyphens: 'none', + msHyphens: 'none', + hyphens: 'none' + }, + 'pre[class*=language-]': { + color: '#d4d4d4', + fontSize: '13px', + textShadow: 'none', + fontFamily: 'Menlo,Monaco,Consolas,"Andale Mono","Ubuntu Mono","Courier New",monospace', + direction: 'ltr', + textAlign: 'left', + whiteSpace: 'pre', + wordSpacing: 'normal', + wordBreak: 'normal', + lineHeight: '1.5', + MozTabSize: '4', + OTabSize: '4', + tabSize: '4', + WebkitHyphens: 'none', + MozHyphens: 'none', + msHyphens: 'none', + hyphens: 'none', + padding: '1em', + margin: '.5em 0', + overflow: 'auto', + background: '#1e1e1e' + }, + 'code[class*=language-] ::selection': { + textShadow: 'none', + background: '#264f78' + }, + 'code[class*=language-]::selection': { + textShadow: 'none', + background: '#264f78' + }, + 'pre[class*=language-] ::selection': { + textShadow: 'none', + background: '#264f78' + }, + 'pre[class*=language-]::selection': { + textShadow: 'none', + background: '#264f78' + }, + ':not(pre)>code[class*=language-]': { + padding: '.1em .3em', + borderRadius: '.3em', + color: '#db4c69', + background: '#1e1e1e' + }, + '.namespace': { + opacity: '0.7' + }, + 'doctype.doctype-tag': { + color: '#569cd6' + }, + 'doctype.name': { + color: '#9cdcfe' + }, + comment: { + color: '#6a9955' + }, + prolog: { + color: '#6a9955' + }, + '.language-html .language-css .token.punctuation': { + color: '#d4d4d4' + }, + '.language-html .language-javascript .token.punctuation': { + color: '#d4d4d4' + }, + punctuation: { + color: '#d4d4d4' + }, + boolean: { + color: '#569cd6' + }, + constant: { + color: '#9cdcfe' + }, + inserted: { + color: '#b5cea8' + }, + number: { + color: '#b5cea8' + }, + property: { + color: '#9cdcfe' + }, + symbol: { + color: '#b5cea8' + }, + tag: { + color: '#569cd6' + }, + unit: { + color: '#b5cea8' + }, + 'attr-name': { + color: '#9cdcfe' + }, + builtin: { + color: '#ce9178' + }, + char: { + color: '#ce9178' + }, + deleted: { + color: '#ce9178' + }, + selector: { + color: '#d7ba7d' + }, + string: { + color: '#ce9178' + }, + '.language-css .token.string.url': { + textDecoration: 'underline' + }, + entity: { + color: '#569cd6' + }, + operator: { + color: '#d4d4d4' + }, + 'operator.arrow': { + color: '#569cd6' + }, + atrule: { + color: '#ce9178' + }, + 'atrule.rule': { + color: '#c586c0' + }, + 'atrule.url': { + color: '#9cdcfe' + }, + 'atrule.url.function': { + color: '#dcdcaa' + }, + 'atrule.url.punctuation': { + color: '#d4d4d4' + }, + keyword: { + color: '#569cd6' + }, + 'keyword.control-flow': { + color: '#c586c0' + }, + 'keyword.module': { + color: '#c586c0' + }, + function: { + color: '#dcdcaa' + }, + 'function.maybe-class-name': { + color: '#dcdcaa' + }, + regex: { + color: '#d16969' + }, + important: { + color: '#569cd6' + }, + italic: { + fontStyle: 'italic' + }, + 'class-name': { + color: '#4ec9b0' + }, + 'maybe-class-name': { + color: '#4ec9b0' + }, + console: { + color: '#9cdcfe' + }, + parameter: { + color: '#9cdcfe' + }, + interpolation: { + color: '#9cdcfe' + }, + 'punctuation.interpolation-punctuation': { + color: '#569cd6' + }, + 'exports.maybe-class-name': { + color: '#9cdcfe' + }, + 'imports.maybe-class-name': { + color: '#9cdcfe' + }, + variable: { + color: '#9cdcfe' + }, + escape: { + color: '#d7ba7d' + }, + 'tag.punctuation': { + color: 'grey' + }, + cdata: { + color: 'grey' + }, + 'attr-value': { + color: '#ce9178' + }, + 'attr-value.punctuation': { + color: '#ce9178' + }, + 'attr-value.punctuation.attr-equals': { + color: '#d4d4d4' + }, + namespace: { + color: '#4ec9b0' + }, + 'code[class*=language-javascript]': { + color: '#9cdcfe' + }, + 'code[class*=language-jsx]': { + color: '#9cdcfe' + }, + 'code[class*=language-tsx]': { + color: '#9cdcfe' + }, + 'code[class*=language-typescript]': { + color: '#9cdcfe' + }, + 'pre[class*=language-javascript]': { + color: '#9cdcfe' + }, + 'pre[class*=language-jsx]': { + color: '#9cdcfe' + }, + 'pre[class*=language-tsx]': { + color: '#9cdcfe' + }, + 'pre[class*=language-typescript]': { + color: '#9cdcfe' + }, + 'code[class*=language-css]': { + color: '#ce9178' + }, + 'pre[class*=language-css]': { + color: '#ce9178' + }, + 'code[class*=language-html]': { + color: '#d4d4d4' + }, + 'pre[class*=language-html]': { + color: '#d4d4d4' + }, + '.language-regex .token.anchor': { + color: '#dcdcaa' + }, + '.language-html .token.punctuation': { + color: 'grey' + }, + 'pre[class*=language-]>code[class*=language-]': { + position: 'relative', + zIndex: '1' + }, + '.line-highlight.line-highlight': { + background: '#f7ebc6', + boxShadow: 'inset 5px 0 0 #f7d87c', + zIndex: '0' + } +}; diff --git a/src/components/Markdown/index.module.scss b/src/components/Markdown/index.module.scss new file mode 100644 index 000000000..40ebc8453 --- /dev/null +++ b/src/components/Markdown/index.module.scss @@ -0,0 +1,122 @@ +.waitingAnimation::after { + display: inline-block; + content: ''; + width: 4px; + height: 14px; + transform: translate(4px, 2px) scaleY(1.3); + background-color: rgba(0, 0, 0, 0.7); + animation: blink 0.6s infinite; +} +.animation { + :last-child::after { + display: inline-block; + content: ''; + width: 4px; + height: 14px; + transform: translate(4px, 2px) scaleY(1.3); + background-color: rgba(0, 0, 0, 0.7); + animation: blink 0.6s infinite; + } +} +@keyframes blink { + from, + to { + opacity: 0; + } + 50% { + opacity: 1; + } +} +.markdown { + /* 标题样式 */ + h1 { + font-size: 1.8rem; + } + + h2 { + font-size: 1.6rem; + } + + h3 { + font-size: 1.4rem; + } + + h4 { + font-size: 1.2rem; + } + + h5 { + font-size: 1rem; + } + + h6 { + font-size: 0.83rem; + } + + /* 列表样式 */ + ol, + ul { + padding-left: 1.5rem; + margin-left: 1rem; + } + ul { + list-style: inside; + } + ol { + list-style: decimal; + } + + /* 链接样式 */ + a { + color: #0077cc; + text-decoration: none; + border-bottom: 1px solid #0077cc; + } + + a:hover { + color: #005580; + border-bottom-color: #005580; + } + + /* 图片样式 */ + img { + max-width: 100%; + max-height: 200px; + margin: auto; + } + + /* 强调样式 */ + em, + i { + font-style: italic; + } + + strong, + b { + font-weight: bold; + } + + /* 代码样式 */ + code { + border-radius: 3px; + width: 100%; + } + + pre { + padding: 10px 15px; + width: 100%; + background-color: #222 !important; + overflow-x: auto; + } + + pre code { + display: block; + border: none; + background-color: #222; + color: #fff; + } + + p { + line-height: 1.7; + } +} diff --git a/src/components/Markdown/index.tsx b/src/components/Markdown/index.tsx new file mode 100644 index 000000000..0fe1f4b80 --- /dev/null +++ b/src/components/Markdown/index.tsx @@ -0,0 +1,55 @@ +import React, { useMemo, memo } from 'react'; +import ReactMarkdown from 'react-markdown'; +import remarkGfm from 'remark-gfm'; +import styles from './index.module.scss'; +import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter'; +import { codeLight } from './codeLight'; +import { Box, Flex } from '@chakra-ui/react'; +import { useCopyData } from '@/utils/tools'; +import Icon from '@/components/Icon'; + +const Markdown = ({ source, isChatting }: { source: string; isChatting: boolean }) => { + // const formatSource = useMemo(() => source.replace(/\n/g, '\n'), [source]); + const { copyData } = useCopyData(); + return ( + + + {match?.[1]} + copyData(code)} alignItems={'center'}> + + 复制代码 + + + + {code} + + + ); + } + }} + > + {source} + + ); +}; + +export default memo(Markdown); diff --git a/src/constants/common.ts b/src/constants/common.ts new file mode 100644 index 000000000..4e498190d --- /dev/null +++ b/src/constants/common.ts @@ -0,0 +1,44 @@ +export enum EmailTypeEnum { + register = 'register', + findPassword = 'findPassword' +} + +export const introPage = ` +## 欢迎使用 Doc GPT + +时间比较赶,介绍没来得及完善,先直接上怎么使用: + +1. 使用邮箱注册账号。 +2. 进入账号页面,添加关联账号,目前只有 openai 的账号可以添加,直接去 openai 官网,把 API Key 粘贴过来。 +3. 进入模型页,创建一个模型,建议直接用 ChatGPT。 +4. 在模型列表点击【对话】,即可使用 API 进行聊天。 + +### 模型配置 + +1. **提示语**:会在每个对话框的第一句自动加入,用于限定该模型的对话内容。 + + +2. **单句最大长度**:每个聊天,单次输入内容的最大长度。 + + +3. **上下文最大长度**:每个聊天,最多的轮数除以2,建议设置为偶数。可以持续聊天,但是旧的聊天内容会被截断,AI 就不会知道被截取的内容。 +例如:上下文最大长度为6。在第 4 轮对话时,第一轮对话的内容不会被计入。 + +4. **过期时间**:生成对话框后,这个对话框多久过期。 + +5. **聊天最大加载次数**:单个对话框最多被加载几次,设置为-1代表不限制,正数代表只能加载 n 次,防止被盗刷。 + +### 对话框介绍 + +1. 每个对话框以 windowId 作为标识。 +2. 每次点击【对话】,都会生成新的对话框,无法回到旧的对话框。对话框内刷新,会恢复对话内容。 +3. 直接分享对话框(网页)的链接给朋友,会共享同一个对话内容。但是!!!千万不要两个人同时用一个链接,会串味,还没解决这个问题。 +4. 如果想分享一个纯的对话框,可以把链接里 windowId 参数去掉。例如: + +* 当前网页链接:http://docgpt.ahapocket.cn/chat?chatId=6402c9f64cb5d6283f764&windowId=6402c94cb5d6283f76fb49 +* 分享链接应为:http://docgpt.ahapocket.cn/chat?chatId=6402c9f64cb5d6283f764 + +### 其他问题 +还有其他问题,可以加我 wx,拉个交流群大家一起聊聊。 +![](/imgs/erweima.jpg) +`; diff --git a/src/constants/model.ts b/src/constants/model.ts new file mode 100644 index 000000000..33bc22f86 --- /dev/null +++ b/src/constants/model.ts @@ -0,0 +1,53 @@ +export enum OpenAiModelEnum { + GPT35 = 'gpt-3.5-turbo', + GPT3 = 'text-davinci-003' +} +export const OpenAiList = [ + { + name: 'chatGPT', + model: OpenAiModelEnum.GPT35, + trainName: 'turbo', + canTraining: false, + maxToken: 4060 + }, + { + name: 'GPT3', + model: OpenAiModelEnum.GPT3, + trainName: 'davinci', + canTraining: true, + maxToken: 4060 + } +]; + +export enum TrainingStatusEnum { + pending = 'pending', + succeed = 'succeed', + errored = 'errored', + canceled = 'canceled' +} + +export enum ModelStatusEnum { + running = 'running', + training = 'training', + pending = 'pending', + closed = 'closed' +} + +export const formatModelStatus = { + [ModelStatusEnum.running]: { + colorTheme: 'green', + text: '运行中' + }, + [ModelStatusEnum.training]: { + colorTheme: 'blue', + text: '训练中' + }, + [ModelStatusEnum.pending]: { + colorTheme: 'gray', + text: '加载中' + }, + [ModelStatusEnum.closed]: { + colorTheme: 'red', + text: '已关闭' + } +}; diff --git a/src/constants/responseCode.ts b/src/constants/responseCode.ts new file mode 100644 index 000000000..94dba1265 --- /dev/null +++ b/src/constants/responseCode.ts @@ -0,0 +1,20 @@ +export const ERROR_CODE: { [key: number]: string } = { + 400: '请求失败', + 401: '无权访问', + 403: '紧张访问', + 404: '请求不存在', + 405: '请求方法错误', + 406: '请求的格式错误', + 410: '资源已删除', + 422: '验证错误', + 500: '服务器发生错误', + 502: '网关错误', + 503: '服务器暂时过载或维护', + 504: '网关超时' +}; + +export const TOKEN_ERROR_CODE: { [key: number]: string } = { + 506: '请先登录', + 507: '请重新登录', + 508: '登录已过期' +}; diff --git a/src/constants/theme.ts b/src/constants/theme.ts new file mode 100644 index 000000000..5526b1c63 --- /dev/null +++ b/src/constants/theme.ts @@ -0,0 +1,87 @@ +import { extendTheme, defineStyleConfig } from '@chakra-ui/react'; +// @ts-ignore +import { modalAnatomy as parts } from '@chakra-ui/anatomy'; +// @ts-ignore +import { createMultiStyleConfigHelpers } from '@chakra-ui/styled-system'; + +const { definePartsStyle, defineMultiStyleConfig } = createMultiStyleConfigHelpers(parts.keys); + +// modal 弹窗 +const ModalTheme = defineMultiStyleConfig({ + baseStyle: definePartsStyle({ + dialog: { + width: '90%' + } + }) +}); + +// 按键 +const Button = defineStyleConfig({ + baseStyle: {}, + sizes: { + sm: { + fontSize: 'sm', + px: 3, + py: 0, + fontWeight: 'normal', + height: '26px' + }, + md: { + fontSize: 'md', + px: 6, + py: 0, + height: '34px', + fontWeight: 'normal' + }, + lg: { + fontSize: 'lg', + px: 8, + py: 0, + height: '42px', + fontWeight: 'normal' + } + }, + variants: { + outline: { + borderWidth: '1.5px' + } + }, + defaultProps: { + size: 'md', + colorScheme: 'blue' + } +}); + +// 全局主题 +export const theme = extendTheme({ + styles: { + global: { + 'html, body': { + color: 'blackAlpha.800', + fontSize: '14px' + } + } + }, + fonts: { + body: 'system-ui, sans-serif' + }, + fontSizes: { + xs: '0.8rem', + sm: '0.9rem', + md: '1rem', + lg: '1.125rem', + xl: '1.25rem', + '2xl': '1.5rem', + '3xl': '1.875rem', + '4xl': '2.25rem', + '5xl': '3rem', + '6xl': '3.75rem', + '7xl': '4.5rem', + '8xl': '6rem', + '9xl': '8rem' + }, + components: { + Modal: ModalTheme, + Button + } +}); diff --git a/src/constants/user.ts b/src/constants/user.ts new file mode 100644 index 000000000..b158de9d1 --- /dev/null +++ b/src/constants/user.ts @@ -0,0 +1,5 @@ +export enum PageTypeEnum { + login = 'login', + register = 'register', + forgetPassword = 'forgetPassword' +} diff --git a/src/hooks/useConfirm.tsx b/src/hooks/useConfirm.tsx new file mode 100644 index 000000000..050dac317 --- /dev/null +++ b/src/hooks/useConfirm.tsx @@ -0,0 +1,61 @@ +import { useState, useRef } from 'react'; +import { + AlertDialog, + AlertDialogBody, + AlertDialogFooter, + AlertDialogHeader, + AlertDialogContent, + AlertDialogOverlay, + useDisclosure, + Button +} from '@chakra-ui/react'; + +export const useConfirm = ({ title = '提示', content }: { title?: string; content: string }) => { + const { isOpen, onOpen, onClose } = useDisclosure(); + const cancelRef = useRef(null); + const confirmCb = useRef(); + const cancelCb = useRef(); + + return { + openConfirm: (confirm?: any, cancel?: any) => { + onOpen(); + confirmCb.current = confirm; + cancelCb.current = cancel; + }, + ConfirmChild: () => ( + + + + + {title} + + + {content} + + + + + + + + + ) + }; +}; diff --git a/src/hooks/useLoading.tsx b/src/hooks/useLoading.tsx new file mode 100644 index 000000000..68c4d3808 --- /dev/null +++ b/src/hooks/useLoading.tsx @@ -0,0 +1,36 @@ +import { useState } from 'react'; +import { Spinner, Flex } from '@chakra-ui/react'; + +export const useLoading = (props?: { defaultLoading: boolean }) => { + const [isLoading, setIsLoading] = useState(props?.defaultLoading || false); + + const Loading = ({ + loading, + fixed = true + }: { + loading?: boolean; + fixed?: boolean; + }): JSX.Element | null => { + return isLoading || loading ? ( + + + + ) : null; + }; + + return { + isLoading, + setIsLoading, + Loading + }; +}; diff --git a/src/hooks/useScreen.ts b/src/hooks/useScreen.ts new file mode 100644 index 000000000..4f96861d0 --- /dev/null +++ b/src/hooks/useScreen.ts @@ -0,0 +1,16 @@ +import { useMemo } from 'react'; +import { useMediaQuery } from '@chakra-ui/react'; + +export function useScreen() { + const [isPc] = useMediaQuery('(min-width: 900px)', { + ssr: true, + fallback: false + }); + + return { + isPc, + mediaLgMd: useMemo(() => (isPc ? 'lg' : 'md'), [isPc]), + mediaMdSm: useMemo(() => (isPc ? 'md' : 'sm'), [isPc]), + media: (pc: number | string, phone: number | string) => (isPc ? pc : phone) + }; +} diff --git a/src/hooks/useSendCode.ts b/src/hooks/useSendCode.ts new file mode 100644 index 000000000..8e683b5b7 --- /dev/null +++ b/src/hooks/useSendCode.ts @@ -0,0 +1,65 @@ +import { useState, useMemo, useCallback } from 'react'; +import { sendCodeToEmail } from '@/api/user'; +import { EmailTypeEnum } from '@/constants/common'; +import { useToast } from '@chakra-ui/react'; +let timer: any; + +export const useSendCode = () => { + const toast = useToast({ + position: 'top', + duration: 2000 + }); + const [codeSending, setCodeSending] = useState(false); + const [codeCountDown, setCodeCountDown] = useState(0); + const sendCodeText = useMemo(() => { + if (codeCountDown >= 10) { + return `${codeCountDown}s后重新获取`; + } + if (codeCountDown > 0) { + return `0${codeCountDown}s后重新获取`; + } + return '获取验证码'; + }, [codeCountDown]); + + const sendCode = useCallback( + async ({ email, type }: { email: string; type: `${EmailTypeEnum}` }) => { + setCodeSending(true); + try { + await sendCodeToEmail({ + email, + type + }); + setCodeCountDown(60); + timer = setInterval(() => { + setCodeCountDown((val) => { + if (val <= 0) { + clearInterval(timer); + } + return val - 1; + }); + }, 1000); + toast({ + title: '验证码已发送', + status: 'success', + position: 'top' + }); + } catch (error) { + typeof error === 'string' && + toast({ + title: error, + status: 'error', + position: 'top' + }); + } + setCodeSending(false); + }, + [toast] + ); + + return { + codeSending, + sendCode, + sendCodeText, + codeCountDown + }; +}; diff --git a/src/hooks/useToast.ts b/src/hooks/useToast.ts new file mode 100644 index 000000000..e2555d159 --- /dev/null +++ b/src/hooks/useToast.ts @@ -0,0 +1,13 @@ +import { useToast as uToast, UseToastOptions } from '@chakra-ui/react'; + +export const useToast = (props?: UseToastOptions) => { + const toast = uToast({ + position: 'top', + duration: 2000, + ...props + }); + + return { + toast + }; +}; diff --git a/src/pages/404.tsx b/src/pages/404.tsx new file mode 100644 index 000000000..8511d991b --- /dev/null +++ b/src/pages/404.tsx @@ -0,0 +1,13 @@ +import React, { useEffect } from 'react'; +import { useRouter } from 'next/router'; + +const NonePage = () => { + const router = useRouter(); + useEffect(() => { + router.push('/model/list'); + }, [router]); + + return
; +}; + +export default NonePage; diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 021681f4d..0a8496d03 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,6 +1,46 @@ -import '@/styles/globals.css' -import type { AppProps } from 'next/app' +import type { AppProps, NextWebVitalsMetric } from 'next/app'; +import Head from 'next/head'; +import { ChakraProvider } from '@chakra-ui/react'; +import Layout from '@/components/Layout'; +import { theme } from '@/constants/theme'; +import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; +import '../styles/reset.scss'; export default function App({ Component, pageProps }: AppProps) { - return + // Create a client + const queryClient = new QueryClient({ + defaultOptions: { + queries: { + refetchOnWindowFocus: false, + retry: false, + cacheTime: 0 + } + } + }); + + return ( + <> + + Doc GPT + + + + + + + + + + + + + + ); } + +// export function reportWebVitals(metric: NextWebVitalsMetric) { +// console.log(metric); +// } diff --git a/src/pages/_document.tsx b/src/pages/_document.tsx index 54e8bf3e2..e1e9cbbb7 100644 --- a/src/pages/_document.tsx +++ b/src/pages/_document.tsx @@ -1,4 +1,4 @@ -import { Html, Head, Main, NextScript } from 'next/document' +import { Html, Head, Main, NextScript } from 'next/document'; export default function Document() { return ( @@ -9,5 +9,5 @@ export default function Document() { - ) + ); } diff --git a/src/pages/api/chat/chatGpt.ts b/src/pages/api/chat/chatGpt.ts new file mode 100644 index 000000000..ded6787b4 --- /dev/null +++ b/src/pages/api/chat/chatGpt.ts @@ -0,0 +1,110 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { connectToDatabase, Chat, ChatWindow } from '@/service/mongo'; +import type { ModelType } from '@/types/model'; +import { getOpenAIApi, authChat } from '@/service/utils/chat'; +import { openaiProxy } from '@/service/utils/tools'; +import { ChatCompletionRequestMessage, ChatCompletionRequestMessageRoleEnum } from 'openai'; +import { ChatItemType } from '@/types/chat'; + +/* 发送提示词 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + res.writeHead(200, { + Connection: 'keep-alive', + 'Content-Encoding': 'none', + 'Cache-Control': 'no-cache', + 'Content-Type': 'text/event-stream' + }); + const { chatId, windowId } = req.query as { chatId: string; windowId: string }; + + try { + if (!windowId || !chatId) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + const { chat, userApiKey } = await authChat(chatId); + + const model: ModelType = chat.modelId; + + const map = { + Human: ChatCompletionRequestMessageRoleEnum.User, + AI: ChatCompletionRequestMessageRoleEnum.Assistant, + SYSTEM: ChatCompletionRequestMessageRoleEnum.System + }; + // 读取对话内容 + const prompts: ChatItemType[] = (await ChatWindow.findById(windowId)).content; + + // 长度过滤 + const maxContext = model.security.contextMaxLen; + const filterPrompts = + prompts.length > maxContext + 2 + ? [prompts[0], ...prompts.slice(prompts.length - maxContext)] + : prompts.slice(0, prompts.length); + + // 格式化文本内容 + const formatPrompts: ChatCompletionRequestMessage[] = filterPrompts.map( + (item: ChatItemType) => ({ + role: map[item.obj], + content: item.value + }) + ); + + // 获取 chatAPI + const chatAPI = getOpenAIApi(userApiKey); + const chatResponse = await chatAPI.createChatCompletion( + { + model: model.service.chatModel, + temperature: 1, + // max_tokens: model.security.contentMaxLen, + messages: formatPrompts, + stream: true + }, + openaiProxy + ); + + // 截取字符串内容 + const reg = /{"content"(.*)"}/g; + // @ts-ignore + const match = chatResponse.data.match(reg); + let AIResponse = ''; + if (match) { + match.forEach((item: string, i: number) => { + try { + const json = JSON.parse(item); + // 开头的换行忽略 + if (i === 0 && json.content?.startsWith('\n')) return; + AIResponse += json.content; + const content = json.content.replace(/\n/g, '
'); // 无法直接传输\n + content && res.write(`data: ${content}\n\n`); + } catch (err) { + err; + } + }); + } + res.write(`data: [DONE]\n\n`); + + // 存入库 + await ChatWindow.findByIdAndUpdate(windowId, { + $push: { + content: { + obj: 'AI', + value: AIResponse + } + }, + updateTime: Date.now() + }); + + res.end(); + } catch (err: any) { + console.log(err?.response?.data || err); + // 删除最一条数据库记录, 也就是预发送的那一条 + await ChatWindow.findByIdAndUpdate(windowId, { + $pop: { content: 1 }, + updateTime: Date.now() + }); + + res.end(); + } +} diff --git a/src/pages/api/chat/delLastMessage.ts b/src/pages/api/chat/delLastMessage.ts new file mode 100644 index 000000000..999ce75b4 --- /dev/null +++ b/src/pages/api/chat/delLastMessage.ts @@ -0,0 +1,28 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, ChatWindow } from '@/service/mongo'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { windowId } = req.query as { windowId: string }; + + if (!windowId) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + // 删除最一条数据库记录, 也就是预发送的那一条 + await ChatWindow.findByIdAndUpdate(windowId, { + $pop: { content: 1 }, + updateTime: Date.now() + }); + + jsonRes(res); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/chat/generate.ts b/src/pages/api/chat/generate.ts new file mode 100644 index 000000000..83145f7fd --- /dev/null +++ b/src/pages/api/chat/generate.ts @@ -0,0 +1,53 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, Model, Chat } from '@/service/mongo'; +import { authToken } from '@/service/utils/tools'; +import { ModelType } from '@/types/model'; + +/* 获取我的模型 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { modelId } = req.query; + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + + if (!modelId) { + throw new Error('缺少参数'); + } + + // 凭证校验 + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 获取模型配置 + const model: ModelType | null = await Model.findOne({ + _id: modelId, + userId + }); + + if (!model) { + throw new Error('模型不存在'); + } + + // 创建 chat 数据 + const response = await Chat.create({ + userId, + modelId, + expiredTime: Date.now() + model.security.expiredTime, + loadAmount: model.security.maxLoadAmount + }); + + jsonRes(res, { + data: response._id + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/chat/gpt3.ts b/src/pages/api/chat/gpt3.ts new file mode 100644 index 000000000..8856725db --- /dev/null +++ b/src/pages/api/chat/gpt3.ts @@ -0,0 +1,83 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, Chat } from '@/service/mongo'; +import type { ModelType } from '@/types/model'; +import { getOpenAIApi } from '@/service/utils/chat'; +import { ChatItemType } from '@/types/chat'; +import { openaiProxy } from '@/service/utils/tools'; + +/* 发送提示词 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { prompt, chatId } = req.body as { prompt: ChatItemType[]; chatId: string }; + + if (!prompt || !chatId) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + // 获取 chat 数据 + const chat = await Chat.findById(chatId) + .populate({ + path: 'modelId', + options: { + strictPopulate: false + } + }) + .populate({ + path: 'userId', + options: { + strictPopulate: false + } + }); + + if (!chat || !chat.modelId || !chat.userId) { + throw new Error('聊天已过期'); + } + + const model: ModelType = chat.modelId; + + // 获取 user 的 apiKey + const user = chat.userId; + + const userApiKey = user.accounts?.find((item: any) => item.type === 'openai')?.value; + + if (!userApiKey) { + throw new Error('缺少ApiKey, 无法请求'); + } + + // 获取 chatAPI + const chatAPI = getOpenAIApi(userApiKey); + + // prompt处理 + const formatPrompt = prompt.map((item) => `${item.value}\n\n###\n\n`).join(''); + + // 发送请求 + const response = await chatAPI.createCompletion( + { + model: model.service.modelName, + prompt: formatPrompt, + temperature: 0.5, + max_tokens: model.security.contentMaxLen, + top_p: 1, + frequency_penalty: 0, + presence_penalty: 0.6, + stop: ['###'] + }, + openaiProxy + ); + + const responseMessage = response.data.choices[0]?.text; + + jsonRes(res, { + data: responseMessage + }); + } catch (err: any) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/chat/init.ts b/src/pages/api/chat/init.ts new file mode 100644 index 000000000..192c9c5ba --- /dev/null +++ b/src/pages/api/chat/init.ts @@ -0,0 +1,91 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, Chat, ChatWindow } from '@/service/mongo'; +import type { ModelType } from '@/types/model'; + +/* 获取我的模型 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { chatId, windowId } = req.query as { chatId: string; windowId?: string }; + + if (!chatId) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + // 获取 chat 数据 + const chat = await Chat.findById(chatId).populate({ + path: 'modelId', + options: { + strictPopulate: false + } + }); + + // 安全校验 + if (chat.loadAmount === 0 || chat.expiredTime < Date.now()) { + throw new Error('聊天框已过期'); + } + + if (chat.loadAmount > 0) { + await Chat.updateOne( + { + _id: chat._id + }, + { + $inc: { loadAmount: -1 } + } + ); + } + + const model: ModelType = chat.modelId; + + /* 查找是否有记录 */ + let history = null; + let responseId = windowId; + try { + history = await ChatWindow.findById(windowId); + } catch (error) { + error; + } + + const defaultContent = model.systemPrompt + ? [ + { + obj: 'SYSTEM', + value: model.systemPrompt + } + ] + : []; + + if (!history) { + // 没有记录,创建一个 + const response = await ChatWindow.create({ + chatId, + updateTime: Date.now(), + content: defaultContent + }); + responseId = response._id; + } + + jsonRes(res, { + data: { + windowId: responseId, + chatSite: { + modelId: model._id, + name: model.name, + avatar: model.avatar, + secret: model.security, + chatModel: model.service.chatModel + }, + history: history ? history.content : defaultContent + } + }); + } catch (err) { + console.log(err); + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/chat/preChat.ts b/src/pages/api/chat/preChat.ts new file mode 100644 index 000000000..7576c1cd5 --- /dev/null +++ b/src/pages/api/chat/preChat.ts @@ -0,0 +1,43 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { ChatItemType } from '@/types/chat'; +import { connectToDatabase, ChatWindow } from '@/service/mongo'; +import type { ModelType } from '@/types/model'; +import { authChat } from '@/service/utils/chat'; + +/* 聊天预请求,存储聊天内容 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { windowId, prompt, chatId } = req.body as { + windowId: string; + prompt: ChatItemType; + chatId: string; + }; + + if (!windowId || !prompt || !chatId) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + const { chat } = await authChat(chatId); + + // 长度校验 + const model: ModelType = chat.modelId; + if (prompt.value.length > model.security.contentMaxLen) { + throw new Error('输入内容超长'); + } + + await ChatWindow.findByIdAndUpdate(windowId, { + $push: { content: prompt }, + updateTime: Date.now() + }); + + jsonRes(res); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/hello.ts b/src/pages/api/hello.ts deleted file mode 100644 index f8bcc7e5c..000000000 --- a/src/pages/api/hello.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Next.js API route support: https://nextjs.org/docs/api-routes/introduction -import type { NextApiRequest, NextApiResponse } from 'next' - -type Data = { - name: string -} - -export default function handler( - req: NextApiRequest, - res: NextApiResponse -) { - res.status(200).json({ name: 'John Doe' }) -} diff --git a/src/pages/api/model/create.ts b/src/pages/api/model/create.ts new file mode 100644 index 000000000..79af70d47 --- /dev/null +++ b/src/pages/api/model/create.ts @@ -0,0 +1,75 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase } from '@/service/mongo'; +import { authToken } from '@/service/utils/tools'; +import { ModelStatusEnum, OpenAiList } from '@/constants/model'; +import { Model } from '@/service/models/model'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { name, serviceModelName, serviceModelCompany = 'openai' } = req.body; + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + + if (!name || !serviceModelName || !serviceModelCompany) { + throw new Error('缺少参数'); + } + + // 凭证校验 + const userId = await authToken(authorization); + + const modelItem = OpenAiList.find((item) => item.model === serviceModelName); + + if (!modelItem) { + throw new Error('模型错误'); + } + + await connectToDatabase(); + + // 重名校验 + const authRepeatName = await Model.findOne({ + name, + userId + }); + if (authRepeatName) { + throw new Error('模型名重复'); + } + + // 上限校验 + const authCount = await Model.countDocuments({ + userId + }); + if (authCount >= 5) { + throw new Error('上限5个模型'); + } + + // 创建模型 + const response = await Model.create({ + name, + userId, + status: ModelStatusEnum.running, + service: { + company: serviceModelCompany, + trainId: modelItem.trainName, + chatModel: modelItem.model, + modelName: modelItem.model + } + }); + + // 根据 id 获取模型信息 + const model = await Model.findById(response._id); + + jsonRes(res, { + data: model + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/model/del.ts b/src/pages/api/model/del.ts new file mode 100644 index 000000000..f4e3c0f70 --- /dev/null +++ b/src/pages/api/model/del.ts @@ -0,0 +1,70 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { Chat, Model, Training, connectToDatabase } from '@/service/mongo'; +import { authToken, getUserOpenaiKey } from '@/service/utils/tools'; +import { TrainingStatusEnum } from '@/constants/model'; +import { getOpenAIApi } from '@/service/utils/chat'; +import { TrainingItemType } from '@/types/training'; +import { openaiProxy } from '@/service/utils/tools'; + +/* 获取我的模型 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { modelId } = req.query; + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + + if (!modelId) { + throw new Error('参数错误'); + } + + // 凭证校验 + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 删除模型 + await Model.deleteOne({ + _id: modelId, + userId + }); + + // 删除对应的聊天 + await Chat.deleteMany({ + modelId + }); + + // 查看是否正在训练 + const training: TrainingItemType | null = await Training.findOne({ + modelId, + status: TrainingStatusEnum.pending + }); + + // 如果正在训练,需要删除openai上的相关信息 + if (training) { + const openai = getOpenAIApi(await getUserOpenaiKey(userId)); + // 获取训练记录 + const tuneRecord = await openai.retrieveFineTune(training.tuneId, openaiProxy); + + // 删除训练文件 + openai.deleteFile(tuneRecord.data.training_files[0].id, openaiProxy); + // 取消训练 + openai.cancelFineTune(training.tuneId, openaiProxy); + } + + // 删除对应训练记录 + await Training.deleteMany({ + modelId + }); + + jsonRes(res); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/model/detail.tsx b/src/pages/api/model/detail.tsx new file mode 100644 index 000000000..1280d065e --- /dev/null +++ b/src/pages/api/model/detail.tsx @@ -0,0 +1,47 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase } from '@/service/mongo'; +import { authToken } from '@/service/utils/tools'; +import { Model } from '@/service/models/model'; +import { ModelType } from '@/types/model'; + +/* 获取我的模型 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + + const { modelId } = req.query; + + if (!modelId) { + throw new Error('参数错误'); + } + + // 凭证校验 + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 根据 userId 获取模型信息 + const model: ModelType | null = await Model.findOne({ + userId, + _id: modelId + }); + + if (!model) { + throw new Error('模型不存在'); + } + + jsonRes(res, { + data: model + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/model/getTrainings.ts b/src/pages/api/model/getTrainings.ts new file mode 100644 index 000000000..3313abbdc --- /dev/null +++ b/src/pages/api/model/getTrainings.ts @@ -0,0 +1,60 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, Model, Training } from '@/service/mongo'; +import { getOpenAIApi } from '@/service/utils/chat'; +import formidable from 'formidable'; +import { authToken, getUserOpenaiKey } from '@/service/utils/tools'; +import { join } from 'path'; +import fs from 'fs'; +import type { ModelType } from '@/types/model'; +import type { OpenAIApi } from 'openai'; +import { ModelStatusEnum, TrainingStatusEnum } from '@/constants/model'; +import { openaiProxy } from '@/service/utils/tools'; + +// 关闭next默认的bodyParser处理方式 +export const config = { + api: { + bodyParser: false + } +}; + +/* 上传文件,开始微调 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + const { modelId } = req.query; + if (!modelId) { + throw new Error('参数错误'); + } + const userId = await authToken(authorization); + + await connectToDatabase(); + + /* 获取 modelId 下的 training 记录 */ + const records = await Training.find({ + modelId + }); + + jsonRes(res, { + data: records + }); + } catch (err: any) { + /* 清除上传的文件,关闭训练记录 */ + // @ts-ignore + if (openai) { + // @ts-ignore + uploadFileId && openai.deleteFile(uploadFileId); + // @ts-ignore + trainId && openai.cancelFineTune(trainId); + } + + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/model/list.ts b/src/pages/api/model/list.ts new file mode 100644 index 000000000..992869624 --- /dev/null +++ b/src/pages/api/model/list.ts @@ -0,0 +1,35 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase } from '@/service/mongo'; +import { authToken } from '@/service/utils/tools'; +import { Model } from '@/service/models/model'; + +/* 获取我的模型 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + + // 凭证校验 + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 根据 userId 获取模型信息 + const models = await Model.find({ + userId + }); + + jsonRes(res, { + data: models + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/model/putTrainStatus.ts b/src/pages/api/model/putTrainStatus.ts new file mode 100644 index 000000000..41eb061d2 --- /dev/null +++ b/src/pages/api/model/putTrainStatus.ts @@ -0,0 +1,101 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, Model, Training } from '@/service/mongo'; +import { getOpenAIApi } from '@/service/utils/chat'; +import { authToken, getUserOpenaiKey } from '@/service/utils/tools'; +import type { ModelType } from '@/types/model'; +import { TrainingItemType } from '@/types/training'; +import { ModelStatusEnum, TrainingStatusEnum } from '@/constants/model'; +import { OpenAiTuneStatusEnum } from '@/service/constants/training'; +import { openaiProxy } from '@/service/utils/tools'; + +/* 更新训练状态 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + const { modelId } = req.query as { modelId: string }; + if (!modelId) { + throw new Error('参数错误'); + } + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 获取模型 + const model: ModelType | null = await Model.findById(modelId); + + if (!model || model.status !== 'training') { + throw new Error('模型不在训练中'); + } + + // 查询正在训练中的训练记录 + const training: TrainingItemType | null = await Training.findOne({ + modelId, + status: 'pending' + }); + + if (!training) { + throw new Error('找不到训练记录'); + } + + // 用户的 openai 实例 + const openai = getOpenAIApi(await getUserOpenaiKey(userId)); + + // 获取 openai 的训练情况 + const { data } = await openai.retrieveFineTune(training.tuneId, openaiProxy); + + if (data.status === OpenAiTuneStatusEnum.succeeded) { + // 删除训练文件 + openai.deleteFile(data.training_files[0].id, openaiProxy); + + // 更新模型 + await Model.findByIdAndUpdate(modelId, { + status: ModelStatusEnum.running, + updateTime: new Date(), + service: { + ...model.service, + trainId: data.fine_tuned_model, // 训练完后,再次训练和对话使用的 model 是一样的 + chatModel: data.fine_tuned_model + } + }); + // 更新训练数据 + await Training.findByIdAndUpdate(training._id, { + status: TrainingStatusEnum.succeed + }); + + return jsonRes(res, { + data: '模型微调完成' + }); + } + + if (data.status === OpenAiTuneStatusEnum.cancelled) { + // 删除训练文件 + openai.deleteFile(data.training_files[0].id, openaiProxy); + + // 更新模型 + await Model.findByIdAndUpdate(modelId, { + status: ModelStatusEnum.running, + updateTime: new Date() + }); + // 更新训练数据 + await Training.findByIdAndUpdate(training._id, { + status: TrainingStatusEnum.canceled + }); + + return jsonRes(res, { + data: '模型微调取消' + }); + } + + throw new Error('模型还在训练中'); + } catch (err: any) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/model/train.ts b/src/pages/api/model/train.ts new file mode 100644 index 000000000..1a83dcc9d --- /dev/null +++ b/src/pages/api/model/train.ts @@ -0,0 +1,127 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, Model, Training } from '@/service/mongo'; +import { getOpenAIApi } from '@/service/utils/chat'; +import formidable from 'formidable'; +import { authToken, getUserOpenaiKey } from '@/service/utils/tools'; +import { join } from 'path'; +import fs from 'fs'; +import type { ModelType } from '@/types/model'; +import type { OpenAIApi } from 'openai'; +import { ModelStatusEnum, TrainingStatusEnum } from '@/constants/model'; +import { openaiProxy } from '@/service/utils/tools'; + +// 关闭next默认的bodyParser处理方式 +export const config = { + api: { + bodyParser: false + } +}; + +/* 上传文件,开始微调 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + let openai: OpenAIApi, trainId: string, uploadFileId: string; + + try { + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + const { modelId } = req.query; + if (!modelId) { + throw new Error('参数错误'); + } + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 获取模型的状态 + const model: ModelType | null = await Model.findById(modelId); + + if (!model || model.status !== 'running') { + throw new Error('模型正忙'); + } + + // const trainingType = model.service.modelType + const trainingType = model.service.trainId; // 目前都默认是 openai text-davinci-03 + + // 获取用户的 API Key 实例化后的对象 + openai = getOpenAIApi(await getUserOpenaiKey(userId)); + + // 接收文件并保存 + const form = formidable({ + uploadDir: join(process.cwd(), 'public/trainData'), + keepExtensions: true + }); + + const { files } = await new Promise<{ + fields: formidable.Fields; + files: formidable.Files; + }>((resolve, reject) => { + form.parse(req, (err, fields, files) => { + if (err) return reject(err); + resolve({ fields, files }); + }); + }); + const file = files.file; + + // 上传文件 + // @ts-ignore + const uploadRes = await openai.createFile( + // @ts-ignore + fs.createReadStream(file.filepath), + 'fine-tune', + openaiProxy + ); + uploadFileId = uploadRes.data.id; // 记录上传文件的 ID + + // 开始训练 + const trainRes = await openai.createFineTune( + { + training_file: uploadFileId, + model: trainingType, + suffix: model.name + }, + openaiProxy + ); + + trainId = trainRes.data.id; // 记录训练 ID + + // 创建训练记录 + await Training.create({ + serviceName: 'openai', + tuneId: trainId, + status: TrainingStatusEnum.pending, + modelId + }); + + // 修改模型状态 + await Model.findByIdAndUpdate(modelId, { + $inc: { + trainingTimes: +1 + }, + updateTime: new Date(), + status: ModelStatusEnum.training + }); + + jsonRes(res, { + data: 'start training' + }); + } catch (err: any) { + /* 清除上传的文件,关闭训练记录 */ + // @ts-ignore + if (openai) { + // @ts-ignore + uploadFileId && openai.deleteFile(uploadFileId, openaiProxy); + // @ts-ignore + trainId && openai.cancelFineTune(trainId, openaiProxy); + } + + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/model/update.ts b/src/pages/api/model/update.ts new file mode 100644 index 000000000..8017c0b82 --- /dev/null +++ b/src/pages/api/model/update.ts @@ -0,0 +1,49 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase } from '@/service/mongo'; +import { authToken } from '@/service/utils/tools'; +import { Model } from '@/service/models/model'; +import type { ModelUpdateParams } from '@/types/model'; + +/* 获取我的模型 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { name, service, security, systemPrompt } = req.body as ModelUpdateParams; + const { modelId } = req.query as { modelId: string }; + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('无权操作'); + } + + if (!name || !service || !security || !modelId) { + throw new Error('参数错误'); + } + + // 凭证校验 + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 更新模型 + await Model.updateOne( + { + _id: modelId, + userId + }, + { + name, + service, + systemPrompt, + security + } + ); + + jsonRes(res); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/test.ts b/src/pages/api/test.ts new file mode 100644 index 000000000..04326b0ff --- /dev/null +++ b/src/pages/api/test.ts @@ -0,0 +1,24 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + if (req.method !== 'GET') return; + + res.writeHead(200, { + Connection: 'keep-alive', + 'Content-Encoding': 'none', + 'Cache-Control': 'no-cache', + 'Content-Type': 'text/event-stream' + }); + + let val = 0; + + const timer = setInterval(() => { + console.log('发送消息', val); + res.write(`data: ${val++}\n\n`); + if (val > 30) { + clearInterval(timer); + res.write(`data: [DONE]\n\n`); + res.end(); + } + }, 500); +} diff --git a/src/pages/api/timer/clearAuthCode.ts b/src/pages/api/timer/clearAuthCode.ts new file mode 100644 index 000000000..248027d01 --- /dev/null +++ b/src/pages/api/timer/clearAuthCode.ts @@ -0,0 +1,24 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { AuthCode } from '@/service/models/authCode'; +import { connectToDatabase } from '@/service/mongo'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + await connectToDatabase(); + + const authCode = await AuthCode.deleteMany({ + expiredTime: { $lt: Date.now() } + }); + + jsonRes(res, { + message: `删除了${authCode.deletedCount}条记录` + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/timer/clearChatWindow.ts b/src/pages/api/timer/clearChatWindow.ts new file mode 100644 index 000000000..390db323b --- /dev/null +++ b/src/pages/api/timer/clearChatWindow.ts @@ -0,0 +1,25 @@ +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, ChatWindow } from '@/service/mongo'; + +/* 定时删除那些不活跃的内容 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + await connectToDatabase(); + + const response = await ChatWindow.deleteMany( + { $expr: { $lt: [{ $size: '$content' }, 5] } }, + // 使用 $pull 操作符删除数组中的元素 + { $pull: { content: { $exists: true } } } + ); + + jsonRes(res, { + message: `删除了${response.deletedCount}条记录` + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/timer/updateTraining.ts b/src/pages/api/timer/updateTraining.ts new file mode 100644 index 000000000..a505669ef --- /dev/null +++ b/src/pages/api/timer/updateTraining.ts @@ -0,0 +1,76 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase, Training, Model } from '@/service/mongo'; +import type { TrainingItemType } from '@/types/training'; +import { TrainingStatusEnum, ModelStatusEnum } from '@/constants/model'; +import { getOpenAIApi } from '@/service/utils/chat'; +import { getUserOpenaiKey } from '@/service/utils/tools'; +import { OpenAiTuneStatusEnum } from '@/service/constants/training'; +import { sendTrainSucceed } from '@/service/utils/sendEmail'; +import { openaiProxy } from '@/service/utils/tools'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + await connectToDatabase(); + + // 查询正在训练中的训练记录 + const trainingRecords: TrainingItemType[] = await Training.find({ + status: TrainingStatusEnum.pending + }); + + const openai = getOpenAIApi(await getUserOpenaiKey('63f9a14228d2a688d8dc9e1b')); + + const response = await Promise.all( + trainingRecords.map(async (item) => { + const { data } = await openai.retrieveFineTune(item.tuneId, openaiProxy); + if (data.status === OpenAiTuneStatusEnum.succeeded) { + // 删除训练文件 + openai.deleteFile(data.training_files[0].id, openaiProxy); + + const model = await Model.findById(item.modelId).populate({ + path: 'userId', + options: { + strictPopulate: false + } + }); + + if (!model) { + throw new Error('模型不存在'); + } + + // 更新模型 + await Model.findByIdAndUpdate(item.modelId, { + status: ModelStatusEnum.running, + updateTime: new Date(), + service: { + ...model.service, + trainId: data.fine_tuned_model, // 训练完后,再次训练和对话使用的 model 是一样的 + chatModel: data.fine_tuned_model + } + }); + // 更新训练数据 + await Training.findByIdAndUpdate(item._id, { + status: TrainingStatusEnum.succeed + }); + + // 发送邮件通知 + await sendTrainSucceed(model.userId.email as string, model.name); + return 'succeed'; + } + return 'pending'; + }) + ); + + jsonRes(res, { + data: `${response.length}个训练线程,${ + response.filter((item) => item === 'succeed').length + }个完成` + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/user/loginByPassword.ts b/src/pages/api/user/loginByPassword.ts new file mode 100644 index 000000000..f7f58959c --- /dev/null +++ b/src/pages/api/user/loginByPassword.ts @@ -0,0 +1,47 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase } from '@/service/mongo'; +import { User } from '@/service/models/user'; +import { generateToken } from '@/service/utils/tools'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { email, password } = req.body; + + if (!email || !password) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + // 检测邮箱是否存在 + const authEmail = await User.findOne({ + email + }); + if (!authEmail) { + throw new Error('邮箱未注册'); + } + + const user = await User.findOne({ + email, + password + }); + + if (!user) { + throw new Error('密码错误'); + } + + jsonRes(res, { + data: { + token: generateToken(user._id), + user + } + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/user/register.ts b/src/pages/api/user/register.ts new file mode 100644 index 000000000..f2b153cc0 --- /dev/null +++ b/src/pages/api/user/register.ts @@ -0,0 +1,61 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { User } from '@/service/models/user'; +import { AuthCode } from '@/service/models/authCode'; +import { connectToDatabase } from '@/service/mongo'; +import { generateToken } from '@/service/utils/tools'; +import { EmailTypeEnum } from '@/constants/common'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { email, code, password } = req.body; + + if (!email || !code || !password) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + // 验证码校验 + const authCode = await AuthCode.findOne({ + email, + code, + type: EmailTypeEnum.register, + expiredTime: { $gte: Date.now() } + }); + + if (!authCode) { + throw new Error('验证码错误'); + } + + // 重名校验 + const authRepeat = await User.findOne({ + email + }); + + if (authRepeat) { + throw new Error('邮箱已被注册'); + } + + const response = await User.create({ + email, + password + }); + + // 根据 id 获取用户信息 + const user = await User.findById(response._id); + + jsonRes(res, { + data: { + token: generateToken(user._id), + user + } + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/user/sendEmail.ts b/src/pages/api/user/sendEmail.ts new file mode 100644 index 000000000..c89e6ba24 --- /dev/null +++ b/src/pages/api/user/sendEmail.ts @@ -0,0 +1,54 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { AuthCode } from '@/service/models/authCode'; +import { connectToDatabase } from '@/service/mongo'; +import { sendCode } from '@/service/utils/sendEmail'; +import { EmailTypeEnum } from '@/constants/common'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { email, type } = req.query; + + if (!email || !type) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + let code = ''; + for (let i = 0; i < 6; i++) { + code += Math.floor(Math.random() * 10); + } + + // 判断 1 分钟内是否有重复数据 + const authCode = await AuthCode.findOne({ + email, + type, + expiredTime: { $gte: Date.now() + 4 * 60 * 1000 } // 如果有一个记录的过期时间,大于当前+4分钟,说明距离上次发送还没到1分钟。(因为默认创建时,过期时间是未来5分钟) + }); + + if (authCode) { + throw new Error('请勿频繁获取验证码'); + } + + // 创建 auth 记录 + await AuthCode.create({ + email, + type, + code + }); + + // 发送验证码 + await sendCode(email as string, code, type as `${EmailTypeEnum}`); + + jsonRes(res, { + message: '发送验证码成功' + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/user/tokenLogin.ts b/src/pages/api/user/tokenLogin.ts new file mode 100644 index 000000000..2c959eafd --- /dev/null +++ b/src/pages/api/user/tokenLogin.ts @@ -0,0 +1,36 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { connectToDatabase } from '@/service/mongo'; +import { User } from '@/service/models/user'; +import { authToken } from '@/service/utils/tools'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('缺少参数'); + } + + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 根据 id 获取用户信息 + const user = await User.findById(userId); + + if (!user) { + throw new Error('账号异常'); + } + + jsonRes(res, { + data: user + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/user/update.ts b/src/pages/api/user/update.ts new file mode 100644 index 000000000..8d3052404 --- /dev/null +++ b/src/pages/api/user/update.ts @@ -0,0 +1,41 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { User } from '@/service/models/user'; +import { connectToDatabase } from '@/service/mongo'; +import { authToken } from '@/service/utils/tools'; +import { UserUpdateParams } from '@/types/user'; + +/* 更新一些基本信息 */ +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { accounts } = req.body as UserUpdateParams; + const { authorization } = req.headers; + + if (!authorization) { + throw new Error('缺少参数'); + } + + const userId = await authToken(authorization); + + await connectToDatabase(); + + // 更新对应的记录 + await User.updateOne( + { + _id: userId + }, + { + // 限定字段 + ...(accounts ? { accounts } : {}) + } + ); + + jsonRes(res); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/api/user/updatePasswordByCode.ts b/src/pages/api/user/updatePasswordByCode.ts new file mode 100644 index 000000000..45fe2f915 --- /dev/null +++ b/src/pages/api/user/updatePasswordByCode.ts @@ -0,0 +1,59 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next'; +import { jsonRes } from '@/service/response'; +import { User } from '@/service/models/user'; +import { AuthCode } from '@/service/models/authCode'; +import { connectToDatabase } from '@/service/mongo'; +import { generateToken } from '@/service/utils/tools'; +import { EmailTypeEnum } from '@/constants/common'; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + try { + const { email, code, password } = req.body; + + if (!email || !code || !password) { + throw new Error('缺少参数'); + } + + await connectToDatabase(); + + // 验证码校验 + const authCode = await AuthCode.findOne({ + email, + code, + type: EmailTypeEnum.findPassword, + expiredTime: { $gte: Date.now() } + }); + + if (!authCode) { + throw new Error('验证码错误'); + } + + // 更新对应的记录 + await User.updateOne( + { + email + }, + { + password + } + ); + + // 根据 email 获取用户信息 + const user = await User.findOne({ + email + }); + + jsonRes(res, { + data: { + token: generateToken(user._id), + user + } + }); + } catch (err) { + jsonRes(res, { + code: 500, + error: err + }); + } +} diff --git a/src/pages/chat/index.tsx b/src/pages/chat/index.tsx new file mode 100644 index 000000000..45b3e9f98 --- /dev/null +++ b/src/pages/chat/index.tsx @@ -0,0 +1,390 @@ +import React, { useCallback, useState, useRef, useMemo } from 'react'; +import { useRouter } from 'next/router'; +import Image from 'next/image'; +import { + getInitChatSiteInfo, + postGPT3SendPrompt, + getChatGPTSendEvent, + postChatGptPrompt, + delLastMessage +} from '@/api/chat'; +import { ChatSiteItemType, ChatSiteType } from '@/types/chat'; +import { Textarea, Box, Flex, Button } from '@chakra-ui/react'; +import { useToast } from '@/hooks/useToast'; +import Icon from '@/components/Icon'; +import { useScreen } from '@/hooks/useScreen'; +import Markdown from '@/components/Markdown'; +import { useQuery } from '@tanstack/react-query'; +import { useLoading } from '@/hooks/useLoading'; +import { OpenAiModelEnum } from '@/constants/model'; + +const Chat = () => { + const { toast } = useToast(); + const router = useRouter(); + const { media } = useScreen(); + const { chatId, windowId } = router.query as { chatId: string; windowId?: string }; + const ChatBox = useRef(null); + const TextareaDom = useRef(null); + + const [chatSiteData, setChatSiteData] = useState(); // 聊天框整体数据 + const [chatList, setChatList] = useState([]); // 对话内容 + const [inputVal, setInputVal] = useState(''); // 输入的内容 + + const isChatting = useMemo(() => chatList[chatList.length - 1]?.status === 'loading', [chatList]); + const lastWordHuman = useMemo(() => chatList[chatList.length - 1]?.obj === 'Human', [chatList]); + const { Loading } = useLoading(); + + // 滚动到底部 + const scrollToBottom = useCallback(() => { + // 滚动到底部 + setTimeout(() => { + ChatBox.current && + ChatBox.current.scrollTo({ + top: ChatBox.current.scrollHeight, + behavior: 'smooth' + }); + }, 100); + }, []); + + // 初始化聊天框 + useQuery([chatId, windowId], () => (chatId ? getInitChatSiteInfo(chatId, windowId) : null), { + cacheTime: 5 * 60 * 1000, + onSuccess(res) { + if (!res) return; + router.replace(`/chat?chatId=${chatId}&windowId=${res.windowId}`); + + setChatSiteData(res.chatSite); + setChatList( + res.history.map((item) => ({ + ...item, + status: 'finish' + })) + ); + scrollToBottom(); + }, + onError() { + toast({ + title: '初始化异常', + status: 'error' + }); + } + }); + + // gpt3 方法 + const gpt3ChatPrompt = useCallback( + async (newChatList: ChatSiteItemType[]) => { + // 请求内容 + const response = await postGPT3SendPrompt({ + prompt: newChatList, + chatId: chatId as string + }); + + // 更新 AI 的内容 + setChatList((state) => + state.map((item, index) => { + if (index !== state.length - 1) return item; + return { + ...item, + status: 'finish', + value: response + }; + }) + ); + }, + [chatId] + ); + + // chatGPT + const chatGPTPrompt = useCallback( + async (newChatList: ChatSiteItemType[]) => { + if (!windowId) return; + /* 预请求,把消息存入库 */ + await postChatGptPrompt({ + windowId, + prompt: newChatList[newChatList.length - 1], + chatId + }); + + return new Promise((resolve, reject) => { + const event = getChatGPTSendEvent(chatId, windowId); + event.onmessage = ({ data }) => { + if (data === '[DONE]') { + event.close(); + setChatList((state) => + state.map((item, index) => { + if (index !== state.length - 1) return item; + return { + ...item, + status: 'finish' + }; + }) + ); + resolve(''); + } else if (data) { + const msg = data.replace(//g, '\n'); + setChatList((state) => + state.map((item, index) => { + if (index !== state.length - 1) return item; + return { + ...item, + value: item.value + msg + }; + }) + ); + } + }; + event.onerror = (err) => { + console.error(err, '==='); + event.close(); + reject('对话出现错误'); + }; + }); + }, + [chatId, windowId] + ); + + /** + * 发送一个内容 + */ + const sendPrompt = useCallback(async () => { + const storeInput = inputVal; + // 去除空行 + const val = inputVal + .trim() + .split('\n') + .filter((val) => val) + .join('\n\n'); + if (!chatSiteData?.modelId || !val || !ChatBox.current || isChatting) { + return; + } + + const newChatList: ChatSiteItemType[] = [ + ...chatList, + { + obj: 'Human', + value: val, + status: 'finish' + }, + { + obj: 'AI', + value: '', + status: 'loading' + } + ]; + + // 插入内容 + setChatList(newChatList); + setInputVal(''); + // 滚动到底部 + setTimeout(() => { + scrollToBottom(); + + if (TextareaDom.current) { + TextareaDom.current.style.height = 22 + 'px'; + } + }, 100); + + const fnMap: { [key: string]: any } = { + [OpenAiModelEnum.GPT35]: chatGPTPrompt, + [OpenAiModelEnum.GPT3]: gpt3ChatPrompt + }; + + try { + /* 对长度进行限制 */ + const maxContext = chatSiteData.secret.contextMaxLen; + const requestPrompt = + newChatList.length > maxContext + 2 + ? [newChatList[0], ...newChatList.slice(newChatList.length - maxContext - 1, -1)] + : newChatList.slice(0, newChatList.length - 1); + + if (typeof fnMap[chatSiteData.chatModel] === 'function') { + await fnMap[chatSiteData.chatModel](requestPrompt); + } + } catch (err) { + toast({ + title: typeof err === 'string' ? err : '聊天已过期', + status: 'warning', + duration: 5000, + isClosable: true + }); + + setInputVal(storeInput); + + setChatList(newChatList.slice(0, newChatList.length - 2)); + } + }, [ + chatGPTPrompt, + chatList, + chatSiteData, + gpt3ChatPrompt, + inputVal, + isChatting, + scrollToBottom, + toast + ]); + + // 重新编辑 + const reEdit = useCallback(async () => { + if (chatList[chatList.length - 1]?.obj !== 'Human') return; + // 删除数据库最后一句 + delLastMessage(windowId); + const val = chatList[chatList.length - 1].value; + + setInputVal(val); + + setChatList(chatList.slice(0, -1)); + + setTimeout(() => { + if (TextareaDom.current) { + TextareaDom.current.style.height = val.split('\n').length * 22 + 'px'; + } + }, 100); + }, [chatList, windowId]); + + return ( + + {/* 头部 */} + + {chatSiteData?.name} + {/* 重置按键 */} + router.replace(`/chat?chatId=${chatId}`)}> + + + {/* 滚动到底部按键 */} + {/* 滚动到底部 */} + {ChatBox.current && ChatBox.current.scrollHeight > 2 * ChatBox.current.clientHeight && ( + + + + )} + + {/* 聊天内容 */} + + {chatList.map((item, index) => ( + + + + /imgs/modelAvatar.png + + + + + + + ))} + + + {lastWordHuman ? ( + + 对话出现了异常 + + + + + + ) : ( + + {/* 输入框 */} +