@chayns-components/core 5.0.0-beta.39 → 5.0.0-beta.391

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 (419) hide show
  1. package/README.md +3 -9
  2. package/lib/api/image/post.d.ts +16 -0
  3. package/lib/api/image/post.js +34 -0
  4. package/lib/api/image/post.js.map +1 -0
  5. package/lib/api/video/post.d.ts +16 -0
  6. package/lib/api/video/post.js +31 -0
  7. package/lib/api/video/post.js.map +1 -0
  8. package/lib/components/accordion/Accordion.d.ts +24 -3
  9. package/lib/components/accordion/Accordion.js +38 -17
  10. package/lib/components/accordion/Accordion.js.map +1 -1
  11. package/lib/components/accordion/Accordion.styles.d.ts +6 -4
  12. package/lib/components/accordion/Accordion.styles.js +42 -28
  13. package/lib/components/accordion/Accordion.styles.js.map +1 -1
  14. package/lib/components/accordion/accordion-body/AccordionBody.d.ts +21 -2
  15. package/lib/components/accordion/accordion-body/AccordionBody.js +17 -11
  16. package/lib/components/accordion/accordion-body/AccordionBody.js.map +1 -1
  17. package/lib/components/accordion/accordion-body/AccordionBody.styles.d.ts +268 -1
  18. package/lib/components/accordion/accordion-body/AccordionBody.styles.js +14 -4
  19. package/lib/components/accordion/accordion-body/AccordionBody.styles.js.map +1 -1
  20. package/lib/components/accordion/accordion-content/AccordionContent.d.ts +10 -2
  21. package/lib/components/accordion/accordion-content/AccordionContent.js +7 -4
  22. package/lib/components/accordion/accordion-content/AccordionContent.js.map +1 -1
  23. package/lib/components/accordion/accordion-content/AccordionContent.styles.d.ts +7 -4
  24. package/lib/components/accordion/accordion-content/AccordionContent.styles.js +14 -4
  25. package/lib/components/accordion/accordion-content/AccordionContent.styles.js.map +1 -1
  26. package/lib/components/accordion/accordion-group/AccordionGroup.d.ts +4 -3
  27. package/lib/components/accordion/accordion-group/AccordionGroup.js +6 -6
  28. package/lib/components/accordion/accordion-group/AccordionGroup.js.map +1 -1
  29. package/lib/components/accordion/accordion-head/AccordionHead.d.ts +1 -1
  30. package/lib/components/accordion/accordion-head/AccordionHead.js +5 -7
  31. package/lib/components/accordion/accordion-head/AccordionHead.js.map +1 -1
  32. package/lib/components/accordion/accordion-head/AccordionHead.styles.d.ts +2417 -12
  33. package/lib/components/accordion/accordion-head/AccordionHead.styles.js +20 -24
  34. package/lib/components/accordion/accordion-head/AccordionHead.styles.js.map +1 -1
  35. package/lib/components/accordion/accordion-intro/AccordionIntro.d.ts +1 -1
  36. package/lib/components/accordion/accordion-intro/AccordionIntro.js +1 -2
  37. package/lib/components/accordion/accordion-intro/AccordionIntro.js.map +1 -1
  38. package/lib/components/accordion/accordion-intro/AccordionIntro.styles.d.ts +2 -1
  39. package/lib/components/accordion/accordion-intro/AccordionIntro.styles.js +1 -2
  40. package/lib/components/accordion/accordion-intro/AccordionIntro.styles.js.map +1 -1
  41. package/lib/components/accordion/accordion-item/AccordionItem.d.ts +9 -0
  42. package/lib/components/accordion/accordion-item/AccordionItem.js +27 -0
  43. package/lib/components/accordion/accordion-item/AccordionItem.js.map +1 -0
  44. package/lib/components/accordion/accordion-item/AccordionItem.styles.d.ts +7 -0
  45. package/lib/components/accordion/accordion-item/AccordionItem.styles.js +33 -0
  46. package/lib/components/accordion/accordion-item/AccordionItem.styles.js.map +1 -0
  47. package/lib/components/accordion/utils.js.map +1 -1
  48. package/lib/components/amount-control/AmountControl.d.ts +22 -0
  49. package/lib/components/amount-control/AmountControl.js +185 -0
  50. package/lib/components/amount-control/AmountControl.js.map +1 -0
  51. package/lib/components/amount-control/AmountControl.styles.d.ts +288 -0
  52. package/lib/components/amount-control/AmountControl.styles.js +58 -0
  53. package/lib/components/amount-control/AmountControl.styles.js.map +1 -0
  54. package/lib/components/amount-control/utils.d.ts +7 -0
  55. package/lib/components/amount-control/utils.js +22 -0
  56. package/lib/components/amount-control/utils.js.map +1 -0
  57. package/lib/components/badge/Badge.d.ts +1 -1
  58. package/lib/components/badge/Badge.js +1 -2
  59. package/lib/components/badge/Badge.js.map +1 -1
  60. package/lib/components/badge/Badge.styles.d.ts +5 -3
  61. package/lib/components/badge/Badge.styles.js +3 -4
  62. package/lib/components/badge/Badge.styles.js.map +1 -1
  63. package/lib/components/button/Button.d.ts +6 -2
  64. package/lib/components/button/Button.js +55 -4
  65. package/lib/components/button/Button.js.map +1 -1
  66. package/lib/components/button/Button.styles.d.ts +538 -4
  67. package/lib/components/button/Button.styles.js +36 -15
  68. package/lib/components/button/Button.styles.js.map +1 -1
  69. package/lib/components/checkbox/Checkbox.d.ts +11 -3
  70. package/lib/components/checkbox/Checkbox.js +13 -8
  71. package/lib/components/checkbox/Checkbox.js.map +1 -1
  72. package/lib/components/checkbox/Checkbox.styles.d.ts +12 -5
  73. package/lib/components/checkbox/Checkbox.styles.js +51 -36
  74. package/lib/components/checkbox/Checkbox.styles.js.map +1 -1
  75. package/lib/components/code-highlighter/CodeHighlighter.d.ts +36 -0
  76. package/lib/components/code-highlighter/CodeHighlighter.js +85 -0
  77. package/lib/components/code-highlighter/CodeHighlighter.js.map +1 -0
  78. package/lib/components/code-highlighter/CodeHighlighter.styles.d.ts +16 -0
  79. package/lib/components/code-highlighter/CodeHighlighter.styles.js +88 -0
  80. package/lib/components/code-highlighter/CodeHighlighter.styles.js.map +1 -0
  81. package/lib/components/code-highlighter/copy-to-clipboard/CopyToClipboard.d.ts +9 -0
  82. package/lib/components/code-highlighter/copy-to-clipboard/CopyToClipboard.js +41 -0
  83. package/lib/components/code-highlighter/copy-to-clipboard/CopyToClipboard.js.map +1 -0
  84. package/lib/components/code-highlighter/copy-to-clipboard/CopyToClipboard.styles.d.ts +9 -0
  85. package/lib/components/code-highlighter/copy-to-clipboard/CopyToClipboard.styles.js +24 -0
  86. package/lib/components/code-highlighter/copy-to-clipboard/CopyToClipboard.styles.js.map +1 -0
  87. package/lib/components/color-scheme-provider/ColorSchemeProvider.d.ts +3 -2
  88. package/lib/components/color-scheme-provider/ColorSchemeProvider.js +14 -12
  89. package/lib/components/color-scheme-provider/ColorSchemeProvider.js.map +1 -1
  90. package/lib/components/color-scheme-provider/font.d.ts +6 -0
  91. package/lib/components/color-scheme-provider/font.js +59 -0
  92. package/lib/components/color-scheme-provider/font.js.map +1 -0
  93. package/lib/components/combobox/ComboBox.d.ts +39 -0
  94. package/lib/components/combobox/ComboBox.js +183 -0
  95. package/lib/components/combobox/ComboBox.js.map +1 -0
  96. package/lib/components/combobox/ComboBox.styles.d.ts +288 -0
  97. package/lib/components/combobox/ComboBox.styles.js +177 -0
  98. package/lib/components/combobox/ComboBox.styles.js.map +1 -0
  99. package/lib/components/combobox/combobox-item/ComboBoxItem.d.ts +12 -0
  100. package/lib/components/combobox/combobox-item/ComboBoxItem.js +40 -0
  101. package/lib/components/combobox/combobox-item/ComboBoxItem.js.map +1 -0
  102. package/lib/components/combobox/combobox-item/ComboBoxItem.styles.d.ts +11 -0
  103. package/lib/components/combobox/combobox-item/ComboBoxItem.styles.js +61 -0
  104. package/lib/components/combobox/combobox-item/ComboBoxItem.styles.js.map +1 -0
  105. package/lib/components/content-card/ContentCard.d.ts +13 -0
  106. package/lib/components/content-card/ContentCard.js +21 -0
  107. package/lib/components/content-card/ContentCard.js.map +1 -0
  108. package/lib/components/content-card/ContentCard.styles.d.ts +2 -0
  109. package/lib/components/content-card/ContentCard.styles.js +22 -0
  110. package/lib/components/content-card/ContentCard.styles.js.map +1 -0
  111. package/lib/components/context-menu/ContextMenu.d.ts +5 -5
  112. package/lib/components/context-menu/ContextMenu.js +18 -19
  113. package/lib/components/context-menu/ContextMenu.js.map +1 -1
  114. package/lib/components/context-menu/ContextMenu.styles.d.ts +2 -1
  115. package/lib/components/context-menu/ContextMenu.styles.js +1 -2
  116. package/lib/components/context-menu/ContextMenu.styles.js.map +1 -1
  117. package/lib/components/context-menu/constants/alignment.js +3 -4
  118. package/lib/components/context-menu/constants/alignment.js.map +1 -1
  119. package/lib/components/context-menu/context-menu-content/ContextMenuContent.d.ts +1 -1
  120. package/lib/components/context-menu/context-menu-content/ContextMenuContent.js +4 -3
  121. package/lib/components/context-menu/context-menu-content/ContextMenuContent.js.map +1 -1
  122. package/lib/components/context-menu/context-menu-content/ContextMenuContent.styles.d.ts +273 -8
  123. package/lib/components/context-menu/context-menu-content/ContextMenuContent.styles.js +14 -19
  124. package/lib/components/context-menu/context-menu-content/ContextMenuContent.styles.js.map +1 -1
  125. package/lib/components/date-info/DateInfo.d.ts +40 -0
  126. package/lib/components/date-info/DateInfo.js +108 -0
  127. package/lib/components/date-info/DateInfo.js.map +1 -0
  128. package/lib/components/date-info/utils/format.d.ts +43 -0
  129. package/lib/components/date-info/utils/format.js +287 -0
  130. package/lib/components/date-info/utils/format.js.map +1 -0
  131. package/lib/components/date-info/utils/language.d.ts +1 -0
  132. package/lib/components/date-info/utils/language.js +35 -0
  133. package/lib/components/date-info/utils/language.js.map +1 -0
  134. package/lib/components/file-input/FileInput.d.ts +21 -0
  135. package/lib/components/file-input/FileInput.js +104 -0
  136. package/lib/components/file-input/FileInput.js.map +1 -0
  137. package/lib/components/file-input/FileInput.styles.d.ts +274 -0
  138. package/lib/components/file-input/FileInput.styles.js +35 -0
  139. package/lib/components/file-input/FileInput.styles.js.map +1 -0
  140. package/lib/components/file-input/file-list/FileListItem.d.ts +9 -0
  141. package/lib/components/file-input/file-list/FileListItem.js +36 -0
  142. package/lib/components/file-input/file-list/FileListItem.js.map +1 -0
  143. package/lib/components/file-input/file-list/FileListItem.styles.d.ts +2 -0
  144. package/lib/components/file-input/file-list/FileListItem.styles.js +10 -0
  145. package/lib/components/file-input/file-list/FileListItem.styles.js.map +1 -0
  146. package/lib/components/filter-buttons/FilterButtons.d.ts +22 -0
  147. package/lib/components/filter-buttons/FilterButtons.js +88 -0
  148. package/lib/components/filter-buttons/FilterButtons.js.map +1 -0
  149. package/lib/components/filter-buttons/FilterButtons.styles.d.ts +2 -0
  150. package/lib/components/filter-buttons/FilterButtons.styles.js +14 -0
  151. package/lib/components/filter-buttons/FilterButtons.styles.js.map +1 -0
  152. package/lib/components/filter-buttons/filter-button/FilterButton.d.ts +14 -0
  153. package/lib/components/filter-buttons/filter-button/FilterButton.js +47 -0
  154. package/lib/components/filter-buttons/filter-button/FilterButton.js.map +1 -0
  155. package/lib/components/filter-buttons/filter-button/FilterButton.styles.d.ts +287 -0
  156. package/lib/components/filter-buttons/filter-button/FilterButton.styles.js +104 -0
  157. package/lib/components/filter-buttons/filter-button/FilterButton.styles.js.map +1 -0
  158. package/lib/components/filter-buttons/types.d.ts +15 -0
  159. package/lib/components/filter-buttons/types.js +17 -0
  160. package/lib/components/filter-buttons/types.js.map +1 -0
  161. package/lib/components/grid-image/GridImage.d.ts +1 -1
  162. package/lib/components/grid-image/GridImage.js +3 -4
  163. package/lib/components/grid-image/GridImage.js.map +1 -1
  164. package/lib/components/grid-image/GridImage.styles.d.ts +12 -11
  165. package/lib/components/grid-image/GridImage.styles.js +4 -8
  166. package/lib/components/grid-image/GridImage.styles.js.map +1 -1
  167. package/lib/components/icon/Icon.d.ts +1 -1
  168. package/lib/components/icon/Icon.js +2 -3
  169. package/lib/components/icon/Icon.js.map +1 -1
  170. package/lib/components/icon/Icon.styles.d.ts +7 -7
  171. package/lib/components/icon/Icon.styles.js +6 -8
  172. package/lib/components/icon/Icon.styles.js.map +1 -1
  173. package/lib/components/icon/utils.js +1 -2
  174. package/lib/components/icon/utils.js.map +1 -1
  175. package/lib/components/input/Input.d.ts +35 -3
  176. package/lib/components/input/Input.js +62 -16
  177. package/lib/components/input/Input.js.map +1 -1
  178. package/lib/components/input/Input.styles.d.ts +541 -6
  179. package/lib/components/input/Input.styles.js +59 -18
  180. package/lib/components/input/Input.styles.js.map +1 -1
  181. package/lib/components/list/List.d.ts +1 -1
  182. package/lib/components/list/List.js +4 -6
  183. package/lib/components/list/List.js.map +1 -1
  184. package/lib/components/list/list-item/ListItem.d.ts +2 -2
  185. package/lib/components/list/list-item/ListItem.js +7 -6
  186. package/lib/components/list/list-item/ListItem.js.map +1 -1
  187. package/lib/components/list/list-item/ListItem.styles.d.ts +6 -4
  188. package/lib/components/list/list-item/ListItem.styles.js +14 -26
  189. package/lib/components/list/list-item/ListItem.styles.js.map +1 -1
  190. package/lib/components/list/list-item/list-item-body/ListItemBody.d.ts +6 -2
  191. package/lib/components/list/list-item/list-item-body/ListItemBody.js +28 -7
  192. package/lib/components/list/list-item/list-item-body/ListItemBody.js.map +1 -1
  193. package/lib/components/list/list-item/list-item-body/ListItemBody.styles.d.ts +267 -1
  194. package/lib/components/list/list-item/list-item-body/ListItemBody.styles.js +1 -2
  195. package/lib/components/list/list-item/list-item-body/ListItemBody.styles.js.map +1 -1
  196. package/lib/components/list/list-item/list-item-content/ListItemContent.d.ts +8 -2
  197. package/lib/components/list/list-item/list-item-content/ListItemContent.js +1 -2
  198. package/lib/components/list/list-item/list-item-content/ListItemContent.js.map +1 -1
  199. package/lib/components/list/list-item/list-item-content/ListItemContent.styles.d.ts +2 -1
  200. package/lib/components/list/list-item/list-item-content/ListItemContent.styles.js +1 -2
  201. package/lib/components/list/list-item/list-item-content/ListItemContent.styles.js.map +1 -1
  202. package/lib/components/list/list-item/list-item-head/ListItemHead.d.ts +1 -1
  203. package/lib/components/list/list-item/list-item-head/ListItemHead.js +4 -5
  204. package/lib/components/list/list-item/list-item-head/ListItemHead.js.map +1 -1
  205. package/lib/components/list/list-item/list-item-head/ListItemHead.styles.d.ts +544 -14
  206. package/lib/components/list/list-item/list-item-head/ListItemHead.styles.js +13 -24
  207. package/lib/components/list/list-item/list-item-head/ListItemHead.styles.js.map +1 -1
  208. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.d.ts +1 -1
  209. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.js +1 -2
  210. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.js.map +1 -1
  211. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.d.ts +2 -1
  212. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.js +1 -2
  213. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.js.map +1 -1
  214. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.d.ts +1 -1
  215. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.js +3 -4
  216. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.js.map +1 -1
  217. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.d.ts +8 -7
  218. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.js +2 -4
  219. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.js.map +1 -1
  220. package/lib/components/mention-finder/MentionFinder.d.ts +31 -0
  221. package/lib/components/mention-finder/MentionFinder.js +139 -0
  222. package/lib/components/mention-finder/MentionFinder.js.map +1 -0
  223. package/lib/components/mention-finder/MentionFinder.styles.d.ts +270 -0
  224. package/lib/components/mention-finder/MentionFinder.styles.js +92 -0
  225. package/lib/components/mention-finder/MentionFinder.styles.js.map +1 -0
  226. package/lib/components/mention-finder/constants/alignment.d.ts +4 -0
  227. package/lib/components/mention-finder/constants/alignment.js +12 -0
  228. package/lib/components/mention-finder/constants/alignment.js.map +1 -0
  229. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.d.ts +10 -0
  230. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.js +31 -0
  231. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.js.map +1 -0
  232. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.styles.d.ts +10 -0
  233. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.styles.js +91 -0
  234. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.styles.js.map +1 -0
  235. package/lib/components/number-input/NumberInput.d.ts +46 -0
  236. package/lib/components/number-input/NumberInput.js +123 -0
  237. package/lib/components/number-input/NumberInput.js.map +1 -0
  238. package/lib/components/number-input/constants/number.d.ts +4 -0
  239. package/lib/components/number-input/constants/number.js +11 -0
  240. package/lib/components/number-input/constants/number.js.map +1 -0
  241. package/lib/components/number-input/utils/number.d.ts +21 -0
  242. package/lib/components/number-input/utils/number.js +64 -0
  243. package/lib/components/number-input/utils/number.js.map +1 -0
  244. package/lib/components/popup/Popup.d.ts +30 -0
  245. package/lib/components/popup/Popup.js +154 -0
  246. package/lib/components/popup/Popup.js.map +1 -0
  247. package/lib/components/popup/Popup.styles.d.ts +5 -0
  248. package/lib/components/popup/Popup.styles.js +26 -0
  249. package/lib/components/popup/Popup.styles.js.map +1 -0
  250. package/lib/components/popup/popup-content/PopupContent.d.ts +9 -0
  251. package/lib/components/popup/popup-content/PopupContent.js +66 -0
  252. package/lib/components/popup/popup-content/PopupContent.js.map +1 -0
  253. package/lib/components/popup/popup-content/PopupContent.styles.d.ts +274 -0
  254. package/lib/components/popup/popup-content/PopupContent.styles.js +92 -0
  255. package/lib/components/popup/popup-content/PopupContent.styles.js.map +1 -0
  256. package/lib/components/popup/types.d.ts +16 -0
  257. package/lib/components/popup/types.js +16 -0
  258. package/lib/components/popup/types.js.map +1 -0
  259. package/lib/components/progress-bar/ProgressBar.d.ts +9 -0
  260. package/lib/components/progress-bar/ProgressBar.js +38 -0
  261. package/lib/components/progress-bar/ProgressBar.js.map +1 -0
  262. package/lib/components/progress-bar/ProgressBar.styles.d.ts +271 -0
  263. package/lib/components/progress-bar/ProgressBar.styles.js +36 -0
  264. package/lib/components/progress-bar/ProgressBar.styles.js.map +1 -0
  265. package/lib/components/radio-button/RadioButton.d.ts +26 -0
  266. package/lib/components/radio-button/RadioButton.js +85 -0
  267. package/lib/components/radio-button/RadioButton.js.map +1 -0
  268. package/lib/components/radio-button/RadioButton.styles.d.ts +22 -0
  269. package/lib/components/radio-button/RadioButton.styles.js +95 -0
  270. package/lib/components/radio-button/RadioButton.styles.js.map +1 -0
  271. package/lib/components/radio-button/radio-button-group/RadioButtonGroup.d.ts +17 -0
  272. package/lib/components/radio-button/radio-button-group/RadioButtonGroup.js +46 -0
  273. package/lib/components/radio-button/radio-button-group/RadioButtonGroup.js.map +1 -0
  274. package/lib/components/radio-button/types.d.ts +4 -0
  275. package/lib/components/radio-button/types.js +2 -0
  276. package/lib/components/radio-button/types.js.map +1 -0
  277. package/lib/components/scroll-view/ScrollView.d.ts +13 -0
  278. package/lib/components/scroll-view/ScrollView.js +22 -0
  279. package/lib/components/scroll-view/ScrollView.js.map +1 -0
  280. package/lib/components/scroll-view/ScrollView.styles.d.ts +7 -0
  281. package/lib/components/scroll-view/ScrollView.styles.js +26 -0
  282. package/lib/components/scroll-view/ScrollView.styles.js.map +1 -0
  283. package/lib/components/search-box/SearchBox.d.ts +30 -0
  284. package/lib/components/search-box/SearchBox.js +179 -0
  285. package/lib/components/search-box/SearchBox.js.map +1 -0
  286. package/lib/components/search-box/SearchBox.styles.d.ts +272 -0
  287. package/lib/components/search-box/SearchBox.styles.js +56 -0
  288. package/lib/components/search-box/SearchBox.styles.js.map +1 -0
  289. package/lib/components/search-box/search-box-item/SearchBoxItem.d.ts +9 -0
  290. package/lib/components/search-box/search-box-item/SearchBoxItem.js +29 -0
  291. package/lib/components/search-box/search-box-item/SearchBoxItem.js.map +1 -0
  292. package/lib/components/search-box/search-box-item/SearchBoxItem.styles.d.ts +7 -0
  293. package/lib/components/search-box/search-box-item/SearchBoxItem.styles.js +28 -0
  294. package/lib/components/search-box/search-box-item/SearchBoxItem.styles.js.map +1 -0
  295. package/lib/components/search-box/types.d.ts +4 -0
  296. package/lib/components/search-box/types.js +2 -0
  297. package/lib/components/search-box/types.js.map +1 -0
  298. package/lib/components/search-box/utils.d.ts +7 -0
  299. package/lib/components/search-box/utils.js +23 -0
  300. package/lib/components/search-box/utils.js.map +1 -0
  301. package/lib/components/search-input/SearchInput.d.ts +33 -0
  302. package/lib/components/search-input/SearchInput.js +102 -0
  303. package/lib/components/search-input/SearchInput.js.map +1 -0
  304. package/lib/components/search-input/SearchInput.styles.d.ts +534 -0
  305. package/lib/components/search-input/SearchInput.styles.js +26 -0
  306. package/lib/components/search-input/SearchInput.styles.js.map +1 -0
  307. package/lib/components/setup-wizard/SetupWizard.d.ts +23 -0
  308. package/lib/components/setup-wizard/SetupWizard.js +79 -0
  309. package/lib/components/setup-wizard/SetupWizard.js.map +1 -0
  310. package/lib/components/setup-wizard/SetupWizard.styles.d.ts +2 -0
  311. package/lib/components/setup-wizard/SetupWizard.styles.js +10 -0
  312. package/lib/components/setup-wizard/SetupWizard.styles.js.map +1 -0
  313. package/lib/components/setup-wizard/setup-wizard-item/SetupWizardItem.d.ts +25 -0
  314. package/lib/components/setup-wizard/setup-wizard-item/SetupWizardItem.js +60 -0
  315. package/lib/components/setup-wizard/setup-wizard-item/SetupWizardItem.js.map +1 -0
  316. package/lib/components/setup-wizard/setup-wizard-item/SetupWizardItem.styles.d.ts +3 -0
  317. package/lib/components/setup-wizard/setup-wizard-item/SetupWizardItem.styles.js +14 -0
  318. package/lib/components/setup-wizard/setup-wizard-item/SetupWizardItem.styles.js.map +1 -0
  319. package/lib/components/sharing-bar/SharingBar.d.ts +18 -0
  320. package/lib/components/sharing-bar/SharingBar.js +110 -0
  321. package/lib/components/sharing-bar/SharingBar.js.map +1 -0
  322. package/lib/components/sharing-bar/SharingBar.styles.d.ts +6 -0
  323. package/lib/components/sharing-bar/SharingBar.styles.js +24 -0
  324. package/lib/components/sharing-bar/SharingBar.styles.js.map +1 -0
  325. package/lib/components/slider/Slider.d.ts +21 -0
  326. package/lib/components/slider/Slider.js +51 -0
  327. package/lib/components/slider/Slider.js.map +1 -0
  328. package/lib/components/slider/Slider.styles.d.ts +10 -0
  329. package/lib/components/slider/Slider.styles.js +74 -0
  330. package/lib/components/slider/Slider.styles.js.map +1 -0
  331. package/lib/components/small-wait-cursor/SmallWaitCursor.d.ts +31 -0
  332. package/lib/components/small-wait-cursor/SmallWaitCursor.js +42 -0
  333. package/lib/components/small-wait-cursor/SmallWaitCursor.js.map +1 -0
  334. package/lib/components/small-wait-cursor/SmallWaitCursor.styles.d.ts +19 -0
  335. package/lib/components/small-wait-cursor/SmallWaitCursor.styles.js +101 -0
  336. package/lib/components/small-wait-cursor/SmallWaitCursor.styles.js.map +1 -0
  337. package/lib/components/text-area/TextArea.d.ts +29 -0
  338. package/lib/components/text-area/TextArea.js +72 -0
  339. package/lib/components/text-area/TextArea.js.map +1 -0
  340. package/lib/components/text-area/TextArea.styles.d.ts +13 -0
  341. package/lib/components/text-area/TextArea.styles.js +79 -0
  342. package/lib/components/text-area/TextArea.styles.js.map +1 -0
  343. package/lib/components/tooltip/Tooltip.d.ts +18 -0
  344. package/lib/components/tooltip/Tooltip.js +32 -0
  345. package/lib/components/tooltip/Tooltip.js.map +1 -0
  346. package/lib/components/tooltip/Tooltip.styles.d.ts +2 -0
  347. package/lib/components/tooltip/Tooltip.styles.js +10 -0
  348. package/lib/components/tooltip/Tooltip.styles.js.map +1 -0
  349. package/lib/components/tooltip/interface.d.ts +4 -0
  350. package/lib/components/tooltip/interface.js +2 -0
  351. package/lib/components/tooltip/interface.js.map +1 -0
  352. package/lib/components/tooltip/tooltip-item/TooltipItem.d.ts +7 -0
  353. package/lib/components/tooltip/tooltip-item/TooltipItem.js +20 -0
  354. package/lib/components/tooltip/tooltip-item/TooltipItem.js.map +1 -0
  355. package/lib/components/tooltip/tooltip-item/TooltipItem.styles.d.ts +8 -0
  356. package/lib/components/tooltip/tooltip-item/TooltipItem.styles.js +29 -0
  357. package/lib/components/tooltip/tooltip-item/TooltipItem.styles.js.map +1 -0
  358. package/lib/components/truncation/Truncation.d.ts +25 -0
  359. package/lib/components/truncation/Truncation.js +86 -0
  360. package/lib/components/truncation/Truncation.js.map +1 -0
  361. package/lib/components/truncation/Truncation.styles.d.ts +270 -0
  362. package/lib/components/truncation/Truncation.styles.js +27 -0
  363. package/lib/components/truncation/Truncation.styles.js.map +1 -0
  364. package/lib/constants/codeHighlighter.d.ts +7 -0
  365. package/lib/constants/codeHighlighter.js +13 -0
  366. package/lib/constants/codeHighlighter.js.map +1 -0
  367. package/lib/hooks/colorMode.d.ts +2 -0
  368. package/lib/hooks/colorMode.js +22 -0
  369. package/lib/hooks/colorMode.js.map +1 -0
  370. package/lib/hooks/uuid.js.map +1 -1
  371. package/lib/index.d.ts +40 -0
  372. package/lib/index.js +237 -0
  373. package/lib/index.js.map +1 -1
  374. package/lib/types/chayns.d.ts +59 -0
  375. package/lib/types/chayns.js +3 -4
  376. package/lib/types/chayns.js.map +1 -1
  377. package/lib/types/codeHighlighter.d.ts +10 -0
  378. package/lib/types/codeHighlighter.js +12 -0
  379. package/lib/types/codeHighlighter.js.map +1 -0
  380. package/lib/types/comboBox.d.ts +4 -0
  381. package/lib/types/comboBox.js +12 -0
  382. package/lib/types/comboBox.js.map +1 -0
  383. package/lib/types/file.d.ts +42 -0
  384. package/lib/types/file.js +2 -0
  385. package/lib/types/file.js.map +1 -0
  386. package/lib/types/parser/prettier-parser-babel.d.js +2 -0
  387. package/lib/types/parser/prettier-parser-babel.d.js.map +1 -0
  388. package/lib/types/parser/prettier-parser-graphql.d.js +2 -0
  389. package/lib/types/parser/prettier-parser-graphql.d.js.map +1 -0
  390. package/lib/types/parser/prettier-parser-html.d.js +2 -0
  391. package/lib/types/parser/prettier-parser-html.d.js.map +1 -0
  392. package/lib/types/parser/prettier-parser-markdown.d.js +2 -0
  393. package/lib/types/parser/prettier-parser-markdown.d.js.map +1 -0
  394. package/lib/types/parser/prettier-parser-postcss.d.js +2 -0
  395. package/lib/types/parser/prettier-parser-postcss.d.js.map +1 -0
  396. package/lib/types/parser/prettier-parser-yaml.d.js +2 -0
  397. package/lib/types/parser/prettier-parser-yaml.d.js.map +1 -0
  398. package/lib/utils/calculate.d.ts +3 -0
  399. package/lib/utils/calculate.js +49 -0
  400. package/lib/utils/calculate.js.map +1 -0
  401. package/lib/utils/codeHighlighter.d.ts +4 -0
  402. package/lib/utils/codeHighlighter.js +361 -0
  403. package/lib/utils/codeHighlighter.js.map +1 -0
  404. package/lib/utils/file.d.ts +363 -0
  405. package/lib/utils/file.js +402 -0
  406. package/lib/utils/file.js.map +1 -0
  407. package/lib/utils/fileDialog.d.ts +7 -0
  408. package/lib/utils/fileDialog.js +73 -0
  409. package/lib/utils/fileDialog.js.map +1 -0
  410. package/lib/utils/isTobitEmployee.d.ts +1 -0
  411. package/lib/utils/isTobitEmployee.js +28 -0
  412. package/lib/utils/isTobitEmployee.js.map +1 -0
  413. package/lib/utils/truncation.d.ts +1 -0
  414. package/lib/utils/truncation.js +34 -0
  415. package/lib/utils/truncation.js.map +1 -0
  416. package/lib/utils/uploadFile.d.ts +9 -0
  417. package/lib/utils/uploadFile.js +47 -0
  418. package/lib/utils/uploadFile.js.map +1 -0
  419. package/package.json +29 -21
@@ -1 +1 @@
1
- {"version":3,"file":"GridImage.styles.js","names":["StyledGridImage","styled","div","theme","shouldShowRoundImage","undefined","size","StyledGridLeftImage","img","isHidden","StyledGridTopRightImage","StyledGridBottomRightImage"],"sources":["../../../src/components/grid-image/GridImage.styles.ts"],"sourcesContent":["import styled from 'styled-components';\nimport type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledGridImageProps = WithTheme<{\n shouldShowRoundImage?: boolean;\n size: number;\n}>;\n\nexport const StyledGridImage = styled.div<StyledGridImageProps>`\n background-color: rgba(${({ theme }: StyledGridImageProps) => theme['text-rgb']}, 0.1);\n border-radius: ${({ shouldShowRoundImage }) => (shouldShowRoundImage ? '50%' : undefined)};\n box-shadow: 0 0 0 1px rgba(${({ theme }: StyledGridImageProps) => theme['009-rgb']}, 0.08) inset;\n height: ${({ size }) => size}px;\n overflow: hidden;\n position: relative;\n transition: border-radius 0.3s ease;\n width: ${({ size }) => size}px;\n`;\n\ntype StyledGridLeftImageProps = {\n isHidden: boolean;\n size: number;\n};\n\nexport const StyledGridLeftImage = styled.img<StyledGridLeftImageProps>`\n border-right: ${({ size }) => size / 40}px solid white;\n height: 100%;\n left: 0;\n object-fit: cover;\n opacity: ${({ isHidden }) => (isHidden ? 0 : 1)};\n position: absolute;\n top: 0;\n transition: opacity 0.4s ease;\n width: 60%;\n`;\n\ntype StyledGridTopRightImageProps = {\n isHidden: boolean;\n size: number;\n};\n\nexport const StyledGridTopRightImage = styled.img<StyledGridTopRightImageProps>`\n border-bottom: ${({ size }) => size / 40}px solid white;\n height: 50%;\n object-fit: cover;\n opacity: ${({ isHidden }) => (isHidden ? 0 : 1)};\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 0.3s ease;\n width: 40%;\n`;\n\ntype StyledGridBottomRightImageProps = {\n isHidden: boolean;\n};\n\nexport const StyledGridBottomRightImage = styled.img<StyledGridBottomRightImageProps>`\n bottom: 0;\n height: 50%;\n object-fit: cover;\n opacity: ${({ isHidden }) => (isHidden ? 0 : 1)};\n position: absolute;\n right: 0;\n transition: opacity 0.3s ease;\n width: 40%;\n`;\n"],"mappings":";;;;;;AAAA;AAAuC;AAQhC,MAAMA,eAAe,GAAGC,yBAAM,CAACC,GAA0B;AAChE,6BAA6B;EAAA,IAAC;IAAEC;EAA4B,CAAC;EAAA,OAAKA,KAAK,CAAC,UAAU,CAAC;AAAA,CAAC;AACpF,qBAAqB;EAAA,IAAC;IAAEC;EAAqB,CAAC;EAAA,OAAMA,oBAAoB,GAAG,KAAK,GAAGC,SAAS;AAAA,CAAE;AAC9F,iCAAiC;EAAA,IAAC;IAAEF;EAA4B,CAAC;EAAA,OAAKA,KAAK,CAAC,SAAS,CAAC;AAAA,CAAC;AACvF,cAAc;EAAA,IAAC;IAAEG;EAAK,CAAC;EAAA,OAAKA,IAAI;AAAA,CAAC;AACjC;AACA;AACA;AACA,aAAa;EAAA,IAAC;IAAEA;EAAK,CAAC;EAAA,OAAKA,IAAI;AAAA,CAAC;AAChC,CAAC;AAAC;AAOK,MAAMC,mBAAmB,GAAGN,yBAAM,CAACO,GAA8B;AACxE,oBAAoB;EAAA,IAAC;IAAEF;EAAK,CAAC;EAAA,OAAKA,IAAI,GAAG,EAAE;AAAA,CAAC;AAC5C;AACA;AACA;AACA,eAAe;EAAA,IAAC;IAAEG;EAAS,CAAC;EAAA,OAAMA,QAAQ,GAAG,CAAC,GAAG,CAAC;AAAA,CAAE;AACpD;AACA;AACA;AACA;AACA,CAAC;AAAC;AAOK,MAAMC,uBAAuB,GAAGT,yBAAM,CAACO,GAAkC;AAChF,qBAAqB;EAAA,IAAC;IAAEF;EAAK,CAAC;EAAA,OAAKA,IAAI,GAAG,EAAE;AAAA,CAAC;AAC7C;AACA;AACA,eAAe;EAAA,IAAC;IAAEG;EAAS,CAAC;EAAA,OAAMA,QAAQ,GAAG,CAAC,GAAG,CAAC;AAAA,CAAE;AACpD;AACA;AACA;AACA;AACA;AACA,CAAC;AAAC;AAMK,MAAME,0BAA0B,GAAGV,yBAAM,CAACO,GAAqC;AACtF;AACA;AACA;AACA,eAAe;EAAA,IAAC;IAAEC;EAAS,CAAC;EAAA,OAAMA,QAAQ,GAAG,CAAC,GAAG,CAAC;AAAA,CAAE;AACpD;AACA;AACA;AACA;AACA,CAAC;AAAC"}
1
+ {"version":3,"file":"GridImage.styles.js","names":["_styledComponents","_interopRequireDefault","require","obj","__esModule","default","StyledGridImage","exports","styled","div","_ref","theme","_ref2","shouldShowRoundImage","undefined","_ref3","_ref4","size","_ref5","StyledGridLeftImage","img","_ref6","_ref7","isHidden","StyledGridTopRightImage","_ref8","_ref9","StyledGridBottomRightImage","_ref10"],"sources":["../../../src/components/grid-image/GridImage.styles.ts"],"sourcesContent":["import styled from 'styled-components';\nimport type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledGridImageProps = WithTheme<{\n shouldShowRoundImage?: boolean;\n size: number;\n}>;\n\nexport const StyledGridImage = styled.div<StyledGridImageProps>`\n background-color: rgba(${({ theme }: StyledGridImageProps) => theme['text-rgb']}, 0.1);\n border-radius: ${({ shouldShowRoundImage }) => (shouldShowRoundImage ? '50%' : undefined)};\n box-shadow: 0 0 0 1px rgba(${({ theme }: StyledGridImageProps) => theme['009-rgb']}, 0.08) inset;\n height: ${({ size }) => size}px;\n overflow: hidden;\n position: relative;\n transition: border-radius 0.3s ease;\n width: ${({ size }) => size}px;\n`;\n\ntype StyledGridLeftImageProps = {\n isHidden: boolean;\n size: number;\n};\n\nexport const StyledGridLeftImage = styled.img<StyledGridLeftImageProps>`\n border-right: ${({ size }) => size / 40}px solid white;\n height: 100%;\n left: 0;\n object-fit: cover;\n opacity: ${({ isHidden }) => (isHidden ? 0 : 1)};\n position: absolute;\n top: 0;\n transition: opacity 0.4s ease;\n width: 60%;\n`;\n\ntype StyledGridTopRightImageProps = {\n isHidden: boolean;\n size: number;\n};\n\nexport const StyledGridTopRightImage = styled.img<StyledGridTopRightImageProps>`\n border-bottom: ${({ size }) => size / 40}px solid white;\n height: 50%;\n object-fit: cover;\n opacity: ${({ isHidden }) => (isHidden ? 0 : 1)};\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 0.3s ease;\n width: 40%;\n`;\n\ntype StyledGridBottomRightImageProps = {\n isHidden: boolean;\n};\n\nexport const StyledGridBottomRightImage = styled.img<StyledGridBottomRightImageProps>`\n bottom: 0;\n height: 50%;\n object-fit: cover;\n opacity: ${({ isHidden }) => (isHidden ? 0 : 1)};\n position: absolute;\n right: 0;\n transition: opacity 0.3s ease;\n width: 40%;\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAuC,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAQhC,MAAMG,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAGE,yBAAM,CAACC,GAA0B;AAChE,6BAA6BC,IAAA;EAAA,IAAC;IAAEC;EAA4B,CAAC,GAAAD,IAAA;EAAA,OAAKC,KAAK,CAAC,UAAU,CAAC;AAAA,CAAC;AACpF,qBAAqBC,KAAA;EAAA,IAAC;IAAEC;EAAqB,CAAC,GAAAD,KAAA;EAAA,OAAMC,oBAAoB,GAAG,KAAK,GAAGC,SAAS;AAAA,CAAE;AAC9F,iCAAiCC,KAAA;EAAA,IAAC;IAAEJ;EAA4B,CAAC,GAAAI,KAAA;EAAA,OAAKJ,KAAK,CAAC,SAAS,CAAC;AAAA,CAAC;AACvF,cAAcK,KAAA;EAAA,IAAC;IAAEC;EAAK,CAAC,GAAAD,KAAA;EAAA,OAAKC,IAAI;AAAA,CAAC;AACjC;AACA;AACA;AACA,aAAaC,KAAA;EAAA,IAAC;IAAED;EAAK,CAAC,GAAAC,KAAA;EAAA,OAAKD,IAAI;AAAA,CAAC;AAChC,CAAC;AAOM,MAAME,mBAAmB,GAAAZ,OAAA,CAAAY,mBAAA,GAAGX,yBAAM,CAACY,GAA8B;AACxE,oBAAoBC,KAAA;EAAA,IAAC;IAAEJ;EAAK,CAAC,GAAAI,KAAA;EAAA,OAAKJ,IAAI,GAAG,EAAE;AAAA,CAAC;AAC5C;AACA;AACA;AACA,eAAeK,KAAA;EAAA,IAAC;IAAEC;EAAS,CAAC,GAAAD,KAAA;EAAA,OAAMC,QAAQ,GAAG,CAAC,GAAG,CAAC;AAAA,CAAE;AACpD;AACA;AACA;AACA;AACA,CAAC;AAOM,MAAMC,uBAAuB,GAAAjB,OAAA,CAAAiB,uBAAA,GAAGhB,yBAAM,CAACY,GAAkC;AAChF,qBAAqBK,KAAA;EAAA,IAAC;IAAER;EAAK,CAAC,GAAAQ,KAAA;EAAA,OAAKR,IAAI,GAAG,EAAE;AAAA,CAAC;AAC7C;AACA;AACA,eAAeS,KAAA;EAAA,IAAC;IAAEH;EAAS,CAAC,GAAAG,KAAA;EAAA,OAAMH,QAAQ,GAAG,CAAC,GAAG,CAAC;AAAA,CAAE;AACpD;AACA;AACA;AACA;AACA;AACA,CAAC;AAMM,MAAMI,0BAA0B,GAAApB,OAAA,CAAAoB,0BAAA,GAAGnB,yBAAM,CAACY,GAAqC;AACtF;AACA;AACA;AACA,eAAeQ,MAAA;EAAA,IAAC;IAAEL;EAAS,CAAC,GAAAK,MAAA;EAAA,OAAML,QAAQ,GAAG,CAAC,GAAG,CAAC;AAAA,CAAE;AACpD;AACA;AACA;AACA;AACA,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { FC, MouseEventHandler } from 'react';
2
- export declare type IconProps = {
2
+ export type IconProps = {
3
3
  /**
4
4
  * Additional class names for the root element
5
5
  */
@@ -55,7 +55,7 @@ const Icon = _ref => {
55
55
  size: size
56
56
  }, icons.map(icon => {
57
57
  const stackSizeFactor = (0, _utils.getStackSizeFactor)(icon);
58
- const iconClasses = (0, _clsx.default)(icon, className, {
58
+ const iconClasses = (0, _clsx.default)(icon, {
59
59
  'fa-stack-1x': shouldUseStackedIcon && stackSizeFactor === undefined
60
60
  });
61
61
  return /*#__PURE__*/_react.default.createElement(_Icon.StyledIcon, {
@@ -69,6 +69,5 @@ const Icon = _ref => {
69
69
  }));
70
70
  };
71
71
  Icon.displayName = 'Icon';
72
- var _default = Icon;
73
- exports.default = _default;
72
+ var _default = exports.default = Icon;
74
73
  //# sourceMappingURL=Icon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","names":["Icon","className","color","icons","isDisabled","onClick","onDoubleClick","onMouseDown","size","shouldStopPropagation","handleClick","event","stopPropagation","handleDoubleClick","maxStackSizeFactor","forEach","icon","stackSizeFactor","getStackSizeFactor","shouldUseStackedIcon","length","wrapperClasses","clsx","undefined","map","iconClasses","includes","displayName"],"sources":["../../../src/components/icon/Icon.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport React, { FC, MouseEventHandler } from 'react';\nimport { StyledIcon, StyledIconWrapper } from './Icon.styles';\nimport { getStackSizeFactor } from './utils';\n\nexport type IconProps = {\n /**\n * Additional class names for the root element\n */\n className?: string;\n /**\n * The color of the icon\n */\n color?: string;\n /**\n * The FontAwesome or tobit icons to render. Multiple icons are stacked.\n */\n icons: string[];\n /**\n * Disables the icon so that it cannot be clicked anymore\n */\n isDisabled?: boolean;\n /**\n * Function to be executed when the icon was clicked\n */\n onClick?: MouseEventHandler<HTMLSpanElement>;\n /**\n * Function to be executed when the icon was double-clicked\n */\n onDoubleClick?: MouseEventHandler<HTMLSpanElement>;\n /**\n * Function to be executed when a mouse button is pressed on the icon\n */\n onMouseDown?: MouseEventHandler<HTMLSpanElement>;\n /**\n * Size of the icon in pixel\n */\n size?: number;\n /**\n * Stops event propagation on click\n */\n shouldStopPropagation?: boolean;\n};\n\nconst Icon: FC<IconProps> = ({\n className,\n color,\n icons,\n isDisabled,\n onClick,\n onDoubleClick,\n onMouseDown,\n size = 15,\n shouldStopPropagation,\n}) => {\n const handleClick: MouseEventHandler<HTMLSpanElement> = (event) => {\n if (shouldStopPropagation) {\n event.stopPropagation();\n }\n\n if (typeof onClick === 'function') {\n onClick(event);\n }\n };\n\n const handleDoubleClick: MouseEventHandler<HTMLSpanElement> = (event) => {\n if (shouldStopPropagation) {\n event.stopPropagation();\n }\n\n if (typeof onDoubleClick === 'function') {\n onDoubleClick(event);\n }\n };\n\n let maxStackSizeFactor = 1;\n\n icons.forEach((icon) => {\n const stackSizeFactor = getStackSizeFactor(icon);\n\n if (stackSizeFactor && stackSizeFactor > maxStackSizeFactor) {\n maxStackSizeFactor = stackSizeFactor;\n }\n });\n\n const shouldUseStackedIcon = icons.length > 1;\n\n const wrapperClasses = clsx(\n 'beta-chayns-icon',\n shouldUseStackedIcon ? 'fa-stack' : '',\n className\n );\n\n return (\n <StyledIconWrapper\n className={wrapperClasses}\n isDisabled={isDisabled}\n onClick={typeof onClick === 'function' ? handleClick : undefined}\n onDoubleClick={typeof onDoubleClick === 'function' ? handleDoubleClick : undefined}\n onMouseDown={onMouseDown}\n size={size}\n >\n {icons.map((icon) => {\n const stackSizeFactor = getStackSizeFactor(icon);\n\n const iconClasses = clsx(icon, className, {\n 'fa-stack-1x': shouldUseStackedIcon && stackSizeFactor === undefined,\n });\n\n return (\n <StyledIcon\n className={iconClasses}\n color={icon.includes('fa-inverse') ? 'white' : color}\n fontSize={((stackSizeFactor || 1) / maxStackSizeFactor) * size}\n isStacked={shouldUseStackedIcon}\n key={icon}\n size={size}\n />\n );\n })}\n </StyledIconWrapper>\n );\n};\n\nIcon.displayName = 'Icon';\n\nexport default Icon;\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AAA6C;AAyC7C,MAAMA,IAAmB,GAAG,QAUtB;EAAA,IAVuB;IACzBC,SAAS;IACTC,KAAK;IACLC,KAAK;IACLC,UAAU;IACVC,OAAO;IACPC,aAAa;IACbC,WAAW;IACXC,IAAI,GAAG,EAAE;IACTC;EACJ,CAAC;EACG,MAAMC,WAA+C,GAAIC,KAAK,IAAK;IAC/D,IAAIF,qBAAqB,EAAE;MACvBE,KAAK,CAACC,eAAe,EAAE;IAC3B;IAEA,IAAI,OAAOP,OAAO,KAAK,UAAU,EAAE;MAC/BA,OAAO,CAACM,KAAK,CAAC;IAClB;EACJ,CAAC;EAED,MAAME,iBAAqD,GAAIF,KAAK,IAAK;IACrE,IAAIF,qBAAqB,EAAE;MACvBE,KAAK,CAACC,eAAe,EAAE;IAC3B;IAEA,IAAI,OAAON,aAAa,KAAK,UAAU,EAAE;MACrCA,aAAa,CAACK,KAAK,CAAC;IACxB;EACJ,CAAC;EAED,IAAIG,kBAAkB,GAAG,CAAC;EAE1BX,KAAK,CAACY,OAAO,CAAEC,IAAI,IAAK;IACpB,MAAMC,eAAe,GAAG,IAAAC,yBAAkB,EAACF,IAAI,CAAC;IAEhD,IAAIC,eAAe,IAAIA,eAAe,GAAGH,kBAAkB,EAAE;MACzDA,kBAAkB,GAAGG,eAAe;IACxC;EACJ,CAAC,CAAC;EAEF,MAAME,oBAAoB,GAAGhB,KAAK,CAACiB,MAAM,GAAG,CAAC;EAE7C,MAAMC,cAAc,GAAG,IAAAC,aAAI,EACvB,kBAAkB,EAClBH,oBAAoB,GAAG,UAAU,GAAG,EAAE,EACtClB,SAAS,CACZ;EAED,oBACI,6BAAC,uBAAiB;IACd,SAAS,EAAEoB,cAAe;IAC1B,UAAU,EAAEjB,UAAW;IACvB,OAAO,EAAE,OAAOC,OAAO,KAAK,UAAU,GAAGK,WAAW,GAAGa,SAAU;IACjE,aAAa,EAAE,OAAOjB,aAAa,KAAK,UAAU,GAAGO,iBAAiB,GAAGU,SAAU;IACnF,WAAW,EAAEhB,WAAY;IACzB,IAAI,EAAEC;EAAK,GAEVL,KAAK,CAACqB,GAAG,CAAER,IAAI,IAAK;IACjB,MAAMC,eAAe,GAAG,IAAAC,yBAAkB,EAACF,IAAI,CAAC;IAEhD,MAAMS,WAAW,GAAG,IAAAH,aAAI,EAACN,IAAI,EAAEf,SAAS,EAAE;MACtC,aAAa,EAAEkB,oBAAoB,IAAIF,eAAe,KAAKM;IAC/D,CAAC,CAAC;IAEF,oBACI,6BAAC,gBAAU;MACP,SAAS,EAAEE,WAAY;MACvB,KAAK,EAAET,IAAI,CAACU,QAAQ,CAAC,YAAY,CAAC,GAAG,OAAO,GAAGxB,KAAM;MACrD,QAAQ,EAAG,CAACe,eAAe,IAAI,CAAC,IAAIH,kBAAkB,GAAIN,IAAK;MAC/D,SAAS,EAAEW,oBAAqB;MAChC,GAAG,EAAEH,IAAK;MACV,IAAI,EAAER;IAAK,EACb;EAEV,CAAC,CAAC,CACc;AAE5B,CAAC;AAEDR,IAAI,CAAC2B,WAAW,GAAG,MAAM;AAAC,eAEX3B,IAAI;AAAA"}
1
+ {"version":3,"file":"Icon.js","names":["_clsx","_interopRequireDefault","require","_react","_Icon","_utils","obj","__esModule","default","Icon","_ref","className","color","icons","isDisabled","onClick","onDoubleClick","onMouseDown","size","shouldStopPropagation","handleClick","event","stopPropagation","handleDoubleClick","maxStackSizeFactor","forEach","icon","stackSizeFactor","getStackSizeFactor","shouldUseStackedIcon","length","wrapperClasses","clsx","createElement","StyledIconWrapper","undefined","map","iconClasses","StyledIcon","includes","fontSize","isStacked","key","displayName","_default","exports"],"sources":["../../../src/components/icon/Icon.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport React, { FC, MouseEventHandler } from 'react';\nimport { StyledIcon, StyledIconWrapper } from './Icon.styles';\nimport { getStackSizeFactor } from './utils';\n\nexport type IconProps = {\n /**\n * Additional class names for the root element\n */\n className?: string;\n /**\n * The color of the icon\n */\n color?: string;\n /**\n * The FontAwesome or tobit icons to render. Multiple icons are stacked.\n */\n icons: string[];\n /**\n * Disables the icon so that it cannot be clicked anymore\n */\n isDisabled?: boolean;\n /**\n * Function to be executed when the icon was clicked\n */\n onClick?: MouseEventHandler<HTMLSpanElement>;\n /**\n * Function to be executed when the icon was double-clicked\n */\n onDoubleClick?: MouseEventHandler<HTMLSpanElement>;\n /**\n * Function to be executed when a mouse button is pressed on the icon\n */\n onMouseDown?: MouseEventHandler<HTMLSpanElement>;\n /**\n * Size of the icon in pixel\n */\n size?: number;\n /**\n * Stops event propagation on click\n */\n shouldStopPropagation?: boolean;\n};\n\nconst Icon: FC<IconProps> = ({\n className,\n color,\n icons,\n isDisabled,\n onClick,\n onDoubleClick,\n onMouseDown,\n size = 15,\n shouldStopPropagation,\n}) => {\n const handleClick: MouseEventHandler<HTMLSpanElement> = (event) => {\n if (shouldStopPropagation) {\n event.stopPropagation();\n }\n\n if (typeof onClick === 'function') {\n onClick(event);\n }\n };\n\n const handleDoubleClick: MouseEventHandler<HTMLSpanElement> = (event) => {\n if (shouldStopPropagation) {\n event.stopPropagation();\n }\n\n if (typeof onDoubleClick === 'function') {\n onDoubleClick(event);\n }\n };\n\n let maxStackSizeFactor = 1;\n\n icons.forEach((icon) => {\n const stackSizeFactor = getStackSizeFactor(icon);\n\n if (stackSizeFactor && stackSizeFactor > maxStackSizeFactor) {\n maxStackSizeFactor = stackSizeFactor;\n }\n });\n\n const shouldUseStackedIcon = icons.length > 1;\n\n const wrapperClasses = clsx(\n 'beta-chayns-icon',\n shouldUseStackedIcon ? 'fa-stack' : '',\n className,\n );\n\n return (\n <StyledIconWrapper\n className={wrapperClasses}\n isDisabled={isDisabled}\n onClick={typeof onClick === 'function' ? handleClick : undefined}\n onDoubleClick={typeof onDoubleClick === 'function' ? handleDoubleClick : undefined}\n onMouseDown={onMouseDown}\n size={size}\n >\n {icons.map((icon) => {\n const stackSizeFactor = getStackSizeFactor(icon);\n\n const iconClasses = clsx(icon, {\n 'fa-stack-1x': shouldUseStackedIcon && stackSizeFactor === undefined,\n });\n\n return (\n <StyledIcon\n className={iconClasses}\n color={icon.includes('fa-inverse') ? 'white' : color}\n fontSize={((stackSizeFactor || 1) / maxStackSizeFactor) * size}\n isStacked={shouldUseStackedIcon}\n key={icon}\n size={size}\n />\n );\n })}\n </StyledIconWrapper>\n );\n};\n\nIcon.displayName = 'Icon';\n\nexport default Icon;\n"],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  import type { MouseEventHandler } from 'react';
2
+ import type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';
2
3
  import type { IconProps } from './Icon';
3
- declare type StyledIconWrapperProps = {
4
+ type StyledIconWrapperProps = {
4
5
  isDisabled?: boolean;
5
6
  onClick?: MouseEventHandler<HTMLSpanElement>;
6
7
  size: number;
7
8
  };
8
- export declare const StyledIconWrapper: import("styled-components").StyledComponent<"span", any, StyledIconWrapperProps, never>;
9
- export declare const StyledIcon: import("styled-components").StyledComponent<"i", any, Omit<IconProps, "icons"> & {
9
+ export declare const StyledIconWrapper: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, StyledIconWrapperProps>>;
10
+ type StyledIconProps = Omit<IconProps, 'icons'> & WithTheme<{
10
11
  fontSize: number;
11
- isStacked?: boolean | undefined;
12
- } & {
13
- theme: import("../color-scheme-provider/ColorSchemeProvider").Theme;
14
- }, never>;
12
+ isStacked?: boolean;
13
+ }>;
14
+ export declare const StyledIcon: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, StyledIconProps>>;
15
15
  export {};
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.StyledIconWrapper = exports.StyledIcon = void 0;
7
7
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
8
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
9
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
10
- const StyledIconWrapper = _styledComponents.default.span`
8
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
+ const StyledIconWrapper = exports.StyledIconWrapper = _styledComponents.default.span`
11
11
  align-items: center;
12
12
  cursor: ${_ref => {
13
13
  let {
@@ -17,7 +17,7 @@ const StyledIconWrapper = _styledComponents.default.span`
17
17
  return typeof onClick === 'function' && !isDisabled ? 'pointer' : 'inherit';
18
18
  }};
19
19
  display: inline-flex;
20
- height: ${_ref2 => {
20
+ min-height: ${_ref2 => {
21
21
  let {
22
22
  size
23
23
  } = _ref2;
@@ -32,15 +32,14 @@ const StyledIconWrapper = _styledComponents.default.span`
32
32
  }};
33
33
  position: relative;
34
34
  transition: opacity 0.3s ease;
35
- width: ${_ref4 => {
35
+ min-width: ${_ref4 => {
36
36
  let {
37
37
  size
38
38
  } = _ref4;
39
39
  return `${size}px`;
40
40
  }};
41
41
  `;
42
- exports.StyledIconWrapper = StyledIconWrapper;
43
- const StyledIcon = _styledComponents.default.i`
42
+ const StyledIcon = exports.StyledIcon = _styledComponents.default.i`
44
43
  color: ${_ref5 => {
45
44
  let {
46
45
  color,
@@ -72,5 +71,4 @@ const StyledIcon = _styledComponents.default.i`
72
71
  `;
73
72
  }}
74
73
  `;
75
- exports.StyledIcon = StyledIcon;
76
74
  //# sourceMappingURL=Icon.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.styles.js","names":["StyledIconWrapper","styled","span","isDisabled","onClick","size","StyledIcon","i","color","theme","headline","isStacked","undefined","fontSize","css"],"sources":["../../../src/components/icon/Icon.styles.ts"],"sourcesContent":["import type { MouseEventHandler } from 'react';\nimport styled, { css } from 'styled-components';\nimport type { IconProps } from './Icon';\nimport type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledIconWrapperProps = {\n isDisabled?: boolean;\n onClick?: MouseEventHandler<HTMLSpanElement>;\n size: number;\n};\n\nexport const StyledIconWrapper = styled.span<StyledIconWrapperProps>`\n align-items: center;\n cursor: ${({ isDisabled, onClick }) =>\n typeof onClick === 'function' && !isDisabled ? 'pointer' : 'inherit'};\n display: inline-flex;\n height: ${({ size }) => `${size}px`};\n justify-content: center;\n opacity: ${({ isDisabled }) => (isDisabled ? 0.5 : 1)};\n position: relative;\n transition: opacity 0.3s ease;\n width: ${({ size }) => `${size}px`};\n`;\n\ntype StyledIconProps = Omit<IconProps, 'icons'> &\n WithTheme<{\n fontSize: number;\n isStacked?: boolean;\n }>;\n\nexport const StyledIcon = styled.i<StyledIconProps>`\n color: ${({ color, theme }: StyledIconProps) => color || theme.headline};\n display: ${({ isStacked }) => (isStacked ? undefined : 'inline-flex')};\n font-size: ${({ fontSize }) => `${fontSize}px`};\n\n ${({ fontSize, size }) =>\n fontSize !== size &&\n css`\n top: 50%;\n transform: translateY(-50%);\n `}\n`;\n"],"mappings":";;;;;;AACA;AAAgD;AAAA;AAUzC,MAAMA,iBAAiB,GAAGC,yBAAM,CAACC,IAA6B;AACrE;AACA,cAAc;EAAA,IAAC;IAAEC,UAAU;IAAEC;EAAQ,CAAC;EAAA,OAC9B,OAAOA,OAAO,KAAK,UAAU,IAAI,CAACD,UAAU,GAAG,SAAS,GAAG,SAAS;AAAA,CAAC;AAC7E;AACA,cAAc;EAAA,IAAC;IAAEE;EAAK,CAAC;EAAA,OAAM,GAAEA,IAAK,IAAG;AAAA,CAAC;AACxC;AACA,eAAe;EAAA,IAAC;IAAEF;EAAW,CAAC;EAAA,OAAMA,UAAU,GAAG,GAAG,GAAG,CAAC;AAAA,CAAE;AAC1D;AACA;AACA,aAAa;EAAA,IAAC;IAAEE;EAAK,CAAC;EAAA,OAAM,GAAEA,IAAK,IAAG;AAAA,CAAC;AACvC,CAAC;AAAC;AAQK,MAAMC,UAAU,GAAGL,yBAAM,CAACM,CAAmB;AACpD,aAAa;EAAA,IAAC;IAAEC,KAAK;IAAEC;EAAuB,CAAC;EAAA,OAAKD,KAAK,IAAIC,KAAK,CAACC,QAAQ;AAAA,CAAC;AAC5E,eAAe;EAAA,IAAC;IAAEC;EAAU,CAAC;EAAA,OAAMA,SAAS,GAAGC,SAAS,GAAG,aAAa;AAAA,CAAE;AAC1E,iBAAiB;EAAA,IAAC;IAAEC;EAAS,CAAC;EAAA,OAAM,GAAEA,QAAS,IAAG;AAAA,CAAC;AACnD;AACA,MAAM;EAAA,IAAC;IAAEA,QAAQ;IAAER;EAAK,CAAC;EAAA,OACjBQ,QAAQ,KAAKR,IAAI,IACjB,IAAAS,qBAAG,CAAC;AACZ;AACA;AACA,SAAS;AAAA,CAAC;AACV,CAAC;AAAC"}
1
+ {"version":3,"file":"Icon.styles.js","names":["_styledComponents","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","StyledIconWrapper","exports","styled","span","_ref","isDisabled","onClick","_ref2","size","_ref3","_ref4","StyledIcon","_ref5","color","theme","headline","_ref6","isStacked","undefined","_ref7","fontSize","_ref8","css"],"sources":["../../../src/components/icon/Icon.styles.ts"],"sourcesContent":["import type { MouseEventHandler } from 'react';\nimport styled, { css } from 'styled-components';\nimport type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';\nimport type { IconProps } from './Icon';\n\ntype StyledIconWrapperProps = {\n isDisabled?: boolean;\n onClick?: MouseEventHandler<HTMLSpanElement>;\n size: number;\n};\n\nexport const StyledIconWrapper = styled.span<StyledIconWrapperProps>`\n align-items: center;\n cursor: ${({ isDisabled, onClick }) =>\n typeof onClick === 'function' && !isDisabled ? 'pointer' : 'inherit'};\n display: inline-flex;\n min-height: ${({ size }) => `${size}px`};\n justify-content: center;\n opacity: ${({ isDisabled }) => (isDisabled ? 0.5 : 1)};\n position: relative;\n transition: opacity 0.3s ease;\n min-width: ${({ size }) => `${size}px`};\n`;\n\ntype StyledIconProps = Omit<IconProps, 'icons'> &\n WithTheme<{\n fontSize: number;\n isStacked?: boolean;\n }>;\n\nexport const StyledIcon = styled.i<StyledIconProps>`\n color: ${({ color, theme }: StyledIconProps) => color || theme.headline};\n display: ${({ isStacked }) => (isStacked ? undefined : 'inline-flex')};\n font-size: ${({ fontSize }) => `${fontSize}px`};\n\n ${({ fontSize, size }) =>\n fontSize !== size &&\n css`\n top: 50%;\n transform: translateY(-50%);\n `}\n`;\n"],"mappings":"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"}
@@ -5,8 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.getStackSizeFactor = void 0;
7
7
  const getStackSizeFactor = icon => {
8
- var _icon$match;
9
- const sizeFactorString = (_icon$match = icon.match(/fa-stack-([\d])x/)) === null || _icon$match === void 0 ? void 0 : _icon$match[1];
8
+ const sizeFactorString = icon.match(/fa-stack-([\d])x/)?.[1];
10
9
  return typeof sizeFactorString === 'string' ? parseInt(sizeFactorString, 10) : undefined;
11
10
  };
12
11
  exports.getStackSizeFactor = getStackSizeFactor;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["getStackSizeFactor","icon","sizeFactorString","match","parseInt","undefined"],"sources":["../../../src/components/icon/utils.ts"],"sourcesContent":["export const getStackSizeFactor = (icon: string) => {\n const sizeFactorString = icon.match(/fa-stack-([\\d])x/)?.[1];\n\n return typeof sizeFactorString === 'string' ? parseInt(sizeFactorString, 10) : undefined;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,kBAAkB,GAAIC,IAAY,IAAK;EAAA;EAChD,MAAMC,gBAAgB,kBAAGD,IAAI,CAACE,KAAK,CAAC,kBAAkB,CAAC,gDAA9B,YAAiC,CAAC,CAAC;EAE5D,OAAO,OAAOD,gBAAgB,KAAK,QAAQ,GAAGE,QAAQ,CAACF,gBAAgB,EAAE,EAAE,CAAC,GAAGG,SAAS;AAC5F,CAAC;AAAC"}
1
+ {"version":3,"file":"utils.js","names":["getStackSizeFactor","icon","sizeFactorString","match","parseInt","undefined","exports"],"sources":["../../../src/components/icon/utils.ts"],"sourcesContent":["export const getStackSizeFactor = (icon: string) => {\n const sizeFactorString = icon.match(/fa-stack-([\\d])x/)?.[1];\n\n return typeof sizeFactorString === 'string' ? parseInt(sizeFactorString, 10) : undefined;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,kBAAkB,GAAIC,IAAY,IAAK;EAChD,MAAMC,gBAAgB,GAAGD,IAAI,CAACE,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;EAE5D,OAAO,OAAOD,gBAAgB,KAAK,QAAQ,GAAGE,QAAQ,CAACF,gBAAgB,EAAE,EAAE,CAAC,GAAGG,SAAS;AAC5F,CAAC;AAACC,OAAA,CAAAN,kBAAA,GAAAA,kBAAA"}
@@ -1,5 +1,21 @@
1
- import { ChangeEventHandler, FC, FocusEventHandler, HTMLInputTypeAttribute, KeyboardEventHandler } from 'react';
2
- export declare type InputProps = {
1
+ import React, { ChangeEventHandler, FocusEventHandler, HTMLInputTypeAttribute, KeyboardEventHandler, ReactNode } from 'react';
2
+ export type InputRef = {
3
+ focus: VoidFunction;
4
+ };
5
+ type InputMode = 'email' | 'search' | 'tel' | 'text' | 'url' | 'none' | 'numeric' | 'decimal' | undefined;
6
+ export type InputProps = {
7
+ /**
8
+ * Icon element to be displayed on the left side of the input field
9
+ */
10
+ iconElement?: ReactNode;
11
+ /**
12
+ * Defines the input mode of the input
13
+ */
14
+ inputMode?: InputMode;
15
+ /**
16
+ * Disables the input so that it cannot be changed anymore
17
+ */
18
+ isDisabled?: boolean;
3
19
  /**
4
20
  * Function that is executed when the input field loses focus
5
21
  */
@@ -20,6 +36,14 @@ export declare type InputProps = {
20
36
  * Placeholder for the input field
21
37
  */
22
38
  placeholder?: string;
39
+ /**
40
+ * Element to be displayed next to or instead of the "placeholder"
41
+ */
42
+ placeholderElement?: ReactNode;
43
+ /**
44
+ * If true, a clear icon is displayed at the end of the input field
45
+ */
46
+ shouldShowClearIcon?: boolean;
23
47
  /**
24
48
  * Input type set for input element (e.g. 'text', 'number' or 'password')
25
49
  */
@@ -28,6 +52,14 @@ export declare type InputProps = {
28
52
  * Value if the input field should be controlled
29
53
  */
30
54
  value?: string;
55
+ /**
56
+ * If true, the input field is focused when the component is mounted
57
+ */
58
+ shouldUseAutoFocus?: boolean;
59
+ /**
60
+ * If true, the input field is marked as invalid
61
+ */
62
+ isInvalid?: boolean;
31
63
  };
32
- declare const Input: FC<InputProps>;
64
+ declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<InputRef>>;
33
65
  export default Input;
@@ -5,26 +5,52 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
+ var _styledComponents = require("styled-components");
9
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
8
10
  var _Input = require("./Input.styles");
9
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
11
- const Input = _ref => {
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
13
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ const Input = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
12
15
  let {
16
+ iconElement,
17
+ inputMode,
18
+ isDisabled,
13
19
  onBlur,
14
20
  onChange,
15
21
  onFocus,
16
22
  onKeyDown,
17
23
  placeholder,
24
+ placeholderElement,
25
+ shouldShowClearIcon = false,
18
26
  type = 'text',
19
- value
27
+ value,
28
+ shouldUseAutoFocus = false,
29
+ isInvalid = false
20
30
  } = _ref;
21
31
  const [hasValue, setHasValue] = (0, _react.useState)(typeof value === 'string' && value !== '');
32
+ const theme = (0, _styledComponents.useTheme)();
33
+ const inputRef = (0, _react.useRef)(null);
34
+ const handleClearIconClick = (0, _react.useCallback)(() => {
35
+ if (inputRef.current) {
36
+ inputRef.current.value = '';
37
+ setHasValue(false);
38
+ if (typeof onChange === 'function') {
39
+ onChange({
40
+ target: inputRef.current
41
+ });
42
+ }
43
+ }
44
+ }, [onChange]);
22
45
  const handleInputFieldChange = (0, _react.useCallback)(event => {
23
46
  setHasValue(event.target.value !== '');
24
47
  if (typeof onChange === 'function') {
25
48
  onChange(event);
26
49
  }
27
50
  }, [onChange]);
51
+ (0, _react.useImperativeHandle)(ref, () => ({
52
+ focus: () => inputRef.current?.focus()
53
+ }), []);
28
54
  (0, _react.useEffect)(() => {
29
55
  if (typeof value === 'string') {
30
56
  setHasValue(value !== '');
@@ -43,30 +69,50 @@ const Input = _ref => {
43
69
  };
44
70
  }, [hasValue]);
45
71
  return /*#__PURE__*/_react.default.createElement(_Input.StyledInput, {
46
- className: "beta-chayns-input"
47
- }, /*#__PURE__*/_react.default.createElement(_Input.StyledInputContent, null, /*#__PURE__*/_react.default.createElement(_Input.StyledInputField, {
72
+ className: "beta-chayns-input",
73
+ isDisabled: isDisabled,
74
+ isInvalid: isInvalid
75
+ }, iconElement && /*#__PURE__*/_react.default.createElement(_Input.StyledInputIconWrapper, null, iconElement), /*#__PURE__*/_react.default.createElement(_Input.StyledInputContent, null, /*#__PURE__*/_react.default.createElement(_Input.StyledInputField, {
76
+ disabled: isDisabled,
48
77
  onBlur: onBlur,
49
78
  onChange: handleInputFieldChange,
50
79
  onFocus: onFocus,
51
80
  onKeyDown: onKeyDown,
81
+ ref: inputRef,
82
+ type: type,
52
83
  value: value,
53
- type: type
84
+ autoFocus: shouldUseAutoFocus,
85
+ inputMode: inputMode,
86
+ isInvalid: isInvalid
54
87
  }), /*#__PURE__*/_react.default.createElement(_Input.StyledMotionInputLabel, {
55
88
  animate: {
56
- scale: hasValue ? 0.6 : 1
89
+ fontSize: hasValue ? '10px' : '16px'
57
90
  },
91
+ initial: false,
58
92
  layout: true,
59
93
  style: {
60
- ...labelPosition,
61
- originX: 1,
62
- originY: 1
94
+ ...labelPosition
63
95
  },
96
+ transition: {
97
+ type: 'tween',
98
+ duration: 0.3
99
+ },
100
+ isInvalid: isInvalid
101
+ }, placeholderElement, placeholder)), shouldShowClearIcon && /*#__PURE__*/_react.default.createElement(_Input.StyledMotionInputClearIcon, {
102
+ animate: {
103
+ opacity: hasValue ? 1 : 0
104
+ },
105
+ initial: false,
106
+ onClick: handleClearIconClick,
64
107
  transition: {
65
108
  type: 'tween'
66
- }
67
- }, placeholder)));
68
- };
109
+ },
110
+ isInvalid: isInvalid
111
+ }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
112
+ icons: ['fa fa-times'],
113
+ color: isInvalid ? theme.wrong : undefined
114
+ })));
115
+ });
69
116
  Input.displayName = 'Input';
70
- var _default = Input;
71
- exports.default = _default;
117
+ var _default = exports.default = Input;
72
118
  //# sourceMappingURL=Input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","names":["Input","onBlur","onChange","onFocus","onKeyDown","placeholder","type","value","hasValue","setHasValue","useState","handleInputFieldChange","useCallback","event","target","useEffect","labelPosition","useMemo","bottom","right","left","top","scale","originX","originY","displayName"],"sources":["../../../src/components/input/Input.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n ChangeEventHandler,\n FC,\n FocusEventHandler,\n HTMLInputTypeAttribute,\n KeyboardEventHandler,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport {\n StyledInput,\n StyledInputContent,\n StyledInputField,\n StyledMotionInputLabel,\n} from './Input.styles';\n\nexport type InputProps = {\n /**\n * Function that is executed when the input field loses focus\n */\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the text of the input changes\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the input field is focused\n */\n onFocus?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when a letter is pressed\n */\n onKeyDown?: KeyboardEventHandler<HTMLInputElement>;\n /**\n * Placeholder for the input field\n */\n placeholder?: string;\n /**\n * Input type set for input element (e.g. 'text', 'number' or 'password')\n */\n type?: HTMLInputTypeAttribute;\n /**\n * Value if the input field should be controlled\n */\n value?: string;\n};\n\nconst Input: FC<InputProps> = ({\n onBlur,\n onChange,\n onFocus,\n onKeyDown,\n placeholder,\n type = 'text',\n value,\n}) => {\n const [hasValue, setHasValue] = useState(typeof value === 'string' && value !== '');\n\n const handleInputFieldChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n setHasValue(event.target.value !== '');\n\n if (typeof onChange === 'function') {\n onChange(event);\n }\n },\n [onChange]\n );\n\n useEffect(() => {\n if (typeof value === 'string') {\n setHasValue(value !== '');\n }\n }, [value]);\n\n const labelPosition = useMemo(() => {\n if (hasValue) {\n return { bottom: -8, right: -6 };\n }\n\n return { left: 0, top: 0 };\n }, [hasValue]);\n\n return (\n <StyledInput className=\"beta-chayns-input\">\n <StyledInputContent>\n <StyledInputField\n onBlur={onBlur}\n onChange={handleInputFieldChange}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n value={value}\n type={type}\n />\n <StyledMotionInputLabel\n animate={{ scale: hasValue ? 0.6 : 1 }}\n layout\n style={{ ...labelPosition, originX: 1, originY: 1 }}\n transition={{ type: 'tween' }}\n >\n {placeholder}\n </StyledMotionInputLabel>\n </StyledInputContent>\n </StyledInput>\n );\n};\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"mappings":";;;;;;AAAA;AAYA;AAKwB;AAAA;AAiCxB,MAAMA,KAAqB,GAAG,QAQxB;EAAA,IARyB;IAC3BC,MAAM;IACNC,QAAQ;IACRC,OAAO;IACPC,SAAS;IACTC,WAAW;IACXC,IAAI,GAAG,MAAM;IACbC;EACJ,CAAC;EACG,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAC,eAAQ,EAAC,OAAOH,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,EAAE,CAAC;EAEnF,MAAMI,sBAAsB,GAAG,IAAAC,kBAAW,EACrCC,KAAoC,IAAK;IACtCJ,WAAW,CAACI,KAAK,CAACC,MAAM,CAACP,KAAK,KAAK,EAAE,CAAC;IAEtC,IAAI,OAAOL,QAAQ,KAAK,UAAU,EAAE;MAChCA,QAAQ,CAACW,KAAK,CAAC;IACnB;EACJ,CAAC,EACD,CAACX,QAAQ,CAAC,CACb;EAED,IAAAa,gBAAS,EAAC,MAAM;IACZ,IAAI,OAAOR,KAAK,KAAK,QAAQ,EAAE;MAC3BE,WAAW,CAACF,KAAK,KAAK,EAAE,CAAC;IAC7B;EACJ,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,MAAMS,aAAa,GAAG,IAAAC,cAAO,EAAC,MAAM;IAChC,IAAIT,QAAQ,EAAE;MACV,OAAO;QAAEU,MAAM,EAAE,CAAC,CAAC;QAAEC,KAAK,EAAE,CAAC;MAAE,CAAC;IACpC;IAEA,OAAO;MAAEC,IAAI,EAAE,CAAC;MAAEC,GAAG,EAAE;IAAE,CAAC;EAC9B,CAAC,EAAE,CAACb,QAAQ,CAAC,CAAC;EAEd,oBACI,6BAAC,kBAAW;IAAC,SAAS,EAAC;EAAmB,gBACtC,6BAAC,yBAAkB,qBACf,6BAAC,uBAAgB;IACb,MAAM,EAAEP,MAAO;IACf,QAAQ,EAAEU,sBAAuB;IACjC,OAAO,EAAER,OAAQ;IACjB,SAAS,EAAEC,SAAU;IACrB,KAAK,EAAEG,KAAM;IACb,IAAI,EAAED;EAAK,EACb,eACF,6BAAC,6BAAsB;IACnB,OAAO,EAAE;MAAEgB,KAAK,EAAEd,QAAQ,GAAG,GAAG,GAAG;IAAE,CAAE;IACvC,MAAM;IACN,KAAK,EAAE;MAAE,GAAGQ,aAAa;MAAEO,OAAO,EAAE,CAAC;MAAEC,OAAO,EAAE;IAAE,CAAE;IACpD,UAAU,EAAE;MAAElB,IAAI,EAAE;IAAQ;EAAE,GAE7BD,WAAW,CACS,CACR,CACX;AAEtB,CAAC;AAEDL,KAAK,CAACyB,WAAW,GAAG,OAAO;AAAC,eAEbzB,KAAK;AAAA"}
1
+ {"version":3,"file":"Input.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_Icon","_interopRequireDefault","_Input","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Input","forwardRef","_ref","ref","iconElement","inputMode","isDisabled","onBlur","onChange","onFocus","onKeyDown","placeholder","placeholderElement","shouldShowClearIcon","type","value","shouldUseAutoFocus","isInvalid","hasValue","setHasValue","useState","theme","useTheme","inputRef","useRef","handleClearIconClick","useCallback","current","target","handleInputFieldChange","event","useImperativeHandle","focus","useEffect","labelPosition","useMemo","bottom","right","left","top","createElement","StyledInput","className","StyledInputIconWrapper","StyledInputContent","StyledInputField","disabled","autoFocus","StyledMotionInputLabel","animate","fontSize","initial","layout","style","transition","duration","StyledMotionInputClearIcon","opacity","onClick","icons","color","wrong","undefined","displayName","_default","exports"],"sources":["../../../src/components/input/Input.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n ChangeEventHandler,\n FocusEventHandler,\n forwardRef,\n HTMLInputTypeAttribute,\n KeyboardEventHandler,\n ReactNode,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useTheme } from 'styled-components';\nimport type { Theme } from '../color-scheme-provider/ColorSchemeProvider';\nimport Icon from '../icon/Icon';\nimport {\n StyledInput,\n StyledInputContent,\n StyledInputField,\n StyledInputIconWrapper,\n StyledMotionInputClearIcon,\n StyledMotionInputLabel,\n} from './Input.styles';\n\nexport type InputRef = {\n focus: VoidFunction;\n};\n\ntype InputMode =\n | 'email'\n | 'search'\n | 'tel'\n | 'text'\n | 'url'\n | 'none'\n | 'numeric'\n | 'decimal'\n | undefined;\n\nexport type InputProps = {\n /**\n * Icon element to be displayed on the left side of the input field\n */\n iconElement?: ReactNode;\n /**\n * Defines the input mode of the input\n */\n inputMode?: InputMode;\n /**\n * Disables the input so that it cannot be changed anymore\n */\n isDisabled?: boolean;\n /**\n * Function that is executed when the input field loses focus\n */\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the text of the input changes\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the input field is focused\n */\n onFocus?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when a letter is pressed\n */\n onKeyDown?: KeyboardEventHandler<HTMLInputElement>;\n /**\n * Placeholder for the input field\n */\n placeholder?: string;\n /**\n * Element to be displayed next to or instead of the \"placeholder\"\n */\n placeholderElement?: ReactNode;\n /**\n * If true, a clear icon is displayed at the end of the input field\n */\n shouldShowClearIcon?: boolean;\n /**\n * Input type set for input element (e.g. 'text', 'number' or 'password')\n */\n type?: HTMLInputTypeAttribute;\n /**\n * Value if the input field should be controlled\n */\n value?: string;\n /**\n * If true, the input field is focused when the component is mounted\n */\n shouldUseAutoFocus?: boolean;\n /**\n * If true, the input field is marked as invalid\n */\n isInvalid?: boolean;\n};\n\nconst Input = forwardRef<InputRef, InputProps>(\n (\n {\n iconElement,\n inputMode,\n isDisabled,\n onBlur,\n onChange,\n onFocus,\n onKeyDown,\n placeholder,\n placeholderElement,\n shouldShowClearIcon = false,\n type = 'text',\n value,\n shouldUseAutoFocus = false,\n isInvalid = false,\n },\n ref,\n ) => {\n const [hasValue, setHasValue] = useState(typeof value === 'string' && value !== '');\n const theme = useTheme() as Theme;\n const inputRef = useRef<HTMLInputElement>(null);\n\n const handleClearIconClick = useCallback(() => {\n if (inputRef.current) {\n inputRef.current.value = '';\n\n setHasValue(false);\n\n if (typeof onChange === 'function') {\n onChange({ target: inputRef.current } as ChangeEvent<HTMLInputElement>);\n }\n }\n }, [onChange]);\n\n const handleInputFieldChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n setHasValue(event.target.value !== '');\n\n if (typeof onChange === 'function') {\n onChange(event);\n }\n },\n [onChange],\n );\n\n useImperativeHandle(\n ref,\n () => ({\n focus: () => inputRef.current?.focus(),\n }),\n [],\n );\n\n useEffect(() => {\n if (typeof value === 'string') {\n setHasValue(value !== '');\n }\n }, [value]);\n\n const labelPosition = useMemo(() => {\n if (hasValue) {\n return { bottom: -8, right: -6 };\n }\n\n return { left: 0, top: 0 };\n }, [hasValue]);\n\n return (\n <StyledInput\n className=\"beta-chayns-input\"\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n >\n {iconElement && <StyledInputIconWrapper>{iconElement}</StyledInputIconWrapper>}\n <StyledInputContent>\n <StyledInputField\n disabled={isDisabled}\n onBlur={onBlur}\n onChange={handleInputFieldChange}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n ref={inputRef}\n type={type}\n value={value}\n autoFocus={shouldUseAutoFocus}\n inputMode={inputMode}\n isInvalid={isInvalid}\n />\n <StyledMotionInputLabel\n animate={{\n fontSize: hasValue ? '10px' : '16px',\n }}\n initial={false}\n layout\n style={{ ...labelPosition }}\n transition={{ type: 'tween', duration: 0.3 }}\n isInvalid={isInvalid}\n >\n {placeholderElement}\n {placeholder}\n </StyledMotionInputLabel>\n </StyledInputContent>\n {shouldShowClearIcon && (\n <StyledMotionInputClearIcon\n animate={{ opacity: hasValue ? 1 : 0 }}\n initial={false}\n onClick={handleClearIconClick}\n transition={{ type: 'tween' }}\n isInvalid={isInvalid}\n >\n <Icon icons={['fa fa-times']} color={isInvalid ? theme.wrong : undefined} />\n </StyledMotionInputClearIcon>\n )}\n </StyledInput>\n );\n },\n);\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"mappings":"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"}