@douyinfe/semi-foundation 2.22.3 → 2.23.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/cascader/cascader.scss +15 -0
  2. package/cascader/variables.scss +1 -0
  3. package/checkbox/variables.scss +1 -1
  4. package/form/form.scss +3 -4
  5. package/form/interface.ts +8 -4
  6. package/form/rtl.scss +0 -1
  7. package/form/variables.scss +38 -35
  8. package/image/imageFoundation.ts +1 -1
  9. package/image/previewFooterFoundation.ts +2 -2
  10. package/image/previewImageFoundation.ts +0 -1
  11. package/image/previewInnerFoundation.ts +2 -2
  12. package/lib/cjs/cascader/cascader.css +12 -0
  13. package/lib/cjs/cascader/cascader.scss +15 -0
  14. package/lib/cjs/cascader/variables.scss +1 -0
  15. package/lib/cjs/checkbox/variables.scss +1 -1
  16. package/lib/cjs/form/form.css +0 -2
  17. package/lib/cjs/form/form.scss +3 -4
  18. package/lib/cjs/form/interface.d.ts +8 -6
  19. package/lib/cjs/form/rtl.scss +0 -1
  20. package/lib/cjs/form/variables.scss +38 -35
  21. package/lib/cjs/image/imageFoundation.js +1 -1
  22. package/lib/cjs/image/previewFooterFoundation.js +2 -2
  23. package/lib/cjs/image/previewInnerFoundation.d.ts +1 -1
  24. package/lib/cjs/image/previewInnerFoundation.js +1 -1
  25. package/lib/cjs/navigation/navigation.css +6 -0
  26. package/lib/cjs/navigation/navigation.scss +9 -0
  27. package/lib/cjs/table/constants.d.ts +1 -0
  28. package/lib/cjs/table/constants.js +4 -2
  29. package/lib/cjs/table/table.css +2 -1
  30. package/lib/cjs/table/table.scss +2 -1
  31. package/lib/cjs/tabs/tabs.css +40 -0
  32. package/lib/cjs/tabs/tabs.scss +43 -2
  33. package/lib/cjs/tabs/variables.scss +20 -0
  34. package/lib/cjs/tooltip/constants.d.ts +1 -0
  35. package/lib/cjs/tooltip/constants.js +2 -2
  36. package/lib/cjs/tooltip/foundation.d.ts +21 -2
  37. package/lib/cjs/tooltip/foundation.js +352 -77
  38. package/lib/cjs/transfer/foundation.d.ts +1 -1
  39. package/lib/cjs/transfer/foundation.js +3 -4
  40. package/lib/es/cascader/cascader.css +12 -0
  41. package/lib/es/cascader/cascader.scss +15 -0
  42. package/lib/es/cascader/variables.scss +1 -0
  43. package/lib/es/checkbox/variables.scss +1 -1
  44. package/lib/es/form/form.css +0 -2
  45. package/lib/es/form/form.scss +3 -4
  46. package/lib/es/form/interface.d.ts +8 -6
  47. package/lib/es/form/rtl.scss +0 -1
  48. package/lib/es/form/variables.scss +38 -35
  49. package/lib/es/image/imageFoundation.js +1 -1
  50. package/lib/es/image/previewFooterFoundation.js +2 -2
  51. package/lib/es/image/previewInnerFoundation.d.ts +1 -1
  52. package/lib/es/image/previewInnerFoundation.js +1 -1
  53. package/lib/es/navigation/navigation.css +6 -0
  54. package/lib/es/navigation/navigation.scss +9 -0
  55. package/lib/es/table/constants.d.ts +1 -0
  56. package/lib/es/table/constants.js +4 -2
  57. package/lib/es/table/table.css +2 -1
  58. package/lib/es/table/table.scss +2 -1
  59. package/lib/es/tabs/tabs.css +40 -0
  60. package/lib/es/tabs/tabs.scss +43 -2
  61. package/lib/es/tabs/variables.scss +20 -0
  62. package/lib/es/tooltip/constants.d.ts +1 -0
  63. package/lib/es/tooltip/constants.js +2 -2
  64. package/lib/es/tooltip/foundation.d.ts +21 -2
  65. package/lib/es/tooltip/foundation.js +352 -77
  66. package/lib/es/transfer/foundation.d.ts +1 -1
  67. package/lib/es/transfer/foundation.js +3 -4
  68. package/navigation/navigation.scss +9 -0
  69. package/package.json +2 -2
  70. package/table/constants.ts +2 -0
  71. package/table/table.scss +2 -1
  72. package/tabs/tabs.scss +43 -2
  73. package/tabs/variables.scss +20 -0
  74. package/tooltip/constants.ts +1 -0
  75. package/tooltip/foundation.ts +318 -78
  76. package/transfer/foundation.ts +3 -3
