@transferwise/components 46.45.0 → 46.46.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 (1030) hide show
  1. package/build/accordion/Accordion.js +40 -0
  2. package/build/accordion/Accordion.js.map +1 -0
  3. package/build/accordion/Accordion.mjs +38 -0
  4. package/build/accordion/Accordion.mjs.map +1 -0
  5. package/build/accordion/AccordionItem/AccordionItem.js +70 -0
  6. package/build/accordion/AccordionItem/AccordionItem.js.map +1 -0
  7. package/build/accordion/AccordionItem/AccordionItem.mjs +64 -0
  8. package/build/accordion/AccordionItem/AccordionItem.mjs.map +1 -0
  9. package/build/actionButton/ActionButton.js +31 -0
  10. package/build/actionButton/ActionButton.js.map +1 -0
  11. package/build/actionButton/ActionButton.mjs +25 -0
  12. package/build/actionButton/ActionButton.mjs.map +1 -0
  13. package/build/actionOption/ActionOption.js +61 -0
  14. package/build/actionOption/ActionOption.js.map +1 -0
  15. package/build/actionOption/ActionOption.mjs +55 -0
  16. package/build/actionOption/ActionOption.mjs.map +1 -0
  17. package/build/alert/Alert.js +159 -0
  18. package/build/alert/Alert.js.map +1 -0
  19. package/build/alert/Alert.mjs +151 -0
  20. package/build/alert/Alert.mjs.map +1 -0
  21. package/build/alert/inlineMarkdown/InlineMarkdown.js +18 -0
  22. package/build/alert/inlineMarkdown/InlineMarkdown.js.map +1 -0
  23. package/build/alert/inlineMarkdown/InlineMarkdown.mjs +16 -0
  24. package/build/alert/inlineMarkdown/InlineMarkdown.mjs.map +1 -0
  25. package/build/avatar/Avatar.js +54 -0
  26. package/build/avatar/Avatar.js.map +1 -0
  27. package/build/avatar/Avatar.mjs +48 -0
  28. package/build/avatar/Avatar.mjs.map +1 -0
  29. package/build/avatar/avatarTypes.js +11 -0
  30. package/build/avatar/avatarTypes.js.map +1 -0
  31. package/build/avatar/avatarTypes.mjs +11 -0
  32. package/build/avatar/avatarTypes.mjs.map +1 -0
  33. package/build/avatar/colors/colors.js +31 -0
  34. package/build/avatar/colors/colors.js.map +1 -0
  35. package/build/avatar/colors/colors.mjs +29 -0
  36. package/build/avatar/colors/colors.mjs.map +1 -0
  37. package/build/avatarWrapper/AvatarWrapper.js +120 -0
  38. package/build/avatarWrapper/AvatarWrapper.js.map +1 -0
  39. package/build/avatarWrapper/AvatarWrapper.mjs +118 -0
  40. package/build/avatarWrapper/AvatarWrapper.mjs.map +1 -0
  41. package/build/avatarWrapper/index.js +8 -0
  42. package/build/avatarWrapper/index.js.map +1 -0
  43. package/build/avatarWrapper/index.mjs +6 -0
  44. package/build/avatarWrapper/index.mjs.map +1 -0
  45. package/build/badge/Badge.js +36 -0
  46. package/build/badge/Badge.js.map +1 -0
  47. package/build/badge/Badge.mjs +30 -0
  48. package/build/badge/Badge.mjs.map +1 -0
  49. package/build/body/Body.js +31 -0
  50. package/build/body/Body.js.map +1 -0
  51. package/build/body/Body.mjs +25 -0
  52. package/build/body/Body.mjs.map +1 -0
  53. package/build/button/Button.js +86 -0
  54. package/build/button/Button.js.map +1 -0
  55. package/build/button/Button.messages.js +12 -0
  56. package/build/button/Button.messages.js.map +1 -0
  57. package/build/button/Button.messages.mjs +10 -0
  58. package/build/button/Button.messages.mjs.map +1 -0
  59. package/build/button/Button.mjs +80 -0
  60. package/build/button/Button.mjs.map +1 -0
  61. package/build/button/classMap.js +18 -0
  62. package/build/button/classMap.js.map +1 -0
  63. package/build/button/classMap.mjs +15 -0
  64. package/build/button/classMap.mjs.map +1 -0
  65. package/build/button/legacyUtils/legacyUtils.js +54 -0
  66. package/build/button/legacyUtils/legacyUtils.js.map +1 -0
  67. package/build/button/legacyUtils/legacyUtils.mjs +50 -0
  68. package/build/button/legacyUtils/legacyUtils.mjs.map +1 -0
  69. package/build/card/Card.js +65 -0
  70. package/build/card/Card.js.map +1 -0
  71. package/build/card/Card.mjs +59 -0
  72. package/build/card/Card.mjs.map +1 -0
  73. package/build/carousel/Carousel.js +283 -0
  74. package/build/carousel/Carousel.js.map +1 -0
  75. package/build/carousel/Carousel.mjs +277 -0
  76. package/build/carousel/Carousel.mjs.map +1 -0
  77. package/build/checkbox/Checkbox.js +64 -0
  78. package/build/checkbox/Checkbox.js.map +1 -0
  79. package/build/checkbox/Checkbox.mjs +58 -0
  80. package/build/checkbox/Checkbox.mjs.map +1 -0
  81. package/build/checkboxButton/CheckboxButton.js +40 -0
  82. package/build/checkboxButton/CheckboxButton.js.map +1 -0
  83. package/build/checkboxButton/CheckboxButton.mjs +34 -0
  84. package/build/checkboxButton/CheckboxButton.mjs.map +1 -0
  85. package/build/checkboxOption/CheckboxOption.js +27 -0
  86. package/build/checkboxOption/CheckboxOption.js.map +1 -0
  87. package/build/checkboxOption/CheckboxOption.mjs +25 -0
  88. package/build/checkboxOption/CheckboxOption.mjs.map +1 -0
  89. package/build/chevron/Chevron.js +60 -0
  90. package/build/chevron/Chevron.js.map +1 -0
  91. package/build/chevron/Chevron.mjs +54 -0
  92. package/build/chevron/Chevron.mjs.map +1 -0
  93. package/build/chips/Chip.js +71 -0
  94. package/build/chips/Chip.js.map +1 -0
  95. package/build/chips/Chip.mjs +65 -0
  96. package/build/chips/Chip.mjs.map +1 -0
  97. package/build/chips/Chips.js +62 -0
  98. package/build/chips/Chips.js.map +1 -0
  99. package/build/chips/Chips.messages.js +12 -0
  100. package/build/chips/Chips.messages.js.map +1 -0
  101. package/build/chips/Chips.messages.mjs +10 -0
  102. package/build/chips/Chips.messages.mjs.map +1 -0
  103. package/build/chips/Chips.mjs +56 -0
  104. package/build/chips/Chips.mjs.map +1 -0
  105. package/build/circularButton/CircularButton.js +46 -0
  106. package/build/circularButton/CircularButton.js.map +1 -0
  107. package/build/circularButton/CircularButton.mjs +40 -0
  108. package/build/circularButton/CircularButton.mjs.map +1 -0
  109. package/build/common/DOMOperations/DOMOperations.js +24 -0
  110. package/build/common/DOMOperations/DOMOperations.js.map +1 -0
  111. package/build/common/DOMOperations/DOMOperations.mjs +21 -0
  112. package/build/common/DOMOperations/DOMOperations.mjs.map +1 -0
  113. package/build/common/Option/Option.js +71 -0
  114. package/build/common/Option/Option.js.map +1 -0
  115. package/build/common/Option/Option.mjs +65 -0
  116. package/build/common/Option/Option.mjs.map +1 -0
  117. package/build/common/RadioButton/RadioButton.js +46 -0
  118. package/build/common/RadioButton/RadioButton.js.map +1 -0
  119. package/build/common/RadioButton/RadioButton.mjs +40 -0
  120. package/build/common/RadioButton/RadioButton.mjs.map +1 -0
  121. package/build/common/action/Action.js +37 -0
  122. package/build/common/action/Action.js.map +1 -0
  123. package/build/common/action/Action.mjs +31 -0
  124. package/build/common/action/Action.mjs.map +1 -0
  125. package/build/common/bottomSheet/BottomSheet.js +194 -0
  126. package/build/common/bottomSheet/BottomSheet.js.map +1 -0
  127. package/build/common/bottomSheet/BottomSheet.mjs +188 -0
  128. package/build/common/bottomSheet/BottomSheet.mjs.map +1 -0
  129. package/build/common/card/Card.js +49 -0
  130. package/build/common/card/Card.js.map +1 -0
  131. package/build/common/card/Card.mjs +43 -0
  132. package/build/common/card/Card.mjs.map +1 -0
  133. package/build/common/closeButton/CloseButton.js +46 -0
  134. package/build/common/closeButton/CloseButton.js.map +1 -0
  135. package/build/common/closeButton/CloseButton.messages.js +12 -0
  136. package/build/common/closeButton/CloseButton.messages.js.map +1 -0
  137. package/build/common/closeButton/CloseButton.messages.mjs +10 -0
  138. package/build/common/closeButton/CloseButton.messages.mjs.map +1 -0
  139. package/build/common/closeButton/CloseButton.mjs +40 -0
  140. package/build/common/closeButton/CloseButton.mjs.map +1 -0
  141. package/build/common/dateUtils/getDayNames/getDayNames.js +18 -0
  142. package/build/common/dateUtils/getDayNames/getDayNames.js.map +1 -0
  143. package/build/common/dateUtils/getDayNames/getDayNames.mjs +16 -0
  144. package/build/common/dateUtils/getDayNames/getDayNames.mjs.map +1 -0
  145. package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.js +8 -0
  146. package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.js.map +1 -0
  147. package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.mjs +5 -0
  148. package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.mjs.map +1 -0
  149. package/build/common/dateUtils/getMonthNames/getMonthNames.js +19 -0
  150. package/build/common/dateUtils/getMonthNames/getMonthNames.js.map +1 -0
  151. package/build/common/dateUtils/getMonthNames/getMonthNames.mjs +17 -0
  152. package/build/common/dateUtils/getMonthNames/getMonthNames.mjs.map +1 -0
  153. package/build/common/dateUtils/isDateValid/isDateValid.js +17 -0
  154. package/build/common/dateUtils/isDateValid/isDateValid.js.map +1 -0
  155. package/build/common/dateUtils/isDateValid/isDateValid.mjs +14 -0
  156. package/build/common/dateUtils/isDateValid/isDateValid.mjs.map +1 -0
  157. package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.js +8 -0
  158. package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.js.map +1 -0
  159. package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.mjs +6 -0
  160. package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.mjs.map +1 -0
  161. package/build/common/dateUtils/isWithinRange/isWithinRange.js +8 -0
  162. package/build/common/dateUtils/isWithinRange/isWithinRange.js.map +1 -0
  163. package/build/common/dateUtils/isWithinRange/isWithinRange.mjs +6 -0
  164. package/build/common/dateUtils/isWithinRange/isWithinRange.mjs.map +1 -0
  165. package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.js +15 -0
  166. package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.js.map +1 -0
  167. package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.mjs +13 -0
  168. package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.mjs.map +1 -0
  169. package/build/common/deviceDetection/deviceDetection.js +11 -0
  170. package/build/common/deviceDetection/deviceDetection.js.map +1 -0
  171. package/build/common/deviceDetection/deviceDetection.mjs +9 -0
  172. package/build/common/deviceDetection/deviceDetection.mjs.map +1 -0
  173. package/build/common/direction.js +9 -0
  174. package/build/common/direction.js.map +1 -0
  175. package/build/common/direction.mjs +9 -0
  176. package/build/common/direction.mjs.map +1 -0
  177. package/build/common/domHelpers/documentIosClick.js +39 -0
  178. package/build/common/domHelpers/documentIosClick.js.map +1 -0
  179. package/build/common/domHelpers/documentIosClick.mjs +33 -0
  180. package/build/common/domHelpers/documentIosClick.mjs.map +1 -0
  181. package/build/common/fileType.js +10 -0
  182. package/build/common/fileType.js.map +1 -0
  183. package/build/common/fileType.mjs +10 -0
  184. package/build/common/fileType.mjs.map +1 -0
  185. package/build/common/flowHeader/FlowHeader.js +53 -0
  186. package/build/common/flowHeader/FlowHeader.js.map +1 -0
  187. package/build/common/flowHeader/FlowHeader.mjs +28 -0
  188. package/build/common/flowHeader/FlowHeader.mjs.map +1 -0
  189. package/build/common/focusBoundary/FocusBoundary.js +28 -0
  190. package/build/common/focusBoundary/FocusBoundary.js.map +1 -0
  191. package/build/common/focusBoundary/FocusBoundary.mjs +26 -0
  192. package/build/common/focusBoundary/FocusBoundary.mjs.map +1 -0
  193. package/build/common/historyNavigator/historyNavigator.js +39 -0
  194. package/build/common/historyNavigator/historyNavigator.js.map +1 -0
  195. package/build/common/historyNavigator/historyNavigator.mjs +37 -0
  196. package/build/common/historyNavigator/historyNavigator.mjs.map +1 -0
  197. package/build/common/hooks/useConditionalListener/useConditionalListener.js +25 -0
  198. package/build/common/hooks/useConditionalListener/useConditionalListener.js.map +1 -0
  199. package/build/common/hooks/useConditionalListener/useConditionalListener.mjs +23 -0
  200. package/build/common/hooks/useConditionalListener/useConditionalListener.mjs.map +1 -0
  201. package/build/common/hooks/useDirection/useDirection.js +15 -0
  202. package/build/common/hooks/useDirection/useDirection.js.map +1 -0
  203. package/build/common/hooks/useDirection/useDirection.mjs +13 -0
  204. package/build/common/hooks/useDirection/useDirection.mjs.map +1 -0
  205. package/build/common/hooks/useEffectEvent.js +22 -0
  206. package/build/common/hooks/useEffectEvent.js.map +1 -0
  207. package/build/common/hooks/useEffectEvent.mjs +20 -0
  208. package/build/common/hooks/useEffectEvent.mjs.map +1 -0
  209. package/build/common/hooks/useHasIntersected/useHasIntersected.js +64 -0
  210. package/build/common/hooks/useHasIntersected/useHasIntersected.js.map +1 -0
  211. package/build/common/hooks/useHasIntersected/useHasIntersected.mjs +62 -0
  212. package/build/common/hooks/useHasIntersected/useHasIntersected.mjs.map +1 -0
  213. package/build/common/hooks/useLayout/useLayout.js +26 -0
  214. package/build/common/hooks/useLayout/useLayout.js.map +1 -0
  215. package/build/common/hooks/useLayout/useLayout.mjs +24 -0
  216. package/build/common/hooks/useLayout/useLayout.mjs.map +1 -0
  217. package/build/common/hooks/useMedia.js +16 -0
  218. package/build/common/hooks/useMedia.js.map +1 -0
  219. package/build/common/hooks/useMedia.mjs +14 -0
  220. package/build/common/hooks/useMedia.mjs.map +1 -0
  221. package/build/common/hooks/useResizeObserver.js +25 -0
  222. package/build/common/hooks/useResizeObserver.js.map +1 -0
  223. package/build/common/hooks/useResizeObserver.mjs +23 -0
  224. package/build/common/hooks/useResizeObserver.mjs.map +1 -0
  225. package/build/common/hooks/useScreenSize.js +10 -0
  226. package/build/common/hooks/useScreenSize.js.map +1 -0
  227. package/build/common/hooks/useScreenSize.mjs +8 -0
  228. package/build/common/hooks/useScreenSize.mjs.map +1 -0
  229. package/build/common/hooks/useVirtualKeyboard.js +26 -0
  230. package/build/common/hooks/useVirtualKeyboard.js.map +1 -0
  231. package/build/common/hooks/useVirtualKeyboard.mjs +24 -0
  232. package/build/common/hooks/useVirtualKeyboard.mjs.map +1 -0
  233. package/build/common/locale/index.js +85 -0
  234. package/build/common/locale/index.js.map +1 -0
  235. package/build/common/locale/index.mjs +76 -0
  236. package/build/common/locale/index.mjs.map +1 -0
  237. package/build/common/panel/Panel.js +133 -0
  238. package/build/common/panel/Panel.js.map +1 -0
  239. package/build/common/panel/Panel.mjs +127 -0
  240. package/build/common/panel/Panel.mjs.map +1 -0
  241. package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.js +21 -0
  242. package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.js.map +1 -0
  243. package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.mjs +19 -0
  244. package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.mjs.map +1 -0
  245. package/build/common/preventScroll/PreventScroll.js +11 -0
  246. package/build/common/preventScroll/PreventScroll.js.map +1 -0
  247. package/build/common/preventScroll/PreventScroll.mjs +9 -0
  248. package/build/common/preventScroll/PreventScroll.mjs.map +1 -0
  249. package/build/common/propsValues/breakpoint.js +12 -0
  250. package/build/common/propsValues/breakpoint.js.map +1 -0
  251. package/build/common/propsValues/breakpoint.mjs +12 -0
  252. package/build/common/propsValues/breakpoint.mjs.map +1 -0
  253. package/build/common/propsValues/control.js +15 -0
  254. package/build/common/propsValues/control.js.map +1 -0
  255. package/build/common/propsValues/control.mjs +15 -0
  256. package/build/common/propsValues/control.mjs.map +1 -0
  257. package/build/common/propsValues/dateMode.js +8 -0
  258. package/build/common/propsValues/dateMode.js.map +1 -0
  259. package/build/common/propsValues/dateMode.mjs +8 -0
  260. package/build/common/propsValues/dateMode.mjs.map +1 -0
  261. package/build/common/propsValues/layouts.js +13 -0
  262. package/build/common/propsValues/layouts.js.map +1 -0
  263. package/build/common/propsValues/layouts.mjs +13 -0
  264. package/build/common/propsValues/layouts.mjs.map +1 -0
  265. package/build/common/propsValues/markdownNodeType.js +22 -0
  266. package/build/common/propsValues/markdownNodeType.js.map +1 -0
  267. package/build/common/propsValues/markdownNodeType.mjs +22 -0
  268. package/build/common/propsValues/markdownNodeType.mjs.map +1 -0
  269. package/build/common/propsValues/monthFormat.js +8 -0
  270. package/build/common/propsValues/monthFormat.js.map +1 -0
  271. package/build/common/propsValues/monthFormat.mjs +8 -0
  272. package/build/common/propsValues/monthFormat.mjs.map +1 -0
  273. package/build/common/propsValues/position.js +15 -0
  274. package/build/common/propsValues/position.js.map +1 -0
  275. package/build/common/propsValues/position.mjs +15 -0
  276. package/build/common/propsValues/position.mjs.map +1 -0
  277. package/build/common/propsValues/profileType.js +8 -0
  278. package/build/common/propsValues/profileType.js.map +1 -0
  279. package/build/common/propsValues/profileType.mjs +8 -0
  280. package/build/common/propsValues/profileType.mjs.map +1 -0
  281. package/build/common/propsValues/scroll.js +8 -0
  282. package/build/common/propsValues/scroll.js.map +1 -0
  283. package/build/common/propsValues/scroll.mjs +8 -0
  284. package/build/common/propsValues/scroll.mjs.map +1 -0
  285. package/build/common/propsValues/sentiment.js +23 -0
  286. package/build/common/propsValues/sentiment.js.map +1 -0
  287. package/build/common/propsValues/sentiment.mjs +23 -0
  288. package/build/common/propsValues/sentiment.mjs.map +1 -0
  289. package/build/common/propsValues/size.js +11 -0
  290. package/build/common/propsValues/size.js.map +1 -0
  291. package/build/common/propsValues/size.mjs +11 -0
  292. package/build/common/propsValues/size.mjs.map +1 -0
  293. package/build/common/propsValues/status.js +13 -0
  294. package/build/common/propsValues/status.js.map +1 -0
  295. package/build/common/propsValues/status.mjs +13 -0
  296. package/build/common/propsValues/status.mjs.map +1 -0
  297. package/build/common/propsValues/type.js +17 -0
  298. package/build/common/propsValues/type.js.map +1 -0
  299. package/build/common/propsValues/type.mjs +17 -0
  300. package/build/common/propsValues/type.mjs.map +1 -0
  301. package/build/common/propsValues/typography.js +25 -0
  302. package/build/common/propsValues/typography.js.map +1 -0
  303. package/build/common/propsValues/typography.mjs +25 -0
  304. package/build/common/propsValues/typography.mjs.map +1 -0
  305. package/build/common/propsValues/variant.js +8 -0
  306. package/build/common/propsValues/variant.js.map +1 -0
  307. package/build/common/propsValues/variant.mjs +8 -0
  308. package/build/common/propsValues/variant.mjs.map +1 -0
  309. package/build/common/propsValues/width.js +8 -0
  310. package/build/common/propsValues/width.js.map +1 -0
  311. package/build/common/propsValues/width.mjs +8 -0
  312. package/build/common/propsValues/width.mjs.map +1 -0
  313. package/build/common/responsivePanel/ResponsivePanel.js +45 -0
  314. package/build/common/responsivePanel/ResponsivePanel.js.map +1 -0
  315. package/build/common/responsivePanel/ResponsivePanel.mjs +43 -0
  316. package/build/common/responsivePanel/ResponsivePanel.mjs.map +1 -0
  317. package/build/common/textFormat/formatWithPattern/formatWithPattern.js +27 -0
  318. package/build/common/textFormat/formatWithPattern/formatWithPattern.js.map +1 -0
  319. package/build/common/textFormat/formatWithPattern/formatWithPattern.mjs +25 -0
  320. package/build/common/textFormat/formatWithPattern/formatWithPattern.mjs.map +1 -0
  321. package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.js +8 -0
  322. package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.js.map +1 -0
  323. package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.mjs +6 -0
  324. package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.mjs.map +1 -0
  325. package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.js +30 -0
  326. package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.js.map +1 -0
  327. package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.mjs +28 -0
  328. package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.mjs.map +1 -0
  329. package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.js +32 -0
  330. package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.js.map +1 -0
  331. package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.mjs +29 -0
  332. package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.mjs.map +1 -0
  333. package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.js +18 -0
  334. package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.js.map +1 -0
  335. package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.mjs +16 -0
  336. package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.mjs.map +1 -0
  337. package/build/common/textFormat/unformatWithPattern/unformatWithPattern.js +14 -0
  338. package/build/common/textFormat/unformatWithPattern/unformatWithPattern.js.map +1 -0
  339. package/build/common/textFormat/unformatWithPattern/unformatWithPattern.mjs +12 -0
  340. package/build/common/textFormat/unformatWithPattern/unformatWithPattern.mjs.map +1 -0
  341. package/build/common/theme.js +13 -0
  342. package/build/common/theme.js.map +1 -0
  343. package/build/common/theme.mjs +13 -0
  344. package/build/common/theme.mjs.map +1 -0
  345. package/build/criticalBanner/CriticalCommsBanner.js +77 -0
  346. package/build/criticalBanner/CriticalCommsBanner.js.map +1 -0
  347. package/build/criticalBanner/CriticalCommsBanner.mjs +71 -0
  348. package/build/criticalBanner/CriticalCommsBanner.mjs.map +1 -0
  349. package/build/dateInput/DateInput.js +329 -0
  350. package/build/dateInput/DateInput.js.map +1 -0
  351. package/build/dateInput/DateInput.messages.js +24 -0
  352. package/build/dateInput/DateInput.messages.js.map +1 -0
  353. package/build/dateInput/DateInput.messages.mjs +22 -0
  354. package/build/dateInput/DateInput.messages.mjs.map +1 -0
  355. package/build/dateInput/DateInput.mjs +323 -0
  356. package/build/dateInput/DateInput.mjs.map +1 -0
  357. package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.js +9 -0
  358. package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.js.map +1 -0
  359. package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.mjs +7 -0
  360. package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.mjs.map +1 -0
  361. package/build/dateLookup/DateLookup.js +339 -0
  362. package/build/dateLookup/DateLookup.js.map +1 -0
  363. package/build/dateLookup/DateLookup.messages.js +33 -0
  364. package/build/dateLookup/DateLookup.messages.js.map +1 -0
  365. package/build/dateLookup/DateLookup.messages.mjs +31 -0
  366. package/build/dateLookup/DateLookup.messages.mjs.map +1 -0
  367. package/build/dateLookup/DateLookup.mjs +333 -0
  368. package/build/dateLookup/DateLookup.mjs.map +1 -0
  369. package/build/dateLookup/dateHeader/DateHeader.js +73 -0
  370. package/build/dateLookup/dateHeader/DateHeader.js.map +1 -0
  371. package/build/dateLookup/dateHeader/DateHeader.mjs +67 -0
  372. package/build/dateLookup/dateHeader/DateHeader.mjs.map +1 -0
  373. package/build/dateLookup/dateTrigger/DateTrigger.js +70 -0
  374. package/build/dateLookup/dateTrigger/DateTrigger.js.map +1 -0
  375. package/build/dateLookup/dateTrigger/DateTrigger.messages.js +12 -0
  376. package/build/dateLookup/dateTrigger/DateTrigger.messages.js.map +1 -0
  377. package/build/dateLookup/dateTrigger/DateTrigger.messages.mjs +10 -0
  378. package/build/dateLookup/dateTrigger/DateTrigger.messages.mjs.map +1 -0
  379. package/build/dateLookup/dateTrigger/DateTrigger.mjs +68 -0
  380. package/build/dateLookup/dateTrigger/DateTrigger.mjs.map +1 -0
  381. package/build/dateLookup/dayCalendar/DayCalendar.js +71 -0
  382. package/build/dateLookup/dayCalendar/DayCalendar.js.map +1 -0
  383. package/build/dateLookup/dayCalendar/DayCalendar.mjs +69 -0
  384. package/build/dateLookup/dayCalendar/DayCalendar.mjs.map +1 -0
  385. package/build/dateLookup/dayCalendar/table/DayCalendarTable.js +150 -0
  386. package/build/dateLookup/dayCalendar/table/DayCalendarTable.js.map +1 -0
  387. package/build/dateLookup/dayCalendar/table/DayCalendarTable.mjs +148 -0
  388. package/build/dateLookup/dayCalendar/table/DayCalendarTable.mjs.map +1 -0
  389. package/build/dateLookup/getFocusableTime/getFocusableTime.js +8 -0
  390. package/build/dateLookup/getFocusableTime/getFocusableTime.js.map +1 -0
  391. package/build/dateLookup/getFocusableTime/getFocusableTime.mjs +6 -0
  392. package/build/dateLookup/getFocusableTime/getFocusableTime.mjs.map +1 -0
  393. package/build/dateLookup/getStartOfDay/getStartOfDay.js +15 -0
  394. package/build/dateLookup/getStartOfDay/getStartOfDay.js.map +1 -0
  395. package/build/dateLookup/getStartOfDay/getStartOfDay.mjs +13 -0
  396. package/build/dateLookup/getStartOfDay/getStartOfDay.mjs.map +1 -0
  397. package/build/dateLookup/monthCalendar/MonthCalendar.js +64 -0
  398. package/build/dateLookup/monthCalendar/MonthCalendar.js.map +1 -0
  399. package/build/dateLookup/monthCalendar/MonthCalendar.mjs +62 -0
  400. package/build/dateLookup/monthCalendar/MonthCalendar.mjs.map +1 -0
  401. package/build/dateLookup/monthCalendar/table/MonthCalendarTable.js +83 -0
  402. package/build/dateLookup/monthCalendar/table/MonthCalendarTable.js.map +1 -0
  403. package/build/dateLookup/monthCalendar/table/MonthCalendarTable.mjs +81 -0
  404. package/build/dateLookup/monthCalendar/table/MonthCalendarTable.mjs.map +1 -0
  405. package/build/dateLookup/tableLink/TableLink.js +65 -0
  406. package/build/dateLookup/tableLink/TableLink.js.map +1 -0
  407. package/build/dateLookup/tableLink/TableLink.mjs +59 -0
  408. package/build/dateLookup/tableLink/TableLink.mjs.map +1 -0
  409. package/build/dateLookup/yearCalendar/YearCalendar.js +57 -0
  410. package/build/dateLookup/yearCalendar/YearCalendar.js.map +1 -0
  411. package/build/dateLookup/yearCalendar/YearCalendar.mjs +55 -0
  412. package/build/dateLookup/yearCalendar/YearCalendar.mjs.map +1 -0
  413. package/build/dateLookup/yearCalendar/table/YearCalendarTable.js +83 -0
  414. package/build/dateLookup/yearCalendar/table/YearCalendarTable.js.map +1 -0
  415. package/build/dateLookup/yearCalendar/table/YearCalendarTable.mjs +81 -0
  416. package/build/dateLookup/yearCalendar/table/YearCalendarTable.mjs.map +1 -0
  417. package/build/decision/Decision.js +108 -0
  418. package/build/decision/Decision.js.map +1 -0
  419. package/build/decision/Decision.mjs +100 -0
  420. package/build/decision/Decision.mjs.map +1 -0
  421. package/build/definitionList/DefinitionList.js +72 -0
  422. package/build/definitionList/DefinitionList.js.map +1 -0
  423. package/build/definitionList/DefinitionList.mjs +66 -0
  424. package/build/definitionList/DefinitionList.mjs.map +1 -0
  425. package/build/dimmer/Dimmer.js +184 -0
  426. package/build/dimmer/Dimmer.js.map +1 -0
  427. package/build/dimmer/Dimmer.mjs +172 -0
  428. package/build/dimmer/Dimmer.mjs.map +1 -0
  429. package/build/dimmer/dimmerManager/DimmerManager.js +36 -0
  430. package/build/dimmer/dimmerManager/DimmerManager.js.map +1 -0
  431. package/build/dimmer/dimmerManager/DimmerManager.mjs +34 -0
  432. package/build/dimmer/dimmerManager/DimmerManager.mjs.map +1 -0
  433. package/build/display/Display.js +26 -0
  434. package/build/display/Display.js.map +1 -0
  435. package/build/display/Display.mjs +20 -0
  436. package/build/display/Display.mjs.map +1 -0
  437. package/build/drawer/Drawer.js +68 -0
  438. package/build/drawer/Drawer.js.map +1 -0
  439. package/build/drawer/Drawer.mjs +62 -0
  440. package/build/drawer/Drawer.mjs.map +1 -0
  441. package/build/dropFade/DropFade.js +48 -0
  442. package/build/dropFade/DropFade.js.map +1 -0
  443. package/build/dropFade/DropFade.mjs +42 -0
  444. package/build/dropFade/DropFade.mjs.map +1 -0
  445. package/build/emphasis/Emphasis.js +24 -0
  446. package/build/emphasis/Emphasis.js.map +1 -0
  447. package/build/emphasis/Emphasis.mjs +22 -0
  448. package/build/emphasis/Emphasis.mjs.map +1 -0
  449. package/build/emphasis/EmphasisHtmlTransformer.js +39 -0
  450. package/build/emphasis/EmphasisHtmlTransformer.js.map +1 -0
  451. package/build/emphasis/EmphasisHtmlTransformer.mjs +37 -0
  452. package/build/emphasis/EmphasisHtmlTransformer.mjs.map +1 -0
  453. package/build/field/Field.js +63 -0
  454. package/build/field/Field.js.map +1 -0
  455. package/build/field/Field.mjs +57 -0
  456. package/build/field/Field.mjs.map +1 -0
  457. package/build/flowNavigation/FlowNavigation.js +80 -0
  458. package/build/flowNavigation/FlowNavigation.js.map +1 -0
  459. package/build/flowNavigation/FlowNavigation.messages.js +12 -0
  460. package/build/flowNavigation/FlowNavigation.messages.js.map +1 -0
  461. package/build/flowNavigation/FlowNavigation.messages.mjs +10 -0
  462. package/build/flowNavigation/FlowNavigation.messages.mjs.map +1 -0
  463. package/build/flowNavigation/FlowNavigation.mjs +74 -0
  464. package/build/flowNavigation/FlowNavigation.mjs.map +1 -0
  465. package/build/flowNavigation/animatedLabel/AnimatedLabel.js +34 -0
  466. package/build/flowNavigation/animatedLabel/AnimatedLabel.js.map +1 -0
  467. package/build/flowNavigation/animatedLabel/AnimatedLabel.mjs +28 -0
  468. package/build/flowNavigation/animatedLabel/AnimatedLabel.mjs.map +1 -0
  469. package/build/flowNavigation/backButton/BackButton.js +34 -0
  470. package/build/flowNavigation/backButton/BackButton.js.map +1 -0
  471. package/build/flowNavigation/backButton/BackButton.mjs +28 -0
  472. package/build/flowNavigation/backButton/BackButton.mjs.map +1 -0
  473. package/build/header/Header.js +87 -0
  474. package/build/header/Header.js.map +1 -0
  475. package/build/header/Header.mjs +78 -0
  476. package/build/header/Header.mjs.map +1 -0
  477. package/build/i18n/cs.json.js +61 -0
  478. package/build/i18n/cs.json.js.map +1 -0
  479. package/build/i18n/cs.json.mjs +59 -0
  480. package/build/i18n/cs.json.mjs.map +1 -0
  481. package/build/i18n/de.json.js +62 -0
  482. package/build/i18n/de.json.js.map +1 -0
  483. package/build/i18n/de.json.mjs +60 -0
  484. package/build/i18n/de.json.mjs.map +1 -0
  485. package/build/i18n/en.json.js +62 -0
  486. package/build/i18n/en.json.js.map +1 -0
  487. package/build/i18n/en.json.mjs +60 -0
  488. package/build/i18n/en.json.mjs.map +1 -0
  489. package/build/i18n/es.json.js +62 -0
  490. package/build/i18n/es.json.js.map +1 -0
  491. package/build/i18n/es.json.mjs +60 -0
  492. package/build/i18n/es.json.mjs.map +1 -0
  493. package/build/i18n/fr.json.js +62 -0
  494. package/build/i18n/fr.json.js.map +1 -0
  495. package/build/i18n/fr.json.mjs +60 -0
  496. package/build/i18n/fr.json.mjs.map +1 -0
  497. package/build/i18n/hu.json.js +62 -0
  498. package/build/i18n/hu.json.js.map +1 -0
  499. package/build/i18n/hu.json.mjs +60 -0
  500. package/build/i18n/hu.json.mjs.map +1 -0
  501. package/build/i18n/id.json.js +62 -0
  502. package/build/i18n/id.json.js.map +1 -0
  503. package/build/i18n/id.json.mjs +60 -0
  504. package/build/i18n/id.json.mjs.map +1 -0
  505. package/build/i18n/index.js +45 -0
  506. package/build/i18n/index.js.map +1 -0
  507. package/build/i18n/index.mjs +43 -0
  508. package/build/i18n/index.mjs.map +1 -0
  509. package/build/i18n/it.json.js +62 -0
  510. package/build/i18n/it.json.js.map +1 -0
  511. package/build/i18n/it.json.mjs +60 -0
  512. package/build/i18n/it.json.mjs.map +1 -0
  513. package/build/i18n/ja.json.js +62 -0
  514. package/build/i18n/ja.json.js.map +1 -0
  515. package/build/i18n/ja.json.mjs +60 -0
  516. package/build/i18n/ja.json.mjs.map +1 -0
  517. package/build/i18n/pl.json.js +62 -0
  518. package/build/i18n/pl.json.js.map +1 -0
  519. package/build/i18n/pl.json.mjs +60 -0
  520. package/build/i18n/pl.json.mjs.map +1 -0
  521. package/build/i18n/pt.json.js +62 -0
  522. package/build/i18n/pt.json.js.map +1 -0
  523. package/build/i18n/pt.json.mjs +60 -0
  524. package/build/i18n/pt.json.mjs.map +1 -0
  525. package/build/i18n/ro.json.js +62 -0
  526. package/build/i18n/ro.json.js.map +1 -0
  527. package/build/i18n/ro.json.mjs +60 -0
  528. package/build/i18n/ro.json.mjs.map +1 -0
  529. package/build/i18n/ru.json.js +62 -0
  530. package/build/i18n/ru.json.js.map +1 -0
  531. package/build/i18n/ru.json.mjs +60 -0
  532. package/build/i18n/ru.json.mjs.map +1 -0
  533. package/build/i18n/th.json.js +62 -0
  534. package/build/i18n/th.json.js.map +1 -0
  535. package/build/i18n/th.json.mjs +60 -0
  536. package/build/i18n/th.json.mjs.map +1 -0
  537. package/build/i18n/tr.json.js +62 -0
  538. package/build/i18n/tr.json.js.map +1 -0
  539. package/build/i18n/tr.json.mjs +60 -0
  540. package/build/i18n/tr.json.mjs.map +1 -0
  541. package/build/i18n/uk.json.js +61 -0
  542. package/build/i18n/uk.json.js.map +1 -0
  543. package/build/i18n/uk.json.mjs +59 -0
  544. package/build/i18n/uk.json.mjs.map +1 -0
  545. package/build/i18n/zh-CN.json.js +62 -0
  546. package/build/i18n/zh-CN.json.js.map +1 -0
  547. package/build/i18n/zh-CN.json.mjs +60 -0
  548. package/build/i18n/zh-CN.json.mjs.map +1 -0
  549. package/build/i18n/zh-HK.json.js +62 -0
  550. package/build/i18n/zh-HK.json.js.map +1 -0
  551. package/build/i18n/zh-HK.json.mjs +60 -0
  552. package/build/i18n/zh-HK.json.mjs.map +1 -0
  553. package/build/image/Image.js +55 -0
  554. package/build/image/Image.js.map +1 -0
  555. package/build/image/Image.mjs +46 -0
  556. package/build/image/Image.mjs.map +1 -0
  557. package/build/index.js +278 -14434
  558. package/build/index.js.map +1 -1
  559. package/build/index.mjs +118 -14359
  560. package/build/index.mjs.map +1 -1
  561. package/build/info/Info.js +80 -0
  562. package/build/info/Info.js.map +1 -0
  563. package/build/info/Info.messages.js +12 -0
  564. package/build/info/Info.messages.js.map +1 -0
  565. package/build/info/Info.messages.mjs +10 -0
  566. package/build/info/Info.messages.mjs.map +1 -0
  567. package/build/info/Info.mjs +74 -0
  568. package/build/info/Info.mjs.map +1 -0
  569. package/build/info/infoPresentations.js +9 -0
  570. package/build/info/infoPresentations.js.map +1 -0
  571. package/build/info/infoPresentations.mjs +9 -0
  572. package/build/info/infoPresentations.mjs.map +1 -0
  573. package/build/inlineAlert/InlineAlert.js +35 -0
  574. package/build/inlineAlert/InlineAlert.js.map +1 -0
  575. package/build/inlineAlert/InlineAlert.mjs +29 -0
  576. package/build/inlineAlert/InlineAlert.mjs.map +1 -0
  577. package/build/inputWithDisplayFormat/InputWithDisplayFormat.js +15 -0
  578. package/build/inputWithDisplayFormat/InputWithDisplayFormat.js.map +1 -0
  579. package/build/inputWithDisplayFormat/InputWithDisplayFormat.mjs +13 -0
  580. package/build/inputWithDisplayFormat/InputWithDisplayFormat.mjs.map +1 -0
  581. package/build/inputs/Input.js +39 -0
  582. package/build/inputs/Input.js.map +1 -0
  583. package/build/inputs/Input.mjs +33 -0
  584. package/build/inputs/Input.mjs.map +1 -0
  585. package/build/inputs/InputGroup.js +116 -0
  586. package/build/inputs/InputGroup.js.map +1 -0
  587. package/build/inputs/InputGroup.mjs +109 -0
  588. package/build/inputs/InputGroup.mjs.map +1 -0
  589. package/build/inputs/SearchInput.js +38 -0
  590. package/build/inputs/SearchInput.js.map +1 -0
  591. package/build/inputs/SearchInput.mjs +36 -0
  592. package/build/inputs/SearchInput.mjs.map +1 -0
  593. package/build/inputs/SelectInput.js +585 -0
  594. package/build/inputs/SelectInput.js.map +1 -0
  595. package/build/inputs/SelectInput.messages.js +12 -0
  596. package/build/inputs/SelectInput.messages.js.map +1 -0
  597. package/build/inputs/SelectInput.messages.mjs +10 -0
  598. package/build/inputs/SelectInput.messages.mjs.map +1 -0
  599. package/build/inputs/SelectInput.mjs +576 -0
  600. package/build/inputs/SelectInput.mjs.map +1 -0
  601. package/build/inputs/TextArea.js +27 -0
  602. package/build/inputs/TextArea.js.map +1 -0
  603. package/build/inputs/TextArea.mjs +21 -0
  604. package/build/inputs/TextArea.mjs.map +1 -0
  605. package/build/inputs/_BottomSheet.js +115 -0
  606. package/build/inputs/_BottomSheet.js.map +1 -0
  607. package/build/inputs/_BottomSheet.mjs +109 -0
  608. package/build/inputs/_BottomSheet.mjs.map +1 -0
  609. package/build/inputs/_ButtonInput.js +37 -0
  610. package/build/inputs/_ButtonInput.js.map +1 -0
  611. package/build/inputs/_ButtonInput.mjs +31 -0
  612. package/build/inputs/_ButtonInput.mjs.map +1 -0
  613. package/build/inputs/_Popover.js +120 -0
  614. package/build/inputs/_Popover.js.map +1 -0
  615. package/build/inputs/_Popover.mjs +114 -0
  616. package/build/inputs/_Popover.mjs.map +1 -0
  617. package/build/inputs/_common.js +23 -0
  618. package/build/inputs/_common.js.map +1 -0
  619. package/build/inputs/_common.mjs +17 -0
  620. package/build/inputs/_common.mjs.map +1 -0
  621. package/build/inputs/contexts.js +42 -0
  622. package/build/inputs/contexts.js.map +1 -0
  623. package/build/inputs/contexts.mjs +35 -0
  624. package/build/inputs/contexts.mjs.map +1 -0
  625. package/build/instructionsList/InstructionsList.js +66 -0
  626. package/build/instructionsList/InstructionsList.js.map +1 -0
  627. package/build/instructionsList/InstructionsList.mjs +60 -0
  628. package/build/instructionsList/InstructionsList.mjs.map +1 -0
  629. package/build/label/Label.js +25 -0
  630. package/build/label/Label.js.map +1 -0
  631. package/build/label/Label.mjs +19 -0
  632. package/build/label/Label.mjs.map +1 -0
  633. package/build/link/Link.js +42 -0
  634. package/build/link/Link.js.map +1 -0
  635. package/build/link/Link.messages.js +12 -0
  636. package/build/link/Link.messages.js.map +1 -0
  637. package/build/link/Link.messages.mjs +10 -0
  638. package/build/link/Link.messages.mjs.map +1 -0
  639. package/build/link/Link.mjs +36 -0
  640. package/build/link/Link.mjs.map +1 -0
  641. package/build/listItem/ListItem.js +50 -0
  642. package/build/listItem/ListItem.js.map +1 -0
  643. package/build/listItem/ListItem.mjs +44 -0
  644. package/build/listItem/ListItem.mjs.map +1 -0
  645. package/build/loader/Loader.js +68 -0
  646. package/build/loader/Loader.js.map +1 -0
  647. package/build/loader/Loader.mjs +62 -0
  648. package/build/loader/Loader.mjs.map +1 -0
  649. package/build/logo/Logo.js +176 -0
  650. package/build/logo/Logo.js.map +1 -0
  651. package/build/logo/Logo.mjs +168 -0
  652. package/build/logo/Logo.mjs.map +1 -0
  653. package/build/markdown/Markdown.js +75 -0
  654. package/build/markdown/Markdown.js.map +1 -0
  655. package/build/markdown/Markdown.mjs +69 -0
  656. package/build/markdown/Markdown.mjs.map +1 -0
  657. package/build/modal/Modal.js +113 -0
  658. package/build/modal/Modal.js.map +1 -0
  659. package/build/modal/Modal.mjs +107 -0
  660. package/build/modal/Modal.mjs.map +1 -0
  661. package/build/money/Money.js +20 -0
  662. package/build/money/Money.js.map +1 -0
  663. package/build/money/Money.mjs +18 -0
  664. package/build/money/Money.mjs.map +1 -0
  665. package/build/moneyInput/MoneyInput.js +369 -0
  666. package/build/moneyInput/MoneyInput.js.map +1 -0
  667. package/build/moneyInput/MoneyInput.messages.js +12 -0
  668. package/build/moneyInput/MoneyInput.messages.js.map +1 -0
  669. package/build/moneyInput/MoneyInput.messages.mjs +10 -0
  670. package/build/moneyInput/MoneyInput.messages.mjs.map +1 -0
  671. package/build/moneyInput/MoneyInput.mjs +363 -0
  672. package/build/moneyInput/MoneyInput.mjs.map +1 -0
  673. package/build/moneyInput/currencyFormatting.js +70 -0
  674. package/build/moneyInput/currencyFormatting.js.map +1 -0
  675. package/build/moneyInput/currencyFormatting.mjs +64 -0
  676. package/build/moneyInput/currencyFormatting.mjs.map +1 -0
  677. package/build/navigationOption/NavigationOption.js +48 -0
  678. package/build/navigationOption/NavigationOption.js.map +1 -0
  679. package/build/navigationOption/NavigationOption.mjs +42 -0
  680. package/build/navigationOption/NavigationOption.mjs.map +1 -0
  681. package/build/navigationOptionsList/NavigationOptionsList.js +19 -0
  682. package/build/navigationOptionsList/NavigationOptionsList.js.map +1 -0
  683. package/build/navigationOptionsList/NavigationOptionsList.mjs +17 -0
  684. package/build/navigationOptionsList/NavigationOptionsList.mjs.map +1 -0
  685. package/build/nudge/Nudge.js +121 -0
  686. package/build/nudge/Nudge.js.map +1 -0
  687. package/build/nudge/Nudge.mjs +112 -0
  688. package/build/nudge/Nudge.mjs.map +1 -0
  689. package/build/overlayHeader/OverlayHeader.js +40 -0
  690. package/build/overlayHeader/OverlayHeader.js.map +1 -0
  691. package/build/overlayHeader/OverlayHeader.mjs +34 -0
  692. package/build/overlayHeader/OverlayHeader.mjs.map +1 -0
  693. package/build/phoneNumberInput/PhoneNumberInput.js +161 -0
  694. package/build/phoneNumberInput/PhoneNumberInput.js.map +1 -0
  695. package/build/phoneNumberInput/PhoneNumberInput.messages.js +12 -0
  696. package/build/phoneNumberInput/PhoneNumberInput.messages.js.map +1 -0
  697. package/build/phoneNumberInput/PhoneNumberInput.messages.mjs +10 -0
  698. package/build/phoneNumberInput/PhoneNumberInput.messages.mjs.map +1 -0
  699. package/build/phoneNumberInput/PhoneNumberInput.mjs +159 -0
  700. package/build/phoneNumberInput/PhoneNumberInput.mjs.map +1 -0
  701. package/build/phoneNumberInput/data/countries.js +1278 -0
  702. package/build/phoneNumberInput/data/countries.js.map +1 -0
  703. package/build/phoneNumberInput/data/countries.mjs +1276 -0
  704. package/build/phoneNumberInput/data/countries.mjs.map +1 -0
  705. package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.js +7 -0
  706. package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.js.map +1 -0
  707. package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.mjs +5 -0
  708. package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.mjs.map +1 -0
  709. package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.js +19 -0
  710. package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.js.map +1 -0
  711. package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.mjs +17 -0
  712. package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.mjs.map +1 -0
  713. package/build/phoneNumberInput/utils/explodeNumberModel/index.js +21 -0
  714. package/build/phoneNumberInput/utils/explodeNumberModel/index.js.map +1 -0
  715. package/build/phoneNumberInput/utils/explodeNumberModel/index.mjs +19 -0
  716. package/build/phoneNumberInput/utils/explodeNumberModel/index.mjs.map +1 -0
  717. package/build/phoneNumberInput/utils/findCountryByCode/index.js +17 -0
  718. package/build/phoneNumberInput/utils/findCountryByCode/index.js.map +1 -0
  719. package/build/phoneNumberInput/utils/findCountryByCode/index.mjs +15 -0
  720. package/build/phoneNumberInput/utils/findCountryByCode/index.mjs.map +1 -0
  721. package/build/phoneNumberInput/utils/findCountryByPrefix/index.js +17 -0
  722. package/build/phoneNumberInput/utils/findCountryByPrefix/index.js.map +1 -0
  723. package/build/phoneNumberInput/utils/findCountryByPrefix/index.mjs +15 -0
  724. package/build/phoneNumberInput/utils/findCountryByPrefix/index.mjs.map +1 -0
  725. package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.js +12 -0
  726. package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.js.map +1 -0
  727. package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.mjs +10 -0
  728. package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.mjs.map +1 -0
  729. package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.js +11 -0
  730. package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.js.map +1 -0
  731. package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.mjs +9 -0
  732. package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.mjs.map +1 -0
  733. package/build/phoneNumberInput/utils/longestMatchingPrefix/index.js +6 -0
  734. package/build/phoneNumberInput/utils/longestMatchingPrefix/index.js.map +1 -0
  735. package/build/phoneNumberInput/utils/longestMatchingPrefix/index.mjs +4 -0
  736. package/build/phoneNumberInput/utils/longestMatchingPrefix/index.mjs.map +1 -0
  737. package/build/phoneNumberInput/utils/setDefaultPrefix/index.js +22 -0
  738. package/build/phoneNumberInput/utils/setDefaultPrefix/index.js.map +1 -0
  739. package/build/phoneNumberInput/utils/setDefaultPrefix/index.mjs +20 -0
  740. package/build/phoneNumberInput/utils/setDefaultPrefix/index.mjs.map +1 -0
  741. package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.js +8 -0
  742. package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.js.map +1 -0
  743. package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.mjs +6 -0
  744. package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.mjs.map +1 -0
  745. package/build/popover/Popover.js +79 -0
  746. package/build/popover/Popover.js.map +1 -0
  747. package/build/popover/Popover.mjs +73 -0
  748. package/build/popover/Popover.mjs.map +1 -0
  749. package/build/processIndicator/ProcessIndicator.js +120 -0
  750. package/build/processIndicator/ProcessIndicator.js.map +1 -0
  751. package/build/processIndicator/ProcessIndicator.mjs +114 -0
  752. package/build/processIndicator/ProcessIndicator.mjs.map +1 -0
  753. package/build/progress/Progress.js +24 -0
  754. package/build/progress/Progress.js.map +1 -0
  755. package/build/progress/Progress.mjs +18 -0
  756. package/build/progress/Progress.mjs.map +1 -0
  757. package/build/progressBar/ProgressBar.js +51 -0
  758. package/build/progressBar/ProgressBar.js.map +1 -0
  759. package/build/progressBar/ProgressBar.mjs +45 -0
  760. package/build/progressBar/ProgressBar.mjs.map +1 -0
  761. package/build/promoCard/PromoCard.js +189 -0
  762. package/build/promoCard/PromoCard.js.map +1 -0
  763. package/build/promoCard/PromoCard.mjs +182 -0
  764. package/build/promoCard/PromoCard.mjs.map +1 -0
  765. package/build/promoCard/PromoCardContext.js +33 -0
  766. package/build/promoCard/PromoCardContext.js.map +1 -0
  767. package/build/promoCard/PromoCardContext.mjs +27 -0
  768. package/build/promoCard/PromoCardContext.mjs.map +1 -0
  769. package/build/promoCard/PromoCardGroup.js +80 -0
  770. package/build/promoCard/PromoCardGroup.js.map +1 -0
  771. package/build/promoCard/PromoCardGroup.mjs +73 -0
  772. package/build/promoCard/PromoCardGroup.mjs.map +1 -0
  773. package/build/promoCard/PromoCardIndicator.js +53 -0
  774. package/build/promoCard/PromoCardIndicator.js.map +1 -0
  775. package/build/promoCard/PromoCardIndicator.mjs +47 -0
  776. package/build/promoCard/PromoCardIndicator.mjs.map +1 -0
  777. package/build/provider/Provider.js +53 -0
  778. package/build/provider/Provider.js.map +1 -0
  779. package/build/provider/Provider.mjs +51 -0
  780. package/build/provider/Provider.mjs.map +1 -0
  781. package/build/provider/direction/DirectionProvider.js +20 -0
  782. package/build/provider/direction/DirectionProvider.js.map +1 -0
  783. package/build/provider/direction/DirectionProvider.mjs +17 -0
  784. package/build/provider/direction/DirectionProvider.mjs.map +1 -0
  785. package/build/provider/language/LanguageProvider.js +20 -0
  786. package/build/provider/language/LanguageProvider.js.map +1 -0
  787. package/build/provider/language/LanguageProvider.mjs +17 -0
  788. package/build/provider/language/LanguageProvider.mjs.map +1 -0
  789. package/build/radio/Radio.js +63 -0
  790. package/build/radio/Radio.js.map +1 -0
  791. package/build/radio/Radio.mjs +57 -0
  792. package/build/radio/Radio.mjs.map +1 -0
  793. package/build/radioGroup/RadioGroup.js +40 -0
  794. package/build/radioGroup/RadioGroup.js.map +1 -0
  795. package/build/radioGroup/RadioGroup.mjs +38 -0
  796. package/build/radioGroup/RadioGroup.mjs.map +1 -0
  797. package/build/radioOption/RadioOption.js +46 -0
  798. package/build/radioOption/RadioOption.js.map +1 -0
  799. package/build/radioOption/RadioOption.mjs +44 -0
  800. package/build/radioOption/RadioOption.mjs.map +1 -0
  801. package/build/section/Section.js +24 -0
  802. package/build/section/Section.js.map +1 -0
  803. package/build/section/Section.mjs +18 -0
  804. package/build/section/Section.mjs.map +1 -0
  805. package/build/segmentedControl/SegmentedControl.js +115 -0
  806. package/build/segmentedControl/SegmentedControl.js.map +1 -0
  807. package/build/segmentedControl/SegmentedControl.mjs +109 -0
  808. package/build/segmentedControl/SegmentedControl.mjs.map +1 -0
  809. package/build/select/Select.js +579 -0
  810. package/build/select/Select.js.map +1 -0
  811. package/build/select/Select.messages.js +12 -0
  812. package/build/select/Select.messages.js.map +1 -0
  813. package/build/select/Select.messages.mjs +10 -0
  814. package/build/select/Select.messages.mjs.map +1 -0
  815. package/build/select/Select.mjs +572 -0
  816. package/build/select/Select.mjs.map +1 -0
  817. package/build/select/index.js +8 -0
  818. package/build/select/index.js.map +1 -0
  819. package/build/select/index.mjs +6 -0
  820. package/build/select/index.mjs.map +1 -0
  821. package/build/select/option/Option.js +58 -0
  822. package/build/select/option/Option.js.map +1 -0
  823. package/build/select/option/Option.mjs +52 -0
  824. package/build/select/option/Option.mjs.map +1 -0
  825. package/build/select/option/index.js +8 -0
  826. package/build/select/option/index.js.map +1 -0
  827. package/build/select/option/index.mjs +6 -0
  828. package/build/select/option/index.mjs.map +1 -0
  829. package/build/select/searchBox/SearchBox.js +54 -0
  830. package/build/select/searchBox/SearchBox.js.map +1 -0
  831. package/build/select/searchBox/SearchBox.mjs +48 -0
  832. package/build/select/searchBox/SearchBox.mjs.map +1 -0
  833. package/build/slidingPanel/SlidingPanel.js +51 -0
  834. package/build/slidingPanel/SlidingPanel.js.map +1 -0
  835. package/build/slidingPanel/SlidingPanel.mjs +42 -0
  836. package/build/slidingPanel/SlidingPanel.mjs.map +1 -0
  837. package/build/snackbar/Snackbar.js +128 -0
  838. package/build/snackbar/Snackbar.js.map +1 -0
  839. package/build/snackbar/Snackbar.mjs +123 -0
  840. package/build/snackbar/Snackbar.mjs.map +1 -0
  841. package/build/snackbar/SnackbarContext.js +12 -0
  842. package/build/snackbar/SnackbarContext.js.map +1 -0
  843. package/build/snackbar/SnackbarContext.mjs +9 -0
  844. package/build/snackbar/SnackbarContext.mjs.map +1 -0
  845. package/build/snackbar/SnackbarProvider.js +48 -0
  846. package/build/snackbar/SnackbarProvider.js.map +1 -0
  847. package/build/snackbar/SnackbarProvider.mjs +46 -0
  848. package/build/snackbar/SnackbarProvider.mjs.map +1 -0
  849. package/build/snackbar/useSnackbar.js +14 -0
  850. package/build/snackbar/useSnackbar.js.map +1 -0
  851. package/build/snackbar/useSnackbar.mjs +12 -0
  852. package/build/snackbar/useSnackbar.mjs.map +1 -0
  853. package/build/statusIcon/StatusIcon.js +37 -0
  854. package/build/statusIcon/StatusIcon.js.map +1 -0
  855. package/build/statusIcon/StatusIcon.mjs +31 -0
  856. package/build/statusIcon/StatusIcon.mjs.map +1 -0
  857. package/build/stepper/Stepper.js +80 -0
  858. package/build/stepper/Stepper.js.map +1 -0
  859. package/build/stepper/Stepper.mjs +74 -0
  860. package/build/stepper/Stepper.mjs.map +1 -0
  861. package/build/stepper/deviceDetection.js +22 -0
  862. package/build/stepper/deviceDetection.js.map +1 -0
  863. package/build/stepper/deviceDetection.mjs +20 -0
  864. package/build/stepper/deviceDetection.mjs.map +1 -0
  865. package/build/sticky/Sticky.js +24 -0
  866. package/build/sticky/Sticky.js.map +1 -0
  867. package/build/sticky/Sticky.mjs +22 -0
  868. package/build/sticky/Sticky.mjs.map +1 -0
  869. package/build/summary/Summary.js +119 -0
  870. package/build/summary/Summary.js.map +1 -0
  871. package/build/summary/Summary.messages.js +18 -0
  872. package/build/summary/Summary.messages.js.map +1 -0
  873. package/build/summary/Summary.messages.mjs +16 -0
  874. package/build/summary/Summary.messages.mjs.map +1 -0
  875. package/build/summary/Summary.mjs +113 -0
  876. package/build/summary/Summary.mjs.map +1 -0
  877. package/build/switch/Switch.js +82 -0
  878. package/build/switch/Switch.js.map +1 -0
  879. package/build/switch/Switch.mjs +76 -0
  880. package/build/switch/Switch.mjs.map +1 -0
  881. package/build/switchOption/SwitchOption.js +59 -0
  882. package/build/switchOption/SwitchOption.js.map +1 -0
  883. package/build/switchOption/SwitchOption.mjs +57 -0
  884. package/build/switchOption/SwitchOption.mjs.map +1 -0
  885. package/build/tabs/Tab.js +81 -0
  886. package/build/tabs/Tab.js.map +1 -0
  887. package/build/tabs/Tab.mjs +74 -0
  888. package/build/tabs/Tab.mjs.map +1 -0
  889. package/build/tabs/TabList.js +24 -0
  890. package/build/tabs/TabList.js.map +1 -0
  891. package/build/tabs/TabList.mjs +18 -0
  892. package/build/tabs/TabList.mjs.map +1 -0
  893. package/build/tabs/TabPanel.js +35 -0
  894. package/build/tabs/TabPanel.js.map +1 -0
  895. package/build/tabs/TabPanel.mjs +29 -0
  896. package/build/tabs/TabPanel.mjs.map +1 -0
  897. package/build/tabs/Tabs.js +541 -0
  898. package/build/tabs/Tabs.js.map +1 -0
  899. package/build/tabs/Tabs.mjs +533 -0
  900. package/build/tabs/Tabs.mjs.map +1 -0
  901. package/build/tabs/utils.js +50 -0
  902. package/build/tabs/utils.js.map +1 -0
  903. package/build/tabs/utils.mjs +42 -0
  904. package/build/tabs/utils.mjs.map +1 -0
  905. package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.js +15 -0
  906. package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.js.map +1 -0
  907. package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.mjs +13 -0
  908. package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.mjs.map +1 -0
  909. package/build/tile/Tile.js +58 -0
  910. package/build/tile/Tile.js.map +1 -0
  911. package/build/tile/Tile.mjs +52 -0
  912. package/build/tile/Tile.mjs.map +1 -0
  913. package/build/title/Title.js +42 -0
  914. package/build/title/Title.js.map +1 -0
  915. package/build/title/Title.mjs +36 -0
  916. package/build/title/Title.mjs.map +1 -0
  917. package/build/tooltip/Tooltip.js +103 -0
  918. package/build/tooltip/Tooltip.js.map +1 -0
  919. package/build/tooltip/Tooltip.mjs +97 -0
  920. package/build/tooltip/Tooltip.mjs.map +1 -0
  921. package/build/typeahead/Typeahead.js +468 -0
  922. package/build/typeahead/Typeahead.js.map +1 -0
  923. package/build/typeahead/Typeahead.mjs +460 -0
  924. package/build/typeahead/Typeahead.mjs.map +1 -0
  925. package/build/typeahead/typeaheadInput/TypeaheadInput.js +120 -0
  926. package/build/typeahead/typeaheadInput/TypeaheadInput.js.map +1 -0
  927. package/build/typeahead/typeaheadInput/TypeaheadInput.mjs +114 -0
  928. package/build/typeahead/typeaheadInput/TypeaheadInput.mjs.map +1 -0
  929. package/build/typeahead/typeaheadOption/TypeaheadOption.js +49 -0
  930. package/build/typeahead/typeaheadOption/TypeaheadOption.js.map +1 -0
  931. package/build/typeahead/typeaheadOption/TypeaheadOption.mjs +43 -0
  932. package/build/typeahead/typeaheadOption/TypeaheadOption.mjs.map +1 -0
  933. package/build/typeahead/util/highlight.js +21 -0
  934. package/build/typeahead/util/highlight.js.map +1 -0
  935. package/build/typeahead/util/highlight.mjs +19 -0
  936. package/build/typeahead/util/highlight.mjs.map +1 -0
  937. package/build/upload/Upload.js +366 -0
  938. package/build/upload/Upload.js.map +1 -0
  939. package/build/upload/Upload.messages.js +39 -0
  940. package/build/upload/Upload.messages.js.map +1 -0
  941. package/build/upload/Upload.messages.mjs +37 -0
  942. package/build/upload/Upload.messages.mjs.map +1 -0
  943. package/build/upload/Upload.mjs +356 -0
  944. package/build/upload/Upload.mjs.map +1 -0
  945. package/build/upload/steps/completeStep/completeStep.js +65 -0
  946. package/build/upload/steps/completeStep/completeStep.js.map +1 -0
  947. package/build/upload/steps/completeStep/completeStep.mjs +63 -0
  948. package/build/upload/steps/completeStep/completeStep.mjs.map +1 -0
  949. package/build/upload/steps/processingStep/processingStep.js +50 -0
  950. package/build/upload/steps/processingStep/processingStep.js.map +1 -0
  951. package/build/upload/steps/processingStep/processingStep.mjs +48 -0
  952. package/build/upload/steps/processingStep/processingStep.mjs.map +1 -0
  953. package/build/upload/steps/uploadImageStep/uploadImageStep.js +88 -0
  954. package/build/upload/steps/uploadImageStep/uploadImageStep.js.map +1 -0
  955. package/build/upload/steps/uploadImageStep/uploadImageStep.mjs +86 -0
  956. package/build/upload/steps/uploadImageStep/uploadImageStep.mjs.map +1 -0
  957. package/build/upload/utils/asyncFileRead/asyncFileRead.js +17 -0
  958. package/build/upload/utils/asyncFileRead/asyncFileRead.js.map +1 -0
  959. package/build/upload/utils/asyncFileRead/asyncFileRead.mjs +15 -0
  960. package/build/upload/utils/asyncFileRead/asyncFileRead.mjs.map +1 -0
  961. package/build/upload/utils/getFileType/getFileType.js +18 -0
  962. package/build/upload/utils/getFileType/getFileType.js.map +1 -0
  963. package/build/upload/utils/getFileType/getFileType.mjs +16 -0
  964. package/build/upload/utils/getFileType/getFileType.mjs.map +1 -0
  965. package/build/upload/utils/isSizeValid/isSizeValid.js +8 -0
  966. package/build/upload/utils/isSizeValid/isSizeValid.js.map +1 -0
  967. package/build/upload/utils/isSizeValid/isSizeValid.mjs +6 -0
  968. package/build/upload/utils/isSizeValid/isSizeValid.mjs.map +1 -0
  969. package/build/upload/utils/isTypeValid/isTypeValid.js +21 -0
  970. package/build/upload/utils/isTypeValid/isTypeValid.js.map +1 -0
  971. package/build/upload/utils/isTypeValid/isTypeValid.mjs +19 -0
  972. package/build/upload/utils/isTypeValid/isTypeValid.mjs.map +1 -0
  973. package/build/upload/utils/postData/postData.js +31 -0
  974. package/build/upload/utils/postData/postData.js.map +1 -0
  975. package/build/upload/utils/postData/postData.mjs +28 -0
  976. package/build/upload/utils/postData/postData.mjs.map +1 -0
  977. package/build/uploadInput/UploadInput.js +259 -0
  978. package/build/uploadInput/UploadInput.js.map +1 -0
  979. package/build/uploadInput/UploadInput.messages.js +30 -0
  980. package/build/uploadInput/UploadInput.messages.js.map +1 -0
  981. package/build/uploadInput/UploadInput.messages.mjs +28 -0
  982. package/build/uploadInput/UploadInput.messages.mjs.map +1 -0
  983. package/build/uploadInput/UploadInput.mjs +253 -0
  984. package/build/uploadInput/UploadInput.mjs.map +1 -0
  985. package/build/uploadInput/uploadButton/UploadButton.js +186 -0
  986. package/build/uploadInput/uploadButton/UploadButton.js.map +1 -0
  987. package/build/uploadInput/uploadButton/UploadButton.messages.js +24 -0
  988. package/build/uploadInput/uploadButton/UploadButton.messages.js.map +1 -0
  989. package/build/uploadInput/uploadButton/UploadButton.messages.mjs +22 -0
  990. package/build/uploadInput/uploadButton/UploadButton.messages.mjs.map +1 -0
  991. package/build/uploadInput/uploadButton/UploadButton.mjs +178 -0
  992. package/build/uploadInput/uploadButton/UploadButton.mjs.map +1 -0
  993. package/build/uploadInput/uploadButton/defaults.js +10 -0
  994. package/build/uploadInput/uploadButton/defaults.js.map +1 -0
  995. package/build/uploadInput/uploadButton/defaults.mjs +7 -0
  996. package/build/uploadInput/uploadButton/defaults.mjs.map +1 -0
  997. package/build/uploadInput/uploadButton/getAllowedFileTypes.js +8 -0
  998. package/build/uploadInput/uploadButton/getAllowedFileTypes.js.map +1 -0
  999. package/build/uploadInput/uploadButton/getAllowedFileTypes.mjs +6 -0
  1000. package/build/uploadInput/uploadButton/getAllowedFileTypes.mjs.map +1 -0
  1001. package/build/uploadInput/uploadItem/UploadItem.js +174 -0
  1002. package/build/uploadInput/uploadItem/UploadItem.js.map +1 -0
  1003. package/build/uploadInput/uploadItem/UploadItem.messages.js +27 -0
  1004. package/build/uploadInput/uploadItem/UploadItem.messages.js.map +1 -0
  1005. package/build/uploadInput/uploadItem/UploadItem.messages.mjs +25 -0
  1006. package/build/uploadInput/uploadItem/UploadItem.messages.mjs.map +1 -0
  1007. package/build/uploadInput/uploadItem/UploadItem.mjs +166 -0
  1008. package/build/uploadInput/uploadItem/UploadItem.mjs.map +1 -0
  1009. package/build/uploadInput/uploadItem/UploadItemBody.js +27 -0
  1010. package/build/uploadInput/uploadItem/UploadItemBody.js.map +1 -0
  1011. package/build/uploadInput/uploadItem/UploadItemBody.mjs +25 -0
  1012. package/build/uploadInput/uploadItem/UploadItemBody.mjs.map +1 -0
  1013. package/build/utilities/cssValueWithUnit.js +8 -0
  1014. package/build/utilities/cssValueWithUnit.js.map +1 -0
  1015. package/build/utilities/cssValueWithUnit.mjs +6 -0
  1016. package/build/utilities/cssValueWithUnit.mjs.map +1 -0
  1017. package/build/utilities/logActionRequired.js +17 -0
  1018. package/build/utilities/logActionRequired.js.map +1 -0
  1019. package/build/utilities/logActionRequired.mjs +14 -0
  1020. package/build/utilities/logActionRequired.mjs.map +1 -0
  1021. package/build/withDisplayFormat/WithDisplayFormat.js +304 -0
  1022. package/build/withDisplayFormat/WithDisplayFormat.js.map +1 -0
  1023. package/build/withDisplayFormat/WithDisplayFormat.mjs +282 -0
  1024. package/build/withDisplayFormat/WithDisplayFormat.mjs.map +1 -0
  1025. package/build/withNextPortal/withNextPortal.js +20 -0
  1026. package/build/withNextPortal/withNextPortal.js.map +1 -0
  1027. package/build/withNextPortal/withNextPortal.mjs +18 -0
  1028. package/build/withNextPortal/withNextPortal.mjs.map +1 -0
  1029. package/package.json +3 -2
  1030. package/src/common/hooks/useVirtualKeyboard.ts +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UploadInput.mjs","sources":["../../src/uploadInput/UploadInput.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport { useEffect, useRef, useState } from 'react';\nimport { useIntl } from 'react-intl';\n\nimport Button from '../button';\nimport { CommonProps, ControlType, Priority, Status } from '../common';\nimport Modal from '../modal';\nimport { isSizeValid } from '../upload/utils/isSizeValid';\nimport { isTypeValid } from '../upload/utils/isTypeValid';\n\nimport MESSAGES from './UploadInput.messages';\nimport { UploadedFile, UploadError, UploadResponse } from './types';\nimport UploadButton, { UploadButtonProps } from './uploadButton/UploadButton';\nimport { DEFAULT_SIZE_LIMIT, imageFileTypes } from './uploadButton/defaults';\nimport UploadItem, { UploadItemProps } from './uploadItem/UploadItem';\n\nexport type UploadInputProps = {\n /**\n * List of already existing, failed or in progress files\n */\n files?: readonly UploadedFile[];\n\n /**\n * The key of the file in the returned FormData object (default: file)\n */\n fileInputName?: string;\n\n /**\n * Callback that handles form submission\n *\n * @param formData\n */\n onUploadFile: (formData: FormData) => Promise<UploadResponse>;\n\n /**\n * Provide a callback if the file can be removed/deleted from the server\n * Your app is responsible for reloading the uploaded files list and updating the component to ensure that the file has in fact been deleted successfully\n *\n * @param id\n */\n onDeleteFile?: (id: string | number) => Promise<any>;\n\n /**\n * Provide a callback to trigger on validation error\n *\n * @param file\n */\n onValidationError?: (file: UploadedFile) => void;\n\n /**\n * Provide a callback to trigger on change whenever the files are updated\n *\n * @param files\n */\n onFilesChange?: (files: UploadedFile[]) => void;\n\n /**\n * Confirmation modal displayed on delete\n */\n deleteConfirm?: {\n /**\n * The title of the confirmation modal on delete\n */\n title?: string;\n\n /**\n * The body of the confirmation modal on delete\n */\n body?: React.ReactNode;\n\n /**\n * The confirm button text of the confirmation modal on delete\n */\n confirmText?: string;\n\n /**\n * The cancel button text of the confirmation modal on delete\n */\n cancelText?: string;\n };\n\n /**\n * Maximum number of files allowed, if provided, shows error below file item\n */\n maxFiles?: number;\n\n /**\n * Error message to show when the maximum number of files are uploaded already\n */\n maxFilesErrorMessage?: string;\n\n /**\n * Error message to show when files over a allowed size limit are uploaded\n */\n sizeLimitErrorMessage?: string;\n} & Pick<\n UploadButtonProps,\n 'disabled' | 'multiple' | 'fileTypes' | 'sizeLimit' | 'description' | 'id' | 'uploadButtonTitle'\n> &\n Pick<UploadItemProps, 'onDownload'> &\n CommonProps;\n\nfunction generateFileId(file: File) {\n const { name, size } = file;\n const uploadTimeStamp = new Date().getTime();\n return `${name}_${size}_${uploadTimeStamp}`;\n}\n\nconst UploadInput = ({\n files = [],\n fileInputName = 'file',\n className,\n deleteConfirm,\n disabled,\n multiple = false,\n fileTypes = imageFileTypes,\n sizeLimit = DEFAULT_SIZE_LIMIT,\n description,\n onUploadFile,\n onDeleteFile,\n onValidationError,\n onFilesChange,\n onDownload,\n maxFiles,\n maxFilesErrorMessage,\n id,\n sizeLimitErrorMessage,\n uploadButtonTitle,\n}: UploadInputProps) => {\n const [markedFileForDelete, setMarkedFileForDelete] = useState<UploadedFile | null>(null);\n const [mounted, setMounted] = useState(false);\n const { formatMessage } = useIntl();\n\n const PROGRESS_STATUSES = new Set([Status.PENDING, Status.PROCESSING]);\n\n const [uploadedFiles, setUploadedFiles] = useState<readonly UploadedFile[]>(\n multiple || files.length === 0 ? files : [files[0]],\n );\n\n const uploadedFilesListReference = useRef(multiple || files.length === 0 ? files : [files[0]]);\n\n function addFileToList(recentUploadedFile: UploadedFile) {\n function addToList(listToAddTo: readonly UploadedFile[]) {\n return [...listToAddTo, recentUploadedFile];\n }\n\n setUploadedFiles(addToList);\n uploadedFilesListReference.current = addToList(uploadedFilesListReference.current);\n }\n\n const removeFileFromList = (file: UploadedFile) => {\n function filterOutFrom(listToFilterFrom: readonly UploadedFile[]) {\n return listToFilterFrom.filter(\n (fileInList) => file !== fileInList && file.id !== fileInList.id,\n );\n }\n\n setUploadedFiles(filterOutFrom);\n uploadedFilesListReference.current = filterOutFrom(uploadedFilesListReference.current);\n };\n\n const modifyFileInList = (file: UploadedFile, updates: Partial<UploadedFile>) => {\n const updateListItem = (listToUpdate: readonly UploadedFile[]) =>\n listToUpdate.map((fileInList) => {\n return fileInList === file || fileInList.id === file.id\n ? { ...file, ...updates }\n : fileInList;\n });\n\n setUploadedFiles(updateListItem);\n uploadedFilesListReference.current = updateListItem(uploadedFilesListReference.current);\n };\n\n const removeFile = (file: UploadedFile) => {\n const { id, status } = file;\n\n if (status === Status.FAILED) {\n // If removing a failed upload, we're just updating the view\n removeFileFromList(file);\n } else if (onDeleteFile && id) {\n // Set status to PROCESSING\n modifyFileInList(file, { status: Status.PROCESSING, error: undefined });\n\n // Notify host app about deletion\n onDeleteFile(id)\n .then(() => removeFileFromList(file))\n .catch((error) => {\n modifyFileInList(file, { error: error as UploadError });\n });\n }\n };\n\n function handleFileUploadFailure(file: File, failureMessage: string) {\n const { name } = file;\n const id = generateFileId(file);\n const failedUpload = {\n id,\n filename: name,\n status: Status.FAILED,\n error: failureMessage,\n };\n\n addFileToList(failedUpload);\n\n if (onValidationError) {\n onValidationError(failedUpload);\n }\n }\n\n function getNumberOfFilesUploaded() {\n const uploadInitiatedStatus = new Set([Status.SUCCEEDED, Status.PENDING]);\n const validFiles = uploadedFilesListReference.current.filter(\n (file) => file.status && uploadInitiatedStatus.has(file.status),\n );\n return validFiles.length;\n }\n\n function areMaximumFilesUploadedAlready() {\n if (!maxFiles) {\n return false;\n }\n\n const numberOfValidFiles = getNumberOfFilesUploaded();\n return numberOfValidFiles >= maxFiles;\n }\n\n // One or more files selected, create entries for them\n const addFiles = (selectedFiles: FileList) => {\n for (let i = 0; i < selectedFiles.length; i += 1) {\n const file = selectedFiles.item(i);\n\n // Returning a FormData[] array instead of FileList so we can filter out incorrect files\n const formData = new FormData();\n\n if (file) {\n const { name } = file;\n const id = generateFileId(file);\n\n const allowedFileTypes = typeof fileTypes === 'string' ? fileTypes : fileTypes.join(',');\n\n // Check if file type is valid\n if (!isTypeValid(file, allowedFileTypes)) {\n handleFileUploadFailure(file, formatMessage(MESSAGES.fileTypeNotSupported));\n continue;\n }\n\n // Check if the filesize is valid\n // Convert to rough bytes\n if (!isSizeValid(file, sizeLimit * 1000)) {\n const failureMessage = sizeLimitErrorMessage || formatMessage(MESSAGES.fileIsTooLarge);\n handleFileUploadFailure(file, failureMessage);\n continue;\n }\n\n if (areMaximumFilesUploadedAlready()) {\n const failureMessage =\n maxFilesErrorMessage ||\n formatMessage(MESSAGES.maximumFilesAlreadyUploaded, { maxFilesAllowed: maxFiles });\n handleFileUploadFailure(file, failureMessage);\n continue;\n }\n\n formData.append(fileInputName, file);\n const pendingFile = {\n id,\n filename: name,\n status: Status.PENDING,\n };\n\n addFileToList(pendingFile);\n\n // Start uploading the file\n onUploadFile(formData)\n .then(({ id, url, error }: UploadResponse) => {\n // Replace the temporary id with the final one received from the API, and also set any errors\n modifyFileInList(pendingFile, { id, url, error, status: Status.SUCCEEDED });\n })\n .catch((error) => {\n modifyFileInList(pendingFile, { error: error as UploadError, status: Status.FAILED });\n });\n\n if (!multiple) {\n // Only upload a single file\n break;\n }\n }\n }\n };\n\n useEffect(() => {\n setMounted(true);\n }, []);\n\n useEffect(() => {\n if (onFilesChange && mounted) {\n onFilesChange([...uploadedFiles]);\n }\n }, [onFilesChange, uploadedFiles]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return (\n <>\n <div className={classNames('np-upload-input', className, { disabled })}>\n {uploadedFiles.map((file) => (\n <UploadItem\n key={file.id}\n file={file}\n singleFileUpload={!multiple}\n canDelete={\n (!!onDeleteFile || file.status === Status.FAILED) &&\n (!file.status || !PROGRESS_STATUSES.has(file.status))\n }\n onDelete={\n file.status === Status.FAILED\n ? () => removeFile(file)\n : () => setMarkedFileForDelete(file)\n }\n onDownload={onDownload}\n />\n ))}\n {(multiple || (!multiple && !uploadedFiles.length)) && (\n <UploadButton\n id={id}\n uploadButtonTitle={uploadButtonTitle}\n disabled={areMaximumFilesUploadedAlready() || disabled}\n multiple={multiple}\n fileTypes={fileTypes}\n sizeLimit={sizeLimit}\n description={description}\n maxFiles={maxFiles}\n onChange={addFiles}\n />\n )}\n </div>\n <Modal\n title={\n deleteConfirm?.title !== undefined\n ? deleteConfirm.title\n : formatMessage(MESSAGES.deleteModalTitle)\n }\n body={\n deleteConfirm?.body !== undefined\n ? deleteConfirm.body\n : formatMessage(MESSAGES.deleteModalBody)\n }\n open={!!markedFileForDelete}\n footer={\n <>\n <Button\n block\n onClick={() => {\n setMarkedFileForDelete(null);\n }}\n >\n {deleteConfirm?.cancelText || formatMessage(MESSAGES.deleteModalCancelButtonText)}\n </Button>\n <Button\n block\n priority={Priority.SECONDARY}\n type={ControlType.NEGATIVE}\n onClick={() => {\n if (markedFileForDelete) {\n removeFile(markedFileForDelete);\n }\n setMarkedFileForDelete(null);\n }}\n >\n {deleteConfirm?.confirmText || formatMessage(MESSAGES.deleteModalConfirmButtonText)}\n </Button>\n </>\n }\n onClose={() => {\n setMarkedFileForDelete(null);\n }}\n />\n </>\n );\n};\n\nexport default UploadInput;\n"],"names":["generateFileId","file","name","size","uploadTimeStamp","Date","getTime","UploadInput","files","fileInputName","className","deleteConfirm","disabled","multiple","fileTypes","imageFileTypes","sizeLimit","DEFAULT_SIZE_LIMIT","description","onUploadFile","onDeleteFile","onValidationError","onFilesChange","onDownload","maxFiles","maxFilesErrorMessage","id","sizeLimitErrorMessage","uploadButtonTitle","markedFileForDelete","setMarkedFileForDelete","useState","mounted","setMounted","formatMessage","useIntl","PROGRESS_STATUSES","Set","Status","PENDING","PROCESSING","uploadedFiles","setUploadedFiles","length","uploadedFilesListReference","useRef","addFileToList","recentUploadedFile","addToList","listToAddTo","current","removeFileFromList","filterOutFrom","listToFilterFrom","filter","fileInList","modifyFileInList","updates","updateListItem","listToUpdate","map","removeFile","status","FAILED","error","undefined","then","catch","handleFileUploadFailure","failureMessage","failedUpload","filename","getNumberOfFilesUploaded","uploadInitiatedStatus","SUCCEEDED","validFiles","has","areMaximumFilesUploadedAlready","numberOfValidFiles","addFiles","selectedFiles","i","item","formData","FormData","allowedFileTypes","join","isTypeValid","MESSAGES","fileTypeNotSupported","isSizeValid","fileIsTooLarge","maximumFilesAlreadyUploaded","maxFilesAllowed","append","pendingFile","url","useEffect","_jsxs","_Fragment","children","classNames","_jsx","UploadItem","singleFileUpload","canDelete","onDelete","UploadButton","onChange","Modal","title","deleteModalTitle","body","deleteModalBody","open","footer","Button","block","onClick","cancelText","deleteModalCancelButtonText","priority","Priority","SECONDARY","type","ControlType","NEGATIVE","confirmText","deleteModalConfirmButtonText","onClose"],"mappings":"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"}
@@ -0,0 +1,186 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var icons = require('@transferwise/icons');
6
+ var classNames = require('classnames');
7
+ var React = require('react');
8
+ var reactIntl = require('react-intl');
9
+ var Body = require('../../body/Body.js');
10
+ var UploadButton_messages = require('./UploadButton.messages.js');
11
+ var defaults = require('./defaults.js');
12
+ var getAllowedFileTypes = require('./getAllowedFileTypes.js');
13
+ var jsxRuntime = require('react/jsx-runtime');
14
+ var typography = require('../../common/propsValues/typography.js');
15
+
16
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
17
+
18
+ var classNames__default = /*#__PURE__*/_interopDefault(classNames);
19
+
20
+ exports.TEST_IDS = void 0;
21
+ (function (TEST_IDS) {
22
+ TEST_IDS["uploadInput"] = "uploadInput";
23
+ TEST_IDS["mediaBody"] = "mediaBody";
24
+ })(exports.TEST_IDS || (exports.TEST_IDS = {}));
25
+ const onDragOver = event => {
26
+ event.preventDefault();
27
+ };
28
+ const DEFAULT_FILE_INPUT_ID = 'np-upload-button';
29
+ const UploadButton = ({
30
+ disabled,
31
+ multiple,
32
+ description,
33
+ fileTypes = defaults.imageFileTypes,
34
+ sizeLimit = defaults.DEFAULT_SIZE_LIMIT,
35
+ maxFiles,
36
+ onChange,
37
+ id = DEFAULT_FILE_INPUT_ID,
38
+ uploadButtonTitle
39
+ }) => {
40
+ const {
41
+ formatMessage
42
+ } = reactIntl.useIntl();
43
+ const inputReference = React.useRef(null);
44
+ const [isDropping, setIsDropping] = React.useState(false);
45
+ const dragCounter = React.useRef(0);
46
+ const reset = () => {
47
+ dragCounter.current = 0;
48
+ setIsDropping(false);
49
+ };
50
+ const onDragLeave = event => {
51
+ event.preventDefault();
52
+ dragCounter.current -= 1;
53
+ if (dragCounter.current === 0) {
54
+ setIsDropping(false);
55
+ }
56
+ };
57
+ const onDragEnter = event => {
58
+ event.preventDefault();
59
+ dragCounter.current += 1;
60
+ if (dragCounter.current === 1) {
61
+ setIsDropping(true);
62
+ }
63
+ };
64
+ const onDrop = event => {
65
+ event.preventDefault();
66
+ reset();
67
+ if (event.dataTransfer && event.dataTransfer.files && event.dataTransfer.files[0]) {
68
+ onChange(event.dataTransfer.files);
69
+ }
70
+ };
71
+ const filesSelected = event => {
72
+ const {
73
+ files
74
+ } = event.target;
75
+ if (files) {
76
+ onChange(files);
77
+ if (inputReference.current) {
78
+ inputReference.current.value = '';
79
+ }
80
+ }
81
+ };
82
+ const getFileTypesDescription = () => {
83
+ if (fileTypes === '*') {
84
+ return fileTypes;
85
+ }
86
+ return getAllowedFileTypes(Array.isArray(fileTypes) ? fileTypes : [fileTypes]).join(', ');
87
+ };
88
+ function getDescription() {
89
+ if (description) {
90
+ return description;
91
+ }
92
+ const fileTypesDescription = getFileTypesDescription();
93
+ const derivedFileDescription = fileTypesDescription === '*' ? formatMessage(UploadButton_messages.allFileTypes) : fileTypesDescription;
94
+ return formatMessage(UploadButton_messages.instructions, {
95
+ fileTypes: derivedFileDescription,
96
+ size: Math.round(sizeLimit / 1000)
97
+ });
98
+ }
99
+ function getAcceptedTypes() {
100
+ const areAllFilesAllowed = getFileTypesDescription() === '*';
101
+ if (areAllFilesAllowed) {
102
+ return {}; // file input by default allows all files
103
+ }
104
+ if (Array.isArray(fileTypes)) {
105
+ return {
106
+ accept: fileTypes.join(',')
107
+ };
108
+ }
109
+ return {
110
+ accept: fileTypes
111
+ };
112
+ }
113
+ function renderDescription() {
114
+ return /*#__PURE__*/jsxRuntime.jsxs(Body, {
115
+ className: classNames__default.default({
116
+ 'text-primary': !disabled
117
+ }),
118
+ children: [getDescription(), maxFiles && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
119
+ children: [/*#__PURE__*/jsxRuntime.jsx("br", {}), `Maximum ${maxFiles} files.`]
120
+ })]
121
+ });
122
+ }
123
+ function renderButtonTitle() {
124
+ if (uploadButtonTitle) {
125
+ return uploadButtonTitle;
126
+ }
127
+ return formatMessage(multiple ? UploadButton_messages.uploadFiles : UploadButton_messages.uploadFile);
128
+ }
129
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
130
+ className: classNames__default.default('np-upload-button-container', 'droppable', {
131
+ 'droppable-dropping': isDropping
132
+ }),
133
+ ...(!disabled && {
134
+ onDragEnter,
135
+ onDragLeave,
136
+ onDrop,
137
+ onDragOver
138
+ }),
139
+ children: [/*#__PURE__*/jsxRuntime.jsx("input", {
140
+ ref: inputReference,
141
+ id: id,
142
+ type: "file",
143
+ ...getAcceptedTypes(),
144
+ ...(multiple && {
145
+ multiple: true
146
+ }),
147
+ className: "tw-droppable-input",
148
+ disabled: disabled,
149
+ name: "file-upload",
150
+ "data-testid": exports.TEST_IDS.uploadInput,
151
+ onChange: filesSelected
152
+ }), /*#__PURE__*/jsxRuntime.jsx("label", {
153
+ htmlFor: id,
154
+ className: classNames__default.default('btn', 'np-upload-button'),
155
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
156
+ className: "media",
157
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
158
+ className: "np-upload-icon media-middle media-left",
159
+ children: /*#__PURE__*/jsxRuntime.jsx(icons.Upload, {
160
+ size: 24,
161
+ className: "text-link"
162
+ })
163
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
164
+ className: "media-body text-xs-left",
165
+ "data-testid": exports.TEST_IDS.mediaBody,
166
+ children: [/*#__PURE__*/jsxRuntime.jsx(Body, {
167
+ type: typography.Typography.BODY_LARGE_BOLD,
168
+ className: "d-block",
169
+ children: renderButtonTitle()
170
+ }), renderDescription()]
171
+ })]
172
+ })
173
+ }), isDropping && /*#__PURE__*/jsxRuntime.jsxs("div", {
174
+ className: classNames__default.default('droppable-card', 'droppable-dropping-card', 'droppable-card-content'),
175
+ children: [/*#__PURE__*/jsxRuntime.jsx(icons.PlusCircle, {
176
+ className: "m-x-1",
177
+ size: 24
178
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
179
+ children: formatMessage(UploadButton_messages.dropFile)
180
+ })]
181
+ })]
182
+ });
183
+ };
184
+
185
+ exports.default = UploadButton;
186
+ //# sourceMappingURL=UploadButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UploadButton.js","sources":["../../../src/uploadInput/uploadButton/UploadButton.tsx"],"sourcesContent":["import { PlusCircle as PlusIcon, Upload as UploadIcon } from '@transferwise/icons';\nimport classNames from 'classnames';\nimport { ChangeEvent, DragEvent, useRef, useState } from 'react';\nimport { useIntl } from 'react-intl';\n\nimport Body from '../../body';\nimport { FileType, Typography } from '../../common';\n\nimport MESSAGES from './UploadButton.messages';\nimport { DEFAULT_SIZE_LIMIT, imageFileTypes } from './defaults';\nimport getAllowedFileTypes from './getAllowedFileTypes';\n\ntype AllowedFileTypes = string | readonly string[] | readonly FileType[];\nexport type UploadButtonProps = {\n /**\n * Disable the upload button if your app is not yet ready to accept uploads\n */\n disabled?: boolean;\n\n /**\n * Allow multiple file uploads\n */\n multiple?: boolean;\n\n /**\n * List of allowed filetypes, eg. '*' | '.zip,application/zip' | ['.jpg,.jpeg,image/jpeg', '.png,image/png'] (default: image files + PDF)\n */\n fileTypes?: AllowedFileTypes;\n\n /**\n * Size limit in KBs 1000 KB = 1 MB (default: 5000 KB)\n */\n sizeLimit?: number;\n\n /**\n * Description for the upload button\n */\n description?: string | undefined;\n\n /**\n * Maximum number of files allowed, if provided, shows error below file item\n */\n maxFiles?: number;\n\n /**\n * Called when some files were successfully selected\n *\n * @param files\n */\n onChange: (files: FileList) => void;\n\n /**\n * Id for the upload input\n */\n id?: string;\n\n /**\n * Title for the upload button\n */\n uploadButtonTitle?: string;\n};\n\nexport enum TEST_IDS {\n uploadInput = 'uploadInput',\n mediaBody = 'mediaBody',\n}\n\nconst onDragOver = (event: DragEvent): void => {\n event.preventDefault();\n};\n\nconst DEFAULT_FILE_INPUT_ID = 'np-upload-button';\nconst UploadButton = ({\n disabled,\n multiple,\n description,\n fileTypes = imageFileTypes,\n sizeLimit = DEFAULT_SIZE_LIMIT,\n maxFiles,\n onChange,\n id = DEFAULT_FILE_INPUT_ID,\n uploadButtonTitle,\n}: UploadButtonProps) => {\n const { formatMessage } = useIntl();\n const inputReference = useRef<HTMLInputElement>(null);\n\n const [isDropping, setIsDropping] = useState(false);\n\n const dragCounter = useRef(0);\n\n const reset = (): void => {\n dragCounter.current = 0;\n setIsDropping(false);\n };\n\n const onDragLeave = (event: DragEvent): void => {\n event.preventDefault();\n dragCounter.current -= 1;\n if (dragCounter.current === 0) {\n setIsDropping(false);\n }\n };\n\n const onDragEnter = (event: DragEvent): void => {\n event.preventDefault();\n dragCounter.current += 1;\n if (dragCounter.current === 1) {\n setIsDropping(true);\n }\n };\n\n const onDrop = (event: DragEvent): void => {\n event.preventDefault();\n reset();\n if (event.dataTransfer && event.dataTransfer.files && event.dataTransfer.files[0]) {\n onChange(event.dataTransfer.files);\n }\n };\n\n const filesSelected = (event: ChangeEvent<HTMLInputElement>): void => {\n const { files } = event.target;\n\n if (files) {\n onChange(files);\n\n if (inputReference.current) {\n inputReference.current.value = '';\n }\n }\n };\n\n const getFileTypesDescription = (): string => {\n if (fileTypes === '*') {\n return fileTypes;\n }\n\n return getAllowedFileTypes(Array.isArray(fileTypes) ? fileTypes : [fileTypes]).join(', ');\n };\n\n function getDescription() {\n if (description) {\n return description;\n }\n\n const fileTypesDescription = getFileTypesDescription();\n\n const derivedFileDescription =\n fileTypesDescription === '*' ? formatMessage(MESSAGES.allFileTypes) : fileTypesDescription;\n\n return formatMessage(MESSAGES.instructions, {\n fileTypes: derivedFileDescription,\n size: Math.round(sizeLimit / 1000),\n });\n }\n\n function getAcceptedTypes(): Pick<React.ComponentPropsWithoutRef<'input'>, 'accept'> {\n const areAllFilesAllowed = getFileTypesDescription() === '*';\n\n if (areAllFilesAllowed) {\n return {}; // file input by default allows all files\n }\n\n if (Array.isArray(fileTypes)) {\n return { accept: fileTypes.join(',') };\n }\n\n return { accept: fileTypes as string };\n }\n\n function renderDescription() {\n return (\n <Body className={classNames({ 'text-primary': !disabled })}>\n {getDescription()}\n {maxFiles && (\n <>\n <br />\n {`Maximum ${maxFiles} files.`}\n </>\n )}\n </Body>\n );\n }\n\n function renderButtonTitle() {\n if (uploadButtonTitle) {\n return uploadButtonTitle;\n }\n return formatMessage(multiple ? MESSAGES.uploadFiles : MESSAGES.uploadFile);\n }\n\n return (\n <div\n className={classNames('np-upload-button-container', 'droppable', {\n 'droppable-dropping': isDropping,\n })}\n {...(!disabled && { onDragEnter, onDragLeave, onDrop, onDragOver })}\n >\n <input\n ref={inputReference}\n id={id}\n type=\"file\"\n {...getAcceptedTypes()}\n {...(multiple && { multiple: true })}\n className=\"tw-droppable-input\"\n disabled={disabled}\n name=\"file-upload\"\n data-testid={TEST_IDS.uploadInput}\n onChange={filesSelected}\n />\n {/* eslint-disable-next-line jsx-a11y/label-has-associated-control */}\n <label htmlFor={id} className={classNames('btn', 'np-upload-button')}>\n <div className=\"media\">\n <div className=\"np-upload-icon media-middle media-left\">\n <UploadIcon size={24} className=\"text-link\" />\n </div>\n <div className=\"media-body text-xs-left\" data-testid={TEST_IDS.mediaBody}>\n <Body type={Typography.BODY_LARGE_BOLD} className=\"d-block\">\n {renderButtonTitle()}\n </Body>\n {renderDescription()}\n </div>\n </div>\n </label>\n\n {/* Drop area overlay */}\n {isDropping && (\n <div\n className={classNames(\n 'droppable-card',\n 'droppable-dropping-card',\n 'droppable-card-content',\n )}\n >\n <PlusIcon className=\"m-x-1\" size={24} />\n <div>{formatMessage(MESSAGES.dropFile)}</div>\n </div>\n )}\n </div>\n );\n};\n\nexport default UploadButton;\n"],"names":["TEST_IDS","onDragOver","event","preventDefault","DEFAULT_FILE_INPUT_ID","UploadButton","disabled","multiple","description","fileTypes","imageFileTypes","sizeLimit","DEFAULT_SIZE_LIMIT","maxFiles","onChange","id","uploadButtonTitle","formatMessage","useIntl","inputReference","useRef","isDropping","setIsDropping","useState","dragCounter","reset","current","onDragLeave","onDragEnter","onDrop","dataTransfer","files","filesSelected","target","value","getFileTypesDescription","getAllowedFileTypes","Array","isArray","join","getDescription","fileTypesDescription","derivedFileDescription","MESSAGES","allFileTypes","instructions","size","Math","round","getAcceptedTypes","areAllFilesAllowed","accept","renderDescription","_jsxs","Body","className","classNames","children","_Fragment","_jsx","renderButtonTitle","uploadFiles","uploadFile","ref","type","name","uploadInput","htmlFor","UploadIcon","mediaBody","Typography","BODY_LARGE_BOLD","PlusIcon","dropFile"],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ var reactIntl = require('react-intl');
4
+
5
+ var MESSAGES = reactIntl.defineMessages({
6
+ uploadFile: {
7
+ id: "neptune.UploadButton.uploadFile"
8
+ },
9
+ uploadFiles: {
10
+ id: "neptune.UploadButton.uploadFiles"
11
+ },
12
+ instructions: {
13
+ id: "neptune.UploadButton.instructions"
14
+ },
15
+ allFileTypes: {
16
+ id: "neptune.UploadButton.allFileTypes"
17
+ },
18
+ dropFile: {
19
+ id: "neptune.UploadButton.dropFiles"
20
+ }
21
+ });
22
+
23
+ module.exports = MESSAGES;
24
+ //# sourceMappingURL=UploadButton.messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UploadButton.messages.js","sources":["../../../src/uploadInput/uploadButton/UploadButton.messages.ts"],"sourcesContent":["import { defineMessages } from 'react-intl';\n\nexport default defineMessages({\n uploadFile: {\n id: 'neptune.UploadButton.uploadFile',\n defaultMessage: 'Upload file',\n description: 'Main CTA copy in the upload button when only a single file is allowed',\n },\n\n uploadFiles: {\n id: 'neptune.UploadButton.uploadFiles',\n defaultMessage: 'Upload files',\n description: 'Main CTA copy in the upload button when multiple files are allowed',\n },\n\n instructions: {\n id: 'neptune.UploadButton.instructions',\n defaultMessage: '{fileTypes}, less than {size}MB',\n description: 'Description about filetypes and size limit for uploading files',\n },\n\n allFileTypes: {\n id: 'neptune.UploadButton.allFileTypes',\n defaultMessage: 'All file types',\n description: 'Copy to show when all filetypes are allowed to be uploaded',\n },\n\n dropFile: {\n id: 'neptune.UploadButton.dropFiles',\n defaultMessage: 'Drop file to start upload',\n description: 'Copy to show when dragging files over the upload component',\n },\n});\n"],"names":["defineMessages","uploadFile","id","uploadFiles","instructions","allFileTypes","dropFile"],"mappings":";;;;AAEA,eAAeA,wBAAc,CAAC;AAC5BC,EAAAA,UAAU,EAAE;IACVC,EAAE,EAAA,iCAAA;GAGH;AAEDC,EAAAA,WAAW,EAAE;IACXD,EAAE,EAAA,kCAAA;GAGH;AAEDE,EAAAA,YAAY,EAAE;IACZF,EAAE,EAAA,mCAAA;GAGH;AAEDG,EAAAA,YAAY,EAAE;IACZH,EAAE,EAAA,mCAAA;GAGH;AAEDI,EAAAA,QAAQ,EAAE;IACRJ,EAAE,EAAA,gCAAA;AAGH,GAAA;AACF,CAAA,CAAC;;;;"}
@@ -0,0 +1,22 @@
1
+ import { defineMessages } from 'react-intl';
2
+
3
+ var MESSAGES = defineMessages({
4
+ uploadFile: {
5
+ id: "neptune.UploadButton.uploadFile"
6
+ },
7
+ uploadFiles: {
8
+ id: "neptune.UploadButton.uploadFiles"
9
+ },
10
+ instructions: {
11
+ id: "neptune.UploadButton.instructions"
12
+ },
13
+ allFileTypes: {
14
+ id: "neptune.UploadButton.allFileTypes"
15
+ },
16
+ dropFile: {
17
+ id: "neptune.UploadButton.dropFiles"
18
+ }
19
+ });
20
+
21
+ export { MESSAGES as default };
22
+ //# sourceMappingURL=UploadButton.messages.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UploadButton.messages.mjs","sources":["../../../src/uploadInput/uploadButton/UploadButton.messages.ts"],"sourcesContent":["import { defineMessages } from 'react-intl';\n\nexport default defineMessages({\n uploadFile: {\n id: 'neptune.UploadButton.uploadFile',\n defaultMessage: 'Upload file',\n description: 'Main CTA copy in the upload button when only a single file is allowed',\n },\n\n uploadFiles: {\n id: 'neptune.UploadButton.uploadFiles',\n defaultMessage: 'Upload files',\n description: 'Main CTA copy in the upload button when multiple files are allowed',\n },\n\n instructions: {\n id: 'neptune.UploadButton.instructions',\n defaultMessage: '{fileTypes}, less than {size}MB',\n description: 'Description about filetypes and size limit for uploading files',\n },\n\n allFileTypes: {\n id: 'neptune.UploadButton.allFileTypes',\n defaultMessage: 'All file types',\n description: 'Copy to show when all filetypes are allowed to be uploaded',\n },\n\n dropFile: {\n id: 'neptune.UploadButton.dropFiles',\n defaultMessage: 'Drop file to start upload',\n description: 'Copy to show when dragging files over the upload component',\n },\n});\n"],"names":["defineMessages","uploadFile","id","uploadFiles","instructions","allFileTypes","dropFile"],"mappings":";;AAEA,eAAeA,cAAc,CAAC;AAC5BC,EAAAA,UAAU,EAAE;IACVC,EAAE,EAAA,iCAAA;GAGH;AAEDC,EAAAA,WAAW,EAAE;IACXD,EAAE,EAAA,kCAAA;GAGH;AAEDE,EAAAA,YAAY,EAAE;IACZF,EAAE,EAAA,mCAAA;GAGH;AAEDG,EAAAA,YAAY,EAAE;IACZH,EAAE,EAAA,mCAAA;GAGH;AAEDI,EAAAA,QAAQ,EAAE;IACRJ,EAAE,EAAA,gCAAA;AAGH,GAAA;AACF,CAAA,CAAC;;;;"}
@@ -0,0 +1,178 @@
1
+ import { Upload, PlusCircle } from '@transferwise/icons';
2
+ import classNames from 'classnames';
3
+ import { useRef, useState } from 'react';
4
+ import { useIntl } from 'react-intl';
5
+ import Body from '../../body/Body.mjs';
6
+ import MESSAGES from './UploadButton.messages.mjs';
7
+ import { imageFileTypes, DEFAULT_SIZE_LIMIT } from './defaults.mjs';
8
+ import getAllowedFileTypes from './getAllowedFileTypes.mjs';
9
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
10
+ import { Typography } from '../../common/propsValues/typography.mjs';
11
+
12
+ var TEST_IDS;
13
+ (function (TEST_IDS) {
14
+ TEST_IDS["uploadInput"] = "uploadInput";
15
+ TEST_IDS["mediaBody"] = "mediaBody";
16
+ })(TEST_IDS || (TEST_IDS = {}));
17
+ const onDragOver = event => {
18
+ event.preventDefault();
19
+ };
20
+ const DEFAULT_FILE_INPUT_ID = 'np-upload-button';
21
+ const UploadButton = ({
22
+ disabled,
23
+ multiple,
24
+ description,
25
+ fileTypes = imageFileTypes,
26
+ sizeLimit = DEFAULT_SIZE_LIMIT,
27
+ maxFiles,
28
+ onChange,
29
+ id = DEFAULT_FILE_INPUT_ID,
30
+ uploadButtonTitle
31
+ }) => {
32
+ const {
33
+ formatMessage
34
+ } = useIntl();
35
+ const inputReference = useRef(null);
36
+ const [isDropping, setIsDropping] = useState(false);
37
+ const dragCounter = useRef(0);
38
+ const reset = () => {
39
+ dragCounter.current = 0;
40
+ setIsDropping(false);
41
+ };
42
+ const onDragLeave = event => {
43
+ event.preventDefault();
44
+ dragCounter.current -= 1;
45
+ if (dragCounter.current === 0) {
46
+ setIsDropping(false);
47
+ }
48
+ };
49
+ const onDragEnter = event => {
50
+ event.preventDefault();
51
+ dragCounter.current += 1;
52
+ if (dragCounter.current === 1) {
53
+ setIsDropping(true);
54
+ }
55
+ };
56
+ const onDrop = event => {
57
+ event.preventDefault();
58
+ reset();
59
+ if (event.dataTransfer && event.dataTransfer.files && event.dataTransfer.files[0]) {
60
+ onChange(event.dataTransfer.files);
61
+ }
62
+ };
63
+ const filesSelected = event => {
64
+ const {
65
+ files
66
+ } = event.target;
67
+ if (files) {
68
+ onChange(files);
69
+ if (inputReference.current) {
70
+ inputReference.current.value = '';
71
+ }
72
+ }
73
+ };
74
+ const getFileTypesDescription = () => {
75
+ if (fileTypes === '*') {
76
+ return fileTypes;
77
+ }
78
+ return getAllowedFileTypes(Array.isArray(fileTypes) ? fileTypes : [fileTypes]).join(', ');
79
+ };
80
+ function getDescription() {
81
+ if (description) {
82
+ return description;
83
+ }
84
+ const fileTypesDescription = getFileTypesDescription();
85
+ const derivedFileDescription = fileTypesDescription === '*' ? formatMessage(MESSAGES.allFileTypes) : fileTypesDescription;
86
+ return formatMessage(MESSAGES.instructions, {
87
+ fileTypes: derivedFileDescription,
88
+ size: Math.round(sizeLimit / 1000)
89
+ });
90
+ }
91
+ function getAcceptedTypes() {
92
+ const areAllFilesAllowed = getFileTypesDescription() === '*';
93
+ if (areAllFilesAllowed) {
94
+ return {}; // file input by default allows all files
95
+ }
96
+ if (Array.isArray(fileTypes)) {
97
+ return {
98
+ accept: fileTypes.join(',')
99
+ };
100
+ }
101
+ return {
102
+ accept: fileTypes
103
+ };
104
+ }
105
+ function renderDescription() {
106
+ return /*#__PURE__*/jsxs(Body, {
107
+ className: classNames({
108
+ 'text-primary': !disabled
109
+ }),
110
+ children: [getDescription(), maxFiles && /*#__PURE__*/jsxs(Fragment, {
111
+ children: [/*#__PURE__*/jsx("br", {}), `Maximum ${maxFiles} files.`]
112
+ })]
113
+ });
114
+ }
115
+ function renderButtonTitle() {
116
+ if (uploadButtonTitle) {
117
+ return uploadButtonTitle;
118
+ }
119
+ return formatMessage(multiple ? MESSAGES.uploadFiles : MESSAGES.uploadFile);
120
+ }
121
+ return /*#__PURE__*/jsxs("div", {
122
+ className: classNames('np-upload-button-container', 'droppable', {
123
+ 'droppable-dropping': isDropping
124
+ }),
125
+ ...(!disabled && {
126
+ onDragEnter,
127
+ onDragLeave,
128
+ onDrop,
129
+ onDragOver
130
+ }),
131
+ children: [/*#__PURE__*/jsx("input", {
132
+ ref: inputReference,
133
+ id: id,
134
+ type: "file",
135
+ ...getAcceptedTypes(),
136
+ ...(multiple && {
137
+ multiple: true
138
+ }),
139
+ className: "tw-droppable-input",
140
+ disabled: disabled,
141
+ name: "file-upload",
142
+ "data-testid": TEST_IDS.uploadInput,
143
+ onChange: filesSelected
144
+ }), /*#__PURE__*/jsx("label", {
145
+ htmlFor: id,
146
+ className: classNames('btn', 'np-upload-button'),
147
+ children: /*#__PURE__*/jsxs("div", {
148
+ className: "media",
149
+ children: [/*#__PURE__*/jsx("div", {
150
+ className: "np-upload-icon media-middle media-left",
151
+ children: /*#__PURE__*/jsx(Upload, {
152
+ size: 24,
153
+ className: "text-link"
154
+ })
155
+ }), /*#__PURE__*/jsxs("div", {
156
+ className: "media-body text-xs-left",
157
+ "data-testid": TEST_IDS.mediaBody,
158
+ children: [/*#__PURE__*/jsx(Body, {
159
+ type: Typography.BODY_LARGE_BOLD,
160
+ className: "d-block",
161
+ children: renderButtonTitle()
162
+ }), renderDescription()]
163
+ })]
164
+ })
165
+ }), isDropping && /*#__PURE__*/jsxs("div", {
166
+ className: classNames('droppable-card', 'droppable-dropping-card', 'droppable-card-content'),
167
+ children: [/*#__PURE__*/jsx(PlusCircle, {
168
+ className: "m-x-1",
169
+ size: 24
170
+ }), /*#__PURE__*/jsx("div", {
171
+ children: formatMessage(MESSAGES.dropFile)
172
+ })]
173
+ })]
174
+ });
175
+ };
176
+
177
+ export { TEST_IDS, UploadButton as default };
178
+ //# sourceMappingURL=UploadButton.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UploadButton.mjs","sources":["../../../src/uploadInput/uploadButton/UploadButton.tsx"],"sourcesContent":["import { PlusCircle as PlusIcon, Upload as UploadIcon } from '@transferwise/icons';\nimport classNames from 'classnames';\nimport { ChangeEvent, DragEvent, useRef, useState } from 'react';\nimport { useIntl } from 'react-intl';\n\nimport Body from '../../body';\nimport { FileType, Typography } from '../../common';\n\nimport MESSAGES from './UploadButton.messages';\nimport { DEFAULT_SIZE_LIMIT, imageFileTypes } from './defaults';\nimport getAllowedFileTypes from './getAllowedFileTypes';\n\ntype AllowedFileTypes = string | readonly string[] | readonly FileType[];\nexport type UploadButtonProps = {\n /**\n * Disable the upload button if your app is not yet ready to accept uploads\n */\n disabled?: boolean;\n\n /**\n * Allow multiple file uploads\n */\n multiple?: boolean;\n\n /**\n * List of allowed filetypes, eg. '*' | '.zip,application/zip' | ['.jpg,.jpeg,image/jpeg', '.png,image/png'] (default: image files + PDF)\n */\n fileTypes?: AllowedFileTypes;\n\n /**\n * Size limit in KBs 1000 KB = 1 MB (default: 5000 KB)\n */\n sizeLimit?: number;\n\n /**\n * Description for the upload button\n */\n description?: string | undefined;\n\n /**\n * Maximum number of files allowed, if provided, shows error below file item\n */\n maxFiles?: number;\n\n /**\n * Called when some files were successfully selected\n *\n * @param files\n */\n onChange: (files: FileList) => void;\n\n /**\n * Id for the upload input\n */\n id?: string;\n\n /**\n * Title for the upload button\n */\n uploadButtonTitle?: string;\n};\n\nexport enum TEST_IDS {\n uploadInput = 'uploadInput',\n mediaBody = 'mediaBody',\n}\n\nconst onDragOver = (event: DragEvent): void => {\n event.preventDefault();\n};\n\nconst DEFAULT_FILE_INPUT_ID = 'np-upload-button';\nconst UploadButton = ({\n disabled,\n multiple,\n description,\n fileTypes = imageFileTypes,\n sizeLimit = DEFAULT_SIZE_LIMIT,\n maxFiles,\n onChange,\n id = DEFAULT_FILE_INPUT_ID,\n uploadButtonTitle,\n}: UploadButtonProps) => {\n const { formatMessage } = useIntl();\n const inputReference = useRef<HTMLInputElement>(null);\n\n const [isDropping, setIsDropping] = useState(false);\n\n const dragCounter = useRef(0);\n\n const reset = (): void => {\n dragCounter.current = 0;\n setIsDropping(false);\n };\n\n const onDragLeave = (event: DragEvent): void => {\n event.preventDefault();\n dragCounter.current -= 1;\n if (dragCounter.current === 0) {\n setIsDropping(false);\n }\n };\n\n const onDragEnter = (event: DragEvent): void => {\n event.preventDefault();\n dragCounter.current += 1;\n if (dragCounter.current === 1) {\n setIsDropping(true);\n }\n };\n\n const onDrop = (event: DragEvent): void => {\n event.preventDefault();\n reset();\n if (event.dataTransfer && event.dataTransfer.files && event.dataTransfer.files[0]) {\n onChange(event.dataTransfer.files);\n }\n };\n\n const filesSelected = (event: ChangeEvent<HTMLInputElement>): void => {\n const { files } = event.target;\n\n if (files) {\n onChange(files);\n\n if (inputReference.current) {\n inputReference.current.value = '';\n }\n }\n };\n\n const getFileTypesDescription = (): string => {\n if (fileTypes === '*') {\n return fileTypes;\n }\n\n return getAllowedFileTypes(Array.isArray(fileTypes) ? fileTypes : [fileTypes]).join(', ');\n };\n\n function getDescription() {\n if (description) {\n return description;\n }\n\n const fileTypesDescription = getFileTypesDescription();\n\n const derivedFileDescription =\n fileTypesDescription === '*' ? formatMessage(MESSAGES.allFileTypes) : fileTypesDescription;\n\n return formatMessage(MESSAGES.instructions, {\n fileTypes: derivedFileDescription,\n size: Math.round(sizeLimit / 1000),\n });\n }\n\n function getAcceptedTypes(): Pick<React.ComponentPropsWithoutRef<'input'>, 'accept'> {\n const areAllFilesAllowed = getFileTypesDescription() === '*';\n\n if (areAllFilesAllowed) {\n return {}; // file input by default allows all files\n }\n\n if (Array.isArray(fileTypes)) {\n return { accept: fileTypes.join(',') };\n }\n\n return { accept: fileTypes as string };\n }\n\n function renderDescription() {\n return (\n <Body className={classNames({ 'text-primary': !disabled })}>\n {getDescription()}\n {maxFiles && (\n <>\n <br />\n {`Maximum ${maxFiles} files.`}\n </>\n )}\n </Body>\n );\n }\n\n function renderButtonTitle() {\n if (uploadButtonTitle) {\n return uploadButtonTitle;\n }\n return formatMessage(multiple ? MESSAGES.uploadFiles : MESSAGES.uploadFile);\n }\n\n return (\n <div\n className={classNames('np-upload-button-container', 'droppable', {\n 'droppable-dropping': isDropping,\n })}\n {...(!disabled && { onDragEnter, onDragLeave, onDrop, onDragOver })}\n >\n <input\n ref={inputReference}\n id={id}\n type=\"file\"\n {...getAcceptedTypes()}\n {...(multiple && { multiple: true })}\n className=\"tw-droppable-input\"\n disabled={disabled}\n name=\"file-upload\"\n data-testid={TEST_IDS.uploadInput}\n onChange={filesSelected}\n />\n {/* eslint-disable-next-line jsx-a11y/label-has-associated-control */}\n <label htmlFor={id} className={classNames('btn', 'np-upload-button')}>\n <div className=\"media\">\n <div className=\"np-upload-icon media-middle media-left\">\n <UploadIcon size={24} className=\"text-link\" />\n </div>\n <div className=\"media-body text-xs-left\" data-testid={TEST_IDS.mediaBody}>\n <Body type={Typography.BODY_LARGE_BOLD} className=\"d-block\">\n {renderButtonTitle()}\n </Body>\n {renderDescription()}\n </div>\n </div>\n </label>\n\n {/* Drop area overlay */}\n {isDropping && (\n <div\n className={classNames(\n 'droppable-card',\n 'droppable-dropping-card',\n 'droppable-card-content',\n )}\n >\n <PlusIcon className=\"m-x-1\" size={24} />\n <div>{formatMessage(MESSAGES.dropFile)}</div>\n </div>\n )}\n </div>\n );\n};\n\nexport default UploadButton;\n"],"names":["TEST_IDS","onDragOver","event","preventDefault","DEFAULT_FILE_INPUT_ID","UploadButton","disabled","multiple","description","fileTypes","imageFileTypes","sizeLimit","DEFAULT_SIZE_LIMIT","maxFiles","onChange","id","uploadButtonTitle","formatMessage","useIntl","inputReference","useRef","isDropping","setIsDropping","useState","dragCounter","reset","current","onDragLeave","onDragEnter","onDrop","dataTransfer","files","filesSelected","target","value","getFileTypesDescription","getAllowedFileTypes","Array","isArray","join","getDescription","fileTypesDescription","derivedFileDescription","MESSAGES","allFileTypes","instructions","size","Math","round","getAcceptedTypes","areAllFilesAllowed","accept","renderDescription","_jsxs","Body","className","classNames","children","_Fragment","_jsx","renderButtonTitle","uploadFiles","uploadFile","ref","type","name","uploadInput","htmlFor","UploadIcon","mediaBody","Typography","BODY_LARGE_BOLD","PlusIcon","dropFile"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ var fileType = require('../../common/fileType.js');
4
+
5
+ const DEFAULT_SIZE_LIMIT = 5000;
6
+ const imageFileTypes = [fileType.FileType.PDF, fileType.FileType.JPG, fileType.FileType.PNG];
7
+
8
+ exports.DEFAULT_SIZE_LIMIT = DEFAULT_SIZE_LIMIT;
9
+ exports.imageFileTypes = imageFileTypes;
10
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","sources":["../../../src/uploadInput/uploadButton/defaults.ts"],"sourcesContent":["import { FileType } from '../../common';\n\nexport const DEFAULT_SIZE_LIMIT = 5000;\n\nexport const imageFileTypes = [FileType.PDF, FileType.JPG, FileType.PNG];\n"],"names":["DEFAULT_SIZE_LIMIT","imageFileTypes","FileType","PDF","JPG","PNG"],"mappings":";;;;AAEO,MAAMA,kBAAkB,GAAG,KAAI;AAEzBC,MAAAA,cAAc,GAAG,CAACC,iBAAQ,CAACC,GAAG,EAAED,iBAAQ,CAACE,GAAG,EAAEF,iBAAQ,CAACG,GAAG;;;;;"}
@@ -0,0 +1,7 @@
1
+ import { FileType } from '../../common/fileType.mjs';
2
+
3
+ const DEFAULT_SIZE_LIMIT = 5000;
4
+ const imageFileTypes = [FileType.PDF, FileType.JPG, FileType.PNG];
5
+
6
+ export { DEFAULT_SIZE_LIMIT, imageFileTypes };
7
+ //# sourceMappingURL=defaults.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.mjs","sources":["../../../src/uploadInput/uploadButton/defaults.ts"],"sourcesContent":["import { FileType } from '../../common';\n\nexport const DEFAULT_SIZE_LIMIT = 5000;\n\nexport const imageFileTypes = [FileType.PDF, FileType.JPG, FileType.PNG];\n"],"names":["DEFAULT_SIZE_LIMIT","imageFileTypes","FileType","PDF","JPG","PNG"],"mappings":";;AAEO,MAAMA,kBAAkB,GAAG,KAAI;AAEzBC,MAAAA,cAAc,GAAG,CAACC,QAAQ,CAACC,GAAG,EAAED,QAAQ,CAACE,GAAG,EAAEF,QAAQ,CAACG,GAAG;;;;"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ const getAllowedFileTypes = fileTypes => fileTypes.map(fileTypeDefinition => fileTypeDefinition.split(',').filter(extension => !extension.includes('/')) // Filter out mime types
4
+ .map(extension => extension.replace('.', '').toUpperCase()) // Remove dot and convert extensions to uppercase to be displayed in the instructions
5
+ .join(', '));
6
+
7
+ module.exports = getAllowedFileTypes;
8
+ //# sourceMappingURL=getAllowedFileTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAllowedFileTypes.js","sources":["../../../src/uploadInput/uploadButton/getAllowedFileTypes.ts"],"sourcesContent":["import { FileType } from '../../common';\n\nconst getAllowedFileTypes = (fileTypes: readonly FileType[] | readonly string[]): string[] =>\n fileTypes.map((fileTypeDefinition: string) =>\n fileTypeDefinition\n .split(',')\n .filter((extension) => !extension.includes('/')) // Filter out mime types\n .map((extension) => extension.replace('.', '').toUpperCase()) // Remove dot and convert extensions to uppercase to be displayed in the instructions\n .join(', '),\n );\n\nexport default getAllowedFileTypes;\n"],"names":["getAllowedFileTypes","fileTypes","map","fileTypeDefinition","split","filter","extension","includes","replace","toUpperCase","join"],"mappings":";;AAEA,MAAMA,mBAAmB,GAAIC,SAAkD,IAC7EA,SAAS,CAACC,GAAG,CAAEC,kBAA0B,IACvCA,kBAAkB,CACfC,KAAK,CAAC,GAAG,CAAC,CACVC,MAAM,CAAEC,SAAS,IAAK,CAACA,SAAS,CAACC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAAC,CAChDL,GAAG,CAAEI,SAAS,IAAKA,SAAS,CAACE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAACC,WAAW,EAAE,CAAC;AAAC,CAC7DC,IAAI,CAAC,IAAI,CAAC;;;;"}
@@ -0,0 +1,6 @@
1
+ const getAllowedFileTypes = fileTypes => fileTypes.map(fileTypeDefinition => fileTypeDefinition.split(',').filter(extension => !extension.includes('/')) // Filter out mime types
2
+ .map(extension => extension.replace('.', '').toUpperCase()) // Remove dot and convert extensions to uppercase to be displayed in the instructions
3
+ .join(', '));
4
+
5
+ export { getAllowedFileTypes as default };
6
+ //# sourceMappingURL=getAllowedFileTypes.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAllowedFileTypes.mjs","sources":["../../../src/uploadInput/uploadButton/getAllowedFileTypes.ts"],"sourcesContent":["import { FileType } from '../../common';\n\nconst getAllowedFileTypes = (fileTypes: readonly FileType[] | readonly string[]): string[] =>\n fileTypes.map((fileTypeDefinition: string) =>\n fileTypeDefinition\n .split(',')\n .filter((extension) => !extension.includes('/')) // Filter out mime types\n .map((extension) => extension.replace('.', '').toUpperCase()) // Remove dot and convert extensions to uppercase to be displayed in the instructions\n .join(', '),\n );\n\nexport default getAllowedFileTypes;\n"],"names":["getAllowedFileTypes","fileTypes","map","fileTypeDefinition","split","filter","extension","includes","replace","toUpperCase","join"],"mappings":"AAEA,MAAMA,mBAAmB,GAAIC,SAAkD,IAC7EA,SAAS,CAACC,GAAG,CAAEC,kBAA0B,IACvCA,kBAAkB,CACfC,KAAK,CAAC,GAAG,CAAC,CACVC,MAAM,CAAEC,SAAS,IAAK,CAACA,SAAS,CAACC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAAC,CAChDL,GAAG,CAAEI,SAAS,IAAKA,SAAS,CAACE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAACC,WAAW,EAAE,CAAC;AAAC,CAC7DC,IAAI,CAAC,IAAI,CAAC;;;;"}