@douyinfe/semi-ui 2.19.0-alpha.9 → 2.19.0-beta.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 (89) hide show
  1. package/_utils/index.ts +9 -5
  2. package/dist/css/semi.css +2 -7
  3. package/dist/css/semi.min.css +1 -1
  4. package/dist/umd/semi-ui.js +271 -258
  5. package/dist/umd/semi-ui.js.map +1 -1
  6. package/dist/umd/semi-ui.min.js +1 -1
  7. package/dist/umd/semi-ui.min.js.map +1 -1
  8. package/form/interface.ts +1 -1
  9. package/lib/cjs/_utils/index.js +4 -1
  10. package/lib/cjs/anchor/index.d.ts +1 -1
  11. package/lib/cjs/autoComplete/index.d.ts +1 -1
  12. package/lib/cjs/button/Button.d.ts +2 -2
  13. package/lib/cjs/button/buttonGroup.d.ts +1 -1
  14. package/lib/cjs/button/index.d.ts +1 -1
  15. package/lib/cjs/carousel/CarouselIndicator.d.ts +2 -2
  16. package/lib/cjs/carousel/index.d.ts +3 -3
  17. package/lib/cjs/cascader/index.d.ts +1 -1
  18. package/lib/cjs/cascader/item.d.ts +1 -1
  19. package/lib/cjs/datePicker/dateInput.d.ts +1 -1
  20. package/lib/cjs/datePicker/datePicker.d.ts +3 -3
  21. package/lib/cjs/datePicker/monthsGrid.d.ts +3 -3
  22. package/lib/cjs/datePicker/quickControl.d.ts +1 -1
  23. package/lib/cjs/datePicker/yearAndMonth.d.ts +1 -1
  24. package/lib/cjs/dropdown/index.d.ts +1 -1
  25. package/lib/cjs/form/baseForm.d.ts +1 -1
  26. package/lib/cjs/form/field.d.ts +1 -1
  27. package/lib/cjs/form/interface.d.ts +1 -1
  28. package/lib/cjs/popconfirm/index.js +6 -6
  29. package/lib/cjs/popover/index.d.ts +2 -2
  30. package/lib/cjs/radio/radio.d.ts +1 -1
  31. package/lib/cjs/radio/radioGroup.d.ts +1 -1
  32. package/lib/cjs/select/index.d.ts +1 -1
  33. package/lib/cjs/table/Table.d.ts +2 -2
  34. package/lib/cjs/tabs/interface.d.ts +3 -2
  35. package/lib/cjs/tag/group.d.ts +1 -15
  36. package/lib/cjs/tag/interface.d.ts +6 -3
  37. package/lib/cjs/timePicker/TimePicker.d.ts +2 -2
  38. package/lib/cjs/timePicker/TimeShape.d.ts +1 -1
  39. package/lib/cjs/timePicker/index.d.ts +2 -2
  40. package/lib/cjs/tooltip/index.d.ts +2 -2
  41. package/lib/cjs/typography/base.d.ts +1 -1
  42. package/lib/cjs/typography/paragraph.d.ts +1 -1
  43. package/lib/cjs/typography/text.d.ts +1 -1
  44. package/lib/cjs/typography/title.d.ts +1 -1
  45. package/lib/cjs/upload/index.d.ts +1 -1
  46. package/lib/es/_utils/index.js +4 -1
  47. package/lib/es/anchor/index.d.ts +1 -1
  48. package/lib/es/autoComplete/index.d.ts +1 -1
  49. package/lib/es/button/Button.d.ts +2 -2
  50. package/lib/es/button/buttonGroup.d.ts +1 -1
  51. package/lib/es/button/index.d.ts +1 -1
  52. package/lib/es/carousel/CarouselIndicator.d.ts +2 -2
  53. package/lib/es/carousel/index.d.ts +3 -3
  54. package/lib/es/cascader/index.d.ts +1 -1
  55. package/lib/es/cascader/item.d.ts +1 -1
  56. package/lib/es/datePicker/dateInput.d.ts +1 -1
  57. package/lib/es/datePicker/datePicker.d.ts +3 -3
  58. package/lib/es/datePicker/monthsGrid.d.ts +3 -3
  59. package/lib/es/datePicker/quickControl.d.ts +1 -1
  60. package/lib/es/datePicker/yearAndMonth.d.ts +1 -1
  61. package/lib/es/dropdown/index.d.ts +1 -1
  62. package/lib/es/form/baseForm.d.ts +1 -1
  63. package/lib/es/form/field.d.ts +1 -1
  64. package/lib/es/form/interface.d.ts +1 -1
  65. package/lib/es/popconfirm/index.js +6 -6
  66. package/lib/es/popover/index.d.ts +2 -2
  67. package/lib/es/radio/radio.d.ts +1 -1
  68. package/lib/es/radio/radioGroup.d.ts +1 -1
  69. package/lib/es/select/index.d.ts +1 -1
  70. package/lib/es/table/Table.d.ts +2 -2
  71. package/lib/es/tabs/interface.d.ts +3 -2
  72. package/lib/es/tag/group.d.ts +1 -15
  73. package/lib/es/tag/interface.d.ts +6 -3
  74. package/lib/es/timePicker/TimePicker.d.ts +2 -2
  75. package/lib/es/timePicker/TimeShape.d.ts +1 -1
  76. package/lib/es/timePicker/index.d.ts +2 -2
  77. package/lib/es/tooltip/index.d.ts +2 -2
  78. package/lib/es/typography/base.d.ts +1 -1
  79. package/lib/es/typography/paragraph.d.ts +1 -1
  80. package/lib/es/typography/text.d.ts +1 -1
  81. package/lib/es/typography/title.d.ts +1 -1
  82. package/lib/es/upload/index.d.ts +1 -1
  83. package/package.json +7 -7
  84. package/popconfirm/_story/popconfirm.stories.js +1 -1
  85. package/popconfirm/index.tsx +6 -6
  86. package/tabs/_story/Demo.tsx +14 -5
  87. package/tabs/interface.ts +3 -2
  88. package/tag/group.tsx +2 -16
  89. package/tag/interface.ts +9 -5
@@ -11,7 +11,16 @@ const Demo = () => {
11
11
 
12
12
  return (
13
13
  <div>
14
- <Tabs defaultActiveKey="1"
14
+ <Tabs
15
+ defaultActiveKey="1"
16
+ renderTabBar={(tabBarProps, DefaultTabBar) => {
17
+ return (
18
+ <div className="tab-bar-box">
19
+ 这是二次封装的Tab Bar,当前ActiveKey:{tabBarProps.activeKey}
20
+ <DefaultTabBar {...tabBarProps} />
21
+ </div>
22
+ );
23
+ }}
15
24
  tabPaneMotion>
16
25
  {
17
26
  tabPaneList.map((item, index) => {
@@ -19,12 +28,12 @@ const Demo = () => {
19
28
  <TabPane tab={item} itemKey={index.toString()} key={item}>
20
29
  { item + index }
21
30
  </TabPane>
22
- )
31
+ );
23
32
  })
24
33
  }
25
34
  </Tabs>
26
35
  </div>
27
- )
28
- }
36
+ );
37
+ };
29
38
 
30
- export default Demo
39
+ export default Demo;
package/tabs/interface.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import React, { ComponentType, CSSProperties, MouseEvent, ReactNode } from 'react';
2
2
  import { Motion } from '../_base/base';
3
+ import TabBar from './TabBar';
3
4
 
4
5
  export type TabType = 'line' | 'card' | 'button';
5
6
  export type TabSize = 'small' | 'medium' | 'large';