@@ -36,7 +36,7 @@ export default class TransferFoundation<P = Record<string, any>, S = Record<stri
36
36
  _generateGroupedData(dataSource: any[]): any[];
37
37
  _generateTreeData(dataSource: any[]): any[];
38
38
  _generatePath(item: BasicResolvedDataItem): any;
39
- handleInputChange(inputVal: string): void;
39
+ handleInputChange(inputVal: string, notify: boolean): void;
40
40
  handleAll(wantAllChecked: boolean): void;
41
41
  handleClear(): void;
42
42
  handleSelectOrRemove(item: BasicResolvedDataItem): void;
@@ -24,7 +24,7 @@ export default class TransferFoundation extends BaseFoundation {
24
24
  return path.map(p => p.label).join(' > ');
25
25
  }
26
26
 
27
- handleInputChange(inputVal) {
27
+ handleInputChange(inputVal, notify) {
28
28
  const {
29
29
  data
30
30
  } = this.getStates();
@@ -38,7 +38,7 @@ export default class TransferFoundation extends BaseFoundation {
38
38
 
39
39
  this._adapter.searchTree(inputVal);
40
40
 
41
- this._adapter.notifySearch(inputVal);
41
+ notify && this._adapter.notifySearch(inputVal);
42
42
 
43
43
  this._adapter.updateInput(inputVal);
44
44
 
@@ -50,8 +50,7 @@ export default class TransferFoundation extends BaseFoundation {
50
50
  const filterFunc = typeof filter === 'function' ? item => filter(inputVal, item) : item => typeof item.label === 'string' && item.label.includes(inputVal);
51
51
  const searchData = data.filter(filterFunc);
52
52
  const searchResult = new Set(searchData.map(item => item.key));
53
-
54
- this._adapter.notifySearch(inputVal);
53
+ notify && this._adapter.notifySearch(inputVal);
55
54
 
56
55
  this._adapter.updateInput(inputVal);
57
56
 
@@ -113,6 +113,15 @@ $module: #{$prefix}-navigation;
113
113
  justify-content: flex-start;
114
114
  }
115
115
 
116
+ // when item has link, add the padding to link instead of item
117
+ &-item-has-link {
118
+ padding: 0;
119
+
120
+ .#{$module}-item-link {
121
+ padding: $spacing-navigation_item-paddingY $spacing-navigation_item-paddingX;
122
+ }
123
+ }
124
+
116
125
  &-item-sub {
117
126
  padding: $spacing-navigation_item_sub-padding;
118
127
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@douyinfe/semi-foundation",
3
- "version": "2.22.3",
3
+ "version": "2.23.0-alpha.2",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "build:lib": "node ./scripts/compileLib.js",
@@ -23,7 +23,7 @@
23
23
  "*.scss",
24
24
  "*.css"
25
25
  ],
26
- "gitHead": "8cff064f240ea2a919c3527ae9b84e66c5b7a419",
26
+ "gitHead": "5671959bf3521da5e2e24b0c7afaf82915f4ce81",
27
27
  "devDependencies": {
28
28
  "@babel/plugin-transform-runtime": "^7.15.8",
29
29
  "@babel/preset-env": "^7.15.8",
@@ -60,6 +60,7 @@ const DEFAULT_CELL_MIDDLE_PADDING_BOTTOM = 12;
60
60
  const DEFAULT_CELL_SMALL_PADDING_TOP = 8;
61
61
  const DEFAULT_CELL_SMALL_PADDING_BOTTOM = 8;
62
62
  const DEFAULT_CELL_LINE_HEIGHT = 20;
63
+ const DEFAULT_EMPTYSLOT_HEIGHT = 52;
63
64
 
64
65
  // normal size
65
66
  const DEFAULT_VIRTUALIZED_ROW_HEIGHT =
@@ -118,6 +119,7 @@ const numbers = {
118
119
  DEFAULT_VIRTUALIZED_SECTION_ROW_SMALL_HEIGHT: DEFAULT_VIRTUALIZED_ROW_SMALL_HEIGHT,
119
120
  DEFAULT_VIRTUALIZED_ROW_SMALL_HEIGHT,
120
121
  DEFAULT_VIRTUALIZED_ROW_SMALL_MIN_HEIGHT,
122
+ DEFAULT_EMPTYSLOT_HEIGHT
121
123
  } as const;
122
124
 
123
125
  export { cssClasses, strings, numbers };
package/table/table.scss CHANGED
@@ -481,7 +481,8 @@ $module: #{$prefix}-table;
481
481
  }
482
482
 
483
483
  &-placeholder {
484
- position: relative;
484
+ position: sticky;
485
+ left: 0px;
485
486
  z-index: 1;
486
487
  padding: #{$spacing-table-paddingY} #{$spacing-table-paddingX};
487
488
  color: $color-table_placeholder-text-default;
package/tabs/tabs.scss CHANGED
@@ -134,14 +134,55 @@ $module: #{$prefix}-tabs;
134
134
  outline-offset: $width-tabs-outline-offset;
135
135
  }
136
136
  }
137
+ & > .#{$prefix}-button-disabled{
138
+ color: $color-tabs_tab-pane_arrow_disabled-text-default;
139
+ background-color: $color-tabs_tab-pane_arrow_disabled-bg-default;
140
+ &:hover{
141
+ color: $color-tabs_tab-pane_arrow_disabled-text-hover;
142
+ background-color: $color-tabs_tab-pane_arrow_disabled-bg-hover;
143
+ }
144
+ }
137
145
  }
