@douyinfe/semi-ui 2.22.2 → 2.23.0-alpha.0

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 (91) hide show
  1. package/dist/css/semi.css +8 -1
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +278 -233
  4. package/dist/umd/semi-ui.js.map +1 -1
  5. package/dist/umd/semi-ui.min.js +1 -1
  6. package/dist/umd/semi-ui.min.js.map +1 -1
  7. package/lib/cjs/anchor/index.d.ts +1 -1
  8. package/lib/cjs/autoComplete/index.d.ts +1 -1
  9. package/lib/cjs/button/Button.d.ts +1 -1
  10. package/lib/cjs/button/buttonGroup.d.ts +1 -1
  11. package/lib/cjs/button/index.d.ts +1 -1
  12. package/lib/cjs/datePicker/datePicker.d.ts +1 -1
  13. package/lib/cjs/form/baseForm.d.ts +5 -5
  14. package/lib/cjs/form/errorMessage.d.ts +2 -1
  15. package/lib/cjs/form/field.d.ts +1 -1
  16. package/lib/cjs/form/hooks/useFormState.d.ts +2 -1
  17. package/lib/cjs/form/interface.d.ts +15 -15
  18. package/lib/cjs/image/image.js +12 -0
  19. package/lib/cjs/image/interface.d.ts +1 -1
  20. package/lib/cjs/image/preview.d.ts +1 -1
  21. package/lib/cjs/image/preview.js +2 -2
  22. package/lib/cjs/image/previewImage.d.ts +1 -1
  23. package/lib/cjs/image/previewImage.js +1 -1
  24. package/lib/cjs/image/previewInner.d.ts +1 -1
  25. package/lib/cjs/image/previewInner.js +13 -5
  26. package/lib/cjs/input/index.d.ts +1 -1
  27. package/lib/cjs/input/inputGroup.d.ts +1 -1
  28. package/lib/cjs/locale/source/tr_TR.js +2 -2
  29. package/lib/cjs/navigation/Item.d.ts +4 -1
  30. package/lib/cjs/navigation/Item.js +18 -5
  31. package/lib/cjs/navigation/index.d.ts +7 -1
  32. package/lib/cjs/navigation/index.js +4 -2
  33. package/lib/cjs/navigation/nav-context.d.ts +1 -0
  34. package/lib/cjs/rating/index.d.ts +1 -1
  35. package/lib/cjs/rating/item.d.ts +1 -1
  36. package/lib/cjs/switch/index.d.ts +1 -1
  37. package/lib/cjs/table/Body/index.js +2 -2
  38. package/lib/cjs/table/Table.d.ts +2 -2
  39. package/lib/cjs/table/Table.js +3 -2
  40. package/lib/cjs/table/index.d.ts +1 -1
  41. package/lib/cjs/tabs/TabPane.js +4 -3
  42. package/lib/cjs/tabs/interface.d.ts +1 -0
  43. package/lib/cjs/tagInput/index.d.ts +2 -2
  44. package/lib/cjs/tagInput/index.js +6 -4
  45. package/lib/cjs/timePicker/TimePicker.d.ts +1 -1
  46. package/lib/cjs/timePicker/index.d.ts +1 -1
  47. package/lib/cjs/transfer/index.d.ts +1 -0
  48. package/lib/cjs/transfer/index.js +7 -1
  49. package/lib/es/anchor/index.d.ts +1 -1
  50. package/lib/es/autoComplete/index.d.ts +1 -1
  51. package/lib/es/button/Button.d.ts +1 -1
  52. package/lib/es/button/buttonGroup.d.ts +1 -1
  53. package/lib/es/button/index.d.ts +1 -1
  54. package/lib/es/datePicker/datePicker.d.ts +1 -1
  55. package/lib/es/form/baseForm.d.ts +5 -5
  56. package/lib/es/form/errorMessage.d.ts +2 -1
  57. package/lib/es/form/field.d.ts +1 -1
  58. package/lib/es/form/hooks/useFormState.d.ts +2 -1
  59. package/lib/es/form/interface.d.ts +15 -15
  60. package/lib/es/image/image.js +11 -0
  61. package/lib/es/image/interface.d.ts +1 -1
  62. package/lib/es/image/preview.d.ts +1 -1
  63. package/lib/es/image/preview.js +2 -2
  64. package/lib/es/image/previewImage.d.ts +1 -1
  65. package/lib/es/image/previewImage.js +1 -1
  66. package/lib/es/image/previewInner.d.ts +1 -1
  67. package/lib/es/image/previewInner.js +13 -5
  68. package/lib/es/input/index.d.ts +1 -1
  69. package/lib/es/input/inputGroup.d.ts +1 -1
  70. package/lib/es/locale/source/tr_TR.js +2 -2
  71. package/lib/es/navigation/Item.d.ts +4 -1
  72. package/lib/es/navigation/Item.js +18 -5
  73. package/lib/es/navigation/index.d.ts +7 -1
  74. package/lib/es/navigation/index.js +4 -2
  75. package/lib/es/navigation/nav-context.d.ts +1 -0
  76. package/lib/es/rating/index.d.ts +1 -1
  77. package/lib/es/rating/item.d.ts +1 -1
  78. package/lib/es/switch/index.d.ts +1 -1
  79. package/lib/es/table/Body/index.js +3 -3
  80. package/lib/es/table/Table.d.ts +2 -2
  81. package/lib/es/table/Table.js +3 -2
  82. package/lib/es/table/index.d.ts +1 -1
  83. package/lib/es/tabs/TabPane.js +4 -3
  84. package/lib/es/tabs/interface.d.ts +1 -0
  85. package/lib/es/tagInput/index.d.ts +2 -2
  86. package/lib/es/tagInput/index.js +6 -4
  87. package/lib/es/timePicker/TimePicker.d.ts +1 -1
  88. package/lib/es/timePicker/index.d.ts +1 -1
  89. package/lib/es/transfer/index.d.ts +1 -0
  90. package/lib/es/transfer/index.js +7 -1
  91. package/package.json +7 -7
