amis 1.4.2-beta.6 → 1.5.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 (488) hide show
  1. package/lib/Schema.d.ts +11 -3
  2. package/lib/Schema.js.map +1 -1
  3. package/lib/components/Alert2.d.ts +26 -21
  4. package/lib/components/Alert2.js +11 -4
  5. package/lib/components/Alert2.js.map +2 -2
  6. package/lib/components/AnchorNav.d.ts +22 -21
  7. package/lib/components/AnchorNav.js +7 -3
  8. package/lib/components/AnchorNav.js.map +2 -2
  9. package/lib/components/ArrayInput.d.ts +84 -84
  10. package/lib/components/AssociatedSelection.d.ts +930 -0
  11. package/lib/components/AssociatedSelection.js +89 -0
  12. package/lib/components/AssociatedSelection.js.map +13 -0
  13. package/lib/components/Badge.js +2 -2
  14. package/lib/components/Badge.js.map +2 -2
  15. package/lib/components/Button.js +1 -1
  16. package/lib/components/Button.js.map +2 -2
  17. package/lib/components/{ChainedCheckboxes.d.ts → ChainedSelection.d.ts} +267 -98
  18. package/lib/components/{ChainedCheckboxes.js → ChainedSelection.js} +30 -24
  19. package/lib/components/ChainedSelection.js.map +13 -0
  20. package/lib/components/Checkbox.d.ts +20 -20
  21. package/lib/components/Collapse.d.ts +51 -23
  22. package/lib/components/Collapse.js +70 -11
  23. package/lib/components/Collapse.js.map +2 -2
  24. package/lib/components/CollapseGroup.d.ts +88 -0
  25. package/lib/components/CollapseGroup.js +81 -0
  26. package/lib/components/CollapseGroup.js.map +13 -0
  27. package/lib/components/ColorPicker.d.ts +89 -85
  28. package/lib/components/ColorPicker.js +17 -4
  29. package/lib/components/ColorPicker.js.map +2 -2
  30. package/lib/components/DatePicker.d.ts +84 -84
  31. package/lib/components/DateRangePicker.d.ts +84 -84
  32. package/lib/components/Drawer.js +2 -2
  33. package/lib/components/Drawer.js.map +2 -2
  34. package/lib/components/Editor.d.ts +84 -84
  35. package/lib/components/GridNav.d.ts +52 -0
  36. package/lib/components/GridNav.js +123 -0
  37. package/lib/components/GridNav.js.map +13 -0
  38. package/lib/components/GroupedSelection.d.ts +907 -0
  39. package/lib/components/GroupedSelection.js +48 -0
  40. package/lib/components/GroupedSelection.js.map +13 -0
  41. package/lib/components/InputBox.d.ts +22 -21
  42. package/lib/components/InputBox.js +10 -2
  43. package/lib/components/InputBox.js.map +2 -2
  44. package/lib/components/Link.d.ts +29 -36
  45. package/lib/components/Link.js +14 -15
  46. package/lib/components/Link.js.map +2 -2
  47. package/lib/components/ListGroup.d.ts +21 -21
  48. package/lib/components/ModalManager.js +1 -1
  49. package/lib/components/ModalManager.js.map +2 -2
  50. package/lib/components/MonthRangePicker.d.ts +84 -84
  51. package/lib/components/NumberInput.d.ts +20 -20
  52. package/lib/components/Overlay.js +5 -0
  53. package/lib/components/Overlay.js.map +2 -2
  54. package/lib/components/PickerColumn.d.ts +514 -0
  55. package/lib/components/PickerColumn.js +279 -0
  56. package/lib/components/PickerColumn.js.map +13 -0
  57. package/lib/components/PickerContainer.d.ts +513 -0
  58. package/lib/components/PickerContainer.js +96 -0
  59. package/lib/components/PickerContainer.js.map +13 -0
  60. package/lib/components/PopOver.d.ts +1 -0
  61. package/lib/components/PopOver.js +12 -1
  62. package/lib/components/PopOver.js.map +2 -2
  63. package/lib/components/Progress.d.ts +85 -0
  64. package/lib/components/Progress.js +81 -0
  65. package/lib/components/Progress.js.map +13 -0
  66. package/lib/components/Radios.d.ts +22 -21
  67. package/lib/components/Radios.js +1 -0
  68. package/lib/components/Radios.js.map +2 -2
  69. package/lib/components/Rating.d.ts +21 -21
  70. package/lib/components/ResultBox.d.ts +84 -84
  71. package/lib/components/ResultBox.js +10 -2
  72. package/lib/components/ResultBox.js.map +2 -2
  73. package/lib/components/SearchBox.d.ts +84 -84
  74. package/lib/components/Select.d.ts +245 -237
  75. package/lib/components/Select.js +25 -4
  76. package/lib/components/Select.js.map +2 -2
  77. package/lib/components/{Checkboxes.d.ts → Selection.d.ts} +273 -98
  78. package/lib/components/Selection.js +134 -0
  79. package/lib/components/Selection.js.map +13 -0
  80. package/lib/components/{TableCheckboxes.d.ts → TableSelection.d.ts} +266 -96
  81. package/lib/components/{TableCheckboxes.js → TableSelection.js} +30 -30
  82. package/lib/components/TableSelection.js.map +13 -0
  83. package/lib/components/Tabs.d.ts +20 -20
  84. package/lib/components/TabsTransfer.d.ts +84 -84
  85. package/lib/components/TabsTransfer.js +9 -9
  86. package/lib/components/TabsTransfer.js.map +2 -2
  87. package/lib/components/TabsTransferPicker.d.ts +489 -0
  88. package/lib/components/TabsTransferPicker.js +60 -0
  89. package/lib/components/TabsTransferPicker.js.map +13 -0
  90. package/lib/components/Toast.d.ts +90 -87
  91. package/lib/components/Toast.js +15 -5
  92. package/lib/components/Toast.js.map +2 -2
  93. package/lib/components/Transfer.d.ts +908 -274
  94. package/lib/components/Transfer.js +31 -24
  95. package/lib/components/Transfer.js.map +2 -2
  96. package/lib/components/TransferDropDown.d.ts +488 -0
  97. package/lib/components/TransferDropDown.js +59 -0
  98. package/lib/components/TransferDropDown.js.map +13 -0
  99. package/lib/components/TransferPicker.d.ts +493 -0
  100. package/lib/components/TransferPicker.js +60 -0
  101. package/lib/components/TransferPicker.js.map +13 -0
  102. package/lib/components/Tree.d.ts +115 -84
  103. package/lib/components/Tree.js +183 -30
  104. package/lib/components/Tree.js.map +2 -2
  105. package/lib/components/{TreeCheckboxes.d.ts → TreeSelection.d.ts} +269 -99
  106. package/lib/components/{TreeCheckboxes.js → TreeSelection.js} +36 -32
  107. package/lib/components/TreeSelection.js.map +13 -0
  108. package/lib/components/condition-builder/Field.js +4 -2
  109. package/lib/components/condition-builder/Field.js.map +2 -2
  110. package/lib/components/condition-builder/Func.js +2 -2
  111. package/lib/components/condition-builder/Func.js.map +2 -2
  112. package/lib/components/condition-builder/InputSwitch.js +2 -2
  113. package/lib/components/condition-builder/InputSwitch.js.map +2 -2
  114. package/lib/components/condition-builder/Item.js +3 -3
  115. package/lib/components/condition-builder/Item.js.map +2 -2
  116. package/lib/components/icons.js +10 -0
  117. package/lib/components/icons.js.map +2 -2
  118. package/lib/components/index.d.ts +8 -8
  119. package/lib/components/index.js +16 -16
  120. package/lib/components/index.js.map +2 -2
  121. package/lib/envOverwrite.d.ts +1 -1
  122. package/lib/envOverwrite.js +24 -9
  123. package/lib/envOverwrite.js.map +2 -2
  124. package/lib/factory.d.ts +15 -1
  125. package/lib/factory.js +35 -6
  126. package/lib/factory.js.map +2 -2
  127. package/lib/helper.css.map +1 -1
  128. package/lib/hooks/index.d.ts +5 -0
  129. package/lib/hooks/index.js +14 -0
  130. package/lib/hooks/index.js.map +13 -0
  131. package/lib/hooks/use-set-state.d.ts +2 -0
  132. package/lib/hooks/use-set-state.js +15 -0
  133. package/lib/hooks/use-set-state.js.map +13 -0
  134. package/lib/hooks/use-touch.d.ts +16 -0
  135. package/lib/hooks/use-touch.js +73 -0
  136. package/lib/hooks/use-touch.js.map +13 -0
  137. package/lib/hooks/use-update-effect.d.ts +3 -0
  138. package/lib/hooks/use-update-effect.js +17 -0
  139. package/lib/hooks/use-update-effect.js.map +13 -0
  140. package/lib/icons/alert-danger.js +7 -0
  141. package/lib/icons/alert-info.js +7 -0
  142. package/lib/icons/alert-success.js +7 -0
  143. package/lib/icons/alert-warning.js +7 -0
  144. package/lib/icons/download.js +7 -0
  145. package/lib/icons/drag-bar.js +10 -3
  146. package/lib/index.d.ts +5 -0
  147. package/lib/index.js +6 -1
  148. package/lib/index.js.map +2 -2
  149. package/lib/locale/de-DE.js +2 -0
  150. package/lib/locale/de-DE.js.map +2 -2
  151. package/lib/locale/en-US.js +3 -0
  152. package/lib/locale/en-US.js.map +2 -2
  153. package/lib/locale/zh-CN.js +5 -2
  154. package/lib/locale/zh-CN.js.map +2 -2
  155. package/lib/renderers/Action.d.ts +10 -5
  156. package/lib/renderers/Action.js +23 -5
  157. package/lib/renderers/Action.js.map +2 -2
  158. package/lib/renderers/Alert.d.ts +21 -1
  159. package/lib/renderers/Alert.js.map +2 -2
  160. package/lib/renderers/AnchorNav.d.ts +1 -0
  161. package/lib/renderers/AnchorNav.js +2 -2
  162. package/lib/renderers/AnchorNav.js.map +2 -2
  163. package/lib/renderers/Avatar.js +3 -3
  164. package/lib/renderers/Avatar.js.map +2 -2
  165. package/lib/renderers/Breadcrumb.js +1 -1
  166. package/lib/renderers/Breadcrumb.js.map +2 -2
  167. package/lib/renderers/CRUD.d.ts +5 -0
  168. package/lib/renderers/CRUD.js +25 -4
  169. package/lib/renderers/CRUD.js.map +2 -2
  170. package/lib/renderers/Card.d.ts +5 -0
  171. package/lib/renderers/Card.js +34 -23
  172. package/lib/renderers/Card.js.map +2 -2
  173. package/lib/renderers/Collapse.d.ts +25 -20
  174. package/lib/renderers/Collapse.js +10 -72
  175. package/lib/renderers/Collapse.js.map +2 -2
  176. package/lib/renderers/CollapseGroup.d.ts +42 -0
  177. package/lib/renderers/CollapseGroup.js +33 -0
  178. package/lib/renderers/CollapseGroup.js.map +13 -0
  179. package/lib/renderers/Form/ConditionBuilder.js +2 -2
  180. package/lib/renderers/Form/ConditionBuilder.js.map +2 -2
  181. package/lib/renderers/Form/DiffEditor.d.ts +4 -3
  182. package/lib/renderers/Form/Editor.d.ts +3 -2
  183. package/lib/renderers/Form/InputCity.d.ts +84 -84
  184. package/lib/renderers/Form/InputCity.js +7 -6
  185. package/lib/renderers/Form/InputCity.js.map +2 -2
  186. package/lib/renderers/Form/InputColor.d.ts +86 -85
  187. package/lib/renderers/Form/InputColor.js +1 -1
  188. package/lib/renderers/Form/InputColor.js.map +2 -2
  189. package/lib/renderers/Form/InputFile.d.ts +6 -0
  190. package/lib/renderers/Form/InputFile.js +28 -8
  191. package/lib/renderers/Form/InputFile.js.map +2 -2
  192. package/lib/renderers/Form/InputImage.js +11 -4
  193. package/lib/renderers/Form/InputImage.js.map +2 -2
  194. package/lib/renderers/Form/Item.d.ts +1 -1
  195. package/lib/renderers/Form/Item.js +2 -1
  196. package/lib/renderers/Form/Item.js.map +2 -2
  197. package/lib/renderers/Form/Options.js +25 -4
  198. package/lib/renderers/Form/Options.js.map +2 -2
  199. package/lib/renderers/Form/Select.d.ts +42 -4
  200. package/lib/renderers/Form/Select.js +37 -3
  201. package/lib/renderers/Form/Select.js.map +2 -2
  202. package/lib/renderers/Form/TabsTransferPicker.d.ts +48 -0
  203. package/lib/renderers/Form/TabsTransferPicker.js +29 -0
  204. package/lib/renderers/Form/TabsTransferPicker.js.map +13 -0
  205. package/lib/renderers/Form/Transfer.js +18 -3
  206. package/lib/renderers/Form/Transfer.js.map +2 -2
  207. package/lib/renderers/Form/TransferPicker.d.ts +52 -0
  208. package/lib/renderers/Form/TransferPicker.js +43 -0
  209. package/lib/renderers/Form/TransferPicker.js.map +13 -0
  210. package/lib/renderers/Form/TreeSelect.js +2 -2
  211. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  212. package/lib/renderers/Form/index.d.ts +5 -0
  213. package/lib/renderers/Form/index.js +5 -3
  214. package/lib/renderers/Form/index.js.map +2 -2
  215. package/lib/renderers/Form/wrapControl.js +13 -1
  216. package/lib/renderers/Form/wrapControl.js.map +2 -2
  217. package/lib/renderers/GridNav.d.ts +99 -0
  218. package/lib/renderers/GridNav.js +82 -0
  219. package/lib/renderers/GridNav.js.map +13 -0
  220. package/lib/renderers/IFrame.js +1 -3
  221. package/lib/renderers/IFrame.js.map +2 -2
  222. package/lib/renderers/Image.js +7 -5
  223. package/lib/renderers/Image.js.map +2 -2
  224. package/lib/renderers/Json.d.ts +4 -0
  225. package/lib/renderers/Json.js +4 -13
  226. package/lib/renderers/Json.js.map +2 -2
  227. package/lib/renderers/Link.d.ts +4 -2
  228. package/lib/renderers/Link.js +15 -8
  229. package/lib/renderers/Link.js.map +2 -2
  230. package/lib/renderers/List.js +1 -1
  231. package/lib/renderers/List.js.map +2 -2
  232. package/lib/renderers/Nav.d.ts +21 -21
  233. package/lib/renderers/Nav.js +37 -19
  234. package/lib/renderers/Nav.js.map +2 -2
  235. package/lib/renderers/Page.d.ts +18 -0
  236. package/lib/renderers/Page.js +53 -9
  237. package/lib/renderers/Page.js.map +2 -2
  238. package/lib/renderers/Portlet.d.ts +125 -0
  239. package/lib/renderers/Portlet.js +156 -0
  240. package/lib/renderers/Portlet.js.map +13 -0
  241. package/lib/renderers/Progress.d.ts +23 -3
  242. package/lib/renderers/Progress.js +15 -19
  243. package/lib/renderers/Progress.js.map +2 -2
  244. package/lib/renderers/Property.js +1 -1
  245. package/lib/renderers/Property.js.map +2 -2
  246. package/lib/renderers/Table/ColumnToggler.js +1 -1
  247. package/lib/renderers/Table/ColumnToggler.js.map +2 -2
  248. package/lib/renderers/Table/TableContent.d.ts +4 -1
  249. package/lib/renderers/Table/TableContent.js +21 -1
  250. package/lib/renderers/Table/TableContent.js.map +2 -2
  251. package/lib/renderers/Table/index.d.ts +5 -1
  252. package/lib/renderers/Table/index.js +65 -30
  253. package/lib/renderers/Table/index.js.map +2 -2
  254. package/lib/renderers/Tabs.js +9 -1
  255. package/lib/renderers/Tabs.js.map +2 -2
  256. package/lib/renderers/WebComponent.js +1 -1
  257. package/lib/renderers/WebComponent.js.map +2 -2
  258. package/lib/store/combo.d.ts +2 -2
  259. package/lib/store/form.d.ts +1 -1
  260. package/lib/store/form.js +3 -5
  261. package/lib/store/form.js.map +2 -2
  262. package/lib/store/formItem.js +44 -4
  263. package/lib/store/formItem.js.map +2 -2
  264. package/lib/store/table.d.ts +3 -2
  265. package/lib/store/table.js +35 -12
  266. package/lib/store/table.js.map +2 -2
  267. package/lib/themes/ang-ie11.css +934 -222
  268. package/lib/themes/ang.css +934 -222
  269. package/lib/themes/ang.css.map +1 -1
  270. package/lib/themes/antd-ie11.css +934 -222
  271. package/lib/themes/antd.css +934 -222
  272. package/lib/themes/antd.css.map +1 -1
  273. package/lib/themes/cxd-ie11.css +970 -260
  274. package/lib/themes/cxd.css +970 -260
  275. package/lib/themes/cxd.css.map +1 -1
  276. package/lib/themes/dark-ie11.css +934 -222
  277. package/lib/themes/dark.css +934 -222
  278. package/lib/themes/dark.css.map +1 -1
  279. package/lib/themes/default.css +970 -260
  280. package/lib/themes/default.css.map +1 -1
  281. package/lib/types.d.ts +38 -1
  282. package/lib/types.js +0 -5
  283. package/lib/types.js.map +2 -2
  284. package/lib/utils/api.d.ts +3 -2
  285. package/lib/utils/api.js +90 -17
  286. package/lib/utils/api.js.map +2 -2
  287. package/lib/utils/dom.d.ts +4 -0
  288. package/lib/utils/dom.js +11 -1
  289. package/lib/utils/dom.js.map +2 -2
  290. package/lib/utils/helper.d.ts +12 -23
  291. package/lib/utils/helper.js +62 -166
  292. package/lib/utils/helper.js.map +2 -2
  293. package/lib/utils/tpl-builtin.d.ts +2 -20
  294. package/lib/utils/tpl-builtin.js +25 -743
  295. package/lib/utils/tpl-builtin.js.map +2 -2
  296. package/lib/utils/tpl.js +24 -0
  297. package/lib/utils/tpl.js.map +2 -2
  298. package/package.json +5 -2
  299. package/schema.json +3966 -1263
  300. package/scss/_mixins.scss +1 -3
  301. package/scss/_properties.scss +42 -13
  302. package/scss/base/_common.scss +3 -0
  303. package/scss/base/_normalize.scss +2 -0
  304. package/scss/components/_alert.scss +28 -5
  305. package/scss/components/_anchor-nav.scss +89 -29
  306. package/scss/components/_button.scss +12 -0
  307. package/scss/components/_card.scss +9 -15
  308. package/scss/components/_collapse-group.scss +15 -0
  309. package/scss/components/_collapse.scss +48 -23
  310. package/scss/components/_grid-nav.scss +128 -0
  311. package/scss/components/_images.scss +1 -0
  312. package/scss/components/_input-box.scss +1 -0
  313. package/scss/components/_nav.scss +2 -7
  314. package/scss/components/_page.scss +35 -2
  315. package/scss/components/_picker-columns.scss +124 -0
  316. package/scss/components/_popover.scss +13 -0
  317. package/scss/components/_portlet.scss +51 -0
  318. package/scss/components/_progress.scss +141 -33
  319. package/scss/components/_result-box.scss +1 -0
  320. package/scss/components/_spinner.scss +5 -4
  321. package/scss/components/_status.scss +1 -1
  322. package/scss/components/_table.scss +32 -0
  323. package/scss/components/_toast.scss +41 -11
  324. package/scss/components/form/_checks.scss +0 -351
  325. package/scss/components/form/_color.scss +32 -3
  326. package/scss/components/form/_combo.scss +4 -0
  327. package/scss/components/form/_fieldset.scss +6 -1
  328. package/scss/components/form/_file.scss +11 -0
  329. package/scss/components/form/_form.scss +48 -0
  330. package/scss/components/form/_selection.scss +354 -0
  331. package/scss/components/form/_transfer.scss +76 -18
  332. package/scss/components/form/_tree.scss +42 -0
  333. package/scss/themes/_common.scss +6 -0
  334. package/scss/themes/_cxd-variables.scss +13 -6
  335. package/scss/themes/cxd.scss +19 -20
  336. package/sdk/ang-ie11.css +1065 -246
  337. package/sdk/ang.css +1069 -230
  338. package/sdk/antd-ie11.css +1068 -249
  339. package/sdk/antd.css +1069 -230
  340. package/sdk/charts.js +17 -17
  341. package/sdk/color-picker.js +65 -69
  342. package/sdk/cropperjs.js +3 -3
  343. package/sdk/cxd-ie11.css +1081 -268
  344. package/sdk/cxd.css +1116 -279
  345. package/sdk/dark-ie11.css +1069 -250
  346. package/sdk/dark.css +1069 -230
  347. package/sdk/exceljs.js +1 -1
  348. package/sdk/helper.css.map +1 -1
  349. package/sdk/iconfont.svg +2513 -0
  350. package/sdk/iconfont.ttf +0 -0
  351. package/sdk/iconfont.woff +0 -0
  352. package/sdk/locale/de-DE.js +2 -0
  353. package/sdk/markdown.js +69 -69
  354. package/sdk/papaparse.js +1 -1
  355. package/sdk/renderers/Form/CityDB.js +1 -1
  356. package/sdk/rest.js +20 -28
  357. package/sdk/rich-text.js +62 -62
  358. package/sdk/sdk-ie11.css +1081 -268
  359. package/sdk/sdk.css +1116 -279
  360. package/sdk/sdk.js +1371 -1189
  361. package/sdk/thirds/hls.js/hls.js +18 -18
  362. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  363. package/sdk/tinymce.js +57 -57
  364. package/src/Schema.ts +19 -1
  365. package/src/components/Alert2.tsx +32 -4
  366. package/src/components/AnchorNav.tsx +15 -4
  367. package/src/components/{AssociatedCheckboxes.tsx → AssociatedSelection.tsx} +43 -37
  368. package/src/components/Badge.tsx +3 -3
  369. package/src/components/Button.tsx +1 -0
  370. package/src/components/{ChainedCheckboxes.tsx → ChainedSelection.tsx} +57 -40
  371. package/src/components/Collapse.tsx +139 -20
  372. package/src/components/CollapseGroup.tsx +130 -0
  373. package/src/components/ColorPicker.tsx +32 -10
  374. package/src/components/Drawer.tsx +8 -6
  375. package/src/components/GridNav.tsx +233 -0
  376. package/src/components/{ListCheckboxes.tsx → GroupedSelection.tsx} +26 -21
  377. package/src/components/InputBox.tsx +10 -9
  378. package/src/components/Link.tsx +28 -37
  379. package/src/components/ModalManager.ts +1 -1
  380. package/src/components/Overlay.tsx +6 -0
  381. package/src/components/PickerColumn.tsx +429 -0
  382. package/src/components/PickerContainer.tsx +128 -0
  383. package/src/components/PopOver.tsx +15 -1
  384. package/src/components/Progress.tsx +140 -0
  385. package/src/components/Radios.tsx +3 -8
  386. package/src/components/ResultBox.tsx +9 -9
  387. package/src/components/Select.tsx +57 -5
  388. package/src/components/{Checkboxes.tsx → Selection.tsx} +75 -21
  389. package/src/components/{TableCheckboxes.tsx → TableSelection.tsx} +46 -25
  390. package/src/components/TabsTransfer.tsx +13 -7
  391. package/src/components/TabsTransferPicker.tsx +85 -0
  392. package/src/components/Toast.tsx +48 -21
  393. package/src/components/Transfer.tsx +71 -50
  394. package/src/components/TransferDropDown.tsx +120 -0
  395. package/src/components/TransferPicker.tsx +91 -0
  396. package/src/components/Tree.tsx +194 -8
  397. package/src/components/{TreeCheckboxes.tsx → TreeSelection.tsx} +33 -26
  398. package/src/components/condition-builder/Field.tsx +7 -5
  399. package/src/components/condition-builder/Func.tsx +3 -3
  400. package/src/components/condition-builder/InputSwitch.tsx +3 -3
  401. package/src/components/condition-builder/Item.tsx +5 -12
  402. package/src/components/icons.tsx +10 -0
  403. package/src/components/index.tsx +13 -13
  404. package/src/envOverwrite.ts +20 -8
  405. package/src/factory.tsx +70 -9
  406. package/src/hooks/index.ts +5 -0
  407. package/src/hooks/use-set-state.ts +19 -0
  408. package/src/hooks/use-touch.ts +100 -0
  409. package/src/hooks/use-update-effect.ts +16 -0
  410. package/src/icons/alert-danger.svg +1 -0
  411. package/src/icons/alert-info.svg +1 -0
  412. package/src/icons/alert-success.svg +1 -0
  413. package/src/icons/alert-warning.svg +1 -0
  414. package/src/icons/download.svg +4 -0
  415. package/src/icons/drag-bar.svg +12 -6
  416. package/src/index.tsx +5 -0
  417. package/src/locale/de-DE.ts +2 -0
  418. package/src/locale/en-US.ts +3 -0
  419. package/src/locale/zh-CN.ts +5 -2
  420. package/src/renderers/Action.tsx +58 -3
  421. package/src/renderers/Alert.tsx +31 -1
  422. package/src/renderers/AnchorNav.tsx +4 -0
  423. package/src/renderers/Avatar.tsx +8 -4
  424. package/src/renderers/Breadcrumb.tsx +5 -1
  425. package/src/renderers/CRUD.tsx +29 -3
  426. package/src/renderers/Card.tsx +76 -36
  427. package/src/renderers/Collapse.tsx +70 -115
  428. package/src/renderers/CollapseGroup.tsx +80 -0
  429. package/src/renderers/Form/ConditionBuilder.tsx +2 -2
  430. package/src/renderers/Form/InputCity.tsx +4 -8
  431. package/src/renderers/Form/InputColor.tsx +4 -2
  432. package/src/renderers/Form/InputFile.tsx +65 -24
  433. package/src/renderers/Form/InputImage.tsx +11 -3
  434. package/src/renderers/Form/Item.tsx +3 -2
  435. package/src/renderers/Form/Options.tsx +29 -3
  436. package/src/renderers/Form/Select.tsx +162 -21
  437. package/src/renderers/Form/TabsTransferPicker.tsx +123 -0
  438. package/src/renderers/Form/Transfer.tsx +19 -4
  439. package/src/renderers/Form/TransferPicker.tsx +145 -0
  440. package/src/renderers/Form/TreeSelect.tsx +25 -0
  441. package/src/renderers/Form/index.tsx +15 -2
  442. package/src/renderers/Form/wrapControl.tsx +26 -1
  443. package/src/renderers/GridNav.tsx +204 -0
  444. package/src/renderers/IFrame.tsx +2 -4
  445. package/src/renderers/Image.tsx +19 -15
  446. package/src/renderers/Json.tsx +9 -9
  447. package/src/renderers/Link.tsx +29 -16
  448. package/src/renderers/List.tsx +1 -1
  449. package/src/renderers/Nav.tsx +105 -56
  450. package/src/renderers/Page.tsx +62 -1
  451. package/src/renderers/Portlet.tsx +423 -0
  452. package/src/renderers/Progress.tsx +56 -38
  453. package/src/renderers/Property.tsx +6 -4
  454. package/src/renderers/Table/ColumnToggler.tsx +1 -1
  455. package/src/renderers/Table/TableContent.tsx +40 -2
  456. package/src/renderers/Table/index.tsx +88 -43
  457. package/src/renderers/Tabs.tsx +9 -1
  458. package/src/renderers/WebComponent.tsx +2 -2
  459. package/src/store/form.ts +3 -9
  460. package/src/store/formItem.ts +94 -2
  461. package/src/store/table.ts +55 -14
  462. package/src/types.ts +58 -1
  463. package/src/utils/api.ts +120 -26
  464. package/src/utils/dom.tsx +12 -0
  465. package/src/utils/helper.ts +55 -185
  466. package/src/utils/tpl-builtin.ts +40 -866
  467. package/src/utils/tpl.ts +33 -0
  468. package/tsconfig-for-declaration.json +1 -1
  469. package/dump.rdb +0 -0
  470. package/lib/components/AssociatedCheckboxes.d.ts +0 -762
  471. package/lib/components/AssociatedCheckboxes.js +0 -90
  472. package/lib/components/AssociatedCheckboxes.js.map +0 -13
  473. package/lib/components/ChainedCheckboxes.js.map +0 -13
  474. package/lib/components/Checkboxes.js +0 -101
  475. package/lib/components/Checkboxes.js.map +0 -13
  476. package/lib/components/ListCheckboxes.d.ts +0 -739
  477. package/lib/components/ListCheckboxes.js +0 -48
  478. package/lib/components/ListCheckboxes.js.map +0 -13
  479. package/lib/components/ListRadios.d.ts +0 -763
  480. package/lib/components/ListRadios.js +0 -86
  481. package/lib/components/ListRadios.js.map +0 -13
  482. package/lib/components/TableCheckboxes.js.map +0 -13
  483. package/lib/components/TreeCheckboxes.js.map +0 -13
  484. package/lib/components/TreeRadios.d.ts +0 -838
  485. package/lib/components/TreeRadios.js +0 -116
  486. package/lib/components/TreeRadios.js.map +0 -13
  487. package/src/components/ListRadios.tsx +0 -159
  488. package/src/components/TreeRadios.tsx +0 -202
