@douyinfe/semi-ui 2.35.0 → 2.36.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 (109) hide show
  1. package/dist/css/semi.css +494 -25
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +171 -54
  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/collapse/item.d.ts +2 -0
  13. package/lib/cjs/collapse/item.js +3 -2
  14. package/lib/cjs/datePicker/dateInput.d.ts +1 -1
  15. package/lib/cjs/datePicker/datePicker.d.ts +2 -2
  16. package/lib/cjs/datePicker/monthsGrid.d.ts +1 -1
  17. package/lib/cjs/datePicker/yearAndMonth.d.ts +1 -1
  18. package/lib/cjs/form/baseForm.d.ts +1 -1
  19. package/lib/cjs/form/field.d.ts +1 -1
  20. package/lib/cjs/input/index.d.ts +1 -1
  21. package/lib/cjs/input/inputGroup.d.ts +1 -1
  22. package/lib/cjs/modal/confirm.d.ts +17 -17
  23. package/lib/cjs/navigation/Item.d.ts +4 -0
  24. package/lib/cjs/navigation/Item.js +29 -10
  25. package/lib/cjs/navigation/SubNav.d.ts +5 -0
  26. package/lib/cjs/navigation/SubNav.js +51 -26
  27. package/lib/cjs/rating/index.d.ts +1 -1
  28. package/lib/cjs/rating/item.d.ts +1 -1
  29. package/lib/cjs/skeleton/index.d.ts +1 -0
  30. package/lib/cjs/skeleton/index.js +1 -0
  31. package/lib/cjs/skeleton/item.d.ts +1 -0
  32. package/lib/cjs/skeleton/item.js +6 -1
  33. package/lib/cjs/steps/basicStep.d.ts +3 -0
  34. package/lib/cjs/steps/basicStep.js +8 -2
  35. package/lib/cjs/steps/basicSteps.js +2 -1
  36. package/lib/cjs/steps/fillStep.d.ts +2 -0
  37. package/lib/cjs/steps/fillStep.js +3 -1
  38. package/lib/cjs/steps/fillSteps.js +5 -8
  39. package/lib/cjs/steps/index.d.ts +63 -1
  40. package/lib/cjs/steps/index.js +9 -0
  41. package/lib/cjs/steps/navStep.d.ts +3 -0
  42. package/lib/cjs/steps/navStep.js +6 -2
  43. package/lib/cjs/steps/navSteps.js +2 -1
  44. package/lib/cjs/steps/step.d.ts +4 -1
  45. package/lib/cjs/steps/step.js +1 -0
  46. package/lib/cjs/switch/index.d.ts +1 -1
  47. package/lib/cjs/table/Table.d.ts +2 -2
  48. package/lib/cjs/table/index.d.ts +1 -1
  49. package/lib/cjs/tagInput/index.d.ts +1 -1
  50. package/lib/cjs/timePicker/TimePicker.d.ts +1 -1
  51. package/lib/cjs/timePicker/index.d.ts +1 -1
  52. package/lib/cjs/timeline/context.d.ts +8 -0
  53. package/lib/cjs/timeline/context.js +15 -0
  54. package/lib/cjs/timeline/index.d.ts +2 -1
  55. package/lib/cjs/timeline/index.js +8 -2
  56. package/lib/cjs/timeline/item.d.ts +10 -0
  57. package/lib/cjs/timeline/item.js +42 -3
  58. package/lib/es/anchor/index.d.ts +1 -1
  59. package/lib/es/autoComplete/index.d.ts +1 -1
  60. package/lib/es/button/Button.d.ts +1 -1
  61. package/lib/es/button/buttonGroup.d.ts +1 -1
  62. package/lib/es/button/index.d.ts +1 -1
  63. package/lib/es/collapse/item.d.ts +2 -0
  64. package/lib/es/collapse/item.js +3 -2
  65. package/lib/es/datePicker/dateInput.d.ts +1 -1
  66. package/lib/es/datePicker/datePicker.d.ts +2 -2
  67. package/lib/es/datePicker/monthsGrid.d.ts +1 -1
  68. package/lib/es/datePicker/yearAndMonth.d.ts +1 -1
  69. package/lib/es/form/baseForm.d.ts +1 -1
  70. package/lib/es/form/field.d.ts +1 -1
  71. package/lib/es/input/index.d.ts +1 -1
  72. package/lib/es/input/inputGroup.d.ts +1 -1
  73. package/lib/es/modal/confirm.d.ts +17 -17
  74. package/lib/es/navigation/Item.d.ts +4 -0
  75. package/lib/es/navigation/Item.js +28 -10
  76. package/lib/es/navigation/SubNav.d.ts +5 -0
  77. package/lib/es/navigation/SubNav.js +52 -26
  78. package/lib/es/rating/index.d.ts +1 -1
  79. package/lib/es/rating/item.d.ts +1 -1
  80. package/lib/es/skeleton/index.d.ts +1 -0
  81. package/lib/es/skeleton/index.js +1 -0
  82. package/lib/es/skeleton/item.d.ts +1 -0
  83. package/lib/es/skeleton/item.js +6 -1
  84. package/lib/es/steps/basicStep.d.ts +3 -0
  85. package/lib/es/steps/basicStep.js +8 -2
  86. package/lib/es/steps/basicSteps.js +2 -1
  87. package/lib/es/steps/fillStep.d.ts +2 -0
  88. package/lib/es/steps/fillStep.js +3 -1
  89. package/lib/es/steps/fillSteps.js +6 -8
  90. package/lib/es/steps/index.d.ts +63 -1
  91. package/lib/es/steps/index.js +6 -0
  92. package/lib/es/steps/navStep.d.ts +3 -0
  93. package/lib/es/steps/navStep.js +6 -2
  94. package/lib/es/steps/navSteps.js +2 -1
  95. package/lib/es/steps/step.d.ts +4 -1
  96. package/lib/es/steps/step.js +1 -0
  97. package/lib/es/switch/index.d.ts +1 -1
  98. package/lib/es/table/Table.d.ts +2 -2
  99. package/lib/es/table/index.d.ts +1 -1
  100. package/lib/es/tagInput/index.d.ts +1 -1
  101. package/lib/es/timePicker/TimePicker.d.ts +1 -1
  102. package/lib/es/timePicker/index.d.ts +1 -1
  103. package/lib/es/timeline/context.d.ts +8 -0
  104. package/lib/es/timeline/context.js +3 -0
  105. package/lib/es/timeline/index.d.ts +2 -1
  106. package/lib/es/timeline/index.js +7 -2
  107. package/lib/es/timeline/item.d.ts +10 -0
  108. package/lib/es/timeline/item.js +41 -3
  109. package/package.json +8 -8