138
146
 
139
147
  .#{$module}-bar-arrow-start {
140
148
  margin-right: $spacing-tabs_overflow_icon-marginRight;
149
+ & > .#{$prefix}-button{
150
+ color: $color-tabs_tab-pane_arrow-text-default;
151
+ padding: $spacing-tabs_tab-pane_arrow;
152
+ border: $width-tabs_tab-pane_arrow-border solid $color-tabs_tab-pane_arrow-border-default;
153
+ background-color: $color-tabs_tab-pane_arrow-bg-default;
154
+ &:hover{
155
+ background-color: var(--semi-color-fill-0);
156
+ color: $color-tabs_tab-pane_arrow-text-hover;
157
+ border-color: $color-tabs_tab-pane_arrow-border-hover;
158
+ }
159
+ &:active{
160
+ background-color: var(--semi-color-fill-1);
161
+ color: $color-tabs_tab-pane_arrow-text-active;
162
+ border-color: $color-tabs_tab-pane_arrow-border-active;
163
+ }
164
+ }
165
+
141
166
  }
142
167
 
143
168
  .#{$module}-bar-arrow-end {
144
169
  margin-left: $spacing-tabs_overflow_icon-marginLeft;
170
+ & > .#{$prefix}-button{
171
+ color: $color-tabs_tab-pane_arrow-text-default;
172
+ padding: $spacing-tabs_tab-pane_arrow;
173
+ border: $width-tabs_tab-pane_arrow-border solid $color-tabs_tab-pane_arrow-border-default;
174
+ background-color: $color-tabs_tab-pane_arrow-bg-default;
175
+ &:hover{
176
+ background-color: var(--semi-color-fill-0);
177
+ color: $color-tabs_tab-pane_arrow-text-hover;
178
+ border-color: $color-tabs_tab-pane_arrow-border-hover;
179
+ }
180
+ &:active{
181
+ background-color: var(--semi-color-fill-1);
182
+ color: $color-tabs_tab-pane_arrow-text-active;
183
+ border-color: $color-tabs_tab-pane_arrow-border-active;
184
+ }
185
+ }
145
186
  }
146
187
  }
147
188
 
