Browse Source

Merge branch 'release'

林艳 3 months ago
parent
commit
6e16669413

File diff suppressed because it is too large
+ 465 - 433
content/show/modal/index-en-US.md


+ 36 - 5
content/show/modal/index.md

@@ -611,6 +611,35 @@ function Demo(props = {}) {
 }
 ```
 
+### 可拖拽 Modal
+
+通过 `modalRender` 自定义渲染 Modal 内容,可拖拽 Modal 通过 DragMove 组件实现。
+
+```jsx live=true hideInDSM
+import React, { useState } from 'react';
+import { ConfigProvider, Button, Modal, DragMove } from '@douyinfe/semi-ui';
+
+function Demo(props = {}) {
+    const [visible, setVisible] = useState(false);
+    return (
+        <div>
+            <Button onClick={() => setVisible(true)}>Open Modal</Button>
+            <Modal
+                title="可拖拽Modal"
+                visible={visible}
+                onCancel={() => setVisible(false)}
+                modalRender={(modal) => (
+                    <DragMove>{modal}</DragMove>
+                )}
+            >
+                <p>This is the content of a basic sidesheet.</p>
+                <p>Here is more content...</p>
+            </Modal>
+        </div>
+    );
+}
+```
+
 ## API 参考
 
 ### Modal
@@ -641,6 +670,7 @@ function Demo(props = {}) {
 | maskClosable | 是否允许通过点击遮罩来关闭对话框                                                                                          | boolean | true |
 | maskStyle | 遮罩的样式                                                                                                     | CSSProperties | 无 |
 | modalContentClass | 可用于设置对话框内容的样式类名 | string | 无 |
+| modalRender | 自定义渲染 Modal | (modal: ReactNode) => ReactNode | - |
 | motion | 动画效果开关                                                                                                    | boolean | true |
 | okButtonProps | 确认按钮的 props                                                                                               | [ButtonProps](/zh-CN/input/button#API参考) | 无 |
 | okText | 确认按钮的文字                                                                                                   | string | 无 |
@@ -682,6 +712,7 @@ function Demo(props = {}) {
 | maskClosable | 是否允许通过点击遮罩来关闭对话框 | boolean | true |
 | maskStyle | 遮罩的样式 | CSSProperties | 无 |
 | modalContentClass | 可用于设置对话框内容的样式类名 | string | 无 |
+| modalRender | 自定义渲染 Modal | (modal: ReactNode) => ReactNode | - |
 | okButtonProps | 确认按钮的 props | [ButtonProps](/zh-CN/input/button#API参考) | 无 |
 | okText | 确认按钮的文字 | string | 无 |
 | okType | 确认按钮的类型 | string | primary |
@@ -757,12 +788,12 @@ WAI-ARIA: https://www.w3.org/WAI/ARIA/apg/patterns/alertdialog/
 ## FAQ
 
 -  #### 为什么使用 LocaleProvider 后, Modal.confirm 确认、取消按钮的文本没有国际化?
-    Modal 使用 Portal 将浮层节点插入到 DOM 树中。但这个操作仅能改变节点在 DOM 树中的位置,无法改变节点在 React 节点树中的位置,LocalProvider是基于 Context 机制传递的,必须是从属的 React 子结点才可消费到 Local 相关 Context。因此命令式的 Modal 的内置文本无法自动适配国际化。
-    你可以通过 `okText` 和 `cancelText` 这两个属性来根据 Locale 重新设置 i18 的文本。   
-    在1.2版本之后,你也可以通过 Modal.useModal 方法来返回 modal 实体以及 contextHolder 节点。将 contextHolder 插入到你需要获取 context 位置,即可使 Modal 获取到对应的 Context,如 ConfigProvider 或者 LocaleProvider 的配置。
+   Modal 使用 Portal 将浮层节点插入到 DOM 树中。但这个操作仅能改变节点在 DOM 树中的位置,无法改变节点在 React 节点树中的位置,LocalProvider是基于 Context 机制传递的,必须是从属的 React 子结点才可消费到 Local 相关 Context。因此命令式的 Modal 的内置文本无法自动适配国际化。
+   你可以通过 `okText` 和 `cancelText` 这两个属性来根据 Locale 重新设置 i18 的文本。   
+   在1.2版本之后,你也可以通过 Modal.useModal 方法来返回 modal 实体以及 contextHolder 节点。将 contextHolder 插入到你需要获取 context 位置,即可使 Modal 获取到对应的 Context,如 ConfigProvider 或者 LocaleProvider 的配置。
 
 -  #### 为什么 title 和 content 的间距在命令式调用和非命令式调用下不同?
-    命令式调用场景下,标题和内容的相关性更强,所以用更近的距离表达这种强相关性,符合预期。用户如果不想要这种效果,可以自己做样式覆盖。
+   命令式调用场景下,标题和内容的相关性更强,所以用更近的距离表达这种强相关性,符合预期。用户如果不想要这种效果,可以自己做样式覆盖。
 
 <!-- ## 相关物料
 ```material
@@ -770,4 +801,4 @@ WAI-ARIA: https://www.w3.org/WAI/ARIA/apg/patterns/alertdialog/
 ``` -->
 
 ## 相关物料
-<semi-material-list code="1"></semi-material-list>
+<semi-material-list code="1"></semi-material-list>

+ 6 - 0
content/start/changelog/index-en-US.md

@@ -16,6 +16,12 @@ Version:Major.Minor.Patch (follow the **Semver** specification)
 
 ---
 
+#### 🎉 2.82.0-beta.0 (2025-06-23)
+- 【Feat】
+    - Modal supports modalRender parameter to customize rendering [#2655](https://github.com/DouyinFE/semi-design/issues/2655)
+- 【Fix】
+  - fix the issue that DatePicker cannot automatically scroll to non-disabled items when clicking on the month in monthRange and multi-language  [#2870](https://github.com/DouyinFE/semi-design/issues/2870) [#2871](https://github.com/DouyinFE/semi-design/pull/2871)
+
 #### 🎉 2.81.0 (2025-06-16)
 - 【Fix】
     - Fixed the problem that when maxLength and getValueLength are set at the same time in the Input、TextArea  component, the Chinese input will be truncated before the input is completed  [#2858](https://github.com/DouyinFE/semi-design/issues/2858)

+ 6 - 0
content/start/changelog/index.md

@@ -13,6 +13,12 @@ Semi 版本号遵循 **Semver** 规范(主版本号 - 次版本号 - 修订版
 -   修订版本号(patch):仅会进行 bugfix,发布时间不限
 -   不同版本间的详细关系,可查阅 [FAQ](/zh-CN/start/faq)
 
+#### 🎉 2.82.0-beta.0 (2025-06-23)
+- 【Feat】
+    - Modal 支持 modalRender 参数自定义渲染弹窗 [#2655](https://github.com/DouyinFE/semi-design/issues/2655)
+- 【Fix】
+  - 修复 DatePicker 在 monthRange 且多语言情况下,点击月份无法自动滚动到非禁用项问题  [#2870](https://github.com/DouyinFE/semi-design/issues/2870) [#2871](https://github.com/DouyinFE/semi-design/pull/2871)
+
 #### 🎉 2.81.0 (2025-06-16)
 - 【Fix】
     - 修复 Input、TextArea 组件在同时设置 maxLength 和getValueLength时候,中文输入会在未输入完成时候被截断 [#2858](https://github.com/DouyinFE/semi-design/issues/2858) [#2859](https://github.com/DouyinFE/semi-design/pull/2859)

+ 1 - 1
lerna.json

@@ -1,5 +1,5 @@
 {
     "useWorkspaces": true,
     "npmClient": "yarn",
-    "version": "2.81.0"
+    "version": "2.82.0-beta.0"
 }

+ 3 - 3
packages/semi-animation-react/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-animation-react",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "motion library for semi-ui-react",
     "keywords": [
         "motion",
@@ -25,8 +25,8 @@
         "prepublishOnly": "npm run build:lib"
     },
     "dependencies": {
-        "@douyinfe/semi-animation": "2.81.0",
-        "@douyinfe/semi-animation-styled": "2.81.0",
+        "@douyinfe/semi-animation": "2.82.0-beta.0",
+        "@douyinfe/semi-animation-styled": "2.82.0-beta.0",
         "classnames": "^2.2.6"
     },
     "devDependencies": {

+ 1 - 1
packages/semi-animation-styled/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-animation-styled",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "semi styled animation",
     "keywords": [
         "semi",

+ 1 - 1
packages/semi-animation/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-animation",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "animation base library for semi-ui",
     "keywords": [
         "animation",

+ 1 - 1
packages/semi-eslint-plugin/package.json

@@ -1,6 +1,6 @@
 {
     "name": "eslint-plugin-semi-design",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "semi ui eslint plugin",
     "keywords": [
         "semi",

+ 2 - 4
packages/semi-foundation/modal/variables.scss

@@ -48,7 +48,7 @@ $spacing-modal_content_fullscreen-top: 0px; // 模态框内容全屏顶部位置
 // Width/Height
 $width-modal_title: 100%; // 模态框标题宽度
 $width-modal_content: 100%; // 模态框内容宽度
-$height-modal_content: 100%; // 模态框内容高度
+$height-modal_content: max-content; // 模态框内容高度
 $width-modal_content-border: 1px; // 模态框内容描边宽度
 $width-modal_small: 448px; // 模态框宽度 - 小
 $width-modal_medium: 684px; // 模态框宽度 - 中
@@ -72,6 +72,4 @@ $width-modal_footer-border:0; // 模态框 footer 顶部描边宽度
 
 
 //shadow
-$shadow-modal_content: var(--semi-shadow-elevated);
-
-
+$shadow-modal_content: var(--semi-shadow-elevated);

+ 3 - 3
packages/semi-foundation/package.json

@@ -1,14 +1,14 @@
 {
     "name": "@douyinfe/semi-foundation",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "",
     "scripts": {
         "build:lib": "node ./scripts/compileLib.js",
         "prepublishOnly": "npm run build:lib"
     },
     "dependencies": {
-        "@douyinfe/semi-animation": "2.81.0",
-        "@douyinfe/semi-json-viewer-core": "2.81.0",
+        "@douyinfe/semi-animation": "2.82.0-beta.0",
+        "@douyinfe/semi-json-viewer-core": "2.82.0-beta.0",
         "@mdx-js/mdx": "^3.0.1",
         "async-validator": "^3.5.0",
         "classnames": "^2.2.6",

+ 1 - 1
packages/semi-icons-lab/package.json

@@ -1,6 +1,6 @@
 {
   "name": "@douyinfe/semi-icons-lab",
-  "version": "2.81.0",
+  "version": "2.82.0-beta.0",
   "description": "semi icons lab",
   "keywords": [
     "semi",

+ 1 - 1
packages/semi-icons/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-icons",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "semi icons",
     "keywords": [
         "semi",

+ 1 - 1
packages/semi-illustrations/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-illustrations",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "semi illustrations",
     "keywords": [
         "semi",

+ 1 - 1
packages/semi-json-viewer-core/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-json-viewer-core",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "",
     "main": "lib/index.js",
     "module": "lib/index.js",

+ 2 - 2
packages/semi-next/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-next",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "Plugin that support Semi Design in Next.js",
     "author": "伍浩威 <[email protected]>",
     "homepage": "",
@@ -22,7 +22,7 @@
         "typescript": "^4"
     },
     "dependencies": {
-        "@douyinfe/semi-webpack-plugin": "2.81.0"
+        "@douyinfe/semi-webpack-plugin": "2.82.0-beta.0"
     },
     "gitHead": "eb34a4f25f002bb4cbcfa51f3df93bed868c831a"
 }

+ 1 - 1
packages/semi-rspack/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-rspack-plugin",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "",
     "homepage": "",
     "license": "MIT",

+ 1 - 1
packages/semi-scss-compile/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-scss-compile",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "compile semi scss to css",
     "author": "[email protected]",
     "license": "MIT",

+ 1 - 1
packages/semi-theme-default/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-theme-default",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "semi-theme-default",
     "keywords": [
         "semi-theme",

+ 4 - 2
packages/semi-ui/modal/Modal.tsx

@@ -35,7 +35,8 @@ export interface ModalReactProps extends ModalProps {
     footer?: ReactNode;
     header?: ReactNode;
     onCancel?: (e: React.MouseEvent) => void | Promise<any>;
-    onOk?: (e: React.MouseEvent) => void | Promise<any>
+    onOk?: (e: React.MouseEvent) => void | Promise<any>;
+    modalRender?: (node: ReactNode) => ReactNode
 }
 
 
@@ -57,6 +58,7 @@ class Modal extends BaseComponent<ModalReactProps, ModalState> {
         maskClosable: PropTypes.bool,
         onCancel: PropTypes.func,
         onOk: PropTypes.func,
+        modalRender: PropTypes.func,
         afterClose: PropTypes.func,
         okButtonProps: PropTypes.object,
         cancelButtonProps: PropTypes.object,
@@ -286,7 +288,7 @@ class Modal extends BaseComponent<ModalReactProps, ModalState> {
                         autoFocus={true}
                         {...this.props.cancelButtonProps}
                         style={{
-                            ...footerFill ? { marginLeft: "unset" }:{},
+                            ...footerFill ? { marginLeft: "unset" } : {},
                             ...this.props.cancelButtonProps?.style
                         }}
                         x-semi-children-alias="cancelText"

+ 20 - 19
packages/semi-ui/modal/ModalContent.tsx

@@ -1,4 +1,4 @@
-import React, { CSSProperties } from 'react';
+import React, { CSSProperties, ReactNode } from 'react';
 import PropTypes from 'prop-types';
 import cls from 'classnames';
 import { cssClasses } from '@douyinfe/semi-foundation/modal/constants';
@@ -19,7 +19,8 @@ let uuid = 0;
 
 
 export interface ModalContentReactProps extends ModalContentProps {
-    children?: React.ReactNode
+    children?: React.ReactNode;
+    modalRender?: (node: ReactNode) => ReactNode
 }
 
 export default class ModalContent extends BaseComponent<ModalContentReactProps, ModalContentState> {
@@ -268,8 +269,22 @@ export default class ModalContent extends BaseComponent<ModalContentReactProps,
                 {props.footer}
             </div>
         ) : null;
+
+        const modalContentElement = (<div
+            role="dialog"
+            ref={this.modalDialogRef}
+            aria-modal="true"
+            aria-labelledby={`${cssClasses.DIALOG}-title`}
+            aria-describedby={`${cssClasses.DIALOG}-body`}
+            onAnimationEnd={props.onAnimationEnd}
+            className={cls([`${cssClasses.DIALOG}-content`,
+                props.contentClassName,
+                { [`${cssClasses.DIALOG}-content-fullScreen`]: props.isFullScreen }])}>
+            {header}
+            {body}
+            {footer}
+        </div>);
         const dialogElement = (
-            // eslint-disable-next-line jsx-a11y/no-static-element-interactions
             <div
                 key="dialog-element"
                 className={digCls}
@@ -277,23 +292,9 @@ export default class ModalContent extends BaseComponent<ModalContentReactProps,
                 style={{ ...props.style, ...style }}
                 id={this.dialogId}
             >
-                <div
-                    role="dialog"
-                    ref={this.modalDialogRef}
-                    aria-modal="true"
-                    aria-labelledby={`${cssClasses.DIALOG}-title`}
-                    aria-describedby={`${cssClasses.DIALOG}-body`}
-                    onAnimationEnd={props.onAnimationEnd}
-                    className={cls([`${cssClasses.DIALOG}-content`,
-                        props.contentClassName,
-                        { [`${cssClasses.DIALOG}-content-fullScreen`]: props.isFullScreen }])}>
-                    {header}
-                    {body}
-                    {footer}
-                </div>
+                {props?.modalRender ? props?.modalRender(modalContentElement) : modalContentElement}
             </div>
-        ); 
-        // return props.visible ? dialogElement : null;
+        );
         return dialogElement;
     };
 

+ 15 - 0
packages/semi-ui/modal/__test__/modal.test.js

@@ -321,4 +321,19 @@ describe('modal', () => {
         expect(modal.state().displayNone).toEqual(true);
         expect(modal.exists(`div.${BASE_CLASS_PREFIX}-modal`)).toEqual(true);
     });
+
+    it('modal render', () => {
+        const testClass = 'modal-render-test'
+        let com = getModal({
+            visible: true,
+            modalRender: (modal) => (
+                <div className={testClass}>
+                    {modal}
+                </div>
+            )
+        });
+        let modal = mount(com, { attachTo: document.getElementById('container') });
+        expect(modal.exists(`div.${testClass}`)).toEqual(true);
+        modal.unmount();
+    });
 })

+ 26 - 1
packages/semi-ui/modal/_story/modal.stories.jsx

@@ -1,7 +1,7 @@
 import React, { useState } from 'react';
 import en_GB from '../../locale/source/en_GB';
 
-import { Select, Modal, Button, Tooltip, Popover, ConfigProvider, Tag, Space } from '../../index';
+import { Select, Modal, Button, Tooltip, Popover, ConfigProvider, Tag, Space, DragMove } from '../../index';
 import CollapsibleInModal from './CollapsibleInModal';
 import DynamicContextDemo from './DynamicContext';
 
@@ -341,3 +341,28 @@ export const UseModalAfterClose = () => {
   );
 };
 UseModalAfterClose.storyName = "useModal afterClose";
+
+export const DraggableModal = () => {
+    const [visible, setVisible] = useState(false);
+    return (
+        <div>
+            <Button onClick={() => setVisible(true)}>Open Modal</Button>
+            <Modal
+                title="可拖拽Modal"
+                visible={visible}
+                onCancel={() => setVisible(false)}
+                modalRender={(modal) => (
+                    <DragMove>{modal}</DragMove>
+                )}
+            >
+                <p>This is the content of a basic sidesheet.</p>
+                <p>Here is more content...</p>
+            </Modal>
+        </div>
+    );
+};
+
+
+DraggableModal.story = {
+    name: 'draggable modal',
+};

+ 7 - 7
packages/semi-ui/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-ui",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "A modern, comprehensive, flexible design system and UI library. Connect DesignOps & DevOps. Quickly build beautiful React apps. Maintained by Douyin-fe team.",
     "main": "lib/cjs/index.js",
     "module": "lib/es/index.js",
@@ -20,12 +20,12 @@
         "@dnd-kit/core": "^6.0.8",
         "@dnd-kit/sortable": "^7.0.2",
         "@dnd-kit/utilities": "^3.2.1",
-        "@douyinfe/semi-animation": "2.81.0",
-        "@douyinfe/semi-animation-react": "2.81.0",
-        "@douyinfe/semi-foundation": "2.81.0",
-        "@douyinfe/semi-icons": "2.81.0",
-        "@douyinfe/semi-illustrations": "2.81.0",
-        "@douyinfe/semi-theme-default": "2.81.0",
+        "@douyinfe/semi-animation": "2.82.0-beta.0",
+        "@douyinfe/semi-animation-react": "2.82.0-beta.0",
+        "@douyinfe/semi-foundation": "2.82.0-beta.0",
+        "@douyinfe/semi-icons": "2.82.0-beta.0",
+        "@douyinfe/semi-illustrations": "2.82.0-beta.0",
+        "@douyinfe/semi-theme-default": "2.82.0-beta.0",
         "async-validator": "^3.5.0",
         "classnames": "^2.2.6",
         "copy-text-to-clipboard": "^2.1.1",

+ 1 - 1
packages/semi-webpack/package.json

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-webpack-plugin",
-    "version": "2.81.0",
+    "version": "2.82.0-beta.0",
     "description": "",
     "author": "伍浩威 <[email protected]>",
     "homepage": "",

File diff suppressed because it is too large
+ 216 - 216
sitemap.xml


+ 0 - 98
yarn.lock

@@ -1585,25 +1585,11 @@
     "@douyinfe/semi-animation-styled" "2.65.0"
     classnames "^2.2.6"
 
-"@douyinfe/[email protected]":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-animation-react/-/semi-animation-react-2.80.0.tgz#b6fa136f6fe61c3afe0c56b440891638701fa3c7"
-  integrity sha512-DL4nbJOOgiR/xVYQITqzXzYDoW85AhJ5ZwxXWQ/r5hwmuWzhCOg5RbpcCEfj6EM+TOYCkopihrwxC5x2hu+LMw==
-  dependencies:
-    "@douyinfe/semi-animation" "2.80.0"
-    "@douyinfe/semi-animation-styled" "2.80.0"
-    classnames "^2.2.6"
-
 "@douyinfe/[email protected]":
   version "2.65.0"
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-animation-styled/-/semi-animation-styled-2.65.0.tgz#8c56047a5704a45b05cc9809a2a126cc24526ea1"
   integrity sha512-YFF8Ptcz/jwS0phm28XZV7ROqMQ233sjVR0Uy33FImCITr6EAPe5wcCeEmzVZoYS7x3tUFR30SF+0hSO01rQUg==
 
-"@douyinfe/[email protected]":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-animation-styled/-/semi-animation-styled-2.80.0.tgz#be1f7c1f1093490735fbd2bf6a218585130742b5"
-  integrity sha512-4U7z72/yJKhswdnGSG/0AALzLfGn6XHaRlQ8QK63MKYbpEjZeZ0p/Rc9wmngPo8CU7YKXSJeIdsArMZq/pqSlw==
-
 "@douyinfe/[email protected]":
   version "2.65.0"
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-animation/-/semi-animation-2.65.0.tgz#f544a6b420c3e948c09836019e6b63f1382cd12c"
@@ -1611,13 +1597,6 @@
   dependencies:
     bezier-easing "^2.1.0"
 
-"@douyinfe/[email protected]":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-animation/-/semi-animation-2.80.0.tgz#37515eb0c051ff1f6cb7196c4d2a15bad644020a"
-  integrity sha512-wjJr6EbO5TkJcyqx/CyLUdIE62TStfmCVDeMPXUT709OnIecoU1BsB/LGMVsdNQXF0muxb8bBcEb/A9M5mMclQ==
-  dependencies:
-    bezier-easing "^2.1.0"
-
 "@douyinfe/[email protected]":
   version "2.65.0"
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-foundation/-/semi-foundation-2.65.0.tgz#20466a9b4baacdde2249930fb709ba035c5a7bea"
@@ -1637,26 +1616,6 @@
     remark-gfm "^4.0.0"
     scroll-into-view-if-needed "^2.2.24"
 
-"@douyinfe/[email protected]":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-foundation/-/semi-foundation-2.80.0.tgz#1c2278fdd011d20d4c5223f3ad9e3e3cc955d8aa"
-  integrity sha512-wtrdBXzF3tU1mIKxUgRHH6qhLSlpQhNAXDnnA00JMo4/hXfINzLFd3dOjQpaWxu8TIDq/UF8rDS/Y/1tlmsXzg==
-  dependencies:
-    "@douyinfe/semi-animation" "2.80.0"
-    "@douyinfe/semi-json-viewer-core" "2.80.0"
-    "@mdx-js/mdx" "^3.0.1"
-    async-validator "^3.5.0"
-    classnames "^2.2.6"
-    date-fns "^2.29.3"
-    date-fns-tz "^1.3.8"
-    fast-copy "^3.0.1 "
-    lodash "^4.17.21"
-    lottie-web "^5.12.2"
-    memoize-one "^5.2.1"
-    prismjs "^1.29.0"
-    remark-gfm "^4.0.0"
-    scroll-into-view-if-needed "^2.2.24"
-
 "@douyinfe/[email protected]", "@douyinfe/semi-icons@latest":
   version "2.65.0"
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-icons/-/semi-icons-2.65.0.tgz#af39cbd5431ebccedcf7d9ce689646e54bebc432"
@@ -1664,30 +1623,11 @@
   dependencies:
     classnames "^2.2.6"
 
-"@douyinfe/[email protected]", "@douyinfe/semi-icons@^2.0.0":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-icons/-/semi-icons-2.80.0.tgz#a4411181fc867fcb46371dab82bb9ed1167f4e8f"
-  integrity sha512-V7fyPdbws/lT3nK/4aneSRgDHEx3AG4njAAEFBW1oOnc/T1+xYbgoDzOlK9lC6DpBzw42/KRrpMrQ236gIRf2w==
-  dependencies:
-    classnames "^2.2.6"
-
 "@douyinfe/[email protected]":
   version "2.65.0"
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-illustrations/-/semi-illustrations-2.65.0.tgz#9916c540c91222a1d9f48cd34a941d28b8a05d2f"
   integrity sha512-1IhOztyBYiSu8WrcvN+oWWtcJTC9+x6zbnYtufx4ToISs5UO1te1PQofABpkDzIJYFtW9yYLxg4uoL4wGjqYMA==
 
-"@douyinfe/[email protected]":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-illustrations/-/semi-illustrations-2.80.0.tgz#7b59dd859c040114a644711fb1e0d0a145b077e4"
-  integrity sha512-BIgp37ZlVPoyzmClp8UlAOIrJv5SAak61HWZg9DRvckZ2Fm5f39Bz/QJNf15rIiEQKvCobsR37EuECnCYLJ1UQ==
-
-"@douyinfe/[email protected]":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-json-viewer-core/-/semi-json-viewer-core-2.80.0.tgz#93dd25bcfabdacefd008f0318b0c49dcdc0836a7"
-  integrity sha512-SU+EsMr3xsxzNvi1QngB9KhfVdXoa9M7rvpw7o0MYnUGE7jFBGICwwh3PKGxOGJqLNjngartgxkFfH3BcCaFgA==
-  dependencies:
-    jsonc-parser "^3.3.1"
-
 "@douyinfe/[email protected]":
   version "2.23.2"
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-scss-compile/-/semi-scss-compile-2.23.2.tgz#30884bb194ee9ae1e81877985e5663c3297c1ced"
@@ -1759,39 +1699,6 @@
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-theme-default/-/semi-theme-default-2.61.0.tgz#a7e9bf9534721c12af1d0eeb5d5a2de615896a23"
   integrity sha512-obn/DOw4vZyKFAlWvZxHTpBLAK9FO9kygTSm2GROgvi+UDB2PPU6l20cuUCsdGUNWJRSqYlTTVZ1tNYIyFZ5Sg==
 
-"@douyinfe/[email protected]":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-theme-default/-/semi-theme-default-2.80.0.tgz#60ab77cfafea9a353227ec8a1fa5982308372973"
-  integrity sha512-pbQYIJhESsAlva4+syfViHZkayTTL3bMLIjNT1IAdu8fhclCFXXRBNhTFLobZ8qxhlkSyCdFoYer5oSkFoUTDw==
-
-"@douyinfe/semi-ui@^2.0.0":
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/@douyinfe/semi-ui/-/semi-ui-2.80.0.tgz#482c22a89b0ecae14a8b0630da359f0f4596b982"
-  integrity sha512-sMYRSGt7peXb6R7PDwsnAoICI3U9Ao2vcOaV2NHuRz6G5NFJJ9svKEup3ehpOgdU2HcAa3mIOh8wvnVYOVoFDg==
-  dependencies:
-    "@dnd-kit/core" "^6.0.8"
-    "@dnd-kit/sortable" "^7.0.2"
-    "@dnd-kit/utilities" "^3.2.1"
-    "@douyinfe/semi-animation" "2.80.0"
-    "@douyinfe/semi-animation-react" "2.80.0"
-    "@douyinfe/semi-foundation" "2.80.0"
-    "@douyinfe/semi-icons" "2.80.0"
-    "@douyinfe/semi-illustrations" "2.80.0"
-    "@douyinfe/semi-theme-default" "2.80.0"
-    async-validator "^3.5.0"
-    classnames "^2.2.6"
-    copy-text-to-clipboard "^2.1.1"
-    date-fns "^2.29.3"
-    date-fns-tz "^1.3.8"
-    fast-copy "^3.0.1 "
-    jsonc-parser "^3.3.1"
-    lodash "^4.17.21"
-    prop-types "^15.7.2"
-    react-resizable "^3.0.5"
-    react-window "^1.8.2"
-    scroll-into-view-if-needed "^2.2.24"
-    utility-types "^3.10.0"
-
 "@douyinfe/semi-ui@latest":
   version "2.65.0"
   resolved "https://registry.yarnpkg.com/@douyinfe/semi-ui/-/semi-ui-2.65.0.tgz#295eb0dd8e9e961adb4ddd7c7bbce3468d1b7430"
@@ -12074,11 +11981,6 @@ eslint-plugin-react@^7.20.6, eslint-plugin-react@^7.24.0:
     string.prototype.matchall "^4.0.11"
     string.prototype.repeat "^1.0.0"
 
-eslint-plugin-semi-design@^2.33.0:
-  version "2.80.0"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-semi-design/-/eslint-plugin-semi-design-2.80.0.tgz#e4f72e9e38b359eb98a55b4ca6e9cef15270b4fe"
-  integrity sha512-v2Gr32kb7731b/wTlIwQMbsORweMlOhICWD5mBGEz/WUM3O60gUUmDBjj8pzpMbKPW0rZ03Q1wEqmTm5HjEa+g==
-
 eslint-rule-composer@^0.3.0:
   version "0.3.0"
   resolved "https://registry.yarnpkg.com/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz#79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9"

Some files were not shown because too many files changed in this diff