@aloudata/aloudata-design 0.1.0-beta.4 → 0.2.0-beta.10

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 (273) hide show
  1. package/es/Button/index.d.ts +0 -1
  2. package/es/Button/index.js +0 -1
  3. package/es/Button/style/index.less +23 -13
  4. package/es/Dropdown/Button.d.ts +0 -1
  5. package/es/Dropdown/Button.js +0 -1
  6. package/es/Dropdown/index.d.ts +1 -1
  7. package/es/Dropdown/index.js +0 -1
  8. package/es/Empty/index.d.ts +7 -0
  9. package/es/Empty/index.js +56 -0
  10. package/es/Empty/style/index.d.ts +1 -0
  11. package/es/Empty/style/index.js +1 -0
  12. package/es/Empty/style/index.less +24 -0
  13. package/es/Icon/iconfont/demo_index.html +49 -3
  14. package/es/Icon/iconfont/iconfont.css +11 -3
  15. package/es/Icon/iconfont/iconfont.js +5 -5
  16. package/es/Icon/iconfont/iconfont.json +14 -0
  17. package/es/Icon/iconfont/iconfont.ttf +0 -0
  18. package/es/Icon/iconfont/iconfont.woff +0 -0
  19. package/es/Icon/iconfont/iconfont.woff2 +0 -0
  20. package/es/Icon/index.js +3 -1
  21. package/es/Icon/index.less +2 -2
  22. package/es/Input/components/Group/index.d.ts +2 -2
  23. package/es/Input/components/Input/index.d.ts +61 -0
  24. package/es/Input/components/Input/index.js +37 -0
  25. package/es/Input/components/Password/index.d.ts +5 -4
  26. package/es/Input/components/Password/index.js +5 -4
  27. package/es/Input/components/TextArea/index.d.ts +9 -4
  28. package/es/Input/components/TextArea/index.js +16 -6
  29. package/es/Input/index.d.ts +14 -63
  30. package/es/Input/index.js +4 -41
  31. package/es/Input/style/index.less +5 -3
  32. package/es/Menu/Divider.d.ts +0 -1
  33. package/es/Menu/Divider.js +0 -1
  34. package/es/Menu/MenuItem.d.ts +7 -1
  35. package/es/Menu/MenuItem.js +0 -1
  36. package/es/Menu/SubMenu.d.ts +0 -1
  37. package/es/Menu/SubMenu.js +0 -1
  38. package/es/Menu/index.d.ts +1 -1
  39. package/es/Menu/index.js +0 -1
  40. package/es/Menu/style/index.less +4 -0
  41. package/es/Navigator/components/Menu/index.d.ts +19 -0
  42. package/es/Navigator/components/Menu/index.js +187 -0
  43. package/es/Navigator/index.d.ts +40 -0
  44. package/es/Navigator/index.js +44 -0
  45. package/es/Navigator/style/index.d.ts +2 -0
  46. package/es/Navigator/style/index.js +2 -0
  47. package/es/Navigator/style/index.less +228 -0
  48. package/es/Select/index.d.ts +0 -1
  49. package/es/Select/index.js +0 -1
  50. package/es/Table/index.d.ts +4 -0
  51. package/es/Table/index.js +350 -0
  52. package/es/Table/interface.d.ts +36 -0
  53. package/es/Table/interface.js +1 -0
  54. package/es/Table/react-table-config.d.ts +122 -0
  55. package/es/Table/style/index.d.ts +2 -0
  56. package/es/Table/style/index.js +2 -0
  57. package/es/Table/style/index.less +151 -0
  58. package/es/Tabs/index.d.ts +1 -1
  59. package/es/Tabs/index.js +0 -1
  60. package/es/Tooltip/index.d.ts +0 -1
  61. package/es/Tooltip/index.js +0 -1
  62. package/es/index.d.ts +12 -0
  63. package/es/index.js +3 -1
  64. package/es/style/themes/default/index.less +1 -1
  65. package/lib/Button/index.d.ts +0 -1
  66. package/lib/Button/index.js +0 -2
  67. package/lib/Button/style/index.less +23 -13
  68. package/lib/Dropdown/Button.d.ts +0 -1
  69. package/lib/Dropdown/Button.js +0 -2
  70. package/lib/Dropdown/index.d.ts +1 -1
  71. package/lib/Dropdown/index.js +0 -2
  72. package/lib/Empty/index.d.ts +7 -0
  73. package/lib/Empty/index.js +69 -0
  74. package/lib/Empty/style/index.d.ts +1 -0
  75. package/lib/Empty/style/index.js +3 -0
  76. package/lib/Empty/style/index.less +24 -0
  77. package/lib/Icon/iconfont/demo_index.html +49 -3
  78. package/lib/Icon/iconfont/iconfont.css +11 -3
  79. package/lib/Icon/iconfont/iconfont.js +5 -5
  80. package/lib/Icon/iconfont/iconfont.json +14 -0
  81. package/lib/Icon/iconfont/iconfont.ttf +0 -0
  82. package/lib/Icon/iconfont/iconfont.woff +0 -0
  83. package/lib/Icon/iconfont/iconfont.woff2 +0 -0
  84. package/lib/Icon/index.js +5 -3
  85. package/lib/Icon/index.less +2 -2
  86. package/lib/Input/components/Group/index.d.ts +2 -2
  87. package/lib/Input/components/Input/index.d.ts +61 -0
  88. package/lib/Input/components/Input/index.js +50 -0
  89. package/lib/Input/components/Password/index.d.ts +5 -4
  90. package/lib/Input/components/Password/index.js +10 -8
  91. package/lib/Input/components/TextArea/index.d.ts +9 -4
  92. package/lib/Input/components/TextArea/index.js +18 -7
  93. package/lib/Input/index.d.ts +14 -63
  94. package/lib/Input/index.js +4 -44
  95. package/lib/Input/style/index.less +5 -3
  96. package/lib/Menu/Divider.d.ts +0 -1
  97. package/lib/Menu/Divider.js +0 -2
  98. package/lib/Menu/MenuItem.d.ts +7 -1
  99. package/lib/Menu/MenuItem.js +0 -2
  100. package/lib/Menu/SubMenu.d.ts +0 -1
  101. package/lib/Menu/SubMenu.js +0 -2
  102. package/lib/Menu/index.d.ts +1 -1
  103. package/lib/Menu/index.js +0 -2
  104. package/lib/Menu/style/index.less +4 -0
  105. package/lib/Navigator/components/Menu/index.d.ts +19 -0
  106. package/lib/Navigator/components/Menu/index.js +205 -0
  107. package/lib/Navigator/index.d.ts +40 -0
  108. package/lib/Navigator/index.js +62 -0
  109. package/lib/Navigator/style/index.d.ts +2 -0
  110. package/lib/Navigator/style/index.js +5 -0
  111. package/lib/Navigator/style/index.less +228 -0
  112. package/lib/Select/index.d.ts +0 -1
  113. package/lib/Select/index.js +0 -2
  114. package/lib/Table/index.d.ts +4 -0
  115. package/lib/Table/index.js +375 -0
  116. package/lib/Table/interface.d.ts +36 -0
  117. package/lib/Table/interface.js +5 -0
  118. package/lib/Table/react-table-config.d.ts +122 -0
  119. package/lib/Table/style/index.d.ts +2 -0
  120. package/lib/Table/style/index.js +5 -0
  121. package/lib/Table/style/index.less +151 -0
  122. package/lib/Tabs/index.d.ts +1 -1
  123. package/lib/Tabs/index.js +0 -2
  124. package/lib/Tooltip/index.d.ts +0 -1
  125. package/lib/Tooltip/index.js +0 -2
  126. package/lib/index.d.ts +12 -0
  127. package/lib/index.js +16 -0
  128. package/lib/style/themes/default/index.less +1 -1
  129. package/package.json +19 -4
  130. package/es/Button/demo/Icon/index.d.ts +0 -3
  131. package/es/Button/demo/Icon/index.js +0 -67
  132. package/es/Button/demo/Icon/index.less +0 -6
  133. package/es/Button/demo/basic/index.d.ts +0 -4
  134. package/es/Button/demo/basic/index.js +0 -57
  135. package/es/Button/demo/basic/index.less +0 -6
  136. package/es/Button/demo/disable/index.d.ts +0 -3
  137. package/es/Button/demo/disable/index.js +0 -23
  138. package/es/Button/demo/disable/index.less +0 -0
  139. package/es/Button/demo/href/index.d.ts +0 -2
  140. package/es/Button/demo/href/index.js +0 -17
  141. package/es/Button/demo/loading/index.d.ts +0 -3
  142. package/es/Button/demo/loading/index.js +0 -37
  143. package/es/Button/demo/loading/index.less +0 -6
  144. package/es/Dropdown/demo/basic/index.d.ts +0 -4
  145. package/es/Dropdown/demo/basic/index.js +0 -18
  146. package/es/Dropdown/demo/button/index.d.ts +0 -3
  147. package/es/Dropdown/demo/button/index.js +0 -159
  148. package/es/Dropdown/demo/button/index.less +0 -9
  149. package/es/Dropdown/demo/placement/index.d.ts +0 -2
  150. package/es/Dropdown/demo/placement/index.js +0 -40
  151. package/es/Dropdown/demo/subMenu/index.d.ts +0 -2
  152. package/es/Dropdown/demo/subMenu/index.js +0 -42
  153. package/es/Dropdown/demo/trigger/index.d.ts +0 -2
  154. package/es/Dropdown/demo/trigger/index.js +0 -17
  155. package/es/Input/demo/allowClear/index.d.ts +0 -3
  156. package/es/Input/demo/allowClear/index.js +0 -11
  157. package/es/Input/demo/allowClear/index.less +0 -0
  158. package/es/Input/demo/basic/index.d.ts +0 -4
  159. package/es/Input/demo/basic/index.js +0 -65
  160. package/es/Input/demo/basic/index.less +0 -6
  161. package/es/Input/demo/gourp/index.d.ts +0 -2
  162. package/es/Input/demo/gourp/index.js +0 -67
  163. package/es/Input/demo/password/index.d.ts +0 -3
  164. package/es/Input/demo/password/index.js +0 -21
  165. package/es/Input/demo/password/index.less +0 -0
  166. package/es/Input/demo/prefix/index.d.ts +0 -3
  167. package/es/Input/demo/prefix/index.js +0 -17
  168. package/es/Input/demo/prefix/index.less +0 -0
  169. package/es/Input/demo/showCount/index.d.ts +0 -3
  170. package/es/Input/demo/showCount/index.js +0 -17
  171. package/es/Input/demo/showCount/index.less +0 -0
  172. package/es/Input/demo/textArea/autoSize.d.ts +0 -2
  173. package/es/Input/demo/textArea/autoSize.js +0 -50
  174. package/es/Select/demo/disabled/index.d.ts +0 -2
  175. package/es/Select/demo/disabled/index.js +0 -50
  176. package/es/Select/demo/multiple/index.d.ts +0 -2
  177. package/es/Select/demo/multiple/index.js +0 -140
  178. package/es/Select/demo/options/index.d.ts +0 -2
  179. package/es/Select/demo/options/index.js +0 -55
  180. package/es/Select/demo/single/index.d.ts +0 -3
  181. package/es/Select/demo/single/index.js +0 -89
  182. package/es/Select/demo/single/index.less +0 -5
  183. package/es/Tabs/demo/adaptHeight/index.d.ts +0 -3
  184. package/es/Tabs/demo/adaptHeight/index.js +0 -19
  185. package/es/Tabs/demo/adaptHeight/index.less +0 -3
  186. package/es/Tabs/demo/basic/index.d.ts +0 -4
  187. package/es/Tabs/demo/basic/index.js +0 -44
  188. package/es/Tabs/demo/basic/index.less +0 -5
  189. package/es/Tabs/demo/horizontalScroll/index.d.ts +0 -3
  190. package/es/Tabs/demo/horizontalScroll/index.js +0 -30
  191. package/es/Tabs/demo/horizontalScroll/index.less +0 -3
  192. package/es/Tooltip/demo/basic/index.d.ts +0 -2
  193. package/es/Tooltip/demo/basic/index.js +0 -7
  194. package/es/Tooltip/demo/overflow/index.d.ts +0 -2
  195. package/es/Tooltip/demo/overflow/index.js +0 -7
  196. package/es/Tooltip/demo/placement/index.d.ts +0 -6
  197. package/es/Tooltip/demo/placement/index.js +0 -70
  198. package/es/Tooltip/demo/placement/index.less +0 -7
  199. package/es/Tooltip/demo/trigger/index.d.ts +0 -3
  200. package/es/Tooltip/demo/trigger/index.js +0 -20
  201. package/es/Tooltip/demo/trigger/index.less +0 -5
  202. package/lib/Button/demo/Icon/index.d.ts +0 -3
  203. package/lib/Button/demo/Icon/index.js +0 -82
  204. package/lib/Button/demo/Icon/index.less +0 -6
  205. package/lib/Button/demo/basic/index.d.ts +0 -4
  206. package/lib/Button/demo/basic/index.js +0 -73
  207. package/lib/Button/demo/basic/index.less +0 -6
  208. package/lib/Button/demo/disable/index.d.ts +0 -3
  209. package/lib/Button/demo/disable/index.js +0 -37
  210. package/lib/Button/demo/disable/index.less +0 -0
  211. package/lib/Button/demo/href/index.d.ts +0 -2
  212. package/lib/Button/demo/href/index.js +0 -30
  213. package/lib/Button/demo/loading/index.d.ts +0 -3
  214. package/lib/Button/demo/loading/index.js +0 -51
  215. package/lib/Button/demo/loading/index.less +0 -6
  216. package/lib/Dropdown/demo/basic/index.d.ts +0 -4
  217. package/lib/Dropdown/demo/basic/index.js +0 -35
  218. package/lib/Dropdown/demo/button/index.d.ts +0 -3
  219. package/lib/Dropdown/demo/button/index.js +0 -182
  220. package/lib/Dropdown/demo/button/index.less +0 -9
  221. package/lib/Dropdown/demo/placement/index.d.ts +0 -2
  222. package/lib/Dropdown/demo/placement/index.js +0 -56
  223. package/lib/Dropdown/demo/subMenu/index.d.ts +0 -2
  224. package/lib/Dropdown/demo/subMenu/index.js +0 -59
  225. package/lib/Dropdown/demo/trigger/index.d.ts +0 -2
  226. package/lib/Dropdown/demo/trigger/index.js +0 -32
  227. package/lib/Input/demo/allowClear/index.d.ts +0 -3
  228. package/lib/Input/demo/allowClear/index.js +0 -25
  229. package/lib/Input/demo/allowClear/index.less +0 -0
  230. package/lib/Input/demo/basic/index.d.ts +0 -4
  231. package/lib/Input/demo/basic/index.js +0 -80
  232. package/lib/Input/demo/basic/index.less +0 -6
  233. package/lib/Input/demo/gourp/index.d.ts +0 -2
  234. package/lib/Input/demo/gourp/index.js +0 -81
  235. package/lib/Input/demo/password/index.d.ts +0 -3
  236. package/lib/Input/demo/password/index.js +0 -35
  237. package/lib/Input/demo/password/index.less +0 -0
  238. package/lib/Input/demo/prefix/index.d.ts +0 -3
  239. package/lib/Input/demo/prefix/index.js +0 -32
  240. package/lib/Input/demo/prefix/index.less +0 -0
  241. package/lib/Input/demo/showCount/index.d.ts +0 -3
  242. package/lib/Input/demo/showCount/index.js +0 -31
  243. package/lib/Input/demo/showCount/index.less +0 -0
  244. package/lib/Input/demo/textArea/autoSize.d.ts +0 -2
  245. package/lib/Input/demo/textArea/autoSize.js +0 -63
  246. package/lib/Select/demo/disabled/index.d.ts +0 -2
  247. package/lib/Select/demo/disabled/index.js +0 -64
  248. package/lib/Select/demo/multiple/index.d.ts +0 -2
  249. package/lib/Select/demo/multiple/index.js +0 -154
  250. package/lib/Select/demo/options/index.d.ts +0 -2
  251. package/lib/Select/demo/options/index.js +0 -69
  252. package/lib/Select/demo/single/index.d.ts +0 -3
  253. package/lib/Select/demo/single/index.js +0 -103
  254. package/lib/Select/demo/single/index.less +0 -5
  255. package/lib/Tabs/demo/adaptHeight/index.d.ts +0 -3
  256. package/lib/Tabs/demo/adaptHeight/index.js +0 -34
  257. package/lib/Tabs/demo/adaptHeight/index.less +0 -3
  258. package/lib/Tabs/demo/basic/index.d.ts +0 -4
  259. package/lib/Tabs/demo/basic/index.js +0 -67
  260. package/lib/Tabs/demo/basic/index.less +0 -5
  261. package/lib/Tabs/demo/horizontalScroll/index.d.ts +0 -3
  262. package/lib/Tabs/demo/horizontalScroll/index.js +0 -45
  263. package/lib/Tabs/demo/horizontalScroll/index.less +0 -3
  264. package/lib/Tooltip/demo/basic/index.d.ts +0 -2
  265. package/lib/Tooltip/demo/basic/index.js +0 -20
  266. package/lib/Tooltip/demo/overflow/index.d.ts +0 -2
  267. package/lib/Tooltip/demo/overflow/index.js +0 -20
  268. package/lib/Tooltip/demo/placement/index.d.ts +0 -6
  269. package/lib/Tooltip/demo/placement/index.js +0 -86
  270. package/lib/Tooltip/demo/placement/index.less +0 -7
  271. package/lib/Tooltip/demo/trigger/index.d.ts +0 -3
  272. package/lib/Tooltip/demo/trigger/index.js +0 -34
  273. package/lib/Tooltip/demo/trigger/index.less +0 -5
