From a807f2c557a990da5e4a3e41ceb6a91ded982fa4 Mon Sep 17 00:00:00 2001 From: mozzie Date: Sat, 18 Mar 2023 22:03:17 +0800 Subject: [PATCH] feat: message loadin --- apps/server/package.json | 3 +- .../src/controller/course.controller.ts | 30 +- apps/server/src/controller/user.controller.ts | 16 +- apps/server/src/entity/course.entity.ts | 4 +- apps/server/src/entity/user.entity.ts | 6 +- apps/server/src/service/course.service.ts | 7 + apps/server/src/service/user.service.ts | 3 +- apps/web/package.json | 4 +- apps/web/src/App.tsx | 5 +- apps/web/src/api/{request.ts => axios.ts} | 7 +- apps/web/src/api/index.ts | 6 +- apps/web/src/components/Loading/index.less | 11 + apps/web/src/components/Loading/index.tsx | 10 + apps/web/src/components/Nav/index.tsx | 4 +- apps/web/src/components/Result/index.tsx | 63 +- apps/web/src/hook/index.tsx | 1 - apps/web/src/hook/useAxios.tsx | 44 + apps/web/src/router/Guard.tsx | 3 +- apps/web/src/view/Course/index.tsx | 3 + apps/web/src/view/CourseDetail/index.less | 2 +- apps/web/src/view/CourseDetail/index.tsx | 159 ++-- pnpm-lock.yaml | 808 +++++++++--------- 22 files changed, 686 insertions(+), 513 deletions(-) rename apps/web/src/api/{request.ts => axios.ts} (87%) create mode 100644 apps/web/src/components/Loading/index.less create mode 100644 apps/web/src/components/Loading/index.tsx create mode 100644 apps/web/src/hook/useAxios.tsx diff --git a/apps/server/package.json b/apps/server/package.json index 59a1dab..5d772c9 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -30,7 +30,8 @@ "@alicloud/openapi-client": "0.4.5", "@alicloud/tea-util": "1.4.5", "@alicloud/tea-typescript": "1.8.0", - "object-hash": "3.0.0" + "object-hash": "3.0.0", + "nanoid": "3.3.4" }, "devDependencies": { "@midwayjs/cli": "^2.0.0", diff --git a/apps/server/src/controller/course.controller.ts b/apps/server/src/controller/course.controller.ts index c3d2d3b..fe21575 100644 --- a/apps/server/src/controller/course.controller.ts +++ b/apps/server/src/controller/course.controller.ts @@ -1,9 +1,13 @@ -import { Body, Context, Controller, Inject, Post } from '@midwayjs/core'; +import { Body, Controller, Inject, Post } from '@midwayjs/core'; +import { Context } from '@midwayjs/koa'; import { BizCode } from '../biz/code'; +import { webSign } from '../config/base.config'; import { CourseCreateDTO } from '../dto/course.dto'; import { ChapterService } from '../service/chapter.service'; import { CourseService } from '../service/course.service'; import { GuideService } from '../service/guide.service'; +import { UserService } from '../service/user.service'; +import { decodeToken } from '../util/encrypt'; @Controller('/course') export class CourseController { @@ -19,6 +23,9 @@ export class CourseController { @Inject() guideService: GuideService; + @Inject() + userService: UserService; + @Post('/create') async create(@Body() param: CourseCreateDTO) { try { @@ -50,11 +57,22 @@ export class CourseController { return { code: BizCode.OK, data: courseList }; } - @Post('/chapter/select') - async selectChapterByCourseId(@Body() params) { + @Post('/detail/select') + async selectDetailByCourseId(@Body() params) { const { course_id } = params; - const chapterList = await this.chapterService.select(course_id); - const guide = await this.guideService.select(course_id); - return { code: BizCode.OK, data: { chapterList, guide } }; + try { + const token = this.ctx.cookies.get(webSign); + const { user_login } = decodeToken(token); + const user = await this.userService.select({ user_login }); + // 用户订阅鉴权 + if (!user.user_sub) + return { code: BizCode.AUTH, msg: '无权访问订阅课程' }; + const course = await this.courseService.select({ course_id }); + const chapterList = await this.chapterService.select(course_id); + const guide = await this.guideService.select(course_id); + return { code: BizCode.OK, data: { chapterList, guide, course } }; + } catch (error) { + return { code: BizCode.ERROR, msg: '[error] /chapter/select error' }; + } } } diff --git a/apps/server/src/controller/user.controller.ts b/apps/server/src/controller/user.controller.ts index 714f1fa..6fa731f 100644 --- a/apps/server/src/controller/user.controller.ts +++ b/apps/server/src/controller/user.controller.ts @@ -42,17 +42,9 @@ export class UserController { if (!verifyCode) return { code: BizCode.ERROR, msg: '验证码无效' }; // 查询用户是否存在 const userExist = await this.userService.select(params); - let payload = {}; - if (userExist?.id) { - const { user_pass, ...rest } = userExist; - payload = rest; - } else { - // 新用户注册 - const { user_pass, ...rest } = await this.userService.createUser( - params - ); - payload = rest; - } + const payload = userExist?.id + ? userExist + : await this.userService.createUser(params); const token = createToken({ ...payload, hasLogin: true }); this.ctx.cookies.set(webSign, token, { expires: new Date(Date.now() + webSignExpired), @@ -112,7 +104,7 @@ export class UserController { 60 ); console.log('redis here', res); - // await this.smsService.send({ code, phoneNumbers }); + await this.smsService.send({ code, phoneNumbers }); return { code: BizCode.OK }; } catch (error) { console.log(error); diff --git a/apps/server/src/entity/course.entity.ts b/apps/server/src/entity/course.entity.ts index a1ca1d8..10b251f 100644 --- a/apps/server/src/entity/course.entity.ts +++ b/apps/server/src/entity/course.entity.ts @@ -1,8 +1,8 @@ -import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm'; +import { Column, Entity, PrimaryColumn } from 'typeorm'; @Entity('course') export class Course { - @PrimaryGeneratedColumn('uuid') + @PrimaryColumn() course_id?: string; @Column({ unique: true }) diff --git a/apps/server/src/entity/user.entity.ts b/apps/server/src/entity/user.entity.ts index caa8878..58e4c5a 100644 --- a/apps/server/src/entity/user.entity.ts +++ b/apps/server/src/entity/user.entity.ts @@ -8,9 +8,6 @@ export class User { @Column({ unique: true }) user_login?: string; - @Column() - user_pass?: string; - @Column({ default: '' }) user_email?: string; @@ -25,4 +22,7 @@ export class User { @Column({ default: '' }) user_avatar?: string; + + @Column({ default: false }) + user_sub?: boolean; } diff --git a/apps/server/src/service/course.service.ts b/apps/server/src/service/course.service.ts index 929334e..7211334 100644 --- a/apps/server/src/service/course.service.ts +++ b/apps/server/src/service/course.service.ts @@ -2,6 +2,7 @@ import { Context, Inject, Provide } from '@midwayjs/core'; import { InjectEntityModel } from '@midwayjs/typeorm'; import { Repository } from 'typeorm'; import { Course } from '../entity/course.entity'; +import { nanoid } from 'nanoid'; export interface ICourseCreate { course_title: string; @@ -18,6 +19,7 @@ export class CourseService { courseModel: Repository; async create(course: Course) { + course.course_id = nanoid(13); const courseCreateRes = await this.courseModel.save(course); return courseCreateRes.course_id; } @@ -25,4 +27,9 @@ export class CourseService { async selectAll() { return await this.courseModel.find({ where: { valid: true } }); } + + async select(course: Course) { + const { course_id } = course; + return await this.courseModel.findOne({ where: { course_id } }); + } } diff --git a/apps/server/src/service/user.service.ts b/apps/server/src/service/user.service.ts index 829975c..d8b9524 100644 --- a/apps/server/src/service/user.service.ts +++ b/apps/server/src/service/user.service.ts @@ -1,7 +1,6 @@ import { Provide } from '@midwayjs/core'; import { InjectEntityModel } from '@midwayjs/typeorm'; import { Repository } from 'typeorm'; -import { UserWebAuthDTO } from '../dto/user.dto'; import { User } from '../entity/user.entity'; import hash from 'object-hash'; @@ -10,7 +9,7 @@ export class UserService { @InjectEntityModel(User) userModel: Repository; - async select(p: UserWebAuthDTO): Promise { + async select(p: User): Promise { const { user_login } = p; const user = await this.userModel.findOne({ where: { user_login }, diff --git a/apps/web/package.json b/apps/web/package.json index cd0d23c..f0f3622 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -17,7 +17,9 @@ "@ricons/utils": "0.1.6", "dplayer": "1.27.1", "highlight.js": "11.7.0", - "identicon.js": "2.3.3" + "identicon.js": "2.3.3", + "react-hot-toast": "2.4.0", + "react-spinners": "0.13.8" }, "devDependencies": { "@types/react": "^18.0.27", diff --git a/apps/web/src/App.tsx b/apps/web/src/App.tsx index 46cbe43..bb4c8f6 100644 --- a/apps/web/src/App.tsx +++ b/apps/web/src/App.tsx @@ -4,6 +4,8 @@ import "./assets/base.less"; import Nav from "./components/Nav"; import { commonRouters, lazyRouters } from "./router"; import { Guard } from "./router/Guard"; +import { Toaster } from "react-hot-toast"; +import Loading from "./components/Loading"; function App() { return ( @@ -23,7 +25,7 @@ function App() { key={router.path} path={router.path} element={ - + }> {} } @@ -32,6 +34,7 @@ function App() { 404} /> + ); } diff --git a/apps/web/src/api/request.ts b/apps/web/src/api/axios.ts similarity index 87% rename from apps/web/src/api/request.ts rename to apps/web/src/api/axios.ts index 8c7b420..eaf9aa3 100644 --- a/apps/web/src/api/request.ts +++ b/apps/web/src/api/axios.ts @@ -1,5 +1,5 @@ -// import { message } from "antd"; import axios from "axios"; +import toast from "react-hot-toast"; const config = { baseURL: "", @@ -7,7 +7,7 @@ const config = { headers: {}, }; -const instance = axios.create(config); +export const instance = axios.create(config); instance.interceptors.request.use( (config) => { @@ -36,8 +36,7 @@ instance.interceptors.response.use( // Message.error(`接口: ${response.config.url}, 遇到错误`); break; case 40000: - console.error(msg); - // console.log('登录') + toast.error(msg); break; default: // TODO ... diff --git a/apps/web/src/api/index.ts b/apps/web/src/api/index.ts index be1d5b1..4f27c15 100644 --- a/apps/web/src/api/index.ts +++ b/apps/web/src/api/index.ts @@ -1,10 +1,10 @@ import { ILoginRequest } from "./dto"; -import R from "./request"; +import R from "./axios"; export const getCourseList = () => R.post("/api/course/select/all"); -export const getChapterGuideById = (course_id: string) => - R.post("/api/course/chapter/select", { course_id }); +export const getCourseDetailById = (course_id: string) => + R.post("/api/course/detail/select", { course_id }); export const userLogin = (p: ILoginRequest) => R.post("/api/user/web/auth", { ...p }); diff --git a/apps/web/src/components/Loading/index.less b/apps/web/src/components/Loading/index.less new file mode 100644 index 0000000..a8a125c --- /dev/null +++ b/apps/web/src/components/Loading/index.less @@ -0,0 +1,11 @@ +.loading { + position: fixed; + z-index: 1999401021; + background: #fff; + top: 0; + right: 0; + bottom: 0; + left: 0; + color: #333; + font-size: 40px; +} diff --git a/apps/web/src/components/Loading/index.tsx b/apps/web/src/components/Loading/index.tsx new file mode 100644 index 0000000..15ca2cb --- /dev/null +++ b/apps/web/src/components/Loading/index.tsx @@ -0,0 +1,10 @@ +import "./index.less"; +import BarLoader from "react-spinners/BarLoader"; + +export default function Loading() { + return ( +
+ +
+ ); +} diff --git a/apps/web/src/components/Nav/index.tsx b/apps/web/src/components/Nav/index.tsx index ca59828..208208f 100644 --- a/apps/web/src/components/Nav/index.tsx +++ b/apps/web/src/components/Nav/index.tsx @@ -103,7 +103,7 @@ function Nav() {
-
onClickProfileItem("sub")} > @@ -111,7 +111,7 @@ function Nav() { -
+
*/}
设置 diff --git a/apps/web/src/components/Result/index.tsx b/apps/web/src/components/Result/index.tsx index 4d2d374..0a861fd 100644 --- a/apps/web/src/components/Result/index.tsx +++ b/apps/web/src/components/Result/index.tsx @@ -3,21 +3,50 @@ import FlashOff24Regular from "@ricons/fluent/FlashOff24Regular"; import { Icon } from "@ricons/utils"; import { useNavigate } from "react-router-dom"; -export default function Result() { - const navigate = useNavigate(); - - return ( -
- - - -
访问被禁止
- -
- ); +interface IProps { + code: 403 | 404 | 405; +} + +export default function Result(props: IProps) { + const navigate = useNavigate(); + const table = { + 403: ( +
+ + + +
访问被禁止
+ +
+ ), + 404: ( +
+ + + +
Ooops! 资源被怪兽吃了~
+ +
+ ), + 405: ( +
+ + + +
请先登录
+ +
+ ), + }; + + return <>{table[props.code]}; } diff --git a/apps/web/src/hook/index.tsx b/apps/web/src/hook/index.tsx index bfff3fa..a998b48 100644 --- a/apps/web/src/hook/index.tsx +++ b/apps/web/src/hook/index.tsx @@ -1,5 +1,4 @@ import { useCallback, useEffect, useState } from "react"; - /** * 挂载 */ diff --git a/apps/web/src/hook/useAxios.tsx b/apps/web/src/hook/useAxios.tsx new file mode 100644 index 0000000..d937b7c --- /dev/null +++ b/apps/web/src/hook/useAxios.tsx @@ -0,0 +1,44 @@ +import { AxiosInstance, AxiosRequestConfig, AxiosResponse } from "axios"; +import { useEffect, useState } from "react"; +import { instance } from "../api/axios"; +import toast from "react-hot-toast"; + +interface IProps { + axiosInstance?: AxiosInstance; + method?: "get" | "post" | "put" | "delete"; + url: string; + requestConfig?: AxiosRequestConfig; +} + +export const useAxios = (props: IProps) => { + const [response, setResponse] = useState>(); + const [loading, setLoading] = useState(true); + const [error, setError] = useState(); + const { + axiosInstance = instance, + method = "post", + url, + requestConfig = {}, + } = props; + + useEffect(() => { + const controller = new AbortController(); + const fetchData = async () => { + try { + const res = await axiosInstance[method](url, { + ...requestConfig, + signal: controller.signal, + }); + setResponse(res); + } catch (error) { + setError(error); + } finally { + setLoading(false); + } + }; + fetchData(); + return controller.abort(); + }, []); + + return [response, loading, error]; +}; diff --git a/apps/web/src/router/Guard.tsx b/apps/web/src/router/Guard.tsx index 4f3d39e..78c5b29 100644 --- a/apps/web/src/router/Guard.tsx +++ b/apps/web/src/router/Guard.tsx @@ -23,6 +23,7 @@ export const Guard = (props: IGuardProps) => { if (!user) fetchUser(); }, [location.pathname]); - if (!sign && needAuth) return ; + if (!sign && needAuth) return ; + return props.children; }; diff --git a/apps/web/src/view/Course/index.tsx b/apps/web/src/view/Course/index.tsx index 463071b..efb2079 100644 --- a/apps/web/src/view/Course/index.tsx +++ b/apps/web/src/view/Course/index.tsx @@ -70,6 +70,9 @@ export default function Index() { setTimeline({ top }); }; + /** + * 点击课程 + */ const onClickCourseItem = (d: any) => { navigate(`/course/detail/${d.course_id}`); }; diff --git a/apps/web/src/view/CourseDetail/index.less b/apps/web/src/view/CourseDetail/index.less index 63935aa..43991ad 100644 --- a/apps/web/src/view/CourseDetail/index.less +++ b/apps/web/src/view/CourseDetail/index.less @@ -5,6 +5,7 @@ bottom: 0; width: 300px; padding: 20px; + overflow-y: auto; border-right: 1px solid var(--color-border-2); > h2 { @@ -44,7 +45,6 @@ } .content { position: fixed; - left: 300px; right: 0; top: 60px; bottom: 0; diff --git a/apps/web/src/view/CourseDetail/index.tsx b/apps/web/src/view/CourseDetail/index.tsx index f7c6c68..7bc3778 100644 --- a/apps/web/src/view/CourseDetail/index.tsx +++ b/apps/web/src/view/CourseDetail/index.tsx @@ -4,57 +4,70 @@ import Guide from "./components/Guide"; import { useMount } from "../../hook"; import Player from "./components/DPlayer"; import { useParams } from "react-router-dom"; -import { getChapterGuideById } from "../../api"; +import { getCourseDetailById } from "../../api"; import { ms2Time } from "./util"; import Result from "../../components/Result"; import PlayCircle20Regular from "@ricons/fluent/PlayCircle20Regular"; -import BookLetter20Regular from "@ricons/fluent/BookLetter20Regular"; import { Icon } from "@ricons/utils"; +import dayjs from "dayjs"; function CourseDetail() { const { id: course_id = "" } = useParams(); const [toc, setToc] = useState([]); + const [course, setCourse] = useState({}); const [view, setView] = useState(null); useMount(() => { if (!!course_id) - getChapterGuideById(course_id).then((res) => { - const { data } = res; - const processToc = data?.chapterList.map((item: any) => { - return { - title: item.chapter_title, - level: +item.chapter_level, - time: ms2Time(+item.media_time), - icon: !!item.media_url ? ( - - - - ) : null, - active: false, - view: ( - + getCourseDetailById(course_id).then((res: any) => { + const { data, code } = res; + if (!data) setToc([]); + if (code === 10000) { + const processToc = data?.chapterList.map((item: any) => { + return { + title: item.chapter_title, + level: +item.chapter_level, + time: ms2Time(+item.media_time), + icon: !!item.media_url ? ( + + + + ) : null, + active: false, + view: ( + + ), + }; + }); + const composeToc = [ + { + title: "导读", + level: 1, + time: "", + }, + { + title: "介绍 / 下载", + level: 2, + time: "", + active: true, + view: , + }, + ...processToc, + ] as any; + const { course } = data; + setCourse({ + ...course, + course_createtime: dayjs(+course.course_createtime).format( + "YYYY-MM-DD" ), - }; - }); - const append = [ - { - title: "导读", - level: 1, - time: "", - }, - { - title: "介绍 / 下载", - level: 2, - time: "", - active: true, - view: , - }, - ...processToc, - ]; - setToc(append as any); - setView(); + }); + setToc(composeToc); + setView(); + } else if (code === 40000) { + setView(); + } }); }); @@ -62,45 +75,49 @@ function CourseDetail() { setToc((t: any) => t.map((p: any) => ({ ...p, active: i.title === p.title })) ); - setView(i.view ?? ); + setView(i.view ?? ); }; return (
- -
{view}
+ ); + } else if (i.level === 2) { + return ( +
onclickItem(i)} + > +
+ {i.icon} + {i.title} +
+ {i.time} +
+ ); + } + })} +
+ + )} +
0 ? "300px" : 0 }}> + {view} +
); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0dca55a..7742b51 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -162,6 +162,7 @@ importers: mongoose: ^6.0.7 mwts: ^1.0.5 mysql2: 3.0.1 + nanoid: 3.3.4 object-hash: 3.0.0 tencentcloud-sdk-nodejs: 4.0.552 typeorm: ~0.3.0 @@ -191,6 +192,7 @@ importers: jsonwebtoken: registry.npmmirror.com/jsonwebtoken/9.0.0 mongoose: registry.npmmirror.com/mongoose/6.9.1 mysql2: registry.npmmirror.com/mysql2/3.0.1 + nanoid: 3.3.4 object-hash: registry.npmmirror.com/object-hash/3.0.0 tencentcloud-sdk-nodejs: 4.0.552 typeorm: registry.npmmirror.com/typeorm/0.3.11_mysql2@3.0.1 @@ -223,7 +225,9 @@ importers: less: ^4.1.3 react: ^18.2.0 react-dom: ^18.2.0 + react-hot-toast: 2.4.0 react-router-dom: 6.8.0 + react-spinners: 0.13.8 typescript: ^4.9.3 vite: ^4.1.0 vite-tsconfig-paths: 4.0.5 @@ -236,7 +240,9 @@ importers: less: 4.1.3 react: 18.2.0 react-dom: 18.2.0_react@18.2.0 + react-hot-toast: 2.4.0_biqbaboplfbrettd7655fr4n2y react-router-dom: 6.8.0_biqbaboplfbrettd7655fr4n2y + react-spinners: 0.13.8_biqbaboplfbrettd7655fr4n2y devDependencies: '@types/dplayer': 1.25.2 '@types/identicon.js': registry.npmmirror.com/@types/identicon.js/2.3.1 @@ -271,6 +277,37 @@ packages: '@jridgewell/trace-mapping': registry.npmmirror.com/@jridgewell/trace-mapping/0.3.17 dev: true + /@aws-sdk/credential-providers/3.272.0: + resolution: {integrity: sha512-ucd6Xq6aBMf+nM4uz5zkjL11mwaE5BV1Q4hkulaGu2v1dRA8n6zhLJk/sb4hOJ7leelqMJMErlbQ2T3MkYvlJQ==} + engines: {node: '>=14.0.0'} + requiresBuild: true + dependencies: + '@aws-sdk/client-cognito-identity': registry.npmmirror.com/@aws-sdk/client-cognito-identity/3.272.0 + '@aws-sdk/client-sso': registry.npmmirror.com/@aws-sdk/client-sso/3.272.0 + '@aws-sdk/client-sts': registry.npmmirror.com/@aws-sdk/client-sts/3.272.0 + '@aws-sdk/credential-provider-cognito-identity': registry.npmmirror.com/@aws-sdk/credential-provider-cognito-identity/3.272.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.272.0 + '@aws-sdk/credential-provider-node': registry.npmmirror.com/@aws-sdk/credential-provider-node/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.272.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 + optional: true + + /@babel/code-frame/7.18.6: + resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': registry.npmmirror.com/@babel/highlight/7.18.6 + dev: true + /@babel/compat-data/7.20.14: resolution: {integrity: sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==} engines: {node: '>=6.9.0'} @@ -1329,6 +1366,204 @@ packages: resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==} dev: false + /@esbuild/android-arm/0.16.17: + resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm64/0.16.17: + resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64/0.16.17: + resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64/0.16.17: + resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64/0.16.17: + resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64/0.16.17: + resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64/0.16.17: + resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm/0.16.17: + resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64/0.16.17: + resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32/0.16.17: + resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64/0.16.17: + resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el/0.16.17: + resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64/0.16.17: + resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64/0.16.17: + resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x/0.16.17: + resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64/0.16.17: + resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64/0.16.17: + resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64/0.16.17: + resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64/0.16.17: + resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64/0.16.17: + resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32/0.16.17: + resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64/0.16.17: + resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@jridgewell/resolve-uri/3.1.0: resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} engines: {node: '>=6.0.0'} @@ -1587,34 +1822,42 @@ packages: - debug dev: false + /errno/0.1.8: + resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==} + hasBin: true + requiresBuild: true + dependencies: + prr: 1.0.1 + optional: true + /esbuild/0.16.17: resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': registry.npmmirror.com/@esbuild/android-arm/0.16.17 - '@esbuild/android-arm64': registry.npmmirror.com/@esbuild/android-arm64/0.16.17 - '@esbuild/android-x64': registry.npmmirror.com/@esbuild/android-x64/0.16.17 - '@esbuild/darwin-arm64': registry.npmmirror.com/@esbuild/darwin-arm64/0.16.17 - '@esbuild/darwin-x64': registry.npmmirror.com/@esbuild/darwin-x64/0.16.17 - '@esbuild/freebsd-arm64': registry.npmmirror.com/@esbuild/freebsd-arm64/0.16.17 - '@esbuild/freebsd-x64': registry.npmmirror.com/@esbuild/freebsd-x64/0.16.17 - '@esbuild/linux-arm': registry.npmmirror.com/@esbuild/linux-arm/0.16.17 - '@esbuild/linux-arm64': registry.npmmirror.com/@esbuild/linux-arm64/0.16.17 - '@esbuild/linux-ia32': registry.npmmirror.com/@esbuild/linux-ia32/0.16.17 - '@esbuild/linux-loong64': registry.npmmirror.com/@esbuild/linux-loong64/0.16.17 - '@esbuild/linux-mips64el': registry.npmmirror.com/@esbuild/linux-mips64el/0.16.17 - '@esbuild/linux-ppc64': registry.npmmirror.com/@esbuild/linux-ppc64/0.16.17 - '@esbuild/linux-riscv64': registry.npmmirror.com/@esbuild/linux-riscv64/0.16.17 - '@esbuild/linux-s390x': registry.npmmirror.com/@esbuild/linux-s390x/0.16.17 - '@esbuild/linux-x64': registry.npmmirror.com/@esbuild/linux-x64/0.16.17 - '@esbuild/netbsd-x64': registry.npmmirror.com/@esbuild/netbsd-x64/0.16.17 - '@esbuild/openbsd-x64': registry.npmmirror.com/@esbuild/openbsd-x64/0.16.17 - '@esbuild/sunos-x64': registry.npmmirror.com/@esbuild/sunos-x64/0.16.17 - '@esbuild/win32-arm64': registry.npmmirror.com/@esbuild/win32-arm64/0.16.17 - '@esbuild/win32-ia32': registry.npmmirror.com/@esbuild/win32-ia32/0.16.17 - '@esbuild/win32-x64': registry.npmmirror.com/@esbuild/win32-x64/0.16.17 + '@esbuild/android-arm': 0.16.17 + '@esbuild/android-arm64': 0.16.17 + '@esbuild/android-x64': 0.16.17 + '@esbuild/darwin-arm64': 0.16.17 + '@esbuild/darwin-x64': 0.16.17 + '@esbuild/freebsd-arm64': 0.16.17 + '@esbuild/freebsd-x64': 0.16.17 + '@esbuild/linux-arm': 0.16.17 + '@esbuild/linux-arm64': 0.16.17 + '@esbuild/linux-ia32': 0.16.17 + '@esbuild/linux-loong64': 0.16.17 + '@esbuild/linux-mips64el': 0.16.17 + '@esbuild/linux-ppc64': 0.16.17 + '@esbuild/linux-riscv64': 0.16.17 + '@esbuild/linux-s390x': 0.16.17 + '@esbuild/linux-x64': 0.16.17 + '@esbuild/netbsd-x64': 0.16.17 + '@esbuild/openbsd-x64': 0.16.17 + '@esbuild/sunos-x64': 0.16.17 + '@esbuild/win32-arm64': 0.16.17 + '@esbuild/win32-ia32': 0.16.17 + '@esbuild/win32-x64': 0.16.17 dev: true /esutils/2.0.3: @@ -1649,6 +1892,14 @@ packages: mime-types: 2.1.35 dev: true + /fsevents/2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + /function-bind/1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} @@ -1673,6 +1924,15 @@ packages: resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} dev: true + /goober/2.1.12: + resolution: {integrity: sha512-yXHAvO08FU1JgTXX6Zn6sYCUFfB/OJSX8HHjDSgerZHZmFKAb08cykp5LBw5QnmyMcZyPRMqkdyHUSSzge788Q==} + peerDependencies: + csstype: ^3.0.10 + dev: false + + /graceful-fs/4.2.10: + resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} + /has/1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} engines: {node: '>= 0.4.0'} @@ -1698,6 +1958,13 @@ packages: - supports-color dev: false + /image-size/0.5.5: + resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==} + engines: {node: '>=0.10.0'} + hasBin: true + requiresBuild: true + optional: true + /is-core-module/2.11.0: resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} dependencies: @@ -1762,13 +2029,13 @@ packages: parse-node-version: 1.0.1 tslib: 2.5.0 optionalDependencies: - errno: registry.npmmirror.com/errno/0.1.8 - graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10 - image-size: registry.npmmirror.com/image-size/0.5.5 - make-dir: registry.npmmirror.com/make-dir/2.1.0 - mime: registry.npmmirror.com/mime/1.6.0 - needle: registry.npmmirror.com/needle/3.2.0 - source-map: registry.npmmirror.com/source-map/0.6.1 + errno: 0.1.8 + graceful-fs: 4.2.10 + image-size: 0.5.5 + make-dir: 2.1.0 + mime: 1.6.0 + needle: 3.2.0 + source-map: 0.6.1 transitivePeerDependencies: - supports-color @@ -1790,6 +2057,21 @@ packages: '@jridgewell/sourcemap-codec': registry.npmmirror.com/@jridgewell/sourcemap-codec/1.4.14 dev: true + /make-dir/2.1.0: + resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} + engines: {node: '>=6'} + requiresBuild: true + dependencies: + pify: 4.0.1 + semver: 5.7.1 + optional: true + + /make-dir/3.1.0: + resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} + engines: {node: '>=8'} + dependencies: + semver: registry.npmmirror.com/semver/6.3.0 + /mime-db/1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -1801,6 +2083,31 @@ packages: mime-db: 1.52.0 dev: true + /mime/1.6.0: + resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} + engines: {node: '>=4'} + hasBin: true + requiresBuild: true + optional: true + + /nanoid/3.3.4: + resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + /needle/3.2.0: + resolution: {integrity: sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==} + engines: {node: '>= 4.4.x'} + hasBin: true + requiresBuild: true + dependencies: + debug: registry.npmmirror.com/debug/3.2.7 + iconv-lite: registry.npmmirror.com/iconv-lite/0.6.3 + sax: registry.npmmirror.com/sax/1.2.4 + transitivePeerDependencies: + - supports-color + optional: true + /node-fetch/2.6.9: resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} engines: {node: 4.x || >=6.0.0} @@ -1852,7 +2159,7 @@ packages: resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: registry.npmmirror.com/nanoid/3.3.4 + nanoid: 3.3.4 picocolors: 1.0.0 source-map-js: 1.0.2 dev: true @@ -1878,6 +2185,20 @@ packages: scheduler: 0.23.0 dev: false + /react-hot-toast/2.4.0_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-qnnVbXropKuwUpriVVosgo8QrB+IaPJCpL8oBI6Ov84uvHZ5QQcTp2qg6ku2wNfgJl6rlQXJIQU5q+5lmPOutA==} + engines: {node: '>=10'} + peerDependencies: + react: '>=16' + react-dom: '>=16' + dependencies: + goober: 2.1.12 + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + transitivePeerDependencies: + - csstype + dev: false + /react-refresh/0.14.0: resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} engines: {node: '>=0.10.0'} @@ -1906,6 +2227,16 @@ packages: react: 18.2.0 dev: false + /react-spinners/0.13.8_biqbaboplfbrettd7655fr4n2y: + resolution: {integrity: sha512-3e+k56lUkPj0vb5NDXPVFAOkPC//XyhKPJjvcGjyMNPWsBKpplfeyialP74G7H7+It7KzhtET+MvGqbKgAqpZA==} + peerDependencies: + react: ^16.0.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.0.0 || ^17.0.0 || ^18.0.0 + dependencies: + react: 18.2.0 + react-dom: 18.2.0_react@18.2.0 + dev: false + /react/18.2.0: resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} engines: {node: '>=0.10.0'} @@ -1967,9 +2298,17 @@ packages: engines: {node: '>=14.18.0', npm: '>=8.0.0'} hasBin: true optionalDependencies: - fsevents: registry.npmmirror.com/fsevents/2.3.2 + fsevents: 2.3.2 dev: true + /saslprep/1.0.3: + resolution: {integrity: sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==} + engines: {node: '>=6'} + requiresBuild: true + dependencies: + sparse-bitfield: registry.npmmirror.com/sparse-bitfield/3.0.3 + optional: true + /scheduler/0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: @@ -1990,6 +2329,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /source-map/0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + /strip-json-comments/2.0.1: resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} @@ -2106,7 +2449,7 @@ packages: resolve: 1.22.1 rollup: 3.17.2 optionalDependencies: - fsevents: registry.npmmirror.com/fsevents/2.3.2 + fsevents: 2.3.2 dev: true registry.npmmirror.com/@alicloud/credentials/2.2.6: @@ -2664,32 +3007,6 @@ packages: tslib: registry.npmmirror.com/tslib/2.5.0 optional: true - registry.npmmirror.com/@aws-sdk/credential-providers/3.272.0: - resolution: {integrity: sha512-ucd6Xq6aBMf+nM4uz5zkjL11mwaE5BV1Q4hkulaGu2v1dRA8n6zhLJk/sb4hOJ7leelqMJMErlbQ2T3MkYvlJQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@aws-sdk/credential-providers/-/credential-providers-3.272.0.tgz} - name: '@aws-sdk/credential-providers' - version: 3.272.0 - engines: {node: '>=14.0.0'} - requiresBuild: true - dependencies: - '@aws-sdk/client-cognito-identity': registry.npmmirror.com/@aws-sdk/client-cognito-identity/3.272.0 - '@aws-sdk/client-sso': registry.npmmirror.com/@aws-sdk/client-sso/3.272.0 - '@aws-sdk/client-sts': registry.npmmirror.com/@aws-sdk/client-sts/3.272.0 - '@aws-sdk/credential-provider-cognito-identity': registry.npmmirror.com/@aws-sdk/credential-provider-cognito-identity/3.272.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.272.0 - '@aws-sdk/credential-provider-node': registry.npmmirror.com/@aws-sdk/credential-provider-node/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.272.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 - 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' @@ -3518,248 +3835,6 @@ packages: version: 0.7.5 dev: false - registry.npmmirror.com/@esbuild/android-arm/0.16.17: - resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.16.17.tgz} - name: '@esbuild/android-arm' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [arm] - os: [android] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/android-arm64/0.16.17: - resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz} - name: '@esbuild/android-arm64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/android-x64/0.16.17: - resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.16.17.tgz} - name: '@esbuild/android-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [android] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/darwin-arm64/0.16.17: - resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz} - name: '@esbuild/darwin-arm64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/darwin-x64/0.16.17: - resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz} - name: '@esbuild/darwin-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/freebsd-arm64/0.16.17: - resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz} - name: '@esbuild/freebsd-arm64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/freebsd-x64/0.16.17: - resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz} - name: '@esbuild/freebsd-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-arm/0.16.17: - resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz} - name: '@esbuild/linux-arm' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-arm64/0.16.17: - resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz} - name: '@esbuild/linux-arm64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-ia32/0.16.17: - resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz} - name: '@esbuild/linux-ia32' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-loong64/0.16.17: - resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz} - name: '@esbuild/linux-loong64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-mips64el/0.16.17: - resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz} - name: '@esbuild/linux-mips64el' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-ppc64/0.16.17: - resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz} - name: '@esbuild/linux-ppc64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-riscv64/0.16.17: - resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz} - name: '@esbuild/linux-riscv64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-s390x/0.16.17: - resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz} - name: '@esbuild/linux-s390x' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/linux-x64/0.16.17: - resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz} - name: '@esbuild/linux-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/netbsd-x64/0.16.17: - resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz} - name: '@esbuild/netbsd-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/openbsd-x64/0.16.17: - resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz} - name: '@esbuild/openbsd-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/sunos-x64/0.16.17: - resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz} - name: '@esbuild/sunos-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/win32-arm64/0.16.17: - resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz} - name: '@esbuild/win32-arm64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/win32-ia32/0.16.17: - resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz} - name: '@esbuild/win32-ia32' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: true - optional: true - - registry.npmmirror.com/@esbuild/win32-x64/0.16.17: - resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz} - name: '@esbuild/win32-x64' - version: 0.16.17 - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: true - optional: true - registry.npmmirror.com/@eslint/eslintrc/0.4.3: resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz} name: '@eslint/eslintrc' @@ -6218,7 +6293,7 @@ packages: 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 + fsevents: 2.3.2 dev: true registry.npmmirror.com/chownr/1.1.4: @@ -6513,7 +6588,7 @@ packages: dot-prop: registry.npmmirror.com/dot-prop/6.0.1 env-paths: registry.npmmirror.com/env-paths/2.2.1 json-schema-typed: registry.npmmirror.com/json-schema-typed/7.0.3 - make-dir: registry.npmmirror.com/make-dir/3.1.0 + make-dir: 3.1.0 onetime: registry.npmmirror.com/onetime/5.1.2 pkg-up: registry.npmmirror.com/pkg-up/3.1.0 semver: registry.npmmirror.com/semver/7.3.8 @@ -6526,8 +6601,8 @@ packages: engines: {node: '>=8'} dependencies: dot-prop: registry.npmmirror.com/dot-prop/5.3.0 - graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10 - make-dir: registry.npmmirror.com/make-dir/3.1.0 + graceful-fs: 4.2.10 + make-dir: 3.1.0 unique-string: registry.npmmirror.com/unique-string/2.0.0 write-file-atomic: registry.npmmirror.com/write-file-atomic/3.0.3 xdg-basedir: registry.npmmirror.com/xdg-basedir/4.0.0 @@ -6747,7 +6822,7 @@ packages: engines: {node: '>=8.0.0'} dependencies: mdn-data: registry.npmmirror.com/mdn-data/2.0.14 - source-map: registry.npmmirror.com/source-map/0.6.1 + source-map: 0.6.1 dev: true registry.npmmirror.com/css-what/6.1.0: @@ -7267,6 +7342,7 @@ packages: requiresBuild: true dependencies: prr: 1.0.1 + dev: true optional: true registry.npmmirror.com/error-ex/1.3.2: @@ -7305,28 +7381,28 @@ packages: hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': registry.npmmirror.com/@esbuild/android-arm/0.16.17 - '@esbuild/android-arm64': registry.npmmirror.com/@esbuild/android-arm64/0.16.17 - '@esbuild/android-x64': registry.npmmirror.com/@esbuild/android-x64/0.16.17 - '@esbuild/darwin-arm64': registry.npmmirror.com/@esbuild/darwin-arm64/0.16.17 - '@esbuild/darwin-x64': registry.npmmirror.com/@esbuild/darwin-x64/0.16.17 - '@esbuild/freebsd-arm64': registry.npmmirror.com/@esbuild/freebsd-arm64/0.16.17 - '@esbuild/freebsd-x64': registry.npmmirror.com/@esbuild/freebsd-x64/0.16.17 - '@esbuild/linux-arm': registry.npmmirror.com/@esbuild/linux-arm/0.16.17 - '@esbuild/linux-arm64': registry.npmmirror.com/@esbuild/linux-arm64/0.16.17 - '@esbuild/linux-ia32': registry.npmmirror.com/@esbuild/linux-ia32/0.16.17 - '@esbuild/linux-loong64': registry.npmmirror.com/@esbuild/linux-loong64/0.16.17 - '@esbuild/linux-mips64el': registry.npmmirror.com/@esbuild/linux-mips64el/0.16.17 - '@esbuild/linux-ppc64': registry.npmmirror.com/@esbuild/linux-ppc64/0.16.17 - '@esbuild/linux-riscv64': registry.npmmirror.com/@esbuild/linux-riscv64/0.16.17 - '@esbuild/linux-s390x': registry.npmmirror.com/@esbuild/linux-s390x/0.16.17 - '@esbuild/linux-x64': registry.npmmirror.com/@esbuild/linux-x64/0.16.17 - '@esbuild/netbsd-x64': registry.npmmirror.com/@esbuild/netbsd-x64/0.16.17 - '@esbuild/openbsd-x64': registry.npmmirror.com/@esbuild/openbsd-x64/0.16.17 - '@esbuild/sunos-x64': registry.npmmirror.com/@esbuild/sunos-x64/0.16.17 - '@esbuild/win32-arm64': registry.npmmirror.com/@esbuild/win32-arm64/0.16.17 - '@esbuild/win32-ia32': registry.npmmirror.com/@esbuild/win32-ia32/0.16.17 - '@esbuild/win32-x64': registry.npmmirror.com/@esbuild/win32-x64/0.16.17 + '@esbuild/android-arm': 0.16.17 + '@esbuild/android-arm64': 0.16.17 + '@esbuild/android-x64': 0.16.17 + '@esbuild/darwin-arm64': 0.16.17 + '@esbuild/darwin-x64': 0.16.17 + '@esbuild/freebsd-arm64': 0.16.17 + '@esbuild/freebsd-x64': 0.16.17 + '@esbuild/linux-arm': 0.16.17 + '@esbuild/linux-arm64': 0.16.17 + '@esbuild/linux-ia32': 0.16.17 + '@esbuild/linux-loong64': 0.16.17 + '@esbuild/linux-mips64el': 0.16.17 + '@esbuild/linux-ppc64': 0.16.17 + '@esbuild/linux-riscv64': 0.16.17 + '@esbuild/linux-s390x': 0.16.17 + '@esbuild/linux-x64': 0.16.17 + '@esbuild/netbsd-x64': 0.16.17 + '@esbuild/openbsd-x64': 0.16.17 + '@esbuild/sunos-x64': 0.16.17 + '@esbuild/win32-arm64': 0.16.17 + '@esbuild/win32-ia32': 0.16.17 + '@esbuild/win32-x64': 0.16.17 dev: true registry.npmmirror.com/escalade/3.1.1: @@ -7919,7 +7995,7 @@ packages: name: fs-write-stream-atomic version: 1.0.10 dependencies: - graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10 + graceful-fs: 4.2.10 iferr: registry.npmmirror.com/iferr/0.1.5 imurmurhash: registry.npmmirror.com/imurmurhash/0.1.4 readable-stream: registry.npmmirror.com/readable-stream/2.3.7 @@ -7930,16 +8006,6 @@ packages: name: fs.realpath version: 1.0.0 - 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: true - 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 @@ -8171,6 +8237,7 @@ packages: resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz} name: graceful-fs version: 4.2.10 + dev: true registry.npmmirror.com/grapheme-splitter/1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz} @@ -8432,6 +8499,7 @@ packages: engines: {node: '>=0.10.0'} hasBin: true requiresBuild: true + dev: true optional: true registry.npmmirror.com/immutable/4.2.4: @@ -8977,7 +9045,7 @@ packages: name: jsonfile version: 4.0.0 optionalDependencies: - graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10 + graceful-fs: 4.2.10 dev: true registry.npmmirror.com/jsonwebtoken/9.0.0: @@ -9206,13 +9274,13 @@ packages: parse-node-version: registry.npmmirror.com/parse-node-version/1.0.1 tslib: registry.npmmirror.com/tslib/2.5.0 optionalDependencies: - errno: registry.npmmirror.com/errno/0.1.8 - graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10 - image-size: registry.npmmirror.com/image-size/0.5.5 - make-dir: registry.npmmirror.com/make-dir/2.1.0 - mime: registry.npmmirror.com/mime/1.6.0 - needle: registry.npmmirror.com/needle/3.2.0 - source-map: registry.npmmirror.com/source-map/0.6.1 + errno: 0.1.8 + graceful-fs: 4.2.10 + image-size: 0.5.5 + make-dir: 2.1.0 + mime: 1.6.0 + needle: 3.2.0 + source-map: 0.6.1 transitivePeerDependencies: - supports-color @@ -9445,14 +9513,7 @@ packages: dependencies: pify: 4.0.1 semver: 5.7.1 - - registry.npmmirror.com/make-dir/3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-dir/-/make-dir-3.1.0.tgz} - name: make-dir - version: 3.1.0 - engines: {node: '>=8'} - dependencies: - semver: registry.npmmirror.com/semver/6.3.0 + dev: true registry.npmmirror.com/make-error/1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-error/-/make-error-1.3.6.tgz} @@ -9571,6 +9632,7 @@ packages: engines: {node: '>=4'} hasBin: true requiresBuild: true + dev: true optional: true registry.npmmirror.com/mime/2.6.0: @@ -9713,8 +9775,8 @@ packages: 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.272.0 - saslprep: registry.npmmirror.com/saslprep/1.0.3 + '@aws-sdk/credential-providers': 3.272.0 + saslprep: 1.0.3 transitivePeerDependencies: - aws-crt @@ -9888,21 +9950,6 @@ packages: hasBin: true dev: true - registry.npmmirror.com/needle/3.2.0: - resolution: {integrity: sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/needle/-/needle-3.2.0.tgz} - name: needle - version: 3.2.0 - engines: {node: '>= 4.4.x'} - hasBin: true - requiresBuild: true - dependencies: - debug: registry.npmmirror.com/debug/3.2.7 - iconv-lite: registry.npmmirror.com/iconv-lite/0.6.3 - sax: registry.npmmirror.com/sax/1.2.4 - transitivePeerDependencies: - - supports-color - optional: true - registry.npmmirror.com/negotiator/0.6.3: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz} name: negotiator @@ -10198,7 +10245,7 @@ packages: version: 5.2.0 engines: {node: '>=8'} dependencies: - '@babel/code-frame': registry.npmmirror.com/@babel/code-frame/7.18.6 + '@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 @@ -12056,7 +12103,7 @@ packages: rollup: registry.npmmirror.com/rollup/3.17.2 typescript: registry.npmmirror.com/typescript/4.9.5 optionalDependencies: - '@babel/code-frame': registry.npmmirror.com/@babel/code-frame/7.18.6 + '@babel/code-frame': 7.18.6 dev: true registry.npmmirror.com/rollup-plugin-postcss/4.0.2_postcss@8.4.21: @@ -12101,7 +12148,7 @@ packages: engines: {node: '>=14.18.0', npm: '>=8.0.0'} hasBin: true optionalDependencies: - fsevents: registry.npmmirror.com/fsevents/2.3.2 + fsevents: 2.3.2 dev: true registry.npmmirror.com/run-async/2.4.1: @@ -12165,16 +12212,6 @@ packages: name: safer-buffer version: 2.1.2 - 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 - optional: true - registry.npmmirror.com/sass-loader/13.2.0_sass@1.58.3+webpack@5.75.0: resolution: {integrity: sha512-JWEp48djQA4nbZxmgC02/Wh0eroSUutulROUusYJO9P9zltRbNN80JCBHqRGzjd4cmZCa/r88xgfkjGD0TXsHg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sass-loader/-/sass-loader-13.2.0.tgz} id: registry.npmmirror.com/sass-loader/13.2.0 @@ -12498,6 +12535,7 @@ packages: name: source-map version: 0.6.1 engines: {node: '>=0.10.0'} + dev: true 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} @@ -13589,7 +13627,7 @@ packages: resolve: registry.npmmirror.com/resolve/1.22.1 rollup: registry.npmmirror.com/rollup/3.17.2 optionalDependencies: - fsevents: registry.npmmirror.com/fsevents/2.3.2 + fsevents: 2.3.2 dev: true registry.npmmirror.com/vod-node-sdk/1.1.0: