diff --git a/.gitignore b/.gitignore index 13f94bb42b..bfb98259ec 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ /target /compiled/crates .swc +/server diff --git a/examples/normal/.dumirc.ts b/examples/normal/.dumirc.ts index b5a7c1c952..a72ed97d3c 100644 --- a/examples/normal/.dumirc.ts +++ b/examples/normal/.dumirc.ts @@ -6,5 +6,6 @@ export default { themeConfig: { name: '示例' }, mfsu: false, apiParser: {}, + live: true, resolve: { entryFile: './src/index.ts' }, }; diff --git a/examples/normal/docs/index.md b/examples/normal/docs/index.md index 47ca14f09d..500d5fb2ba 100644 --- a/examples/normal/docs/index.md +++ b/examples/normal/docs/index.md @@ -30,7 +30,7 @@ features: 代码块 demo ```jsx -import react from 'react'; +import React from 'react'; export default () => <>Hello first code block demo!; ``` diff --git a/examples/normal/package.json b/examples/normal/package.json index a048b980d5..b0cc238dc9 100644 --- a/examples/normal/package.json +++ b/examples/normal/package.json @@ -8,6 +8,7 @@ "start": "npm run dev" }, "dependencies": { + "antd": "^5.0.0", "react": "^18.2.0" }, "devDependencies": { diff --git a/examples/normal/src/Foo/demo/work.tsx b/examples/normal/src/Foo/demo/work.tsx index e73dd6052a..1442a85233 100644 --- a/examples/normal/src/Foo/demo/work.tsx +++ b/examples/normal/src/Foo/demo/work.tsx @@ -2,5 +2,12 @@ * title: 我是标题 * description: 我是简介,我可以用 `Markdown` 来编写 */ +import { Button, Space } from 'antd'; +import React from 'react'; -export default () => 'External Demo Block'; +export default () => ( + +
External Demo Block
+ +
+); diff --git a/examples/normal/src/Foo/index.md b/examples/normal/src/Foo/index.md index ace042fc67..d988f8333c 100644 --- a/examples/normal/src/Foo/index.md +++ b/examples/normal/src/Foo/index.md @@ -1,7 +1,9 @@ 组件路由测试 ```jsx -export default () => 'Hello Foo!'; +import React from 'react'; + +export default () =>
Hello Foo!
; ``` 你好,Foo! diff --git a/package.json b/package.json index d9c2334e87..e37e4f14a7 100644 --- a/package.json +++ b/package.json @@ -122,6 +122,7 @@ "react-copy-to-clipboard": "^5.1.0", "react-error-boundary": "^4.0.10", "react-intl": "^6.4.4", + "react-simple-code-editor": "^0.13.1", "rehype-autolink-headings": "^6.1.1", "rehype-remove-comments": "^5.0.0", "rehype-stringify": "^9.0.3", @@ -132,6 +133,7 @@ "remark-rehype": "^10.1.0", "sass": "^1.64.1", "sitemap": "^7.1.1", + "sucrase": "^3.34.0", "umi": "^4.0.84", "unified": "^10.1.2", "unist-util-visit": "^4.1.2", @@ -150,8 +152,10 @@ "@types/lodash.throttle": "^4.1.7", "@types/node": "^18.17.1", "@types/pluralize": "^0.0.30", + "@types/prismjs": "^1.26.0", "@types/react": "^18.2.17", "@types/react-copy-to-clipboard": "^5.0.4", + "@types/react-dom": "^18.2.7", "@umijs/lint": "^4.0.84", "@umijs/plugins": "4.0.32", "dumi-theme-mobile": "workspace:*", @@ -165,6 +169,7 @@ "prettier-plugin-organize-imports": "^3.2.3", "prettier-plugin-packagejson": "^2.4.5", "react": "^18.2.0", + "react-dom": "^18.2.0", "stylelint": "^15.10.2", "ts-node": "^10.9.1", "typescript": "~5.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0af455a29a..2464a9fd6e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,5 +1,9 @@ lockfileVersion: '6.0' +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + importers: .: @@ -123,28 +127,28 @@ importers: version: 4.0.2(webpack@5.82.0) rc-motion: specifier: ^2.7.3 - version: 2.7.3(react-dom@17.0.2)(react@18.2.0) + version: 2.7.3(react-dom@18.2.0)(react@18.2.0) rc-tabs: specifier: ^12.10.0 - version: 12.10.0(react-dom@17.0.2)(react@18.2.0) + version: 12.10.0(react-dom@18.2.0)(react@18.2.0) rc-tree: specifier: ^5.7.9 - version: 5.7.9(react-dom@17.0.2)(react@18.2.0) + version: 5.7.9(react-dom@18.2.0)(react@18.2.0) rc-util: specifier: ^5.37.0 - version: 5.37.0(react-dom@17.0.2)(react@18.2.0) + version: 5.37.0(react-dom@18.2.0)(react@18.2.0) react-copy-to-clipboard: specifier: ^5.1.0 version: 5.1.0(react@18.2.0) - react-dom: - specifier: '>=16.8' - version: 17.0.2(react@18.2.0) react-error-boundary: specifier: ^4.0.10 version: 4.0.10(react@18.2.0) react-intl: specifier: ^6.4.4 version: 6.4.4(react@18.2.0)(typescript@5.0.4) + react-simple-code-editor: + specifier: ^0.13.1 + version: 0.13.1(react-dom@18.2.0)(react@18.2.0) rehype-autolink-headings: specifier: ^6.1.1 version: 6.1.1 @@ -175,9 +179,12 @@ importers: sitemap: specifier: ^7.1.1 version: 7.1.1 + sucrase: + specifier: ^3.34.0 + version: 3.34.0 umi: specifier: ^4.0.84 - version: 4.0.84(@babel/core@7.22.9)(@types/node@18.17.1)(@types/react@18.2.17)(eslint@8.46.0)(postcss@8.4.25)(prettier@2.8.8)(react-dom@17.0.2)(react@18.2.0)(sass@1.64.1)(styled-components@5.3.10)(stylelint@15.10.2)(typescript@5.0.4)(webpack@5.82.0) + version: 4.0.84(@babel/core@7.22.9)(@types/node@18.17.1)(@types/react@18.2.17)(eslint@8.46.0)(postcss@8.4.31)(prettier@2.8.8)(react-dom@18.2.0)(react@18.2.0)(sass@1.64.1)(styled-components@5.3.10)(stylelint@15.10.2)(typescript@5.0.4)(webpack@5.82.0) unified: specifier: ^10.1.2 version: 10.1.2 @@ -224,18 +231,24 @@ importers: '@types/pluralize': specifier: ^0.0.30 version: 0.0.30 + '@types/prismjs': + specifier: ^1.26.0 + version: 1.26.0 '@types/react': specifier: ^18.2.17 version: 18.2.17 '@types/react-copy-to-clipboard': specifier: ^5.0.4 version: 5.0.4 + '@types/react-dom': + specifier: ^18.2.7 + version: 18.2.7 '@umijs/lint': specifier: ^4.0.84 version: 4.0.84(eslint@8.46.0)(styled-components@5.3.10)(stylelint@15.10.2)(typescript@5.0.4) '@umijs/plugins': specifier: 4.0.32 - version: 4.0.32(@types/lodash.merge@4.6.7)(@types/react@18.2.17)(antd@5.4.7)(dva@2.5.0-beta.2)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0)(vite@4.3.1) + version: 4.0.32(@types/lodash.merge@4.6.7)(@types/react-dom@18.2.7)(@types/react@18.2.17)(antd@5.4.7)(dva@2.5.0-beta.2)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0)(vite@4.3.1) dumi-theme-mobile: specifier: workspace:* version: link:suites/theme-mobile @@ -269,6 +282,9 @@ importers: react: specifier: ^18.2.0 version: 18.2.0 + react-dom: + specifier: ^18.2.0 + version: 18.2.0(react@18.2.0) stylelint: specifier: ^15.10.2 version: 15.10.2 @@ -299,6 +315,9 @@ importers: examples/normal: dependencies: + antd: + specifier: ^5.0.0 + version: 5.4.7(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 version: 18.2.0 @@ -377,16 +396,15 @@ packages: /@ant-design/colors@6.0.0: resolution: {integrity: sha512-qAZRvPzfdWHtfameEGP2Qvuf838NhergR35o+EuVyB5XvSA98xod5r4utvi4TJ3ywmevm290g9nsCG5MryrdWQ==} dependencies: - '@ctrl/tinycolor': 3.4.1 + '@ctrl/tinycolor': 3.6.0 dev: true /@ant-design/colors@7.0.0: resolution: {integrity: sha512-iVm/9PfGCbC0dSMBrz7oiEXZaaGH7ceU40OJEfKmyuzR9R5CRimJYPlRiFtMQGQcbNMea/ePcoIebi4ASGYXtg==} dependencies: '@ctrl/tinycolor': 3.6.0 - dev: true - /@ant-design/cssinjs@0.0.0-alpha.54(react-dom@17.0.2)(react@18.2.0): + /@ant-design/cssinjs@0.0.0-alpha.54(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-oCQOaXfpLrSTFZiVV9/y7u9ykwyzE4KUBHq19cBkNfOv3Q2rdxfckv1Fun+ovBZblqU85YGxpDIGch9Xzkiixw==} peerDependencies: react: '>=16.0.0' @@ -397,13 +415,13 @@ packages: '@emotion/unitless': 0.7.5 classnames: 2.3.2 csstype: 3.1.1 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) stylis: 4.1.3 dev: true - /@ant-design/cssinjs@1.9.1(react-dom@17.0.2)(react@18.2.0): + /@ant-design/cssinjs@1.9.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-CZt1vCMs/sY7RoacYuIkZwQmb8Bhp99ReNNE9Y8lnUzik8fmCdKAQA7ecvVOFwmNFdcBHga7ye/XIRrsbkiqWw==} peerDependencies: react: '>=16.0.0' @@ -414,16 +432,15 @@ packages: '@emotion/unitless': 0.7.5 classnames: 2.3.2 csstype: 3.1.1 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) stylis: 4.1.3 - dev: true /@ant-design/icons-svg@4.2.1: resolution: {integrity: sha512-EB0iwlKDGpG93hW8f85CTJTs4SvMX7tt5ceupvhALp1IF44SeUFOMhKUOYqpsoYWQKAOuTRDMqn75rEaKDp0Xw==} - /@ant-design/icons@4.7.0(react-dom@17.0.2)(react@18.2.0): + /@ant-design/icons@4.7.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-aoB4Z7JA431rt6d4u+8xcNPPCrdufSRMUOpxa1ab6mz1JCQZOEVolj2WVs/tDFmN62zzK30mNelEsprLYsSF3g==} engines: {node: '>=8'} peerDependencies: @@ -434,12 +451,12 @@ packages: '@ant-design/icons-svg': 4.2.1 '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) dev: true - /@ant-design/icons@5.0.1(react-dom@17.0.2)(react@18.2.0): + /@ant-design/icons@5.0.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-ZyF4ksXCcdtwA/1PLlnFLcF/q8/MhwxXhKHh4oCHDA4Ip+ZzAHoICtyp4wZWfiCVDP0yuz3HsjyvuldHFb3wjA==} engines: {node: '>=8'} peerDependencies: @@ -450,69 +467,68 @@ packages: '@ant-design/icons-svg': 4.2.1 '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /@ant-design/pro-card@2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-card@2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-PGFcfIF3Qegtpo97LmzB4QtBS2dGXTvt6A/HMUgcZzW6cs2rHeAdDYJedpTkJUK8r76ZCxxVDIHufFuscK+bTg==} peerDependencies: antd: '>=4.20.0' react: '>=16.9.0' dependencies: - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 omit.js: 2.0.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 transitivePeerDependencies: - prop-types - react-dom dev: true - /@ant-design/pro-components@2.3.30(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-components@2.3.30(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-2afvUlZEXqEUNvDY60G7cpP4OQW9bzMl+aTpQconrWMXMXe1sRi800w27Lx5eC+ZCvriYLa9Itf8mnN2r2ASRA==} peerDependencies: antd: '>=4.20.0' react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@ant-design/pro-card': 2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-descriptions': 2.0.26(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-form': 2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-layout': 7.2.1(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-list': 2.0.27(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-skeleton': 2.0.4(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-table': 3.1.4(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/pro-card': 2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-descriptions': 2.0.26(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-form': 2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-layout': 7.2.1(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-list': 2.0.27(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-skeleton': 2.0.4(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-table': 3.1.4(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) transitivePeerDependencies: - '@types/lodash.merge' - prop-types - rc-field-form dev: true - /@ant-design/pro-descriptions@2.0.26(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-descriptions@2.0.26(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-QqOOombGeswcd88ScH/T/5P+/INpmdFTYssaxNyZ80UVKkS8jF0nEfJcyJiqbssEw+l8iWOvJt0dGLA50Mvllw==} peerDependencies: react: '>=16.9.0' dependencies: - '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-form': 2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-skeleton': 2.0.4(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-form': 2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-skeleton': 2.0.4(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 use-json-comparison: 1.0.6(react@18.2.0) transitivePeerDependencies: @@ -523,21 +539,21 @@ packages: - react-dom dev: true - /@ant-design/pro-field@2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-field@2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-Vr8vnO6uPXpxZnMubgmCvAgk+paPXLgHlFECEAyf5A+xPXY2eo+X+zm+IdnhyDlGpNBE8THsfcoQNNBw9h87Rw==} peerDependencies: react: '>=16.9.0' dependencies: - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 '@chenshuai2144/sketch-color': 1.0.8(react@18.2.0) classnames: 2.3.2 dayjs: 1.11.6 lodash.tonumber: 4.0.3 omit.js: 2.0.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 swr: 1.3.0(react@18.2.0) transitivePeerDependencies: @@ -546,7 +562,7 @@ packages: - react-dom dev: true - /@ant-design/pro-form@2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-form@2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-+KsxHWJDTlToRF9QfmgwKtq5weKRIrDhzA9WDFTle1OtjQkh3EuaasgzHfHkxI7g6myXHTZnhqvNxZN2jBbMaA==} peerDependencies: '@types/lodash.merge': ^4.6.7 @@ -555,51 +571,51 @@ packages: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 '@types/lodash.merge': 4.6.7 '@umijs/use-params': 1.0.9(react@18.2.0) - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 lodash.merge: 4.6.2 omit.js: 2.0.2 - rc-field-form: 1.30.0(react-dom@17.0.2)(react@18.2.0) - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-field-form: 1.30.0(react-dom@18.2.0)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) use-json-comparison: 1.0.6(react@18.2.0) use-media-antd-query: 1.1.0(react@18.2.0) transitivePeerDependencies: - prop-types dev: true - /@ant-design/pro-layout@7.2.1(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-layout@7.2.1(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-fNqrKzPh5YfmZM44O5ZGvHdGaXNWQFLvFUcP8NuQWm09lhaMeH8yCP76jw0BPZdluTPJslHlBLOATa8FIhyx9g==} peerDependencies: antd: '>=4.20.0' react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 '@umijs/route-utils': 2.2.1 '@umijs/ssr-darkreader': 4.9.45 '@umijs/use-params': 1.0.9(react@18.2.0) - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 lodash.merge: 4.6.2 omit.js: 2.0.2 path-to-regexp: 2.4.0 - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) swr: 1.3.0(react@18.2.0) unstated-next: 1.1.0 use-json-comparison: 1.0.6(react@18.2.0) @@ -609,25 +625,25 @@ packages: - prop-types dev: true - /@ant-design/pro-list@2.0.27(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-list@2.0.27(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-NLOrg+VJkOm0DMqvBo1wmlq2ZEKPzUki6HQ81X0lrNqgP7j703oEsOLR2kfOeHNvcJA4YS+FNGSJgfxvBxPi1w==} peerDependencies: antd: '>=4.20.0' react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-card': 2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-table': 3.1.4(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-card': 2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-table': 3.1.4(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 dayjs: 1.11.6 - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) rc-util: 4.21.1 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) unstated-next: 1.1.0 use-media-antd-query: 1.1.0(react@18.2.0) transitivePeerDependencies: @@ -636,24 +652,24 @@ packages: - rc-field-form dev: true - /@ant-design/pro-provider@2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-provider@2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-HTxM0JpslPWrd9f+6VksS66NJ07kNAmI2BajwDpBkJblvBS4+2cXv1dg4D1PX2jpz0Sza6VWAISkN4fVzsjy7A==} peerDependencies: antd: '>=4.20.0' react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@ant-design/cssinjs': 0.0.0-alpha.54(react-dom@17.0.2)(react@18.2.0) + '@ant-design/cssinjs': 0.0.0-alpha.54(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 - '@ctrl/tinycolor': 3.4.1 - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + '@ctrl/tinycolor': 3.6.0 + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) swr: 1.3.0(react@18.2.0) dev: true - /@ant-design/pro-skeleton@2.0.4(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-skeleton@2.0.4(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-n5O55bpXWt4nt+304PhUQNgvp3FsuOV4cTvrVpzlMKNt0iHyT3sy25bFeTyb6L0N/JzGjxAQ6YCh3illrltpPg==} peerDependencies: antd: '>=4.20.0' @@ -661,13 +677,13 @@ packages: react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) use-media-antd-query: 1.1.0(react@18.2.0) dev: true - /@ant-design/pro-table@3.1.4(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-table@3.1.4(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-iILHNqqoc4snnpcf6ePRlLfOSZlGU2PZC4dlH/cnQjnrSAN4RGbwq9h9NPDC/UGtucs8WZ4/WTgNwaXzDGd9xg==} peerDependencies: antd: '>=4.20.0' @@ -675,22 +691,22 @@ packages: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-card': 2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-form': 2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-card': 2.0.24(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-field': 2.1.19(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-form': 2.2.17(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-utils': 2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 dayjs: 1.11.6 omit.js: 2.0.2 - rc-field-form: 1.30.0(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-field-form: 1.30.0(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - react-sortable-hoc: 2.0.0(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) + react-sortable-hoc: 2.0.0(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) unstated-next: 1.1.0 use-json-comparison: 1.0.6(react@18.2.0) use-media-antd-query: 1.1.0(react@18.2.0) @@ -699,23 +715,23 @@ packages: - prop-types dev: true - /@ant-design/pro-utils@2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0): + /@ant-design/pro-utils@2.3.2(antd@5.4.7)(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-efNBTg3fa8Oe4iTJiVVSevqkk3rCDyg6Y+0t2KpWmQ+TWicpAqLK4rLHBkkEf3H0x95HXDVpKdwRW8K2bywG8A==} peerDependencies: antd: '>=4.20.0' react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-provider': 2.0.14(antd@5.4.7)(react-dom@18.2.0)(react@18.2.0) '@babel/runtime': 7.21.0 - antd: 5.4.7(react-dom@17.0.2)(react@18.2.0) + antd: 5.4.7(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 dayjs: 1.11.6 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - react-sortable-hoc: 2.0.0(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) + react-sortable-hoc: 2.0.0(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) swr: 1.3.0(react@18.2.0) transitivePeerDependencies: - prop-types @@ -732,7 +748,6 @@ packages: react: 18.2.0 resize-observer-polyfill: 1.5.1 throttle-debounce: 5.0.0 - dev: true /@antfu/install-pkg@0.1.1: resolution: {integrity: sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ==} @@ -1496,19 +1511,12 @@ packages: dependencies: postcss-selector-parser: 6.0.13 - /@ctrl/tinycolor@3.4.1: - resolution: {integrity: sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw==} - engines: {node: '>=10'} - dev: true - /@ctrl/tinycolor@3.6.0: resolution: {integrity: sha512-/Z3l6pXthq0JvMYdUFyX9j0MaCltlIn6mfh9jLyQwg5aPKxkyNa0PTHtU1AlFXLNk55ZuAeJRcpvq+tmLfKmaQ==} engines: {node: '>=10'} - dev: true /@emotion/hash@0.8.0: resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==} - dev: true /@emotion/is-prop-valid@1.2.1: resolution: {integrity: sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==} @@ -2061,7 +2069,7 @@ packages: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} dependencies: '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 + '@jridgewell/sourcemap-codec': 1.4.15 dev: true /@loadable/component@5.15.2(react@18.1.0): @@ -2374,26 +2382,24 @@ packages: resolution: {integrity: sha512-2jIiLiVZB1jnY7IIRQKtoV8Gnr7XIhk4mC88ONGunZE3hYt5IHUG4BE/6+JiTBjjEWQLBeWnZB8hGpppkufiVw==} dev: true - /@rc-component/context@1.3.0(react-dom@17.0.2)(react@18.2.0): + /@rc-component/context@1.3.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-6QdaCJ7Wn5UZLJs15IEfqy4Ru3OaL5ctqpQYWd5rlfV9wwzrzdt6+kgAQZV/qdB0MUPN4nhyBfRembQCIvBf+w==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) /@rc-component/mini-decimal@1.0.1: resolution: {integrity: sha512-9N8nRk0oKj1qJzANKl+n9eNSMUGsZtjwNuDCiZ/KA+dt1fE3zq5x2XxclRcAbOIXnZcJ53ozP2Pa60gyELXagA==} engines: {node: '>=8.x'} dependencies: '@babel/runtime': 7.21.0 - dev: true - /@rc-component/mutate-observer@1.0.0(react-dom@17.0.2)(react@18.2.0): + /@rc-component/mutate-observer@1.0.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-okqRJSfNisXdI6CUeOLZC5ukBW/8kir2Ii4PJiKpUt+3+uS7dxwJUMxsUZquxA1rQuL8YcEmKVp/TCnR+yUdZA==} engines: {node: '>=8.x'} peerDependencies: @@ -2402,12 +2408,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /@rc-component/portal@1.1.1(react-dom@17.0.2)(react@18.2.0): + /@rc-component/portal@1.1.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-m8w3dFXX0H6UkJ4wtfrSwhe2/6M08uz24HHrF8pWfAXPwA9hwCuTE5per/C86KwNLouRpwFGcr7LfpHaa1F38g==} engines: {node: '>=8.x'} peerDependencies: @@ -2416,11 +2421,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) - /@rc-component/tour@1.8.0(react-dom@17.0.2)(react@18.2.0): + /@rc-component/tour@1.8.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-rrRGioHTLQlGca27G2+lw7QpRb3uuMYCUIJjj31/B44VCJS0P2tqYhOgtzvWQmaLMlWH3ZlpzotkKX13NT4XEA==} engines: {node: '>=8.x'} peerDependencies: @@ -2428,15 +2433,14 @@ packages: react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/portal': 1.1.1(react-dom@17.0.2)(react@18.2.0) - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/portal': 1.1.1(react-dom@18.2.0)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /@rc-component/trigger@1.12.0(react-dom@17.0.2)(react@18.2.0): + /@rc-component/trigger@1.12.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-exkkpV2ImoTUORRzdxpuxiRIV7bteE6B/c6ccYL8zmv4i188H/9yU8r5JH5aF25fcpayd/YScKrdK/7JZdtuOw==} engines: {node: '>=8.x'} peerDependencies: @@ -2444,14 +2448,14 @@ packages: react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/portal': 1.1.1(react-dom@17.0.2)(react@18.2.0) + '@rc-component/portal': 1.1.1(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-align: 4.0.12(react-dom@17.0.2)(react@18.2.0) - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-align: 4.0.12(react-dom@18.2.0)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) /@rushstack/node-core-library@3.51.1: resolution: {integrity: sha512-xLoUztvGpaT5CphDexDPt2WbBx8D68VS5tYOkwfr98p90y0f/wepgXlTA/q5MUeZGGucASiXKp5ysdD+GPYf9A==} @@ -3057,6 +3061,10 @@ packages: resolution: {integrity: sha512-kVww6xZrW/db5BR9OqiT71J9huRdQ+z/r+LbDuT7/EK50mCmj5FoaIARnVv0rvjUS/YpDox0cDU9lpQT011VBA==} dev: true + /@types/prismjs@1.26.0: + resolution: {integrity: sha512-ZTaqn/qSqUuAq1YwvOFQfVW1AR/oQJlLSZVustdjwI+GZ8kr0MSHBj0tsXPW1EqHubx50gtBEjbPGsdZwQwCjQ==} + dev: true + /@types/prop-types@15.7.5: resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} @@ -3076,6 +3084,12 @@ packages: '@types/react': 18.2.17 dev: true + /@types/react-dom@18.2.7: + resolution: {integrity: sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==} + dependencies: + '@types/react': 18.2.17 + dev: true + /@types/react-router-dom@4.3.5: resolution: {integrity: sha512-eFajSUASYbPHg2BDM1G8Btx+YqGgvROPIg6sBhl3O4kbDdYXdFdfrgQFf/pcBuQVObjfT9AL/dd15jilR5DIEA==} dependencies: @@ -3405,7 +3419,7 @@ packages: transitivePeerDependencies: - supports-color - /@umijs/bundler-vite@4.0.84(@types/node@18.17.1)(postcss@8.4.25)(sass@1.64.1): + /@umijs/bundler-vite@4.0.84(@types/node@18.17.1)(postcss@8.4.31)(sass@1.64.1): resolution: {integrity: sha512-DUWuY7wug69GEg941i3tjA1YXdi9DyYu68PIVMVaHoDc3IzWLa/NX1DMT2BKu/zBalOw/0fKHWA67r6pONPVUA==} hasBin: true dependencies: @@ -3739,13 +3753,13 @@ packages: tsx: 3.12.2 dev: false - /@umijs/plugins@4.0.32(@types/lodash.merge@4.6.7)(@types/react@18.2.17)(antd@5.4.7)(dva@2.5.0-beta.2)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0)(vite@4.3.1): + /@umijs/plugins@4.0.32(@types/lodash.merge@4.6.7)(@types/react-dom@18.2.7)(@types/react@18.2.17)(antd@5.4.7)(dva@2.5.0-beta.2)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0)(vite@4.3.1): resolution: {integrity: sha512-yMcO/PUKe9Nmj197gtXrzGybIbNRWGAYLrGsVTw2lXMHN2McDetdRIvXTXNsN2yiFC94NY4jibVEq0RKPD5jJg==} dependencies: '@ahooksjs/use-request': 2.8.15(react@18.2.0) '@ant-design/antd-theme-variable': 1.0.0 - '@ant-design/icons': 4.7.0(react-dom@17.0.2)(react@18.2.0) - '@ant-design/pro-components': 2.3.30(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@17.0.2)(react@18.2.0) + '@ant-design/icons': 4.7.0(react-dom@18.2.0)(react@18.2.0) + '@ant-design/pro-components': 2.3.30(@types/lodash.merge@4.6.7)(antd@5.4.7)(prop-types@15.8.1)(rc-field-form@1.30.0)(react-dom@18.2.0)(react@18.2.0) '@umijs/bundler-utils': 4.0.32 '@umijs/valtio': 1.0.0(react@18.2.0)(vite@4.3.1) antd-dayjs-webpack-plugin: 1.0.6(dayjs@1.11.6) @@ -3762,7 +3776,7 @@ packages: moment: 2.29.4 qiankun: 2.8.4 react-intl: 3.12.1(react@18.2.0) - react-redux: 8.0.5(@types/react@18.2.17)(react-dom@17.0.2)(react@18.2.0)(redux@4.2.0) + react-redux: 8.0.5(@types/react-dom@18.2.7)(@types/react@18.2.17)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.0) redux: 4.2.0 warning: 4.0.3 transitivePeerDependencies: @@ -3785,7 +3799,7 @@ packages: - vite dev: true - /@umijs/preset-umi@4.0.84(@types/node@18.17.1)(@types/react@18.2.17)(postcss@8.4.25)(sass@1.64.1)(styled-components@5.3.10)(typescript@5.0.4)(webpack@5.82.0): + /@umijs/preset-umi@4.0.84(@types/node@18.17.1)(@types/react@18.2.17)(postcss@8.4.31)(sass@1.64.1)(styled-components@5.3.10)(typescript@5.0.4)(webpack@5.82.0): resolution: {integrity: sha512-8/rhX0E4T3J9xsuxMNH548NsAbIJYy0fvxXOcBueGMH0wQHlMDA4oMgKNSfj05DCk2XhyYcnVFzaOHD6K+Dhzw==} dependencies: '@iconify/utils': 2.1.1 @@ -3794,7 +3808,7 @@ packages: '@umijs/babel-preset-umi': 4.0.84(styled-components@5.3.10) '@umijs/bundler-esbuild': 4.0.84 '@umijs/bundler-utils': 4.0.84 - '@umijs/bundler-vite': 4.0.84(@types/node@18.17.1)(postcss@8.4.25)(sass@1.64.1) + '@umijs/bundler-vite': 4.0.84(@types/node@18.17.1)(postcss@8.4.31)(sass@1.64.1) '@umijs/bundler-webpack': 4.0.84(styled-components@5.3.10)(typescript@5.0.4)(webpack@5.82.0) '@umijs/core': 4.0.84 '@umijs/did-you-know': 1.0.3 @@ -3881,34 +3895,34 @@ packages: webpack: 5.82.0(@swc/core@1.3.72) dev: false - /@umijs/renderer-react@4.0.84(react-dom@17.0.2)(react@18.2.0): + /@umijs/renderer-react@4.0.84(react-dom@18.1.0)(react@18.1.0): resolution: {integrity: sha512-0SDMuLsBpXmdNzubwke0ihq1tvlhDumZn0BJ0JC7xavOmx9bx6jWo3BRrBn1BfkUoCJC8E4C8ZmDJMKrmQ7BUA==} peerDependencies: react: '>=16.8' react-dom: '>=16.8' dependencies: '@babel/runtime': 7.21.0 - '@loadable/component': 5.15.2(react@18.2.0) + '@loadable/component': 5.15.2(react@18.1.0) history: 5.3.0 - react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - react-helmet-async: 1.3.0(react-dom@17.0.2)(react@18.2.0) - react-router-dom: 6.3.0(react-dom@17.0.2)(react@18.2.0) + react: 18.1.0 + react-dom: 18.1.0(react@18.1.0) + react-helmet-async: 1.3.0(react-dom@18.1.0)(react@18.1.0) + react-router-dom: 6.3.0(react-dom@18.1.0)(react@18.1.0) dev: false - /@umijs/renderer-react@4.0.84(react-dom@18.1.0)(react@18.1.0): + /@umijs/renderer-react@4.0.84(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-0SDMuLsBpXmdNzubwke0ihq1tvlhDumZn0BJ0JC7xavOmx9bx6jWo3BRrBn1BfkUoCJC8E4C8ZmDJMKrmQ7BUA==} peerDependencies: react: '>=16.8' react-dom: '>=16.8' dependencies: '@babel/runtime': 7.21.0 - '@loadable/component': 5.15.2(react@18.1.0) + '@loadable/component': 5.15.2(react@18.2.0) history: 5.3.0 - react: 18.1.0 - react-dom: 18.1.0(react@18.1.0) - react-helmet-async: 1.3.0(react-dom@18.1.0)(react@18.1.0) - react-router-dom: 6.3.0(react-dom@18.1.0)(react@18.1.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0) + react-router-dom: 6.3.0(react-dom@18.2.0)(react@18.2.0) dev: false /@umijs/route-utils@2.2.1: @@ -4328,66 +4342,69 @@ packages: dayjs: 1.11.6 dev: true - /antd@5.4.7(react-dom@17.0.2)(react@18.2.0): + /antd@5.4.7(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-kFClbdlrultV1SJh8oxHSCCsO3iLGc6QFu0IIHGNuC4JHkDc2Ed94sk7XSmOTcENLcTd7BQYP0A4nK0VERp7vA==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@ant-design/colors': 7.0.0 - '@ant-design/cssinjs': 1.9.1(react-dom@17.0.2)(react@18.2.0) - '@ant-design/icons': 5.0.1(react-dom@17.0.2)(react@18.2.0) + '@ant-design/cssinjs': 1.9.1(react-dom@18.2.0)(react@18.2.0) + '@ant-design/icons': 5.0.1(react-dom@18.2.0)(react@18.2.0) '@ant-design/react-slick': 1.0.0(react@18.2.0) '@babel/runtime': 7.21.0 '@ctrl/tinycolor': 3.6.0 - '@rc-component/mutate-observer': 1.0.0(react-dom@17.0.2)(react@18.2.0) - '@rc-component/tour': 1.8.0(react-dom@17.0.2)(react@18.2.0) - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/mutate-observer': 1.0.0(react-dom@18.2.0)(react@18.2.0) + '@rc-component/tour': 1.8.0(react-dom@18.2.0)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 copy-to-clipboard: 3.3.3 dayjs: 1.11.6 qrcode.react: 3.1.0(react@18.2.0) - rc-cascader: 3.10.3(react-dom@17.0.2)(react@18.2.0) - rc-checkbox: 3.0.0(react-dom@17.0.2)(react@18.2.0) - rc-collapse: 3.5.2(react-dom@17.0.2)(react@18.2.0) - rc-dialog: 9.1.0(react-dom@17.0.2)(react@18.2.0) - rc-drawer: 6.1.5(react-dom@17.0.2)(react@18.2.0) - rc-dropdown: 4.0.1(react-dom@17.0.2)(react@18.2.0) - rc-field-form: 1.30.0(react-dom@17.0.2)(react@18.2.0) - rc-image: 5.16.0(react-dom@17.0.2)(react@18.2.0) - rc-input: 1.0.4(react-dom@17.0.2)(react@18.2.0) - rc-input-number: 7.4.2(react-dom@17.0.2)(react@18.2.0) - rc-mentions: 2.2.0(react-dom@17.0.2)(react@18.2.0) - rc-menu: 9.8.4(react-dom@17.0.2)(react@18.2.0) - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-notification: 5.0.3(react-dom@17.0.2)(react@18.2.0) - rc-pagination: 3.3.1(react-dom@17.0.2)(react@18.2.0) - rc-picker: 3.6.2(dayjs@1.11.6)(react-dom@17.0.2)(react@18.2.0) - rc-progress: 3.4.1(react-dom@17.0.2)(react@18.2.0) - rc-rate: 2.10.0(react-dom@17.0.2)(react@18.2.0) - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-segmented: 2.1.2(react-dom@17.0.2)(react@18.2.0) - rc-select: 14.4.3(react-dom@17.0.2)(react@18.2.0) - rc-slider: 10.1.1(react-dom@17.0.2)(react@18.2.0) - rc-steps: 6.0.0(react-dom@17.0.2)(react@18.2.0) - rc-switch: 4.1.0(react-dom@17.0.2)(react@18.2.0) - rc-table: 7.31.1(react-dom@17.0.2)(react@18.2.0) - rc-tabs: 12.5.6(react-dom@17.0.2)(react@18.2.0) - rc-textarea: 1.2.3(react-dom@17.0.2)(react@18.2.0) - rc-tooltip: 6.0.1(react-dom@17.0.2)(react@18.2.0) - rc-tree: 5.7.9(react-dom@17.0.2)(react@18.2.0) - rc-tree-select: 5.8.0(react-dom@17.0.2)(react@18.2.0) - rc-upload: 4.3.4(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-cascader: 3.10.3(react-dom@18.2.0)(react@18.2.0) + rc-checkbox: 3.0.0(react-dom@18.2.0)(react@18.2.0) + rc-collapse: 3.5.2(react-dom@18.2.0)(react@18.2.0) + rc-dialog: 9.1.0(react-dom@18.2.0)(react@18.2.0) + rc-drawer: 6.1.5(react-dom@18.2.0)(react@18.2.0) + rc-dropdown: 4.0.1(react-dom@18.2.0)(react@18.2.0) + rc-field-form: 1.30.0(react-dom@18.2.0)(react@18.2.0) + rc-image: 5.16.0(react-dom@18.2.0)(react@18.2.0) + rc-input: 1.0.4(react-dom@18.2.0)(react@18.2.0) + rc-input-number: 7.4.2(react-dom@18.2.0)(react@18.2.0) + rc-mentions: 2.2.0(react-dom@18.2.0)(react@18.2.0) + rc-menu: 9.8.4(react-dom@18.2.0)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-notification: 5.0.3(react-dom@18.2.0)(react@18.2.0) + rc-pagination: 3.3.1(react-dom@18.2.0)(react@18.2.0) + rc-picker: 3.6.2(dayjs@1.11.6)(react-dom@18.2.0)(react@18.2.0) + rc-progress: 3.4.1(react-dom@18.2.0)(react@18.2.0) + rc-rate: 2.10.0(react-dom@18.2.0)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-segmented: 2.1.2(react-dom@18.2.0)(react@18.2.0) + rc-select: 14.4.3(react-dom@18.2.0)(react@18.2.0) + rc-slider: 10.1.1(react-dom@18.2.0)(react@18.2.0) + rc-steps: 6.0.0(react-dom@18.2.0)(react@18.2.0) + rc-switch: 4.1.0(react-dom@18.2.0)(react@18.2.0) + rc-table: 7.31.1(react-dom@18.2.0)(react@18.2.0) + rc-tabs: 12.5.6(react-dom@18.2.0)(react@18.2.0) + rc-textarea: 1.2.3(react-dom@18.2.0)(react@18.2.0) + rc-tooltip: 6.0.1(react-dom@18.2.0)(react@18.2.0) + rc-tree: 5.7.9(react-dom@18.2.0)(react@18.2.0) + rc-tree-select: 5.8.0(react-dom@18.2.0)(react@18.2.0) + rc-upload: 4.3.4(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) scroll-into-view-if-needed: 3.0.10 throttle-debounce: 5.0.0 transitivePeerDependencies: - date-fns - luxon - moment - dev: true + + /any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + dev: false /anymatch@3.1.2: resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} @@ -4453,7 +4470,6 @@ packages: /array-tree-filter@2.1.0: resolution: {integrity: sha512-4ROwICNlNw/Hqa9v+rk5h22KjmzB1JGTMVKP2AKJBOCgb0yL0ASf0+YvCcLNNwquOHNX48jkeZIJ3a+oOQqKcw==} - dev: true /array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} @@ -4533,7 +4549,6 @@ packages: /async-validator@4.2.5: resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==} - dev: true /asynciterator.prototype@1.0.0: resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} @@ -4669,7 +4684,7 @@ packages: babel-plugin-syntax-jsx: 6.18.0 lodash: 4.17.21 picomatch: 2.3.1 - styled-components: 5.3.10(react-dom@17.0.2)(react-is@18.2.0)(react@18.2.0) + styled-components: 5.3.10(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0) /babel-plugin-syntax-jsx@6.18.0: resolution: {integrity: sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==} @@ -5288,6 +5303,11 @@ packages: /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + /commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + dev: false + /commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -5309,7 +5329,6 @@ packages: /compute-scroll-into-view@3.0.3: resolution: {integrity: sha512-nadqwNxghAGTamwIqQSG433W6OADZx2vCo3UXHNrzTRHK/htu+7+L0zhjEoaeaQVNAi3YgqWDv8+tzf0hRfR+A==} - dev: true /concat-map@0.0.1: resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} @@ -5710,7 +5729,6 @@ packages: /dayjs@1.11.6: resolution: {integrity: sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ==} - dev: true /debug@3.1.0: resolution: {integrity: sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==} @@ -6067,7 +6085,7 @@ packages: dva: ^2.5.0-0 dependencies: '@babel/runtime': 7.21.0 - dva: 2.5.0-beta.2(react-dom@17.0.2)(react@18.2.0) + dva: 2.5.0-beta.2(react-dom@18.2.0)(react@18.2.0) immer: 8.0.4 dev: true @@ -6080,7 +6098,7 @@ packages: dva-core: 2.0.4(redux@3.7.2) dev: true - /dva@2.5.0-beta.2(react-dom@17.0.2)(react@18.2.0): + /dva@2.5.0-beta.2(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-kc2+CHhF1cNIU3Rg1miMhHgOKJ/VDrq9d6ynVBZf1EN2YKWU3MVFq/uTTBqMr2qkR0m9f8VKHOFmfKLtfMI93Q==} peerDependencies: react: 15.x || ^16.0.0-0 @@ -6096,7 +6114,7 @@ packages: invariant: 2.2.4 isomorphic-fetch: 2.2.1 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) react-redux: 5.1.2(react@18.2.0)(redux@3.7.2) react-router-dom: 4.3.1(react@18.2.0) react-router-redux: 5.0.0-alpha.9(react@18.2.0) @@ -7690,6 +7708,17 @@ packages: /glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + /glob@7.1.6: + resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: false + /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: @@ -8974,7 +9003,6 @@ packages: resolution: {integrity: sha512-SzoRg7ux5DWTII9J2qkrZrqV1gt+rTaoufMxEzXbS26Uid0NwaJd123HcoB80TgubEppxxIGdNxCx50fEoEWQA==} dependencies: string-convert: 0.2.1 - dev: true /json5@0.5.1: resolution: {integrity: sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==} @@ -10126,6 +10154,14 @@ packages: resolution: {integrity: sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==} dev: false + /mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + dev: false + /nanoid@2.1.11: resolution: {integrity: sha512-s/snB+WGm6uwi0WjsZdaVcuf3KJXlfGl2LcxgwkEwJF0D/BWzVWAZW/XY4bFaiR7s0Jk3FPvlnepg1H1b1UwlA==} dev: false @@ -11500,7 +11536,7 @@ packages: webpack: 5.82.0(@swc/core@1.3.72) dev: false - /rc-align@4.0.12(react-dom@17.0.2)(react@18.2.0): + /rc-align@4.0.12(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-3DuwSJp8iC/dgHzwreOQl52soj40LchlfUHtgACOUtwGuoFIOVh6n/sCpfqCU8kO5+iz6qR0YKvjgB8iPdE3aQ==} peerDependencies: react: '>=16.9.0' @@ -11510,12 +11546,12 @@ packages: classnames: 2.3.2 dom-align: 1.12.3 lodash: 4.17.21 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) resize-observer-polyfill: 1.5.1 - /rc-cascader@3.10.3(react-dom@17.0.2)(react@18.2.0): + /rc-cascader@3.10.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-RBK1u59a2m/RKY8F+UvW9pUXdPv7bCxh2s2DAb81QjXX7TbwSX92Y0tICYo/Bo8fRsAh2g+7RXVf488/98ijkA==} peerDependencies: react: '>=16.9.0' @@ -11524,14 +11560,13 @@ packages: '@babel/runtime': 7.21.0 array-tree-filter: 2.1.0 classnames: 2.3.2 - rc-select: 14.4.3(react-dom@17.0.2)(react@18.2.0) - rc-tree: 5.7.9(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-select: 14.4.3(react-dom@18.2.0)(react@18.2.0) + rc-tree: 5.7.9(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-checkbox@3.0.0(react-dom@17.0.2)(react@18.2.0): + /rc-checkbox@3.0.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-tOEs1+wWDUei7DuP2EsJCZfam5vxMjKTCGcZdXVgsiOcNszc41Esycbo31P0/jFwUAPmd5oPYFWkcnFUCTLZxA==} peerDependencies: react: '>=16.9.0' @@ -11539,12 +11574,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-collapse@3.5.2(react-dom@17.0.2)(react@18.2.0): + /rc-collapse@3.5.2(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-/TNiT3DW1t3sUCiVD/DPUYooJZ3BLA93/2rZsB3eM2bGJCCla2X9D2E4tgm7LGMQGy5Atb2lMUn2FQuvQNvavQ==} peerDependencies: react: '>=16.9.0' @@ -11552,43 +11586,40 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-dialog@9.1.0(react-dom@17.0.2)(react@18.2.0): + /rc-dialog@9.1.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-5ry+JABAWEbaKyYsmITtrJbZbJys8CtMyzV8Xn4LYuXMeUx5XVHNyJRoqLFE4AzBuXXzOWeaC49cg+XkxK6kHA==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/portal': 1.1.1(react-dom@17.0.2)(react@18.2.0) + '@rc-component/portal': 1.1.1(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-drawer@6.1.5(react-dom@17.0.2)(react@18.2.0): + /rc-drawer@6.1.5(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-MDRomQXFi+tvDuwsRAddJ2Oy2ayLCZ29weMzp3rJFO9UNEVLEVV7nuyx5lEgNJIdM//tE6wWQV95cTUiMVqD6w==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/portal': 1.1.1(react-dom@17.0.2)(react@18.2.0) + '@rc-component/portal': 1.1.1(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-dropdown@4.0.1(react-dom@17.0.2)(react@18.2.0): + /rc-dropdown@4.0.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-OdpXuOcme1rm45cR0Jzgfl1otzmU4vuBVb+etXM8vcaULGokAKVpKlw8p6xzspG7jGd/XxShvq+N3VNEfk/l5g==} peerDependencies: react: '>=16.11.0' @@ -11596,27 +11627,26 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-trigger: 5.3.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-trigger: 5.3.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-dropdown@4.1.0(react-dom@17.0.2)(react@18.2.0): + /rc-dropdown@4.1.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-VZjMunpBdlVzYpEdJSaV7WM7O0jf8uyDjirxXLZRNZ+tAC+NzD3PXPEtliFwGzVwBBdCmGuSqiS9DWcOLxQ9tw==} peerDependencies: react: '>=16.11.0' react-dom: '>=16.11.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) dev: false - /rc-field-form@1.30.0(react-dom@17.0.2)(react@18.2.0): + /rc-field-form@1.30.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-hCBa3/+m9SSuEPILSsxB/wd3ZFEmNTQfIhThhMaMp05fLwDDw+2K26lEZf5NuChQlx90VVNUOYmTslH6Ks4tpA==} engines: {node: '>=8.x'} peerDependencies: @@ -11625,28 +11655,26 @@ packages: dependencies: '@babel/runtime': 7.21.0 async-validator: 4.2.5 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-image@5.16.0(react-dom@17.0.2)(react@18.2.0): + /rc-image@5.16.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-11DOye57IgTXh2yTsmxFNynZJG3tdx8RZnnaqb38eYWrBPPyhVHIuURxyiSZ8B68lEUAggR7SBA0Zb95KP/CyQ==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/portal': 1.1.1(react-dom@17.0.2)(react@18.2.0) + '@rc-component/portal': 1.1.1(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-dialog: 9.1.0(react-dom@17.0.2)(react@18.2.0) - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-dialog: 9.1.0(react-dom@18.2.0)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-input-number@7.4.2(react-dom@17.0.2)(react@18.2.0): + /rc-input-number@7.4.2(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-yGturTw7WGP+M1GbJ+UTAO7L4buxeW6oilhL9Sq3DezsRS8/9qec4UiXUbeoiX9bzvRXH11JvgskBtxSp4YSNg==} peerDependencies: react: '>=16.9.0' @@ -11655,12 +11683,11 @@ packages: '@babel/runtime': 7.21.0 '@rc-component/mini-decimal': 1.0.1 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-input@1.0.4(react-dom@17.0.2)(react@18.2.0): + /rc-input@1.0.4(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-clY4oneVHRtKHYf/HCxT/MO+4BGzCIywSNLosXWOm7fcQAS0jQW7n0an8Raa8JMB8kpxc8m28p7SNwFZmlMj6g==} peerDependencies: react: '>=16.0.0' @@ -11668,45 +11695,43 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-mentions@2.2.0(react-dom@17.0.2)(react@18.2.0): + /rc-mentions@2.2.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-R7ncCldr02uKgJBBPlXdtnOGQIjZ9C3uoIMi4fabU3CPFdmefYlNF6QM4u2AzgcGt8V0KkoHTN5T6HPdUpet8g==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-input: 1.0.4(react-dom@17.0.2)(react@18.2.0) - rc-menu: 9.8.4(react-dom@17.0.2)(react@18.2.0) - rc-textarea: 1.2.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-input: 1.0.4(react-dom@18.2.0)(react@18.2.0) + rc-menu: 9.8.4(react-dom@18.2.0)(react@18.2.0) + rc-textarea: 1.2.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-menu@9.11.1(react-dom@17.0.2)(react@18.2.0): + /rc-menu@9.11.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-jq9I3XkPKgFpsn8MYko+OAjnrNxzQGQauy0MNysYZ5iw5JGeg5wwCP/toZX2ZWQwxNUfye14mY/uVLE6HCcQlQ==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-overflow: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-overflow: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) dev: false - /rc-menu@9.8.4(react-dom@17.0.2)(react@18.2.0): + /rc-menu@9.8.4(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-lmw2j8I2fhdIzHmC9ajfImfckt0WDb2KVJJBBRIsxPEw2kGkEfjLMUoB1NgiNT/Q5cC8PdjGOGQjHJIJMwyNMw==} peerDependencies: react: '>=16.9.0' @@ -11714,15 +11739,14 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-overflow: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-trigger: 5.3.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-overflow: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-trigger: 5.3.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-motion@2.7.3(react-dom@17.0.2)(react@18.2.0): + /rc-motion@2.7.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-2xUvo8yGHdOHeQbdI8BtBsCIrWKchEmFEIskf0nmHtJsou+meLd/JE+vnvSX2JxcBrJtXY2LuBpxAOxrbY/wMQ==} peerDependencies: react: '>=16.9.0' @@ -11730,11 +11754,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) - /rc-notification@5.0.3(react-dom@17.0.2)(react@18.2.0): + /rc-notification@5.0.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-+wHbHu6RiTNtsZYx42WxWA+tC5m0qyKvJAauO4/6LIEyJspK8fRlFQz+OCFgFwGuNs3cOdo9tLs+cPfztSZwbQ==} engines: {node: '>=8.x'} peerDependencies: @@ -11743,13 +11767,12 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-overflow@1.3.1(react-dom@17.0.2)(react@18.2.0): + /rc-overflow@1.3.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-RY0nVBlfP9CkxrpgaLlGzkSoh9JhjJLu6Icqs9E7CW6Ewh9s0peF9OHIex4OhfoPsR92LR0fN6BlCY9Z4VoUtA==} peerDependencies: react: '>=16.9.0' @@ -11757,12 +11780,12 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) - /rc-pagination@3.3.1(react-dom@17.0.2)(react@18.2.0): + /rc-pagination@3.3.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-eI4dSeB3OrFxll7KzWa3ZH63LV2tHxt0AUmZmDwuI6vc3CK5lZhaKUYq0fRowb5586hN+L26j5WZoSz9cwEfjg==} peerDependencies: react: '>=16.9.0' @@ -11771,10 +11794,9 @@ packages: '@babel/runtime': 7.21.0 classnames: 2.3.2 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-picker@3.6.2(dayjs@1.11.6)(react-dom@17.0.2)(react@18.2.0): + /rc-picker@3.6.2(dayjs@1.11.6)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-acLNCi2WTNAuvTtcEzKp72mU15ni0sqrIKVlEcj04KgLZxhlVPMabCS+Sc8VuOCPJbOcW0XeOydbNnJbWTvzxg==} engines: {node: '>=8.x'} peerDependencies: @@ -11795,15 +11817,14 @@ packages: optional: true dependencies: '@babel/runtime': 7.21.0 - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 dayjs: 1.11.6 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-progress@3.4.1(react-dom@17.0.2)(react@18.2.0): + /rc-progress@3.4.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-eAFDHXlk8aWpoXl0llrenPMt9qKHQXphxcVsnKs0FHC6eCSk1ebJtyaVjJUzKe0233ogiLDeEFK1Uihz3s67hw==} peerDependencies: react: '>=16.9.0' @@ -11811,12 +11832,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-rate@2.10.0(react-dom@17.0.2)(react@18.2.0): + /rc-rate@2.10.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-TCjEpKPeN1m0EnGDDbb1KyxjNTJRzoReiPdtbrBJEey4Ryf/UGOQ6vqmz2yC6DJdYVDVUoZPdoz043ryh0t/nQ==} engines: {node: '>=8.x'} peerDependencies: @@ -11825,12 +11845,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-resize-observer@1.3.1(react-dom@17.0.2)(react@18.2.0): + /rc-resize-observer@1.3.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-iFUdt3NNhflbY3mwySv5CA1TC06zdJ+pfo0oc27xpf4PIOvfZwZGtD9Kz41wGYqC4SLio93RVAirSSpYlV/uYg==} peerDependencies: react: '>=16.9.0' @@ -11838,12 +11857,12 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) resize-observer-polyfill: 1.5.1 - /rc-segmented@2.1.2(react-dom@17.0.2)(react@18.2.0): + /rc-segmented@2.1.2(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-qGo1bCr83ESXpXVOCXjFe1QJlCAQXyi9KCiy8eX3rIMYlTeJr/ftySIaTnYsitL18SvWf5ZEHsfqIWoX0EMfFQ==} peerDependencies: react: '>=16.0.0' @@ -11851,13 +11870,12 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-select@14.4.3(react-dom@17.0.2)(react@18.2.0): + /rc-select@14.4.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-qoz4gNqm3SN+4dYKSCRiRkxKSEEdbS3jC6gdFYoYwEjDZ9sdQFo5jHlfQbF+hhai01HOoj1Hf8Gq6tpUvU+Gmw==} engines: {node: '>=8.x'} peerDependencies: @@ -11865,17 +11883,16 @@ packages: react-dom: '*' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-overflow: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) - rc-virtual-list: 3.5.3(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-overflow: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) + rc-virtual-list: 3.5.3(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-slider@10.1.1(react-dom@17.0.2)(react@18.2.0): + /rc-slider@10.1.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-gn8oXazZISEhnmRinI89Z/JD/joAaM35jp+gDtIVSTD/JJMCCBqThqLk1SVJmvtfeiEF/kKaFY0+qt4SDHFUDw==} engines: {node: '>=8.x'} peerDependencies: @@ -11884,12 +11901,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-steps@6.0.0(react-dom@17.0.2)(react@18.2.0): + /rc-steps@6.0.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-+KfMZIty40mYCQSDvYbZ1jwnuObLauTiIskT1hL4FFOBHP6ZOr8LK0m143yD3kEN5XKHSEX1DIwCj3AYZpoeNQ==} engines: {node: '>=8.x'} peerDependencies: @@ -11898,12 +11914,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-switch@4.1.0(react-dom@17.0.2)(react@18.2.0): + /rc-switch@4.1.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-TI8ufP2Az9oEbvyCeVE4+90PDSljGyuwix3fV58p7HV2o4wBnVToEyomJRVyTaZeqNPAp+vqeo4Wnj5u0ZZQBg==} peerDependencies: react: '>=16.9.0' @@ -11911,12 +11926,11 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-table@7.31.1(react-dom@17.0.2)(react@18.2.0): + /rc-table@7.31.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-KZPi35aGpv2VaL1Jbc58FBJo063HtKyVjhOFWX4AkBV7tjHHQokMdUoua5E+GPJh6QZUpK/a8PjKa9IZzPLIEA==} engines: {node: '>=8.x'} peerDependencies: @@ -11924,15 +11938,14 @@ packages: react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/context': 1.3.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/context': 1.3.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-tabs@12.10.0(react-dom@17.0.2)(react@18.2.0): + /rc-tabs@12.10.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-smeTKWZivfJGxCBHF2D5lgU8WPQ9VZFduJWMnsYS/f8EIf8oH8Y8sAACa62u21Q2jyzEZ2tQf70Fz8mdQBm4Zw==} engines: {node: '>=8.x'} peerDependencies: @@ -11941,16 +11954,16 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-dropdown: 4.1.0(react-dom@17.0.2)(react@18.2.0) - rc-menu: 9.11.1(react-dom@17.0.2)(react@18.2.0) - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-dropdown: 4.1.0(react-dom@18.2.0)(react@18.2.0) + rc-menu: 9.11.1(react-dom@18.2.0)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) dev: false - /rc-tabs@12.5.6(react-dom@17.0.2)(react@18.2.0): + /rc-tabs@12.5.6(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-aArXHzxK7YICxe+622CZ8FlO5coMi8P7E6tXpseCPKm1gdTjUt0LrQK1/AxcrRXZXG3K4QqhlKmET0+cX5DQaQ==} engines: {node: '>=8.x'} peerDependencies: @@ -11959,16 +11972,15 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-dropdown: 4.0.1(react-dom@17.0.2)(react@18.2.0) - rc-menu: 9.8.4(react-dom@17.0.2)(react@18.2.0) - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-dropdown: 4.0.1(react-dom@18.2.0)(react@18.2.0) + rc-menu: 9.8.4(react-dom@18.2.0)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-textarea@1.2.3(react-dom@17.0.2)(react@18.2.0): + /rc-textarea@1.2.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-YvN8IskIVBRRzcS4deT0VAMim31+T3IoVX4yoCJ+b/iVCvw7yf0usR7x8OaHiUOUoURKcn/3lfGjmtzplcy99g==} peerDependencies: react: '>=16.9.0' @@ -11976,27 +11988,25 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-input: 1.0.4(react-dom@17.0.2)(react@18.2.0) - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-input: 1.0.4(react-dom@18.2.0)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-tooltip@6.0.1(react-dom@17.0.2)(react@18.2.0): + /rc-tooltip@6.0.1(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-MdvPlsD1fDSxKp9+HjXrc/CxLmA/s11QYIh1R7aExxfodKP7CZA++DG1AjrW80F8IUdHYcR43HAm0Y2BYPelHA==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' dependencies: '@babel/runtime': 7.21.0 - '@rc-component/trigger': 1.12.0(react-dom@17.0.2)(react@18.2.0) + '@rc-component/trigger': 1.12.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.3.2 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-tree-select@5.8.0(react-dom@17.0.2)(react@18.2.0): + /rc-tree-select@5.8.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-NozrkVLR8k3cpx8R5/YFmJMptgOacR5zEQHZGMQg31bD6jEgGiJeOn2cGRI6x0Xdyvi1CSqCbUsIoqiej74wzw==} peerDependencies: react: '*' @@ -12004,14 +12014,13 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-select: 14.4.3(react-dom@17.0.2)(react@18.2.0) - rc-tree: 5.7.9(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-select: 14.4.3(react-dom@18.2.0)(react@18.2.0) + rc-tree: 5.7.9(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-tree@5.7.9(react-dom@17.0.2)(react@18.2.0): + /rc-tree@5.7.9(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-1hKkToz/EVjJlMVwmZnpXeLXt/1iQMsaAq9m+GNkUbK746gkc7QpJXSN/TzjhTI5Hi+LOSlrMaXLMT0bHPqILQ==} engines: {node: '>=10.x'} peerDependencies: @@ -12020,13 +12029,13 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) - rc-virtual-list: 3.5.3(react-dom@17.0.2)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) + rc-virtual-list: 3.5.3(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) - /rc-trigger@5.3.3(react-dom@17.0.2)(react@18.2.0): + /rc-trigger@5.3.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-IC4nuTSAME7RJSgwvHCNDQrIzhvGMKf6NDu5veX+zk1MG7i1UnwTWWthcP9WHw3+FZfP3oZGvkrHFPu/EGkFKw==} engines: {node: '>=8.x'} peerDependencies: @@ -12035,14 +12044,13 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-align: 4.0.12(react-dom@17.0.2)(react@18.2.0) - rc-motion: 2.7.3(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-align: 4.0.12(react-dom@18.2.0)(react@18.2.0) + rc-motion: 2.7.3(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) - /rc-upload@4.3.4(react-dom@17.0.2)(react@18.2.0): + /rc-upload@4.3.4(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-uVbtHFGNjHG/RyAfm9fluXB6pvArAGyAx8z7XzXXyorEgVIWj6mOlriuDm0XowDHYz4ycNK0nE0oP3cbFnzxiQ==} peerDependencies: react: '>=16.9.0' @@ -12050,10 +12058,9 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - dev: true + react-dom: 18.2.0(react@18.2.0) /rc-util@4.21.1: resolution: {integrity: sha512-Z+vlkSQVc1l8O2UjR3WQ+XdWlhj5q9BMQNLk2iOBch75CqPfrJyGtcWMcnhRlNuDu0Ndtt4kLVO8JI8BrABobg==} @@ -12065,7 +12072,7 @@ packages: shallowequal: 1.1.0 dev: true - /rc-util@5.37.0(react-dom@17.0.2)(react@18.2.0): + /rc-util@5.37.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-cPMV8DzaHI1KDaS7XPRXAf4J7mtBqjvjikLpQieaeOO7+cEbqY2j7Kso/T0R0OiEZTNcLS/8Zl9YrlXiO9UbjQ==} peerDependencies: react: '>=16.9.0' @@ -12073,10 +12080,10 @@ packages: dependencies: '@babel/runtime': 7.21.0 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) react-is: 16.13.1 - /rc-virtual-list@3.5.3(react-dom@17.0.2)(react@18.2.0): + /rc-virtual-list@3.5.3(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-rG6IuD4EYM8K6oZ8Shu2BC/CmcTdqng4yBWkc/5fjWhB20bl6QwR2Upyt7+MxvfscoVm8zOQY+tcpEO5cu4GaQ==} engines: {node: '>=8.x'} peerDependencies: @@ -12085,10 +12092,10 @@ packages: dependencies: '@babel/runtime': 7.21.0 classnames: 2.3.2 - rc-resize-observer: 1.3.1(react-dom@17.0.2)(react@18.2.0) - rc-util: 5.37.0(react-dom@17.0.2)(react@18.2.0) + rc-resize-observer: 1.3.1(react-dom@18.2.0)(react@18.2.0) + rc-util: 5.37.0(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) /rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} @@ -12110,16 +12117,6 @@ packages: react: 18.2.0 dev: false - /react-dom@17.0.2(react@18.2.0): - resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} - peerDependencies: - react: 17.0.2 - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react: 18.2.0 - scheduler: 0.20.2 - /react-dom@18.1.0(react@18.1.0): resolution: {integrity: sha512-fU1Txz7Budmvamp7bshe4Zi32d0ll7ect+ccxNu9FlObT605GOEB8BfO4tmRJ39R5Zj831VCpvQ05QPBW5yb+w==} peerDependencies: @@ -12140,6 +12137,15 @@ packages: scheduler: 0.22.0 dev: false + /react-dom@18.2.0(react@18.2.0): + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + peerDependencies: + react: ^18.2.0 + dependencies: + loose-envify: 1.4.0 + react: 18.2.0 + scheduler: 0.23.0 + /react-error-boundary@4.0.10(react@18.2.0): resolution: {integrity: sha512-pvVKdi77j2OoPHo+p3rorgE43OjDWiqFkaqkJz8sJKK6uf/u8xtzuaVfj5qJ2JnDLIgF1De3zY5AJDijp+LVPA==} peerDependencies: @@ -12156,7 +12162,7 @@ packages: resolution: {integrity: sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==} dev: false - /react-helmet-async@1.3.0(react-dom@17.0.2)(react@18.2.0): + /react-helmet-async@1.3.0(react-dom@18.1.0)(react@18.1.0): resolution: {integrity: sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==} peerDependencies: react: ^16.6.0 || ^17.0.0 || ^18.0.0 @@ -12165,13 +12171,13 @@ packages: '@babel/runtime': 7.21.0 invariant: 2.2.4 prop-types: 15.8.1 - react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react: 18.1.0 + react-dom: 18.1.0(react@18.1.0) react-fast-compare: 3.2.0 shallowequal: 1.1.0 dev: false - /react-helmet-async@1.3.0(react-dom@18.1.0)(react@18.1.0): + /react-helmet-async@1.3.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==} peerDependencies: react: ^16.6.0 || ^17.0.0 || ^18.0.0 @@ -12180,8 +12186,8 @@ packages: '@babel/runtime': 7.21.0 invariant: 2.2.4 prop-types: 15.8.1 - react: 18.1.0 - react-dom: 18.1.0(react@18.1.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) react-fast-compare: 3.2.0 shallowequal: 1.1.0 dev: false @@ -12260,7 +12266,7 @@ packages: redux: 3.7.2 dev: true - /react-redux@8.0.5(@types/react@18.2.17)(react-dom@17.0.2)(react@18.2.0)(redux@4.2.0): + /react-redux@8.0.5(@types/react-dom@18.2.7)(@types/react@18.2.17)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.0): resolution: {integrity: sha512-Q2f6fCKxPFpkXt1qNRZdEDLlScsDWyrgSj0mliK59qU6W5gvBiKkdMEG2lJzhd1rCctf0hb6EtePPLZ2e0m1uw==} peerDependencies: '@types/react': ^16.8 || ^17.0 || ^18.0 @@ -12284,10 +12290,11 @@ packages: '@babel/runtime': 7.21.0 '@types/hoist-non-react-statics': 3.3.1 '@types/react': 18.2.17 + '@types/react-dom': 18.2.7 '@types/use-sync-external-store': 0.0.3 hoist-non-react-statics: 3.3.2 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) react-is: 18.2.0 redux: 4.2.0 use-sync-external-store: 1.2.0(react@18.2.0) @@ -12311,28 +12318,28 @@ packages: warning: 4.0.3 dev: true - /react-router-dom@6.3.0(react-dom@17.0.2)(react@18.2.0): + /react-router-dom@6.3.0(react-dom@18.1.0)(react@18.1.0): resolution: {integrity: sha512-uaJj7LKytRxZNQV8+RbzJWnJ8K2nPsOOEuX7aQstlMZKQT0164C+X2w6bnkqU3sjtLvpd5ojrezAyfZ1+0sStw==} peerDependencies: react: '>=16.8' react-dom: '>=16.8' dependencies: history: 5.3.0 - react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) - react-router: 6.3.0(react@18.2.0) + react: 18.1.0 + react-dom: 18.1.0(react@18.1.0) + react-router: 6.3.0(react@18.1.0) dev: false - /react-router-dom@6.3.0(react-dom@18.1.0)(react@18.1.0): + /react-router-dom@6.3.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-uaJj7LKytRxZNQV8+RbzJWnJ8K2nPsOOEuX7aQstlMZKQT0164C+X2w6bnkqU3sjtLvpd5ojrezAyfZ1+0sStw==} peerDependencies: react: '>=16.8' react-dom: '>=16.8' dependencies: history: 5.3.0 - react: 18.1.0 - react-dom: 18.1.0(react@18.1.0) - react-router: 6.3.0(react@18.1.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-router: 6.3.0(react@18.2.0) dev: false /react-router-redux@5.0.0-alpha.9(react@18.2.0): @@ -12380,7 +12387,17 @@ packages: react: 18.2.0 dev: false - /react-sortable-hoc@2.0.0(prop-types@15.8.1)(react-dom@17.0.2)(react@18.2.0): + /react-simple-code-editor@0.13.1(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-XYeVwRZwgyKtjNIYcAEgg2FaQcCZwhbarnkJIV20U2wkCU9q/CPFBo8nRXrK4GXUz3AvbqZFsZRrpUTkqqEYyQ==} + peerDependencies: + react: '*' + react-dom: '*' + dependencies: + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /react-sortable-hoc@2.0.0(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-JZUw7hBsAHXK7PTyErJyI7SopSBFRcFHDjWW5SWjcugY0i6iH7f+eJkY8cJmGMlZ1C9xz1J3Vjz0plFpavVeRg==} peerDependencies: prop-types: ^15.5.7 @@ -12391,7 +12408,7 @@ packages: invariant: 2.2.4 prop-types: 15.8.1 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) dev: true /react@18.1.0: @@ -12924,18 +12941,17 @@ packages: /sax@1.2.4: resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} - /scheduler@0.20.2: - resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - /scheduler@0.22.0: resolution: {integrity: sha512-6QAm1BgQI88NPYymgGQLCZgvep4FyePDWFpXVK+zNSUgHwlqpJy8VEh8Et0KxTACS4VWwMousBElAZOH9nkkoQ==} dependencies: loose-envify: 1.4.0 dev: false + /scheduler@0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + dependencies: + loose-envify: 1.4.0 + /schema-utils@3.1.1: resolution: {integrity: sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==} engines: {node: '>= 10.13.0'} @@ -12956,7 +12972,6 @@ packages: resolution: {integrity: sha512-t44QCeDKAPf1mtQH3fYpWz8IM/DyvHLjs8wUvvwMYxk5moOqCzrMSxK6HQVD0QVmVjXFavoFIPRVrMuJPKAvtg==} dependencies: compute-scroll-into-view: 3.0.3 - dev: true /selderee@0.11.0: resolution: {integrity: sha512-5TF+l7p4+OsnP8BCCvSyZiSPc4x4//p5uPwK8TCnVPJYRmU2aYKMpOXvw8zM5a5JvuuCGN1jmsMwuU2W02ukfA==} @@ -13347,7 +13362,6 @@ packages: /string-convert@0.2.1: resolution: {integrity: sha512-u/1tdPl4yQnPBjnVrmdLo9gtuLvELKsAoRapekWggdiQNvvvum+jYF329d84NAa660KQw7pB2n36KrIKVoXa3A==} - dev: true /string-width@2.1.1: resolution: {integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==} @@ -13536,7 +13550,7 @@ packages: inline-style-parser: 0.1.1 dev: false - /styled-components@5.3.10(react-dom@17.0.2)(react-is@18.2.0)(react@18.2.0): + /styled-components@5.3.10(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0): resolution: {integrity: sha512-3kSzSBN0TiCnGJM04UwO1HklIQQSXW7rCARUk+VyMR7clz8XVlA3jijtf5ypqoDIdNMKx3la4VvaPFR855SFcg==} engines: {node: '>=10'} peerDependencies: @@ -13553,7 +13567,7 @@ packages: css-to-react-native: 3.2.0 hoist-non-react-statics: 3.3.2 react: 18.2.0 - react-dom: 17.0.2(react@18.2.0) + react-dom: 18.2.0(react@18.2.0) react-is: 18.2.0 shallowequal: 1.1.0 supports-color: 5.5.0 @@ -13623,7 +13637,20 @@ packages: /stylis@4.1.3: resolution: {integrity: sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==} - dev: true + + /sucrase@3.34.0: + resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==} + engines: {node: '>=8'} + hasBin: true + dependencies: + '@jridgewell/gen-mapping': 0.3.2 + commander: 4.1.1 + glob: 7.1.6 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.5 + ts-interface-checker: 0.1.13 + dev: false /supports-color@5.5.0: resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} @@ -13824,6 +13851,19 @@ packages: engines: {node: '>=0.8'} dev: false + /thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + dependencies: + thenify: 3.3.1 + dev: false + + /thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + dependencies: + any-promise: 1.3.0 + dev: false + /thread-stream@0.15.2: resolution: {integrity: sha512-UkEhKIg2pD+fjkHQKyJO3yoIvAP3N6RlNFt2dUhcS1FGvCD1cQa1M/PGknCLFIyZdtJOWQjejp7bdNqmN7zwdA==} dependencies: @@ -13832,7 +13872,6 @@ packages: /throttle-debounce@5.0.0: resolution: {integrity: sha512-2iQTSgkkc1Zyk0MeVrt/3BvuOXYPl/R8Z0U2xxo9rjwNciaHDG3R+Lm6dh4EeUci49DanvBnuqI6jshoQQRGEg==} engines: {node: '>=12.22'} - dev: true /through2@2.0.5: resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} @@ -13949,6 +13988,10 @@ packages: resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} dev: false + /ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + dev: false + /ts-node@10.9.1(@swc/core@1.3.72)(@types/node@18.17.1)(typescript@5.0.4): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true @@ -14141,7 +14184,7 @@ packages: resolution: {integrity: sha512-NFTTzrJArwdqtwZRNo5rF7F+NR95unQUAMkHAgcOGuuaJBnUey5w7lgpDR6K7/mV1bDwY2O3CLXSyLR1wxZyCw==} dev: false - /umi@4.0.84(@babel/core@7.22.9)(@types/node@18.17.1)(@types/react@18.2.17)(eslint@8.46.0)(postcss@8.4.25)(prettier@2.8.8)(react-dom@17.0.2)(react@18.2.0)(sass@1.64.1)(styled-components@5.3.10)(stylelint@15.10.2)(typescript@5.0.4)(webpack@5.82.0): + /umi@4.0.84(@babel/core@7.22.9)(@types/node@18.17.1)(@types/react@18.2.17)(eslint@8.46.0)(postcss@8.4.31)(prettier@2.8.8)(react-dom@18.2.0)(react@18.2.0)(sass@1.64.1)(styled-components@5.3.10)(stylelint@15.10.2)(typescript@5.0.4)(webpack@5.82.0): resolution: {integrity: sha512-fjMQ/M44PwoxyV69czXAiTd5EChKce5Wf/nb4q4Z4sd7YX4Y3U4BHyGFuLIRe8cTyg89KbhDc1L9uxKkTNnzog==} engines: {node: '>=14'} hasBin: true @@ -14151,8 +14194,8 @@ packages: '@umijs/bundler-webpack': 4.0.84(styled-components@5.3.10)(typescript@5.0.4)(webpack@5.82.0) '@umijs/core': 4.0.84 '@umijs/lint': 4.0.84(eslint@8.46.0)(styled-components@5.3.10)(stylelint@15.10.2)(typescript@5.0.4) - '@umijs/preset-umi': 4.0.84(@types/node@18.17.1)(@types/react@18.2.17)(postcss@8.4.25)(sass@1.64.1)(styled-components@5.3.10)(typescript@5.0.4)(webpack@5.82.0) - '@umijs/renderer-react': 4.0.84(react-dom@17.0.2)(react@18.2.0) + '@umijs/preset-umi': 4.0.84(@types/node@18.17.1)(@types/react@18.2.17)(postcss@8.4.31)(sass@1.64.1)(styled-components@5.3.10)(typescript@5.0.4)(webpack@5.82.0) + '@umijs/renderer-react': 4.0.84(react-dom@18.2.0)(react@18.2.0) '@umijs/server': 4.0.84 '@umijs/test': 4.0.84(@babel/core@7.22.9) '@umijs/utils': 4.0.84 @@ -14986,7 +15029,3 @@ packages: /zwitch@2.0.2: resolution: {integrity: sha512-JZxotl7SxAJH0j7dN4pxsTV6ZLXoLdGME+PsjkL/DaBrVryK9kTGq06GfKrwcSOqypP+fdXGoCHE36b99fWVoA==} dev: false - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false diff --git a/src/client/theme-api/evalCode.ts b/src/client/theme-api/evalCode.ts new file mode 100644 index 0000000000..3ea7557827 --- /dev/null +++ b/src/client/theme-api/evalCode.ts @@ -0,0 +1,12 @@ +import type { ComponentType } from 'react'; + +export const evalCode = (code: string, scope: any): ComponentType => { + const scopeKeys = Object.keys(scope); + const scopeValues = scopeKeys.map((key) => scope[key]); + const importReg = /import.*from.*;/g; + + return new Function( + ...scopeKeys, + code.replace(importReg, '').replace('export default', 'return').trim(), + )(...scopeValues); +}; diff --git a/src/client/theme-api/index.ts b/src/client/theme-api/index.ts index 040f64eabe..1abe878d52 100644 --- a/src/client/theme-api/index.ts +++ b/src/client/theme-api/index.ts @@ -23,6 +23,8 @@ export { DumiDemo } from './DumiDemo'; export { DumiDemoGrid } from './DumiDemoGrid'; export { DumiPage } from './DumiPage'; export { useDemoData, useSiteData } from './context'; +export { evalCode } from './evalCode'; +export { LiveContext, LiveProvider, isLiveEnabled } from './live'; export { openCodeSandbox } from './openCodeSandbox'; export { openStackBlitz } from './openStackBlitz'; export type { IPreviewerProps } from './types'; diff --git a/src/client/theme-api/live/LiveProvider.tsx b/src/client/theme-api/live/LiveProvider.tsx new file mode 100644 index 0000000000..0595beefb5 --- /dev/null +++ b/src/client/theme-api/live/LiveProvider.tsx @@ -0,0 +1,85 @@ +import { evalCode } from 'dumi'; +import React, { FC, useMemo, useState } from 'react'; +import ReactDOM from 'react-dom/server'; +import { transform } from 'sucrase'; +import { useDemoScopes } from './useDemoScopes'; + +type LiveContextProps = { + enabled: boolean; + code: string; + onCodeChange: (code: string) => void; + demo: React.ReactNode; + error: string; +}; + +export const LiveContext = React.createContext({ + enabled: false, + code: '', + onCodeChange: () => {}, + demo: null, + error: '', +}); + +export type LiveProviderProps = { + initialCode: string; + demoId: string; + children: React.ReactElement; +}; + +const transformCode = (code: string, scopes: any) => { + if (!scopes) { + return <>; + } + + const Comp = evalCode( + transform(code, { transforms: ['typescript', 'jsx'] }).code, + scopes, + ); + + return ; +}; + +export const LiveProvider: FC = ({ + initialCode, + demoId, + children, +}) => { + const scopes = useDemoScopes(demoId); + const [code, setCode] = useState(initialCode); + const [demo, setDemo] = useState(() => + transformCode(code, scopes), + ); + const [error, setError] = useState(''); + + const onCodeChange = (newCode: string) => { + setCode(newCode); + try { + const liveDemo = transformCode(newCode, scopes); + ReactDOM.renderToString(liveDemo); + setDemo(liveDemo); + setError(''); + } catch (e: any) { + setError(e.message); + } + }; + + const contextValue = useMemo(() => { + return { + error, + enabled: scopes !== null, + demo, + code, + onCodeChange, + }; + }, [code, scopes, demo, error]); + + if (!scopes) { + return children; + } + + return ( + {children} + ); +}; + +export default LiveProvider; diff --git a/src/client/theme-api/live/index.ts b/src/client/theme-api/live/index.ts new file mode 100644 index 0000000000..830df8e5d3 --- /dev/null +++ b/src/client/theme-api/live/index.ts @@ -0,0 +1,4 @@ +import LiveProvider, { LiveContext } from './LiveProvider'; +import { isLiveEnabled } from './useDemoScopes'; + +export { LiveProvider, LiveContext, isLiveEnabled }; diff --git a/src/client/theme-api/live/useDemoScopes.ts b/src/client/theme-api/live/useDemoScopes.ts new file mode 100644 index 0000000000..a6aa56f97d --- /dev/null +++ b/src/client/theme-api/live/useDemoScopes.ts @@ -0,0 +1,18 @@ +import { getDemoScopesById } from 'dumi'; +import use from '../context/use'; + +const cache = new Map(); + +export const useDemoScopes = (id: string) => { + if (!getDemoScopesById) { + return null; + } + + if (!cache.has(id)) { + cache.set(id, getDemoScopesById(id)); + } + + return use(cache.get(id)!); +}; + +export const isLiveEnabled = () => !!getDemoScopesById; diff --git a/src/client/theme-api/types.ts b/src/client/theme-api/types.ts index 4e6919e22c..6ea5903298 100644 --- a/src/client/theme-api/types.ts +++ b/src/client/theme-api/types.ts @@ -42,6 +42,10 @@ export interface IPreviewerProps { * background color for demo content */ background?: string; + /** + * enable live demo + */ + live?: boolean; /** * asset metadata of current demo */ diff --git a/src/client/theme-default/builtins/Previewer/index.tsx b/src/client/theme-default/builtins/Previewer/index.tsx index 7c8df054a4..a1e249f378 100644 --- a/src/client/theme-default/builtins/Previewer/index.tsx +++ b/src/client/theme-default/builtins/Previewer/index.tsx @@ -1,14 +1,25 @@ import classnames from 'classnames'; -import { IPreviewerProps, useLocation } from 'dumi'; +import { + IPreviewerProps, + LiveContext, + LiveProvider, + isLiveEnabled, + useLocation, +} from 'dumi'; +import LiveDemo from 'dumi/theme/slots/LiveDemo'; +import LiveEditor from 'dumi/theme/slots/LiveEditor'; +import LiveError from 'dumi/theme/slots/LiveError'; import PreviewerActions from 'dumi/theme/slots/PreviewerActions'; -import React, { useRef, type FC } from 'react'; +import React, { useContext, useRef, type FC } from 'react'; import './index.less'; -const Previewer: FC = (props) => { +const InternalPreviewer: FC = (props) => { const demoContainer = useRef(null); const { hash } = useLocation(); const link = `#${props.asset.id}`; + const { enabled } = useContext(LiveContext); + return (
= (props) => { } src={props.demoUrl} > + ) : enabled ? ( + ) : ( props.children )} @@ -62,10 +75,46 @@ const Previewer: FC = (props) => { ? (demoContainer.current?.firstElementChild as HTMLIFrameElement) : demoContainer.current! } + sourceCode={ + enabled ? ( +
+ + +
+ ) : null + } />
); }; +const Previewer: FC = (props) => { + const children = ; + + // Only Single File + if ( + !isLiveEnabled() || + props.live === false || + Object.entries(props.asset.dependencies).filter( + ([, { type }]) => type === 'FILE', + ).length > 1 + ) { + return children; + } + + return ( + type === 'FILE', + )[0][1].value + } + demoId={props.asset.id} + > + {children} + + ); +}; + export default Previewer; diff --git a/src/client/theme-default/slots/LiveDemo/index.tsx b/src/client/theme-default/slots/LiveDemo/index.tsx new file mode 100644 index 0000000000..c79e1a60eb --- /dev/null +++ b/src/client/theme-default/slots/LiveDemo/index.tsx @@ -0,0 +1,10 @@ +import { LiveContext } from 'dumi'; +import React, { FC, useContext } from 'react'; + +const LiveDemo: FC = () => { + const { demo } = useContext(LiveContext); + + return <>{demo}; +}; + +export default LiveDemo; diff --git a/src/client/theme-default/slots/LiveEditor/index.tsx b/src/client/theme-default/slots/LiveEditor/index.tsx new file mode 100644 index 0000000000..135cea6916 --- /dev/null +++ b/src/client/theme-default/slots/LiveEditor/index.tsx @@ -0,0 +1,22 @@ +import { LiveContext } from 'dumi'; +import { highlight, languages } from 'prismjs'; +import React, { ComponentProps, FC, useContext } from 'react'; +import Editor from 'react-simple-code-editor'; + +const LiveEditor: FC> = (props) => { + const { code, onCodeChange } = useContext(LiveContext); + + return ( + highlight(code, languages.js, 'tsx')) + } + padding={props.padding ?? 20} + /> + ); +}; + +export default LiveEditor; diff --git a/src/client/theme-default/slots/LiveError/index.less b/src/client/theme-default/slots/LiveError/index.less new file mode 100644 index 0000000000..27eb8df578 --- /dev/null +++ b/src/client/theme-default/slots/LiveError/index.less @@ -0,0 +1,22 @@ +@import (reference) '../../styles/variables.less'; + +.dumi-default-live-error { + @color: darken(desaturate(@c-error, 20%), 1%); + + white-space: break-spaces; + background: lighten(@c-error, 51%); + color: @color; + padding: 12px 20px; + margin: 0; + border-radius: 0 0 4px 4px; + display: flex; + align-items: flex-start; + gap: 8px; + line-height: 16px; + + > svg { + fill: currentcolor; + width: 16px; + flex: none; + } +} diff --git a/src/client/theme-default/slots/LiveError/index.tsx b/src/client/theme-default/slots/LiveError/index.tsx new file mode 100644 index 0000000000..19f7269418 --- /dev/null +++ b/src/client/theme-default/slots/LiveError/index.tsx @@ -0,0 +1,21 @@ +import { ReactComponent as IconError } from '@ant-design/icons-svg/inline-svg/filled/close-circle.svg'; +import { LiveContext } from 'dumi'; +import React, { FC, useContext } from 'react'; +import './index.less'; + +const LiveError: FC = () => { + const { error } = useContext(LiveContext); + + if (!error) { + return null; + } + + return ( +
+      
+      {error}
+    
+ ); +}; + +export default LiveError; diff --git a/src/client/theme-default/slots/PreviewerActions/index.tsx b/src/client/theme-default/slots/PreviewerActions/index.tsx index e08d4ef142..254cd553ac 100644 --- a/src/client/theme-default/slots/PreviewerActions/index.tsx +++ b/src/client/theme-default/slots/PreviewerActions/index.tsx @@ -23,6 +23,7 @@ export interface IPreviewerActionsProps extends IPreviewerProps { extra?: ReactNode; forceShowCode?: boolean; demoContainer: HTMLDivElement | HTMLIFrameElement; + sourceCode?: ReactNode; } const IconCode: FC = () => ( @@ -185,7 +186,9 @@ const PreviewerActions: FC = (props) => { /> )} - {files[activeKey][1].value} + {props.sourceCode || ( + {files[activeKey][1].value} + )} )} diff --git a/src/features/compile/index.ts b/src/features/compile/index.ts index 1c9ac7c52c..81921516cc 100644 --- a/src/features/compile/index.ts +++ b/src/features/compile/index.ts @@ -99,6 +99,32 @@ export default (api: IApi) => { }) .end() .end() + // get page scope for each markdown file + .oneOf('md-scope') + .resourceQuery(/scope$/) + .use('babel-loader') + .loader(babelInUmi.loader) + .options(babelInUmi.options) + .end() + .use('md-scope-loader') + .loader(loaderPath) + .options({ + ...loaderBaseOpts, + mode: 'scope', + }) + .end() + .end() + // get page scope-index for each markdown file + .oneOf('md-scope-index') + .resourceQuery(/scope-index$/) + .use('md-scope-index-loader') + .loader(loaderPath) + .options({ + ...loaderBaseOpts, + mode: 'scope-index', + }) + .end() + .end() // get page component for each markdown file .oneOf('md') .use('babel-loader') diff --git a/src/features/exports.ts b/src/features/exports.ts index 288bb78dee..c958373e58 100644 --- a/src/features/exports.ts +++ b/src/features/exports.ts @@ -19,7 +19,8 @@ export default (api: IApi) => { content: `export * from '../exports'; export * from '${winPath(require.resolve('../client/theme-api'))}'; export { getRouteMetaById } from './meta/route-meta'; -export { loadFilesMeta } from './meta/search';`, +export { loadFilesMeta } from './meta/search'; +export { getDemoScopesById } from './live/demo-scopes';`, }); }); }; diff --git a/src/features/live.ts b/src/features/live.ts new file mode 100644 index 0000000000..e8c2cdfe7c --- /dev/null +++ b/src/features/live.ts @@ -0,0 +1,67 @@ +import { TEMPLATES_DIR } from '@/constants'; +import { isTabRouteFile } from '@/features/tabs'; +import { join } from 'path'; +import { IApi, IRoute } from 'umi'; +import { winPath } from 'umi/plugin-utils'; + +type MarkdownFiles = { index: number; file: string; id: string }[]; + +export default (api: IApi) => { + const mdFiles: MarkdownFiles = []; + + api.describe({ + key: 'live', + config: { + schema(joi) { + return joi.boolean(); + }, + }, + enableBy: api.EnableBy.register, + }); + + api.register({ + key: 'modifyRoutes', + // make sure it is called last + stage: Infinity, + fn: (routes: Record) => { + // reset for re-generate files + mdFiles.length = 0; + + // collect all markdown route files for combine demos & page meta + Object.values(routes).forEach((route) => { + if ( + !route.isLayout && + !/\*|:/.test(route.path) && + route.file && + !isTabRouteFile(route.file) && + route.file.endsWith('.md') + ) { + mdFiles.push({ + index: mdFiles.length, + file: winPath(route.file), + id: route.id, + }); + } + }); + + return routes; + }, + }); + + api.onGenerateFiles(async () => { + api.writeTmpFile({ + noPluginDir: true, + path: 'dumi/live/demo-scopes.ts', + tplPath: winPath( + join( + TEMPLATES_DIR, + 'live', + !!api.config.live ? 'demo-scopes.ts.tpl' : 'disabled.ts.tpl', + ), + ), + context: { + metaFiles: mdFiles, + }, + }); + }); +}; diff --git a/src/loaders/markdown/index.ts b/src/loaders/markdown/index.ts index f0201afcd8..04587efb84 100644 --- a/src/loaders/markdown/index.ts +++ b/src/loaders/markdown/index.ts @@ -47,13 +47,25 @@ interface IMdLoaderTextModeOptions mode: 'text'; } +interface IMdLoaderScopeModeOptions + extends Omit { + mode: 'scope'; +} + +interface IMdLoaderScopeIndexModeOptions + extends Omit { + mode: 'scope-index'; +} + export type IMdLoaderOptions = | IMdLoaderDefaultModeOptions | IMdLoaderDemosModeOptions | IMdLoaderDemoModeOptions | IMdLoaderFrontmatterModeOptions | IMdLoaderTextModeOptions - | IMdLoaderDemoIndexModeOptions; + | IMdLoaderDemoIndexModeOptions + | IMdLoaderScopeModeOptions + | IMdLoaderScopeIndexModeOptions; function getDemoSourceFiles(demos: IMdTransformerResult['meta']['demos'] = []) { return demos.reduce((ret, demo) => { @@ -200,6 +212,128 @@ export const texts = {{{texts}}};`, ); } +function emitScope(opts: IMdLoaderOptions, ret: IMdTransformerResult) { + const { demos } = ret.meta; + + const importReg = /import(?!(\stype)).*from.*;/g; + + return Mustache.render( + `{{#renderImport}} +{{{.}}} +{{/renderImport}} + +export const scopes = { +{{#demos}} + '{{{id}}}': { {{{renderScope}}} }, +{{/demos}} +}`, + { + demos, + renderImport: function renderImport() { + // do not render asset for inline demo + if (!demos) return []; + + // render scope for normal demo + const imports: Record = {}; + for (const demo of demos) { + if ('asset' in demo) { + const { asset } = demo; + Object.entries(asset.dependencies).forEach(([filename, file]) => { + if (filename.endsWith('.tsx')) { + const fileImports = + file.value.match(importReg) || + ([] as unknown as RegExpMatchArray); + fileImports.forEach((item) => { + const scope = item.replace(/import(.*)from.*;/, '$1').trim(); + const dep = item.replace(/import.*from(.*);/, '$1').trim(); + + const namedReg = /.*\{(.*)}/g; + const namedScope = namedReg.test(scope) + ? scope + .replace(namedReg, '$1') + .split(',') + .map((item) => item.trim()) + .filter(Boolean) + : []; + + const defaultReg = /(?:(?![,{]).)*/; + const defaultScope = scope.match(defaultReg)?.[0].trim(); + + imports[dep] ??= []; + if (defaultScope) { + const defaultImport = `default as ${defaultScope}`; + if (!imports[dep].includes(defaultImport)) { + imports[dep].push(defaultImport); + } + } + + if (namedScope.length) { + for (const item of namedScope) { + if (!imports[dep].includes(item)) { + imports[dep].push(item); + } + } + } + }); + } + }); + } + } + + return Object.entries(imports) + .map(([key, value]) => { + return value.length + ? `import { ${value.join(', ')} } from ${key};` + : ''; + }) + .filter(Boolean); + }, + renderScope: function renderScope(this: NonNullable[0]) { + // do not render asset for inline demo + if (!('asset' in this)) return ''; + + // render asset for normal demo + const { asset } = this; + const demoScopes: string[] = []; + Object.entries(asset.dependencies).forEach(([filename, file]) => { + if (filename.endsWith('.tsx')) { + const imports = + file.value.match(importReg) || + ([] as unknown as RegExpMatchArray); + const scopes = imports.reduce((acc, item) => { + const scope = item.replace(/import(.*)from.*;/, '$1').trim(); + const scopeList = scope.replace(/[{}]/g, '').trim(); + return [...acc, scopeList]; + }, []); + demoScopes.push(...scopes); + } + }); + return demoScopes.join(', '); + }, + }, + ); +} + +function emitScopeIndex( + this: any, + opts: IMdLoaderScopeIndexModeOptions, + ret: IMdTransformerResult, +) { + const { demos } = ret.meta; + + return Mustache.render( + `export const scopeIndex = { +{{#demos}} + '{{{id}}}': {{{getter}}}, +{{/demos}} +};`, + { + demos, + getter: `() => import('${winPath(this.resourcePath)}?type=scope')`, + }, + ); +} + function emit(this: any, opts: IMdLoaderOptions, ret: IMdTransformerResult) { const { demos, embeds } = ret.meta; @@ -218,6 +352,10 @@ function emit(this: any, opts: IMdLoaderOptions, ret: IMdTransformerResult) { return emitFrontmatter.call(this, opts, ret); case 'text': return emitText.call(this, opts, ret); + case 'scope': + return emitScope.call(this, opts, ret); + case 'scope-index': + return emitScopeIndex.call(this, opts, ret); default: return emitDefault.call(this, opts, ret); } diff --git a/src/preset.ts b/src/preset.ts index ce2991fa95..fd22ef8bcd 100644 --- a/src/preset.ts +++ b/src/preset.ts @@ -22,6 +22,7 @@ export default (api: IApi) => { require.resolve('./features/exportStatic'), require.resolve('./features/sitemap'), require.resolve('./features/html2sketch'), + require.resolve('./features/live'), ], }; }; diff --git a/src/templates/live/demo-scopes.ts.tpl b/src/templates/live/demo-scopes.ts.tpl new file mode 100644 index 0000000000..d6034776d5 --- /dev/null +++ b/src/templates/live/demo-scopes.ts.tpl @@ -0,0 +1,22 @@ +{{#metaFiles}} +import { scopeIndex as scpi{{{index}}} } from '{{{file}}}?type=scope-index'; +{{/metaFiles}} + +const scopeIndexes: Record Promise }> = { + {{#metaFiles}} + ...scpi{{{index}}}, + {{/metaFiles}} +}; + +/** Async to load demo by id */ +export const getDemoScopesById = async (id: string) => { + const getter = scopeIndexes[id]; + + if (!getter) { + return {}; + } + + const { scopes }: any = await getter() || {}; + + return scopes?.[id] || {}; +}; diff --git a/src/templates/live/disabled.ts.tpl b/src/templates/live/disabled.ts.tpl new file mode 100644 index 0000000000..0ad74cdb49 --- /dev/null +++ b/src/templates/live/disabled.ts.tpl @@ -0,0 +1 @@ +export const getDemoScopesById = null;