@@ -30,7 +30,7 @@ import classnames from 'classnames';
30
30
  import { VariableSizeList as List } from 'react-window';
31
31
  import { arrayAdd, getRecordKey, isExpanded, isSelected, isDisabled, getRecord, genExpandedRowKey, getDefaultVirtualizedRowConfig, isTreeTable } from '@douyinfe/semi-foundation/lib/es/table/utils';
32
32
  import BodyFoundation from '@douyinfe/semi-foundation/lib/es/table/bodyFoundation';
33
- import { strings } from '@douyinfe/semi-foundation/lib/es/table/constants';
33
+ import { strings, numbers } from '@douyinfe/semi-foundation/lib/es/table/constants';
34
34
  import BaseComponent from '../../_base/baseComponent';
35
35
  import { logger } from '../utils';
36
36
  import ColGroup from '../ColGroup';
@@ -247,7 +247,7 @@ class Body extends BaseComponent {
247
247
  width: tableWidth
248
248
  },
249
249
  className: tableCls
250
- }, _size(dataSource) === 0 ? emptySlot : children));
250
+ }, children), _size(dataSource) === 0 && emptySlot);
251
251
  });
252
252
 
253
253
  this.onItemsRendered = props => {
@@ -287,7 +287,7 @@ class Body extends BaseComponent {
287
287
 
288
288
  const listStyle = {
289
289
  width: '100%',
290
- height: (virtualizedData === null || virtualizedData === void 0 ? void 0 : virtualizedData.length) ? y : 0,
290
+ height: (virtualizedData === null || virtualizedData === void 0 ? void 0 : virtualizedData.length) ? y : numbers.DEFAULT_EMPTYSLOT_HEIGHT,
291
291
  overflowX: 'auto',
292
292
  overflowY: 'auto'
293
293
  };
@@ -52,7 +52,7 @@ declare class Table<RecordType extends Record<string, any>> extends BaseComponen
52
52
  components: PropTypes.Requireable<any>;
53
53
  bordered: PropTypes.Requireable<boolean>;
54
54
  loading: PropTypes.Requireable<boolean>;
55
- size: PropTypes.Requireable<"default" | "small" | "middle">;
55
+ size: PropTypes.Requireable<"small" | "default" | "middle">;
56
56
  tableLayout: PropTypes.Requireable<"" | "fixed" | "auto">;
57
57
  columns: PropTypes.Requireable<PropTypes.InferProps<{
58
58
  align: PropTypes.Requireable<"left" | "right" | "center">;
@@ -289,7 +289,7 @@ declare class Table<RecordType extends Record<string, any>> extends BaseComponen
289
289
  showTotal?: boolean;
290
290
  pageSize?: number;
291
291
  pageSizeOpts?: number[];
292
- size?: "default" | "small";
292
+ size?: "small" | "default";
293
293
  currentPage?: number;
294
294
  defaultCurrentPage?: number;
295
295
  onPageChange?: (currentPage: number) => void;
@@ -632,8 +632,9 @@ class Table extends BaseComponent {
632
632
  useFixedHeader,
633
633
  headerRef: this._cacheHeaderRef,
634
634
  bodyRef: this.bodyWrapRef,
635
- includeHeader: !useFixedHeader
636
- })), emptySlot, this.renderFooter(props)];
635
+ includeHeader: !useFixedHeader,
636
+ emptySlot
637
+ })), this.renderFooter(props)];
637
638
  return table;