@@ -146,15 +146,28 @@ var ColorControl = /** @class */ (function (_super) {
146
146
  var isFocused = this.state.isFocused;
147
147
  return (react_1.default.createElement("div", { className: cx("ColorPicker", {
148
148
  'is-disabled': disabled,
149
- 'is-focused': isFocused
149
+ 'is-focused': isFocused,
150
+ 'is-opened': isOpened
150
151
  }, className) },
152
+ react_1.default.createElement("span", { onClick: this.handleClick, className: cx('ColorPicker-preview') },
153
+ react_1.default.createElement("i", { ref: this.preview, className: ns + "ColorPicker-previewIcon", style: { background: this.state.inputValue || '#ccc' } })),
151
154
  react_1.default.createElement("input", { ref: this.input, type: "text", autoComplete: "off", size: 10, className: cx('ColorPicker-input'), value: this.state.inputValue || '', placeholder: __(placeholder), disabled: disabled, onChange: this.handleInputChange, onFocus: this.handleFocus, onBlur: this.handleBlur, onClick: this.handleClick }),
152
155
  clearable && !disabled && value ? (react_1.default.createElement("a", { onClick: this.clearValue, className: cx('ColorPicker-clear') },
153
156
  react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" }))) : null,
154
- react_1.default.createElement("span", { onClick: this.handleClick, className: cx('ColorPicker-preview') },
155
- react_1.default.createElement("i", { ref: this.preview, className: ns + "ColorPicker-previewIcon", style: { background: this.state.inputValue || '#ccc' } })),
157
+ react_1.default.createElement("span", { className: cx('ColorPicker-arrow') },
158
+ react_1.default.createElement(icons_1.Icon, { icon: "caret", className: "icon", onClick: this.handleClick })),
156
159
  isOpened ? (react_1.default.createElement(Overlay_1.default, { placement: placement || 'auto', target: function () { return (0, react_dom_1.findDOMNode)(_this); }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, show: true },
157
- react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: cx('ColorPicker-popover', popoverClassName), onHide: this.close, overlay: true }, allowCustomColor ? (react_1.default.createElement(react_color_1.SketchPicker, { disableAlpha: !!~['rgb', 'hex'].indexOf(format), color: value, presetColors: presetColors, onChangeComplete: this.handleChange })) : (react_1.default.createElement(react_color_1.GithubPicker, { color: value, colors: presetColors, onChangeComplete: this.handleChange }))))) : null));
160
+ react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: cx('ColorPicker-popover', popoverClassName), onHide: this.close, overlay: true }, allowCustomColor ? (react_1.default.createElement(react_color_1.SketchPicker, { styles: {}, disableAlpha: !!~['rgb', 'hex'].indexOf(format), color: value, presetColors: presetColors, onChangeComplete: this.handleChange })) : (react_1.default.createElement(react_color_1.GithubPicker, { color: value, colors: Array.isArray(presetColors)
161
+ ? presetColors
162
+ .filter(function (item) { return typeof item === 'string' || (0, helper_1.isObject)(item); })
163
+ .map(function (item) {
164
+ return typeof item === 'string'
165
+ ? item
166
+ : (0, helper_1.isObject)(item)
167
+ ? item === null || item === void 0 ? void 0 : item.color
168
+ : item;
169
+ })
170
+ : undefined, onChangeComplete: this.handleChange }))))) : null));
158
171
  };
159
172
  ColorControl.defaultProps = {
160
173
  format: 'hex',
@@ -6,8 +6,8 @@
6
6
  "/src/components/ColorPicker.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";AAAA;;;;GAIG;;;;AAEH,6DAA0B;AAC1B,uCAAsC;AACtC,2CAAoE;AACpE,iCAA6B;AAC7B,mEAAgC;AAChC,iDAA8C;AAC9C,mEAAgC;AAChC,kCAA6D;AAC7D,0CAAyC;AACzC,oCAAkD;AAyBlD;IAAkC,6CAGjC;IAiBC,sBAAY,KAAiB;QAA7B,YACE,kBAAM,KAAK,CAAC,SAcb;QAxBD,WAAK,GAAG;YACN,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,KAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;SACnC,CAAC;QAQA,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACjC,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACnC,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACnC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACjC,KAAI,CAAC,YAAY,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACjD,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC/C,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC7C,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC7C,KAAI,CAAC,iBAAiB,GAAG,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC3D,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC/C,KAAI,CAAC,OAAO,GAAG,eAAK,CAAC,SAAS,EAAE,CAAC;QACjC,KAAI,CAAC,KAAK,GAAG,eAAK,CAAC,SAAS,EAAE,CAAC;;IACjC,CAAC;IAED,yCAAkB,GAAlB,UAAmB,SAAqB;QACtC,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,SAAS,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,EAAE;YACnC,IAAI,CAAC,QAAQ,CAAC;gBACZ,UAAU,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;aAC9B,CAAC,CAAC;SACJ;IACH,CAAC;IAED,kCAAW,GAAX;QACE,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;IAED,iCAAU,GAAV;QACE,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,4BAAK,GAAL;QACE,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACnD,CAAC;IAED,2BAAI,GAAJ;QACE,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IAED,2BAAI,GAAJ,UAAK,EAAe;QAClB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACvB,OAAO;SACR;QACD,IAAI,CAAC,QAAQ,CACX;YACE,QAAQ,EAAE,IAAI;SACf,EACD,EAAE,CACH,CAAC;IACJ,CAAC;IAED,4BAAK,GAAL;QACE,IAAI,CAAC,QAAQ,CAAC;YACZ,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;IACL,CAAC;IAED,iCAAU,GAAV;QACQ,IAAA,KAAyB,IAAI,CAAC,KAAK,EAAlC,QAAQ,cAAA,EAAE,UAAU,gBAAc,CAAC;QAC1C,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,kCAAW,GAAX;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,wCAAiB,GAAjB,UAAkB,CAAsC;QAAxD,iBAkBC;QAjBC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;YAChC,OAAO;SACR;QAED,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAErC,IAAI,CAAC,QAAQ,CACX;YACE,UAAU,EAAE,CAAC,CAAC,aAAa,CAAC,KAAK;SAClC,EACD;YACE,IAAI,WAAW,GAAG,KAAI,CAAC,aAAa,CAAC,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC5D,IAAI,WAAW,EAAE;gBACf,QAAQ,CAAC,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;aACjC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAGD,oCAAa,GAAb,UAAc,KAAa;QACzB,IAAI,KAAK,KAAK,EAAE,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QACD,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,OAAO,KAAK,CAAC;SACd;QACD,IAAI,KAAK,KAAK,aAAa,EAAE;YAC3B,OAAO,KAAK,CAAC;SACd;QAED,IAAI,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,cAAc,CAAC;QACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,cAAc,EAAE;YACxC,OAAO,IAAI,CAAC;SACb;QACD,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,oBAAoB,CAAC;QACzC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,oBAAoB,CAAC;IACpD,CAAC;IAED,mCAAY,GAAZ,UAAa,KAAkB;QACvB,IAAA,KAIF,IAAI,CAAC,KAAK,EAHZ,QAAQ,cAAA,EACR,MAAM,YAAA;QACN,gBAAgB;QACJ,CAAC;QAEf,IAAI,MAAM,KAAK,MAAM,EAAE;YACrB,QAAQ,CACN,UAAQ,KAAK,CAAC,GAAG,CAAC,CAAC,UAAK,KAAK,CAAC,GAAG,CAAC,CAAC,UAAK,KAAK,CAAC,GAAG,CAAC,CAAC,UAAK,KAAK,CAAC,GAAG,CAAC,CAAC,MAAG,CACvE,CAAC;SACH;aAAM,IAAI,MAAM,KAAK,KAAK,EAAE;YAC3B,QAAQ,CAAC,SAAO,KAAK,CAAC,GAAG,CAAC,CAAC,UAAK,KAAK,CAAC,GAAG,CAAC,CAAC,UAAK,KAAK,CAAC,GAAG,CAAC,CAAC,MAAG,CAAC,CAAC;SACjE;aAAM,IAAI,MAAM,KAAK,KAAK,EAAE;YAC3B,QAAQ,CACN,SAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,UAAK,IAAI,CAAC,KAAK,CAC3C,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAClB,WAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,OAAI,CACzC,CAAC;SACH;aAAM;YACL,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACrB;QAED,iCAAiC;IACnC,CAAC;IAED,6BAAM,GAAN;QAAA,iBA+FC;QA9FO,IAAA,KAcF,IAAI,CAAC,KAAK,EAbC,EAAE,iBAAA,EACf,SAAS,eAAA,EACT,gBAAgB,sBAAA,EAChB,KAAK,WAAA,EACL,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,gBAAgB,sBAAA,EAChB,MAAM,YAAA,EACN,SAAS,eAAA,EACT,SAAS,eAAA,EACG,EAAE,gBAAA,EACd,YAAY,kBAAA,EACZ,gBAAgB,sBACJ,CAAC;QAEf,IAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAChC,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrC,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,OAAO,CACL,uCACE,SAAS,EAAE,EAAE,CACX,aAAa,EACb;gBACE,aAAa,EAAE,QAAQ;gBACvB,YAAY,EAAE,SAAS;aACxB,EACD,SAAS,CACV;YAED,yCACE,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,IAAI,EAAC,MAAM,EACX,YAAY,EAAC,KAAK,EAClB,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,EAClC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,EAClC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAC5B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,IAAI,CAAC,iBAAiB,EAChC,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,OAAO,EAAE,IAAI,CAAC,WAAW,GACzB;YAED,SAAS,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,CACjC,qCAAG,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC;gBAC7D,8BAAC,YAAI,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,GAAG,CACpC,CACL,CAAC,CAAC,CAAC,IAAI;YAER,wCAAM,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC,qBAAqB,CAAC;gBACnE,qCACE,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,SAAS,EAAK,EAAE,4BAAyB,EACzC,KAAK,EAAE,EAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,MAAM,EAAC,GACpD,CACG;YAEN,QAAQ,CAAC,CAAC,CAAC,CACV,8BAAC,iBAAO,IACN,SAAS,EAAE,SAAS,IAAI,MAAM,EAC9B,MAAM,EAAE,cAAM,OAAA,IAAA,uBAAW,EAAC,KAAI,CAAC,EAAjB,CAAiB,EAC/B,MAAM,EAAE,IAAI,CAAC,KAAK,EAClB,SAAS,EAAE,gBAAgB,IAAI,CAAC,cAAM,OAAA,IAAA,uBAAW,EAAC,KAAI,CAAC,EAAjB,CAAiB,CAAC,EACxD,SAAS,EAAE,KAAK,EAChB,IAAI;gBAEJ,8BAAC,iBAAO,IACN,WAAW,EAAE,EAAE,EACf,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,EACtD,MAAM,EAAE,IAAI,CAAC,KAAK,EAClB,OAAO,UAEN,gBAAgB,CAAC,CAAC,CAAC,CAClB,8BAAC,0BAAY,IACX,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,MAAgB,CAAC,EACzD,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,IAAI,CAAC,YAAY,GACnC,CACH,CAAC,CAAC,CAAC,CACF,8BAAC,0BAAY,IACX,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,IAAI,CAAC,YAAY,GACnC,CACH,CACO,CACF,CACX,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC;IACJ,CAAC;IA/PM,yBAAY,GAAG;QACpB,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,yBAAyB;QACtC,gBAAgB,EAAE,IAAI;QACtB,sBAAsB;KACvB,CAAC;IA0GF;QADC,iBAAQ;;;;qDAqBR;IA4HH,mBAAC;CAAA,AApQD,CAAkC,eAAK,CAAC,aAAa,GAoQpD;AApQY,oCAAY;AAsQzB,kBAAe,IAAA,iBAAS,EACtB,IAAA,mBAAU,EACR,IAAA,+BAAc,EAAC,YAAY,EAAE;IAC3B,KAAK,EAAE,UAAU;CAClB,CAAC,CACH,CACF,CAAC",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "/**\n * @file ColorPicker\n * @description 颜色选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {SketchPicker, GithubPicker, ColorResult} from 'react-color';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {uncontrollable} from 'uncontrollable';\nimport PopOver from './PopOver';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {autobind} from '../utils/helper';\nimport {localeable, LocaleProps} from '../locale';\n\nexport interface ColorProps extends LocaleProps, ThemeProps {\n placeholder?: string;\n format: string;\n // closeOnSelect:boolean;\n clearable: boolean;\n className?: string;\n popoverClassName?: string;\n disabled?: boolean;\n popOverContainer?: any;\n placement?: string;\n value?: any;\n onChange: (value: any) => void;\n presetColors?: string[];\n resetValue?: string;\n allowCustomColor?: boolean;\n}\n\nexport interface ColorControlState {\n isOpened: boolean;\n isFocused: boolean;\n inputValue: string;\n}\n\nexport class ColorControl extends React.PureComponent<\n ColorProps,\n ColorControlState\n> {\n static defaultProps = {\n format: 'hex',\n clearable: true,\n placeholder: 'ColorPicker.placeholder',\n allowCustomColor: true\n // closeOnSelect: true\n };\n state = {\n isOpened: false,\n isFocused: false,\n inputValue: this.props.value || ''\n };\n popover: any;\n closeTimer: number;\n preview: React.RefObject<HTMLElement>;\n input: React.RefObject<HTMLInputElement>;\n constructor(props: ColorProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.focus = this.focus.bind(this);\n this.blur = this.blur.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.preview = React.createRef();\n this.input = React.createRef();\n }\n\n componentDidUpdate(prevProps: ColorProps) {\n const props = this.props;\n\n if (prevProps.value !== props.value) {\n this.setState({\n inputValue: props.value || ''\n });\n }\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false,\n inputValue: this.props.value\n });\n }\n\n focus() {\n this.input.current && this.input.current.focus();\n }\n\n blur() {\n this.input.current && this.input.current.blur();\n }\n\n open(fn?: () => void) {\n if (this.props.disabled) {\n return;\n }\n this.setState(\n {\n isOpened: true\n },\n fn\n );\n }\n\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n clearValue() {\n const {onChange, resetValue} = this.props;\n onChange(resetValue || '');\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open(this.focus);\n }\n\n handleInputChange(e: React.ChangeEvent<HTMLInputElement>) {\n if (!this.props.allowCustomColor) {\n return;\n }\n\n const onChange = this.props.onChange;\n\n this.setState(\n {\n inputValue: e.currentTarget.value\n },\n () => {\n let isValidated = this.validateColor(this.state.inputValue);\n if (isValidated) {\n onChange(this.state.inputValue);\n }\n }\n );\n }\n\n @autobind\n validateColor(value: string) {\n if (value === '') {\n return false;\n }\n if (value === 'inherit') {\n return false;\n }\n if (value === 'transparent') {\n return false;\n }\n\n let image = document.createElement('img');\n image.style.color = 'rgb(0, 0, 0)';\n image.style.color = value;\n if (image.style.color !== 'rgb(0, 0, 0)') {\n return true;\n }\n image.style.color = 'rgb(255, 255, 255)';\n image.style.color = value;\n return image.style.color !== 'rgb(255, 255, 255)';\n }\n\n handleChange(color: ColorResult) {\n const {\n onChange,\n format\n // closeOnSelect\n } = this.props;\n\n if (format === 'rgba') {\n onChange(\n `rgba(${color.rgb.r}, ${color.rgb.g}, ${color.rgb.b}, ${color.rgb.a})`\n );\n } else if (format === 'rgb') {\n onChange(`rgb(${color.rgb.r}, ${color.rgb.g}, ${color.rgb.b})`);\n } else if (format === 'hsl') {\n onChange(\n `hsl(${Math.round(color.hsl.h)}, ${Math.round(\n color.hsl.s * 100\n )}%, ${Math.round(color.hsl.l * 100)}%)`\n );\n } else {\n onChange(color.hex);\n }\n\n // closeOnSelect && this.close();\n }\n\n render() {\n const {\n classPrefix: ns,\n className,\n popoverClassName,\n value,\n placeholder,\n disabled,\n popOverContainer,\n format,\n clearable,\n placement,\n classnames: cx,\n presetColors,\n allowCustomColor\n } = this.props;\n\n const __ = this.props.translate;\n const isOpened = this.state.isOpened;\n const isFocused = this.state.isFocused;\n\n return (\n <div\n className={cx(\n `ColorPicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': isFocused\n },\n className\n )}\n >\n <input\n ref={this.input}\n type=\"text\"\n autoComplete=\"off\"\n size={10}\n className={cx('ColorPicker-input')}\n value={this.state.inputValue || ''}\n placeholder={__(placeholder)}\n disabled={disabled}\n onChange={this.handleInputChange}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n />\n\n {clearable && !disabled && value ? (\n <a onClick={this.clearValue} className={cx('ColorPicker-clear')}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n <span onClick={this.handleClick} className={cx('ColorPicker-preview')}>\n <i\n ref={this.preview}\n className={`${ns}ColorPicker-previewIcon`}\n style={{background: this.state.inputValue || '#ccc'}}\n />\n </span>\n\n {isOpened ? (\n <Overlay\n placement={placement || 'auto'}\n target={() => findDOMNode(this)}\n onHide={this.close}\n container={popOverContainer || (() => findDOMNode(this))}\n rootClose={false}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx('ColorPicker-popover', popoverClassName)}\n onHide={this.close}\n overlay\n >\n {allowCustomColor ? (\n <SketchPicker\n disableAlpha={!!~['rgb', 'hex'].indexOf(format as string)}\n color={value}\n presetColors={presetColors}\n onChangeComplete={this.handleChange}\n />\n ) : (\n <GithubPicker\n color={value}\n colors={presetColors}\n onChangeComplete={this.handleChange}\n />\n )}\n </PopOver>\n </Overlay>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(ColorControl, {\n value: 'onChange'\n })\n )\n);\n"
11
+ "/**\n * @file ColorPicker\n * @description 颜色选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {SketchPicker, GithubPicker, ColorResult} from 'react-color';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {uncontrollable} from 'uncontrollable';\nimport PopOver from './PopOver';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {autobind, isObject} from '../utils/helper';\nimport {localeable, LocaleProps} from '../locale';\n\nexport type PresetColor = {color: string; title: string} | string;\n\nexport interface ColorProps extends LocaleProps, ThemeProps {\n placeholder?: string;\n format: string;\n // closeOnSelect:boolean;\n clearable: boolean;\n className?: string;\n popoverClassName?: string;\n disabled?: boolean;\n popOverContainer?: any;\n placement?: string;\n value?: any;\n onChange: (value: any) => void;\n presetColors?: PresetColor[];\n resetValue?: string;\n allowCustomColor?: boolean;\n}\n\nexport interface ColorControlState {\n isOpened: boolean;\n isFocused: boolean;\n inputValue: string;\n}\n\nexport class ColorControl extends React.PureComponent<\n ColorProps,\n ColorControlState\n> {\n static defaultProps = {\n format: 'hex',\n clearable: true,\n placeholder: 'ColorPicker.placeholder',\n allowCustomColor: true\n // closeOnSelect: true\n };\n state = {\n isOpened: false,\n isFocused: false,\n inputValue: this.props.value || ''\n };\n popover: any;\n closeTimer: number;\n preview: React.RefObject<HTMLElement>;\n input: React.RefObject<HTMLInputElement>;\n constructor(props: ColorProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.focus = this.focus.bind(this);\n this.blur = this.blur.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.handleInputChange = this.handleInputChange.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.preview = React.createRef();\n this.input = React.createRef();\n }\n\n componentDidUpdate(prevProps: ColorProps) {\n const props = this.props;\n\n if (prevProps.value !== props.value) {\n this.setState({\n inputValue: props.value || ''\n });\n }\n }\n\n handleFocus() {\n this.setState({\n isFocused: true\n });\n }\n\n handleBlur() {\n this.setState({\n isFocused: false,\n inputValue: this.props.value\n });\n }\n\n focus() {\n this.input.current && this.input.current.focus();\n }\n\n blur() {\n this.input.current && this.input.current.blur();\n }\n\n open(fn?: () => void) {\n if (this.props.disabled) {\n return;\n }\n this.setState(\n {\n isOpened: true\n },\n fn\n );\n }\n\n close() {\n this.setState({\n isOpened: false\n });\n }\n\n clearValue() {\n const {onChange, resetValue} = this.props;\n onChange(resetValue || '');\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open(this.focus);\n }\n\n handleInputChange(e: React.ChangeEvent<HTMLInputElement>) {\n if (!this.props.allowCustomColor) {\n return;\n }\n\n const onChange = this.props.onChange;\n\n this.setState(\n {\n inputValue: e.currentTarget.value\n },\n () => {\n let isValidated = this.validateColor(this.state.inputValue);\n if (isValidated) {\n onChange(this.state.inputValue);\n }\n }\n );\n }\n\n @autobind\n validateColor(value: string) {\n if (value === '') {\n return false;\n }\n if (value === 'inherit') {\n return false;\n }\n if (value === 'transparent') {\n return false;\n }\n\n let image = document.createElement('img');\n image.style.color = 'rgb(0, 0, 0)';\n image.style.color = value;\n if (image.style.color !== 'rgb(0, 0, 0)') {\n return true;\n }\n image.style.color = 'rgb(255, 255, 255)';\n image.style.color = value;\n return image.style.color !== 'rgb(255, 255, 255)';\n }\n\n handleChange(color: ColorResult) {\n const {\n onChange,\n format\n // closeOnSelect\n } = this.props;\n\n if (format === 'rgba') {\n onChange(\n `rgba(${color.rgb.r}, ${color.rgb.g}, ${color.rgb.b}, ${color.rgb.a})`\n );\n } else if (format === 'rgb') {\n onChange(`rgb(${color.rgb.r}, ${color.rgb.g}, ${color.rgb.b})`);\n } else if (format === 'hsl') {\n onChange(\n `hsl(${Math.round(color.hsl.h)}, ${Math.round(\n color.hsl.s * 100\n )}%, ${Math.round(color.hsl.l * 100)}%)`\n );\n } else {\n onChange(color.hex);\n }\n\n // closeOnSelect && this.close();\n }\n\n render() {\n const {\n classPrefix: ns,\n className,\n popoverClassName,\n value,\n placeholder,\n disabled,\n popOverContainer,\n format,\n clearable,\n placement,\n classnames: cx,\n presetColors,\n allowCustomColor\n } = this.props;\n\n const __ = this.props.translate;\n const isOpened = this.state.isOpened;\n const isFocused = this.state.isFocused;\n\n return (\n <div\n className={cx(\n `ColorPicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': isFocused,\n 'is-opened': isOpened\n },\n className\n )}\n >\n <span onClick={this.handleClick} className={cx('ColorPicker-preview')}>\n <i\n ref={this.preview}\n className={`${ns}ColorPicker-previewIcon`}\n style={{background: this.state.inputValue || '#ccc'}}\n />\n </span>\n\n <input\n ref={this.input}\n type=\"text\"\n autoComplete=\"off\"\n size={10}\n className={cx('ColorPicker-input')}\n value={this.state.inputValue || ''}\n placeholder={__(placeholder)}\n disabled={disabled}\n onChange={this.handleInputChange}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n />\n\n {clearable && !disabled && value ? (\n <a onClick={this.clearValue} className={cx('ColorPicker-clear')}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n\n <span className={cx('ColorPicker-arrow')}>\n <Icon icon=\"caret\" className=\"icon\" onClick={this.handleClick} />\n </span>\n\n {isOpened ? (\n <Overlay\n placement={placement || 'auto'}\n target={() => findDOMNode(this)}\n onHide={this.close}\n container={popOverContainer || (() => findDOMNode(this))}\n rootClose={false}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx('ColorPicker-popover', popoverClassName)}\n onHide={this.close}\n overlay\n >\n {allowCustomColor ? (\n <SketchPicker\n styles={{}}\n disableAlpha={!!~['rgb', 'hex'].indexOf(format as string)}\n color={value}\n presetColors={presetColors}\n onChangeComplete={this.handleChange}\n />\n ) : (\n <GithubPicker\n color={value}\n colors={\n Array.isArray(presetColors)\n ? (presetColors\n .filter(\n item => typeof item === 'string' || isObject(item)\n )\n .map(item =>\n typeof item === 'string'\n ? item\n : isObject(item)\n ? item?.color\n : item\n ) as string[])\n : undefined\n }\n onChangeComplete={this.handleChange}\n />\n )}\n </PopOver>\n </Overlay>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(ColorControl, {\n value: 'onChange'\n })\n )\n);\n"
12
12
  ]
13
13
  }