@@ -39,7 +39,7 @@ declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
39
39
  static contextType: React.Context<ContextValue>;
40
40
  static Link: typeof Link;
41
41
  static PropTypes: {
42
- size: PropTypes.Requireable<"default" | "small">;
42
+ size: PropTypes.Requireable<"small" | "default">;
43
43
  railTheme: PropTypes.Requireable<"primary" | "tertiary" | "muted">;
44
44
  className: PropTypes.Requireable<string>;
45
45
  style: PropTypes.Requireable<object>;
@@ -125,7 +125,7 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
125
125
  renderSelectedItem: PropTypes.Requireable<(...args: any[]) => any>;
126
126
  suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
127
127
  showClear: PropTypes.Requireable<boolean>;
128
- size: PropTypes.Requireable<"default" | "small" | "large">;
128
+ size: PropTypes.Requireable<"small" | "default" | "large">;
129
129
  style: PropTypes.Requireable<object>;
130
130
  stopPropagation: PropTypes.Requireable<NonNullable<string | boolean>>;
131
131
  maxHeight: PropTypes.Requireable<NonNullable<string | number>>;
@@ -47,7 +47,7 @@ export default class Button extends PureComponent<ButtonProps> {
47
47
  disabled: PropTypes.Requireable<boolean>;
48
48
  prefixCls: PropTypes.Requireable<string>;
49
49
  style: PropTypes.Requireable<object>;
50
- size: PropTypes.Requireable<"default" | "small" | "large">;
50
+ size: PropTypes.Requireable<"small" | "default" | "large">;
51
51
  type: PropTypes.Requireable<"warning" | "primary" | "tertiary" | "secondary" | "danger">;
52
52
  block: PropTypes.Requireable<boolean>;
53
53
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
@@ -18,7 +18,7 @@ export default class ButtonGroup extends BaseComponent<ButtonGroupProps> {
18
18
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
19
19
  disabled: PropTypes.Requireable<boolean>;
20
20
  type: PropTypes.Requireable<string>;
21
- size: PropTypes.Requireable<"default" | "small" | "large">;
21
+ size: PropTypes.Requireable<"small" | "default" | "large">;
22
22
  theme: PropTypes.Requireable<"solid" | "light" | "borderless">;
23
23
  'aria-label': PropTypes.Requireable<string>;
24
24
  };
@@ -22,7 +22,7 @@ declare class Button extends React.PureComponent<ButtonProps> {
22
22
  onMouseEnter: import("prop-types").Requireable<(...args: any[]) => any>;
23
23
  onMouseLeave: import("prop-types").Requireable<(...args: any[]) => any>;
24
24
  disabled: import("prop-types").Requireable<boolean>;
25
- size: import("prop-types").Requireable<"default" | "small" | "large">;
25
+ size: import("prop-types").Requireable<"small" | "default" | "large">;
26
26
  type: import("prop-types").Requireable<"warning" | "primary" | "tertiary" | "secondary" | "danger">;
27
27
  block: import("prop-types").Requireable<boolean>;
28
28
  onClick: import("prop-types").Requireable<(...args: any[]) => any>;
@@ -11,8 +11,10 @@ export interface CollapsePanelProps {
11
11
  style?: CSSProperties;
12
12
  showArrow?: boolean;
13
13
  disabled?: boolean;
14
+ active?: boolean;
14
15
  }
15
16
  export default class CollapsePanel extends PureComponent<CollapsePanelProps> {
17
+ static elementType: string;
16
18
  static contextType: React.Context<CollapseContextType>;
17
19
  headerExpandIconTriggerRef: React.RefObject<HTMLElement>;
18
20
  static propTypes: {
@@ -117,7 +117,7 @@ class CollapsePanel extends _react.PureComponent {
117
117
  activeSet,
118
118
  motion
119
119
  } = this.context;
120
- const active = activeSet.has(itemKey);
120
+ const active = (activeSet === null || activeSet === void 0 ? void 0 : activeSet.has(itemKey)) || this.props.active;
121
121
  const itemCls = (0, _classnames.default)(className, {
122
122
  [`${_constants.cssClasses.PREFIX}-item`]: true
123
123
  });
@@ -169,4 +169,5 @@ CollapsePanel.propTypes = {
169
169
  CollapsePanel.defaultProps = {
170
170
  showArrow: true,
171
171
  disabled: false
172
- };
172
+ };
173
+ CollapsePanel.elementType = 'Collapse.Panel';
@@ -30,7 +30,7 @@ export default class DateInput extends BaseComponent<DateInputProps, {}> {
30
30
  onFocus: PropTypes.Requireable<(...args: any[]) => any>;
31
31
  value: PropTypes.Requireable<any[]>;
32
32
  disabled: PropTypes.Requireable<boolean>;
33
- type: PropTypes.Requireable<"dateTime" | "date" | "month" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
33
+ type: PropTypes.Requireable<"date" | "month" | "dateTime" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
34
34
  showClear: PropTypes.Requireable<boolean>;
35
35
  format: PropTypes.Requireable<string>;
36
36
  inputStyle: PropTypes.Requireable<object>;
@@ -58,8 +58,8 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
58
58
  'aria-labelledby': PropTypes.Requireable<string>;
59
59
  'aria-required': PropTypes.Requireable<boolean>;
60
60
  borderless: PropTypes.Requireable<boolean>;
61
- type: PropTypes.Requireable<"dateTime" | "date" | "month" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
62
- size: PropTypes.Requireable<"default" | "small" | "large">;
61
+ type: PropTypes.Requireable<"date" | "month" | "dateTime" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
62
+ size: PropTypes.Requireable<"small" | "default" | "large">;
63
63
  clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
64
64
  density: PropTypes.Requireable<"default" | "compact">;
65
65
  defaultValue: PropTypes.Requireable<NonNullable<string | number | object>>;
@@ -19,7 +19,7 @@ export interface MonthsGridProps extends MonthsGridFoundationProps, BaseProps {
19
19
  export declare type MonthsGridState = MonthsGridFoundationState;
20
20
  export default class MonthsGrid extends BaseComponent<MonthsGridProps, MonthsGridState> {
21
21
  static propTypes: {
22
- type: PropTypes.Requireable<"dateTime" | "date" | "month" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
22
+ type: PropTypes.Requireable<"date" | "month" | "dateTime" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
23
23
  defaultValue: PropTypes.Requireable<any[]>;
24
24
  defaultPickerValue: PropTypes.Requireable<NonNullable<string | number | object>>;
25
25
  multiple: PropTypes.Requireable<boolean>;
@@ -24,7 +24,7 @@ declare class YearAndMonth extends BaseComponent<YearAndMonthProps, YearAndMonth
24
24
  presetPosition: PropTypes.Requireable<"left" | "top" | "right" | "bottom">;
25
25
  renderQuickControls: PropTypes.Requireable<PropTypes.ReactNodeLike>;
26
26
  renderDateInput: PropTypes.Requireable<PropTypes.ReactNodeLike>;
27
- type: PropTypes.Requireable<"dateTime" | "date" | "month" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
27
+ type: PropTypes.Requireable<"date" | "month" | "dateTime" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
28
28
  };
29
29
  static defaultProps: {
30
30
  disabledDate: {
@@ -138,7 +138,7 @@ declare class Form<Values extends Record<string, any> = any> extends BaseCompone
138
138
  preventScroll?: boolean;
139
139
  showRestTagsPopover?: boolean;
140
140
  restTagsPopoverProps?: import("../popover").PopoverProps;
141
- } & Pick<import("../tooltip").TooltipProps, "stopPropagation" | "motion" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & React.RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
141
+ } & Pick<import("../tooltip").TooltipProps, "motion" | "stopPropagation" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & React.RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
142
142
  static Checkbox: React.ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../checkbox").CheckboxProps & import("./interface").RCIncludeType>;
143
143
  static CheckboxGroup: React.ComponentType<import("utility-types").Subtract<import("../checkbox").CheckboxGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & React.RefAttributes<any>>;
144
144
  static Radio: React.ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../radio").RadioProps & import("./interface").RCIncludeType>;
@@ -86,7 +86,7 @@ declare const FormSelect: import("react").ComponentType<import("utility-types").
86
86
  preventScroll?: boolean;
87
87
  showRestTagsPopover?: boolean;
88
88
  restTagsPopoverProps?: import("../popover").PopoverProps;
89
- } & Pick<import("../tooltip").TooltipProps, "stopPropagation" | "motion" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & import("react").RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
89
+ } & Pick<import("../tooltip").TooltipProps, "motion" | "stopPropagation" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & import("react").RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
90
90
  declare const FormCheckboxGroup: import("react").ComponentType<import("utility-types").Subtract<import("../checkbox/checkboxGroup").CheckboxGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & import("react").RefAttributes<any>>;
91
91
  declare const FormCheckbox: import("react").ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../checkbox/checkbox").CheckboxProps & import("./interface").RCIncludeType>;
92
92
  declare const FormRadioGroup: import("react").ComponentType<import("utility-types").Subtract<import("../radio/radioGroup").RadioGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & import("react").RefAttributes<any>>;
@@ -84,7 +84,7 @@ declare class Input extends BaseComponent<InputProps, InputState> {
84
84
  showClear: PropTypes.Requireable<boolean>;
85
85
  hideSuffix: PropTypes.Requireable<boolean>;
86
86
  placeholder: PropTypes.Requireable<any>;
87
- size: PropTypes.Requireable<"default" | "small" | "large">;
87
+ size: PropTypes.Requireable<"small" | "default" | "large">;
88
88
  className: PropTypes.Requireable<string>;
89
89
  style: PropTypes.Requireable<object>;
90
90
  validateStatus: PropTypes.Requireable<"default" | "error" | "warning" | "success">;
@@ -21,7 +21,7 @@ export default class inputGroup extends BaseComponent<InputGroupProps, InputGrou
21
21
  static propTypes: {
22
22
  className: PropTypes.Requireable<string>;
23
23
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
24
- size: PropTypes.Requireable<"default" | "small" | "large">;
24
+ size: PropTypes.Requireable<"small" | "default" | "large">;
25
25
  style: PropTypes.Requireable<object>;
26
26
  onBlur: PropTypes.Requireable<(...args: any[]) => any>;
27
27
  onFocus: PropTypes.Requireable<(...args: any[]) => any>;
@@ -140,12 +140,12 @@ export declare function withWarning(props: ModalReactProps): {
140
140
  type: "warning";
141
141
  };
142
142
  export declare function withError(props: ModalReactProps): {
143
- title?: React.ReactNode;
144
143
  children?: React.ReactNode;
144
+ motion?: boolean;
145
+ title?: React.ReactNode;
145
146
  size?: import("@douyinfe/semi-foundation/lib/cjs/modal/modalFoundation").Size;
146
147
  style?: React.CSSProperties;
147
148
  className?: string;
148
- motion?: boolean;
149
149
  getPopupContainer?: () => HTMLElement;
150
150
  footer?: React.ReactNode;
151
151
  header?: React.ReactNode;
@@ -201,34 +201,24 @@ export declare function withError(props: ModalReactProps): {
201
201
  onMouseEnter?: React.MouseEventHandler<HTMLButtonElement>;
202
202
  onMouseLeave?: React.MouseEventHandler<HTMLButtonElement>;
203
203
  'aria-label'?: string;
204
+ onAnimationStart?: React.AnimationEventHandler<HTMLButtonElement>;
205
+ onAnimationEnd?: React.AnimationEventHandler<HTMLButtonElement>;
204
206
  title?: string;
205
207
  name?: string;
206
208
  value?: string | number | readonly string[];
207
- onAnimationStart?: React.AnimationEventHandler<HTMLButtonElement>;
208
- onAnimationEnd?: React.AnimationEventHandler<HTMLButtonElement>;
209
209
  form?: string;
210
210
  slot?: string;
211
211
  hidden?: boolean;
212
212
  color?: string;
213
- onChange?: React.FormEventHandler<HTMLButtonElement>;
214
- defaultChecked?: boolean;
215
213
  defaultValue?: string | number | readonly string[];
216
- suppressContentEditableWarning?: boolean;
217
- suppressHydrationWarning?: boolean;
218
214
  accessKey?: string;
219
- autoFocus?: boolean;
220
- formAction?: string;
221
- formEncType?: string;
222
- formMethod?: string;
223
- formNoValidate?: boolean;
224
- formTarget?: string;
225
215
  dir?: string;
226
216
  draggable?: boolean | "false" | "true";
227
217
  lang?: string;
228
- translate?: "no" | "yes";
218
+ translate?: "yes" | "no";
229
219
  prefix?: string;
230
220
  contentEditable?: "inherit" | (boolean | "false" | "true");
231
- inputMode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal";
221
+ inputMode?: "none" | "search" | "text" | "tel" | "url" | "email" | "numeric" | "decimal";
232
222
  tabIndex?: number;
233
223
  role?: React.AriaRole;
234
224
  onMouseOut?: React.MouseEventHandler<HTMLButtonElement>;
@@ -240,6 +230,9 @@ export declare function withError(props: ModalReactProps): {
240
230
  'aria-haspopup'?: boolean | "dialog" | "menu" | "listbox" | "grid" | "false" | "true" | "tree";
241
231
  'aria-controls'?: string;
242
232
  'aria-describedby'?: string;
233
+ defaultChecked?: boolean;
234
+ suppressContentEditableWarning?: boolean;
235
+ suppressHydrationWarning?: boolean;
243
236
  contextMenu?: string;
244
237
  placeholder?: string;
245
238
  spellCheck?: boolean | "false" | "true";
@@ -274,7 +267,7 @@ export declare function withError(props: ModalReactProps): {
274
267
  'aria-current'?: boolean | "time" | "page" | "false" | "true" | "location" | "step" | "date";
275
268
  'aria-details'?: string;
276
269
  'aria-disabled'?: boolean | "false" | "true";
277
- 'aria-dropeffect'?: "link" | "none" | "copy" | "move" | "execute" | "popup";
270
+ 'aria-dropeffect'?: "none" | "link" | "copy" | "move" | "execute" | "popup";
278
271
  'aria-errormessage'?: string;
279
272
  'aria-flowto'?: string;
280
273
  'aria-grabbed'?: boolean | "false" | "true";
@@ -323,6 +316,7 @@ export declare function withError(props: ModalReactProps): {
323
316
  onCompositionUpdateCapture?: React.CompositionEventHandler<HTMLButtonElement>;
324
317
  onFocusCapture?: React.FocusEventHandler<HTMLButtonElement>;
325
318
  onBlurCapture?: React.FocusEventHandler<HTMLButtonElement>;
319
+ onChange?: React.FormEventHandler<HTMLButtonElement>;
326
320
  onChangeCapture?: React.FormEventHandler<HTMLButtonElement>;
327
321
  onBeforeInput?: React.FormEventHandler<HTMLButtonElement>;
328
322
  onBeforeInputCapture?: React.FormEventHandler<HTMLButtonElement>;
@@ -457,6 +451,12 @@ export declare function withError(props: ModalReactProps): {
457
451
  onAnimationIterationCapture?: React.AnimationEventHandler<HTMLButtonElement>;
458
452
  onTransitionEnd?: React.TransitionEventHandler<HTMLButtonElement>;
459
453
  onTransitionEndCapture?: React.TransitionEventHandler<HTMLButtonElement>;
454
+ autoFocus?: boolean;
455
+ formAction?: string;
456
+ formEncType?: string;
457
+ formMethod?: string;
458
+ formNoValidate?: boolean;
459
+ formTarget?: string;
460
460
  };
461
461
  };
462
462
  export declare function withConfirm(props: ModalReactProps): {
@@ -19,6 +19,9 @@ export interface NavItemProps extends ItemProps, BaseProps {
19
19
  onClick?(clickItems: SelectedData): void;
20
20
  onMouseEnter?: React.MouseEventHandler<HTMLLIElement>;
21
21
  onMouseLeave?: React.MouseEventHandler<HTMLLIElement>;
22
+ selected?: boolean;
23
+ mode?: string;
24
+ isInSubNav?: boolean;
22
25
  }
23
26
  export interface SelectedData extends SelectedItemProps<NavItemProps> {
24
27
  text?: React.ReactNode;
@@ -28,6 +31,7 @@ export interface NavItemState {
28
31
  }
29
32
  export default class NavItem extends BaseComponent<NavItemProps, NavItemState> {
30
33
  static contextType: React.Context<NavContextType>;
34
+ static elementType: string;
31
35
  static propTypes: {
32
36
  text: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
33
37
  itemKey: PropTypes.Requireable<NonNullable<string | number>>;
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
+ var _isUndefined2 = _interopRequireDefault(require("lodash/isUndefined"));
9
+
8
10
  var _times2 = _interopRequireDefault(require("lodash/times"));
9
11
 
10
12
  var _noop2 = _interopRequireDefault(require("lodash/noop"));
@@ -121,21 +123,28 @@ class NavItem extends _baseComponent.default {
121
123
  notifyMouseLeave: function () {
122
124
  return _this.props.onMouseLeave(...arguments);
123
125
  },
124
- getIsCollapsed: () => this.props.isCollapsed || Boolean(this.context && this.context.isCollapsed) || false,
125
- getSelected: () => Boolean(this.context && this.context.selectedKeys && this.context.selectedKeys.includes(this.props.itemKey)),
126
- getIsOpen: () => Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(this.props.itemKey))
126
+ getIsCollapsed: () => this.props.isCollapsed || Boolean(this.context && this.context.isCollapsed),
127
+ getSelected: () => this.props.selected || Boolean(this.context && this.context.selectedKeys && this.context.selectedKeys.includes(this.props.itemKey)),
128
+ getIsOpen: () => Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(this.props.itemKey)),
129
+ getIsInSubNav: () => this.props.isInSubNav || Boolean(this.context && this.context.isInSubNav),
130
+ getMode: () => {
131
+ var _a, _b;
132
+
133
+ return (_a = this.props.mode) !== null && _a !== void 0 ? _a : (_b = this.context) === null || _b === void 0 ? void 0 : _b.mode;
134
+ }
127
135
  });
128
136
  }
129
137
 
130
138
  renderIcon(icon, pos) {
131
139
  let isToggleIcon = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
132
140
  let key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
141
+ const mode = this.adapter.getMode();
133
142
 
134
143
  if (this.props.isSubNav) {
135
144
  return null;
136
145
  }
137
146
 
138
- if (!icon && this.context.mode === _constants.strings.MODE_HORIZONTAL) {
147
+ if (!icon && mode === _constants.strings.MODE_HORIZONTAL) {
139
148
  return null;
140
149
  }
141
150
 
@@ -158,6 +167,8 @@ class NavItem extends _baseComponent.default {
158
167
  }
159
168
 
160
169
  render() {
170
+ var _a;
171
+
161
172
  const {
162
173
  text,
163
174
  children,
@@ -173,16 +184,17 @@ class NavItem extends _baseComponent.default {
173
184
  linkOptions,
174
185
  disabled,
175
186
  level = 0,
176
- tabIndex
187
+ tabIndex,
188
+ mode: modeInProps
177
189
  } = this.props;
178
190
  const {
179
- mode,
180
- isInSubNav,
181
191
  prefixCls,
182
192
  limitIndent
183
193
  } = this.context;
184
194
  const isCollapsed = this.adapter.getIsCollapsed();
185
195
  const selected = this.adapter.getSelected();
196
+ const isInSubNav = this.adapter.getIsInSubNav();
197
+ const mode = this.adapter.getMode();
186
198
  let itemChildren = null;
187
199
 
188
200
  if (!(0, _isNullOrUndefined.default)(children)) {
@@ -230,14 +242,20 @@ class NavItem extends _baseComponent.default {
230
242
  onKeyDown: this.handleKeyPress
231
243
  }, itemChildren);
232
244
  } else {
233
- // Items are divided into normal and sub-wrap
245
+ // isFirstLayer 用于决定 semi-navigation-first-layers(仅在 c2中使用) 是否生效
246
+ // 当 this.props.isInSubNav 存在是,则由 this.props.isInSubNav 决定
247
+ // 否则由 this.context?.mode 决定,因为第一层节点无context
248
+ const isFirstLayer = !(0, _isUndefined2.default)(this.props.isInSubNav) ? !this.props.isInSubNav : (0, _isUndefined2.default)((_a = this.context) === null || _a === void 0 ? void 0 : _a.mode); // Items are divided into normal and sub-wrap
249
+
234
250
  const popoverItemCls = (0, _classnames.default)(`${className || `${clsPrefix}-normal`}`, {
235
251
  [clsPrefix]: true,
236
252
  [`${clsPrefix}-sub`]: isSubNav,
237
253
  [`${clsPrefix}-selected`]: selected && !isSubNav,
238
254
  [`${clsPrefix}-collapsed`]: isCollapsed,
239
255
  [`${clsPrefix}-disabled`]: disabled,
240
- [`${clsPrefix}-has-link`]: typeof link === 'string'
256
+ [`${clsPrefix}-has-link`]: typeof link === 'string',
257
+ [`${_constants.cssClasses.PREFIX}-first-layer`]: isFirstLayer,
258
+ [`${clsPrefix}-horizontal`]: modeInProps === _constants.strings.MODE_HORIZONTAL
241
259
  });
242
260
  const ariaProps = {
243
261
  'aria-disabled': disabled
@@ -317,4 +335,5 @@ NavItem.defaultProps = {
317
335
  onMouseLeave: _noop2.default,
318
336
  disabled: false,
319
337
  tabIndex: 0
320
- };
338
+ };
339
+ NavItem.elementType = 'Nav.Item';
@@ -22,11 +22,14 @@ export interface SubNavProps extends BaseProps {
22
22
  onMouseLeave?: React.MouseEventHandler<HTMLLIElement>;
23
23
  text?: React.ReactNode;
24
24
  toggleIcon?: ToggleIcon;
25
+ active?: boolean;
26
+ mode?: string;
25
27
  }
26
28
  export interface SubNavState {
27
29
  isHovered: boolean;
28
30
  }
29
31
  export default class SubNav extends BaseComponent<SubNavProps, SubNavState> {
32
+ static elementType: string;
30
33
  static contextType: React.Context<NavContextType>;
31
34
  static propTypes: {
32
35
  /**
@@ -70,6 +73,7 @@ export default class SubNav extends BaseComponent<SubNavProps, SubNavState> {
70
73
  onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
71
74
  disabled: PropTypes.Requireable<boolean>;
72
75
  level: PropTypes.Requireable<number>;
76
+ active: PropTypes.Requireable<boolean>;
73
77
  };
74
78
  static defaultProps: {
75
79
  level: number;
@@ -82,6 +86,7 @@ export default class SubNav extends BaseComponent<SubNavProps, SubNavState> {
82
86
  closed: JSX.Element;
83
87
  };
84
88
  disabled: boolean;
89
+ active: boolean;
85
90
  };
86
91
  titleRef: React.RefObject<HTMLDivElement>;
87
92
  itemRef: React.RefObject<HTMLLIElement>;
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
+ var _isUndefined2 = _interopRequireDefault(require("lodash/isUndefined"));
9
+
8
10
  var _get2 = _interopRequireDefault(require("lodash/get"));
9
11
 
10
12
  var _times2 = _interopRequireDefault(require("lodash/times"));
@@ -129,16 +131,29 @@ class SubNav extends _baseComponent.default {
129
131
 
130
132
  return _this._invokeContextFunc('onClick', ...args);
131
133
  },
132
- getIsSelected: itemKey => Boolean(!(0, _isNullOrUndefined.default)(itemKey) && (0, _get2.default)(this.context, 'selectedKeys', []).includes(String(itemKey))),
133
- getIsOpen: () => Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(String(this.props.itemKey)))
134
+ getIsSelected: itemKey => this.props.active || Boolean(!(0, _isNullOrUndefined.default)(itemKey) && (0, _get2.default)(this.context, 'selectedKeys', []).includes(String(itemKey))),
135
+ getIsOpen: () => this.props.isOpen || Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(String(this.props.itemKey))),
136
+ getIsCollapsed: () => {
137
+ var _a;
138
+
139
+ return this.props.isCollapsed || Boolean((_a = this.context) === null || _a === void 0 ? void 0 : _a.isCollapsed);
140
+ },
141
+ getMode: () => {
142
+ var _a, _b;
143
+
144
+ return (_a = this.props.mode) !== null && _a !== void 0 ? _a : (_b = this.context) === null || _b === void 0 ? void 0 : _b.mode;
145
+ }
134
146
  });
135
147
  }
136
148
 
137
149
  renderIcon(icon, pos, withTransition) {
138
150
  let isToggleIcon = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
139
151
  let key = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
152
+
153
+ var _a;
154
+
140
155
  const {
141
- prefixCls
156
+ prefixCls = _constants.cssClasses.PREFIX
142
157
  } = this.context;
143
158
  let iconSize = 'large';
144
159
 
@@ -146,14 +161,15 @@ class SubNav extends _baseComponent.default {
146
161
  iconSize = 'default';
147
162
  }
148
163
 
164
+ const isOpen = this.adapter.getIsOpen();
149
165
  const className = (0, _classnames.default)(`${prefixCls}-item-icon`, {
150
- [`${prefixCls}-item-icon-toggle-${this.context.toggleIconPosition}`]: isToggleIcon,
151
- [`${prefixCls}-item-icon-info`]: !isToggleIcon
166
+ [`${prefixCls}-item-icon-toggle-${(_a = this.context.toggleIconPosition) !== null && _a !== void 0 ? _a : 'right'}`]: isToggleIcon,
167
+ [`${prefixCls}-item-icon-info`]: !isToggleIcon,
168
+ [`${prefixCls}-icon-rotate-${isOpen ? "180" : "0"}-no-transition`]: !withTransition && isToggleIcon
152
169
  });
153
- const isOpen = this.adapter.getIsOpen();
154
170
  const iconElem = /*#__PURE__*/_react.default.isValidElement(icon) ? withTransition ? /*#__PURE__*/_react.default.createElement(_cssAnimation.default, {
155
171
  animationState: isOpen ? "enter" : "leave",
156
- startClassName: `${_constants.cssClasses.PREFIX}-icon-rotate-${isOpen ? "180" : "0"}`
172
+ startClassName: `${prefixCls}-icon-rotate-${isOpen ? "180" : "0"}`
157
173
  }, _ref => {
158
174
  let {
159
175
  animationClassName
@@ -183,17 +199,20 @@ class SubNav extends _baseComponent.default {
183
199
  level
184
200
  } = this.props;
185
201
  const {
186
- mode,
187
202
  isInSubNav,
188
- isCollapsed,
189
- prefixCls,
203
+ prefixCls = _constants.cssClasses.PREFIX,
190
204
  subNavMotion,
191
205
  limitIndent
192
206
  } = this.context;
207
+ const isFirstLayer = (0, _isUndefined2.default)(this.context.mode);
208
+ const mode = this.adapter.getMode();
193
209
  const isOpen = this.adapter.getIsOpen();
210
+ const isCollapsed = this.adapter.getIsCollapsed();
194
211
  const titleCls = (0, _classnames.default)(`${prefixCls}-sub-title`, {
195
212
  [`${prefixCls}-sub-title-selected`]: this.adapter.getIsSelected(itemKey),
196
- [`${prefixCls}-sub-title-disabled`]: disabled
213
+ [`${prefixCls}-sub-title-disabled`]: disabled,
214
+ [`${prefixCls}-first-layer`]: isFirstLayer,
215
+ [`${prefixCls}-sub-title-horizontal`]: mode === _constants.strings.MODE_HORIZONTAL
197
216
  });
198
217
  let withTransition = false;
199
218
  let toggleIconType = '';
@@ -234,6 +253,7 @@ class SubNav extends _baseComponent.default {
234
253
  }
235
254
 
236
255
  const isIconChevronRightShow = !isCollapsed && isInSubNav && mode === _constants.strings.MODE_HORIZONTAL || isCollapsed && isInSubNav;
256
+ const toggleIconPositionLeft = this.context.toggleIconPosition === _constants.strings.TOGGLE_ICON_LEFT;
237
257
 
238
258
  const titleDiv = /*#__PURE__*/_react.default.createElement("div", {
239
259
  role: "menuitem",
@@ -246,9 +266,9 @@ class SubNav extends _baseComponent.default {
246
266
  "aria-expanded": isOpen ? 'true' : 'false'
247
267
  }, /*#__PURE__*/_react.default.createElement("div", {
248
268
  className: `${prefixCls}-item-inner`
249
- }, placeholderIcons, this.context.toggleIconPosition === _constants.strings.TOGGLE_ICON_LEFT && this.renderIcon(toggleIconType, _constants.strings.ICON_POS_RIGHT, withTransition, true, 'key-toggle-position-left'), icon || indent || isInSubNav && mode !== _constants.strings.MODE_HORIZONTAL ? this.renderIcon(icon, _constants.strings.ICON_POS_LEFT, false, false, 'key-inSubNav-position-left') : null, /*#__PURE__*/_react.default.createElement("span", {
269
+ }, placeholderIcons, toggleIconPositionLeft && this.renderIcon(toggleIconType, _constants.strings.ICON_POS_RIGHT, withTransition, true, 'key-toggle-position-left'), icon || indent || isInSubNav && mode !== _constants.strings.MODE_HORIZONTAL ? this.renderIcon(icon, _constants.strings.ICON_POS_LEFT, false, false, 'key-inSubNav-position-left') : null, /*#__PURE__*/_react.default.createElement("span", {
250
270
  className: `${prefixCls}-item-text`
251
- }, text), this.context.toggleIconPosition === _constants.strings.TOGGLE_ICON_RIGHT && this.renderIcon(toggleIconType, _constants.strings.ICON_POS_RIGHT, withTransition, true, 'key-toggle-position-right')));
271
+ }, text), !toggleIconPositionLeft && this.renderIcon(toggleIconType, _constants.strings.ICON_POS_RIGHT, withTransition, true, 'key-toggle-position-right')));
252
272
 
253
273
  return titleDiv;
254
274
  }
@@ -259,12 +279,12 @@ class SubNav extends _baseComponent.default {
259
279
  maxHeight
260
280
  } = this.props;
261
281
  const {
262
- isCollapsed,
263
- mode,
264
282
  subNavMotion,
265
- prefixCls
283
+ prefixCls = _constants.cssClasses.PREFIX
266
284
  } = this.context;
285
+ const isCollapsed = this.adapter.getIsCollapsed();
267
286
  const isOpen = this.adapter.getIsOpen();
287
+ const mode = this.adapter.getMode();
268
288
  const isHorizontal = mode === _constants.strings.MODE_HORIZONTAL;
269
289
  const subNavCls = (0, _classnames.default)(`${prefixCls}-sub`, {
270
290
  [`${prefixCls}-sub-open`]: isOpen,
@@ -295,14 +315,14 @@ class SubNav extends _baseComponent.default {
295
315
  disabled
296
316
  } = this.props;
297
317
  const {
298
- mode,
299
318
  isInSubNav,
300
- isCollapsed,
301
319
  subNavCloseDelay,
302
320
  subNavOpenDelay,
303
- prefixCls,
321
+ prefixCls = _constants.cssClasses.PREFIX,
304
322
  getPopupContainer
305
323
  } = this.context;
324
+ const isCollapsed = this.adapter.getIsCollapsed();
325
+ const mode = this.adapter.getMode();
306
326
  const isOpen = this.adapter.getIsOpen();
307
327
  const openKeysIsControlled = this.adapter.getOpenKeysIsControlled();
308
328
  const subNavCls = (0, _classnames.default)({
@@ -347,10 +367,10 @@ class SubNav extends _baseComponent.default {
347
367
  text
348
368
  } = this.props;
349
369
  const {
350
- mode,
351
- isCollapsed,
352
- prefixCls
370
+ prefixCls = _constants.cssClasses.PREFIX
353
371
  } = this.context;
372
+ const mode = this.adapter.getMode();
373
+ const isCollapsed = this.adapter.getIsCollapsed();
354
374
  let titleDiv = this.renderTitleDiv();
355
375
  const subUl = this.renderSubUl(); // When mode=horizontal, it is displayed in Dropdown
356
376
 
@@ -368,9 +388,11 @@ class SubNav extends _baseComponent.default {
368
388
  onMouseEnter: onMouseEnter,
369
389
  onMouseLeave: onMouseLeave,
370
390
  disabled: disabled,
371
- text: text
391
+ text: text,
392
+ mode: mode
372
393
  }, /*#__PURE__*/_react.default.createElement(_navContext.default.Provider, {
373
394
  value: Object.assign(Object.assign({}, this.context), {
395
+ mode: mode,
374
396
  isInSubNav: true
375
397
  })
376
398
  }, titleDiv, subUl));
@@ -433,7 +455,8 @@ SubNav.propTypes = {
433
455
  onMouseLeave: _propTypes.default.func,
434
456
  // Is it disabled
435
457
  disabled: _propTypes.default.bool,
436
- level: _propTypes.default.number
458
+ level: _propTypes.default.number,
459
+ active: _propTypes.default.bool
437
460
  };
438
461
  SubNav.defaultProps = {
439
462
  level: 0,
@@ -449,5 +472,7 @@ SubNav.defaultProps = {
449
472
  "aria-hidden": true
450
473
  })
451
474
  },
452
- disabled: false
453
- };
475
+ disabled: false,
476
+ active: false
477
+ };
478
+ SubNav.elementType = 'Nav.Sub';
@@ -69,7 +69,7 @@ export default class Rating extends BaseComponent<RatingProps, RatingState> {
69
69
  onBlur: PropTypes.Requireable<(...args: any[]) => any>;
70
70
  onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
71
71
  autoFocus: PropTypes.Requireable<boolean>;
72
- size: PropTypes.Requireable<NonNullable<number | "default" | "small">>;
72
+ size: PropTypes.Requireable<NonNullable<number | "small" | "default">>;
73
73
  tooltips: PropTypes.Requireable<string[]>;
74
74
  id: PropTypes.Requireable<string>;
75
75
  preventScroll: PropTypes.Requireable<boolean>;
@@ -40,7 +40,7 @@ export default class Item extends BaseComponent<RatingItemProps, RatingItemState
40
40
  disabled: PropTypes.Requireable<boolean>;
41
41
  count: PropTypes.Requireable<number>;
42
42
  ariaLabelPrefix: PropTypes.Requireable<string>;
43
- size: PropTypes.Requireable<NonNullable<number | "default" | "small">>;
43
+ size: PropTypes.Requireable<NonNullable<number | "small" | "default">>;
44
44
  'aria-describedby': PropTypes.Requireable<string>;
45
45
  onFocus: PropTypes.Requireable<(...args: any[]) => any>;
46
46
  onBlur: PropTypes.Requireable<(...args: any[]) => any>;
@@ -12,6 +12,7 @@ export interface SkeletonProps {
12
12
  style?: CSSProperties;
13
13
  }
14
14
  declare class Skeleton extends PureComponent<SkeletonProps> {
15
+ static elementType: string;
15
16
  static Avatar: React.FC<import("./item").AvatarProps>;
16
17
  static Title: React.FC<import("./item").BasicProps>;
17
18
  static Button: React.FC<import("./item").BasicProps>;
@@ -86,5 +86,6 @@ Skeleton.propTypes = {
86
86
  loading: _propTypes.default.bool,
87
87
  children: _propTypes.default.node
88
88
  };
89
+ Skeleton.elementType = 'Skeleton';
89
90
  var _default = Skeleton;
90
91
  exports.default = _default;