638
639
  };
639
640
 
@@ -15,7 +15,7 @@ declare class Table<RecordType extends Record<string, any> = Data> extends React
15
15
  components: PropTypes.Requireable<any>;
16
16
  bordered: PropTypes.Requireable<boolean>;
17
17
  loading: PropTypes.Requireable<boolean>;
18
- size: PropTypes.Requireable<"default" | "small" | "middle">;
18
+ size: PropTypes.Requireable<"small" | "default" | "middle">;
19
19
  tableLayout: PropTypes.Requireable<"" | "fixed" | "auto">;
20
20
  columns: PropTypes.Requireable<PropTypes.InferProps<{
21
21
  align: PropTypes.Requireable<"left" | "right" | "center">;
@@ -64,9 +64,10 @@ class TabPane extends PureComponent {
64
64
  className,
65
65
  style,
66
66
  children,
67
- itemKey
67
+ itemKey,
68
+ tabIndex
68
69
  } = _a,
69
- restProps = __rest(_a, ["className", "style", "children", "itemKey"]);
70
+ restProps = __rest(_a, ["className", "style", "children", "itemKey", "tabIndex"]);
70
71
 
71
72
  const active = this.context.activeKey === itemKey;
72
73
  const classNames = cls(className, {
@@ -104,7 +105,7 @@ class TabPane extends PureComponent {
104
105
  className: classNames,
105
106
  style: style,
106
107
  "aria-hidden": active ? 'false' : 'true',
107
- tabIndex: 0
108
+ tabIndex: tabIndex ? tabIndex : 0
108
109
  }, getDataAttr(restProps), {
109
110
  "x-semi-prop": "children"
110
111
  }), /*#__PURE__*/React.createElement(CSSAnimation, {
@@ -61,6 +61,7 @@ export interface TabPaneProps {
61
61
  style?: CSSProperties;
62
62
  tab?: ReactNode;
63
63
  closable?: boolean;
64
+ tabIndex?: number;
64
65
  }
65
66
  export interface TabPaneTransitionProps {
66
67
  [key: string]: any;
@@ -37,7 +37,7 @@ export interface TagInputProps {
37
37
  insetLabel?: React.ReactNode;
38
38
  insetLabelId?: string;
39
39
  prefix?: React.ReactNode;
40
- renderTagItem?: (value: string, index: number) => React.ReactNode;
40
+ renderTagItem?: (value: string, index: number, onClose: () => void) => React.ReactNode;
41
41
  separator?: string | string[] | null;
42
42
  showClear?: boolean;
43
43
  size?: Size;
@@ -89,7 +89,7 @@ declare class TagInput extends BaseComponent<TagInputProps, TagInputState> {
89
89
  onAdd: PropTypes.Requireable<(...args: any[]) => any>;
90
90
  onRemove: PropTypes.Requireable<(...args: any[]) => any>;
91
91
  onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
92
- size: PropTypes.Requireable<"default" | "small" | "large">;
92
+ size: PropTypes.Requireable<"small" | "default" | "large">;
93
93
  validateStatus: PropTypes.Requireable<"default" | "error" | "warning" | "success">;
94
94
  prefix: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
95
95
  suffix: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
@@ -123,20 +123,22 @@ class TagInput extends BaseComponent {
123
123
  return tagsArray.map((value, index) => {
124
124
  const elementKey = showIconHandler ? value : "".concat(index).concat(value);
125
125
 
126
+ const onClose = () => {
127
+ !disabled && this.handleTagClose(index);
128
+ };
129
+
126
130
  if (_isFunction(renderTagItem)) {
127
131
  return showIconHandler ? /*#__PURE__*/React.createElement("div", {
128
132
  className: itemWrapperCls,
129
133
  key: elementKey
130
- }, /*#__PURE__*/React.createElement(DragHandle, null), renderTagItem(value, index)) : renderTagItem(value, index);
134
+ }, /*#__PURE__*/React.createElement(DragHandle, null), renderTagItem(value, index, onClose)) : renderTagItem(value, index, onClose);
131
135
  } else {
132
136
  return /*#__PURE__*/React.createElement(Tag, {
133
137
  className: tagCls,
134
138
  color: "white",
135
139
  size: size === 'small' ? 'small' : 'large',
136
140
  type: "light",
137
- onClose: () => {
138
- !disabled && this.handleTagClose(index);
139
- },
141
+ onClose: onClose,
140
142
  closable: !disabled,
141
143
  key: elementKey,
142
144
  visible: true,
@@ -125,7 +125,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
125
125
  secondStep: PropTypes.Requireable<number>;
126
126
  focusOnOpen: PropTypes.Requireable<boolean>;
127
127
  autoFocus: PropTypes.Requireable<boolean>;
128
- size: PropTypes.Requireable<"default" | "small" | "large">;
128
+ size: PropTypes.Requireable<"small" | "default" | "large">;
129
129
  panels: PropTypes.Requireable<PropTypes.InferProps<{
130
130
  panelHeader: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
131
131
  panelFooter: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
@@ -46,7 +46,7 @@ export default class LocaleTimePicker extends React.PureComponent<LocalePickerPr
46
46
  secondStep: import("prop-types").Requireable<number>;
47
47
  focusOnOpen: import("prop-types").Requireable<boolean>;
48
48
  autoFocus: import("prop-types").Requireable<boolean>;
49
- size: import("prop-types").Requireable<"default" | "small" | "large">;
49
+ size: import("prop-types").Requireable<"small" | "default" | "large">;
50
50
  panels: import("prop-types").Requireable<import("prop-types").InferProps<{
51
51
  panelHeader: import("prop-types").Requireable<NonNullable<import("prop-types").ReactNodeLike>>;
52
52
  panelFooter: import("prop-types").Requireable<NonNullable<import("prop-types").ReactNodeLike>>;
@@ -152,6 +152,7 @@ declare class Transfer extends BaseComponent<TransferProps, TransferState> {
152
152
  static getDerivedStateFromProps(props: TransferProps, state: TransferState): TransferState;
153
153
  get adapter(): TransferAdapter<TransferProps, TransferState>;
154
154
  onInputChange(value: string): void;
155
+ search(value: string): void;
155
156
  onSelectOrRemove(item: ResolvedDataItem): void;
156
157
  onSortEnd(callbackProps: OnSortEndProps): void;
157
158
  renderFilter(locale: Locale['Transfer']): JSX.Element;
@@ -125,7 +125,13 @@ class Transfer extends BaseComponent {
125
125
  }
126
126
 
127
127
  onInputChange(value) {
128
- this.foundation.handleInputChange(value);
128
+ this.foundation.handleInputChange(value, true);
129
+ }
130
+
131
+ search(value) {
132
+ // The search method is used to provide the user with a manually triggered search
133
+ // Since the method is manually called by the user, setting the second parameter to false does not trigger the onSearch callback to notify the user
134
+ this.foundation.handleInputChange(value, false);
129
135
  }
130
136
 
131
137
  onSelectOrRemove(item) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@douyinfe/semi-ui",
3
- "version": "2.22.2",
3
+ "version": "2.23.0-alpha.0",
4
4
  "description": "",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es/index.js",
@@ -18,11 +18,11 @@
18
18
  ],
19
19
  "dependencies": {
20
20
  "@douyinfe/semi-animation": "2.12.0",
21
- "@douyinfe/semi-animation-react": "2.22.2",
22
- "@douyinfe/semi-foundation": "2.22.2",
23
- "@douyinfe/semi-icons": "2.22.2",
21
+ "@douyinfe/semi-animation-react": "2.23.0-alpha.0",
22
+ "@douyinfe/semi-foundation": "2.23.0-alpha.0",
23
+ "@douyinfe/semi-icons": "2.23.0-alpha.0",
24
24
  "@douyinfe/semi-illustrations": "2.15.0",
25
- "@douyinfe/semi-theme-default": "2.22.2",
25
+ "@douyinfe/semi-theme-default": "2.23.0-alpha.0",
26
26
  "async-validator": "^3.5.0",
27
27
  "classnames": "^2.2.6",
28
28
  "copy-text-to-clipboard": "^2.1.1",
@@ -69,13 +69,13 @@
69
69
  ],
70
70
  "author": "",
71
71
  "license": "MIT",
72
- "gitHead": "9d7513d744a1dce3969e680679708edfe26fde6f",
72
+ "gitHead": "d6a31067d6ccc8e56794eadd2c6ba8f6425586c0",
73
73
  "devDependencies": {
74
74
  "@babel/plugin-proposal-decorators": "^7.15.8",
75
75
  "@babel/plugin-transform-runtime": "^7.15.8",
76
76
  "@babel/preset-env": "^7.15.8",
77
77
  "@babel/preset-react": "^7.14.5",
78
- "@douyinfe/semi-scss-compile": "2.22.2",
78
+ "@douyinfe/semi-scss-compile": "2.23.0-alpha.0",
79
79
  "@storybook/addon-knobs": "^6.3.1",
80
80
  "@types/lodash": "^4.14.176",
81
81
  "@types/react": ">=16.0.0",