@@ -160,13 +201,13 @@ $module: #{$prefix}-tabs;
160
201
  &-bar-line {
161
202
  &.#{$module}-bar-top {
162
203
  border-bottom: $width-tabs_bar_line-border solid $color-tabs_tab_line_default-border-default;
163
- transition: color $transition_duration-tabs_tab_line-text $transition_function-tabs_tab_line-text $transition_delay-tabs_tab_line-text;//线条式tabs的 color的transition
204
+ transition: color $transition_duration-tabs_tab_line-text $transition_function-tabs_tab_line-text $transition_delay-tabs_tab_line-text; //线条式tabs的 color的transition
164
205
  transform:scale($transform_scale-tabs_tab_line-item);
165
206
 
166
207
  .#{$module}-tab {
167
208
  padding: $spacing-tabs_bar_line_tab-paddingTop $spacing-tabs_bar_line_tab-paddingRight $spacing-tabs_bar_line_tab-paddingBottom $spacing-tabs_bar_line_tab-paddingLeft;
168
209
  transition: border-bottom-color $transition_duration-tabs_tab_line-border $transition_function-tabs_tab_line-border $transition_delay-tabs_tab_line-border,
169
- color $transition_duration-tabs_tab_line-text $transition_function-tabs_tab_line-text $transition_delay-tabs_tab_line-text;//线条式tabs的border-color 的 transition
210
+ color $transition_duration-tabs_tab_line-text $transition_function-tabs_tab_line-text $transition_delay-tabs_tab_line-text; //线条式tabs的border-color 的 transition
170
211
  &:nth-of-type(1) {
171
212
  padding-left: 0;
172
213
  }
@@ -48,6 +48,23 @@ $color-tabs_tab-outline-focus: var(--semi-color-primary-light-active); // 页签
48
48
 
49
49
  $color-tabs_tab-pane-text-default: var(--semi-color-text-0); // 标签页内容文本颜色 - 默认
50
50
 
51
+ $color-tabs_tab-pane_arrow-text-default: var(--semi-color-primary); // 滚动折叠箭头颜色 - 默认
52
+ $color-tabs_tab-pane_arrow-border-default: transparent; // 滚动折叠箭头边框颜色 - 默认
53
+ $color-tabs_tab-pane_arrow-bg-default:transparent; // 滚动折叠箭头背景色 - 默认
54
+
55
+ $color-tabs_tab-pane_arrow-text-hover: var(--semi-color-primary); // 滚动折叠箭头颜色 - 悬浮
56
+ $color-tabs_tab-pane_arrow-border-hover: transparent; // 滚动折叠箭头边框颜色 - 悬浮
57
+ $color-tabs_tab-pane_arrow-bg-hover: var(--semi-color-fill-0); // 滚动折叠箭头背景色 - 悬浮
58
+
59
+ $color-tabs_tab-pane_arrow-text-active: var(--semi-color-primary); // 滚动折叠箭头颜色 - 按下
60
+ $color-tabs_tab-pane_arrow-border-active: transparent; // 滚动折叠箭头边框颜色 - 按下
61
+ $color-tabs_tab-pane_arrow-bg-active: var(--semi-color-fill-1); // 滚动折叠箭头背景色 - 按下
62
+
63
+ $color-tabs_tab-pane_arrow_disabled-bg-default: transparent;
64
+ $color-tabs_tab-pane_arrow_disabled-bg-hover: transparent;
65
+ $color-tabs_tab-pane_arrow_disabled-text-default: var(--semi-color-disabled-text);
66
+ $color-tabs_tab-pane_arrow_disabled-text-hover: var(--semi-color-disabled-text);
67
+
51
68
  $font-tabs_tab-fontWeight: $font-weight-regular; // 页签文本字重 - 默认
52
69
  $font-tabs_tab_active-fontWeight: $font-weight-bold; // 页签文本字重 - 选中
53
70
 
@@ -60,6 +77,7 @@ $width-tabs_bar_card-border: $border-thickness-control; // 卡片式页签底部
60
77
  $width-tabs-outline: 2px; // 聚焦轮廓宽度
61
78
  $width-tabs-outline-offset: -2px; // 聚焦轮廓偏移宽度
62
79
  $width-tabs_bar_line-outline-offset: -1px; // 线条式页签聚焦轮廓偏移宽度
80
+ $width-tabs_tab-pane_arrow-border:0px; // 滚动折叠箭头边框宽度
63
81
 
64
82
  $height-tabs_bar_extra_large: 50px; // 大尺寸页签高度
65
83
  $font-tabs_bar_extra_large-lineHeight: $height-tabs_bar_extra_large; // 大尺寸页签文字行高
@@ -67,6 +85,7 @@ $font-tabs_bar_extra_large-lineHeight: $height-tabs_bar_extra_large; // 大尺
67
85
  $height-tabs_bar_extra_small: 36px; // 小尺寸页签高度
68
86
  $font-tabs_bar_extra_small-lineHeight: $height-tabs_bar_extra_small; // 小尺寸页签文字行高
69
87
 
88
+ $spacing-tabs_tab-pane_arrow: 8px; //滚动折叠箭头内边距
70
89
  $spacing-tabs_bar_extra-paddingY: 0px; // 附加操作垂直内边距
71
90
  $spacing-tabs_bar_extra-paddingX: 5px; // 附加操作水平内边距
72
91
  $spacing-tabs_tab_icon-marginRight: $spacing-tight; // 附加操作垂直内边距
@@ -119,3 +138,4 @@ $spacing-tabs_bar_button_tab-paddingX: $spacing-base-tight; // 按钮式页签
119
138
  $radius-tabs_tab_card: var(--semi-border-radius-small) var(--semi-border-radius-small) 0 0; // 卡片式页签四向圆角
120
139
  $radius-tabs_tab_card_left: var(--semi-border-radius-small) 0 0 var(--semi-border-radius-small); // 垂直卡片式页签四向圆角
121
140
  $radius-tabs_tab_button: var(--semi-border-radius-small); // 按钮式页签圆角
141
+
@@ -39,6 +39,7 @@ const numbers = {
39
39
  MOUSE_ENTER_DELAY: 50,
40
40
  MOUSE_LEAVE_DELAY: 50,
41
41
  SPACING: 8, // Values are consistent with spacing-tight in scss
42
+ MARGIN: 0,
42
43
  } as const;
43
44
 
44
45
  export { cssClasses, strings, numbers };