@aloudata/aloudata-design 0.1.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. package/README.md +82 -0
  2. package/es/Button/demo/Icon/index.d.ts +3 -0
  3. package/es/Button/demo/Icon/index.js +67 -0
  4. package/es/Button/demo/Icon/index.less +6 -0
  5. package/es/Button/demo/basic/index.d.ts +4 -0
  6. package/es/Button/demo/basic/index.js +57 -0
  7. package/es/Button/demo/basic/index.less +7 -0
  8. package/es/Button/demo/disable/index.d.ts +3 -0
  9. package/es/Button/demo/disable/index.js +23 -0
  10. package/es/Button/demo/disable/index.less +0 -0
  11. package/es/Button/demo/href/index.d.ts +2 -0
  12. package/es/Button/demo/href/index.js +17 -0
  13. package/es/Button/demo/loading/index.d.ts +3 -0
  14. package/es/Button/demo/loading/index.js +37 -0
  15. package/es/Button/demo/loading/index.less +6 -0
  16. package/es/Button/index.d.ts +50 -0
  17. package/es/Button/index.js +108 -0
  18. package/es/Button/style/index.d.ts +2 -0
  19. package/es/Button/style/index.js +2 -0
  20. package/es/Button/style/index.less +255 -0
  21. package/es/Dropdown/Button.d.ts +69 -0
  22. package/es/Dropdown/Button.js +39 -0
  23. package/es/Dropdown/demo/basic/index.d.ts +4 -0
  24. package/es/Dropdown/demo/basic/index.js +18 -0
  25. package/es/Dropdown/demo/button/index.d.ts +3 -0
  26. package/es/Dropdown/demo/button/index.js +159 -0
  27. package/es/Dropdown/demo/button/index.less +9 -0
  28. package/es/Dropdown/demo/placement/index.d.ts +2 -0
  29. package/es/Dropdown/demo/placement/index.js +40 -0
  30. package/es/Dropdown/demo/subMenu/index.d.ts +2 -0
  31. package/es/Dropdown/demo/subMenu/index.js +42 -0
  32. package/es/Dropdown/demo/trigger/index.d.ts +2 -0
  33. package/es/Dropdown/demo/trigger/index.js +17 -0
  34. package/es/Dropdown/index.d.ts +59 -0
  35. package/es/Dropdown/index.js +33 -0
  36. package/es/Dropdown/style/index.d.ts +2 -0
  37. package/es/Dropdown/style/index.js +2 -0
  38. package/es/Dropdown/style/index.less +40 -0
  39. package/es/Icon/iconfont/demo.css +539 -0
  40. package/es/Icon/iconfont/demo_index.html +628 -0
  41. package/es/Icon/iconfont/iconfont.css +93 -0
  42. package/es/Icon/iconfont/iconfont.js +46 -0
  43. package/es/Icon/iconfont/iconfont.json +142 -0
  44. package/es/Icon/iconfont/iconfont.ttf +0 -0
  45. package/es/Icon/iconfont/iconfont.woff +0 -0
  46. package/es/Icon/iconfont/iconfont.woff2 +0 -0
  47. package/es/Icon/index.d.ts +11 -0
  48. package/es/Icon/index.js +42 -0
  49. package/es/Icon/index.less +32 -0
  50. package/es/Input/components/Group/index.d.ts +15 -0
  51. package/es/Input/components/Group/index.js +12 -0
  52. package/es/Input/components/Password/index.d.ts +10 -0
  53. package/es/Input/components/Password/index.js +20 -0
  54. package/es/Input/components/TextArea/index.d.ts +52 -0
  55. package/es/Input/components/TextArea/index.js +14 -0
  56. package/es/Input/demo/allowClear/index.d.ts +3 -0
  57. package/es/Input/demo/allowClear/index.js +11 -0
  58. package/es/Input/demo/allowClear/index.less +0 -0
  59. package/es/Input/demo/basic/index.d.ts +4 -0
  60. package/es/Input/demo/basic/index.js +65 -0
  61. package/es/Input/demo/basic/index.less +6 -0
  62. package/es/Input/demo/gourp/index.d.ts +2 -0
  63. package/es/Input/demo/gourp/index.js +67 -0
  64. package/es/Input/demo/password/index.d.ts +3 -0
  65. package/es/Input/demo/password/index.js +21 -0
  66. package/es/Input/demo/password/index.less +0 -0
  67. package/es/Input/demo/prefix/index.d.ts +3 -0
  68. package/es/Input/demo/prefix/index.js +17 -0
  69. package/es/Input/demo/prefix/index.less +0 -0
  70. package/es/Input/demo/showCount/index.d.ts +3 -0
  71. package/es/Input/demo/showCount/index.js +17 -0
  72. package/es/Input/demo/showCount/index.less +0 -0
  73. package/es/Input/demo/textArea/autoSize.d.ts +2 -0
  74. package/es/Input/demo/textArea/autoSize.js +50 -0
  75. package/es/Input/index.d.ts +65 -0
  76. package/es/Input/index.js +46 -0
  77. package/es/Input/style/index.d.ts +2 -0
  78. package/es/Input/style/index.js +2 -0
  79. package/es/Input/style/index.less +62 -0
  80. package/es/Menu/Divider.d.ts +5 -0
  81. package/es/Menu/Divider.js +15 -0
  82. package/es/Menu/MenuItem.d.ts +17 -0
  83. package/es/Menu/MenuItem.js +15 -0
  84. package/es/Menu/SubMenu.d.ts +26 -0
  85. package/es/Menu/SubMenu.js +29 -0
  86. package/es/Menu/index.d.ts +20 -0
  87. package/es/Menu/index.js +31 -0
  88. package/es/Menu/style/index.d.ts +2 -0
  89. package/es/Menu/style/index.js +2 -0
  90. package/es/Menu/style/index.less +33 -0
  91. package/es/Select/BaseSelect.d.ts +5 -0
  92. package/es/Select/BaseSelect.js +400 -0
  93. package/es/Select/OptionsList/OptGroup.d.ts +7 -0
  94. package/es/Select/OptionsList/OptGroup.js +6 -0
  95. package/es/Select/OptionsList/OptionItem.d.ts +35 -0
  96. package/es/Select/OptionsList/OptionItem.js +157 -0
  97. package/es/Select/OptionsList/Options.d.ts +7 -0
  98. package/es/Select/OptionsList/Options.js +6 -0
  99. package/es/Select/OptionsList/index.d.ts +4 -0
  100. package/es/Select/OptionsList/index.js +187 -0
  101. package/es/Select/Selector/index.d.ts +4 -0
  102. package/es/Select/Selector/index.js +249 -0
  103. package/es/Select/VirtualList.d.ts +5 -0
  104. package/es/Select/VirtualList.js +29 -0
  105. package/es/Select/demo/disabled/index.d.ts +2 -0
  106. package/es/Select/demo/disabled/index.js +50 -0
  107. package/es/Select/demo/multiple/index.d.ts +2 -0
  108. package/es/Select/demo/multiple/index.js +140 -0
  109. package/es/Select/demo/options/index.d.ts +2 -0
  110. package/es/Select/demo/options/index.js +55 -0
  111. package/es/Select/demo/single/index.d.ts +2 -0
  112. package/es/Select/demo/single/index.js +86 -0
  113. package/es/Select/hooks/useCacheOption.d.ts +9 -0
  114. package/es/Select/hooks/useCacheOption.js +107 -0
  115. package/es/Select/index.d.ts +12 -0
  116. package/es/Select/index.js +9 -0
  117. package/es/Select/interface.d.ts +221 -0
  118. package/es/Select/interface.js +1 -0
  119. package/es/Select/style/index.d.ts +2 -0
  120. package/es/Select/style/index.js +2 -0
  121. package/es/Select/style/index.less +539 -0
  122. package/es/Select/utils.d.ts +21 -0
  123. package/es/Select/utils.js +193 -0
  124. package/es/Tabs/TabPane.d.ts +21 -0
  125. package/es/Tabs/TabPane.js +12 -0
  126. package/es/Tabs/demo/adaptHeight/index.d.ts +3 -0
  127. package/es/Tabs/demo/adaptHeight/index.js +19 -0
  128. package/es/Tabs/demo/adaptHeight/index.less +3 -0
  129. package/es/Tabs/demo/basic/index.d.ts +4 -0
  130. package/es/Tabs/demo/basic/index.js +44 -0
  131. package/es/Tabs/demo/basic/index.less +5 -0
  132. package/es/Tabs/demo/horizontalScroll/index.d.ts +3 -0
  133. package/es/Tabs/demo/horizontalScroll/index.js +30 -0
  134. package/es/Tabs/demo/horizontalScroll/index.less +3 -0
  135. package/es/Tabs/index.d.ts +41 -0
  136. package/es/Tabs/index.js +42 -0
  137. package/es/Tabs/style/index.d.ts +2 -0
  138. package/es/Tabs/style/index.js +2 -0
  139. package/es/Tabs/style/index.less +61 -0
  140. package/es/Tooltip/demo/basic/index.d.ts +2 -0
  141. package/es/Tooltip/demo/basic/index.js +7 -0
  142. package/es/Tooltip/demo/overflow/index.d.ts +2 -0
  143. package/es/Tooltip/demo/overflow/index.js +7 -0
  144. package/es/Tooltip/demo/placement/index.d.ts +6 -0
  145. package/es/Tooltip/demo/placement/index.js +70 -0
  146. package/es/Tooltip/demo/placement/index.less +7 -0
  147. package/es/Tooltip/demo/trigger/index.d.ts +3 -0
  148. package/es/Tooltip/demo/trigger/index.js +20 -0
  149. package/es/Tooltip/demo/trigger/index.less +5 -0
  150. package/es/Tooltip/index.d.ts +63 -0
  151. package/es/Tooltip/index.js +31 -0
  152. package/es/Tooltip/style/index.d.ts +2 -0
  153. package/es/Tooltip/style/index.js +2 -0
  154. package/es/Tooltip/style/index.less +14 -0
  155. package/es/_utils/hooks/useControlledState.d.ts +2 -0
  156. package/es/_utils/hooks/useControlledState.js +54 -0
  157. package/es/_utils/hooks/usePrefixCls.d.ts +2 -0
  158. package/es/_utils/hooks/usePrefixCls.js +14 -0
  159. package/es/index.d.ts +8 -0
  160. package/es/index.js +8 -0
  161. package/es/style/index.d.ts +2 -0
  162. package/es/style/index.js +2 -0
  163. package/es/style/index.less +3 -0
  164. package/es/style/mixins/index.less +0 -0
  165. package/es/style/themes/default/index.less +36 -0
  166. package/es/style/themes/default/themeColor.less +259 -0
  167. package/lib/Button/demo/Icon/index.d.ts +3 -0
  168. package/lib/Button/demo/Icon/index.js +82 -0
  169. package/lib/Button/demo/Icon/index.less +6 -0
  170. package/lib/Button/demo/basic/index.d.ts +4 -0
  171. package/lib/Button/demo/basic/index.js +73 -0
  172. package/lib/Button/demo/basic/index.less +7 -0
  173. package/lib/Button/demo/disable/index.d.ts +3 -0
  174. package/lib/Button/demo/disable/index.js +37 -0
  175. package/lib/Button/demo/disable/index.less +0 -0
  176. package/lib/Button/demo/href/index.d.ts +2 -0
  177. package/lib/Button/demo/href/index.js +30 -0
  178. package/lib/Button/demo/loading/index.d.ts +3 -0
  179. package/lib/Button/demo/loading/index.js +51 -0
  180. package/lib/Button/demo/loading/index.less +6 -0
  181. package/lib/Button/index.d.ts +50 -0
  182. package/lib/Button/index.js +124 -0
  183. package/lib/Button/style/index.d.ts +2 -0
  184. package/lib/Button/style/index.js +5 -0
  185. package/lib/Button/style/index.less +255 -0
  186. package/lib/Dropdown/Button.d.ts +69 -0
  187. package/lib/Dropdown/Button.js +52 -0
  188. package/lib/Dropdown/demo/basic/index.d.ts +4 -0
  189. package/lib/Dropdown/demo/basic/index.js +35 -0
  190. package/lib/Dropdown/demo/button/index.d.ts +3 -0
  191. package/lib/Dropdown/demo/button/index.js +182 -0
  192. package/lib/Dropdown/demo/button/index.less +9 -0
  193. package/lib/Dropdown/demo/placement/index.d.ts +2 -0
  194. package/lib/Dropdown/demo/placement/index.js +56 -0
  195. package/lib/Dropdown/demo/subMenu/index.d.ts +2 -0
  196. package/lib/Dropdown/demo/subMenu/index.js +59 -0
  197. package/lib/Dropdown/demo/trigger/index.d.ts +2 -0
  198. package/lib/Dropdown/demo/trigger/index.js +32 -0
  199. package/lib/Dropdown/index.d.ts +59 -0
  200. package/lib/Dropdown/index.js +47 -0
  201. package/lib/Dropdown/style/index.d.ts +2 -0
  202. package/lib/Dropdown/style/index.js +5 -0
  203. package/lib/Dropdown/style/index.less +40 -0
  204. package/lib/Icon/iconfont/demo.css +539 -0
  205. package/lib/Icon/iconfont/demo_index.html +628 -0
  206. package/lib/Icon/iconfont/iconfont.css +93 -0
  207. package/lib/Icon/iconfont/iconfont.js +48 -0
  208. package/lib/Icon/iconfont/iconfont.json +142 -0
  209. package/lib/Icon/iconfont/iconfont.ttf +0 -0
  210. package/lib/Icon/iconfont/iconfont.woff +0 -0
  211. package/lib/Icon/iconfont/iconfont.woff2 +0 -0
  212. package/lib/Icon/index.d.ts +11 -0
  213. package/lib/Icon/index.js +54 -0
  214. package/lib/Icon/index.less +32 -0
  215. package/lib/Input/components/Group/index.d.ts +15 -0
  216. package/lib/Input/components/Group/index.js +24 -0
  217. package/lib/Input/components/Password/index.d.ts +10 -0
  218. package/lib/Input/components/Password/index.js +33 -0
  219. package/lib/Input/components/TextArea/index.d.ts +52 -0
  220. package/lib/Input/components/TextArea/index.js +26 -0
  221. package/lib/Input/demo/allowClear/index.d.ts +3 -0
  222. package/lib/Input/demo/allowClear/index.js +25 -0
  223. package/lib/Input/demo/allowClear/index.less +0 -0
  224. package/lib/Input/demo/basic/index.d.ts +4 -0
  225. package/lib/Input/demo/basic/index.js +80 -0
  226. package/lib/Input/demo/basic/index.less +6 -0
  227. package/lib/Input/demo/gourp/index.d.ts +2 -0
  228. package/lib/Input/demo/gourp/index.js +81 -0
  229. package/lib/Input/demo/password/index.d.ts +3 -0
  230. package/lib/Input/demo/password/index.js +35 -0
  231. package/lib/Input/demo/password/index.less +0 -0
  232. package/lib/Input/demo/prefix/index.d.ts +3 -0
  233. package/lib/Input/demo/prefix/index.js +32 -0
  234. package/lib/Input/demo/prefix/index.less +0 -0
  235. package/lib/Input/demo/showCount/index.d.ts +3 -0
  236. package/lib/Input/demo/showCount/index.js +31 -0
  237. package/lib/Input/demo/showCount/index.less +0 -0
  238. package/lib/Input/demo/textArea/autoSize.d.ts +2 -0
  239. package/lib/Input/demo/textArea/autoSize.js +63 -0
  240. package/lib/Input/index.d.ts +65 -0
  241. package/lib/Input/index.js +63 -0
  242. package/lib/Input/style/index.d.ts +2 -0
  243. package/lib/Input/style/index.js +5 -0
  244. package/lib/Input/style/index.less +62 -0
  245. package/lib/Menu/Divider.d.ts +5 -0
  246. package/lib/Menu/Divider.js +28 -0
  247. package/lib/Menu/MenuItem.d.ts +17 -0
  248. package/lib/Menu/MenuItem.js +28 -0
  249. package/lib/Menu/SubMenu.d.ts +26 -0
  250. package/lib/Menu/SubMenu.js +44 -0
  251. package/lib/Menu/index.d.ts +20 -0
  252. package/lib/Menu/index.js +49 -0
  253. package/lib/Menu/style/index.d.ts +2 -0
  254. package/lib/Menu/style/index.js +5 -0
  255. package/lib/Menu/style/index.less +33 -0
  256. package/lib/Select/BaseSelect.d.ts +5 -0
  257. package/lib/Select/BaseSelect.js +433 -0
  258. package/lib/Select/OptionsList/OptGroup.d.ts +7 -0
  259. package/lib/Select/OptionsList/OptGroup.js +14 -0
  260. package/lib/Select/OptionsList/OptionItem.d.ts +35 -0
  261. package/lib/Select/OptionsList/OptionItem.js +185 -0
  262. package/lib/Select/OptionsList/Options.d.ts +7 -0
  263. package/lib/Select/OptionsList/Options.js +14 -0
  264. package/lib/Select/OptionsList/index.d.ts +4 -0
  265. package/lib/Select/OptionsList/index.js +207 -0
  266. package/lib/Select/Selector/index.d.ts +4 -0
  267. package/lib/Select/Selector/index.js +273 -0
  268. package/lib/Select/VirtualList.d.ts +5 -0
  269. package/lib/Select/VirtualList.js +42 -0
  270. package/lib/Select/demo/disabled/index.d.ts +2 -0
  271. package/lib/Select/demo/disabled/index.js +64 -0
  272. package/lib/Select/demo/multiple/index.d.ts +2 -0
  273. package/lib/Select/demo/multiple/index.js +154 -0
  274. package/lib/Select/demo/options/index.d.ts +2 -0
  275. package/lib/Select/demo/options/index.js +69 -0
  276. package/lib/Select/demo/single/index.d.ts +2 -0
  277. package/lib/Select/demo/single/index.js +99 -0
  278. package/lib/Select/hooks/useCacheOption.d.ts +9 -0
  279. package/lib/Select/hooks/useCacheOption.js +113 -0
  280. package/lib/Select/index.d.ts +12 -0
  281. package/lib/Select/index.js +34 -0
  282. package/lib/Select/interface.d.ts +221 -0
  283. package/lib/Select/interface.js +5 -0
  284. package/lib/Select/style/index.d.ts +2 -0
  285. package/lib/Select/style/index.js +5 -0
  286. package/lib/Select/style/index.less +539 -0
  287. package/lib/Select/utils.d.ts +21 -0
  288. package/lib/Select/utils.js +233 -0
  289. package/lib/Tabs/TabPane.d.ts +21 -0
  290. package/lib/Tabs/TabPane.js +24 -0
  291. package/lib/Tabs/demo/adaptHeight/index.d.ts +3 -0
  292. package/lib/Tabs/demo/adaptHeight/index.js +34 -0
  293. package/lib/Tabs/demo/adaptHeight/index.less +3 -0
  294. package/lib/Tabs/demo/basic/index.d.ts +4 -0
  295. package/lib/Tabs/demo/basic/index.js +67 -0
  296. package/lib/Tabs/demo/basic/index.less +5 -0
  297. package/lib/Tabs/demo/horizontalScroll/index.d.ts +3 -0
  298. package/lib/Tabs/demo/horizontalScroll/index.js +45 -0
  299. package/lib/Tabs/demo/horizontalScroll/index.less +3 -0
  300. package/lib/Tabs/index.d.ts +41 -0
  301. package/lib/Tabs/index.js +58 -0
  302. package/lib/Tabs/style/index.d.ts +2 -0
  303. package/lib/Tabs/style/index.js +5 -0
  304. package/lib/Tabs/style/index.less +61 -0
  305. package/lib/Tooltip/demo/basic/index.d.ts +2 -0
  306. package/lib/Tooltip/demo/basic/index.js +20 -0
  307. package/lib/Tooltip/demo/overflow/index.d.ts +2 -0
  308. package/lib/Tooltip/demo/overflow/index.js +20 -0
  309. package/lib/Tooltip/demo/placement/index.d.ts +6 -0
  310. package/lib/Tooltip/demo/placement/index.js +86 -0
  311. package/lib/Tooltip/demo/placement/index.less +7 -0
  312. package/lib/Tooltip/demo/trigger/index.d.ts +3 -0
  313. package/lib/Tooltip/demo/trigger/index.js +34 -0
  314. package/lib/Tooltip/demo/trigger/index.less +5 -0
  315. package/lib/Tooltip/index.d.ts +63 -0
  316. package/lib/Tooltip/index.js +44 -0
  317. package/lib/Tooltip/style/index.d.ts +2 -0
  318. package/lib/Tooltip/style/index.js +5 -0
  319. package/lib/Tooltip/style/index.less +14 -0
  320. package/lib/_utils/hooks/useControlledState.d.ts +2 -0
  321. package/lib/_utils/hooks/useControlledState.js +63 -0
  322. package/lib/_utils/hooks/usePrefixCls.d.ts +2 -0
  323. package/lib/_utils/hooks/usePrefixCls.js +27 -0
  324. package/lib/index.d.ts +8 -0
  325. package/lib/index.js +63 -0
  326. package/lib/style/index.d.ts +2 -0
  327. package/lib/style/index.js +5 -0
  328. package/lib/style/index.less +3 -0
  329. package/lib/style/mixins/index.less +0 -0
  330. package/lib/style/themes/default/index.less +36 -0
  331. package/lib/style/themes/default/themeColor.less +259 -0
  332. package/package.json +87 -0
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ import { IOption as Option, TMaybeArray as MaybeArray } from '../interface';
3
+ interface IGroupProps {
4
+ option: Option;
5
+ prefixCls: string;
6
+ groupStyle?: React.CSSProperties;
7
+ }
8
+ interface ITooltipProps {
9
+ render: JSX.Element & React.ReactNode;
10
+ getContainer?: (node: HTMLElement) => HTMLElement;
11
+ tooltip?: string;
12
+ }
13
+ interface IOptionProp {
14
+ option: Option;
15
+ selected: MaybeArray<string | number> | null | undefined;
16
+ prefixCls?: string;
17
+ labelRenderer: (option: Option, isGruop: false) => React.ReactNode;
18
+ onOptionClick?: (selectedValue: string | number) => void;
19
+ index: number;
20
+ optionStyle?: React.CSSProperties;
21
+ multiple?: boolean;
22
+ activeIndex: number;
23
+ setActiveIndex: React.Dispatch<React.SetStateAction<number>>;
24
+ }
25
+ export declare const RenderLabelIcon: ({ isSelected, multiple, disabled, prefixCls, isIndeterminate }: {
26
+ isSelected: boolean;
27
+ multiple: boolean;
28
+ disabled?: boolean | undefined;
29
+ prefixCls?: string | undefined;
30
+ isIndeterminate?: boolean | undefined;
31
+ }) => JSX.Element | null;
32
+ export declare const ForwardRenderGroup: React.ForwardRefExoticComponent<IGroupProps & React.RefAttributes<unknown>>;
33
+ export declare const ForwardRenderOption: React.ForwardRefExoticComponent<IOptionProp & React.RefAttributes<unknown>>;
34
+ export declare const ForwardRenderTooltip: React.ForwardRefExoticComponent<ITooltipProps & React.RefAttributes<unknown>>;
35
+ export {};
@@ -0,0 +1,185 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RenderLabelIcon = exports.ForwardRenderTooltip = exports.ForwardRenderOption = exports.ForwardRenderGroup = void 0;
7
+
8
+ require("antd/es/tooltip/style");
9
+
10
+ var _tooltip = _interopRequireDefault(require("antd/es/tooltip"));
11
+
12
+ require("antd/es/checkbox/style");
13
+
14
+ var _checkbox = _interopRequireDefault(require("antd/es/checkbox"));
15
+
16
+ var _react = _interopRequireDefault(require("react"));
17
+
18
+ var _lodash = require("lodash");
19
+
20
+ var _classnames2 = _interopRequireDefault(require("classnames"));
21
+
22
+ var _Icon = _interopRequireDefault(require("../../Icon"));
23
+
24
+ var _excluded = ["value", "disabled", "tooltip", "groupValue", "groupLabel", "label"];
25
+
26
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
+
28
+ 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; }
29
+
30
+ 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; }
31
+
32
+ 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; }
33
+
34
+ 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; }
35
+
36
+ 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; }
37
+
38
+ var FIRST_INDEX = 0;
39
+ var INVALID_INDEX = -1; // ================= RenderGroup =====================
40
+
41
+ var RenderGroup = function RenderGroup(props, ref) {
42
+ var _props$option = props.option,
43
+ value = _props$option.value,
44
+ label = _props$option.label,
45
+ prefixCls = props.prefixCls,
46
+ groupStyle = props.groupStyle;
47
+ return /*#__PURE__*/_react.default.createElement("div", {
48
+ ref: ref,
49
+ className: "".concat(prefixCls, "-list-group"),
50
+ style: groupStyle
51
+ }, label !== undefined ? label : value);
52
+ };
53
+
54
+ var RenderLabelIcon = function RenderLabelIcon(_ref) {
55
+ var _ref$isSelected = _ref.isSelected,
56
+ isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
57
+ _ref$multiple = _ref.multiple,
58
+ multiple = _ref$multiple === void 0 ? false : _ref$multiple,
59
+ _ref$disabled = _ref.disabled,
60
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
61
+ prefixCls = _ref.prefixCls,
62
+ _ref$isIndeterminate = _ref.isIndeterminate,
63
+ isIndeterminate = _ref$isIndeterminate === void 0 ? false : _ref$isIndeterminate;
64
+
65
+ if (multiple) {
66
+ return /*#__PURE__*/_react.default.createElement("div", {
67
+ className: "".concat(prefixCls, "-list-option-icon"),
68
+ key: "".concat(String(isSelected))
69
+ }, /*#__PURE__*/_react.default.createElement(_checkbox.default, {
70
+ className: "".concat(prefixCls, "-list-option-icon-checkbox"),
71
+ checked: isSelected,
72
+ disabled: disabled,
73
+ onChange: _lodash.noop,
74
+ indeterminate: isIndeterminate
75
+ }));
76
+ }
77
+
78
+ if (isSelected) {
79
+ return /*#__PURE__*/_react.default.createElement("div", {
80
+ className: "".concat(prefixCls, "-list-option-icon"),
81
+ key: "".concat(String(isSelected))
82
+ }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
83
+ type: "check",
84
+ size: 16
85
+ }));
86
+ }
87
+
88
+ return null;
89
+ }; // ================= RenderOption =====================
90
+
91
+
92
+ exports.RenderLabelIcon = RenderLabelIcon;
93
+
94
+ var RenderOption = function RenderOption(props, ref) {
95
+ var _classnames;
96
+
97
+ var _props$option2 = props.option,
98
+ value = _props$option2.value,
99
+ disabled = _props$option2.disabled,
100
+ tooltip = _props$option2.tooltip,
101
+ groupValue = _props$option2.groupValue,
102
+ groupLabel = _props$option2.groupLabel,
103
+ label = _props$option2.label,
104
+ restOption = _objectWithoutProperties(_props$option2, _excluded),
105
+ selected = props.selected,
106
+ onOptionClick = props.onOptionClick,
107
+ labelRenderer = props.labelRenderer,
108
+ prefixCls = props.prefixCls,
109
+ optionStyle = props.optionStyle,
110
+ multiple = props.multiple,
111
+ index = props.index,
112
+ activeIndex = props.activeIndex,
113
+ setActiveIndex = props.setActiveIndex;
114
+
115
+ var isSelected = typeof selected === 'string' || typeof selected === 'number' || (0, _lodash.isNull)(selected) || typeof selected === 'undefined' ? selected === value : selected.includes(value);
116
+
117
+ var onClick = function onClick(e) {
118
+ onOptionClick === null || onOptionClick === void 0 ? void 0 : onOptionClick(value);
119
+ e.preventDefault();
120
+ };
121
+
122
+ var labelNode = labelRenderer(_objectSpread({
123
+ value: value,
124
+ disabled: disabled,
125
+ tooltip: tooltip,
126
+ groupValue: groupValue,
127
+ groupLabel: groupLabel,
128
+ label: label
129
+ }, restOption), false);
130
+ return /*#__PURE__*/_react.default.createElement("div", {
131
+ ref: ref,
132
+ className: "".concat(prefixCls, "-list-option-container"),
133
+ style: optionStyle
134
+ }, /*#__PURE__*/_react.default.createElement("div", {
135
+ onMouseEnter: function onMouseEnter() {
136
+ return setActiveIndex(index);
137
+ },
138
+ onMouseLeave: function onMouseLeave() {
139
+ return setActiveIndex(INVALID_INDEX);
140
+ },
141
+ className: (0, _classnames2.default)("".concat(prefixCls, "-list-option"), (_classnames = {}, _defineProperty(_classnames, "".concat(prefixCls, "-list-option-isSelected"), isSelected), _defineProperty(_classnames, "".concat(prefixCls, "-list-option-isHover"), !disabled && index === activeIndex), _defineProperty(_classnames, "".concat(prefixCls, "-list-option-disabled"), disabled), _defineProperty(_classnames, "".concat(prefixCls, "-list-option-nomargin"), index === FIRST_INDEX), _classnames)),
142
+ onClick: disabled ? undefined : onClick,
143
+ onKeyDown: _lodash.noop,
144
+ "aria-hidden": "true"
145
+ }, /*#__PURE__*/_react.default.createElement(RenderLabelIcon, {
146
+ isSelected: isSelected,
147
+ multiple: !!multiple,
148
+ disabled: !!disabled,
149
+ prefixCls: prefixCls
150
+ }), labelNode));
151
+ }; // ================= RenderTooltip =====================
152
+
153
+
154
+ var RenderTooltip = function RenderTooltip(props, ref) {
155
+ var tooltip = props.tooltip,
156
+ render = props.render,
157
+ getContainer = props.getContainer;
158
+
159
+ if (tooltip) {
160
+ return /*#__PURE__*/_react.default.createElement("div", {
161
+ ref: ref
162
+ }, /*#__PURE__*/_react.default.createElement(_tooltip.default, {
163
+ title: tooltip,
164
+ destroyTooltipOnHide: true,
165
+ placement: "right",
166
+ getTooltipContainer: getContainer
167
+ }, /*#__PURE__*/_react.default.createElement("div", null, render)));
168
+ }
169
+
170
+ return /*#__PURE__*/_react.default.createElement("div", {
171
+ ref: ref
172
+ }, render);
173
+ };
174
+
175
+ var ForwardRenderGroup = /*#__PURE__*/_react.default.forwardRef(RenderGroup);
176
+
177
+ exports.ForwardRenderGroup = ForwardRenderGroup;
178
+
179
+ var ForwardRenderOption = /*#__PURE__*/_react.default.forwardRef(RenderOption);
180
+
181
+ exports.ForwardRenderOption = ForwardRenderOption;
182
+
183
+ var ForwardRenderTooltip = /*#__PURE__*/_react.default.forwardRef(RenderTooltip);
184
+
185
+ exports.ForwardRenderTooltip = ForwardRenderTooltip;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { IOptionProps } from '../interface';
3
+ export interface IOptionFC extends React.FC<IOptionProps> {
4
+ isSelectOption: boolean;
5
+ }
6
+ declare const Option: IOptionFC;
7
+ export default Option;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var Option = function Option() {
9
+ return null;
10
+ };
11
+
12
+ Option.isSelectOption = true;
13
+ var _default = Option;
14
+ exports.default = _default;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { IOptionsListProps } from '../interface';
3
+ declare const ForwardRenderOptionList: React.ForwardRefExoticComponent<IOptionsListProps & React.RefAttributes<unknown>>;
4
+ export default ForwardRenderOptionList;
@@ -0,0 +1,207 @@
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 _classnames2 = _interopRequireDefault(require("classnames"));
13
+
14
+ var _VirtualList = _interopRequireDefault(require("../VirtualList"));
15
+
16
+ var _OptionItem = require("./OptionItem");
17
+
18
+ var _excluded = ["input", "prefixCls", "data", "groupStyle", "height", "itemHeight", "selected", "optionChecked", "tempValue", "value", "placeholder", "notFoundContent", "onValueChange", "onTempValueChange", "setTempValue", "onInputChange", "onOptionClick", "activeIndex", "multiple", "visible", "style", "setActiveIndex"];
19
+
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+
22
+ 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); }
23
+
24
+ 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; }
25
+
26
+ 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; }
27
+
28
+ 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; }
29
+
30
+ 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; }
31
+
32
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
33
+
34
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
35
+
36
+ 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); }
37
+
38
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
39
+
40
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
41
+
42
+ 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; }
43
+
44
+ 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; }
45
+
46
+ 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; }
47
+
48
+ var ZERO_LENGTH = 0;
49
+ var DEFAULT_ACTIVE_INDEX = -1;
50
+
51
+ var OptionsList = function OptionsList(props, ref) {
52
+ var input = props.input,
53
+ prefixCls = props.prefixCls,
54
+ data = props.data,
55
+ groupStyle = props.groupStyle,
56
+ height = props.height,
57
+ itemHeight = props.itemHeight,
58
+ selected = props.selected,
59
+ optionChecked = props.optionChecked,
60
+ tempValue = props.tempValue,
61
+ value = props.value,
62
+ placeholder = props.placeholder,
63
+ notFoundContent = props.notFoundContent,
64
+ onValueChange = props.onValueChange,
65
+ onTempValueChange = props.onTempValueChange,
66
+ setTempValue = props.setTempValue,
67
+ onInputChange = props.onInputChange,
68
+ onOptionClick = props.onOptionClick,
69
+ activeIndex = props.activeIndex,
70
+ multiple = props.multiple,
71
+ visible = props.visible,
72
+ style = props.style,
73
+ setActiveIndex = props.setActiveIndex,
74
+ restProps = _objectWithoutProperties(props, _excluded);
75
+
76
+ var selectAllRef = (0, _react.useRef)(null);
77
+ var OptionListRef = (0, _react.useRef)(null);
78
+ var VirtualListRef = (0, _react.useRef)(null);
79
+ (0, _react.useImperativeHandle)(ref, function () {
80
+ return {
81
+ onConfirm: function onConfirm() {
82
+ _onConfirm();
83
+ },
84
+ onCancel: function onCancel() {
85
+ _onCancel();
86
+ },
87
+ onFocus: function onFocus() {
88
+ var _OptionListRef$curren;
89
+
90
+ OptionListRef === null || OptionListRef === void 0 ? void 0 : (_OptionListRef$curren = OptionListRef.current) === null || _OptionListRef$curren === void 0 ? void 0 : _OptionListRef$curren.focus();
91
+ },
92
+ onBlur: function onBlur() {
93
+ var _OptionListRef$curren2;
94
+
95
+ OptionListRef === null || OptionListRef === void 0 ? void 0 : (_OptionListRef$curren2 = OptionListRef.current) === null || _OptionListRef$curren2 === void 0 ? void 0 : _OptionListRef$curren2.blur();
96
+ },
97
+ scrollIntoView: function scrollIntoView(index, offset) {
98
+ _scrollIntoView(index, offset);
99
+ }
100
+ };
101
+ });
102
+ var filterflattenOptions = (0, _react.useMemo)(function () {
103
+ return data.filter(function (filterOption) {
104
+ return !filterOption.isSelectOptGroup;
105
+ });
106
+ }, [data]); // 有选中值
107
+
108
+ var isChecked = (0, _react.useMemo)(function () {
109
+ return (selected === null || selected === void 0 ? void 0 : selected.length) >= 1;
110
+ }, [selected]); // 部分选中
111
+ // 全部列表选项选中
112
+
113
+ var isAllChecked = isChecked && (selected === null || selected === void 0 ? void 0 : selected.length) === (filterflattenOptions === null || filterflattenOptions === void 0 ? void 0 : filterflattenOptions.length); // ”全部“选项是否选中
114
+
115
+ var allOptionChecked = isAllChecked && Array.isArray(optionChecked) && optionChecked.length === ZERO_LENGTH; // 点击全选
116
+
117
+ var onAllClick = (0, _react.useCallback)(function () {
118
+ onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(allOptionChecked ? null : filterflattenOptions.reduce(function (prev, curr) {
119
+ return [].concat(_toConsumableArray(prev), [curr.value]);
120
+ }, []));
121
+ }, [allOptionChecked, filterflattenOptions, onValueChange]);
122
+ (0, _react.useEffect)(function () {
123
+ if (!visible && !allOptionChecked && multiple && Array.isArray(selected) && selected.length === (filterflattenOptions === null || filterflattenOptions === void 0 ? void 0 : filterflattenOptions.length)) {
124
+ onAllClick();
125
+ }
126
+ }, [visible, selected, multiple, filterflattenOptions, onAllClick, allOptionChecked]);
127
+ var onSingleOptionClick = (0, _react.useCallback)(function (selectedValue) {
128
+ onOptionClick === null || onOptionClick === void 0 ? void 0 : onOptionClick(selectedValue);
129
+ }, [onOptionClick]);
130
+
131
+ var _onConfirm = (0, _react.useCallback)(function () {
132
+ return onTempValueChange(tempValue);
133
+ }, [onTempValueChange, tempValue]);
134
+
135
+ var _onCancel = (0, _react.useCallback)(function () {
136
+ return onTempValueChange([]);
137
+ }, [onTempValueChange]);
138
+
139
+ var _scrollIntoView = function _scrollIntoView(index, offset) {
140
+ var _VirtualListRef$curre;
141
+
142
+ VirtualListRef === null || VirtualListRef === void 0 ? void 0 : (_VirtualListRef$curre = VirtualListRef.current) === null || _VirtualListRef$curre === void 0 ? void 0 : _VirtualListRef$curre.scrollTo({
143
+ index: index,
144
+ offset: offset
145
+ });
146
+ }; // 渲染”全部“选项
147
+
148
+
149
+ var renderAllOptions = function renderAllOptions() {
150
+ return /*#__PURE__*/_react.default.createElement("div", {
151
+ ref: selectAllRef,
152
+ className: (0, _classnames2.default)("".concat(prefixCls, "-list-option-all"), _defineProperty({}, "".concat(prefixCls, "-list-option-all-isSelected"), isChecked)),
153
+ onClick: function onClick(e) {
154
+ e.stopPropagation();
155
+ onAllClick();
156
+ },
157
+ "aria-hidden": "true"
158
+ }, /*#__PURE__*/_react.default.createElement(_OptionItem.RenderLabelIcon, {
159
+ isSelected: allOptionChecked,
160
+ multiple: true,
161
+ prefixCls: prefixCls
162
+ }), "\u5168\u90E8");
163
+ };
164
+
165
+ return /*#__PURE__*/_react.default.createElement("div", {
166
+ className: "".concat(prefixCls, "-list"),
167
+ style: style,
168
+ ref: OptionListRef,
169
+ role: "list",
170
+ "aria-hidden": "true",
171
+ // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
172
+ tabIndex: 0,
173
+ onMouseLeave: function onMouseLeave() {
174
+ return setActiveIndex(DEFAULT_ACTIVE_INDEX);
175
+ }
176
+ }, multiple && renderAllOptions(), data.length > ZERO_LENGTH ? /*#__PURE__*/_react.default.createElement(_VirtualList.default, _objectSpread({
177
+ itemKey: "key",
178
+ prefixCls: prefixCls,
179
+ ref: VirtualListRef,
180
+ data: data,
181
+ height: height,
182
+ itemHeight: itemHeight
183
+ }, restProps), function (option, index) {
184
+ return option.isSelectOptGroup ? /*#__PURE__*/_react.default.createElement(_OptionItem.ForwardRenderGroup, {
185
+ option: option,
186
+ prefixCls: prefixCls,
187
+ groupStyle: groupStyle
188
+ }) : /*#__PURE__*/_react.default.createElement(_OptionItem.ForwardRenderTooltip, {
189
+ tooltip: option === null || option === void 0 ? void 0 : option.tooltip,
190
+ render: /*#__PURE__*/_react.default.createElement(_OptionItem.ForwardRenderOption, _objectSpread({
191
+ option: option,
192
+ prefixCls: prefixCls,
193
+ selected: optionChecked,
194
+ index: index,
195
+ activeIndex: activeIndex,
196
+ multiple: multiple,
197
+ onOptionClick: onSingleOptionClick,
198
+ setActiveIndex: setActiveIndex
199
+ }, restProps))
200
+ });
201
+ }) : notFoundContent);
202
+ };
203
+
204
+ var ForwardRenderOptionList = /*#__PURE__*/_react.default.forwardRef(OptionsList);
205
+
206
+ var _default = ForwardRenderOptionList;
207
+ exports.default = _default;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { ISelectorProps as SelectorProps } from '../interface';
3
+ declare const ForwardSelector: React.ForwardRefExoticComponent<SelectorProps & React.RefAttributes<unknown>>;
4
+ export default ForwardSelector;