@@ -0,0 +1,228 @@
1
+ @import '../../style/index.less';
2
+ @import '../../Icon/index.less';
3
+
4
+ /* stylelint-disable */
5
+
6
+ @ald-prefix:ant;
7
+
8
+ .supTitle() {
9
+ font-family: 'PingFang SC';
10
+ font-style: normal;
11
+ font-weight: 500;
12
+ font-size: 14px;
13
+ line-height: 20px;
14
+ }
15
+
16
+ .subTitle() {
17
+ font-family: 'PingFang SC';
18
+ font-style: normal;
19
+ font-weight: 400;
20
+ font-size: 12px;
21
+ line-height: 16px;
22
+ }
23
+
24
+ .ald-nav {
25
+ width: 216px;
26
+ background-color: @BBG15;
27
+ height: 100%;
28
+ display: flex;
29
+ flex-direction: column;
30
+ overflow: hidden;
31
+ user-select: none;
32
+
33
+ &-logo {
34
+ height: 72px;
35
+ padding: 24px;
36
+ width: 100%;
37
+
38
+ &-able-click {
39
+ cursor: pointer;
40
+ }
41
+ }
42
+
43
+ &-menu-icon-right.anticon {
44
+ color: @ND60;
45
+ }
46
+
47
+ &-menu {
48
+ flex: 1;
49
+ overflow-y: auto;
50
+ overflow-x: hidden;
51
+
52
+ .ant-menu-sub.ant-menu-inline {
53
+ background-color: unset;
54
+ }
55
+
56
+ .anticon.ant-menu-item-icon {
57
+ font-size: 20px !important;
58
+ width: 20px !important;
59
+ height: 20px !important;
60
+ }
61
+
62
+ &::-webkit-scrollbar-thumb {
63
+ border-radius: 6px;
64
+ background: @ND90;
65
+ border: 3px solid transparent;
66
+ background-clip: padding-box;
67
+ }
68
+
69
+ &::-webkit-scrollbar {
70
+ background-color: transparent;
71
+ width: 12px;
72
+ height: 12px;
73
+ }
74
+
75
+ .ant-menu-inline,
76
+ .ant-menu-vertical,
77
+ .ant-menu-vertical-left {
78
+ border-right: unset;
79
+ }
80
+
81
+ .ant-menu {
82
+ background: @BBG15;
83
+ color: @ND0;
84
+
85
+ &.ant-menu-root {
86
+
87
+ .ant-menu-item {
88
+ margin-bottom: 16px;
89
+ padding: 0 12px !important;
90
+ }
91
+
92
+ li:nth-last-child(1) {
93
+ margin-bottom: 0;
94
+ }
95
+ }
96
+
97
+ &.ant-menu-sub {
98
+ .ant-menu-item {
99
+ margin-top: 4px;
100
+ margin-bottom: 0;
101
+ padding: 0 12px 0 44px!important;
102
+ }
103
+ }
104
+
105
+ // 只有子级菜单相关颜色操作
106
+ .ant-menu-item-only-child {
107
+ color: @ND30;
108
+ height: 32px !important;
109
+ line-height: 32px !important;
110
+ font-size: 12px !important;
111
+ .subTitle();
112
+
113
+ &:hover {
114
+ color: @ND30 !important;
115
+ }
116
+
117
+ &.ant-menu-item-selected {
118
+ font-weight: 500;
119
+
120
+ &:hover {
121
+ color: @ND0 !important;
122
+ }
123
+ }
124
+ }
125
+
126
+ .ant-menu-item {
127
+ height: 40px;
128
+ width: 100%;
129
+ border-radius: 8px;
130
+ .supTitle();
131
+
132
+ ::before {
133
+ width: 4px;
134
+ content: '';
135
+ background: transparent;
136
+ height: 100%;
137
+ position: absolute;
138
+ top: 0;
139
+ left: -12px;
140
+ border-radius: 1px;
141
+ transition: all .3s;
142
+ }
143
+
144
+ &-selected {
145
+ background-color: @BBG20 !important;
146
+ color: @ND0;
147
+ position: relative;
148
+ overflow: unset;
149
+
150
+ ::before {
151
+ background: @B40;
152
+ }
153
+ }
154
+
155
+ &::after {
156
+ display: none !important;
157
+ }
158
+ }
159
+
160
+ .ant-menu-submenu {
161
+ margin-bottom: 16px;
162
+
163
+ .ant-menu-submenu-title {
164
+ padding: 0 12px !important;
165
+ height: 40px;
166
+ line-height: 40px;
167
+ .supTitle();
168
+
169
+ &:hover {
170
+ color: @ND0;
171
+ }
172
+ }
173
+
174
+ &-selected {
175
+ color: @ND0;
176
+ }
177
+
178
+ &-active {
179
+ color: @ND0;
180
+ }
181
+ }
182
+
183
+ // 修改icon和文字的margin
184
+ .ant-menu-item .ant-menu-item-icon + span,
185
+ .ant-menu-submenu-title .ant-menu-item-icon + span,
186
+ .ant-menu-item .anticon + span,
187
+ .ant-menu-submenu-title .anticon + span {
188
+ margin-left: 12px;
189
+ }
190
+
191
+ // 取消item点击时的高亮背景色
192
+ .ant-menu-item:active,
193
+ .ant-menu-submenu-title:active {
194
+ background: unset;
195
+ }
196
+
197
+ .ant-menu-inline .ant-menu-item,
198
+ .ant-menu-inline .ant-menu-submenu-title {
199
+ width: 100% !important;
200
+ }
201
+
202
+ // 删除右侧的高亮
203
+ .ant-menu-vertical .ant-menu-item::after,
204
+ .ant-menu-vertical-left .ant-menu-item::after,
205
+ .ant-menu-vertical-right .ant-menu-item::after,
206
+ .ant-menu-inline .ant-menu-item::after {
207
+ display: none;
208
+ }
209
+ }
210
+
211
+ .ant-menu-light .ant-menu-item:hover,
212
+ .ant-menu-light .ant-menu-item-active,
213
+ .ant-menu-light .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open,
214
+ .ant-menu-light .ant-menu-submenu-active,
215
+ .ant-menu-light .ant-menu-submenu-title:hover {
216
+ color: unset;
217
+ }
218
+ }
219
+
220
+ &-footer {
221
+ height: 72px;
222
+
223
+ &-wrap {
224
+ color: @ND0;
225
+ height: 100%;
226
+ }
227
+ }
228
+ }
@@ -2,7 +2,6 @@ import BaseSelect from './BaseSelect';
2
2
  import { IOption as Option, ISelectProps as SelectProps, IOptGroupProps as OptGroupProps, IOptionProps as OptionProps } from './interface';
