From 1b06aa68942c1a02eaba6d34145fb81a53414f7b Mon Sep 17 00:00:00 2001 From: Tristan Yang Date: Mon, 10 Jul 2023 18:18:21 +0800 Subject: [PATCH] refactor: upgrade wavesurfer.js --- .vscode/settings.json | 1 + package.json | 37 ++- src/components/VoiceMessage.tsx | 100 +++---- yarn.lock | 464 ++++++++++++++++++++++---------- 4 files changed, 382 insertions(+), 220 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 7e9311fa..24910c54 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -52,6 +52,7 @@ "upserted", "upserting", "vocechat", + "wavesurfer", "webrowse", "Wechat" ], diff --git a/package.json b/package.json index 660564c1..bff23046 100644 --- a/package.json +++ b/package.json @@ -14,12 +14,12 @@ "@toast-ui/editor": "^3.2.2", "@toast-ui/editor-plugin-code-syntax-highlight": "^3.1.0", "@toast-ui/react-editor": "^3.2.3", - "@types/node": "^20.3.2", + "@types/node": "^20.4.1", "@types/react": "^18.2.14", "@types/react-dom": "^18.2.6", "@udecode/plate": "16.8", "@uiball/loaders": "^1.3.0", - "agora-rtc-sdk-ng": "^4.18.0", + "agora-rtc-sdk-ng": "^4.18.1", "bfj": "^7.0.2", "broadcast-channel": "^5.1.0", "browserslist": "^4.21.9", @@ -27,18 +27,18 @@ "copy-image-clipboard": "^2.1.2", "css-loader": "^6.8.1", "css-minimizer-webpack-plugin": "^5.0.1", - "dayjs": "^1.11.8", + "dayjs": "^1.11.9", "dotenv": "^16.3.1", "dotenv-expand": "^10.0.0", "emoji-mart": "5.5.2", - "eslint": "^8.43.0", + "eslint": "^8.44.0", "file-loader": "^6.2.0", "firebase": "^9.23.0", - "framer-motion": "^10.12.17", + "framer-motion": "^10.12.18", "fs-extra": "^11.1.1", "heic2any": "^0.0.4", "html-webpack-plugin": "^5.5.3", - "i18next": "^23.2.3", + "i18next": "^23.2.8", "i18next-browser-languagedetector": "^7.1.0", "i18next-http-backend": "^2.2.1", "linkify-plugin-mention": "^4.1.1", @@ -61,10 +61,10 @@ "react-i18next": "^13.0.1", "react-redux": "^8.1.1", "react-refresh": "0.14.0", - "react-router-dom": "^6.14.0", + "react-router-dom": "^6.14.1", "react-scripts": "^5.0.1", "react-syntax-highlighter": "^15.5.0", - "react-textarea-autosize": "^8.5.0", + "react-textarea-autosize": "^8.5.2", "react-use-wizard": "^2.2.1", "react-viewport-list": "^7.1.1", "react-virtuoso": "^4.3.11", @@ -78,9 +78,9 @@ "styled-components": "^5.3.11", "terser-webpack-plugin": "^5.3.9", "tippy.js": "^6.3.7", - "typescript": "^5.1.3", - "wavesurfer.js": "^6.6.4", - "webpack": "^5.88.0", + "typescript": "^5.1.6", + "wavesurfer.js": "^7.0.0", + "webpack": "^5.88.1", "webpack-dev-server": "^4.15.1", "webpack-manifest-plugin": "^5.0.0", "workbox-background-sync": "^7.0.0", @@ -123,19 +123,18 @@ ] }, "devDependencies": { - "@babel/core": "^7.22.5", + "@babel/core": "^7.22.8", "@babel/plugin-proposal-private-property-in-object": "^7.21.11", "@ianvs/prettier-plugin-sort-imports": "^4.0.2", "@types/emoji-mart": "^3.0.9", "@types/masonry-layout": "^4.2.5", "@types/react-helmet": "^6.1.6", "@types/react-syntax-highlighter": "^15.5.7", - "@types/wavesurfer.js": "^6.0.6", - "@typescript-eslint/eslint-plugin": "^5.60.1", - "@typescript-eslint/parser": "^5.60.1", + "@typescript-eslint/eslint-plugin": "^5.61.0", + "@typescript-eslint/parser": "^5.61.0", "@welldone-software/why-did-you-render": "^7.0.1", "autoprefixer": "^10.4.14", - "babel-loader": "^9.1.2", + "babel-loader": "^9.1.3", "babel-plugin-named-asset-import": "^0.3.8", "babel-preset-react-app": "^10.0.1", "eslint-config-prettier": "^8.8.0", @@ -145,13 +144,13 @@ "eslint-plugin-react-hooks": "^4.6.0", "gh-pages": "^5.0.0", "husky": "^8.0.3", - "lint-staged": "^13.2.2", + "lint-staged": "^13.2.3", "md5-file": "^5.0.0", "patch-package": "^7.0.0", - "postcss": "^8.4.24", + "postcss": "^8.4.25", "postcss-loader": "^7.3.3", "postinstall-postinstall": "^2.1.0", - "prettier": "^2.8.8", + "prettier": "^3.0.0", "tailwindcss": "^3.3.2" } } diff --git a/src/components/VoiceMessage.tsx b/src/components/VoiceMessage.tsx index 11df93d7..b3cccbd2 100644 --- a/src/components/VoiceMessage.tsx +++ b/src/components/VoiceMessage.tsx @@ -17,62 +17,47 @@ export type VoiceMessageProps = { // 全局存储Voice信息 const VoiceMap: { [key: string]: WaveSurfer | null } = {}; const VoiceMessage = ({ file_path }: { file_path: string }) => { - // const waveRef = useRef(null); const containerRef = useRef(null); const [status, setStatus] = useState<"loading" | "error" | "ready">("loading"); const [playing, setPlaying] = useState(false); const [duration, setDuration] = useState(""); - // const [audio, setAudio] = useState(new Audio(`${BASE_URL}/resource/file?file_path=${encodeURIComponent( - // file_path - // )}`)); - const initWave = (file_path: string) => { + const initWave = async (file_path: string) => { let wave: WaveSurfer | null = null; const audioSrc = `${BASE_URL}/resource/file?file_path=${encodeURIComponent(file_path)}`; - wave = WaveSurfer.create({ - container: containerRef.current ?? "", - // maxCanvasWidth: 200, - height: 32, - waveColor: "#0BA5EC", - cursorColor: "#0BA5AA", - progressColor: "#0BA5AA", - hideScrollbar: true, - // mediaControls: true, - normalize: true, - responsive: true - }); - wave.load(audioSrc); - - wave.on("error", function (err) { - console.log("voice message error", err); + console.log("audioSrc", audioSrc); + try { + // 先检测资源是否存在 + await fetch(audioSrc); + wave = WaveSurfer.create({ + container: containerRef.current ?? "", + height: 32, + waveColor: "#0BA5EC", + cursorColor: "#0BA5AA", + progressColor: "#0BA5AA", + hideScrollbar: true, + normalize: true + }); + wave.load(audioSrc); + wave.on("play", function () { + setPlaying(true); + }); + wave.on("pause", function () { + setPlaying(false); + }); + wave.on("ready", function () { + setStatus("ready"); + const current = VoiceMap[file_path]; + if (current) { + const dur = current.getDuration(); + const num = Math.ceil(dur); + const durDisplay = dayjs.duration(num, "seconds").format("mm:ss"); + setDuration(durDisplay); + } + }); + VoiceMap[file_path] = wave; + } catch (error) { setStatus("error"); - const current = VoiceMap[file_path]; - if (current) { - current.destroy(); - } - }); - wave.on("play", function () { - setPlaying(true); - }); - wave.on("pause", function () { - setPlaying(false); - }); - wave.on("ready", function () { - setStatus("ready"); - const current = VoiceMap[file_path]; - if (current) { - const dur = current.getDuration(); - const num = Math.ceil(dur); - const durDisplay = dayjs.duration(num, "seconds").format("mm:ss"); - setDuration(durDisplay); - } - // tricky - if (containerRef.current) { - const container = containerRef.current as HTMLDivElement; - const w = (container.querySelector("wave>canvas") as HTMLCanvasElement)?.width; - container.style.width = `${w}px`; - } - }); - VoiceMap[file_path] = wave; + } }; useEffect(() => { if (containerRef.current && file_path) { @@ -93,7 +78,7 @@ const VoiceMessage = ({ file_path }: { file_path: string }) => { Object.keys(VoiceMap).forEach((key) => { try { const item = VoiceMap[key]; - if (item && item.backend && item.isPlaying()) { + if (item && item.isPlaying()) { item.stop(); } } catch (error) { @@ -104,9 +89,7 @@ const VoiceMessage = ({ file_path }: { file_path: string }) => { current.playPause(); } }; - // const handleReload = () => { - // initWave(file_path); - // }; + const notReady = status !== "ready"; if (status == "error") return ; return ( @@ -123,17 +106,10 @@ const VoiceMessage = ({ file_path }: { file_path: string }) => { )} -
- {status == "loading" && Loading voice message...} +
+ {status == "loading" && Loading voice message...}
- {/* {status === "error" && ( - - )} */}
); }; diff --git a/yarn.lock b/yarn.lock index 4312fe88..32c2c3e1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,11 @@ # yarn lockfile v1 +"@aashutoshrathi/word-wrap@^1.2.3": + version "1.2.6" + resolved "https://mirrors.cloud.tencent.com/npm/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" + integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== + "@alloc/quick-lru@^5.2.0": version "5.2.0" resolved "https://mirrors.cloud.tencent.com/npm/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30" @@ -36,7 +41,12 @@ resolved "https://mirrors.cloud.tencent.com/npm/@babel/compat-data/-/compat-data-7.22.5.tgz#b1f6c86a02d85d2dd3368a2b67c09add8cd0c255" integrity sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA== -"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.21.3", "@babel/core@^7.21.8", "@babel/core@^7.22.5", "@babel/core@^7.7.2", "@babel/core@^7.8.0": +"@babel/compat-data@^7.22.6": + version "7.22.6" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/compat-data/-/compat-data-7.22.6.tgz#15606a20341de59ba02cd2fcc5086fcbe73bf544" + integrity sha512-29tfsWTq2Ftu7MXmimyC0C5FDZv5DYxOZkh3XD3+QW4V/BYuv/LyEsjj3c0hqedEaDt6DBfDvexMKU8YevdqFg== + +"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.21.3", "@babel/core@^7.21.8", "@babel/core@^7.7.2", "@babel/core@^7.8.0": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/core/-/core-7.22.5.tgz#d67d9747ecf26ee7ecd3ebae1ee22225fe902a89" integrity sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg== @@ -57,6 +67,27 @@ json5 "^2.2.2" semver "^6.3.0" +"@babel/core@^7.22.8": + version "7.22.8" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/core/-/core-7.22.8.tgz#386470abe884302db9c82e8e5e87be9e46c86785" + integrity sha512-75+KxFB4CZqYRXjx4NlR4J7yGvKumBuZTmV4NV6v09dVXXkuYVYLT68N6HCzLvfJ+fWCxQsntNzKwwIXL4bHnw== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.22.5" + "@babel/generator" "^7.22.7" + "@babel/helper-compilation-targets" "^7.22.6" + "@babel/helper-module-transforms" "^7.22.5" + "@babel/helpers" "^7.22.6" + "@babel/parser" "^7.22.7" + "@babel/template" "^7.22.5" + "@babel/traverse" "^7.22.8" + "@babel/types" "^7.22.5" + "@nicolo-ribaudo/semver-v6" "^6.3.3" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.2" + "@babel/eslint-parser@^7.16.3": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/eslint-parser/-/eslint-parser-7.22.5.tgz#fa032503b9e2d188e25b1b95d29e8b8431042d78" @@ -76,6 +107,16 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" +"@babel/generator@^7.22.7": + version "7.22.7" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/generator/-/generator-7.22.7.tgz#a6b8152d5a621893f2c9dacf9a4e286d520633d5" + integrity sha512-p+jPjMG+SI8yvIaxGgeW24u7q9+5+TGpZh8/CuB7RhBKd7RCy8FayNEFNNKrNK/eUcY/4ExQqLmyrvBXKsIcwQ== + dependencies: + "@babel/types" "^7.22.5" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.18.6", "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" @@ -101,6 +142,17 @@ lru-cache "^5.1.1" semver "^6.3.0" +"@babel/helper-compilation-targets@^7.22.6": + version "7.22.6" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.6.tgz#e30d61abe9480aa5a83232eb31c111be922d2e52" + integrity sha512-534sYEqWD9VfUm3IPn2SLcH4Q3P86XL+QvqdC7ZsFrzyyPF3T4XGiVghF6PTYNdWg6pXuoqXxNQAhbYeEInTzA== + dependencies: + "@babel/compat-data" "^7.22.6" + "@babel/helper-validator-option" "^7.22.5" + "@nicolo-ribaudo/semver-v6" "^6.3.3" + browserslist "^4.21.9" + lru-cache "^5.1.1" + "@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0", "@babel/helper-create-class-features-plugin@^7.22.5": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.5.tgz#2192a1970ece4685fbff85b48da2c32fcb130b7c" @@ -240,6 +292,13 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-split-export-declaration@^7.22.6": + version "7.22.6" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-string-parser@^7.22.5": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" @@ -274,6 +333,15 @@ "@babel/traverse" "^7.22.5" "@babel/types" "^7.22.5" +"@babel/helpers@^7.22.6": + version "7.22.6" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/helpers/-/helpers-7.22.6.tgz#8e61d3395a4f0c5a8060f309fb008200969b5ecd" + integrity sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA== + dependencies: + "@babel/template" "^7.22.5" + "@babel/traverse" "^7.22.6" + "@babel/types" "^7.22.5" + "@babel/highlight@^7.22.5": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/highlight/-/highlight-7.22.5.tgz#aa6c05c5407a67ebce408162b7ede789b4d22031" @@ -288,6 +356,11 @@ resolved "https://mirrors.cloud.tencent.com/npm/@babel/parser/-/parser-7.22.5.tgz#721fd042f3ce1896238cf1b341c77eb7dee7dbea" integrity sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q== +"@babel/parser@^7.22.7": + version "7.22.7" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/parser/-/parser-7.22.7.tgz#df8cf085ce92ddbdbf668a7f186ce848c9036cae" + integrity sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz#87245a21cd69a73b0b81bcda98d443d6df08f05e" @@ -1163,6 +1236,22 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.22.6", "@babel/traverse@^7.22.8": + version "7.22.8" + resolved "https://mirrors.cloud.tencent.com/npm/@babel/traverse/-/traverse-7.22.8.tgz#4d4451d31bc34efeae01eac222b514a77aa4000e" + integrity sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw== + dependencies: + "@babel/code-frame" "^7.22.5" + "@babel/generator" "^7.22.7" + "@babel/helper-environment-visitor" "^7.22.5" + "@babel/helper-function-name" "^7.22.5" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.22.7" + "@babel/types" "^7.22.5" + debug "^4.1.0" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.20.7", "@babel/types@^7.21.3", "@babel/types@^7.21.5", "@babel/types@^7.22.5", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.22.5" resolved "https://mirrors.cloud.tencent.com/npm/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe" @@ -1359,15 +1448,30 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@eslint/eslintrc@^2.1.0": + version "2.1.0" + resolved "https://mirrors.cloud.tencent.com/npm/@eslint/eslintrc/-/eslintrc-2.1.0.tgz#82256f164cc9e0b59669efc19d57f8092706841d" + integrity sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^9.6.0" + globals "^13.19.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + "@eslint/js@8.42.0": version "8.42.0" resolved "https://mirrors.cloud.tencent.com/npm/@eslint/js/-/js-8.42.0.tgz#484a1d638de2911e6f5a30c12f49c7e4a3270fb6" integrity sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw== -"@eslint/js@8.43.0": - version "8.43.0" - resolved "https://mirrors.cloud.tencent.com/npm/@eslint/js/-/js-8.43.0.tgz#559ca3d9ddbd6bf907ad524320a0d14b85586af0" - integrity sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg== +"@eslint/js@8.44.0": + version "8.44.0" + resolved "https://mirrors.cloud.tencent.com/npm/@eslint/js/-/js-8.44.0.tgz#961a5903c74139390478bdc808bcde3fc45ab7af" + integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw== "@firebase/analytics-compat@0.2.6": version "0.2.6" @@ -2145,6 +2249,11 @@ dependencies: eslint-scope "5.1.1" +"@nicolo-ribaudo/semver-v6@^6.3.3": + version "6.3.3" + resolved "https://mirrors.cloud.tencent.com/npm/@nicolo-ribaudo/semver-v6/-/semver-v6-6.3.3.tgz#ea6d23ade78a325f7a52750aab1526b02b628c29" + integrity sha512-3Yc1fUTs69MG/uZbJlLSI3JISMn2UV2rg+1D/vROUqZyh3l6iYHCs7GMp+M40ZD7yOdDbYjJcU1oTJhrc+dGKg== + "@nodelib/fs.scandir@2.1.5": version "2.1.5" resolved "https://mirrors.cloud.tencent.com/npm/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" @@ -2289,10 +2398,10 @@ redux-thunk "^2.4.2" reselect "^4.1.8" -"@remix-run/router@1.7.0": - version "1.7.0" - resolved "https://mirrors.cloud.tencent.com/npm/@remix-run/router/-/router-1.7.0.tgz#550a8d5760b78efc5d60f62b5829b0f74c1fde81" - integrity sha512-Eu1V3kz3mV0wUpVTiFHuaT8UD1gj/0VnoFHQYX35xlslQUpe8CuYoKFn9d4WZFHm3yDywz6ALZuGdnUPKrNeAw== +"@remix-run/router@1.7.1": + version "1.7.1" + resolved "https://mirrors.cloud.tencent.com/npm/@remix-run/router/-/router-1.7.1.tgz#fea7ac35ae4014637c130011f59428f618730498" + integrity sha512-bgVQM4ZJ2u2CM8k1ey70o1ePFXsEzYVZoWghh6WjM8p59jQ7HxzbHW4SbnWFG7V9ig9chLawQxDTZ3xzOF8MkQ== "@rollup/plugin-babel@^5.2.0": version "5.3.1" @@ -2687,11 +2796,6 @@ dependencies: "@types/node" "*" -"@types/debounce@*": - version "1.2.1" - resolved "https://mirrors.cloud.tencent.com/npm/@types/debounce/-/debounce-1.2.1.tgz#79b65710bc8b6d44094d286aecf38e44f9627852" - integrity sha512-epMsEE85fi4lfmJUH/89/iV/LI+F5CvNIvmgs5g5jYFPfhO2S/ae8WSsLOKWdwtoaZw9Q2IhJ4tQ5tFCcS/4HA== - "@types/emoji-mart@^3.0.9": version "3.0.9" resolved "https://mirrors.cloud.tencent.com/npm/@types/emoji-mart/-/emoji-mart-3.0.9.tgz#2f7ef5d9ec194f28029c46c81a5fc1e5b0efa73c" @@ -2869,10 +2973,10 @@ resolved "https://mirrors.cloud.tencent.com/npm/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe" integrity sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg== -"@types/node@^20.3.2": - version "20.3.2" - resolved "https://mirrors.cloud.tencent.com/npm/@types/node/-/node-20.3.2.tgz#fa6a90f2600e052a03c18b8cb3fd83dd4e599898" - integrity sha512-vOBLVQeCQfIcF/2Y7eKFTqrMnizK5lRNQ7ykML/5RuwVXVWxYkgwS7xbt4B6fKCUPgbSL5FSsjHQpaGQP/dQmw== +"@types/node@^20.4.1": + version "20.4.1" + resolved "https://mirrors.cloud.tencent.com/npm/@types/node/-/node-20.4.1.tgz#a6033a8718653c50ac4962977e14d0f984d9527d" + integrity sha512-JIzsAvJeA/5iY6Y/OxZbv1lUcc8dNSE77lb2gnBH+/PJ3lFR1Ccvgwl5JWnHAkNHcRsT0TbpVOsiMKZ1F/yyJg== "@types/parse-json@^4.0.0": version "4.0.0" @@ -3020,13 +3124,6 @@ resolved "https://mirrors.cloud.tencent.com/npm/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz#b6725d5f4af24ace33b36fafd295136e75509f43" integrity sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA== -"@types/wavesurfer.js@^6.0.6": - version "6.0.6" - resolved "https://mirrors.cloud.tencent.com/npm/@types/wavesurfer.js/-/wavesurfer.js-6.0.6.tgz#748e7e6ccdd2638ef810240aed284f7c5514f2f2" - integrity sha512-fD54o0RXZXxkOb+69Rt6rGViaHpIc1Mmde2aOX9qPhlQhrCPepybGnsekiG407+7scPlaK+hmuPez5AnnmlzGg== - dependencies: - "@types/debounce" "*" - "@types/ws@^8.5.5": version "8.5.5" resolved "https://mirrors.cloud.tencent.com/npm/@types/ws/-/ws-8.5.5.tgz#af587964aa06682702ee6dcbc7be41a80e4b28eb" @@ -3069,17 +3166,17 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/eslint-plugin@^5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.60.1.tgz#81382d6ecb92b8dda70e91f9035611cb2fecd1c3" - integrity sha512-KSWsVvsJsLJv3c4e73y/Bzt7OpqMCADUO846bHcuWYSYM19bldbAeDv7dYyV0jwkbMfJ2XdlzwjhXtuD7OY6bw== +"@typescript-eslint/eslint-plugin@^5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.61.0.tgz#a1a5290cf33863b4db3fb79350b3c5275a7b1223" + integrity sha512-A5l/eUAug103qtkwccSCxn8ZRwT+7RXWkFECdA4Cvl1dOlDUgTpAOfSEElZn2uSUxhdDpnCdetrf0jvU4qrL+g== dependencies: "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.60.1" - "@typescript-eslint/type-utils" "5.60.1" - "@typescript-eslint/utils" "5.60.1" + "@typescript-eslint/scope-manager" "5.61.0" + "@typescript-eslint/type-utils" "5.61.0" + "@typescript-eslint/utils" "5.61.0" debug "^4.3.4" - grapheme-splitter "^1.0.4" + graphemer "^1.4.0" ignore "^5.2.0" natural-compare-lite "^1.4.0" semver "^7.3.7" @@ -3102,14 +3199,14 @@ "@typescript-eslint/typescript-estree" "5.59.11" debug "^4.3.4" -"@typescript-eslint/parser@^5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/parser/-/parser-5.60.1.tgz#0f2f58209c0862a73e3d5a56099abfdfa21d0fd3" - integrity sha512-pHWlc3alg2oSMGwsU/Is8hbm3XFbcrb6P5wIxcQW9NsYBfnrubl/GhVVD/Jm/t8HXhA2WncoIRfBtnCgRGV96Q== +"@typescript-eslint/parser@^5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/parser/-/parser-5.61.0.tgz#7fbe3e2951904bb843f8932ebedd6e0635bffb70" + integrity sha512-yGr4Sgyh8uO6fSi9hw3jAFXNBHbCtKKFMdX2IkT3ZqpKmtAq3lHS4ixB/COFuAIJpwl9/AqF7j72ZDWYKmIfvg== dependencies: - "@typescript-eslint/scope-manager" "5.60.1" - "@typescript-eslint/types" "5.60.1" - "@typescript-eslint/typescript-estree" "5.60.1" + "@typescript-eslint/scope-manager" "5.61.0" + "@typescript-eslint/types" "5.61.0" + "@typescript-eslint/typescript-estree" "5.61.0" debug "^4.3.4" "@typescript-eslint/scope-manager@5.59.11": @@ -3120,13 +3217,13 @@ "@typescript-eslint/types" "5.59.11" "@typescript-eslint/visitor-keys" "5.59.11" -"@typescript-eslint/scope-manager@5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/scope-manager/-/scope-manager-5.60.1.tgz#35abdb47f500c68c08f2f2b4f22c7c79472854bb" - integrity sha512-Dn/LnN7fEoRD+KspEOV0xDMynEmR3iSHdgNsarlXNLGGtcUok8L4N71dxUgt3YvlO8si7E+BJ5Fe3wb5yUw7DQ== +"@typescript-eslint/scope-manager@5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/scope-manager/-/scope-manager-5.61.0.tgz#b670006d069c9abe6415c41f754b1b5d949ef2b2" + integrity sha512-W8VoMjoSg7f7nqAROEmTt6LoBpn81AegP7uKhhW5KzYlehs8VV0ZW0fIDVbcZRcaP3aPSW+JZFua+ysQN+m/Nw== dependencies: - "@typescript-eslint/types" "5.60.1" - "@typescript-eslint/visitor-keys" "5.60.1" + "@typescript-eslint/types" "5.61.0" + "@typescript-eslint/visitor-keys" "5.61.0" "@typescript-eslint/type-utils@5.59.11": version "5.59.11" @@ -3138,13 +3235,13 @@ debug "^4.3.4" tsutils "^3.21.0" -"@typescript-eslint/type-utils@5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/type-utils/-/type-utils-5.60.1.tgz#17770540e98d65ab4730c7aac618003f702893f4" - integrity sha512-vN6UztYqIu05nu7JqwQGzQKUJctzs3/Hg7E2Yx8rz9J+4LgtIDFWjjl1gm3pycH0P3mHAcEUBd23LVgfrsTR8A== +"@typescript-eslint/type-utils@5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/type-utils/-/type-utils-5.61.0.tgz#e90799eb2045c4435ea8378cb31cd8a9fddca47a" + integrity sha512-kk8u//r+oVK2Aj3ph/26XdH0pbAkC2RiSjUYhKD+PExemG4XSjpGFeyZ/QM8lBOa7O8aGOU+/yEbMJgQv/DnCg== dependencies: - "@typescript-eslint/typescript-estree" "5.60.1" - "@typescript-eslint/utils" "5.60.1" + "@typescript-eslint/typescript-estree" "5.61.0" + "@typescript-eslint/utils" "5.61.0" debug "^4.3.4" tsutils "^3.21.0" @@ -3153,10 +3250,10 @@ resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/types/-/types-5.59.11.tgz#1a9018fe3c565ba6969561f2a49f330cf1fe8db1" integrity sha512-epoN6R6tkvBYSc+cllrz+c2sOFWkbisJZWkOE+y3xHtvYaOE6Wk6B8e114McRJwFRjGvYdJwLXQH5c9osME/AA== -"@typescript-eslint/types@5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/types/-/types-5.60.1.tgz#a17473910f6b8d388ea83c9d7051af89c4eb7561" - integrity sha512-zDcDx5fccU8BA0IDZc71bAtYIcG9PowaOwaD8rjYbqwK7dpe/UMQl3inJ4UtUK42nOCT41jTSCwg76E62JpMcg== +"@typescript-eslint/types@5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/types/-/types-5.61.0.tgz#e99ff11b5792d791554abab0f0370936d8ca50c0" + integrity sha512-ldyueo58KjngXpzloHUog/h9REmHl59G1b3a5Sng1GfBo14BkS3ZbMEb3693gnP1k//97lh7bKsp6/V/0v1veQ== "@typescript-eslint/typescript-estree@5.59.11": version "5.59.11" @@ -3171,13 +3268,13 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/typescript-estree@5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.1.tgz#8c71824b7165b64d5ebd7aa42968899525959834" - integrity sha512-hkX70J9+2M2ZT6fhti5Q2FoU9zb+GeZK2SLP1WZlvUDqdMbEKhexZODD1WodNRyO8eS+4nScvT0dts8IdaBzfw== +"@typescript-eslint/typescript-estree@5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/typescript-estree/-/typescript-estree-5.61.0.tgz#4c7caca84ce95bb41aa585d46a764bcc050b92f3" + integrity sha512-Fud90PxONnnLZ36oR5ClJBLTLfU4pIWBmnvGwTbEa2cXIqj70AEDEmOmpkFComjBZ/037ueKrOdHuYmSFVD7Rw== dependencies: - "@typescript-eslint/types" "5.60.1" - "@typescript-eslint/visitor-keys" "5.60.1" + "@typescript-eslint/types" "5.61.0" + "@typescript-eslint/visitor-keys" "5.61.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" @@ -3198,17 +3295,17 @@ eslint-scope "^5.1.1" semver "^7.3.7" -"@typescript-eslint/utils@5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/utils/-/utils-5.60.1.tgz#6861ebedbefba1ac85482d2bdef6f2ff1eb65b80" - integrity sha512-tiJ7FFdFQOWssFa3gqb94Ilexyw0JVxj6vBzaSpfN/8IhoKkDuSAenUKvsSHw2A/TMpJb26izIszTXaqygkvpQ== +"@typescript-eslint/utils@5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/utils/-/utils-5.61.0.tgz#5064838a53e91c754fffbddd306adcca3fe0af36" + integrity sha512-mV6O+6VgQmVE6+xzlA91xifndPW9ElFW8vbSF0xCT/czPXVhwDewKila1jOyRwa9AE19zKnrr7Cg5S3pJVrTWQ== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@types/json-schema" "^7.0.9" "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.60.1" - "@typescript-eslint/types" "5.60.1" - "@typescript-eslint/typescript-estree" "5.60.1" + "@typescript-eslint/scope-manager" "5.61.0" + "@typescript-eslint/types" "5.61.0" + "@typescript-eslint/typescript-estree" "5.61.0" eslint-scope "^5.1.1" semver "^7.3.7" @@ -3220,12 +3317,12 @@ "@typescript-eslint/types" "5.59.11" eslint-visitor-keys "^3.3.0" -"@typescript-eslint/visitor-keys@5.60.1": - version "5.60.1" - resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.1.tgz#19a877358bf96318ec35d90bfe6bd1445cce9434" - integrity sha512-xEYIxKcultP6E/RMKqube11pGjXH1DCo60mQoWhVYyKfLkwbIVVjYxmOenNMxILx0TjCujPTjjnTIVzm09TXIw== +"@typescript-eslint/visitor-keys@5.61.0": + version "5.61.0" + resolved "https://mirrors.cloud.tencent.com/npm/@typescript-eslint/visitor-keys/-/visitor-keys-5.61.0.tgz#c79414fa42158fd23bd2bb70952dc5cdbb298140" + integrity sha512-50XQ5VdbWrX06mQXhy93WywSFZZGsv3EOjq+lqp6WC2t+j3mb6A9xYVdrRxafvK88vg9k9u+CT4l6D8PEatjKg== dependencies: - "@typescript-eslint/types" "5.60.1" + "@typescript-eslint/types" "5.61.0" eslint-visitor-keys "^3.3.0" "@udecode/plate-alignment@16.8.0": @@ -3996,6 +4093,11 @@ acorn@^8.2.4, acorn@^8.7.1, acorn@^8.8.0, acorn@^8.8.2: resolved "https://mirrors.cloud.tencent.com/npm/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== +acorn@^8.9.0: + version "8.10.0" + resolved "https://mirrors.cloud.tencent.com/npm/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" + integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== + address@^1.0.1, address@^1.1.2: version "1.2.2" resolved "https://mirrors.cloud.tencent.com/npm/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" @@ -4024,10 +4126,10 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -agora-rtc-sdk-ng@^4.18.0: - version "4.18.0" - resolved "https://mirrors.cloud.tencent.com/npm/agora-rtc-sdk-ng/-/agora-rtc-sdk-ng-4.18.0.tgz#346eba88ff4c1e2d6ed75e4a48964ba436a2f899" - integrity sha512-BZgAwMgOkPfjIvYNsJl+7/aqFAkdcxvrh2BfDxDdDVm50hF/cQn7jqb34dFQq2jFYuUB+792RXMCLA4zjX6y9g== +agora-rtc-sdk-ng@^4.18.1: + version "4.18.1" + resolved "https://mirrors.cloud.tencent.com/npm/agora-rtc-sdk-ng/-/agora-rtc-sdk-ng-4.18.1.tgz#ce2d41cf8570da29ee50f5d7766e9315a041137a" + integrity sha512-OZ4Bu6Y1DspfACwljJGYuBglwsyJpAyILqROUY40GXTnzy5ZUcjAljOqoPoQfrT8D6R7okk+sfTXr4vyHu8GLw== dependencies: agora-rte-extension "^1.2.3" @@ -4336,12 +4438,12 @@ babel-loader@^8.2.3: make-dir "^3.1.0" schema-utils "^2.6.5" -babel-loader@^9.1.2: - version "9.1.2" - resolved "https://mirrors.cloud.tencent.com/npm/babel-loader/-/babel-loader-9.1.2.tgz#a16a080de52d08854ee14570469905a5fc00d39c" - integrity sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA== +babel-loader@^9.1.3: + version "9.1.3" + resolved "https://mirrors.cloud.tencent.com/npm/babel-loader/-/babel-loader-9.1.3.tgz#3d0e01b4e69760cc694ee306fe16d358aa1c6f9a" + integrity sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw== dependencies: - find-cache-dir "^3.3.2" + find-cache-dir "^4.0.0" schema-utils "^4.0.0" babel-plugin-istanbul@^6.1.1: @@ -5419,10 +5521,10 @@ data-urls@^2.0.0: whatwg-mimetype "^2.3.0" whatwg-url "^8.0.0" -dayjs@^1.11.8: - version "1.11.8" - resolved "https://mirrors.cloud.tencent.com/npm/dayjs/-/dayjs-1.11.8.tgz#4282f139c8c19dd6d0c7bd571e30c2d0ba7698ea" - integrity sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ== +dayjs@^1.11.9: + version "1.11.9" + resolved "https://mirrors.cloud.tencent.com/npm/dayjs/-/dayjs-1.11.9.tgz#9ca491933fadd0a60a2c19f6c237c03517d71d1a" + integrity sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA== debug@2.6.9, debug@^2.6.0: version "2.6.9" @@ -6171,15 +6273,15 @@ eslint@^8.3.0: strip-json-comments "^3.1.0" text-table "^0.2.0" -eslint@^8.43.0: - version "8.43.0" - resolved "https://mirrors.cloud.tencent.com/npm/eslint/-/eslint-8.43.0.tgz#3e8c6066a57097adfd9d390b8fc93075f257a094" - integrity sha512-aaCpf2JqqKesMFGgmRPessmVKjcGXqdlAYLLC3THM8t5nBRZRQ+st5WM/hoJXkdioEXLLbXgclUpM0TXo5HX5Q== +eslint@^8.44.0: + version "8.44.0" + resolved "https://mirrors.cloud.tencent.com/npm/eslint/-/eslint-8.44.0.tgz#51246e3889b259bbcd1d7d736a0c10add4f0e500" + integrity sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.4.0" - "@eslint/eslintrc" "^2.0.3" - "@eslint/js" "8.43.0" + "@eslint/eslintrc" "^2.1.0" + "@eslint/js" "8.44.0" "@humanwhocodes/config-array" "^0.11.10" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" @@ -6191,7 +6293,7 @@ eslint@^8.43.0: escape-string-regexp "^4.0.0" eslint-scope "^7.2.0" eslint-visitor-keys "^3.4.1" - espree "^9.5.2" + espree "^9.6.0" esquery "^1.4.2" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -6211,7 +6313,7 @@ eslint@^8.43.0: lodash.merge "^4.6.2" minimatch "^3.1.2" natural-compare "^1.4.0" - optionator "^0.9.1" + optionator "^0.9.3" strip-ansi "^6.0.1" strip-json-comments "^3.1.0" text-table "^0.2.0" @@ -6225,6 +6327,15 @@ espree@^9.5.2: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.4.1" +espree@^9.6.0: + version "9.6.0" + resolved "https://mirrors.cloud.tencent.com/npm/espree/-/espree-9.6.0.tgz#80869754b1c6560f32e3b6929194a3fe07c5b82f" + integrity sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A== + dependencies: + acorn "^8.9.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^3.4.1" + esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://mirrors.cloud.tencent.com/npm/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" @@ -6506,7 +6617,7 @@ finalhandler@1.2.0: statuses "2.0.1" unpipe "~1.0.0" -find-cache-dir@^3.3.1, find-cache-dir@^3.3.2: +find-cache-dir@^3.3.1: version "3.3.2" resolved "https://mirrors.cloud.tencent.com/npm/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== @@ -6515,6 +6626,14 @@ find-cache-dir@^3.3.1, find-cache-dir@^3.3.2: make-dir "^3.0.2" pkg-dir "^4.1.0" +find-cache-dir@^4.0.0: + version "4.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/find-cache-dir/-/find-cache-dir-4.0.0.tgz#a30ee0448f81a3990708f6453633c733e2f6eec2" + integrity sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg== + dependencies: + common-path-prefix "^3.0.0" + pkg-dir "^7.0.0" + find-up@^3.0.0: version "3.0.0" resolved "https://mirrors.cloud.tencent.com/npm/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -6538,6 +6657,14 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" +find-up@^6.3.0: + version "6.3.0" + resolved "https://mirrors.cloud.tencent.com/npm/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790" + integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw== + dependencies: + locate-path "^7.1.0" + path-exists "^5.0.0" + find-yarn-workspace-root@^2.0.0: version "2.0.0" resolved "https://mirrors.cloud.tencent.com/npm/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#f47fb8d239c900eb78179aa81b66673eac88f7bd" @@ -6652,10 +6779,10 @@ fraction.js@^4.2.0: resolved "https://mirrors.cloud.tencent.com/npm/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950" integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== -framer-motion@^10.12.17: - version "10.12.17" - resolved "https://mirrors.cloud.tencent.com/npm/framer-motion/-/framer-motion-10.12.17.tgz#0e891aaddbe6049267c413449945af95585cbc87" - integrity sha512-IR+aAYntsyu6ofyxqQV4QYotmOqzcuKxhqNpfc3DXJjNWOPpOeSyH0A+In3IEBu49Yx/+PNht+YMeZSdCNaYbw== +framer-motion@^10.12.18: + version "10.12.18" + resolved "https://mirrors.cloud.tencent.com/npm/framer-motion/-/framer-motion-10.12.18.tgz#92015860b6468a82e76c4739fcae81e1f6723b3f" + integrity sha512-cfhiUpPbj+0eEWKjuD+5cz5cMqH71xOtMxGiS/cSGfHn2OlHIEAqFnFyzEMENw5PxWR9bMVhatzzpD6lexmHZQ== dependencies: tslib "^2.4.0" optionalDependencies: @@ -7208,10 +7335,10 @@ i18next-http-backend@^2.2.1: dependencies: cross-fetch "3.1.6" -i18next@^23.2.3: - version "23.2.3" - resolved "https://mirrors.cloud.tencent.com/npm/i18next/-/i18next-23.2.3.tgz#d89930f0ce343fad2bee0d3c2188f42171a91cdd" - integrity sha512-5spO7L0rNmW0jFuNhz+gfirlFt1anle4mTy4+gFkgsH0+T3R5++4oncBrzeKa7v8pweRyGBoGmOpboqlxovg6A== +i18next@^23.2.8: + version "23.2.8" + resolved "https://mirrors.cloud.tencent.com/npm/i18next/-/i18next-23.2.8.tgz#dd54fab8f68c1ef2e0408249e042cf9cef683554" + integrity sha512-wU0pMlJ91ZbB89i77G3YQ11/pBQrzgWpxJYl7HFyA9aU9v3aHMI/oBKQmAJNURr0A8cLG4EHjgSMK8IqQTp4PQ== dependencies: "@babel/runtime" "^7.22.5" @@ -8408,10 +8535,10 @@ linkifyjs@^4.1.1: resolved "https://mirrors.cloud.tencent.com/npm/linkifyjs/-/linkifyjs-4.1.1.tgz#73d427e3bbaaf4ca8e71c589ad4ffda11a9a5fde" integrity sha512-zFN/CTVmbcVef+WaDXT63dNzzkfRBKT1j464NJQkV7iSgJU0sLBus9W0HBwnXK13/hf168pbrx/V/bjEHOXNHA== -lint-staged@^13.2.2: - version "13.2.2" - resolved "https://mirrors.cloud.tencent.com/npm/lint-staged/-/lint-staged-13.2.2.tgz#5e711d3139c234f73402177be2f8dd312e6508ca" - integrity sha512-71gSwXKy649VrSU09s10uAT0rWCcY3aewhMaHyl2N84oBk4Xs9HgxvUp3AYu+bNsK4NrOYYxvSgg7FyGJ+jGcA== +lint-staged@^13.2.3: + version "13.2.3" + resolved "https://mirrors.cloud.tencent.com/npm/lint-staged/-/lint-staged-13.2.3.tgz#f899aad6c093473467e9c9e316e3c2d8a28f87a7" + integrity sha512-zVVEXLuQIhr1Y7R7YAWx4TZLdvuzk7DnmrsTNL0fax6Z3jrpFcas+vKbzxhhvp6TA55m1SQuWkpzI1qbfDZbAg== dependencies: chalk "5.2.0" cli-truncate "^3.1.0" @@ -8496,6 +8623,13 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" +locate-path@^7.1.0: + version "7.2.0" + resolved "https://mirrors.cloud.tencent.com/npm/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a" + integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA== + dependencies: + p-locate "^6.0.0" + lodash.camelcase@^4.3.0: version "4.3.0" resolved "https://mirrors.cloud.tencent.com/npm/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" @@ -9086,6 +9220,18 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" +optionator@^0.9.3: + version "0.9.3" + resolved "https://mirrors.cloud.tencent.com/npm/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" + integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== + dependencies: + "@aashutoshrathi/word-wrap" "^1.2.3" + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + orderedmap@^2.0.0: version "2.1.1" resolved "https://mirrors.cloud.tencent.com/npm/orderedmap/-/orderedmap-2.1.1.tgz#61481269c44031c449915497bf5a4ad273c512d2" @@ -9124,6 +9270,13 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" +p-limit@^4.0.0: + version "4.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" + integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== + dependencies: + yocto-queue "^1.0.0" + p-locate@^3.0.0: version "3.0.0" resolved "https://mirrors.cloud.tencent.com/npm/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" @@ -9145,6 +9298,13 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" +p-locate@^6.0.0: + version "6.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f" + integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw== + dependencies: + p-limit "^4.0.0" + p-map@^4.0.0: version "4.0.0" resolved "https://mirrors.cloud.tencent.com/npm/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" @@ -9270,6 +9430,11 @@ path-exists@^4.0.0: resolved "https://mirrors.cloud.tencent.com/npm/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== +path-exists@^5.0.0: + version "5.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7" + integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ== + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://mirrors.cloud.tencent.com/npm/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -9354,6 +9519,13 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" +pkg-dir@^7.0.0: + version "7.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/pkg-dir/-/pkg-dir-7.0.0.tgz#8f0c08d6df4476756c5ff29b3282d0bab7517d11" + integrity sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA== + dependencies: + find-up "^6.3.0" + pkg-up@^3.1.0: version "3.1.0" resolved "https://mirrors.cloud.tencent.com/npm/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" @@ -10118,6 +10290,15 @@ postcss@^8.3.5, postcss@^8.4.21, postcss@^8.4.23, postcss@^8.4.24, postcss@^8.4. picocolors "^1.0.0" source-map-js "^1.0.2" +postcss@^8.4.25: + version "8.4.25" + resolved "https://mirrors.cloud.tencent.com/npm/postcss/-/postcss-8.4.25.tgz#4a133f5e379eda7f61e906c3b1aaa9b81292726f" + integrity sha512-7taJ/8t2av0Z+sQEvNzCkpDynl0tX3uJMCODi6nT3PfASC7dYCWV9aQ+uiCf+KBD4SEFcu+GvJdGdwzQ6OSjCw== + dependencies: + nanoid "^3.3.6" + picocolors "^1.0.0" + source-map-js "^1.0.2" + postinstall-postinstall@^2.1.0: version "2.1.0" resolved "https://mirrors.cloud.tencent.com/npm/postinstall-postinstall/-/postinstall-postinstall-2.1.0.tgz#4f7f77441ef539d1512c40bd04c71b06a4704ca3" @@ -10140,10 +10321,10 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@^2.8.8: - version "2.8.8" - resolved "https://mirrors.cloud.tencent.com/npm/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" - integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== +prettier@^3.0.0: + version "3.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/prettier/-/prettier-3.0.0.tgz#e7b19f691245a21d618c68bc54dc06122f6105ae" + integrity sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g== pretty-bytes@^5.3.0, pretty-bytes@^5.4.1: version "5.6.0" @@ -10565,20 +10746,20 @@ react-refresh@^0.11.0: resolved "https://mirrors.cloud.tencent.com/npm/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== -react-router-dom@^6.14.0: - version "6.14.0" - resolved "https://mirrors.cloud.tencent.com/npm/react-router-dom/-/react-router-dom-6.14.0.tgz#7ce6c3f73549e4d40216ba150253d3bf30812b33" - integrity sha512-YEwlApKwzMMMbGbhh+Q7MsloTldcwMgHxUY/1g0uA62+B1hZo2jsybCWIDCL8zvIDB1FA0pBKY9chHbZHt+2dQ== +react-router-dom@^6.14.1: + version "6.14.1" + resolved "https://mirrors.cloud.tencent.com/npm/react-router-dom/-/react-router-dom-6.14.1.tgz#0ad7ba7abdf75baa61169d49f096f0494907a36f" + integrity sha512-ssF6M5UkQjHK70fgukCJyjlda0Dgono2QGwqGvuk7D+EDGHdacEN3Yke2LTMjkrpHuFwBfDFsEjGVXBDmL+bWw== dependencies: - "@remix-run/router" "1.7.0" - react-router "6.14.0" + "@remix-run/router" "1.7.1" + react-router "6.14.1" -react-router@6.14.0: - version "6.14.0" - resolved "https://mirrors.cloud.tencent.com/npm/react-router/-/react-router-6.14.0.tgz#1c3e8e922d934d43a253fd862c72c82167c0a7f1" - integrity sha512-OD+vkrcGbvlwkspUFDgMzsu1RXwdjNh83YgG/28lBnDzgslhCgxIqoExLlxsfTpIygp7fc+Hd3esloNwzkm2xA== +react-router@6.14.1: + version "6.14.1" + resolved "https://mirrors.cloud.tencent.com/npm/react-router/-/react-router-6.14.1.tgz#5e82bcdabf21add859dc04b1859f91066b3a5810" + integrity sha512-U4PfgvG55LdvbQjg5Y9QRWyVxIdO1LlpYT7x+tMAxd9/vmiPuJhIwdxZuIQLN/9e3O4KFDHYfR9gzGeYMasW8g== dependencies: - "@remix-run/router" "1.7.0" + "@remix-run/router" "1.7.1" react-scripts@^5.0.1: version "5.0.1" @@ -10660,10 +10841,10 @@ react-textarea-autosize@^8.3.3: use-composed-ref "^1.3.0" use-latest "^1.2.1" -react-textarea-autosize@^8.5.0: - version "8.5.0" - resolved "https://mirrors.cloud.tencent.com/npm/react-textarea-autosize/-/react-textarea-autosize-8.5.0.tgz#bb0f7faf9849850f1c20b6e7fac0309d4b92f87b" - integrity sha512-cp488su3U9RygmHmGpJp0KEt0i/+57KCK33XVPH+50swVRBhIZYh0fGduz2YLKXwl9vSKBZ9HUXcg9PQXUXqIw== +react-textarea-autosize@^8.5.2: + version "8.5.2" + resolved "https://mirrors.cloud.tencent.com/npm/react-textarea-autosize/-/react-textarea-autosize-8.5.2.tgz#6421df2b5b50b9ca8c5e96fd31be688ea7fa2f9d" + integrity sha512-uOkyjkEl0ByEK21eCJMHDGBAAd/BoFQBawYK5XItjAmCTeSbjxghd8qnt7nzsLYzidjnoObu6M26xts0YGKsGg== dependencies: "@babel/runtime" "^7.20.13" use-composed-ref "^1.3.0" @@ -12164,10 +12345,10 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^5.1.3: - version "5.1.3" - resolved "https://mirrors.cloud.tencent.com/npm/typescript/-/typescript-5.1.3.tgz#8d84219244a6b40b6fb2b33cc1c062f715b9e826" - integrity sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw== +typescript@^5.1.6: + version "5.1.6" + resolved "https://mirrors.cloud.tencent.com/npm/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274" + integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== unbox-primitive@^1.0.2: version "1.0.2" @@ -12426,10 +12607,10 @@ watchpack@^2.4.0: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" -wavesurfer.js@^6.6.4: - version "6.6.4" - resolved "https://mirrors.cloud.tencent.com/npm/wavesurfer.js/-/wavesurfer.js-6.6.4.tgz#45e2d613fbfd60d906362ed6e11b649f481e4485" - integrity sha512-nBbc0pD/3FdClxKUKL1UW2V9AJPL+JOjC8T6/YF9/FCAn4uo+H6Y8VBkXo9UJXIHoBewoc7iXj3tPeL0UCJhjA== +wavesurfer.js@^7.0.0: + version "7.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/wavesurfer.js/-/wavesurfer.js-7.0.0.tgz#fec84da406ceb6c41bcd9a08cebcd8709bb5f87a" + integrity sha512-f6zFsRbEzstztyd7yCMHr5dykW42VMS14DSw4N1y8wl2l1Im9Dy5sfM06hc0Q0aybfOyngD211/rjCAdomVZww== wbuf@^1.1.0, wbuf@^1.7.3: version "1.7.3" @@ -12572,10 +12753,10 @@ webpack@^5.64.4: watchpack "^2.4.0" webpack-sources "^3.2.3" -webpack@^5.88.0: - version "5.88.0" - resolved "https://mirrors.cloud.tencent.com/npm/webpack/-/webpack-5.88.0.tgz#a07aa2f8e7a64a8f1cec0c6c2e180e3cb34440c8" - integrity sha512-O3jDhG5e44qIBSi/P6KpcCcH7HD+nYIHVBhdWFxcLOcIGN8zGo5nqF3BjyNCxIh4p1vFdNnreZv2h2KkoAw3lw== +webpack@^5.88.1: + version "5.88.1" + resolved "https://mirrors.cloud.tencent.com/npm/webpack/-/webpack-5.88.1.tgz#21eba01e81bd5edff1968aea726e2fbfd557d3f8" + integrity sha512-FROX3TxQnC/ox4N+3xQoWZzvGXSuscxR32rbzjpXgEzWudJFEJBpdlkkob2ylrv5yzzufD1zph1OoFsLtm6stQ== dependencies: "@types/eslint-scope" "^3.7.3" "@types/estree" "^1.0.0" @@ -13163,6 +13344,11 @@ yocto-queue@^0.1.0: resolved "https://mirrors.cloud.tencent.com/npm/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +yocto-queue@^1.0.0: + version "1.0.0" + resolved "https://mirrors.cloud.tencent.com/npm/yocto-queue/-/yocto-queue-1.0.0.tgz#7f816433fb2cbc511ec8bf7d263c3b58a1a3c251" + integrity sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g== + zustand@^3.7.2: version "3.7.2" resolved "https://mirrors.cloud.tencent.com/npm/zustand/-/zustand-3.7.2.tgz#7b44c4f4a5bfd7a8296a3957b13e1c346f42514d"