@webiny/ui 0.0.0-mt-2 → 0.0.0-unstable.085ff6572f

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 (490) hide show
  1. package/Accordion/Accordion.d.ts +5 -5
  2. package/Accordion/Accordion.js +22 -22
  3. package/Accordion/Accordion.js.map +1 -0
  4. package/Accordion/Accordion.stories.js +26 -23
  5. package/Accordion/Accordion.stories.js.map +1 -0
  6. package/Accordion/AccordionItem.d.ts +27 -8
  7. package/Accordion/AccordionItem.js +91 -84
  8. package/Accordion/AccordionItem.js.map +1 -0
  9. package/Accordion/AccordionItemActions.d.ts +8 -0
  10. package/Accordion/AccordionItemActions.js +28 -0
  11. package/Accordion/AccordionItemActions.js.map +1 -0
  12. package/Accordion/index.js +27 -2
  13. package/Accordion/index.js.map +1 -0
  14. package/Alert/Alert.d.ts +4 -4
  15. package/Alert/Alert.js +19 -15
  16. package/Alert/Alert.js.map +1 -0
  17. package/Alert/Alert.stories.js +16 -13
  18. package/Alert/Alert.stories.js.map +1 -0
  19. package/Alert/index.js +16 -1
  20. package/Alert/index.js.map +1 -0
  21. package/AutoComplete/AutoComplete.d.ts +13 -19
  22. package/AutoComplete/AutoComplete.js +150 -149
  23. package/AutoComplete/AutoComplete.js.map +1 -0
  24. package/AutoComplete/AutoComplete.stories.js +20 -17
  25. package/AutoComplete/AutoComplete.stories.js.map +1 -0
  26. package/AutoComplete/MultiAutoComplete.d.ts +44 -40
  27. package/AutoComplete/MultiAutoComplete.js +304 -311
  28. package/AutoComplete/MultiAutoComplete.js.map +1 -0
  29. package/AutoComplete/MultiAutoComplete.stories.js +31 -28
  30. package/AutoComplete/MultiAutoComplete.stories.js.map +1 -0
  31. package/AutoComplete/index.js +27 -2
  32. package/AutoComplete/index.js.map +1 -0
  33. package/AutoComplete/styles.js +33 -4
  34. package/AutoComplete/styles.js.map +1 -0
  35. package/AutoComplete/types.d.ts +4 -3
  36. package/AutoComplete/types.js +5 -1
  37. package/AutoComplete/types.js.map +1 -0
  38. package/AutoComplete/utils.d.ts +11 -5
  39. package/AutoComplete/utils.js +15 -8
  40. package/AutoComplete/utils.js.map +1 -0
  41. package/Avatar/Avatar.d.ts +5 -11
  42. package/Avatar/Avatar.js +37 -28
  43. package/Avatar/Avatar.js.map +1 -0
  44. package/Avatar/Avatar.stories.js +13 -10
  45. package/Avatar/Avatar.stories.js.map +1 -0
  46. package/Avatar/index.js +16 -1
  47. package/Avatar/index.js.map +1 -0
  48. package/Button/Button.d.ts +39 -24
  49. package/Button/Button.js +74 -83
  50. package/Button/Button.js.map +1 -0
  51. package/Button/Button.stories.js +32 -29
  52. package/Button/Button.stories.js.map +1 -0
  53. package/Button/Button.styles.d.ts +6 -0
  54. package/Button/Button.styles.js +13 -0
  55. package/Button/Button.styles.js.map +1 -0
  56. package/Button/CopyButton/CopyButton.d.ts +4 -7
  57. package/Button/CopyButton/CopyButton.js +18 -18
  58. package/Button/CopyButton/CopyButton.js.map +1 -0
  59. package/Button/CopyButton/CopyButton.stories.js +13 -10
  60. package/Button/CopyButton/CopyButton.stories.js.map +1 -0
  61. package/Button/IconButton/IconButton.d.ts +4 -7
  62. package/Button/IconButton/IconButton.js +16 -15
  63. package/Button/IconButton/IconButton.js.map +1 -0
  64. package/Button/IconButton/IconButton.stories.js +22 -19
  65. package/Button/IconButton/IconButton.stories.js.map +1 -0
  66. package/Button/index.js +38 -3
  67. package/Button/index.js.map +1 -0
  68. package/Carousel/Carousel.d.ts +3 -3
  69. package/Carousel/Carousel.js +24 -25
  70. package/Carousel/Carousel.js.map +1 -0
  71. package/Carousel/Carouser.stories.js +20 -17
  72. package/Carousel/Carouser.stories.js.map +1 -0
  73. package/Carousel/index.js +13 -1
  74. package/Carousel/index.js.map +1 -0
  75. package/Checkbox/Checkbox.d.ts +6 -9
  76. package/Checkbox/Checkbox.js +40 -44
  77. package/Checkbox/Checkbox.js.map +1 -0
  78. package/Checkbox/Checkbox.stories.js +19 -16
  79. package/Checkbox/Checkbox.stories.js.map +1 -0
  80. package/Checkbox/Checkbox.styles.js +9 -4
  81. package/Checkbox/Checkbox.styles.js.map +1 -0
  82. package/Checkbox/CheckboxGroup.d.ts +2 -2
  83. package/Checkbox/CheckboxGroup.js +34 -35
  84. package/Checkbox/CheckboxGroup.js.map +1 -0
  85. package/Checkbox/CheckboxGroup.stories.js +23 -20
  86. package/Checkbox/CheckboxGroup.stories.js.map +1 -0
  87. package/Checkbox/index.js +20 -2
  88. package/Checkbox/index.js.map +1 -0
  89. package/Chips/Chip.d.ts +3 -8
  90. package/Chips/Chip.js +15 -8
  91. package/Chips/Chip.js.map +1 -0
  92. package/Chips/Chips.d.ts +4 -4
  93. package/Chips/Chips.js +21 -14
  94. package/Chips/Chips.js.map +1 -0
  95. package/Chips/Chips.stories.js +25 -18
  96. package/Chips/Chips.stories.js.map +1 -0
  97. package/Chips/index.d.ts +0 -1
  98. package/Chips/index.js +27 -3
  99. package/Chips/index.js.map +1 -0
  100. package/Chips/styles.js +19 -9
  101. package/Chips/styles.js.map +1 -0
  102. package/CodeEditor/CodeEditor.d.ts +5 -8
  103. package/CodeEditor/CodeEditor.js +42 -49
  104. package/CodeEditor/CodeEditor.js.map +1 -0
  105. package/CodeEditor/CodeEditor.stories.js +20 -17
  106. package/CodeEditor/CodeEditor.stories.js.map +1 -0
  107. package/CodeEditor/index.js +16 -1
  108. package/CodeEditor/index.js.map +1 -0
  109. package/ColorPicker/ColorPicker.d.ts +9 -10
  110. package/ColorPicker/ColorPicker.js +54 -66
  111. package/ColorPicker/ColorPicker.js.map +1 -0
  112. package/ColorPicker/ColorPicker.stories.js +18 -15
  113. package/ColorPicker/ColorPicker.stories.js.map +1 -0
  114. package/ColorPicker/index.js +16 -1
  115. package/ColorPicker/index.js.map +1 -0
  116. package/ConfirmationDialog/ConfirmationDialog.d.ts +13 -13
  117. package/ConfirmationDialog/ConfirmationDialog.js +76 -96
  118. package/ConfirmationDialog/ConfirmationDialog.js.map +1 -0
  119. package/ConfirmationDialog/ConfirmationDialog.stories.js +15 -12
  120. package/ConfirmationDialog/ConfirmationDialog.stories.js.map +1 -0
  121. package/ConfirmationDialog/index.js +27 -2
  122. package/ConfirmationDialog/index.js.map +1 -0
  123. package/ConfirmationDialog/withConfirmation.d.ts +2 -2
  124. package/ConfirmationDialog/withConfirmation.js +14 -6
  125. package/ConfirmationDialog/withConfirmation.js.map +1 -0
  126. package/DataTable/DataTable.d.ts +75 -0
  127. package/DataTable/DataTable.js +198 -0
  128. package/DataTable/DataTable.js.map +1 -0
  129. package/DataTable/DataTable.stories.d.ts +1 -0
  130. package/DataTable/DataTable.stories.js +74 -0
  131. package/DataTable/DataTable.stories.js.map +1 -0
  132. package/DataTable/README.md +72 -0
  133. package/DataTable/index.d.ts +1 -0
  134. package/DataTable/index.js +16 -0
  135. package/DataTable/index.js.map +1 -0
  136. package/DataTable/styled.d.ts +30 -0
  137. package/DataTable/styled.js +36 -0
  138. package/DataTable/styled.js.map +1 -0
  139. package/DelayedOnChange/DelayedOnChange.d.ts +40 -0
  140. package/DelayedOnChange/DelayedOnChange.js +113 -0
  141. package/DelayedOnChange/DelayedOnChange.js.map +1 -0
  142. package/DelayedOnChange/index.d.ts +2 -0
  143. package/DelayedOnChange/index.js +20 -0
  144. package/DelayedOnChange/index.js.map +1 -0
  145. package/DelayedOnChange/withDelayedOnChange.d.ts +3 -0
  146. package/DelayedOnChange/withDelayedOnChange.js +31 -0
  147. package/DelayedOnChange/withDelayedOnChange.js.map +1 -0
  148. package/Dialog/Dialog.d.ts +22 -30
  149. package/Dialog/Dialog.js +59 -55
  150. package/Dialog/Dialog.js.map +1 -0
  151. package/Dialog/Dialog.stories.js +19 -16
  152. package/Dialog/Dialog.stories.js.map +1 -0
  153. package/Dialog/index.js +16 -1
  154. package/Dialog/index.js.map +1 -0
  155. package/Drawer/Drawer.d.ts +1 -1
  156. package/Drawer/Drawer.js +14 -9
  157. package/Drawer/Drawer.js.map +1 -0
  158. package/Drawer/Drawer.stories.js +18 -15
  159. package/Drawer/Drawer.stories.js.map +1 -0
  160. package/Drawer/index.js +16 -1
  161. package/Drawer/index.js.map +1 -0
  162. package/DynamicFieldset/Fieldset.d.ts +26 -16
  163. package/DynamicFieldset/Fieldset.js +69 -74
  164. package/DynamicFieldset/Fieldset.js.map +1 -0
  165. package/DynamicFieldset/index.js +13 -1
  166. package/DynamicFieldset/index.js.map +1 -0
  167. package/Elevation/Elevation.d.ts +1 -1
  168. package/Elevation/Elevation.js +12 -6
  169. package/Elevation/Elevation.js.map +1 -0
  170. package/Elevation/Elevation.stories.js +19 -16
  171. package/Elevation/Elevation.stories.js.map +1 -0
  172. package/Elevation/index.js +16 -1
  173. package/Elevation/index.js.map +1 -0
  174. package/FormElementMessage/FormElementMessage.d.ts +1 -1
  175. package/FormElementMessage/FormElementMessage.js +11 -6
  176. package/FormElementMessage/FormElementMessage.js.map +1 -0
  177. package/FormElementMessage/index.js +12 -1
  178. package/FormElementMessage/index.js.map +1 -0
  179. package/FullName/FullName.js +7 -7
  180. package/FullName/FullName.js.map +1 -0
  181. package/FullName/index.js +16 -1
  182. package/FullName/index.js.map +1 -0
  183. package/Grid/Grid.d.ts +1 -1
  184. package/Grid/Grid.js +19 -10
  185. package/Grid/Grid.js.map +1 -0
  186. package/Grid/Grid.stories.js +15 -12
  187. package/Grid/Grid.stories.js.map +1 -0
  188. package/Grid/index.js +16 -1
  189. package/Grid/index.js.map +1 -0
  190. package/Helpers/ClassNames.d.ts +4 -3
  191. package/Helpers/ClassNames.js +16 -14
  192. package/Helpers/ClassNames.js.map +1 -0
  193. package/Helpers/index.js +12 -2
  194. package/Helpers/index.js.map +1 -0
  195. package/Icon/Icon.d.ts +3 -6
  196. package/Icon/Icon.js +15 -12
  197. package/Icon/Icon.js.map +1 -0
  198. package/Icon/Icon.stories.js +23 -20
  199. package/Icon/Icon.stories.js.map +1 -0
  200. package/Icon/index.js +16 -1
  201. package/Icon/index.js.map +1 -0
  202. package/Image/Image.d.ts +5 -4
  203. package/Image/Image.js +17 -13
  204. package/Image/Image.js.map +1 -0
  205. package/Image/Image.stories.js +14 -11
  206. package/Image/Image.stories.js.map +1 -0
  207. package/Image/index.js +16 -1
  208. package/Image/index.js.map +1 -0
  209. package/ImageEditor/ImageEditor.d.ts +33 -34
  210. package/ImageEditor/ImageEditor.js +129 -163
  211. package/ImageEditor/ImageEditor.js.map +1 -0
  212. package/ImageEditor/index.js +16 -1
  213. package/ImageEditor/index.js.map +1 -0
  214. package/ImageEditor/toolbar/crop.js +26 -22
  215. package/ImageEditor/toolbar/crop.js.map +1 -0
  216. package/ImageEditor/toolbar/filter.js +63 -59
  217. package/ImageEditor/toolbar/filter.js.map +1 -0
  218. package/ImageEditor/toolbar/flip.js +27 -25
  219. package/ImageEditor/toolbar/flip.js.map +1 -0
  220. package/ImageEditor/toolbar/icons/index.js +61 -8
  221. package/ImageEditor/toolbar/icons/index.js.map +1 -0
  222. package/ImageEditor/toolbar/index.js +34 -4
  223. package/ImageEditor/toolbar/index.js.map +1 -0
  224. package/ImageEditor/toolbar/rotate.js +55 -61
  225. package/ImageEditor/toolbar/rotate.js.map +1 -0
  226. package/ImageEditor/toolbar/types.d.ts +23 -12
  227. package/ImageEditor/toolbar/types.js +5 -1
  228. package/ImageEditor/toolbar/types.js.map +1 -0
  229. package/ImageUpload/Image.d.ts +6 -6
  230. package/ImageUpload/Image.js +52 -54
  231. package/ImageUpload/Image.js.map +1 -0
  232. package/ImageUpload/ImageEditorDialog.d.ts +11 -6
  233. package/ImageUpload/ImageEditorDialog.js +47 -46
  234. package/ImageUpload/ImageEditorDialog.js.map +1 -0
  235. package/ImageUpload/MultiImageUpload.d.ts +10 -31
  236. package/ImageUpload/MultiImageUpload.js +194 -222
  237. package/ImageUpload/MultiImageUpload.js.map +1 -0
  238. package/ImageUpload/MultiImageUpload.stories.js +18 -15
  239. package/ImageUpload/MultiImageUpload.stories.js.map +1 -0
  240. package/ImageUpload/SingleImageUpload.d.ts +16 -37
  241. package/ImageUpload/SingleImageUpload.js +96 -106
  242. package/ImageUpload/SingleImageUpload.js.map +1 -0
  243. package/ImageUpload/SingleImageUpload.stories.js +19 -16
  244. package/ImageUpload/SingleImageUpload.stories.js.map +1 -0
  245. package/ImageUpload/index.js +34 -4
  246. package/ImageUpload/index.js.map +1 -0
  247. package/ImageUpload/styled.d.ts +30 -14
  248. package/ImageUpload/styled.js +25 -16
  249. package/ImageUpload/styled.js.map +1 -0
  250. package/Input/Input.d.ts +6 -19
  251. package/Input/Input.js +102 -141
  252. package/Input/Input.js.map +1 -0
  253. package/Input/Input.stories.js +49 -46
  254. package/Input/Input.stories.js.map +1 -0
  255. package/Input/__tests__/Input.test.js +54 -63
  256. package/Input/__tests__/Input.test.js.map +1 -0
  257. package/Input/index.js +16 -1
  258. package/Input/index.js.map +1 -0
  259. package/Input/styled.d.ts +4 -0
  260. package/Input/styled.js +12 -0
  261. package/Input/styled.js.map +1 -0
  262. package/List/CollapsibleList/CollapsibleList.stories.js +19 -16
  263. package/List/CollapsibleList/CollapsibleList.stories.js.map +1 -0
  264. package/List/CollapsibleList/index.d.ts +2 -2
  265. package/List/CollapsibleList/index.js +15 -6
  266. package/List/CollapsibleList/index.js.map +1 -0
  267. package/List/DataList/DataList.d.ts +24 -43
  268. package/List/DataList/DataList.js +87 -122
  269. package/List/DataList/DataList.js.map +1 -0
  270. package/List/DataList/DataList.stories.js +30 -26
  271. package/List/DataList/DataList.stories.js.map +1 -0
  272. package/List/DataList/DataListModalOverlay/DataListModalOverlay.d.ts +14 -12
  273. package/List/DataList/DataListModalOverlay/DataListModalOverlay.js +29 -20
  274. package/List/DataList/DataListModalOverlay/DataListModalOverlay.js.map +1 -0
  275. package/List/DataList/DataListModalOverlay/DataListModalOverlayAction.d.ts +3 -3
  276. package/List/DataList/DataListModalOverlay/DataListModalOverlayAction.js +20 -13
  277. package/List/DataList/DataListModalOverlay/DataListModalOverlayAction.js.map +1 -0
  278. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.d.ts +9 -4
  279. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.js +24 -12
  280. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.js.map +1 -0
  281. package/List/DataList/DataListModalOverlay/index.js +32 -3
  282. package/List/DataList/DataListModalOverlay/index.js.map +1 -0
  283. package/List/DataList/DataListWithSections.d.ts +45 -0
  284. package/List/DataList/DataListWithSections.js +312 -0
  285. package/List/DataList/DataListWithSections.js.map +1 -0
  286. package/List/DataList/Loader.d.ts +2 -2
  287. package/List/DataList/Loader.js +48 -52
  288. package/List/DataList/Loader.js.map +1 -0
  289. package/List/DataList/NoData.d.ts +2 -2
  290. package/List/DataList/NoData.js +14 -8
  291. package/List/DataList/NoData.js.map +1 -0
  292. package/List/DataList/icons/index.d.ts +1 -1
  293. package/List/DataList/icons/index.js +54 -38
  294. package/List/DataList/icons/index.js.map +1 -0
  295. package/List/DataList/index.d.ts +1 -0
  296. package/List/DataList/index.js +58 -3
  297. package/List/DataList/index.js.map +1 -0
  298. package/List/DataList/types.d.ts +1 -1
  299. package/List/DataList/types.js +5 -1
  300. package/List/DataList/types.js.map +1 -0
  301. package/List/List.d.ts +3 -2
  302. package/List/List.js +66 -62
  303. package/List/List.js.map +1 -0
  304. package/List/List.stories.js +40 -37
  305. package/List/List.stories.js.map +1 -0
  306. package/List/icons/index.js +20 -3
  307. package/List/icons/index.js.map +1 -0
  308. package/List/index.d.ts +1 -1
  309. package/List/index.js +70 -3
  310. package/List/index.js.map +1 -0
  311. package/Menu/Menu.d.ts +14 -21
  312. package/Menu/Menu.js +49 -62
  313. package/Menu/Menu.js.map +1 -0
  314. package/Menu/Menu.stories.js +17 -14
  315. package/Menu/Menu.stories.js.map +1 -0
  316. package/Menu/index.js +16 -1
  317. package/Menu/index.js.map +1 -0
  318. package/Mosaic/Mosaic.d.ts +4 -14
  319. package/Mosaic/Mosaic.js +20 -7
  320. package/Mosaic/Mosaic.js.map +1 -0
  321. package/Mosaic/Mosaic.stories.js +31 -28
  322. package/Mosaic/Mosaic.stories.js.map +1 -0
  323. package/Mosaic/index.js +16 -1
  324. package/Mosaic/index.js.map +1 -0
  325. package/Progress/CircularProgress.d.ts +8 -16
  326. package/Progress/CircularProgress.js +32 -22
  327. package/Progress/CircularProgress.js.map +1 -0
  328. package/Progress/index.js +13 -1
  329. package/Progress/index.js.map +1 -0
  330. package/Radio/Radio.d.ts +2 -6
  331. package/Radio/Radio.js +36 -41
  332. package/Radio/Radio.js.map +1 -0
  333. package/Radio/Radio.styles.js +9 -4
  334. package/Radio/Radio.styles.js.map +1 -0
  335. package/Radio/RadioGroup.d.ts +1 -6
  336. package/Radio/RadioGroup.js +30 -34
  337. package/Radio/RadioGroup.js.map +1 -0
  338. package/Radio/RadioGroup.stories.js +23 -20
  339. package/Radio/RadioGroup.stories.js.map +1 -0
  340. package/Radio/index.js +20 -2
  341. package/Radio/index.js.map +1 -0
  342. package/RichTextEditor/RichTextEditor.d.ts +13 -9
  343. package/RichTextEditor/RichTextEditor.js +79 -78
  344. package/RichTextEditor/RichTextEditor.js.map +1 -0
  345. package/RichTextEditor/RichTextEditor.stories.js +15 -11
  346. package/RichTextEditor/RichTextEditor.stories.js.map +1 -0
  347. package/RichTextEditor/createPropsFromConfig.d.ts +11 -1
  348. package/RichTextEditor/createPropsFromConfig.js +16 -5
  349. package/RichTextEditor/createPropsFromConfig.js.map +1 -0
  350. package/RichTextEditor/index.d.ts +1 -0
  351. package/RichTextEditor/index.js +27 -2
  352. package/RichTextEditor/index.js.map +1 -0
  353. package/Ripple/Ripple.d.ts +4 -5
  354. package/Ripple/Ripple.js +11 -6
  355. package/Ripple/Ripple.js.map +1 -0
  356. package/Ripple/Ripple.stories.js +45 -42
  357. package/Ripple/Ripple.stories.js.map +1 -0
  358. package/Ripple/index.js +16 -1
  359. package/Ripple/index.js.map +1 -0
  360. package/Scrollbar/Scrollbar.d.ts +5 -5
  361. package/Scrollbar/Scrollbar.js +10 -5
  362. package/Scrollbar/Scrollbar.js.map +1 -0
  363. package/Scrollbar/Scrollbar.stories.js +12 -9
  364. package/Scrollbar/Scrollbar.stories.js.map +1 -0
  365. package/Scrollbar/index.js +16 -1
  366. package/Scrollbar/index.js.map +1 -0
  367. package/Section/Section.stories.js +15 -12
  368. package/Section/Section.stories.js.map +1 -0
  369. package/Section/index.d.ts +4 -5
  370. package/Section/index.js +23 -18
  371. package/Section/index.js.map +1 -0
  372. package/Select/Select.d.ts +8 -10
  373. package/Select/Select.js +79 -39
  374. package/Select/Select.js.map +1 -0
  375. package/Select/Select.stories.js +28 -25
  376. package/Select/Select.stories.js.map +1 -0
  377. package/Select/index.js +16 -1
  378. package/Select/index.js.map +1 -0
  379. package/Select/styled.d.ts +8 -0
  380. package/Select/styled.js +18 -0
  381. package/Select/styled.js.map +1 -0
  382. package/Skeleton/README.md +21 -0
  383. package/Skeleton/Skeleton.d.ts +8 -0
  384. package/Skeleton/Skeleton.js +22 -0
  385. package/Skeleton/Skeleton.js.map +1 -0
  386. package/Skeleton/Skeleton.stories.d.ts +1 -0
  387. package/Skeleton/Skeleton.stories.js +22 -0
  388. package/Skeleton/Skeleton.stories.js.map +1 -0
  389. package/Skeleton/index.d.ts +1 -0
  390. package/Skeleton/index.js +16 -0
  391. package/Skeleton/index.js.map +1 -0
  392. package/Slider/Slider.d.ts +1 -6
  393. package/Slider/Slider.js +39 -47
  394. package/Slider/Slider.js.map +1 -0
  395. package/Slider/Slider.stories.js +20 -17
  396. package/Slider/Slider.stories.js.map +1 -0
  397. package/Slider/index.js +13 -1
  398. package/Slider/index.js.map +1 -0
  399. package/Snackbar/Snackbar.d.ts +5 -7
  400. package/Snackbar/Snackbar.js +29 -33
  401. package/Snackbar/Snackbar.js.map +1 -0
  402. package/Snackbar/Snackbar.stories.js +29 -38
  403. package/Snackbar/Snackbar.stories.js.map +1 -0
  404. package/Snackbar/index.js +18 -1
  405. package/Snackbar/index.js.map +1 -0
  406. package/Switch/Switch.d.ts +3 -7
  407. package/Switch/Switch.js +35 -43
  408. package/Switch/Switch.js.map +1 -0
  409. package/Switch/Switch.stories.js +19 -16
  410. package/Switch/Switch.stories.js.map +1 -0
  411. package/Switch/index.js +16 -1
  412. package/Switch/index.js.map +1 -0
  413. package/Tabs/Tab.d.ts +7 -2
  414. package/Tabs/Tab.js +30 -9
  415. package/Tabs/Tab.js.map +1 -0
  416. package/Tabs/Tabs.d.ts +44 -21
  417. package/Tabs/Tabs.js +128 -129
  418. package/Tabs/Tabs.js.map +1 -0
  419. package/Tabs/Tabs.stories.js +25 -23
  420. package/Tabs/Tabs.stories.js.map +1 -0
  421. package/Tabs/index.js +27 -2
  422. package/Tabs/index.js.map +1 -0
  423. package/Tags/Tags.d.ts +9 -21
  424. package/Tags/Tags.js +95 -124
  425. package/Tags/Tags.js.map +1 -0
  426. package/Tags/Tags.stories.js +19 -16
  427. package/Tags/Tags.stories.js.map +1 -0
  428. package/Tags/index.js +16 -1
  429. package/Tags/index.js.map +1 -0
  430. package/Tooltip/Tooltip.d.ts +9 -8
  431. package/Tooltip/Tooltip.js +33 -33
  432. package/Tooltip/Tooltip.js.map +1 -0
  433. package/Tooltip/Tooltip.stories.js +14 -11
  434. package/Tooltip/Tooltip.stories.js.map +1 -0
  435. package/Tooltip/index.js +16 -1
  436. package/Tooltip/index.js.map +1 -0
  437. package/TopAppBar/TopAppBar.d.ts +1 -1
  438. package/TopAppBar/TopAppBar.js +13 -9
  439. package/TopAppBar/TopAppBar.js.map +1 -0
  440. package/TopAppBar/TopAppBar.stories.js +31 -30
  441. package/TopAppBar/TopAppBar.stories.js.map +1 -0
  442. package/TopAppBar/TopAppBarActionItem.d.ts +1 -1
  443. package/TopAppBar/TopAppBarActionItem.js +10 -5
  444. package/TopAppBar/TopAppBarActionItem.js.map +1 -0
  445. package/TopAppBar/TopAppBarNavigationIcon.d.ts +1 -1
  446. package/TopAppBar/TopAppBarNavigationIcon.js +10 -5
  447. package/TopAppBar/TopAppBarNavigationIcon.js.map +1 -0
  448. package/TopAppBar/TopAppBarPrimary.js +13 -9
  449. package/TopAppBar/TopAppBarPrimary.js.map +1 -0
  450. package/TopAppBar/TopAppBarSecondary.js +15 -11
  451. package/TopAppBar/TopAppBarSecondary.js.map +1 -0
  452. package/TopAppBar/TopAppBarSection.d.ts +1 -1
  453. package/TopAppBar/TopAppBarSection.js +13 -9
  454. package/TopAppBar/TopAppBarSection.js.map +1 -0
  455. package/TopAppBar/TopAppBarTitle.d.ts +1 -1
  456. package/TopAppBar/TopAppBarTitle.js +13 -9
  457. package/TopAppBar/TopAppBarTitle.js.map +1 -0
  458. package/TopAppBar/index.js +82 -7
  459. package/TopAppBar/index.js.map +1 -0
  460. package/TopProgressBar/TopProgressBar.d.ts +7 -7
  461. package/TopProgressBar/TopProgressBar.js +15 -7
  462. package/TopProgressBar/TopProgressBar.js.map +1 -0
  463. package/TopProgressBar/TopProgressBar.stories.js +16 -13
  464. package/TopProgressBar/TopProgressBar.stories.js.map +1 -0
  465. package/TopProgressBar/hoc/index.js +13 -1
  466. package/TopProgressBar/hoc/index.js.map +1 -0
  467. package/TopProgressBar/hoc/withTopProgressBar.d.ts +1 -1
  468. package/TopProgressBar/hoc/withTopProgressBar.js +14 -9
  469. package/TopProgressBar/hoc/withTopProgressBar.js.map +1 -0
  470. package/TopProgressBar/index.js +16 -1
  471. package/TopProgressBar/index.js.map +1 -0
  472. package/Typography/Typography.d.ts +5 -5
  473. package/Typography/Typography.js +10 -5
  474. package/Typography/Typography.js.map +1 -0
  475. package/Typography/Typography.stories.js +37 -34
  476. package/Typography/Typography.stories.js.map +1 -0
  477. package/Typography/index.js +16 -1
  478. package/Typography/index.js.map +1 -0
  479. package/package.json +76 -81
  480. package/styles.scss +3 -4
  481. package/types.d.ts +4 -4
  482. package/types.js +5 -1
  483. package/types.js.map +1 -0
  484. package/Chips/ChipIcon.d.ts +0 -4
  485. package/Chips/ChipIcon.js +0 -8
  486. package/rmwc/textfield/code/index.d.ts +0 -135
  487. package/rmwc/textfield/code/index.js +0 -571
  488. package/rmwc/textfield/next/index.d.ts +0 -135
  489. package/rmwc/textfield/next/index.js +0 -560
  490. package/rmwc/textfield/package.json +0 -45
@@ -0,0 +1,198 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.DataTable = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _dataTable = require("@rmwc/data-table");
14
+ var _reactTable = require("@tanstack/react-table");
15
+ var _Checkbox = require("../Checkbox");
16
+ var _Skeleton = require("../Skeleton");
17
+ require("@rmwc/data-table/data-table.css");
18
+ var _styled = require("./styled");
19
+ var defineColumns = function defineColumns(columns, options) {
20
+ var canSelectAllRows = options.canSelectAllRows,
21
+ onSelectRow = options.onSelectRow,
22
+ loadingInitial = options.loadingInitial;
23
+ return (0, _react.useMemo)(function () {
24
+ var columnsList = Object.keys(columns).map(function (key) {
25
+ return (0, _objectSpread3.default)({
26
+ id: key
27
+ }, columns[key]);
28
+ });
29
+ var defaults = columnsList.map(function (column) {
30
+ var id = column.id,
31
+ _header = column.header,
32
+ meta = column.meta,
33
+ _cell = column.cell,
34
+ _column$enableSorting = column.enableSorting,
35
+ enableSorting = _column$enableSorting === void 0 ? false : _column$enableSorting,
36
+ className = column.className;
37
+ return {
38
+ accessorKey: id,
39
+ header: function header() {
40
+ return _header;
41
+ },
42
+ cell: function cell(info) {
43
+ if (_cell && typeof _cell === "function") {
44
+ return _cell(info.row.original);
45
+ } else {
46
+ return info.getValue();
47
+ }
48
+ },
49
+ enableSorting: enableSorting,
50
+ meta: (0, _objectSpread3.default)((0, _objectSpread3.default)({}, meta), {}, {
51
+ className: className
52
+ })
53
+ };
54
+ });
55
+ var select = !!onSelectRow ? [{
56
+ id: "datatable-select-column",
57
+ header: function header(_ref) {
58
+ var table = _ref.table;
59
+ if (!canSelectAllRows) {
60
+ return null;
61
+ }
62
+ return !loadingInitial && /*#__PURE__*/_react.default.createElement(_Checkbox.Checkbox, {
63
+ indeterminate: table.getIsSomeRowsSelected(),
64
+ value: table.getIsAllRowsSelected(),
65
+ onChange: function onChange(e) {
66
+ return table.toggleAllPageRowsSelected(e);
67
+ }
68
+ });
69
+ },
70
+ cell: function cell(info) {
71
+ if (!info.row.getCanSelect()) {
72
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
73
+ }
74
+ return /*#__PURE__*/_react.default.createElement(_Checkbox.Checkbox, {
75
+ indeterminate: info.row.getIsSomeSelected(),
76
+ value: info.row.getIsSelected(),
77
+ onChange: info.row.getToggleSelectedHandler()
78
+ });
79
+ },
80
+ meta: {
81
+ hasFormControl: true,
82
+ className: "datatable-select-column"
83
+ },
84
+ enableSorting: false
85
+ }] : [];
86
+ return [].concat(select, (0, _toConsumableArray2.default)(defaults)).map(function (column) {
87
+ if (loadingInitial) {
88
+ return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, column), {}, {
89
+ cell: function cell() {
90
+ return /*#__PURE__*/_react.default.createElement(_Skeleton.Skeleton, null);
91
+ }
92
+ });
93
+ }
94
+ return column;
95
+ });
96
+ }, [columns, onSelectRow, loadingInitial]);
97
+ };
98
+ var defineData = function defineData(data, loadingInitial) {
99
+ return (0, _react.useMemo)(function () {
100
+ if (loadingInitial) {
101
+ return Array(10).fill({});
102
+ }
103
+ return data;
104
+ }, [data, loadingInitial]);
105
+ };
106
+ var ColumnDirection = function ColumnDirection(_ref2) {
107
+ var direction = _ref2.direction;
108
+ if (direction) {
109
+ return /*#__PURE__*/_react.default.createElement(_styled.ColumnDirectionWrapper, null, /*#__PURE__*/_react.default.createElement(_styled.ColumnDirectionIcon, {
110
+ direction: direction
111
+ }));
112
+ }
113
+ return null;
114
+ };
115
+ var DataTable = function DataTable(_ref3) {
116
+ var data = _ref3.data,
117
+ columns = _ref3.columns,
118
+ onSelectRow = _ref3.onSelectRow,
119
+ loadingInitial = _ref3.loadingInitial,
120
+ stickyColumns = _ref3.stickyColumns,
121
+ stickyRows = _ref3.stickyRows,
122
+ bordered = _ref3.bordered,
123
+ sorting = _ref3.sorting,
124
+ onSortingChange = _ref3.onSortingChange,
125
+ isRowSelectable = _ref3.isRowSelectable,
126
+ _ref3$canSelectAllRow = _ref3.canSelectAllRows,
127
+ canSelectAllRows = _ref3$canSelectAllRow === void 0 ? true : _ref3$canSelectAllRow,
128
+ _ref3$selectedRows = _ref3.selectedRows,
129
+ selectedRows = _ref3$selectedRows === void 0 ? [] : _ref3$selectedRows;
130
+ var rowSelection = (0, _react.useMemo)(function () {
131
+ return selectedRows.reduce(function (acc, item) {
132
+ var recordIndex = data.findIndex(function (rec) {
133
+ return rec.id === item.id;
134
+ });
135
+ return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, acc), {}, (0, _defineProperty2.default)({}, recordIndex, true));
136
+ }, {});
137
+ }, [selectedRows, data]);
138
+ var onRowSelectionChange = function onRowSelectionChange(updater) {
139
+ if (typeof onSelectRow === "function") {
140
+ var newSelection = typeof updater === "function" ? updater(rowSelection) : updater;
141
+ var selection = Object.keys(newSelection).map(function (key) {
142
+ return data[parseInt(key)];
143
+ });
144
+ onSelectRow(selection);
145
+ }
146
+ };
147
+ var table = (0, _reactTable.useReactTable)({
148
+ data: defineData(data, loadingInitial),
149
+ columns: defineColumns(columns, {
150
+ canSelectAllRows: canSelectAllRows,
151
+ onSelectRow: onSelectRow,
152
+ loadingInitial: loadingInitial
153
+ }),
154
+ getCoreRowModel: (0, _reactTable.getCoreRowModel)(),
155
+ getSortedRowModel: (0, _reactTable.getSortedRowModel)(),
156
+ state: {
157
+ rowSelection: rowSelection,
158
+ sorting: sorting
159
+ },
160
+ enableRowSelection: isRowSelectable,
161
+ onRowSelectionChange: onRowSelectionChange,
162
+ enableSorting: !!onSortingChange,
163
+ manualSorting: true,
164
+ onSortingChange: onSortingChange
165
+ });
166
+ return /*#__PURE__*/_react.default.createElement(_styled.Table, {
167
+ stickyColumns: stickyColumns,
168
+ stickyRows: stickyRows,
169
+ bordered: bordered
170
+ }, /*#__PURE__*/_react.default.createElement(_dataTable.DataTableContent, null, /*#__PURE__*/_react.default.createElement(_dataTable.DataTableHead, null, table.getHeaderGroups().map(function (headerGroup) {
171
+ return /*#__PURE__*/_react.default.createElement(_dataTable.DataTableRow, {
172
+ key: headerGroup.id
173
+ }, headerGroup.headers.map(function (_ref4) {
174
+ var id = _ref4.id,
175
+ isPlaceholder = _ref4.isPlaceholder,
176
+ column = _ref4.column,
177
+ getContext = _ref4.getContext;
178
+ return /*#__PURE__*/_react.default.createElement(_dataTable.DataTableHeadCell, Object.assign({
179
+ key: id
180
+ }, column.columnDef.meta), isPlaceholder ? null : /*#__PURE__*/_react.default.createElement(_styled.ColumnHeaderWrapper, {
181
+ onClick: column.getToggleSortingHandler(),
182
+ sortable: column.getCanSort()
183
+ }, (0, _reactTable.flexRender)(column.columnDef.header, getContext()), /*#__PURE__*/_react.default.createElement(ColumnDirection, {
184
+ direction: column.getIsSorted() || undefined
185
+ })));
186
+ }));
187
+ })), /*#__PURE__*/_react.default.createElement(_dataTable.DataTableBody, null, table.getRowModel().rows.map(function (row) {
188
+ return /*#__PURE__*/_react.default.createElement(_dataTable.DataTableRow, {
189
+ key: row.id,
190
+ selected: row.getIsSelected()
191
+ }, row.getVisibleCells().map(function (cell) {
192
+ return /*#__PURE__*/_react.default.createElement(_dataTable.DataTableCell, Object.assign({
193
+ key: cell.id
194
+ }, cell.column.columnDef.meta), (0, _reactTable.flexRender)(cell.column.columnDef.cell, cell.getContext()));
195
+ }));
196
+ }))));
197
+ };
198
+ exports.DataTable = DataTable;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defineColumns","columns","options","canSelectAllRows","onSelectRow","loadingInitial","useMemo","columnsList","Object","keys","map","key","id","defaults","column","header","meta","cell","enableSorting","className","accessorKey","info","row","original","getValue","select","table","getIsSomeRowsSelected","getIsAllRowsSelected","e","toggleAllPageRowsSelected","getCanSelect","getIsSomeSelected","getIsSelected","getToggleSelectedHandler","hasFormControl","defineData","data","Array","fill","ColumnDirection","direction","DataTable","stickyColumns","stickyRows","bordered","sorting","onSortingChange","isRowSelectable","selectedRows","rowSelection","reduce","acc","item","recordIndex","findIndex","rec","onRowSelectionChange","updater","newSelection","selection","parseInt","useReactTable","getCoreRowModel","getSortedRowModel","state","enableRowSelection","manualSorting","getHeaderGroups","headerGroup","headers","isPlaceholder","getContext","columnDef","getToggleSortingHandler","getCanSort","flexRender","getIsSorted","undefined","getRowModel","rows","getVisibleCells"],"sources":["DataTable.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from \"react\";\n\nimport {\n DataTableContent,\n DataTableHead,\n DataTableRow,\n DataTableHeadCell,\n DataTableBody,\n DataTableCell,\n DataTableCellProps\n} from \"@rmwc/data-table\";\n\nimport {\n flexRender,\n getCoreRowModel,\n useReactTable,\n ColumnDef,\n getSortedRowModel,\n OnChangeFn,\n SortingState,\n RowSelectionState,\n Row\n} from \"@tanstack/react-table\";\n\nimport { Checkbox } from \"~/Checkbox\";\nimport { Skeleton } from \"~/Skeleton\";\n\nimport \"@rmwc/data-table/data-table.css\";\nimport { ColumnDirectionIcon, ColumnDirectionWrapper, ColumnHeaderWrapper, Table } from \"./styled\";\n\ninterface Column<T> {\n /*\n * Column header component.\n */\n header: string | number | JSX.Element;\n /*\n * Cell renderer, receives the full row and returns the value to render inside the cell.\n */\n cell?: (row: T) => string | number | JSX.Element;\n /*\n * Additional props to add to both header and row cells. Refer to RMWC documentation.\n */\n meta?: DataTableCellProps;\n /*\n * Column class names.\n */\n className?: string;\n /*\n * Enable column sorting.\n */\n enableSorting?: boolean;\n}\n\nexport type Columns<T> = {\n [P in keyof T]?: Column<T>;\n};\n\nexport type DefaultData = {\n id: string;\n /*\n * Define if a specific row can be selected.\n */\n selectable?: boolean;\n};\n\nexport type Sorting = SortingState;\n\nexport type OnSortingChange = OnChangeFn<Sorting>;\n\ninterface Props<T> {\n /**\n * Show or hide borders.\n */\n bordered?: boolean;\n /**\n * Controls whether \"select all\" action is allowed.\n */\n canSelectAllRows?: boolean;\n /**\n * Columns definition.\n */\n columns: Columns<T>;\n /**\n * Data to display into DataTable body.\n */\n data: T[];\n /**\n * Callback that is called to determine if the row is selectable.\n */\n isRowSelectable?: (row: Row<T>) => boolean;\n /**\n * Render the skeleton state at the initial data loading.\n */\n loadingInitial?: boolean;\n /**\n * Callback that receives the selected rows.\n */\n onSelectRow?: (rows: T[]) => void;\n /**\n * Callback that receives current sorting state.\n */\n onSortingChange?: OnSortingChange;\n /**\n * Selected rows.\n */\n selectedRows?: T[];\n /**\n * Sorting state.\n */\n sorting?: Sorting;\n /**\n * The number of columns to affix to the side of the table when scrolling.\n */\n stickyColumns?: number;\n /**\n * The number of rows to affix to the top of the table when scrolling.\n */\n stickyRows?: number;\n}\n\nexport interface ColumnDirectionProps {\n direction?: \"asc\" | \"desc\";\n}\n\ninterface DefineColumnsOptions<T> {\n canSelectAllRows: boolean;\n onSelectRow: Props<T>[\"onSelectRow\"];\n loadingInitial: Props<T>[\"loadingInitial\"];\n}\n\nconst defineColumns = <T,>(\n columns: Props<T>[\"columns\"],\n options: DefineColumnsOptions<T>\n): ColumnDef<T>[] => {\n const { canSelectAllRows, onSelectRow, loadingInitial } = options;\n\n return useMemo(() => {\n const columnsList = Object.keys(columns).map(key => ({\n id: key,\n ...columns[key as keyof typeof columns]\n }));\n\n const defaults: ColumnDef<T>[] = columnsList.map(column => {\n const { id, header, meta, cell, enableSorting = false, className } = column;\n\n return {\n accessorKey: id,\n header: () => header,\n cell: info => {\n if (cell && typeof cell === \"function\") {\n return cell(info.row.original);\n } else {\n return info.getValue();\n }\n },\n enableSorting,\n meta: {\n ...meta,\n className\n }\n };\n });\n\n const select: ColumnDef<T>[] = !!onSelectRow\n ? [\n {\n id: \"datatable-select-column\",\n header: ({ table }) => {\n if (!canSelectAllRows) {\n return null;\n }\n\n return (\n !loadingInitial && (\n <Checkbox\n indeterminate={table.getIsSomeRowsSelected()}\n value={table.getIsAllRowsSelected()}\n onChange={e => table.toggleAllPageRowsSelected(e)}\n />\n )\n );\n },\n cell: info => {\n if (!info.row.getCanSelect()) {\n return <></>;\n }\n return (\n <Checkbox\n indeterminate={info.row.getIsSomeSelected()}\n value={info.row.getIsSelected()}\n onChange={info.row.getToggleSelectedHandler()}\n />\n );\n },\n meta: {\n hasFormControl: true,\n className: \"datatable-select-column\"\n },\n enableSorting: false\n }\n ]\n : [];\n\n return [...select, ...defaults].map(column => {\n if (loadingInitial) {\n return {\n ...column,\n cell: () => <Skeleton />\n };\n }\n\n return column;\n });\n }, [columns, onSelectRow, loadingInitial]);\n};\n\nconst defineData = <T,>(\n data: Props<T>[\"data\"],\n loadingInitial: Props<T>[\"loadingInitial\"]\n): T[] => {\n return useMemo(() => {\n if (loadingInitial) {\n return Array(10).fill({});\n }\n return data;\n }, [data, loadingInitial]);\n};\n\nconst ColumnDirection = ({ direction }: ColumnDirectionProps): ReactElement | null => {\n if (direction) {\n return (\n <ColumnDirectionWrapper>\n <ColumnDirectionIcon direction={direction} />\n </ColumnDirectionWrapper>\n );\n }\n\n return null;\n};\n\nexport const DataTable = <T extends Object & DefaultData>({\n data,\n columns,\n onSelectRow,\n loadingInitial,\n stickyColumns,\n stickyRows,\n bordered,\n sorting,\n onSortingChange,\n isRowSelectable,\n canSelectAllRows = true,\n selectedRows = []\n}: Props<T>) => {\n const rowSelection = useMemo(() => {\n return selectedRows.reduce<RowSelectionState>((acc, item) => {\n const recordIndex = data.findIndex(rec => rec.id === item.id);\n return { ...acc, [recordIndex]: true };\n }, {});\n }, [selectedRows, data]);\n\n const onRowSelectionChange: OnChangeFn<RowSelectionState> = updater => {\n if (typeof onSelectRow === \"function\") {\n const newSelection = typeof updater === \"function\" ? updater(rowSelection) : updater;\n const selection = Object.keys(newSelection).map(key => data[parseInt(key)]);\n onSelectRow(selection);\n }\n };\n\n const table = useReactTable({\n data: defineData(data, loadingInitial),\n columns: defineColumns(columns, { canSelectAllRows, onSelectRow, loadingInitial }),\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: getSortedRowModel(),\n state: {\n rowSelection,\n sorting\n },\n enableRowSelection: isRowSelectable,\n onRowSelectionChange,\n enableSorting: !!onSortingChange,\n manualSorting: true,\n onSortingChange\n });\n\n return (\n <Table stickyColumns={stickyColumns} stickyRows={stickyRows} bordered={bordered}>\n <DataTableContent>\n <DataTableHead>\n {table.getHeaderGroups().map(headerGroup => (\n <DataTableRow key={headerGroup.id}>\n {headerGroup.headers.map(\n ({ id, isPlaceholder, column, getContext }) => (\n <DataTableHeadCell key={id} {...column.columnDef.meta}>\n {isPlaceholder ? null : (\n <ColumnHeaderWrapper\n onClick={column.getToggleSortingHandler()}\n sortable={column.getCanSort()}\n >\n {flexRender(column.columnDef.header, getContext())}\n <ColumnDirection\n direction={column.getIsSorted() || undefined}\n />\n </ColumnHeaderWrapper>\n )}\n </DataTableHeadCell>\n )\n )}\n </DataTableRow>\n ))}\n </DataTableHead>\n <DataTableBody>\n {table.getRowModel().rows.map(row => (\n <DataTableRow key={row.id} selected={row.getIsSelected()}>\n {row.getVisibleCells().map(cell => (\n <DataTableCell key={cell.id} {...cell.column.columnDef.meta}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </DataTableCell>\n ))}\n </DataTableRow>\n ))}\n </DataTableBody>\n </DataTableContent>\n </Table>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@storybook/react");
6
+ var _Story = require("@webiny/storybook-utils/Story");
7
+ var _README = _interopRequireDefault(require("./../DataTable/README.md"));
8
+ var _DataTable = require("./DataTable");
9
+ var story = (0, _react2.storiesOf)("Components/DataTable", module);
10
+ story.add("usage", function () {
11
+ var data = [{
12
+ id: "1",
13
+ name: "Page 1",
14
+ createdBy: "John Doe",
15
+ lastModified: "3 days ago",
16
+ status: "Draft"
17
+ }, {
18
+ id: "2",
19
+ name: "Page 2",
20
+ createdBy: "John Doe",
21
+ lastModified: "1 day ago",
22
+ status: "Published"
23
+ }, {
24
+ id: "3",
25
+ name: "Page 3",
26
+ createdBy: "John Doe",
27
+ lastModified: "1 hour ago",
28
+ status: "Published"
29
+ }];
30
+ var columns = {
31
+ name: {
32
+ header: "Title"
33
+ },
34
+ createdBy: {
35
+ header: "Author",
36
+ cell: function cell(row) {
37
+ return /*#__PURE__*/_react.default.createElement("em", null, row.createdBy.toUpperCase());
38
+ }
39
+ },
40
+ lastModified: {
41
+ header: "Last Modified"
42
+ },
43
+ status: {
44
+ header: "Status",
45
+ meta: {
46
+ alignEnd: true
47
+ }
48
+ }
49
+ };
50
+ return /*#__PURE__*/_react.default.createElement(_Story.Story, null, /*#__PURE__*/_react.default.createElement(_Story.StoryReadme, null, _README.default), /*#__PURE__*/_react.default.createElement(_Story.StorySandbox, {
51
+ title: "A simple DataTable."
52
+ }, /*#__PURE__*/_react.default.createElement(_DataTable.DataTable, {
53
+ data: data,
54
+ columns: columns
55
+ })), /*#__PURE__*/_react.default.createElement(_Story.StorySandbox, {
56
+ title: "DataTable with selectable rows"
57
+ }, /*#__PURE__*/_react.default.createElement(_DataTable.DataTable, {
58
+ data: data,
59
+ columns: columns,
60
+ onSelectRow: function onSelectRow(row) {
61
+ return console.log("Do whatever you like with the selected row data", row);
62
+ }
63
+ })), /*#__PURE__*/_react.default.createElement(_Story.StorySandbox, {
64
+ title: "DataTable at initial loading state"
65
+ }, /*#__PURE__*/_react.default.createElement(_DataTable.DataTable, {
66
+ data: data,
67
+ columns: columns,
68
+ loadingInitial: true
69
+ })));
70
+ }, {
71
+ info: {
72
+ propTables: [_DataTable.DataTable]
73
+ }
74
+ });
@@ -0,0 +1 @@
1
+ {"version":3,"names":["story","storiesOf","module","add","data","id","name","createdBy","lastModified","status","columns","header","cell","row","toUpperCase","meta","alignEnd","readme","console","log","info","propTables","DataTable"],"sources":["DataTable.stories.tsx"],"sourcesContent":["import React from \"react\";\nimport { storiesOf } from \"@storybook/react\";\nimport { Story, StoryReadme, StorySandbox } from \"@webiny/storybook-utils/Story\";\nimport readme from \"./../DataTable/README.md\";\nimport { Columns, DataTable } from \"./DataTable\";\n\nconst story = storiesOf(\"Components/DataTable\", module);\n\ninterface Entry {\n id: string;\n name: string;\n createdBy: string;\n lastModified: string;\n status: string;\n}\n\nstory.add(\n \"usage\",\n () => {\n const data: Entry[] = [\n {\n id: \"1\",\n name: \"Page 1\",\n createdBy: \"John Doe\",\n lastModified: \"3 days ago\",\n status: \"Draft\"\n },\n {\n id: \"2\",\n name: \"Page 2\",\n createdBy: \"John Doe\",\n lastModified: \"1 day ago\",\n status: \"Published\"\n },\n {\n id: \"3\",\n name: \"Page 3\",\n createdBy: \"John Doe\",\n lastModified: \"1 hour ago\",\n status: \"Published\"\n }\n ];\n\n const columns: Columns<Entry> = {\n name: {\n header: \"Title\"\n },\n createdBy: {\n header: \"Author\",\n cell: row => <em>{row.createdBy.toUpperCase()}</em>\n },\n lastModified: {\n header: \"Last Modified\"\n },\n status: {\n header: \"Status\",\n meta: {\n alignEnd: true\n }\n }\n };\n\n return (\n <Story>\n <StoryReadme>{readme}</StoryReadme>\n <StorySandbox title={\"A simple DataTable.\"}>\n <DataTable data={data} columns={columns} />\n </StorySandbox>\n <StorySandbox title={\"DataTable with selectable rows\"}>\n <DataTable\n data={data}\n columns={columns}\n onSelectRow={row =>\n console.log(\"Do whatever you like with the selected row data\", row)\n }\n />\n </StorySandbox>\n <StorySandbox title={\"DataTable at initial loading state\"}>\n <DataTable data={data} columns={columns} loadingInitial={true} />\n </StorySandbox>\n </Story>\n );\n },\n {\n info: {\n propTables: [DataTable]\n }\n }\n);\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AAEA,IAAMA,KAAK,GAAG,IAAAC,iBAAS,EAAC,sBAAsB,EAAEC,MAAM,CAAC;AAUvDF,KAAK,CAACG,GAAG,CACL,OAAO,EACP,YAAM;EACF,IAAMC,IAAa,GAAG,CAClB;IACIC,EAAE,EAAE,GAAG;IACPC,IAAI,EAAE,QAAQ;IACdC,SAAS,EAAE,UAAU;IACrBC,YAAY,EAAE,YAAY;IAC1BC,MAAM,EAAE;EACZ,CAAC,EACD;IACIJ,EAAE,EAAE,GAAG;IACPC,IAAI,EAAE,QAAQ;IACdC,SAAS,EAAE,UAAU;IACrBC,YAAY,EAAE,WAAW;IACzBC,MAAM,EAAE;EACZ,CAAC,EACD;IACIJ,EAAE,EAAE,GAAG;IACPC,IAAI,EAAE,QAAQ;IACdC,SAAS,EAAE,UAAU;IACrBC,YAAY,EAAE,YAAY;IAC1BC,MAAM,EAAE;EACZ,CAAC,CACJ;EAED,IAAMC,OAAuB,GAAG;IAC5BJ,IAAI,EAAE;MACFK,MAAM,EAAE;IACZ,CAAC;IACDJ,SAAS,EAAE;MACPI,MAAM,EAAE,QAAQ;MAChBC,IAAI,EAAE,cAAAC,GAAG;QAAA,oBAAI,yCAAKA,GAAG,CAACN,SAAS,CAACO,WAAW,EAAE,CAAM;MAAA;IACvD,CAAC;IACDN,YAAY,EAAE;MACVG,MAAM,EAAE;IACZ,CAAC;IACDF,MAAM,EAAE;MACJE,MAAM,EAAE,QAAQ;MAChBI,IAAI,EAAE;QACFC,QAAQ,EAAE;MACd;IACJ;EACJ,CAAC;EAED,oBACI,6BAAC,YAAK,qBACF,6BAAC,kBAAW,QAAEC,eAAM,CAAe,eACnC,6BAAC,mBAAY;IAAC,KAAK,EAAE;EAAsB,gBACvC,6BAAC,oBAAS;IAAC,IAAI,EAAEb,IAAK;IAAC,OAAO,EAAEM;EAAQ,EAAG,CAChC,eACf,6BAAC,mBAAY;IAAC,KAAK,EAAE;EAAiC,gBAClD,6BAAC,oBAAS;IACN,IAAI,EAAEN,IAAK;IACX,OAAO,EAAEM,OAAQ;IACjB,WAAW,EAAE,qBAAAG,GAAG;MAAA,OACZK,OAAO,CAACC,GAAG,CAAC,iDAAiD,EAAEN,GAAG,CAAC;IAAA;EACtE,EACH,CACS,eACf,6BAAC,mBAAY;IAAC,KAAK,EAAE;EAAqC,gBACtD,6BAAC,oBAAS;IAAC,IAAI,EAAET,IAAK;IAAC,OAAO,EAAEM,OAAQ;IAAC,cAAc,EAAE;EAAK,EAAG,CACtD,CACX;AAEhB,CAAC,EACD;EACIU,IAAI,EAAE;IACFC,UAAU,EAAE,CAACC,oBAAS;EAC1B;AACJ,CAAC,CACJ"}
@@ -0,0 +1,72 @@
1
+ # DataTable
2
+
3
+ ### Design
4
+
5
+ https://material.io/components/data-tables
6
+
7
+ ### Description
8
+
9
+ Use `DataTable` components to display sets of data across rows and columns.
10
+
11
+ ### Usage
12
+
13
+ ```tsx
14
+ import { DataTable, Columns } from "@webiny/ui/DataTable";
15
+
16
+ // Declare the data structure.
17
+ interface Entry {
18
+ name: string;
19
+ createdBy: string;
20
+ lastModified: string;
21
+ status: string;
22
+ }
23
+
24
+ // Define the data you want to display.
25
+ const data: Entry[] = [
26
+ {
27
+ name: "Page 1",
28
+ createdBy: "John Doe",
29
+ lastModified: "3 days ago",
30
+ status: "Draft"
31
+ },
32
+ {
33
+ name: "Page 2",
34
+ createdBy: "John Doe",
35
+ lastModified: "1 day ago",
36
+ status: "Published"
37
+ },
38
+ {
39
+ name: "Page 3",
40
+ createdBy: "John Doe",
41
+ lastModified: "1 hour ago",
42
+ status: "Published"
43
+ }
44
+ ];
45
+
46
+ // Define the columns structure for your table.
47
+ const columns: Columns<Entry> = {
48
+ name: {
49
+ header: "Title"
50
+ },
51
+ createdBy: {
52
+ header: "Author",
53
+ cell: row => <em>{row.createdBy.toUpperCase()}</em>
54
+ },
55
+ lastModified: {
56
+ header: "Last Modified"
57
+ },
58
+ status: {
59
+ header: "Status",
60
+ meta: {
61
+ alignEnd: true
62
+ }
63
+ }
64
+ };
65
+
66
+ ...
67
+
68
+ // Use the <DataTable /> component within your code.
69
+ return(
70
+ <DataTable data={data} columns={columns} />
71
+ )
72
+ ```
@@ -0,0 +1 @@
1
+ export * from "./DataTable";
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _DataTable = require("./DataTable");
7
+ Object.keys(_DataTable).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _DataTable[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _DataTable[key];
14
+ }
15
+ });
16
+ });
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./DataTable\";\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1,30 @@
1
+ /// <reference types="react" />
2
+ /// <reference types="react" />
3
+ /// <reference types="web" />
4
+ import { DataTableProps } from "@rmwc/data-table";
5
+ import { ColumnDirectionProps } from "./DataTable";
6
+ interface TableProps extends DataTableProps {
7
+ bordered?: boolean;
8
+ }
9
+ export declare const Table: import("@emotion/styled").StyledComponent<{
10
+ theme?: import("@emotion/react").Theme | undefined;
11
+ } & TableProps, {}, {}>;
12
+ interface ColumnHeaderWrapperProps {
13
+ sortable: boolean;
14
+ }
15
+ export declare const ColumnHeaderWrapper: import("@emotion/styled").StyledComponent<{
16
+ theme?: import("@emotion/react").Theme | undefined;
17
+ as?: import("react").ElementType<any> | undefined;
18
+ } & ColumnHeaderWrapperProps, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
19
+ export declare const ColumnDirectionWrapper: import("@emotion/styled").StyledComponent<{
20
+ theme?: import("@emotion/react").Theme | undefined;
21
+ as?: import("react").ElementType<any> | undefined;
22
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
23
+ export declare const ColumnDirectionIcon: import("@emotion/styled").StyledComponent<import("react").SVGProps<SVGSVGElement> & {
24
+ alt?: string | undefined;
25
+ } & {
26
+ children?: import("react").ReactNode;
27
+ } & {
28
+ theme?: import("@emotion/react").Theme | undefined;
29
+ } & ColumnDirectionProps, {}, {}>;
30
+ export {};
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.Table = exports.ColumnHeaderWrapper = exports.ColumnDirectionWrapper = exports.ColumnDirectionIcon = void 0;
8
+ var _styled = _interopRequireDefault(require("@emotion/styled"));
9
+ var _arrow_downward = require("@material-design-icons/svg/outlined/arrow_downward.svg");
10
+ var _dataTable = require("@rmwc/data-table");
11
+ var Table = /*#__PURE__*/(0, _styled.default)(_dataTable.DataTable, {
12
+ label: "Table",
13
+ target: "er5nqo40"
14
+ })("width:100%;border-width:", function (props) {
15
+ return props.bordered ? "1px" : "0px";
16
+ }, ";th,td{vertical-align:middle;}.datatable-select-column{width:56px !important;max-width:56px !important;}");
17
+ exports.Table = Table;
18
+ var ColumnHeaderWrapper = /*#__PURE__*/(0, _styled.default)("div", {
19
+ label: "ColumnHeaderWrapper",
20
+ target: "er5nqo41"
21
+ })("cursor:", function (props) {
22
+ return props.sortable ? "pointer" : "cursor";
23
+ }, ";display:flex;align-items:center;justify-content:start;");
24
+ exports.ColumnHeaderWrapper = ColumnHeaderWrapper;
25
+ var ColumnDirectionWrapper = /*#__PURE__*/(0, _styled.default)("span", {
26
+ label: "ColumnDirectionWrapper",
27
+ target: "er5nqo42"
28
+ })("display:inline-flex;align-items:center;justify-content:center;height:16px;width:16px;margin:0 0 0 4px;");
29
+ exports.ColumnDirectionWrapper = ColumnDirectionWrapper;
30
+ var ColumnDirectionIcon = /*#__PURE__*/(0, _styled.default)(_arrow_downward.ReactComponent, {
31
+ label: "ColumnDirectionIcon",
32
+ target: "er5nqo43"
33
+ })("transform:", function (props) {
34
+ return props.direction === "asc" ? "rotate(180deg)" : "rotate(0deg)";
35
+ }, ";");
36
+ exports.ColumnDirectionIcon = ColumnDirectionIcon;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Table","styled","RmwcDataTable","props","bordered","ColumnHeaderWrapper","sortable","ColumnDirectionWrapper","ColumnDirectionIcon","ArrowDown","direction"],"sources":["styled.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\n\nimport { ReactComponent as ArrowDown } from \"@material-design-icons/svg/outlined/arrow_downward.svg\";\nimport { DataTable as RmwcDataTable, DataTableProps } from \"@rmwc/data-table\";\nimport { ColumnDirectionProps } from \"~/DataTable/DataTable\";\n\ninterface TableProps extends DataTableProps {\n bordered?: boolean;\n}\n\nexport const Table = styled(RmwcDataTable)<TableProps>`\n width: 100%;\n border-width: ${props => (props.bordered ? \"1px\" : \"0px\")};\n\n th,\n td {\n vertical-align: middle;\n }\n\n .datatable-select-column {\n width: 56px !important;\n max-width: 56px !important;\n }\n`;\n\ninterface ColumnHeaderWrapperProps {\n sortable: boolean;\n}\n\nexport const ColumnHeaderWrapper = styled(\"div\")<ColumnHeaderWrapperProps>`\n cursor: ${props => (props.sortable ? \"pointer\" : \"cursor\")};\n display: flex;\n align-items: center;\n justify-content: start;\n`;\n\nexport const ColumnDirectionWrapper = styled(\"span\")`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 16px;\n width: 16px;\n margin: 0 0 0 4px;\n`;\n\nexport const ColumnDirectionIcon = styled(ArrowDown)<ColumnDirectionProps>`\n transform: ${props => (props.direction === \"asc\" ? \"rotate(180deg)\" : \"rotate(0deg)\")};\n`;\n"],"mappings":";;;;;;;AAAA;AAEA;AACA;AAOO,IAAMA,KAAK,oBAAGC,eAAM,EAACC,oBAAa;EAAA;EAAA;AAAA,+BAErB,UAAAC,KAAK;EAAA,OAAKA,KAAK,CAACC,QAAQ,GAAG,KAAK,GAAG,KAAK;AAAA,CAAC,6GAW5D;AAAC;AAMK,IAAMC,mBAAmB,oBAAGJ,eAAM,EAAC,KAAK;EAAA;EAAA;AAAA,cACjC,UAAAE,KAAK;EAAA,OAAKA,KAAK,CAACG,QAAQ,GAAG,SAAS,GAAG,QAAQ;AAAA,CAAC,4DAI7D;AAAC;AAEK,IAAMC,sBAAsB,oBAAGN,eAAM,EAAC,MAAM;EAAA;EAAA;AAAA,4GAOlD;AAAC;AAEK,IAAMO,mBAAmB,oBAAGP,eAAM,EAACQ,8BAAS;EAAA;EAAA;AAAA,iBAClC,UAAAN,KAAK;EAAA,OAAKA,KAAK,CAACO,SAAS,KAAK,KAAK,GAAG,gBAAgB,GAAG,cAAc;AAAA,CAAC,MACxF;AAAC"}
@@ -0,0 +1,40 @@
1
+ /// <reference types="web" />
2
+ import React from "react";
3
+ interface ApplyValueCb {
4
+ (value: string, cb: (value: string) => void): void;
5
+ }
6
+ /**
7
+ * This component is used to wrap Input and Textarea components to optimize form re-render.
8
+ * These 2 are the only components that trigger form model change on each character input.
9
+ * This means, whenever you type a letter an entire form re-renders.
10
+ * On complex forms you will feel and see a significant delay if this component is not used.
11
+ *
12
+ * The logic behind this component is to serve as a middleware between Form and Input/Textarea, and only notify form of a change when
13
+ * a user stops typing for given period of time (400ms by default).
14
+ */
15
+ interface OnChangeCallable {
16
+ (value: string, cb?: ApplyValueCb): void;
17
+ }
18
+ interface OnBlurCallable {
19
+ (ev: React.SyntheticEvent): void;
20
+ }
21
+ interface OnKeyDownCallable {
22
+ (ev: React.KeyboardEvent<HTMLInputElement>): void;
23
+ }
24
+ interface ChildrenCallableParams {
25
+ value: string;
26
+ onChange: OnChangeCallable;
27
+ }
28
+ interface ChildrenCallable {
29
+ (params: ChildrenCallableParams): React.ReactElement;
30
+ }
31
+ export interface DelayedOnChangeProps {
32
+ value?: string;
33
+ delay?: number;
34
+ onChange?: OnChangeCallable;
35
+ onBlur?: OnBlurCallable;
36
+ onKeyDown?: OnKeyDownCallable;
37
+ children: React.ReactNode | ChildrenCallable;
38
+ }
39
+ export declare const DelayedOnChange: React.FC<DelayedOnChangeProps>;
40
+ export default DelayedOnChange;
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = exports.DelayedOnChange = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _excluded = ["children"];
14
+ var emptyFunction = function emptyFunction() {
15
+ return undefined;
16
+ };
17
+ var DelayedOnChange = function DelayedOnChange(_ref) {
18
+ var children = _ref.children,
19
+ other = (0, _objectWithoutProperties2.default)(_ref, _excluded);
20
+ var onChange = other.onChange,
21
+ _other$delay = other.delay,
22
+ delay = _other$delay === void 0 ? 400 : _other$delay,
23
+ initialValue = other.value;
24
+ var _useState = (0, _react.useState)(initialValue),
25
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
26
+ value = _useState2[0],
27
+ setValue = _useState2[1];
28
+ // Sync state and props
29
+ (0, _react.useEffect)(function () {
30
+ if (initialValue !== value) {
31
+ setValue(initialValue);
32
+ }
33
+ }, [initialValue]);
34
+ var localTimeout = _react.default.useRef(null);
35
+ var applyValue = function applyValue(value) {
36
+ var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : emptyFunction;
37
+ localTimeout.current && clearTimeout(localTimeout.current);
38
+ localTimeout.current = null;
39
+ if (!onChange) {
40
+ return;
41
+ }
42
+ onChange(value, callback);
43
+ };
44
+ var onChangeLocal = _react.default.useCallback(function (value) {
45
+ setValue(value);
46
+ }, []);
47
+
48
+ // this is fired upon change value state
49
+ var onValueStateChanged = function onValueStateChanged(nextValue) {
50
+ localTimeout.current && clearTimeout(localTimeout.current);
51
+ localTimeout.current = null;
52
+ localTimeout.current = setTimeout(function () {
53
+ return applyValue(nextValue);
54
+ }, delay);
55
+ };
56
+
57
+ // need to clear the timeout when unmounting the component
58
+ (0, _react.useEffect)(function () {
59
+ return function () {
60
+ if (!localTimeout.current) {
61
+ return;
62
+ }
63
+ clearTimeout(localTimeout.current);
64
+ localTimeout.current = null;
65
+ };
66
+ }, []);
67
+ (0, _react.useEffect)(function () {
68
+ onValueStateChanged(value || "");
69
+ }, [value]);
70
+ var newProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, other), {}, {
71
+ value: value || "",
72
+ onChange: onChangeLocal
73
+ });
74
+ var renderProp = typeof children === "function" ? children : null;
75
+ var child = renderProp ? renderProp(newProps) : /*#__PURE__*/_react.default.cloneElement(children, newProps);
76
+ var props = (0, _objectSpread2.default)({}, child.props);
77
+ var realOnKeyDown = props.onKeyDown || emptyFunction;
78
+ var realOnBlur = props.onBlur || emptyFunction;
79
+
80
+ // Need to apply value if input lost focus
81
+ var onBlur = function onBlur(ev) {
82
+ if (!ev["persist"]) {
83
+ return;
84
+ }
85
+ ev.persist();
86
+ applyValue(ev.target.value, function () {
87
+ return realOnBlur(ev);
88
+ });
89
+ };
90
+
91
+ // Need to listen for TAB key to apply new value immediately, without delay. Otherwise validation will be triggered with old value.
92
+ var onKeyDown = function onKeyDown(ev) {
93
+ ev.persist();
94
+ if (ev.key === "Tab") {
95
+ applyValue(ev.target.value, function () {
96
+ return realOnKeyDown(ev);
97
+ });
98
+ } else if (ev.key === "Enter" && props["data-on-enter"]) {
99
+ applyValue(ev.target.value, function () {
100
+ return realOnKeyDown(ev);
101
+ });
102
+ } else {
103
+ realOnKeyDown(ev);
104
+ }
105
+ };
106
+ return /*#__PURE__*/_react.default.cloneElement(child, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
107
+ onBlur: onBlur,
108
+ onKeyDown: onKeyDown
109
+ }));
110
+ };
111
+ exports.DelayedOnChange = DelayedOnChange;
112
+ var _default = DelayedOnChange;
113
+ exports.default = _default;