@@ -25,7 +26,7 @@ export interface TabsProps {
25
26
  lazyRender?: boolean;
26
27
  onChange?: (activeKey: string) => void;
27
28
  onTabClick?: (activeKey: string, e: MouseEvent<Element>) => void;
28
- renderTabBar?: (tabBarProps: TabBarProps, defaultTabBar: ComponentType) => ReactNode;
29
+ renderTabBar?: (tabBarProps: TabBarProps, defaultTabBar: typeof TabBar) => ReactNode;
29
30
  size?: TabSize;
30
31
  style?: CSSProperties;
31
32
  tabBarClassName?: string;
@@ -54,7 +55,7 @@ export interface TabBarProps {
54
55
  dropdownStyle?: CSSProperties;
55
56
  closable?: boolean;
56
57
  deleteTabItem?: (tabKey: string, event: MouseEvent<Element>) => void;
57
- handleKeyDown?: (event: React.KeyboardEvent, itemKey: string, closable: boolean) => void;
58
+ handleKeyDown?: (event: React.KeyboardEvent, itemKey: string, closable: boolean) => void;
58
59
  }
59
60
 
60
61
  export interface TabPaneProps {
package/tag/group.tsx CHANGED
@@ -3,27 +3,13 @@ import classNames from 'classnames';
3
3
  import PropTypes from 'prop-types';
4
4
  import { cssClasses, strings } from '@douyinfe/semi-foundation/tag/constants';
5
5
  import Tag from './index';
6
- import Popover, { PopoverProps } from '../popover/index';
7
- import { AvatarShape, TagProps } from './interface';
6
+ import Popover from '../popover/index';
7
+ import { AvatarShape, TagProps, TagGroupProps } from './interface';
8
8
 
9
9
  const prefixCls = cssClasses.PREFIX;
10
10
  const tagSize = strings.TAG_SIZE;
11
11
  const avatarShapeSet = strings.AVATAR_SHAPE;
12
12
 
13
- export interface TagGroupProps<T> {
14
- style?: React.CSSProperties;
15
- className?: string;
16
- maxTagCount?: number;
17
- restCount?: number;
18
- tagList?: (T extends 'custom' ? React.ReactNode : TagProps)[];
19
- size?: 'small' | 'large';
20
- showPopover?: boolean;
21
- popoverProps?: PopoverProps;
22
- avatarShape?: AvatarShape;
23
- mode?: string;
24
- onTagClose: (tagChildren: React.ReactNode, event: React.MouseEvent<HTMLElement>, tagKey: string | number) => void;
25
- }
26
-
27
13
  export default class TagGroup<T> extends PureComponent<TagGroupProps<T>> {
28
14
  static defaultProps = {
29
15
  style: {},
package/tag/interface.ts CHANGED
@@ -1,3 +1,5 @@
1
+ import { PopoverProps } from '../popover/index';
2
+
1
3
  export type TagColor =
2
4
  | 'amber'
3
5
  | 'blue'
@@ -39,14 +41,16 @@ export interface TagProps {
39
41
  tabIndex?: number; // use internal, when tag in taInput, we want to use left arrow and right arrow to control the tag focus, so the tabIndex need to be -1.
40
42
  }
41
43
 
42
- export interface TagGroupProps {
44
+ export interface TagGroupProps<T> {
43
45
  style?: React.CSSProperties;
44
46
  className?: string;
45
47
  maxTagCount?: number;
46
- tagList?: (TagProps | React.ReactNode)[];
48
+ restCount?: number;
49
+ tagList?: (T extends 'custom' ? React.ReactNode : TagProps)[];
47
50
  size?: 'small' | 'large';
48
51
  showPopover?: boolean;
49
- popoverProps?: any; // TODO: 替换成PopoverProps
52
+ popoverProps?: PopoverProps;
50
53
  avatarShape?: AvatarShape;
51
- mode?: string; // TODO: check 文档里没有这个api
52
- }
54
+ mode?: string;
55
+ onTagClose: (tagChildren: React.ReactNode, event: React.MouseEvent<HTMLElement>, tagKey: string | number) => void;
56
+ }