3
3
  import Options from './OptionsList/Options';
4
4
  import OptGroup from './OptionsList/OptGroup';
5
- import './style';
6
5
  export declare type TSelect = typeof BaseSelect & {
7
6
  Group: typeof OptGroup;
8
7
  Option: typeof Options;
@@ -23,8 +23,6 @@ var _Options = _interopRequireDefault(require("./OptionsList/Options"));
23
23
 
24
24
  var _OptGroup = _interopRequireDefault(require("./OptionsList/OptGroup"));
25
25
 
26
- require("./style");
27
-
28
26
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
27
 
30
28
  var Select = _BaseSelect.default;
@@ -0,0 +1,4 @@
1
+ import { ReactElement } from 'react';
2
+ import { ITableProps } from './interface';
3
+ declare function Table<T extends Record<string, unknown>>({ columns, data, total, renderHeaderLeft, renderHeaderRight, scrollY, onRowSelected, loadMore, hasNextPage, loading, sortable, defaultSort, resizeColumn, sortDirections: allSortDirections, showHeader, onChange, }: ITableProps<T>): ReactElement;
4
+ export default Table;
@@ -0,0 +1,375 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _reactTable = require("react-table");
13
+
14
+ var _usePrefixCls = _interopRequireDefault(require("../_utils/hooks/usePrefixCls"));
15
+
16
+ var _reactWindow = require("react-window");
17
+
18
+ var _reactWindowInfiniteLoader = _interopRequireDefault(require("react-window-infinite-loader"));
19
+
20
+ var _classnames6 = _interopRequireDefault(require("classnames"));
21
+
22
+ var _Icon = _interopRequireDefault(require("../Icon"));
23
+
24
+ var _Empty = _interopRequireDefault(require("../Empty"));
25
+
26
+ var _lodash = _interopRequireDefault(require("lodash"));
27
+
28
+ var _excluded = ["style"],
29
+ _excluded2 = ["style"];
30
+
31
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
32
+
33
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
34
+
35
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
36
+
37
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
38
+
39
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
40
+
41
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
42
+
43
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
44
+
45
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
46
+
47
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
48
+
49
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
50
+
51
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
52
+
53
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
54
+
55
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
56
+
57
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
58
+
59
+ var DEFAULT_ROW_HEIGHT = 40;
60
+ var ARRAY_FIRST_INDEX = 0;
61
+ var DEFAULT_ROW_WIDTH = 0;
62
+
63
+ function Table(_ref) {
64
+ var columns = _ref.columns,
65
+ data = _ref.data,
66
+ total = _ref.total,
67
+ renderHeaderLeft = _ref.renderHeaderLeft,
68
+ renderHeaderRight = _ref.renderHeaderRight,
69
+ scrollY = _ref.scrollY,
70
+ onRowSelected = _ref.onRowSelected,
71
+ _ref$loadMore = _ref.loadMore,
72
+ loadMore = _ref$loadMore === void 0 ? function () {} : _ref$loadMore,
73
+ hasNextPage = _ref.hasNextPage,
74
+ loading = _ref.loading,
75
+ _ref$sortable = _ref.sortable,
76
+ sortable = _ref$sortable === void 0 ? false : _ref$sortable,
77
+ defaultSort = _ref.defaultSort,
78
+ _ref$resizeColumn = _ref.resizeColumn,
79
+ resizeColumn = _ref$resizeColumn === void 0 ? false : _ref$resizeColumn,
80
+ allSortDirections = _ref.sortDirections,
81
+ _ref$showHeader = _ref.showHeader,
82
+ showHeader = _ref$showHeader === void 0 ? true : _ref$showHeader,
83
+ _ref$onChange = _ref.onChange,
84
+ onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange;
85
+
86
+ var _React$useState = _react.default.useState(null),
87
+ _React$useState2 = _slicedToArray(_React$useState, 2),
88
+ selectedRowId = _React$useState2[0],
89
+ setSelectedRowId = _React$useState2[1];
90
+
91
+ var newColumns = (0, _react.useMemo)(function () {
92
+ return columns.map(function (column) {
93
+ return _objectSpread(_objectSpread({}, column), {}, {
94
+ Header: column.title,
95
+ disableSortBy: !sortable || typeof column.sorter === 'boolean',
96
+ accessor: column.dataIndex,
97
+ Cell: function Cell(_ref2) {
98
+ var row = _ref2.row,
99
+ value = _ref2.value;
100
+ return typeof column.render === 'function' ? column.render(value, row.original, row.index) : value;
101
+ }
102
+ });
103
+ });
104
+ }, [columns, sortable]);
105
+
106
+ var getInitialSortDirection = function getInitialSortDirection() {
107
+ if (defaultSort && defaultSort.id) {
108
+ return defaultSort;
109
+ }
110
+
111
+ if (sortable) {
112
+ return {
113
+ id: newColumns[ARRAY_FIRST_INDEX].accessor,
114
+ desc: false
115
+ };
116
+ }
117
+
118
+ return {
119
+ id: '',
120
+ desc: false
121
+ };
122
+ };
123
+
124
+ var _React$useState3 = _react.default.useState(getInitialSortDirection()),
125
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
126
+ sortDirection = _React$useState4[0],
127
+ setSortDirection = _React$useState4[1];
128
+
129
+ var _useTable = (0, _reactTable.useTable)({
130
+ columns: newColumns,
131
+ data: data,
132
+ disableMultiSort: true,
133
+ disableSortBy: !sortable,
134
+ initialState: {
135
+ sortBy: sortDirection.id ? [sortDirection] : []
136
+ }
137
+ }, _reactTable.useBlockLayout, _reactTable.useSortBy, _reactTable.useRowSelect, _reactTable.useResizeColumns),
138
+ getTableProps = _useTable.getTableProps,
139
+ getTableBodyProps = _useTable.getTableBodyProps,
140
+ headerGroups = _useTable.headerGroups,
141
+ rows = _useTable.rows,
142
+ prepareRow = _useTable.prepareRow,
143
+ setSortBy = _useTable.setSortBy;
144
+
145
+ var theadRowWidthRef = _react.default.useRef(DEFAULT_ROW_WIDTH);
146
+
147
+ var prefixCls = (0, _usePrefixCls.default)('block-table');
148
+
149
+ function getTbodyStyle() {
150
+ if (scrollY) {
151
+ return {
152
+ height: "".concat(scrollY, "px")
153
+ };
154
+ }
155
+
156
+ return {};
157
+ }
158
+
159
+ var onRowClick = (0, _react.useCallback)(function (row) {
160
+ if (!onRowSelected) {
161
+ return;
162
+ }
163
+
164
+ setSelectedRowId(row.id);
165
+ onRowSelected(row.original);
166
+ }, [onRowSelected]);
167
+ var itemCount = hasNextPage ? data.length + 1 : data.length;
168
+ var loadMoreItems = loading ? function () {} : loadMore;
169
+
170
+ var isItemLoaded = function isItemLoaded(index) {
171
+ return !hasNextPage || index < data.length;
172
+ };
173
+
174
+ var RenderRow = function RenderRow(_ref3) {
175
+ var index = _ref3.index,
176
+ style = _ref3.style;
177
+
178
+ if (!isItemLoaded(index)) {
179
+ return /*#__PURE__*/_react.default.createElement("div", {
180
+ style: style,
181
+ className: (0, _classnames6.default)("".concat(prefixCls, "-loading"))
182
+ }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
183
+ type: "waiting",
184
+ size: 16
185
+ }), "Loading");
186
+ }
187
+
188
+ var row = rows[index];
189
+ prepareRow(row);
190
+
191
+ var _row$getRowProps = row.getRowProps(),
192
+ rowStyle = _row$getRowProps.style,
193
+ rowProps = _objectWithoutProperties(_row$getRowProps, _excluded);
194
+
195
+ return /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, rowProps), {}, {
196
+ style: _objectSpread(_objectSpread(_objectSpread({}, style), rowStyle), {}, {
197
+ width: resizeColumn ? style === null || style === void 0 ? void 0 : style.width : '100%'
198
+ }),
199
+ className: (0, _classnames6.default)("".concat(prefixCls, "-row"), _defineProperty({}, "".concat(prefixCls, "-row-selected"), row.id === selectedRowId)),
200
+ onClick: function onClick() {
201
+ return onRowClick(row);
202
+ }
203
+ }), row.cells.map(function (cell) {
204
+ return /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, cell.getCellProps()), {}, {
205
+ className: (0, _classnames6.default)("".concat(prefixCls, "-cell"))
206
+ }), cell.render('Cell'));
207
+ }));
208
+ };
209
+
210
+ var renderHeader = function renderHeader(len) {
211
+ return /*#__PURE__*/_react.default.createElement("div", {
212
+ className: (0, _classnames6.default)("".concat(prefixCls, "-header"))
213
+ }, renderHeaderLeft ? renderHeaderLeft() : /*#__PURE__*/_react.default.createElement("span", {
214
+ className: (0, _classnames6.default)("".concat(prefixCls, "-header-left"))
215
+ }, "\u5171\u8BA1", total || len, "\u6761"), /*#__PURE__*/_react.default.createElement("div", {
216
+ className: (0, _classnames6.default)("".concat(prefixCls, "-header-right"))
217
+ }, renderHeaderRight ? renderHeaderRight() : null));
218
+ };
219
+
220
+ var getNextSortDesc = function getNextSortDesc(currentDesc) {
221
+ var sortDirections = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['ascend', 'descend'];
222
+ var sortOrder = arguments.length > 2 ? arguments[2] : undefined;
223
+ var descMap = new Map([['ascend', false], ['descend', true]]);
224
+ var directions = allSortDirections || sortDirections;
225
+
226
+ if (sortOrder === 'ascend' || sortOrder === 'descend') {
227
+ return descMap.get(sortOrder);
228
+ }
229
+
230
+ if (typeof currentDesc === 'undefined') {
231
+ return descMap.get(directions[ARRAY_FIRST_INDEX]);
232
+ }
233
+
234
+ var direction = currentDesc ? 'descend' : 'ascend';
235
+
236
+ var index = _lodash.default.findIndex(directions, function (item) {
237
+ return item === direction;
238
+ });
239
+
240
+ var nextIndex = index + 1;
241
+ return descMap.get(directions[nextIndex]);
242
+ };
243
+
244
+ var getHeaderProps = function getHeaderProps(column) {
245
+ // @ts-ignore
246
+ var id = column.id,
247
+ isSortedDesc = column.isSortedDesc,
248
+ canSort = column.canSort,
249
+ sorter = column.sorter,
250
+ sortOrder = column.sortOrder,
251
+ sortDirections = column.sortDirections;
252
+ var toggleProps = column.getSortByToggleProps();
253
+
254
+ if (canSort) {
255
+ // client sort
256
+ return _objectSpread(_objectSpread({}, column.getHeaderProps(_objectSpread({}, toggleProps))), {}, {
257
+ onClick: function onClick(e) {
258
+ e.stopPropagation();
259
+
260
+ if (typeof toggleProps.onClick === 'function') {
261
+ // toggleProps.onClick(e);
262
+ var desc = getNextSortDesc(isSortedDesc, sortDirections, sortOrder);
263
+ var sortBy = {
264
+ id: typeof desc === 'undefined' ? '' : id,
265
+ desc: desc
266
+ };
267
+ setSortBy(typeof desc === 'undefined' ? [] : [sortBy]);
268
+ setSortDirection(sortBy);
269
+ onChange(sortBy);
270
+ }
271
+ }
272
+ });
273
+ }
274
+
275
+ if (sorter) {
276
+ // server sort
277
+ return _objectSpread(_objectSpread({}, column.getHeaderProps({
278
+ style: {
279
+ cursor: 'pointer'
280
+ }
281
+ })), {}, {
282
+ onClick: function onClick(e) {
283
+ e.stopPropagation(); // 需要触发onChange
284
+ // debugger;
285
+
286
+ var desc = getNextSortDesc(sortDirection.desc, sortDirections, sortOrder);
287
+ var sortBy = {
288
+ id: typeof desc === 'boolean' ? id : '',
289
+ desc: desc
290
+ };
291
+ setSortDirection(sortBy);
292
+ onChange(sortBy);
293
+ }
294
+ });
295
+ }
296
+
297
+ return column.getHeaderProps();
298
+ };
299
+
300
+ var SortIcons = function SortIcons(_ref4) {
301
+ var id = _ref4.id;
302
+ var currentSortId = sortDirection.id,
303
+ desc = sortDirection.desc;
304
+
305
+ if (id !== currentSortId || !sortable) {
306
+ return null;
307
+ }
308
+
309
+ return desc ? /*#__PURE__*/_react.default.createElement(_Icon.default, {
310
+ className: "".concat(prefixCls, "-sortIcon"),
311
+ type: "sort_descending",
312
+ size: 12
313
+ }) : /*#__PURE__*/_react.default.createElement(_Icon.default, {
314
+ className: "".concat(prefixCls, "-sortIcon"),
315
+ type: "sort_ascending",
316
+ size: 12
317
+ });
318
+ };
319
+
320
+ return /*#__PURE__*/_react.default.createElement("div", {
321
+ className: prefixCls
322
+ }, showHeader && renderHeader(data.length), /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, getTableProps()), {}, {
323
+ className: (0, _classnames6.default)(_defineProperty({}, "".concat(prefixCls, "-column-resizable"), resizeColumn))
324
+ }), /*#__PURE__*/_react.default.createElement("div", {
325
+ className: "".concat(prefixCls, "-thead")
326
+ }, headerGroups.map(function (headerGroup) {
327
+ var _headerGroup$getHeade = headerGroup.getHeaderGroupProps(),
328
+ style = _headerGroup$getHeade.style,
329
+ headerGroupProps = _objectWithoutProperties(_headerGroup$getHeade, _excluded2);
330
+
331
+ theadRowWidthRef.current = (style === null || style === void 0 ? void 0 : style.width) || DEFAULT_ROW_WIDTH;
332
+ return /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, headerGroupProps), {}, {
333
+ style: _objectSpread(_objectSpread({}, style), {}, {
334
+ width: resizeColumn ? style === null || style === void 0 ? void 0 : style.width : '100%'
335
+ }),
336
+ className: "".concat(prefixCls, "-row")
337
+ }), headerGroup.headers.map(function (column) {
338
+ var barPorps = resizeColumn ? column.getResizerProps() : {};
339
+ return /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({
340
+ // {...column.getHeaderProps(column.getSortByToggleProps())}
341
+ className: (0, _classnames6.default)(_defineProperty({}, "".concat(prefixCls, "-cell-sorting"), column.id === sortDirection.id), "".concat(prefixCls, "-cell"))
342
+ }, getHeaderProps(column)), {}, {
343
+ key: column.id
344
+ }), column.render('Header'), /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, barPorps), {}, {
345
+ className: (0, _classnames6.default)(_defineProperty({}, "".concat(prefixCls, "-dragBar"), resizeColumn), "".concat(prefixCls, "-bar"))
346
+ })), /*#__PURE__*/_react.default.createElement(SortIcons, {
347
+ id: column.id
348
+ }));
349
+ }));
350
+ })), /*#__PURE__*/_react.default.createElement("div", _objectSpread(_objectSpread({}, getTableBodyProps()), {}, {
351
+ className: (0, _classnames6.default)("".concat(prefixCls, "-tbody"), _defineProperty({}, "".concat(prefixCls, "-tbody-scroll"), !loadMoreItems)),
352
+ style: getTbodyStyle()
353
+ }), !loading && !rows.length && /*#__PURE__*/_react.default.createElement(_Empty.default, {
354
+ description: "\u5F53\u524D\u65E0\u6570\u636E"
355
+ }), /*#__PURE__*/_react.default.createElement(_reactWindowInfiniteLoader.default, {
356
+ isItemLoaded: isItemLoaded,
357
+ itemCount: itemCount,
358
+ loadMoreItems: loadMoreItems
359
+ }, function (_ref5) {
360
+ var onItemsRendered = _ref5.onItemsRendered,
361
+ ref = _ref5.ref;
362
+ return /*#__PURE__*/_react.default.createElement(_reactWindow.FixedSizeList, {
363
+ itemCount: itemCount,
364
+ onItemsRendered: onItemsRendered,
365
+ height: scrollY || data.length * DEFAULT_ROW_HEIGHT,
366
+ itemSize: DEFAULT_ROW_HEIGHT,
367
+ width: resizeColumn ? theadRowWidthRef.current : '100%',
368
+ ref: ref,
369
+ className: "".concat(prefixCls, "-list")
370
+ }, RenderRow);
371
+ }))));
372
+ }
373
+
374
+ var _default = Table;
375
+ exports.default = _default;
@@ -0,0 +1,36 @@
1
+ /// <reference types="react" />
2
+ import { Row, IdType } from 'react-table';
3
+ export declare type TSortOrder = 'ascend' | 'descend' | false;
4
+ export interface ISort<T> {
5
+ id: IdType<T>;
6
+ desc?: boolean;
7
+ }
8
+ export interface IColumn<T extends object> {
9
+ title: string;
10
+ dataIndex: string;
11
+ render?: (value: any, row: Record<string, T>, index: number) => React.ReactNode;
12
+ width?: number;
13
+ minWidth?: number;
14
+ sorter?: boolean | 'string' | 'number' | 'basic' | 'datetime' | 'alphanumeric' | ((rowA: Row<T>, rowB: Row<T>, columnId: IdType<T>, desc?: boolean) => number);
15
+ sortOrder?: TSortOrder;
16
+ sortDirections?: Array<'ascend' | 'descend'>;
17
+ selected?: boolean;
18
+ }
19
+ export interface ITableProps<T extends object> {
20
+ columns: IColumn<T>[];
21
+ data: T[];
22
+ total?: number;
23
+ scrollY?: number;
24
+ onRowSelected?: (row: T) => void;
25
+ loadMore?: (startIndex: number, stopIndex: number) => void | Promise<void>;
26
+ hasNextPage?: boolean;
27
+ loading?: boolean;
28
+ renderHeaderLeft?: () => React.ReactNode;
29
+ renderHeaderRight?: () => React.ReactNode;
30
+ sortable?: boolean;
31
+ onChange?: (sort: ISort<T>) => void;
32
+ defaultSort?: ISort<T>;
33
+ sortDirections?: Array<'ascend' | 'descend'>;
34
+ resizeColumn?: boolean;
35
+ showHeader?: boolean;
36
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });