@webiny/ui 5.23.1 → 5.25.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/Accordion/Accordion.d.ts +4 -4
  2. package/Accordion/Accordion.js +1 -1
  3. package/Accordion/Accordion.js.map +1 -0
  4. package/Accordion/Accordion.stories.js.map +1 -0
  5. package/Accordion/AccordionItem.d.ts +4 -8
  6. package/Accordion/AccordionItem.js +5 -1
  7. package/Accordion/AccordionItem.js.map +1 -0
  8. package/Accordion/index.js.map +1 -0
  9. package/Alert/Alert.d.ts +4 -4
  10. package/Alert/Alert.js +1 -1
  11. package/Alert/Alert.js.map +1 -0
  12. package/Alert/Alert.stories.js.map +1 -0
  13. package/Alert/index.js.map +1 -0
  14. package/AutoComplete/AutoComplete.d.ts +11 -27
  15. package/AutoComplete/AutoComplete.js +9 -8
  16. package/AutoComplete/AutoComplete.js.map +1 -0
  17. package/AutoComplete/AutoComplete.stories.js.map +1 -0
  18. package/AutoComplete/MultiAutoComplete.d.ts +20 -43
  19. package/AutoComplete/MultiAutoComplete.js +13 -13
  20. package/AutoComplete/MultiAutoComplete.js.map +1 -0
  21. package/AutoComplete/MultiAutoComplete.stories.js.map +1 -0
  22. package/AutoComplete/index.js.map +1 -0
  23. package/AutoComplete/styles.js.map +1 -0
  24. package/AutoComplete/types.d.ts +4 -3
  25. package/AutoComplete/types.js.map +1 -0
  26. package/AutoComplete/utils.d.ts +11 -5
  27. package/AutoComplete/utils.js +2 -2
  28. package/AutoComplete/utils.js.map +1 -0
  29. package/Avatar/Avatar.d.ts +5 -11
  30. package/Avatar/Avatar.js +12 -7
  31. package/Avatar/Avatar.js.map +1 -0
  32. package/Avatar/Avatar.stories.js.map +1 -0
  33. package/Avatar/index.js.map +1 -0
  34. package/Button/Button.d.ts +8 -23
  35. package/Button/Button.js +7 -22
  36. package/Button/Button.js.map +1 -0
  37. package/Button/Button.stories.js.map +1 -0
  38. package/Button/CopyButton/CopyButton.d.ts +4 -7
  39. package/Button/CopyButton/CopyButton.js +1 -4
  40. package/Button/CopyButton/CopyButton.js.map +1 -0
  41. package/Button/CopyButton/CopyButton.stories.js.map +1 -0
  42. package/Button/IconButton/IconButton.d.ts +4 -7
  43. package/Button/IconButton/IconButton.js +1 -4
  44. package/Button/IconButton/IconButton.js.map +1 -0
  45. package/Button/IconButton/IconButton.stories.js.map +1 -0
  46. package/Button/index.js.map +1 -0
  47. package/Carousel/Carousel.d.ts +3 -3
  48. package/Carousel/Carousel.js +1 -1
  49. package/Carousel/Carousel.js.map +1 -0
  50. package/Carousel/Carouser.stories.js.map +1 -0
  51. package/Carousel/index.js.map +1 -0
  52. package/Checkbox/Checkbox.d.ts +4 -9
  53. package/Checkbox/Checkbox.js +8 -9
  54. package/Checkbox/Checkbox.js.map +1 -0
  55. package/Checkbox/Checkbox.stories.js.map +1 -0
  56. package/Checkbox/Checkbox.styles.js.map +1 -0
  57. package/Checkbox/CheckboxGroup.d.ts +1 -1
  58. package/Checkbox/CheckboxGroup.js +1 -1
  59. package/Checkbox/CheckboxGroup.js.map +1 -0
  60. package/Checkbox/CheckboxGroup.stories.js +1 -1
  61. package/Checkbox/CheckboxGroup.stories.js.map +1 -0
  62. package/Checkbox/index.js.map +1 -0
  63. package/Chips/Chip.d.ts +3 -8
  64. package/Chips/Chip.js +1 -1
  65. package/Chips/Chip.js.map +1 -0
  66. package/Chips/ChipIcon.d.ts +2 -2
  67. package/Chips/ChipIcon.js +1 -1
  68. package/Chips/ChipIcon.js.map +1 -0
  69. package/Chips/Chips.d.ts +4 -4
  70. package/Chips/Chips.js +1 -1
  71. package/Chips/Chips.js.map +1 -0
  72. package/Chips/Chips.stories.js.map +1 -0
  73. package/Chips/index.js.map +1 -0
  74. package/Chips/styles.js.map +1 -0
  75. package/CodeEditor/CodeEditor.d.ts +3 -8
  76. package/CodeEditor/CodeEditor.js +7 -9
  77. package/CodeEditor/CodeEditor.js.map +1 -0
  78. package/CodeEditor/CodeEditor.stories.js.map +1 -0
  79. package/CodeEditor/index.js.map +1 -0
  80. package/ColorPicker/ColorPicker.d.ts +9 -10
  81. package/ColorPicker/ColorPicker.js +8 -10
  82. package/ColorPicker/ColorPicker.js.map +1 -0
  83. package/ColorPicker/ColorPicker.stories.js +1 -1
  84. package/ColorPicker/ColorPicker.stories.js.map +1 -0
  85. package/ColorPicker/index.js.map +1 -0
  86. package/ConfirmationDialog/ConfirmationDialog.d.ts +13 -13
  87. package/ConfirmationDialog/ConfirmationDialog.js +7 -4
  88. package/ConfirmationDialog/ConfirmationDialog.js.map +1 -0
  89. package/ConfirmationDialog/ConfirmationDialog.stories.js +1 -1
  90. package/ConfirmationDialog/ConfirmationDialog.stories.js.map +1 -0
  91. package/ConfirmationDialog/index.js.map +1 -0
  92. package/ConfirmationDialog/withConfirmation.d.ts +2 -2
  93. package/ConfirmationDialog/withConfirmation.js +1 -1
  94. package/ConfirmationDialog/withConfirmation.js.map +1 -0
  95. package/Dialog/Dialog.d.ts +21 -30
  96. package/Dialog/Dialog.js +4 -1
  97. package/Dialog/Dialog.js.map +1 -0
  98. package/Dialog/Dialog.stories.js.map +1 -0
  99. package/Dialog/index.js.map +1 -0
  100. package/Drawer/Drawer.d.ts +1 -1
  101. package/Drawer/Drawer.js +1 -1
  102. package/Drawer/Drawer.js.map +1 -0
  103. package/Drawer/Drawer.stories.js.map +1 -0
  104. package/Drawer/index.js.map +1 -0
  105. package/DynamicFieldset/Fieldset.d.ts +26 -16
  106. package/DynamicFieldset/Fieldset.js +24 -14
  107. package/DynamicFieldset/Fieldset.js.map +1 -0
  108. package/DynamicFieldset/index.js.map +1 -0
  109. package/Elevation/Elevation.d.ts +1 -1
  110. package/Elevation/Elevation.js +1 -1
  111. package/Elevation/Elevation.js.map +1 -0
  112. package/Elevation/Elevation.stories.js +1 -1
  113. package/Elevation/Elevation.stories.js.map +1 -0
  114. package/Elevation/index.js.map +1 -0
  115. package/FormElementMessage/FormElementMessage.d.ts +1 -1
  116. package/FormElementMessage/FormElementMessage.js +1 -1
  117. package/FormElementMessage/FormElementMessage.js.map +1 -0
  118. package/FormElementMessage/index.js.map +1 -0
  119. package/FullName/FullName.js.map +1 -0
  120. package/FullName/index.js.map +1 -0
  121. package/Grid/Grid.d.ts +1 -1
  122. package/Grid/Grid.js +1 -1
  123. package/Grid/Grid.js.map +1 -0
  124. package/Grid/Grid.stories.js.map +1 -0
  125. package/Grid/index.js.map +1 -0
  126. package/Helpers/ClassNames.d.ts +4 -3
  127. package/Helpers/ClassNames.js +5 -3
  128. package/Helpers/ClassNames.js.map +1 -0
  129. package/Helpers/index.js.map +1 -0
  130. package/Icon/Icon.d.ts +3 -6
  131. package/Icon/Icon.js +1 -4
  132. package/Icon/Icon.js.map +1 -0
  133. package/Icon/Icon.stories.js.map +1 -0
  134. package/Icon/index.js.map +1 -0
  135. package/Image/Image.d.ts +4 -4
  136. package/Image/Image.js +6 -4
  137. package/Image/Image.js.map +1 -0
  138. package/Image/Image.stories.js +1 -1
  139. package/Image/Image.stories.js.map +1 -0
  140. package/Image/index.js.map +1 -0
  141. package/ImageEditor/ImageEditor.d.ts +32 -34
  142. package/ImageEditor/ImageEditor.js +41 -26
  143. package/ImageEditor/ImageEditor.js.map +1 -0
  144. package/ImageEditor/index.js.map +1 -0
  145. package/ImageEditor/toolbar/crop.js +5 -3
  146. package/ImageEditor/toolbar/crop.js.map +1 -0
  147. package/ImageEditor/toolbar/filter.js +3 -1
  148. package/ImageEditor/toolbar/filter.js.map +1 -0
  149. package/ImageEditor/toolbar/flip.js +4 -2
  150. package/ImageEditor/toolbar/flip.js.map +1 -0
  151. package/ImageEditor/toolbar/icons/index.js.map +1 -0
  152. package/ImageEditor/toolbar/index.js.map +1 -0
  153. package/ImageEditor/toolbar/rotate.js +8 -2
  154. package/ImageEditor/toolbar/rotate.js.map +1 -0
  155. package/ImageEditor/toolbar/types.d.ts +22 -12
  156. package/ImageEditor/toolbar/types.js.map +1 -0
  157. package/ImageUpload/Image.d.ts +6 -6
  158. package/ImageUpload/Image.js +1 -1
  159. package/ImageUpload/Image.js.map +1 -0
  160. package/ImageUpload/ImageEditorDialog.d.ts +11 -6
  161. package/ImageUpload/ImageEditorDialog.js +7 -2
  162. package/ImageUpload/ImageEditorDialog.js.map +1 -0
  163. package/ImageUpload/MultiImageUpload.d.ts +10 -31
  164. package/ImageUpload/MultiImageUpload.js +33 -15
  165. package/ImageUpload/MultiImageUpload.js.map +1 -0
  166. package/ImageUpload/MultiImageUpload.stories.js.map +1 -0
  167. package/ImageUpload/SingleImageUpload.d.ts +16 -37
  168. package/ImageUpload/SingleImageUpload.js +20 -12
  169. package/ImageUpload/SingleImageUpload.js.map +1 -0
  170. package/ImageUpload/SingleImageUpload.stories.js.map +1 -0
  171. package/ImageUpload/index.js.map +1 -0
  172. package/ImageUpload/styled.d.ts +18 -14
  173. package/ImageUpload/styled.js.map +1 -0
  174. package/Input/Input.d.ts +2 -8
  175. package/Input/Input.js +8 -8
  176. package/Input/Input.js.map +1 -0
  177. package/Input/Input.stories.js +1 -1
  178. package/Input/Input.stories.js.map +1 -0
  179. package/Input/__tests__/Input.test.js +32 -26
  180. package/Input/__tests__/Input.test.js.map +1 -0
  181. package/Input/index.js.map +1 -0
  182. package/List/CollapsibleList/CollapsibleList.stories.js.map +1 -0
  183. package/List/CollapsibleList/index.d.ts +2 -2
  184. package/List/CollapsibleList/index.js +1 -1
  185. package/List/CollapsibleList/index.js.map +1 -0
  186. package/List/DataList/DataList.d.ts +23 -43
  187. package/List/DataList/DataList.js +43 -9
  188. package/List/DataList/DataList.js.map +1 -0
  189. package/List/DataList/DataList.stories.js.map +1 -0
  190. package/List/DataList/DataListModalOverlay/DataListModalOverlay.d.ts +7 -8
  191. package/List/DataList/DataListModalOverlay/DataListModalOverlay.js.map +1 -0
  192. package/List/DataList/DataListModalOverlay/DataListModalOverlayAction.d.ts +3 -3
  193. package/List/DataList/DataListModalOverlay/DataListModalOverlayAction.js.map +1 -0
  194. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.d.ts +9 -4
  195. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.js +6 -1
  196. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.js.map +1 -0
  197. package/List/DataList/DataListModalOverlay/index.js.map +1 -0
  198. package/List/DataList/Loader.d.ts +2 -2
  199. package/List/DataList/Loader.js +6 -1
  200. package/List/DataList/Loader.js.map +1 -0
  201. package/List/DataList/NoData.d.ts +2 -2
  202. package/List/DataList/NoData.js +1 -1
  203. package/List/DataList/NoData.js.map +1 -0
  204. package/List/DataList/icons/index.d.ts +1 -1
  205. package/List/DataList/icons/index.js +1 -1
  206. package/List/DataList/icons/index.js.map +1 -0
  207. package/List/DataList/index.js.map +1 -0
  208. package/List/DataList/types.d.ts +1 -1
  209. package/List/DataList/types.js.map +1 -0
  210. package/List/List.d.ts +1 -1
  211. package/List/List.js +1 -1
  212. package/List/List.js.map +1 -0
  213. package/List/List.stories.js.map +1 -0
  214. package/List/icons/index.js.map +1 -0
  215. package/List/index.js.map +1 -0
  216. package/Menu/Menu.d.ts +14 -19
  217. package/Menu/Menu.js +1 -2
  218. package/Menu/Menu.js.map +1 -0
  219. package/Menu/Menu.stories.js +1 -1
  220. package/Menu/Menu.stories.js.map +1 -0
  221. package/Menu/index.js.map +1 -0
  222. package/Mosaic/Mosaic.d.ts +4 -14
  223. package/Mosaic/Mosaic.js +11 -3
  224. package/Mosaic/Mosaic.js.map +1 -0
  225. package/Mosaic/Mosaic.stories.js +1 -1
  226. package/Mosaic/Mosaic.stories.js.map +1 -0
  227. package/Mosaic/index.js.map +1 -0
  228. package/Progress/CircularProgress.d.ts +8 -16
  229. package/Progress/CircularProgress.js +12 -8
  230. package/Progress/CircularProgress.js.map +1 -0
  231. package/Progress/index.js.map +1 -0
  232. package/Radio/Radio.d.ts +1 -6
  233. package/Radio/Radio.js +8 -9
  234. package/Radio/Radio.js.map +1 -0
  235. package/Radio/Radio.styles.js.map +1 -0
  236. package/Radio/RadioGroup.d.ts +1 -6
  237. package/Radio/RadioGroup.js +8 -10
  238. package/Radio/RadioGroup.js.map +1 -0
  239. package/Radio/RadioGroup.stories.js +1 -1
  240. package/Radio/RadioGroup.stories.js.map +1 -0
  241. package/Radio/index.js.map +1 -0
  242. package/RichTextEditor/RichTextEditor.d.ts +6 -6
  243. package/RichTextEditor/RichTextEditor.js +26 -4
  244. package/RichTextEditor/RichTextEditor.js.map +1 -0
  245. package/RichTextEditor/RichTextEditor.stories.js +1 -1
  246. package/RichTextEditor/RichTextEditor.stories.js.map +1 -0
  247. package/RichTextEditor/createPropsFromConfig.d.ts +11 -1
  248. package/RichTextEditor/createPropsFromConfig.js +7 -3
  249. package/RichTextEditor/createPropsFromConfig.js.map +1 -0
  250. package/RichTextEditor/index.js.map +1 -0
  251. package/Ripple/Ripple.d.ts +4 -5
  252. package/Ripple/Ripple.js +1 -1
  253. package/Ripple/Ripple.js.map +1 -0
  254. package/Ripple/Ripple.stories.js +2 -2
  255. package/Ripple/Ripple.stories.js.map +1 -0
  256. package/Ripple/index.js.map +1 -0
  257. package/Scrollbar/Scrollbar.d.ts +5 -5
  258. package/Scrollbar/Scrollbar.js +1 -1
  259. package/Scrollbar/Scrollbar.js.map +1 -0
  260. package/Scrollbar/Scrollbar.stories.js +1 -1
  261. package/Scrollbar/Scrollbar.stories.js.map +1 -0
  262. package/Scrollbar/index.js.map +1 -0
  263. package/Section/Section.stories.js.map +1 -0
  264. package/Section/index.d.ts +4 -5
  265. package/Section/index.js +1 -1
  266. package/Section/index.js.map +1 -0
  267. package/Select/Select.d.ts +6 -9
  268. package/Select/Select.js +69 -11
  269. package/Select/Select.js.map +1 -0
  270. package/Select/Select.stories.js.map +1 -0
  271. package/Select/index.js.map +1 -0
  272. package/Slider/Slider.d.ts +1 -6
  273. package/Slider/Slider.js +7 -9
  274. package/Slider/Slider.js.map +1 -0
  275. package/Slider/Slider.stories.js +1 -1
  276. package/Slider/Slider.stories.js.map +1 -0
  277. package/Slider/index.js.map +1 -0
  278. package/Snackbar/Snackbar.d.ts +4 -7
  279. package/Snackbar/Snackbar.js +2 -5
  280. package/Snackbar/Snackbar.js.map +1 -0
  281. package/Snackbar/Snackbar.stories.js +1 -1
  282. package/Snackbar/Snackbar.stories.js.map +1 -0
  283. package/Snackbar/index.js.map +1 -0
  284. package/Switch/Switch.d.ts +1 -6
  285. package/Switch/Switch.js +8 -9
  286. package/Switch/Switch.js.map +1 -0
  287. package/Switch/Switch.stories.js.map +1 -0
  288. package/Switch/index.js.map +1 -0
  289. package/Tabs/Tab.d.ts +6 -2
  290. package/Tabs/Tab.js +1 -1
  291. package/Tabs/Tab.js.map +1 -0
  292. package/Tabs/Tabs.d.ts +19 -13
  293. package/Tabs/Tabs.js +30 -18
  294. package/Tabs/Tabs.js.map +1 -0
  295. package/Tabs/Tabs.stories.js +1 -1
  296. package/Tabs/Tabs.stories.js.map +1 -0
  297. package/Tabs/index.js.map +1 -0
  298. package/Tags/Tags.d.ts +5 -10
  299. package/Tags/Tags.js +12 -12
  300. package/Tags/Tags.js.map +1 -0
  301. package/Tags/Tags.stories.js.map +1 -0
  302. package/Tags/index.js.map +1 -0
  303. package/Tooltip/Tooltip.d.ts +8 -7
  304. package/Tooltip/Tooltip.js +8 -3
  305. package/Tooltip/Tooltip.js.map +1 -0
  306. package/Tooltip/Tooltip.stories.js.map +1 -0
  307. package/Tooltip/index.js.map +1 -0
  308. package/TopAppBar/TopAppBar.d.ts +1 -1
  309. package/TopAppBar/TopAppBar.js +1 -1
  310. package/TopAppBar/TopAppBar.js.map +1 -0
  311. package/TopAppBar/TopAppBar.stories.js.map +1 -0
  312. package/TopAppBar/TopAppBarActionItem.js +1 -1
  313. package/TopAppBar/TopAppBarActionItem.js.map +1 -0
  314. package/TopAppBar/TopAppBarNavigationIcon.js +1 -1
  315. package/TopAppBar/TopAppBarNavigationIcon.js.map +1 -0
  316. package/TopAppBar/TopAppBarPrimary.js +1 -1
  317. package/TopAppBar/TopAppBarPrimary.js.map +1 -0
  318. package/TopAppBar/TopAppBarSecondary.js +1 -1
  319. package/TopAppBar/TopAppBarSecondary.js.map +1 -0
  320. package/TopAppBar/TopAppBarSection.d.ts +1 -1
  321. package/TopAppBar/TopAppBarSection.js +1 -1
  322. package/TopAppBar/TopAppBarSection.js.map +1 -0
  323. package/TopAppBar/TopAppBarTitle.d.ts +1 -1
  324. package/TopAppBar/TopAppBarTitle.js +1 -1
  325. package/TopAppBar/TopAppBarTitle.js.map +1 -0
  326. package/TopAppBar/index.js.map +1 -0
  327. package/TopProgressBar/TopProgressBar.d.ts +7 -7
  328. package/TopProgressBar/TopProgressBar.js.map +1 -0
  329. package/TopProgressBar/TopProgressBar.stories.js +1 -1
  330. package/TopProgressBar/TopProgressBar.stories.js.map +1 -0
  331. package/TopProgressBar/hoc/index.js.map +1 -0
  332. package/TopProgressBar/hoc/withTopProgressBar.d.ts +1 -1
  333. package/TopProgressBar/hoc/withTopProgressBar.js +1 -1
  334. package/TopProgressBar/hoc/withTopProgressBar.js.map +1 -0
  335. package/TopProgressBar/index.js.map +1 -0
  336. package/Typography/Typography.d.ts +4 -4
  337. package/Typography/Typography.js +1 -1
  338. package/Typography/Typography.js.map +1 -0
  339. package/Typography/Typography.stories.js +1 -1
  340. package/Typography/Typography.stories.js.map +1 -0
  341. package/Typography/index.js.map +1 -0
  342. package/package.json +21 -12
  343. package/rmwc/base/LICENSE +21 -0
  344. package/rmwc/base/README.md +3 -0
  345. package/rmwc/base/code/component.d.ts +18 -0
  346. package/rmwc/base/code/component.js +163 -0
  347. package/rmwc/base/code/foundation-component.d.ts +79 -0
  348. package/rmwc/base/code/foundation-component.js +354 -0
  349. package/rmwc/base/code/index.d.ts +16 -0
  350. package/rmwc/base/code/index.js +25 -0
  351. package/rmwc/base/code/test-polyfill.d.ts +3 -0
  352. package/rmwc/base/code/test-polyfill.js +33 -0
  353. package/rmwc/base/code/utils/apply-passive.d.ts +8 -0
  354. package/rmwc/base/code/utils/apply-passive.js +63 -0
  355. package/rmwc/base/code/utils/debounce.d.ts +2 -0
  356. package/rmwc/base/code/utils/debounce.js +17 -0
  357. package/rmwc/base/code/utils/deprecation.d.ts +6 -0
  358. package/rmwc/base/code/utils/deprecation.js +76 -0
  359. package/rmwc/base/code/utils/emitter.d.ts +13 -0
  360. package/rmwc/base/code/utils/emitter.js +120 -0
  361. package/rmwc/base/code/utils/events-map.d.ts +87 -0
  362. package/rmwc/base/code/utils/events-map.js +90 -0
  363. package/rmwc/base/code/utils/index.d.ts +10 -0
  364. package/rmwc/base/code/utils/index.js +19 -0
  365. package/rmwc/base/code/utils/ponyfills.d.ts +3 -0
  366. package/rmwc/base/code/utils/ponyfills.js +29 -0
  367. package/rmwc/base/code/utils/random-id.d.ts +6 -0
  368. package/rmwc/base/code/utils/random-id.js +14 -0
  369. package/rmwc/base/code/utils/strings.d.ts +3 -0
  370. package/rmwc/base/code/utils/strings.js +13 -0
  371. package/rmwc/base/code/utils/use-knob.d.ts +2 -0
  372. package/rmwc/base/code/utils/use-knob.js +64 -0
  373. package/rmwc/base/code/utils/wrap-child.d.ts +3 -0
  374. package/rmwc/base/code/utils/wrap-child.js +55 -0
  375. package/rmwc/base/code/with-theme.d.ts +15 -0
  376. package/rmwc/base/code/with-theme.js +106 -0
  377. package/rmwc/base/package.json +40 -0
  378. package/types.d.ts +2 -2
  379. package/types.js.map +1 -0
@@ -1,7 +1,7 @@
1
- import * as React from "react";
1
+ import React from "react";
2
2
  import { ListItem } from "../List";
3
3
  import { AccordionItem } from "./AccordionItem";
4
- export declare type AccordionProps = {
4
+ export interface AccordionProps {
5
5
  /**
6
6
  * Element displayed when accordion is expanded.
7
7
  */
@@ -14,6 +14,6 @@ export declare type AccordionProps = {
14
14
  * Append a class name
15
15
  */
16
16
  className?: string;
17
- };
18
- declare const Accordion: (props: AccordionProps) => JSX.Element;
17
+ }
18
+ declare const Accordion: React.FC<AccordionProps>;
19
19
  export { Accordion };
@@ -1,6 +1,6 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
2
  var _excluded = ["children", "elevation", "className"];
3
- import * as React from "react";
3
+ import React from "react";
4
4
  import { List } from "../List";
5
5
  import { Elevation } from "../Elevation";
6
6
  import { css } from "emotion";
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Accordion.tsx"],"names":["React","List","Elevation","css","classNames","listStyle","padding","Accordion","props","children","elevation","className","other"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,IAAT;AAEA,SAASC,SAAT;AACA,SAASC,GAAT,QAAoB,SAApB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AAmBA,IAAMC,SAAS,gBAAGF,GAAG,CAAC;AAClB,gBAAc;AACVG,IAAAA,OAAO,EAAE;AADC;AADI,CAAD,qBAArB;;AAMA,IAAMC,SAAmC,GAAG,SAAtCA,SAAsC,CAAAC,KAAK,EAAI;AACjD,MAAQC,QAAR,GAAyDD,KAAzD,CAAQC,QAAR;AAAA,yBAAyDD,KAAzD,CAAkBE,SAAlB;AAAA,MAAkBA,SAAlB,iCAA8B,CAA9B;AAAA,MAAiCC,SAAjC,GAAyDH,KAAzD,CAAiCG,SAAjC;AAAA,MAA+CC,KAA/C,4BAAyDJ,KAAzD;;AACA,sBACI,oBAAC,SAAD;AAAW,IAAA,CAAC,EAAEE,SAAd;AAAyB,IAAA,SAAS,EAAEN,UAAU,CAAC,qBAAD,EAAwBO,SAAxB;AAA9C,kBACI,oBAAC,IAAD;AAAM,IAAA,OAAO,MAAb;AAAc,IAAA,SAAS,EAAEN;AAAzB,KAAwCO,KAAxC,GACKH,QADL,CADJ,CADJ;AAOH,CATD;;AAWA,SAASF,SAAT","sourcesContent":["import React from \"react\";\nimport { List, ListItem } from \"../List\";\nimport { AccordionItem } from \"./AccordionItem\";\nimport { Elevation } from \"../Elevation\";\nimport { css } from \"emotion\";\nimport classNames from \"classnames\";\n\nexport interface AccordionProps {\n /**\n * Element displayed when accordion is expanded.\n */\n children: React.ReactElement<typeof ListItem>[] | React.ReactElement<typeof AccordionItem>[];\n\n /**\n * Elevation number, default set to 2\n */\n elevation?: number;\n\n /**\n * Append a class name\n */\n className?: string;\n}\n\nconst listStyle = css({\n \"&.mdc-list\": {\n padding: 0\n }\n});\n\nconst Accordion: React.FC<AccordionProps> = props => {\n const { children, elevation = 2, className, ...other } = props;\n return (\n <Elevation z={elevation} className={classNames(\"webiny-ui-accordion\", className)}>\n <List twoLine className={listStyle} {...other}>\n {children}\n </List>\n </Elevation>\n );\n};\n\nexport { Accordion };\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Accordion.stories.tsx"],"names":["React","storiesOf","Story","StoryReadme","StorySandboxCode","StorySandbox","StorySandboxExample","readme","Accordion","AccordionItem","ReactComponent","SettingsIcon","story","module","add","info","propTables"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAT,QAA0B,kBAA1B;AACA,SACIC,KADJ,EAEIC,WAFJ,EAGIC,gBAHJ,EAIIC,YAJJ,EAKIC,mBALJ,QAMO,+BANP;AAOA,OAAOC,MAAP;AACA,SAASC,SAAT;AACA,SAASC,aAAT;AACA,SAASC,cAAc,IAAIC,YAA3B;AAEA,IAAMC,KAAK,GAAGX,SAAS,CAAC,sBAAD,EAAyBY,MAAzB,CAAvB;AAEAD,KAAK,CAACE,GAAN,CACI,OADJ,EAEI,YAAM;AACF,sBACI,oBAAC,KAAD,qBACI,oBAAC,WAAD,QAAcP,MAAd,CADJ,eAEI,oBAAC,YAAD;AAAc,IAAA,KAAK,EAAE;AAArB,kBACI,oBAAC,mBAAD,qBACI,oBAAC,SAAD,qBACI,oBAAC,aAAD;AACI,IAAA,IAAI,eAAE,oBAAC,YAAD,OADV;AAEI,IAAA,KAAK,EAAC,YAFV;AAGI,IAAA,WAAW,EAAC,sBAHhB;AAII,IAAA,IAAI;AAJR,kBAMI,iDANJ,CADJ,eASI,oBAAC,aAAD;AACI,IAAA,IAAI,eAAE,oBAAC,YAAD,OADV;AAEI,IAAA,KAAK,EAAC,YAFV;AAGI,IAAA,WAAW,EAAC;AAHhB,kBAKI,iDALJ,CATJ,eAgBI,oBAAC,aAAD;AACI,IAAA,IAAI,eAAE,oBAAC,YAAD,OADV;AAEI,IAAA,KAAK,EAAC,YAFV;AAGI,IAAA,WAAW,EAAC;AAHhB,kBAKI,iDALJ,CAhBJ,CADJ,CADJ,eA2BI,oBAAC,gBAAD,qBACI,8CACI,oBAAC,SAAD,qBACI,oBAAC,aAAD;AACI,IAAA,IAAI,eAAE,oBAAC,YAAD,OADV;AAEI,IAAA,KAAK,EAAC,YAFV;AAGI,IAAA,WAAW,EAAC,sBAHhB;AAII,IAAA,IAAI;AAJR,kBAMI,iDANJ,CADJ,eASI,oBAAC,aAAD;AACI,IAAA,IAAI,eAAE,oBAAC,YAAD,OADV;AAEI,IAAA,KAAK,EAAC,YAFV;AAGI,IAAA,WAAW,EAAC;AAHhB,kBAKI,iDALJ,CATJ,eAgBI,oBAAC,aAAD;AACI,IAAA,IAAI,eAAE,oBAAC,YAAD,OADV;AAEI,IAAA,KAAK,EAAC,YAFV;AAGI,IAAA,WAAW,EAAC;AAHhB,kBAKI,iDALJ,CAhBJ,CADJ,CADJ,CA3BJ,CAFJ,CADJ;AA6DH,CAhEL,EAiEI;AAAEQ,EAAAA,IAAI,EAAE;AAAEC,IAAAA,UAAU,EAAE,CAACR,SAAD,EAAYC,aAAZ;AAAd;AAAR,CAjEJ","sourcesContent":["import React from \"react\";\nimport { storiesOf } from \"@storybook/react\";\nimport {\n Story,\n StoryReadme,\n StorySandboxCode,\n StorySandbox,\n StorySandboxExample\n} from \"@webiny/storybook-utils/Story\";\nimport readme from \"./README.md\";\nimport { Accordion } from \"./Accordion\";\nimport { AccordionItem } from \"./AccordionItem\";\nimport { ReactComponent as SettingsIcon } from \"./icons/round-settings-24px.svg\";\n\nconst story = storiesOf(\"Components/Accordion\", module);\n\nstory.add(\n \"usage\",\n () => {\n return (\n <Story>\n <StoryReadme>{readme}</StoryReadme>\n <StorySandbox title={\"Accordion\"}>\n <StorySandboxExample>\n <Accordion>\n <AccordionItem\n icon={<SettingsIcon />}\n title=\"Settings 1\"\n description=\"Settings description\"\n open\n >\n <div>Inner child 1</div>\n </AccordionItem>\n <AccordionItem\n icon={<SettingsIcon />}\n title=\"Settings 2\"\n description=\"Settings description\"\n >\n <div>Inner child 2</div>\n </AccordionItem>\n <AccordionItem\n icon={<SettingsIcon />}\n title=\"Settings 3\"\n description=\"Settings description\"\n >\n <div>Inner child 3</div>\n </AccordionItem>\n </Accordion>\n </StorySandboxExample>\n <StorySandboxCode>\n <div>\n <Accordion>\n <AccordionItem\n icon={<SettingsIcon />}\n title=\"Settings 1\"\n description=\"Settings description\"\n open\n >\n <div>Inner child 1</div>\n </AccordionItem>\n <AccordionItem\n icon={<SettingsIcon />}\n title=\"Settings 2\"\n description=\"Settings description\"\n >\n <div>Inner child 2</div>\n </AccordionItem>\n <AccordionItem\n icon={<SettingsIcon />}\n title=\"Settings 3\"\n description=\"Settings description\"\n >\n <div>Inner child 3</div>\n </AccordionItem>\n </Accordion>\n </div>\n </StorySandboxCode>\n </StorySandbox>\n </Story>\n );\n },\n { info: { propTables: [Accordion, AccordionItem] } }\n);\n"]}
@@ -1,9 +1,9 @@
1
1
  import React from "react";
2
- export declare type AccordionItemProps = {
2
+ export interface AccordionItemProps {
3
3
  /**
4
4
  * Left side icon
5
5
  */
6
- icon: React.ReactElement;
6
+ icon?: React.ReactElement | null;
7
7
  /**
8
8
  * Accordion title
9
9
  */
@@ -12,10 +12,6 @@ export declare type AccordionItemProps = {
12
12
  * Optional description
13
13
  */
14
14
  description?: string;
15
- /**
16
- * Element displayed when accordion is expanded
17
- */
18
- children?: React.ReactNode;
19
15
  /**
20
16
  * Append a class name
21
17
  */
@@ -28,6 +24,6 @@ export declare type AccordionItemProps = {
28
24
  * For testing purpose
29
25
  */
30
26
  "data-testid"?: string;
31
- };
32
- declare const AccordionItem: (props: AccordionItemProps) => JSX.Element;
27
+ }
28
+ declare const AccordionItem: React.FC<AccordionItemProps>;
33
29
  export { AccordionItem };
@@ -61,6 +61,10 @@ var defaultStyle = {
61
61
  pointerEvents: "none",
62
62
  overflow: "hidden"
63
63
  };
64
+
65
+ /**
66
+ * We are casting pointerEvents as any because csstype does not have PointerEvents exported. Or at least, that is the error.
67
+ */
64
68
  var transitionStyles = {
65
69
  entering: {
66
70
  opacity: 0,
@@ -94,7 +98,7 @@ var AccordionItem = function AccordionItem(props) {
94
98
  setState(!open);
95
99
  }, [open]);
96
100
  useEffect(function () {
97
- setState(props.open);
101
+ setState(props.open ? true : false);
98
102
  }, [props.open]);
99
103
  return /*#__PURE__*/React.createElement("div", {
100
104
  className: classNames("webiny-ui-accordion-item", props.className)
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["AccordionItem.tsx"],"names":["React","useState","useCallback","useEffect","ListItem","ListItemGraphic","ListItemMeta","Transition","Icon","styled","css","Typography","ReactComponent","UpArrow","DownArrow","classNames","Content","width","borderRight","borderBottom","borderLeft","boxSizing","listItem","padding","cursor","marginRight","ListItemTitle","fontWeight","marginBottom","ListItemDescription","TitleContent","display","flexDirection","openedState","backgroundColor","duration","defaultStyle","transition","opacity","height","pointerEvents","overflow","transitionStyles","entering","entered","exiting","AccordionItem","props","open","setState","toggleState","className","icon","title","description","state","children"],"mappings":"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","sourcesContent":["import React, { useState, useCallback, useEffect } from \"react\";\nimport { ListItem, ListItemGraphic, ListItemMeta } from \"../List\";\nimport Transition from \"react-transition-group/Transition\";\nimport { Icon } from \"~/Icon\";\nimport styled from \"@emotion/styled\";\nimport { css } from \"emotion\";\nimport { Typography } from \"~/Typography\";\n\nimport { ReactComponent as UpArrow } from \"./icons/round-keyboard_arrow_up-24px.svg\";\nimport { ReactComponent as DownArrow } from \"./icons/round-keyboard_arrow_down-24px.svg\";\nimport classNames from \"classnames\";\n\nconst Content = styled(\"div\")({\n width: \"100%\",\n borderRight: \"1px solid var(--mdc-theme-background)\",\n borderBottom: \"1px solid var(--mdc-theme-background)\",\n borderLeft: \"1px solid var(--mdc-theme-background)\",\n boxSizing: \"border-box\"\n});\n\nconst listItem = css({\n padding: \"15px 20px\",\n cursor: \"pointer\",\n borderBottom: \"1px solid var(--mdc-theme-background)\",\n \"&:last-child\": {\n borderBottom: \"none\"\n },\n \".mdc-list-item__graphic\": {\n marginRight: 20\n }\n});\n\nconst ListItemTitle = styled(\"div\")({\n fontWeight: 600,\n marginBottom: 5\n});\n\nconst ListItemDescription = styled(\"div\")({});\n\nconst TitleContent = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"column\"\n});\n\nconst openedState = css({\n backgroundColor: \"var(--mdc-theme-on-background)\"\n});\n\nconst duration = 150;\nconst defaultStyle = {\n transition: `all ${duration}ms ease-in-out`,\n opacity: 0,\n height: 0,\n pointerEvents: \"none\",\n overflow: \"hidden\"\n};\n\ntype TransitionStylesState = \"entering\" | \"entered\" | \"exiting\";\n\n/**\n * We are casting pointerEvents as any because csstype does not have PointerEvents exported. Or at least, that is the error.\n */\nconst transitionStyles = {\n entering: {\n opacity: 0,\n height: 0,\n padding: \"20px 20px 20px 65px\",\n pointerEvents: \"auto\" as any,\n overflow: \"initial\"\n },\n entered: {\n opacity: 1,\n height: \"auto\",\n padding: \"20px 20px 20px 65px\",\n pointerEvents: \"auto\" as any,\n overflow: \"initial\"\n },\n exiting: {\n height: \"auto\",\n padding: \"20px 20px 20px 65px\",\n pointerEvents: \"auto\" as any,\n overflow: \"initial\"\n }\n};\n\nexport interface AccordionItemProps {\n /**\n * Left side icon\n */\n icon?: React.ReactElement | null;\n\n /**\n * Accordion title\n */\n title?: React.ReactNode;\n\n /**\n * Optional description\n */\n description?: string;\n\n /**\n * Append a class name\n */\n className?: string;\n\n /**\n * Render item opened by default\n */\n open?: boolean;\n /**\n * For testing purpose\n */\n \"data-testid\"?: string;\n}\n\nconst AccordionItem: React.FC<AccordionItemProps> = props => {\n const [open, setState] = useState<boolean>(props.open ? props.open : false);\n\n const toggleState = useCallback(() => {\n setState(!open);\n }, [open]);\n\n useEffect(() => {\n setState(props.open ? true : false);\n }, [props.open]);\n\n return (\n <div className={classNames(\"webiny-ui-accordion-item\", props.className)}>\n <ListItem\n className={classNames(\n listItem,\n { [openedState]: open },\n \"webiny-ui-accordion-item__list-item\"\n )}\n onClick={toggleState}\n data-testid={props[\"data-testid\"]}\n >\n {props.icon && (\n <ListItemGraphic>\n <Icon icon={props.icon} />\n </ListItemGraphic>\n )}\n\n <TitleContent className=\"webiny-ui-accordion-item__title\">\n <ListItemTitle>{props.title}</ListItemTitle>\n {props.description && (\n <ListItemDescription>\n <Typography use={\"subtitle2\"}>{props.description}</Typography>\n </ListItemDescription>\n )}\n </TitleContent>\n <ListItemMeta>\n <Icon icon={!open ? <DownArrow /> : <UpArrow />} />\n </ListItemMeta>\n </ListItem>\n <Transition in={open} timeout={duration}>\n {(state: TransitionStylesState) => (\n <Content\n style={{ ...defaultStyle, ...transitionStyles[state] }}\n className=\"webiny-ui-accordion-item__content\"\n >\n {props.children}\n </Content>\n )}\n </Transition>\n </div>\n );\n};\n\nexport { AccordionItem };\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA;AACA","sourcesContent":["export * from \"./Accordion\";\nexport * from \"./AccordionItem\";\n"]}
package/Alert/Alert.d.ts CHANGED
@@ -1,14 +1,14 @@
1
- import * as React from "react";
1
+ import React from "react";
2
2
  export declare type AlertType = "success" | "info" | "warning" | "danger";
3
- declare type AlertProps = {
3
+ interface AlertProps {
4
4
  title: string;
5
5
  type: AlertType;
6
6
  children?: React.ReactNode;
7
7
  className?: string;
8
8
  style?: React.CSSProperties;
9
- };
9
+ }
10
10
  /**
11
11
  * Use Alert component to display user's avatar.
12
12
  */
13
- declare const Alert: (props: AlertProps) => JSX.Element;
13
+ declare const Alert: React.FC<AlertProps>;
14
14
  export { Alert };
package/Alert/Alert.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
2
  var _excluded = ["title", "type", "children"];
3
- import * as React from "react";
3
+ import React from "react";
4
4
  import { css } from "emotion";
5
5
  var alertStyles = /*#__PURE__*/css({
6
6
  borderLeft: "3px solid red",
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Alert.tsx"],"names":["React","css","alertStyles","borderLeft","margin","padding","fontWeight","lineHeight","color","marginBottom","fontSize","borderColor","Alert","props","title","type","children","rest"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,GAAT,QAAoB,SAApB;AAEA,IAAMC,WAAW,gBAAGD,GAAG,CAAC;AACpBE,EAAAA,UAAU,EAAE,eADQ;AAEpBC,EAAAA,MAAM,EAAE,cAFY;AAGpBC,EAAAA,OAAO,EAAE,gBAHW;AAIpB,6BAA2B;AACvBC,IAAAA,UAAU,EAAE,GADW;AAEvBC,IAAAA,UAAU,EAAE,MAFW;AAGvBC,IAAAA,KAAK,EAAE,6BAHgB;AAIvBC,IAAAA,YAAY,EAAE;AAJS,GAJP;AAUpB,+BAA6B;AACzBF,IAAAA,UAAU,EAAE,MADa;AAEzBG,IAAAA,QAAQ,EAAE,EAFe;AAGzBF,IAAAA,KAAK,EAAE;AAHkB,GAVT;AAepB,gCAA8B;AAC1BG,IAAAA,WAAW,EAAE;AADa,GAfV;AAkBpB,6BAA2B;AACvBA,IAAAA,WAAW,EAAE;AADU,GAlBP;AAqBpB,gCAA8B;AAC1BA,IAAAA,WAAW,EAAE;AADa,GArBV;AAwBpB,+BAA6B;AACzBA,IAAAA,WAAW,EAAE;AADY;AAxBT,CAAD,uBAAvB;;AAgDA;AACA;AACA;AACA,IAAMC,KAA2B,GAAG,SAA9BA,KAA8B,CAAAC,KAAK,EAAI;AACzC,MAAQC,KAAR,GAA2CD,KAA3C,CAAQC,KAAR;AAAA,MAAeC,IAAf,GAA2CF,KAA3C,CAAeE,IAAf;AAAA,MAAqBC,QAArB,GAA2CH,KAA3C,CAAqBG,QAArB;AAAA,MAAkCC,IAAlC,4BAA2CJ,KAA3C;;AAEA,sBACI,6CAASI,IAAT;AAAe,IAAA,SAAS,EAAEf,WAAW,GAAG,oCAAd,GAAqDa;AAA/E,mBACI;AAAG,IAAA,SAAS,EAAE;AAAd,KAAyCD,KAAzC,CADJ,eAEI;AAAG,IAAA,SAAS,EAAE;AAAd,KAA2CE,QAA3C,CAFJ,CADJ;AAMH,CATD;;AAWA,SAASJ,KAAT","sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\n\nconst alertStyles = css({\n borderLeft: \"3px solid red\",\n margin: \"5px 0 15px 0\",\n padding: \"2px 0 2px 10px\",\n \".webiny-ui-alert__title\": {\n fontWeight: 600,\n lineHeight: \"150%\",\n color: \"var(--mdc-theme-on-surface)\",\n marginBottom: 5\n },\n \".webiny-ui-alert__message\": {\n lineHeight: \"100%\",\n fontSize: 14,\n color: \"var(--mdc-theme-on-surface)\"\n },\n \"&.webiny-ui-alert--success\": {\n borderColor: \"#21CEAF\"\n },\n \"&.webiny-ui-alert--info\": {\n borderColor: \"#29A9DB\"\n },\n \"&.webiny-ui-alert--warning\": {\n borderColor: \"#F45C3C\"\n },\n \"&.webiny-ui-alert--danger\": {\n borderColor: \"#E4495C\"\n }\n});\n\nexport type AlertType = \"success\" | \"info\" | \"warning\" | \"danger\";\n\ninterface AlertProps {\n // Alert title.\n title: string;\n\n // Alert type.\n type: AlertType;\n\n // Alert message.\n children?: React.ReactNode;\n\n // CSS class name\n className?: string;\n\n // Style object\n style?: React.CSSProperties;\n}\n\n/**\n * Use Alert component to display user's avatar.\n */\nconst Alert: React.FC<AlertProps> = props => {\n const { title, type, children, ...rest } = props;\n\n return (\n <div {...rest} className={alertStyles + \" webiny-ui-alert webiny-ui-alert--\" + type}>\n <p className={\"webiny-ui-alert__title\"}>{title}</p>\n <p className={\"webiny-ui-alert__message\"}>{children}</p>\n </div>\n );\n};\n\nexport { Alert };\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Alert.stories.tsx"],"names":["React","storiesOf","Story","StoryReadme","StorySandboxCode","StorySandbox","StorySandboxExample","readme","Alert","story","module","add","info","propTables"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAT,QAA0B,kBAA1B;AACA,SACIC,KADJ,EAEIC,WAFJ,EAGIC,gBAHJ,EAIIC,YAJJ,EAKIC,mBALJ,QAMO,+BANP;AAOA,OAAOC,MAAP;AAEA,SAASC,KAAT;AAEA,IAAMC,KAAK,GAAGR,SAAS,CAAC,kBAAD,EAAqBS,MAArB,CAAvB;AAEAD,KAAK,CAACE,GAAN,CACI,OADJ,EAEI,YAAM;AACF,sBACI,oBAAC,KAAD,qBACI,oBAAC,WAAD,QAAcJ,MAAd,CADJ,eAEI,oBAAC,YAAD,qBACI,oBAAC,mBAAD;AAAqB,IAAA,KAAK,EAAE;AAA5B,kBACI,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAE,uBAAd;AAAuC,IAAA,IAAI,EAAE;AAA7C,qCADJ,CADJ,eAMI,oBAAC,gBAAD,qBACI,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAE,uBAAd;AAAuC,IAAA,IAAI,EAAE;AAA7C,qCADJ,CANJ,CAFJ,eAcI,oBAAC,YAAD,qBACI,oBAAC,mBAAD;AAAqB,IAAA,KAAK,EAAE;AAA5B,kBACI,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAE,uBAAd;AAAuC,IAAA,IAAI,EAAE;AAA7C,+BADJ,CADJ,eAMI,oBAAC,gBAAD,qBACI,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAE,uBAAd;AAAuC,IAAA,IAAI,EAAE;AAA7C,+BADJ,CANJ,CAdJ,CADJ;AA6BH,CAhCL,EAiCI;AAAEK,EAAAA,IAAI,EAAE;AAAEC,IAAAA,UAAU,EAAE,CAACL,KAAD;AAAd;AAAR,CAjCJ","sourcesContent":["import React from \"react\";\nimport { storiesOf } from \"@storybook/react\";\nimport {\n Story,\n StoryReadme,\n StorySandboxCode,\n StorySandbox,\n StorySandboxExample\n} from \"@webiny/storybook-utils/Story\";\nimport readme from \"./README.md\";\n\nimport { Alert } from \"./Alert\";\n\nconst story = storiesOf(\"Components/Alert\", module);\n\nstory.add(\n \"usage\",\n () => {\n return (\n <Story>\n <StoryReadme>{readme}</StoryReadme>\n <StorySandbox>\n <StorySandboxExample title={\"Info\"}>\n <Alert title={\"Something went wrong!\"} type={\"info\"}>\n We failed to fetch your data.\n </Alert>\n </StorySandboxExample>\n <StorySandboxCode>\n <Alert title={\"Something went wrong!\"} type={\"info\"}>\n We failed to fetch your data.\n </Alert>\n </StorySandboxCode>\n </StorySandbox>\n <StorySandbox>\n <StorySandboxExample title={\"Danger\"}>\n <Alert title={\"Something went wrong!\"} type={\"danger\"}>\n Please contact support!\n </Alert>\n </StorySandboxExample>\n <StorySandboxCode>\n <Alert title={\"Something went wrong!\"} type={\"danger\"}>\n Please contact support!\n </Alert>\n </StorySandboxCode>\n </StorySandbox>\n </Story>\n );\n },\n { info: { propTables: [Alert] } }\n);\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA","sourcesContent":["export * from \"./Alert\";\n"]}
@@ -1,46 +1,30 @@
1
- import * as React from "react";
2
- import { ControllerStateAndHelpers } from "downshift";
1
+ import React from "react";
3
2
  import { AutoCompleteBaseProps } from "./types";
4
3
  export declare enum Placement {
5
4
  top = "top",
6
5
  bottom = "bottom"
7
6
  }
8
- export declare type Props = AutoCompleteBaseProps & {
7
+ export interface AutoCompleteProps extends Omit<AutoCompleteBaseProps, "onChange"> {
9
8
  placement?: Placement;
10
- onChange?: (value: any, selection: any) => void;
9
+ onChange?: (value: any, selection?: any) => void;
11
10
  loading?: boolean;
12
- noResultFound?: Function;
13
- };
14
- declare type State = {
11
+ noResultFound?: React.ReactNode;
12
+ }
13
+ interface State {
15
14
  inputValue: string;
16
- };
17
- interface RenderOptionsParams extends Omit<ControllerStateAndHelpers<any>, "getInputProps" | "openMenu"> {
18
- options: Props["options"];
19
- placement: Props["placement"];
20
15
  }
21
- declare class AutoComplete extends React.Component<Props, State> {
22
- static defaultProps: {
23
- valueProp: string;
24
- textProp: string;
25
- options: any[];
26
- placement: Placement;
27
- /**
28
- * We cast this as AutoComplete because renderItem() is executed via .call() where AutoComplete instance is assigned as this.
29
- */
30
- renderItem(item: any): JSX.Element;
31
- };
32
- state: {
33
- inputValue: string;
34
- };
16
+ declare class AutoComplete extends React.Component<AutoCompleteProps, State> {
17
+ static defaultProps: Partial<AutoCompleteProps>;
18
+ state: State;
35
19
  /**
36
20
  * Helps us trigger some of the downshift's methods (eg. clearSelection) and helps us to avoid adding state.
37
21
  */
38
22
  downshift: any;
39
- componentDidUpdate(previousProps: any): void;
23
+ componentDidUpdate(previousProps: AutoCompleteProps): void;
40
24
  /**
41
25
  * Renders options - based on user's input. It will try to match input text with available options.
42
26
  */
43
- renderOptions({ options, isOpen, highlightedIndex, selectedItem, getMenuProps, getItemProps, placement }: RenderOptionsParams): JSX.Element;
27
+ private renderOptions;
44
28
  render(): JSX.Element;
45
29
  }
46
30
  export { AutoComplete };
@@ -7,9 +7,9 @@ import _inherits from "@babel/runtime/helpers/inherits";
7
7
  import _createSuper from "@babel/runtime/helpers/createSuper";
8
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
9
  import _isEqual from "lodash/isEqual";
10
- var _excluded = ["className", "options", "onChange", "value", "valueProp", "textProp", "onInput", "validation", "placement"],
10
+ var _excluded = ["className", "options", "onChange", "value", "onInput", "validation", "placement"],
11
11
  _excluded2 = ["getInputProps", "openMenu"];
12
- import * as React from "react";
12
+ import React from "react";
13
13
  import Downshift from "downshift";
14
14
  import { Input } from "../Input";
15
15
  import classNames from "classnames";
@@ -40,14 +40,14 @@ export var Placement;
40
40
  Placement["bottom"] = "bottom";
41
41
  })(Placement || (Placement = {}));
42
42
 
43
- function Spinner() {
43
+ var Spinner = function Spinner() {
44
44
  return /*#__PURE__*/React.createElement(MaterialSpinner, {
45
45
  size: 24,
46
46
  spinnerColor: "#fa5723",
47
47
  spinnerWidth: 2,
48
48
  visible: true
49
49
  });
50
- }
50
+ };
51
51
 
52
52
  var OptionsList = function OptionsList(_ref) {
53
53
  var placement = _ref.placement,
@@ -204,12 +204,11 @@ var AutoComplete = /*#__PURE__*/function (_React$Component) {
204
204
  options = _this$props2.options,
205
205
  _onChange = _this$props2.onChange,
206
206
  value = _this$props2.value,
207
- valueProp = _this$props2.valueProp,
208
- textProp = _this$props2.textProp,
209
207
  onInput = _this$props2.onInput,
210
208
  _this$props2$validati = _this$props2.validation,
211
209
  validation = _this$props2$validati === void 0 ? {
212
- isValid: null
210
+ isValid: null,
211
+ message: null
213
212
  } : _this$props2$validati,
214
213
  placement = _this$props2.placement,
215
214
  otherInputProps = _objectWithoutProperties(_this$props2, _excluded); // Downshift related props.
@@ -265,7 +264,9 @@ var AutoComplete = /*#__PURE__*/function (_React$Component) {
265
264
  var keyCode = keycode(ev);
266
265
 
267
266
  if (keyCode === "backspace") {
268
- _onChange(null);
267
+ if (_onChange) {
268
+ _onChange(null);
269
+ }
269
270
 
270
271
  setTimeout(function () {
271
272
  return openMenu();
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["AutoComplete.tsx"],"names":["React","Downshift","Input","classNames","Elevation","Typography","keycode","autoCompleteStyle","suggestionList","getOptionValue","getOptionText","findInAliases","MaterialSpinner","css","menuStyles","top","bottom","listStyles","listStyle","paddingLeft","margin","Placement","Spinner","OptionsList","placement","getMenuProps","children","AutoComplete","inputValue","createRef","previousProps","props","value","options","previousValue","item","find","option","downshift","current","selectItem","isOpen","highlightedIndex","selectedItem","getItemProps","state","length","renderItem","filtered","filter","aliases","toLowerCase","includes","noResultFound","map","index","itemValue","itemClassNames","selected","className","call","onChange","onInput","validation","isValid","message","otherInputProps","downshiftProps","itemToString","defaultSelectedItem","selection","setState","getInputProps","openMenu","rest","trailingIcon","loading","rawOnChange","ev","onBlur","onFocus","onKeyDown","keyCode","setTimeout","onKeyUp","target","currentTarget","disabled","readOnly","renderOptions","Component","valueProp","textProp"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport Downshift, { ControllerStateAndHelpers, PropGetters } from \"downshift\";\nimport { Input } from \"~/Input\";\nimport classNames from \"classnames\";\nimport { Elevation } from \"~/Elevation\";\nimport { Typography } from \"~/Typography\";\nimport keycode from \"keycode\";\nimport { autoCompleteStyle, suggestionList } from \"./styles\";\nimport { AutoCompleteBaseProps } from \"./types\";\nimport { getOptionValue, getOptionText, findInAliases } from \"./utils\";\nimport { isEqual } from \"lodash\";\nimport MaterialSpinner from \"react-spinner-material\";\nimport { css } from \"emotion\";\n\nconst menuStyles = css({\n top: \"unset !important\",\n bottom: 75\n});\n\nconst listStyles = css({\n \"&.autocomplete__options-list\": {\n listStyle: \"none\",\n paddingLeft: 0,\n \"& li\": {\n margin: 0\n }\n }\n});\n\nexport enum Placement {\n top = \"top\",\n bottom = \"bottom\"\n}\n\nexport interface AutoCompleteProps extends Omit<AutoCompleteBaseProps, \"onChange\"> {\n /* Placement position of dropdown menu, can be either `top` or `bottom`. */\n placement?: Placement;\n\n /* A callback that is executed each time a value is changed. */\n onChange?: (value: any, selection?: any) => void;\n\n /* If true, will show a loading spinner on the right side of the input. */\n loading?: boolean;\n\n /* A component that renders supporting UI in case of no result found. */\n noResultFound?: React.ReactNode;\n}\n\ninterface State {\n inputValue: string;\n}\n\nconst Spinner: React.FC = () => {\n return <MaterialSpinner size={24} spinnerColor={\"#fa5723\"} spinnerWidth={2} visible />;\n};\n\ninterface RenderOptionsParams\n extends Omit<ControllerStateAndHelpers<any>, \"getInputProps\" | \"openMenu\"> {\n options: AutoCompleteProps[\"options\"];\n placement?: Placement;\n}\n\ninterface OptionsListProps {\n placement?: Placement;\n getMenuProps: PropGetters<Record<string, any>>[\"getMenuProps\"];\n}\n\nconst OptionsList: React.FC<OptionsListProps> = ({ placement, getMenuProps, children }) => {\n return (\n <Elevation\n z={1}\n className={classNames({\n [menuStyles]: placement === Placement.top\n })}\n >\n <ul\n className={classNames(\"autocomplete__options-list\", listStyles)}\n {...getMenuProps()}\n >\n {children}\n </ul>\n </Elevation>\n );\n};\n\nclass AutoComplete extends React.Component<AutoCompleteProps, State> {\n static defaultProps: Partial<AutoCompleteProps> = {\n valueProp: \"id\",\n textProp: \"name\",\n options: [],\n placement: Placement.bottom,\n /**\n * We cast this as AutoComplete because renderItem() is executed via .call() where AutoComplete instance is assigned as this.\n */\n renderItem(item: any) {\n return (\n <Typography use={\"body2\"}>\n {getOptionText(item, (this as unknown as AutoComplete).props)}\n </Typography>\n );\n }\n };\n\n public override state: State = {\n inputValue: \"\"\n };\n\n /**\n * Helps us trigger some of the downshift's methods (eg. clearSelection) and helps us to avoid adding state.\n */\n downshift: any = React.createRef();\n\n public override componentDidUpdate(previousProps: AutoCompleteProps) {\n const { value, options } = this.props;\n const { value: previousValue } = previousProps;\n\n if (!isEqual(value, previousValue)) {\n let item = null;\n\n if (value) {\n if (typeof value === \"object\") {\n item = value;\n } else {\n item =\n options.find(option => {\n return value === getOptionValue(option, this.props);\n }) || null;\n }\n }\n\n const { current: downshift } = this.downshift;\n downshift && downshift.selectItem(item);\n }\n }\n\n /**\n * Renders options - based on user's input. It will try to match input text with available options.\n */\n private renderOptions({\n options,\n isOpen,\n highlightedIndex,\n selectedItem,\n getMenuProps,\n getItemProps,\n placement\n }: RenderOptionsParams) {\n if (!isOpen) {\n return null;\n }\n /**\n * Suggest user to start typing when there are no options available to choose from.\n */\n if (!this.state.inputValue && !options.length) {\n return (\n <OptionsList placement={placement} getMenuProps={getMenuProps}>\n <li>\n <Typography use={\"body2\"}>Start typing to find entry</Typography>\n </li>\n </OptionsList>\n );\n }\n\n const { renderItem } = this.props;\n\n const filtered = options.filter(item => {\n // 2) At the end, we want to show only options that are matched by typed text.\n if (!this.state.inputValue) {\n return true;\n }\n\n if (item.aliases) {\n return findInAliases(item, this.state.inputValue);\n }\n\n return getOptionText(item, this.props)\n .toLowerCase()\n .includes(this.state.inputValue.toLowerCase());\n });\n\n if (!filtered.length) {\n return (\n <OptionsList placement={placement} getMenuProps={getMenuProps}>\n <li>\n <Typography use={\"body2\"}>No results.</Typography>\n {this.props.noResultFound}\n </li>\n </OptionsList>\n );\n }\n\n return (\n <OptionsList placement={placement} getMenuProps={getMenuProps}>\n {filtered.map((item, index) => {\n const itemValue = getOptionValue(item, this.props);\n\n // Base classes.\n const itemClassNames = {\n [suggestionList]: true,\n highlighted: highlightedIndex === index,\n selected: false\n };\n\n // Add \"selected\" class if the item is selected.\n if (selectedItem && getOptionValue(selectedItem, this.props) === itemValue) {\n itemClassNames.selected = true;\n }\n\n // Render the item.\n return (\n <li\n key={itemValue}\n {...getItemProps({\n index,\n item,\n className: classNames(itemClassNames)\n })}\n >\n {renderItem.call(this, item, index)}\n </li>\n );\n })}\n </OptionsList>\n );\n }\n\n public override render() {\n const {\n className,\n options,\n onChange,\n value,\n // valueProp,\n // textProp,\n onInput,\n validation = { isValid: null, message: null },\n placement,\n ...otherInputProps\n } = this.props;\n\n // Downshift related props.\n const downshiftProps = {\n className: autoCompleteStyle,\n itemToString: (item: any) => getOptionText(item, this.props),\n defaultSelectedItem: value,\n onChange: (selection: string) => {\n if (!selection || !onChange) {\n return;\n }\n onChange(getOptionValue(selection, this.props), selection);\n this.setState(state => ({\n ...state,\n inputValue: \"\"\n }));\n }\n };\n\n return (\n <div className={classNames(autoCompleteStyle, className)}>\n <Downshift {...downshiftProps} ref={this.downshift}>\n {({ getInputProps, openMenu, ...rest }) => (\n <div>\n <Input\n {...getInputProps({\n // This prop is above `otherInputProps` since it can be overridden by the user.\n trailingIcon: this.props.loading && <Spinner />,\n ...otherInputProps,\n // @ts-ignore\n validation,\n rawOnChange: true,\n onChange: ev => ev,\n onBlur: ev => ev,\n onFocus: ev => {\n openMenu();\n otherInputProps.onFocus && otherInputProps.onFocus(ev);\n },\n onKeyDown: (ev: React.KeyboardEvent<HTMLInputElement>) => {\n const keyCode: string = keycode(ev as unknown as Event);\n\n if (keyCode === \"backspace\") {\n if (onChange) {\n onChange(null);\n }\n setTimeout(() => openMenu(), 50);\n }\n },\n onKeyUp: (ev: React.KeyboardEvent<HTMLInputElement>) => {\n const keyCode: string = keycode(ev as unknown as Event);\n\n const target = ev.currentTarget;\n const inputValue = target.value || \"\";\n\n // If user pressed 'esc', 'enter' or similar...\n if (\n keyCode &&\n keyCode.length > 1 &&\n keyCode !== \"backspace\"\n ) {\n return;\n }\n\n // If values are the same, exit, do not update current search term.\n if (inputValue === this.state.inputValue) {\n return;\n }\n\n this.setState(\n state => ({\n ...state,\n inputValue\n }),\n () => {\n onInput && onInput(inputValue);\n }\n );\n }\n })}\n />\n {!otherInputProps.disabled &&\n !otherInputProps.readOnly &&\n this.renderOptions({\n ...rest,\n options,\n placement\n })}\n </div>\n )}\n </Downshift>\n </div>\n );\n }\n}\n\nexport { AutoComplete };\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["AutoComplete.stories.tsx"],"names":["React","storiesOf","Story","StoryReadme","StorySandboxCode","StorySandbox","StorySandboxExample","readme","Form","AutoComplete","story","module","options","name","id","add","country","Bind","JSON","stringify","info","propTables"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAT,QAA0B,kBAA1B;AACA,SACIC,KADJ,EAEIC,WAFJ,EAGIC,gBAHJ,EAIIC,YAJJ,EAKIC,mBALJ,QAMO,+BANP;AAOA,OAAOC,MAAP;AAEA,SAASC,IAAT,QAAqB,cAArB;AACA,SAASC,YAAT;AAEA,IAAMC,KAAK,GAAGT,SAAS,CAAC,yBAAD,EAA4BU,MAA5B,CAAvB;AAEA,IAAMC,OAAO,GAAG,CACZ;AAAEC,EAAAA,IAAI,EAAE,QAAR;AAAkBC,EAAAA,EAAE,EAAE;AAAtB,CADY,EAEZ;AAAED,EAAAA,IAAI,EAAE,SAAR;AAAmBC,EAAAA,EAAE,EAAE;AAAvB,CAFY,EAGZ;AAAED,EAAAA,IAAI,EAAE,OAAR;AAAiBC,EAAAA,EAAE,EAAE;AAArB,CAHY,EAIZ;AAAED,EAAAA,IAAI,EAAE,OAAR;AAAiBC,EAAAA,EAAE,EAAE;AAArB,CAJY,EAKZ;AAAED,EAAAA,IAAI,EAAE,IAAR;AAAcC,EAAAA,EAAE,EAAE;AAAlB,CALY,EAMZ;AAAED,EAAAA,IAAI,EAAE,IAAR;AAAcC,EAAAA,EAAE,EAAE;AAAlB,CANY,EAOZ;AAAED,EAAAA,IAAI,EAAE,QAAR;AAAkBC,EAAAA,EAAE,EAAE;AAAtB,CAPY,EAQZ;AAAED,EAAAA,IAAI,EAAE,SAAR;AAAmBC,EAAAA,EAAE,EAAE;AAAvB,CARY,EASZ;AAAED,EAAAA,IAAI,EAAE,gBAAR;AAA0BC,EAAAA,EAAE,EAAE;AAA9B,CATY,CAAhB;AAYAJ,KAAK,CAACK,GAAN,CACI,cADJ,EAEI,YAAM;AACF,sBACI,oBAAC,KAAD,qBACI,oBAAC,WAAD,QAAcR,MAAd,CADJ,eAEI,oBAAC,YAAD,qBACI,oBAAC,mBAAD;AAAqB,IAAA,KAAK,EAAE;AAA5B,kBACI,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAE;AAAES,MAAAA,OAAO,EAAE;AAAEF,QAAAA,EAAE,EAAE,OAAN;AAAeD,QAAAA,IAAI,EAAE;AAArB;AAAX;AAAZ,KACK;AAAA,QAAGI,IAAH,QAAGA,IAAH;AAAA,wBACG,oBAAC,IAAD;AAAM,MAAA,IAAI,EAAC;AAAX,oBACI,oBAAC,YAAD;AACI,MAAA,OAAO,EAAEL,OADb;AAEI,MAAA,KAAK,EAAC,SAFV;AAGI,MAAA,WAAW,EAAC;AAHhB,MADJ,CADH;AAAA,GADL,CADJ,CADJ,eAcI,oBAAC,gBAAD,4OAM2BM,IAAI,CAACC,SAAL,CAAeP,OAAf,CAN3B,gSAdJ,CAFJ,eAiCI,oBAAC,YAAD,qBACI,oBAAC,mBAAD;AAAqB,IAAA,KAAK,EAAE;AAA5B,kBACI,oBAAC,IAAD;AAAM,IAAA,IAAI,EAAE;AAAEI,MAAAA,OAAO,EAAE;AAAX;AAAZ,KACK;AAAA,QAAGC,IAAH,SAAGA,IAAH;AAAA,wBACG,oBAAC,IAAD;AAAM,MAAA,IAAI,EAAC;AAAX,oBACI,oBAAC,YAAD;AACI,MAAA,eAAe,MADnB;AAEI,MAAA,OAAO,EAAE,CAAC,QAAD,EAAW,SAAX,EAAsB,OAAtB,EAA+B,OAA/B,CAFb;AAGI,MAAA,KAAK,EAAC,SAHV;AAII,MAAA,WAAW,EAAC;AAJhB,MADJ,CADH;AAAA,GADL,CADJ,CADJ,eAeI,oBAAC,gBAAD,ioBAfJ,CAjCJ,CADJ;AAoEH,CAvEL,EAwEI;AAAEG,EAAAA,IAAI,EAAE;AAAEC,IAAAA,UAAU,EAAE,CAACZ,YAAD;AAAd;AAAR,CAxEJ","sourcesContent":["import React from \"react\";\nimport { storiesOf } from \"@storybook/react\";\nimport {\n Story,\n StoryReadme,\n StorySandboxCode,\n StorySandbox,\n StorySandboxExample\n} from \"@webiny/storybook-utils/Story\";\nimport readme from \"./AutoCompleteReadme.md\";\n\nimport { Form } from \"@webiny/form\";\nimport { AutoComplete } from \"./AutoComplete\";\n\nconst story = storiesOf(\"Components/AutoComplete\", module);\n\nconst options = [\n { name: \"France\", id: \"france\" },\n { name: \"Germany\", id: \"germany\" },\n { name: \"Italy\", id: \"italy\" },\n { name: \"Spain\", id: \"spain\" },\n { name: \"UK\", id: \"uk\" },\n { name: \"US\", id: \"us\" },\n { name: \"Norway\", id: \"norway\" },\n { name: \"Finland\", id: \"finland\" },\n { name: \"Czech Republic\", id: \"czech-republic\" }\n];\n\nstory.add(\n \"AutoComplete\",\n () => {\n return (\n <Story>\n <StoryReadme>{readme}</StoryReadme>\n <StorySandbox>\n <StorySandboxExample title={\"Single value\"}>\n <Form data={{ country: { id: \"italy\", name: \"Italy\" } }}>\n {({ Bind }) => (\n <Bind name=\"country\">\n <AutoComplete\n options={options}\n label=\"Country\"\n description=\"Choose your country\"\n />\n </Bind>\n )}\n </Form>\n </StorySandboxExample>\n <StorySandboxCode>\n {`\n <Form>\n {({ Bind }) => (\n <Bind name=\"country\">\n <AutoComplete\n options={${JSON.stringify(options)}}\n label=\"Country\"\n description=\"Choose your country.\"\n />\n </Bind>\n )}\n </Form>\n `}\n </StorySandboxCode>\n </StorySandbox>\n\n <StorySandbox>\n <StorySandboxExample title={\"Single value - use simple strings\"}>\n <Form data={{ country: \"Germany\" }}>\n {({ Bind }) => (\n <Bind name=\"country\">\n <AutoComplete\n useSimpleValues\n options={[\"France\", \"Germany\", \"Italy\", \"Spain\"]}\n label=\"Country\"\n description=\"Choose your country\"\n />\n </Bind>\n )}\n </Form>\n </StorySandboxExample>\n <StorySandboxCode>\n {`\n <Form data={{ country: \"Germany\" }}>\n {({ Bind }) => (\n <Bind name=\"country\">\n <AutoComplete\n useSimpleValues\n options={[\"France\", \"Germany\", \"Italy\", \"Spain\"]}\n label=\"Country\"\n description=\"Choose your country\"\n />\n </Bind>\n )}\n </Form>\n `}\n </StorySandboxCode>\n </StorySandbox>\n </Story>\n );\n },\n { info: { propTables: [AutoComplete] } }\n);\n"]}
@@ -1,8 +1,10 @@
1
- import * as React from "react";
2
- import { ControllerStateAndHelpers } from "downshift";
1
+ import React from "react";
3
2
  import { AutoCompleteBaseProps } from "./types";
4
- import { Props } from "./AutoComplete";
5
- export declare type MultiAutoCompleteProps = AutoCompleteBaseProps & {
3
+ interface SelectionItem {
4
+ name: string;
5
+ }
6
+ declare type MultiAutoCompletePropsValue = SelectionItem[];
7
+ export interface MultiAutoCompleteProps extends Omit<AutoCompleteBaseProps, "value"> {
6
8
  /**
7
9
  * Prevents adding the same item to the list twice.
8
10
  */
@@ -23,8 +25,12 @@ export declare type MultiAutoCompleteProps = AutoCompleteBaseProps & {
23
25
  * Render list item when `useMultipleSelectionList` is used.
24
26
  */
25
27
  renderListItemLabel?: Function;
26
- noResultFound?: Function;
27
- };
28
+ noResultFound?: React.ReactNode;
29
+ /**
30
+ * Value is an array of strings. But can be undefined.
31
+ */
32
+ value?: MultiAutoCompletePropsValue;
33
+ }
28
34
  declare type State = {
29
35
  inputValue: string;
30
36
  multipleSelectionPage: number;
@@ -32,55 +38,26 @@ declare type State = {
32
38
  reorderFormVisible: string;
33
39
  reorderFormValue: string;
34
40
  };
35
- interface RenderOptionsParams extends Omit<ControllerStateAndHelpers<any>, "getInputProps" | "openMenu"> {
36
- options: Props["options"];
37
- unique: boolean;
38
- }
39
41
  export declare class MultiAutoComplete extends React.Component<MultiAutoCompleteProps, State> {
40
- static defaultProps: {
41
- valueProp: string;
42
- textProp: string;
43
- unique: boolean;
44
- options: any[];
45
- useSimpleValues: boolean;
46
- useMultipleSelectionList: boolean;
47
- /**
48
- * We cast this as MultiAutoComplete because renderItem() is executed via .call() where this is MultiAutoComplete instance.
49
- */
50
- renderItem(item: any): JSX.Element;
51
- /**
52
- * We cast this as MultiAutoComplete because renderListItemLabel() is executed via .call() where this is MultiAutoComplete instance.
53
- */
54
- renderListItemLabel(item: any): any;
55
- };
56
- state: {
57
- inputValue: string;
58
- multipleSelectionPage: number;
59
- multipleSelectionSearch: string;
60
- reorderFormVisible: string;
61
- reorderFormValue: string;
62
- };
42
+ static defaultProps: Partial<MultiAutoCompleteProps>;
43
+ state: State;
63
44
  /**
64
45
  * Helps us trigger some of the downshift's methods (eg. clearSelection) and helps us to avoid adding state.
65
46
  */
66
- downshift: React.RefObject<any>;
67
- assignedValueAfterClearing: {
68
- set: boolean;
69
- selection: any;
70
- };
71
- setMultipleSelectionPage: (multipleSelectionPage: any) => void;
72
- setMultipleSelectionSearch: (multipleSelectionSearch: any) => void;
47
+ private downshift;
48
+ private assignedValueAfterClearing;
49
+ setMultipleSelectionPage: (multipleSelectionPage: number) => void;
50
+ setMultipleSelectionSearch: (multipleSelectionSearch: string) => void;
73
51
  getOptions(): any[];
74
52
  /**
75
53
  * Renders options - based on user's input. It will try to match input text with available options.
76
54
  */
77
- renderOptions(params: RenderOptionsParams): JSX.Element;
55
+ private renderOptions;
78
56
  /**
79
57
  * Once added, items can also be removed by clicking on the ✕ icon. This is the method that is responsible for
80
58
  * rendering selected items (we are using already existing "Chips" component).
81
- * @returns {*}
82
59
  */
83
- renderMultipleSelection(): JSX.Element;
60
+ renderMultipleSelection(): JSX.Element | null;
84
61
  render(): JSX.Element;
85
62
  }
86
63
  export {};
@@ -7,9 +7,9 @@ import _inherits from "@babel/runtime/helpers/inherits";
7
7
  import _createSuper from "@babel/runtime/helpers/createSuper";
8
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
9
  import _objectSpread from "@babel/runtime/helpers/objectSpread2";
10
- var _excluded = ["options", "allowFreeInput", "useSimpleValues", "unique", "value", "onChange", "valueProp", "textProp", "onInput", "validation", "useMultipleSelectionList", "description"],
10
+ var _excluded = ["unique", "value", "onChange", "onInput", "validation", "useMultipleSelectionList", "description"],
11
11
  _excluded2 = ["getInputProps", "openMenu"];
12
- import * as React from "react";
12
+ import React from "react";
13
13
  import Downshift from "downshift";
14
14
  import MaterialSpinner from "react-spinner-material";
15
15
  import { Input } from "../Input";
@@ -302,7 +302,6 @@ export var MultiAutoComplete = /*#__PURE__*/function (_React$Component) {
302
302
  /**
303
303
  * Once added, items can also be removed by clicking on the ✕ icon. This is the method that is responsible for
304
304
  * rendering selected items (we are using already existing "Chips" component).
305
- * @returns {*}
306
305
  */
307
306
 
308
307
  }, {
@@ -387,7 +386,10 @@ export var MultiAutoComplete = /*#__PURE__*/function (_React$Component) {
387
386
  var newValue = _toConsumableArray(value);
388
387
 
389
388
  newValue.splice(e.target.value - 1, 0, newValue.splice(item.index, 1)[0]);
390
- onChange(newValue);
389
+
390
+ if (onChange) {
391
+ onChange(newValue);
392
+ }
391
393
  }
392
394
 
393
395
  _this4.setState({
@@ -452,9 +454,11 @@ export var MultiAutoComplete = /*#__PURE__*/function (_React$Component) {
452
454
  key: "".concat(getOptionValue(item, _this4.props), "-").concat(index),
453
455
  trailingIcon: /*#__PURE__*/React.createElement(BaselineCloseIcon, null),
454
456
  onRemove: function onRemove() {
455
- if (onChange) {
456
- onChange([].concat(_toConsumableArray(value.slice(0, index)), _toConsumableArray(value.slice(index + 1))));
457
+ if (!onChange) {
458
+ return;
457
459
  }
460
+
461
+ onChange([].concat(_toConsumableArray(value.slice(0, index)), _toConsumableArray(value.slice(index + 1))));
458
462
  }
459
463
  });
460
464
  }));
@@ -466,18 +470,14 @@ export var MultiAutoComplete = /*#__PURE__*/function (_React$Component) {
466
470
 
467
471
  var props = this.props,
468
472
  _this$props3 = this.props,
469
- rawOptions = _this$props3.options,
470
- allowFreeInput = _this$props3.allowFreeInput,
471
- useSimpleValues = _this$props3.useSimpleValues,
472
473
  unique = _this$props3.unique,
473
474
  value = _this$props3.value,
474
475
  _onChange = _this$props3.onChange,
475
- valueProp = _this$props3.valueProp,
476
- textProp = _this$props3.textProp,
477
476
  onInput = _this$props3.onInput,
478
477
  _this$props3$validati = _this$props3.validation,
479
478
  validation = _this$props3$validati === void 0 ? {
480
- isValid: null
479
+ isValid: null,
480
+ message: null
481
481
  } : _this$props3$validati,
482
482
  useMultipleSelectionList = _this$props3.useMultipleSelectionList,
483
483
  description = _this$props3.description,
@@ -487,7 +487,7 @@ export var MultiAutoComplete = /*#__PURE__*/function (_React$Component) {
487
487
  return /*#__PURE__*/React.createElement("div", {
488
488
  className: classNames(autoCompleteStyle, props.className)
489
489
  }, /*#__PURE__*/React.createElement(Downshift, {
490
- defaultSelectedItem: null // @ts-ignore
490
+ defaultSelectedItem: null // @ts-ignore there is no className on Downshift
491
491
  ,
492
492
  className: autoCompleteStyle,
493
493
  itemToString: function itemToString(item) {