Bläddra i källkod

Merge branch 'main' into release

林艳 5 månader sedan
förälder
incheckning
78f4a50343
36 ändrade filer med 482 tillägg och 302 borttagningar
  1. 1 0
      .gitignore
  2. 1 0
      content/show/table/index-en-US.md
  3. 1 0
      content/show/table/index.md
  4. 16 0
      content/start/changelog/index-en-US.md
  5. 16 0
      content/start/changelog/index.md
  6. 1 1
      lerna.json
  7. 3 3
      packages/semi-animation-react/package.json
  8. 1 1
      packages/semi-animation-styled/package.json
  9. 1 1
      packages/semi-animation/package.json
  10. 1 1
      packages/semi-eslint-plugin/package.json
  11. 1 0
      packages/semi-foundation/checkbox/checkbox.scss
  12. 1 0
      packages/semi-foundation/dropdown/dropdown.scss
  13. 1 0
      packages/semi-foundation/dropdown/variables.scss
  14. 3 3
      packages/semi-foundation/package.json
  15. 3 0
      packages/semi-foundation/radio/radio.scss
  16. 2 1
      packages/semi-foundation/radio/variables.scss
  17. 1 1
      packages/semi-foundation/scrollList/scrollList.scss
  18. 34 33
      packages/semi-foundation/table/table.scss
  19. 1 1
      packages/semi-icons-lab/package.json
  20. 1 1
      packages/semi-icons/package.json
  21. 1 1
      packages/semi-illustrations/package.json
  22. 1 1
      packages/semi-json-viewer-core/package.json
  23. 2 2
      packages/semi-next/package.json
  24. 1 1
      packages/semi-rspack/package.json
  25. 16 1
      packages/semi-rspack/src/componentDependentTree.ts
  26. 4 1
      packages/semi-rspack/src/loaders/semi-web-component-loader.ts
  27. 1 1
      packages/semi-scss-compile/package.json
  28. 1 1
      packages/semi-theme-default/package.json
  29. 7 7
      packages/semi-ui/package.json
  30. 98 0
      packages/semi-ui/table/_story/RowBg/index.jsx
  31. 3 0
      packages/semi-ui/table/_story/table.stories.jsx
  32. 1 1
      packages/semi-webpack/package.json
  33. 16 1
      packages/semi-webpack/src/componentDependentTree.ts
  34. 4 1
      packages/semi-webpack/src/semi-web-component-loader.ts
  35. 197 197
      sitemap.xml
  36. 39 39
      yarn.lock

+ 1 - 0
.gitignore

@@ -233,3 +233,4 @@ tmp
 
 
 .vscode
+.circle-engineer

+ 1 - 0
content/show/table/index-en-US.md

@@ -5464,6 +5464,7 @@ type Filter = {
 | renderCell         | Custom rendering checkbox                                                                                 | ({ selected: boolean, record: RecordType, originNode: JSX.Element, inHeader: boolean, disabled: boolean, indeterminate: boolean, index?: number, selectRow?: (selected: boolean, e: Event) => void, selectAll?: (selected: boolean, e: Event) => void }) => ReactNode |        |      **2.52.0**      |
 | width | Custom list selection box width | string | number |  |
 | onChange | A callback in the event of a change in the selected item. The first parameter will save the row keys selected last time, even if you do paging control or update the dataSource [FAQ](#faq) | (selectedRowKeys: number[]\|string[], selectedRows: RecordType[]) => void |  |  |
+| onHeaderCell | Set the head cell property | (column: RecordType, columnIndex: number) => object |  |
 | onSelect | Callback when the user manually clicks the selection box of a row | (record: RecordType, selected: boolean, selectedRows: RecordType[], nativeEvent: MouseEvent) => void |  |  |
 | onSelectAll | The user manually clicks the callback of the header selection box, and all optional rows in the dataSource will be selected/unselected | (selected: boolean, selectedRows: RecordType[], changedRows: RecordType[]) => void |  |  |
 

+ 1 - 0
content/show/table/index.md

@@ -5859,6 +5859,7 @@ type Filter = {
 | shouldCellUpdate | 自定义控制单元格是否渲染。默认 cell 会深对比 props 和 nextProps 是否变化,来决定是否渲染单元格。如果你的 props 中的 record 比较复杂,建议使用 `shouldCellUpdate` 接管单元格的渲染。 | (props: TableCellProps, prevProps: TableCellProps) => boolean                                                                                                                                                                                                         |        | **2.71.0** |
 | width            | 自定义列表选择框宽度                                                                                                                                                           | string\|number                                                                                                                                                                                                                                                        |        |            |
 | onChange         | 选中项发生变化时的回调。第一个参数会保存上次选中的 row keys,即使你做了分页受控或更新了 dataSource [FAQ](#faq)                                                                   | (selectedRowKeys: number[]\|string[], selectedRows: RecordType[]) => void                                                                                                                                                                                             |        |            |
+| onHeaderCell | 设置头部单元格属性 | (column: RecordType, columnIndex: number) => object |  |
 | onSelect         | 用户手动点击某行选择框的回调                                                                                                                                                   | (record: RecordType, selected: boolean, selectedRows: RecordType[], nativeEvent: MouseEvent) => void                                                                                                                                                                  |        |            |
 | onSelectAll      | 用户手动点击表头选择框的回调,会选中/取消选中 dataSource 里的所有可选行                                                                                                         | (selected: boolean, selectedRows: RecordType[], changedRows: RecordType[]) => void                                                                                                                                                                                    |        |            |
 

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

@@ -16,6 +16,22 @@ Version:Major.Minor.Patch (follow the **Semver** specification)
 
 ---
 
+#### 🎉 2.79.0 (2025-05-08)
+- 【Feat】
+    - Upload Added a pop-up file name prompt function when the file name is too long [@yatbfm](https://github.com/yatbfm)
+- 【Fix】
+    - Fix Switch component loading and disabled state hover style issue [@LonelySnowman](https://github.com/LonelySnowman)
+    - Fixed the issue that when the Table component sets the header background color through style in onHeaderCell, the fixed header does not take effect [#2814](https://github.com/DouyinFE/semi-design/issues/2814)
+- 【Style】
+    - Dropdown adds $radius-dropdown_item token to set the radius of each option in the panel [#2817](https://github.com/DouyinFE/semi-design/pull/2817)
+    - Add overflow: hidden style setting to the outermost layer of ScrollList [#2818](https://github.com/DouyinFE/semi-design/pull/2818)
+    - Fixed the problem that the color of the checkbox inside the selected Checkbox component is not controlled by the correct token when it is in the hovering state. [#2819](https://github.com/DouyinFE/semi-design/pull/2819)
+    - Added $color-radio_checked-icon-disabled token to allow users to configure the origin color of the Radio in the selected and disabled states [#2820](https://github.com/DouyinFE/semi-design/pull/2820)
+- 【Chore】
+   - The web components loader of the Webpack/Rspack plugin adds style insertion support for other components. The added components are AudioPlayer, Chat, CodeHighlight, ColorPicker, Cropper, HotKeys, JsonViewer, MarkdownRender, PinCode, Resizable, UserGuide, ButtonGroup, SplitButton, List, and TimePicker.[#2812](https://github.com/DouyinFE/semi-design/pull/2812)
+    - Throws a warning when the Tree component key is incorrectly passed as a number [@LonelySnowman](https://github.com/LonelySnowman) [#2773](https://github.com/DouyinFE/semi-design/pull/2773)
+
+
 #### 🎉 2.79.0-beta.0 (2025-04-23)
 - 【Style】
     - Modify the implementation of background color and progress color in Progress to ensure that the design theme configuration takes effect [#2808](https://github.com/DouyinFE/semi-design/pull/2808)

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

@@ -13,6 +13,22 @@ Semi 版本号遵循 **Semver** 规范(主版本号 - 次版本号 - 修订版
 -   修订版本号(patch):仅会进行 bugfix,发布时间不限
 -   不同版本间的详细关系,可查阅 [FAQ](/zh-CN/start/faq)
 
+#### 🎉 2.79.0 (2025-05-08)
+- 【Feat】
+    - Upload 添加文件名超长时弹出文件名提示功能 [@yatbfm](https://github.com/yatbfm) [#2753](https://github.com/DouyinFE/semi-design/pull/2753)
+- 【Fix】
+    - 修复 Switch 组件 loading 加 disabled 态 hover 后样式问题 [@LonelySnowman](https://github.com/LonelySnowman) [#2778](https://github.com/DouyinFE/semi-design/pull/2778)
+    - 修复 Table 组件在 onHeaderCell 中通过 style 设置表头背景色时候,fixed 表头中不生效问题 [BUG] Table 的 column 设置 fixed 后,通过 onHeaderCell 设置的 style 样式有问题 [#2814](https://github.com/DouyinFE/semi-design/issues/2814)
+- 【Style】
+    - Dropdown 增加 $radius-dropdown_item token 用于设置面板中的各选项圆角 [#2817](https://github.com/DouyinFE/semi-design/pull/2817)
+    - ScrollList 最外层增加 overflow: hidden 的样式设置 [#2818](https://github.com/DouyinFE/semi-design/pull/2818)
+    - 修复禁用,选中的 Checkbox 组件内部的对勾在悬停状态时,颜色未受到正确 token 控制问题 [#2819](https://github.com/DouyinFE/semi-design/pull/2819)
+    - 增加 $color-radio_checked-icon-disabled token 用于允许用户配置选中,禁用状态下的 Radio 的原点颜色 [#2820](https://github.com/DouyinFE/semi-design/pull/2820)
+- 【Chore】
+    - Webpack/Rspack 插件的 web components loader 增加其他组件的样式插入支持。增加的组件为AudioPlayer, Chat,CodeHighlight, ColorPicker, Cropper,HotKeys,JsonViewer, MarkdownRender,PinCode, Resizable, UserGuide, ButtonGroup,SplitButton,List,TimePicker。[#2812](https://github.com/DouyinFE/semi-design/pull/2812)
+    - 当 Tree组件 key 错传为 number 时抛出 warning [@LonelySnowman](https://github.com/LonelySnowman) [#2773](https://github.com/DouyinFE/semi-design/pull/2773)
+
+
 #### 🎉 2.79.0-beta.0 (2025-04-23)
 - 【Style】
     - 修改 Progress 中背景色和进度颜色的实现方式,保证主题配置生效 [#2808](https://github.com/DouyinFE/semi-design/pull/2808)

+ 1 - 1
lerna.json

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

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

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-animation-react",
-    "version": "2.79.0-beta.0",
+    "version": "2.79.0",
     "description": "motion library for semi-ui-react",
     "keywords": [
         "motion",
@@ -25,8 +25,8 @@
         "prepublishOnly": "npm run build:lib"
     },
     "dependencies": {
-        "@douyinfe/semi-animation": "2.79.0-beta.0",
-        "@douyinfe/semi-animation-styled": "2.79.0-beta.0",
+        "@douyinfe/semi-animation": "2.79.0",
+        "@douyinfe/semi-animation-styled": "2.79.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.79.0-beta.0",
+    "version": "2.79.0",
     "description": "semi styled animation",
     "keywords": [
         "semi",

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

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-animation",
-    "version": "2.79.0-beta.0",
+    "version": "2.79.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.79.0-beta.0",
+    "version": "2.79.0",
     "description": "semi ui eslint plugin",
     "keywords": [
         "semi",

+ 1 - 0
packages/semi-foundation/checkbox/checkbox.scss

@@ -81,6 +81,7 @@ $module: #{$prefix}-checkbox;
 
         .#{$module}-inner-checked {
             .#{$module}-inner-display {
+                color: $color-checkbox_checked-icon-disabled;
                 background: $color-checkbox_checked-bg-disabled;
                 box-shadow: none;
             }

+ 1 - 0
packages/semi-foundation/dropdown/dropdown.scss

@@ -48,6 +48,7 @@ $module: #{$prefix}-dropdown;
         align-items: center;
         transition: background-color $transition_duration-dropdown_item-bg $transition_function-dropdown_item-bg
             $transition_delay-dropdown_item-bg;
+        border-radius: $radius-dropdown_item;
 
         &-hover {
             background-color: $color-dropdown_item-bg-hover;

+ 1 - 0
packages/semi-foundation/dropdown/variables.scss

@@ -1,4 +1,5 @@
 $radius-dropdown: var(--semi-border-radius-medium); // 下拉菜单圆角大小
+$radius-dropdown_item: 0px; // 下拉菜单项圆角大小
 $color-dropdown-bg-default: var(--semi-color-bg-3); // 下拉菜单背景颜色
 $color-dropdown_title-text-default: var(--semi-color-text-2); // 下拉菜单分组标题文字颜色
 

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

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

+ 3 - 0
packages/semi-foundation/radio/radio.scss

@@ -202,6 +202,7 @@ $inner-width: $width-icon-medium;
 
         .#{$module}-inner-checked {
             .#{$module}-inner-display {
+                color: $color-radio_checked-icon-disabled;
                 background: $color-radio_checked-bg-disabled;
                 border-color: $color-radio_checked-border-disabled;
             }
@@ -363,10 +364,12 @@ $inner-width: $width-icon-medium;
 
         .#{$module}-inner-checked {
             .#{$module}-inner-display {
+                color: $color-radio_checked-icon-disabled;
                 background: $color-radio_checked-bg-disabled;
                 border-color: $color-radio_checked-border-disabled;
 
                 &:hover {
+                    color: $color-radio_checked-icon-disabled;
                     background: $color-radio_checked-bg-disabled;
                     border-color: $color-radio_checked-border-disabled;
                 }

+ 2 - 1
packages/semi-foundation/radio/variables.scss

@@ -13,7 +13,7 @@ $color-radio_primary-bg-hover: var(--semi-color-primary-hover); // 选中项悬
 $color-radio_primary-bg-active: var(--semi-color-primary-active); // 选中项按下态背景颜色
 $color-radio_primary-border-default: var(--semi-color-primary); // 选中项描边颜色
 $color-radio_primary-bg-default: var(--semi-color-primary); // 选中项背景颜色
-$color-radio_primary-text-default: rgba(var(--semi-white), 1); // 选中项点颜色
+$color-radio_primary-text-default: rgba(var(--semi-white), 1); // 选中项点颜色
 
 $color-radio_checked-bg-disabled: var(--semi-color-primary-disabled); // 选中项禁用态背景颜色
 $color-radio_default-border-disabled: var(--semi-color-border); // 禁用态描边颜色
@@ -23,6 +23,7 @@ $color-radio_disabled-bg-default: var(--semi-color-disabled-fill); // 禁用态
 $color-radio_disabled-bg-hover: transparent;
 $color-radio_disabled-text-default: var(--semi-color-disabled-text); // 禁用态文本颜色
 $color-radio_disabled-border-default: var(--semi-color-border); // 禁用态描边颜色
+$color-radio_checked-icon-disabled: rgba(var(--semi-white), 1); // 禁用态圆点颜色
 
 $color-radio_buttonRadio-text-default: var(--semi-color-text-1); // 按钮样式单选文本颜色
 $color-radio_buttonRadio-bg-default: var(--semi-color-fill-0); // 按钮样式单选背景颜色

+ 1 - 1
packages/semi-foundation/scrollList/scrollList.scss

@@ -12,7 +12,7 @@ $module: #{$prefix}-scrolllist;
     background: $color-scrollList-bg;
     box-shadow: $shadow-scrollList;
     border-radius: $radius-scrollList;
-
+    overflow: hidden;
     @include font-size-regular;
     user-select: none;
 

+ 34 - 33
packages/semi-foundation/table/table.scss

@@ -148,14 +148,14 @@ $module: #{$prefix}-table;
                         background-image: linear-gradient(0deg, $color-table_th-clickSort-bg-hover, $color-table_th-clickSort-bg-hover);
                         background-color: $color-table_cell-bg-hover;
                         
-                        &.#{$module}-cell-fixed {
-                            &-left,
-                            &-right {
-                                &::before {
-                                    background-color: transparent;
-                                }
-                            }
-                        }
+                        // &.#{$module}-cell-fixed {
+                        //     &-left,
+                        //     &-right {
+                        //         &::before {
+                        //             background-color: transparent;
+                        //         }
+                        //     }
+                        // }
                     }
                 }
 
@@ -164,19 +164,19 @@ $module: #{$prefix}-table;
                     &-right {
                         z-index: $z-table_fixed_column;
                         position: sticky;
-                        background-color: $color-table-bg-default;
-
-                        &::before {
-                            background-color: $color-table_th-bg-default;
-                            content: '';
-                            position: absolute;
-                            left: 0;
-                            top: 0;
-                            right: 0;
-                            bottom: 0;
-                            display: block;
-                            z-index: -1;
-                        }
+                        background-color: $color-table_th-bg-default;
+
+                        // &::before {
+                        //     background-color: $color-table_th-bg-default;
+                        //     content: '';
+                        //     position: absolute;
+                        //     left: 0;
+                        //     top: 0;
+                        //     right: 0;
+                        //     bottom: 0;
+                        //     display: block;
+                        //     z-index: -1;
+                        // }
                     }
 
                     &-left-last {
@@ -270,18 +270,19 @@ $module: #{$prefix}-table;
                         &-left,
                         &-right {
                             background-image: linear-gradient(0deg, $color-table_body-bg-default, $color-table_body-bg-default);
-
-                            &::before {
-                                background-color: $color-table_body-bg-hover;
-                                content: '';
-                                position: absolute;
-                                left: 0;
-                                top: 0;
-                                right: 0;
-                                bottom: 0;
-                                display: block;
-                                z-index: -1;
-                            }
+                            background-color: $color-table_body-bg-hover;
+
+                            // &::before {
+                            //     background-color: $color-table_body-bg-hover;
+                            //     content: '';
+                            //     position: absolute;
+                            //     left: 0;
+                            //     top: 0;
+                            //     right: 0;
+                            //     bottom: 0;
+                            //     display: block;
+                            //     z-index: -1;
+                            // }
                         }
                     }
                 }

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

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

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

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

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

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-illustrations",
-    "version": "2.79.0-beta.0",
+    "version": "2.79.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.79.0-beta.0",
+    "version": "2.79.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.79.0-beta.0",
+    "version": "2.79.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.79.0-beta.0"
+        "@douyinfe/semi-webpack-plugin": "2.79.0"
     },
     "gitHead": "eb34a4f25f002bb4cbcfa51f3df93bed868c831a"
 }

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

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

+ 16 - 1
packages/semi-rspack/src/componentDependentTree.ts

@@ -1,5 +1,6 @@
 const dependentTree = {
     "Anchor": ["Typography"],
+    "AudioPlayer": ["Button", "Dropdown", "Image", "Tooltip", "Popover", "Icon"],
     "AutoComplete": ["Spin", "Popover", "Input", "Icon"],
     "Avatar": [] as any,
     "AvatarGroup": [] as any,
@@ -8,14 +9,20 @@ const dependentTree = {
     "Banner": ["IconButton", "Typography", "Icon"],
     "Breadcrumb": ["Popover", "Typography", "Icon"],
     "Button": ["Icon"],
+    "ButtonGroup": ["Button"],
+    "SplitButtonGroup": ["Button"],
     "Calendar": ["Popover", "Button", "Icon"],
     "Card": ["Space", "Skeleton", "Typography"],
     "Carousel": ["Icon"],
     "Cascader": ["Input", "Popover", "Tag", "TagInput", "Spin", "Checkbox", "Icon"],
+    "Chat": ["TextArea", "Button", "Upload", "Toast", "Progress", "Image", "Avatar", "Icon", "MarkdownRender", "Typography", "Tooltip", "Divider", "Popconfirm", "BackTop"],
     "Checkbox": ["Icon"],
+    "CodeHighlight": [] as any,
     "CheckboxGroup": ["Icon"],
     "Collapse": ["Collapsible", "Icon"],
     "Collapsible": [] as any,
+    "ColorPicker": ["Popover", "Input", "InputGroup", "InputNumber", "Select", "Button"],
+    "Cropper": [] as any,
     "DatePicker": ["Button", "Input", "IconButton", "Icon", "Typography", "ScrollList", "Icon"],
     "Descriptions": [] as any,
     "Divider": [] as any,
@@ -25,24 +32,30 @@ const dependentTree = {
     "Row": [] as any,
     "Col": [] as any,
     "Highlight": [] as any,
+    "HotKeys": [] as any,
     "IconButton": ["Button", "Spin", "Icon"],
     "Image": ["Skeleton", "Divider", "Tooltip", "Slider", "Spin", "Portal", "Icon"],
     "Input": ["Icon"],
     "InputGroup": ["Form"],
     "TextArea": ["Icon"],
     "InputNumber": ["Input", "Icon"],
+    "JsonViewer": ["Button", "Input", "Icon"],
     "Layout": [] as any,
+    "List": ["Row", "Spin"],
+    "MarkdownRender": ["Typography", "CodeHighlight", "Image", "Table", "Icon"],
     "Modal": ["Button", "Portal", "Typography", "Icon"],
     "Navigation": ["Button", "Tooltip", "Dropdown", "Collapsible", "Icon"],
     "Notification": ["Button", "Icon"],
     "OverflowList": [] as any,
     "Pagination": ["Select", "InputNumber", "Popover", "Icon"],
+    "PinCode": ["Input"],
     "Popconfirm": ["Popover", "Button", "Icon"],
     "Popover": ["Tooltip"],
     "Portal": [] as any,
     "Progress": [] as any,
     "Radio": ["Icon"],
     "Rating": ["Icon", "Tooltip"],
+    "Resizable": ["Icon"],
     "ScrollList": [] as any,
     "Select": ["Tag", "OverflowList", "Space", "Typography", "Spin", "Popover", "Icon"],
     "SideSheet": ["[Portal", "Button", "Icon"],
@@ -58,13 +71,15 @@ const dependentTree = {
     "TagGroup": ["Icon", "Popover", "Avatar"],
     "TagInput": ["Tag", "Input", "Popover", "Icon"],
     "Timeline": [] as any,
+    "TimePicker": ["Input", "Icon", "Popover", "ScrollList"],
     "Toast": ["Button", "Icon"],
     "Tooltip": ["Portal"],
     "Transfer": ["Input", "Checkbox", "Tree", "Button", "Spin", "Icon"],
     "Tree": ["Input", "Checkbox", "Spin", "Collapsible", "Icon"],
     "TreeSelect": ["Tag", "TagInput", "Checkbox", "Popover", "Input", "Icon"],
     "Typography": ["Popover", "Tooltip", "Icon"],
-    "Upload": ["Button", "Progress", "Tooltip", "Spin", "Icon"]
+    "Upload": ["Button", "Progress", "Tooltip", "Spin", "Icon"],
+    "UserGuide": ["Popover", "Button", "Modal"]
 };
   
 export default dependentTree;

+ 4 - 1
packages/semi-rspack/src/loaders/semi-web-component-loader.ts

@@ -9,7 +9,9 @@ function getAllComponents(components: string[]) {
     const specialCaseBefore = {
         'AvatarGroup': 'Avatar',
         'CheckboxGroup': 'Checkbox',
-        'TagGroup': 'Tag'
+        'TagGroup': 'Tag',
+        'ButtonGroup': 'Button',
+        'SplitButtonGroup': 'Button',
     };
 
     /*
@@ -70,6 +72,7 @@ function getScssImportPaths(components: string[]) {
         'Portal': `${pathsObj.foundationPath}_portal/portal.scss`,
         "TextArea": `${pathsObj.foundationPath}input/textarea.scss`,
         "IconButton": `${pathsObj.foundationPath}button/iconButton.scss`,
+        "SplitButtonGroup": `${pathsObj.foundationPath}button/SplitButtonGroup.scss`,
     };
     const cssPaths = ["Base", ...components].map(componentName => {
         const lowFirstLetter = componentName.slice(0, 1).toLowerCase() + componentName.slice(1);

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

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-scss-compile",
-    "version": "2.79.0-beta.0",
+    "version": "2.79.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.79.0-beta.0",
+    "version": "2.79.0",
     "description": "semi-theme-default",
     "keywords": [
         "semi-theme",

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

@@ -1,6 +1,6 @@
 {
     "name": "@douyinfe/semi-ui",
-    "version": "2.79.0-beta.0",
+    "version": "2.79.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.79.0-beta.0",
-        "@douyinfe/semi-animation-react": "2.79.0-beta.0",
-        "@douyinfe/semi-foundation": "2.79.0-beta.0",
-        "@douyinfe/semi-icons": "2.79.0-beta.0",
-        "@douyinfe/semi-illustrations": "2.79.0-beta.0",
-        "@douyinfe/semi-theme-default": "2.79.0-beta.0",
+        "@douyinfe/semi-animation": "2.79.0",
+        "@douyinfe/semi-animation-react": "2.79.0",
+        "@douyinfe/semi-foundation": "2.79.0",
+        "@douyinfe/semi-icons": "2.79.0",
+        "@douyinfe/semi-illustrations": "2.79.0",
+        "@douyinfe/semi-theme-default": "2.79.0",
         "async-validator": "^3.5.0",
         "classnames": "^2.2.6",
         "copy-text-to-clipboard": "^2.1.1",

+ 98 - 0
packages/semi-ui/table/_story/RowBg/index.jsx

@@ -0,0 +1,98 @@
+import React from 'react';
+import { Table } from '@douyinfe/semi-ui';
+
+
+class RowBg extends React.Component {
+    constructor(props = {}) {
+        super(props);
+  
+        this.columns = [
+            {
+                title: 'Name',
+                dataIndex: 'name',
+                width: 150,
+                fixed: 'left',
+                filterMultiple: false,
+                filters: [
+                    {
+                        text: 'Code 45',
+                        value: '45',
+                    },
+                    {
+                        text: 'King 4',
+                        value: 'King 4',
+                    },
+                ],
+                onFilter: (value, record) => record.name.includes(value),
+                filterDropdownProps: {
+                    showTick: true,
+                }
+            },
+            {
+                title: 'Age',
+                dataIndex: 'age',
+                width: 150,
+                sorter: (a, b) => (a.age - b.age > 0 ? 1 : -1),
+            },
+            {
+                title: 'Address',
+                width: 200,
+                dataIndex: 'address',
+            },
+            {
+                title: 'Description',
+                dataIndex: 'description',
+            },
+            {
+                fixed: 'right',
+                width: 250,
+                render: (text, record) => (
+                    <span color="green">Info</span>
+                ),
+            },
+        ];
+  
+  
+        const onHeaderCell = () => {
+            return {
+                style: { background: 'rgba(var(--semi-grey-1), 1)' },
+            };
+        };
+        this.columns.forEach((item) => (item.onHeaderCell = onHeaderCell));
+  
+        this.data = [];
+  
+        for (let i = 0; i < 46; i++) {
+            let age = 40 + (Math.random() > 0.5 ? 1 : -1) * Math.ceil(i / 3);
+            let name = `Edward King ${i}`;
+            this.data.push({
+                key: '' + i,
+                name,
+                age,
+                address: `London, Park Lane no. ${i}`,
+                description: `My name is ${name}, I am ${age} years old, living in New York No. ${i + 1} Lake Park.`,
+            });
+        }
+        this.handleRow = (record, index) => {
+            // 给偶数行设置斑马纹
+            if (index % 2 === 0) {
+                return {
+                    style: {
+                        background: 'var(--semi-color-fill-0)',
+                    },
+                };
+            } else {
+                return {};
+            }
+        };
+  
+        this.scroll = { y: 400, x: '150%' };
+    }
+  
+    render() {
+        return <Table columns={this.columns} dataSource={this.data} onRow={this.handleRow} scroll={this.scroll} />;
+    }
+}
+
+export default RowBg;
+  

+ 3 - 0
packages/semi-ui/table/_story/table.stories.jsx

@@ -49,6 +49,7 @@ import ExpandRowByClick from './ExpandRowByClick';
 import FixAllColumnsWithoutWidth from './FixAllColumnsWithoutWidth';
 import HugeData from "./HugeData"
 import RowSelectionRenderCell from './RowSelectionRenderCell';
+import RowBg from './RowBg';
 
 export default {
   title: 'Table'
@@ -653,3 +654,5 @@ export const _RowSelectionRenderCell = () => <RowSelectionRenderCell />;
 _RowSelectionRenderCell.story = {
   name: 'RowSelection RenderCell',
 };
+
+export const RowBgDemo = () => <RowBg />;

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

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

+ 16 - 1
packages/semi-webpack/src/componentDependentTree.ts

@@ -1,5 +1,6 @@
 const dependentTree = {
     "Anchor": ["Typography"],
+    "AudioPlayer": ["Button", "Dropdown", "Image", "Tooltip", "Popover", "Icon"],
     "AutoComplete": ["Spin", "Popover", "Input", "Icon"],
     "Avatar": [] as any,
     "AvatarGroup": [] as any,
@@ -8,14 +9,20 @@ const dependentTree = {
     "Banner": ["IconButton", "Typography", "Icon"],
     "Breadcrumb": ["Popover", "Typography", "Icon"],
     "Button": ["Icon"],
+    "ButtonGroup": ["Button"],
+    "SplitButtonGroup": ["Button"],
     "Calendar": ["Popover", "Button", "Icon"],
     "Card": ["Space", "Skeleton", "Typography"],
     "Carousel": ["Icon"],
     "Cascader": ["Input", "Popover", "Tag", "TagInput", "Spin", "Checkbox", "Icon"],
+    "Chat": ["TextArea", "Button", "Upload", "Toast", "Progress", "Image", "Avatar", "Icon", "MarkdownRender", "Typography", "Tooltip", "Divider", "Popconfirm"],
     "Checkbox": ["Icon"],
+    "CodeHighlight": [] as any,
     "CheckboxGroup": ["Icon"],
     "Collapse": ["Collapsible", "Icon"],
     "Collapsible": [] as any,
+    "ColorPicker": ["Popover", "Input", "InputGroup", "InputNumber", "Select", "Button"],
+    "Cropper": [] as any,
     "DatePicker": ["Button", "Input", "IconButton", "Icon", "Typography", "ScrollList", "Icon"],
     "Descriptions": [] as any,
     "Divider": [] as any,
@@ -25,24 +32,30 @@ const dependentTree = {
     "Row": [] as any,
     "Col": [] as any,
     "Highlight": [] as any,
+    "HotKeys": [] as any,
     "IconButton": ["Button", "Spin", "Icon"],
     "Image": ["Skeleton", "Divider", "Tooltip", "Slider", "Spin", "Portal", "Icon"],
     "Input": ["Icon"],
     "InputGroup": ["Form"],
     "TextArea": ["Icon"],
     "InputNumber": ["Input", "Icon"],
+    "JsonViewer": ["Button", "Input", "Icon"],
     "Layout": [] as any,
+    "List": ["Row", "Spin"],
+    "MarkdownRender": ["Typography", "CodeHighlight", "Image", "Table", "Icon"],
     "Modal": ["Button", "Portal", "Typography", "Icon"],
     "Navigation": ["Button", "Tooltip", "Dropdown", "Collapsible", "Icon"],
     "Notification": ["Button", "Icon"],
     "OverflowList": [] as any,
     "Pagination": ["Select", "InputNumber", "Popover", "Icon"],
+    "PinCode": ["Input"],
     "Popconfirm": ["Popover", "Button", "Icon"],
     "Popover": ["Tooltip"],
     "Portal": [] as any,
     "Progress": [] as any,
     "Radio": ["Icon"],
     "Rating": ["Icon", "Tooltip"],
+    "Resizable": ["Icon"],
     "ScrollList": [] as any,
     "Select": ["Tag", "OverflowList", "Space", "Typography", "Spin", "Popover", "Icon"],
     "SideSheet": ["[Portal", "Button", "Icon"],
@@ -58,13 +71,15 @@ const dependentTree = {
     "TagGroup": ["Icon", "Popover", "Avatar"],
     "TagInput": ["Tag", "Input", "Popover", "Icon"],
     "Timeline": [] as any,
+    "TimePicker": ["Input", "Icon", "Popover", "ScrollList"],
     "Toast": ["Button", "Icon"],
     "Tooltip": ["Portal"],
     "Transfer": ["Input", "Checkbox", "Tree", "Button", "Spin", "Icon"],
     "Tree": ["Input", "Checkbox", "Spin", "Collapsible", "Icon"],
     "TreeSelect": ["Tag", "TagInput", "Checkbox", "Popover", "Input", "Icon"],
     "Typography": ["Popover", "Tooltip", "Icon"],
-    "Upload": ["Button", "Progress", "Tooltip", "Spin", "Icon"]
+    "Upload": ["Button", "Progress", "Tooltip", "Spin", "Icon"],
+    "UserGuide": ["Popover", "Button", "Modal"]
 };
   
 export default dependentTree;

+ 4 - 1
packages/semi-webpack/src/semi-web-component-loader.ts

@@ -8,7 +8,9 @@ function getAllComponents(components: string[]) {
     const specialCaseBefore = {
         'AvatarGroup': 'Avatar',
         'CheckboxGroup': 'Checkbox',
-        'TagGroup': 'Tag'
+        'TagGroup': 'Tag',
+        'ButtonGroup': 'Button',
+        'SplitButtonGroup': 'Button',
     };
 
     /*
@@ -69,6 +71,7 @@ function getScssImportPaths(components: string[]) {
         'Portal': `${pathsObj.foundationPath}_portal/portal.scss`,
         "TextArea": `${pathsObj.foundationPath}input/textarea.scss`,
         "IconButton": `${pathsObj.foundationPath}button/iconButton.scss`,
+        "SplitButtonGroup": `${pathsObj.foundationPath}button/SplitButtonGroup.scss`,
     };
     const cssPaths = ["Base", ...components].map(componentName => {
         const lowFirstLetter = componentName.slice(0, 1).toLowerCase() + componentName.slice(1);

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 197 - 197
sitemap.xml


+ 39 - 39
yarn.lock

@@ -1485,22 +1485,22 @@
     "@douyinfe/semi-animation-styled" "2.79.0"
     classnames "^2.2.6"
 
-"@douyinfe/semi-animation-styled@2.79.0":
-  version "2.79.0"
-  resolved "https://registry.npmjs.org/@douyinfe/semi-animation-styled/-/semi-animation-styled-2.79.0.tgz#4c5750c311a1e33a122d1ec61213401e7919bce0"
-  integrity sha512-uCCJjWt6WPbFc8UP6VX77CWb5ZXxvJ6Zs8pEihQPFod7RovpFhTBH1GHWo0wjPOtYr0L4advytMLFRVoqEXKTA==
+"@douyinfe/semi-animation-styled@2.65.0":
+  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/semi-animation@2.79.0":
-  version "2.79.0"
-  resolved "https://registry.npmjs.org/@douyinfe/semi-animation/-/semi-animation-2.79.0.tgz#3e2b205737bbd11af6821a85b233485b1cf647f6"
-  integrity sha512-4CxP5Hyc94BPN/Ld27Ns17kR1BaxX2v4bl8TIKzAkLkEro0alj5dqLN+xSiRmdKHLmqwn4lRUoK/qQ7w8XJZpA==
+"@douyinfe/semi-animation@2.65.0":
+  version "2.65.0"
+  resolved "https://registry.yarnpkg.com/@douyinfe/semi-animation/-/semi-animation-2.65.0.tgz#f544a6b420c3e948c09836019e6b63f1382cd12c"
+  integrity sha512-NXgRJVOcz+cpyu5H5MRzhELlUAJaBgUOSgZAoJM3r8jxV08FJSCNgo3zTZzQ6AwgRg8fmWRsxykGaE/RKtm7Uw==
   dependencies:
     bezier-easing "^2.1.0"
 
-"@douyinfe/semi-foundation@2.79.0":
-  version "2.79.0"
-  resolved "https://registry.npmjs.org/@douyinfe/semi-foundation/-/semi-foundation-2.79.0.tgz#71b45b3d24ce2c25a43edfa8ddc0d07f212471a2"
-  integrity sha512-ms6nRLm3b7rhT3EV1GlRZtxqsP8/Fy02E71Cpt0vY6FcbBvEpaK9D5uJ0DjNlyHychbcl6Bl9MrNfsN7YBrnSg==
+"@douyinfe/semi-foundation@2.65.0":
+  version "2.65.0"
+  resolved "https://registry.yarnpkg.com/@douyinfe/semi-foundation/-/semi-foundation-2.65.0.tgz#20466a9b4baacdde2249930fb709ba035c5a7bea"
+  integrity sha512-uePR02H/orWeg3UUVLbRJXeyokgJCHf1GIuPtjKei5G4zTa6ls+jdJoLExVc6JvHJAmTaq+BOQUe8xOlOLYblg==
   dependencies:
     "@douyinfe/semi-animation" "2.79.0"
     "@douyinfe/semi-json-viewer-core" "2.79.0"
@@ -1517,22 +1517,27 @@
     remark-gfm "^4.0.0"
     scroll-into-view-if-needed "^2.2.24"
 
-"@douyinfe/semi-icons@2.79.0", "@douyinfe/semi-icons@^2.0.0", "@douyinfe/semi-icons@latest":
-  version "2.79.0"
-  resolved "https://registry.npmjs.org/@douyinfe/semi-icons/-/semi-icons-2.79.0.tgz#674465280fab828650f3ab68607fc0bb93060396"
-  integrity sha512-1eryBYnF+ElgLQaFN2qc/e42LyrSax4LaWVmYn9uvdBhu6luZhujU1zysrQ4BykVsxPzHgMyLixrIHA8eesKvA==
+"@douyinfe/semi-icons@2.65.0", "@douyinfe/semi-icons@latest":
+  version "2.65.0"
+  resolved "https://registry.yarnpkg.com/@douyinfe/semi-icons/-/semi-icons-2.65.0.tgz#af39cbd5431ebccedcf7d9ce689646e54bebc432"
+  integrity sha512-FGPOgG0V/tOZ/dRZWwf9CG+IWLMS76H7HKxgIL/bK086BJ5aleuTPWgtSENOU7zsz+BR0lCL/f2NiRoHxarD4A==
   dependencies:
     classnames "^2.2.6"
 
-"@douyinfe/semi-illustrations@2.79.0":
-  version "2.79.0"
-  resolved "https://registry.npmjs.org/@douyinfe/semi-illustrations/-/semi-illustrations-2.79.0.tgz#8a2cf185cdab33c6396c8833bb020592d72f9def"
-  integrity sha512-We5xM7Fn3GvILZYAJEr8c7DlYcA8DNSE1WDgwHvWib7Gu5mjeIYatSJGonqXgNqk2wUwqETi7hMaeGXbKNG08Q==
+"@douyinfe/semi-illustrations@2.65.0":
+  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.79.0"
-  resolved "https://registry.npmjs.org/@douyinfe/semi-json-viewer-core/-/semi-json-viewer-core-2.79.0.tgz#78b3a5c49937e4ef20a4d5fd5fd7bcec9b40c029"
-  integrity sha512-v3tpK1B9P9wbjX33PQ1qClgCQ3yKzb0RYRAOO4UtSKLcJvdYvBcHMM/QIdNBGjLUWg1oT85AQWx026vDF/pSGw==
+"@douyinfe/[email protected]":
+  version "2.78.0"
+  resolved "https://registry.yarnpkg.com/@douyinfe/semi-illustrations/-/semi-illustrations-2.78.0.tgz#af2a6188d36b156bb716005a4ee01419eadf4b06"
+  integrity sha512-690Llbnqsf1OZYuFvHhFWLpJkj6Gk5fjnWjJzUUcgfS5Apn/FBRHH2tkGyn4eU2iBihta1zzC6/G7Orp7qID5A==
+
+"@douyinfe/[email protected]":
+  version "2.78.0"
+  resolved "https://registry.yarnpkg.com/@douyinfe/semi-json-viewer-core/-/semi-json-viewer-core-2.78.0.tgz#046b07c4f51db386478175f661484f5f147fb8b5"
+  integrity sha512-htbOfZp079wxoKaZkGwxd7pFfxU+tfzihGMmTy3b3Dneut3cPQmRVkyCSbJjuYwOkNEyHQ7Cva6KFbNhfeKxqw==
   dependencies:
     jsonc-parser "^3.3.1"
 
@@ -1607,10 +1612,10 @@
   resolved "https://registry.npmjs.org/@douyinfe/semi-theme-default/-/semi-theme-default-2.79.0.tgz#e1f8d97369a90ea018cfd398377702a756c5722d"
   integrity sha512-XIrE/QId5ljKRcvU5cwM/mmCzexgjfe+aXsn9m/ZWHEYFA0Y5dvz5IWkGoHChXO9DjggwDTVjGB5OUkKvYbmdg==
 
-"@douyinfe/semi-ui@^2.0.0", "@douyinfe/semi-ui@latest":
-  version "2.79.0"
-  resolved "https://registry.npmjs.org/@douyinfe/semi-ui/-/semi-ui-2.79.0.tgz#b480d14ea6c2a309bd451b17a1ff1046fbfec044"
-  integrity sha512-0gSljETVbc7SYg16XVftdxKX9DtI4m7iSzhfz1P+GkREjbX2MsZ6bmRW+C7XFm634ZIYlA6GbQzB8Z3Wfs+XfA==
+"@douyinfe/semi-ui@latest":
+  version "2.65.0"
+  resolved "https://registry.yarnpkg.com/@douyinfe/semi-ui/-/semi-ui-2.65.0.tgz#295eb0dd8e9e961adb4ddd7c7bbce3468d1b7430"
+  integrity sha512-6AZhnZCAlMsf6Zg0Z10+JV5KEkuyWTsbzC0/Dlm7T6Xy/z9fOJS0LFgSUs6g5k1L/hs4y/1RM3KUrww3R+CRLw==
   dependencies:
     "@dnd-kit/core" "^6.0.8"
     "@dnd-kit/sortable" "^7.0.2"
@@ -12226,11 +12231,6 @@ eslint-plugin-react@^7.20.6, eslint-plugin-react@^7.24.0:
     string.prototype.matchall "^4.0.12"
     string.prototype.repeat "^1.0.0"
 
-eslint-plugin-semi-design@^2.33.0:
-  version "2.79.0"
-  resolved "https://registry.npmjs.org/eslint-plugin-semi-design/-/eslint-plugin-semi-design-2.79.0.tgz#f6d52f7fcecc652cff2c7941ad968207adfde3e3"
-  integrity sha512-NmL6hj9S8v44d8XsoD52+DAfq4ZMR7LVACSwWgYQi+LqtGyo6af83lEO3/snwSiGYA/CaISG7r99g6Ot3uAR2A==
-
 eslint-rule-composer@^0.3.0:
   version "0.3.0"
   resolved "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz#79320c927b0c5c0d3d3d2b76c8b4a488f25bbaf9"
@@ -25559,7 +25559,7 @@ string-similarity@^1.2.2:
     lodash.map "^4.6.0"
     lodash.maxby "^4.6.0"
 
-"string-width-cjs@npm:string-width@^4.2.0":
+"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3:
   version "4.2.3"
   resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
   integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
@@ -25579,7 +25579,7 @@ string-width@^1.0.1, string-width@^1.0.2:
 
 "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3:
   version "4.2.3"
-  resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
   integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
   dependencies:
     emoji-regex "^8.0.0"
@@ -25735,7 +25735,7 @@ stringify-object@^3.3.0:
     is-obj "^1.0.1"
     is-regexp "^1.0.0"
 
-"strip-ansi-cjs@npm:strip-ansi@^6.0.1":
+"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1:
   version "6.0.1"
   resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
   integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
@@ -25765,7 +25765,7 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0:
 
 strip-ansi@^6.0.0, strip-ansi@^6.0.1:
   version "6.0.1"
-  resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
   integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
   dependencies:
     ansi-regex "^5.0.1"
@@ -28374,7 +28374,7 @@ worker-loader@^3.0.8:
     loader-utils "^2.0.0"
     schema-utils "^3.0.0"
 
-"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0":
+"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0:
   version "7.0.0"
   resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
   integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
@@ -28411,7 +28411,7 @@ wrap-ansi@^6.2.0:
 
 wrap-ansi@^7.0.0:
   version "7.0.0"
-  resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
+  resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
   integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
   dependencies:
     ansi-styles "^4.0.0"

Vissa filer visades inte eftersom för många filer har ändrats