@laerdal/life-react-components 6.0.0-dev.1.full → 6.0.0-dev.12.full

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 (394) hide show
  1. package/dist/Accordion/ContentAccordion.cjs +40 -11
  2. package/dist/Accordion/ContentAccordion.cjs.map +1 -1
  3. package/dist/Accordion/ContentAccordion.js +40 -11
  4. package/dist/Accordion/ContentAccordion.js.map +1 -1
  5. package/dist/Accordion/__tests__/AccordionMenu.test.tsx +42 -0
  6. package/dist/Accordion/__tests__/ContentAccordion.test.tsx +150 -0
  7. package/dist/Accordion/styles.cjs +51 -13
  8. package/dist/Accordion/styles.cjs.map +1 -1
  9. package/dist/Accordion/styles.js +51 -13
  10. package/dist/Accordion/styles.js.map +1 -1
  11. package/dist/AuthPage/__tests__/AuthPage.test.tsx +27 -0
  12. package/dist/Banners/Banner.cjs +38 -34
  13. package/dist/Banners/Banner.cjs.map +1 -1
  14. package/dist/Banners/Banner.d.ts +2 -3
  15. package/dist/Banners/Banner.js +38 -34
  16. package/dist/Banners/Banner.js.map +1 -1
  17. package/dist/Banners/__tests__/Banner.test.tsx +47 -0
  18. package/dist/Banners/__tests__/OverviewBanner.test.tsx +20 -0
  19. package/dist/Banners/styles.cjs +8 -16
  20. package/dist/Banners/styles.cjs.map +1 -1
  21. package/dist/Banners/styles.js +8 -16
  22. package/dist/Banners/styles.js.map +1 -1
  23. package/dist/Breadcrumb/Breadcrumb.cjs +8 -2
  24. package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
  25. package/dist/Breadcrumb/Breadcrumb.js +8 -2
  26. package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
  27. package/dist/Breadcrumb/__tests__/Breadcrumb.test.tsx +78 -0
  28. package/dist/Breadcrumb/styles.cjs +15 -4
  29. package/dist/Breadcrumb/styles.cjs.map +1 -1
  30. package/dist/Breadcrumb/styles.js +15 -4
  31. package/dist/Breadcrumb/styles.js.map +1 -1
  32. package/dist/Button/BackButton.cjs +27 -6
  33. package/dist/Button/BackButton.cjs.map +1 -1
  34. package/dist/Button/BackButton.js +27 -6
  35. package/dist/Button/BackButton.js.map +1 -1
  36. package/dist/Button/Button.cjs +179 -47
  37. package/dist/Button/Button.cjs.map +1 -1
  38. package/dist/Button/Button.d.ts +2 -0
  39. package/dist/Button/Button.js +179 -47
  40. package/dist/Button/Button.js.map +1 -1
  41. package/dist/Button/Iconbutton.cjs +83 -21
  42. package/dist/Button/Iconbutton.cjs.map +1 -1
  43. package/dist/Button/Iconbutton.js +83 -21
  44. package/dist/Button/Iconbutton.js.map +1 -1
  45. package/dist/Button/__tests__/BackButton.test.tsx +32 -0
  46. package/dist/Button/__tests__/Button.test.tsx +45 -0
  47. package/dist/Button/__tests__/DualButton.test.tsx +119 -0
  48. package/dist/Card/HorizontalCard/HorizontalCard.cjs +20 -5
  49. package/dist/Card/HorizontalCard/HorizontalCard.cjs.map +1 -1
  50. package/dist/Card/HorizontalCard/HorizontalCard.js +20 -5
  51. package/dist/Card/HorizontalCard/HorizontalCard.js.map +1 -1
  52. package/dist/Card/HorizontalCard/HorizontalCardBody.cjs +12 -3
  53. package/dist/Card/HorizontalCard/HorizontalCardBody.cjs.map +1 -1
  54. package/dist/Card/HorizontalCard/HorizontalCardBody.js +12 -3
  55. package/dist/Card/HorizontalCard/HorizontalCardBody.js.map +1 -1
  56. package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs +8 -2
  57. package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs.map +1 -1
  58. package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js +8 -2
  59. package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js.map +1 -1
  60. package/dist/Card/HorizontalCard/__tests__/HorizontalCard.test.tsx +71 -0
  61. package/dist/Card/HorizontalCard/__tests__/VerticalCard.test.tsx +124 -0
  62. package/dist/Card/VerticalCard/Card.cjs +20 -5
  63. package/dist/Card/VerticalCard/Card.cjs.map +1 -1
  64. package/dist/Card/VerticalCard/Card.js +20 -5
  65. package/dist/Card/VerticalCard/Card.js.map +1 -1
  66. package/dist/Card/VerticalCard/CardBottomSection.cjs +72 -19
  67. package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
  68. package/dist/Card/VerticalCard/CardBottomSection.d.ts +8 -1
  69. package/dist/Card/VerticalCard/CardBottomSection.js +73 -20
  70. package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
  71. package/dist/Card/VerticalCard/CardMiddleSection.cjs +19 -4
  72. package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
  73. package/dist/Card/VerticalCard/CardMiddleSection.js +19 -4
  74. package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
  75. package/dist/Card/VerticalCard/CardTopSection.cjs +9 -2
  76. package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -1
  77. package/dist/Card/VerticalCard/CardTopSection.js +9 -2
  78. package/dist/Card/VerticalCard/CardTopSection.js.map +1 -1
  79. package/dist/Card/__tests__/Card.test.tsx +146 -0
  80. package/dist/Chips/ChipStyles.cjs +4 -1
  81. package/dist/Chips/ChipStyles.cjs.map +1 -1
  82. package/dist/Chips/ChipStyles.js +4 -1
  83. package/dist/Chips/ChipStyles.js.map +1 -1
  84. package/dist/Chips/__tests__/ActionChip.test.tsx +94 -0
  85. package/dist/Chips/__tests__/ChoiceChips.test.tsx +79 -0
  86. package/dist/Chips/__tests__/FilterChip.test.tsx +95 -0
  87. package/dist/Chips/__tests__/InputChip.test.tsx +155 -0
  88. package/dist/ChipsInput/ChipInputField.cjs +16 -4
  89. package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
  90. package/dist/ChipsInput/ChipInputField.js +16 -4
  91. package/dist/ChipsInput/ChipInputField.js.map +1 -1
  92. package/dist/ChipsInput/__tests__/ChipDropdownInput.test.tsx +100 -0
  93. package/dist/ChipsInput/__tests__/ChipInputFields.test.tsx +155 -0
  94. package/dist/Dropdown/BasicDropdown.cjs +12 -3
  95. package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
  96. package/dist/Dropdown/BasicDropdown.js +12 -3
  97. package/dist/Dropdown/BasicDropdown.js.map +1 -1
  98. package/dist/Dropdown/CommonStyling.cjs +172 -42
  99. package/dist/Dropdown/CommonStyling.cjs.map +1 -1
  100. package/dist/Dropdown/CommonStyling.js +172 -42
  101. package/dist/Dropdown/CommonStyling.js.map +1 -1
  102. package/dist/Dropdown/DropdownContent.cjs +36 -10
  103. package/dist/Dropdown/DropdownContent.cjs.map +1 -1
  104. package/dist/Dropdown/DropdownContent.js +36 -10
  105. package/dist/Dropdown/DropdownContent.js.map +1 -1
  106. package/dist/Dropdown/DropdownFilter.cjs +12 -3
  107. package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
  108. package/dist/Dropdown/DropdownFilter.js +12 -3
  109. package/dist/Dropdown/DropdownFilter.js.map +1 -1
  110. package/dist/Dropdown/__tests__/DropdownFilter.test.tsx +39 -0
  111. package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs +4 -1
  112. package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
  113. package/dist/Footer/Components/FooterNewsletterAndSocialSection.js +4 -1
  114. package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
  115. package/dist/Footer/__tests__/Footer.test.tsx +182 -0
  116. package/dist/GlobalNavigationBar/__tests__/GlobalNavigationBar.tests.d.ts +1 -0
  117. package/dist/GlobalNavigationBar/__tests__/Logo.test.tsx +39 -0
  118. package/dist/GlobalNavigationBar/__tests__/Logo.tests.d.ts +1 -0
  119. package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +4 -1
  120. package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -1
  121. package/dist/GlobalNavigationBar/desktop/UserMenu.js +4 -1
  122. package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -1
  123. package/dist/GlobalNavigationBar/desktop/__tests__/DesktopActions.test.tsx +108 -0
  124. package/dist/GlobalNavigationBar/desktop/__tests__/ExtendedMainMenu.test.tsx +28 -0
  125. package/dist/GlobalNavigationBar/desktop/__tests__/MainMenu.test.tsx +55 -0
  126. package/dist/GlobalNavigationBar/desktop/__tests__/RightSideNav.test.tsx +45 -0
  127. package/dist/GlobalNavigationBar/desktop/__tests__/UserMenu.test.tsx +125 -0
  128. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenu.test.tsx +317 -0
  129. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuContent.test.tsx +294 -0
  130. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuHeader.test.tsx +195 -0
  131. package/dist/HyperLink/styling.cjs +38 -8
  132. package/dist/HyperLink/styling.cjs.map +1 -1
  133. package/dist/HyperLink/styling.js +38 -8
  134. package/dist/HyperLink/styling.js.map +1 -1
  135. package/dist/InputFields/Checkbox.cjs +54 -14
  136. package/dist/InputFields/Checkbox.cjs.map +1 -1
  137. package/dist/InputFields/Checkbox.js +54 -14
  138. package/dist/InputFields/Checkbox.js.map +1 -1
  139. package/dist/InputFields/DatepickerField.cjs +149 -43
  140. package/dist/InputFields/DatepickerField.cjs.map +1 -1
  141. package/dist/InputFields/DatepickerField.d.ts +1 -1
  142. package/dist/InputFields/DatepickerField.js +150 -44
  143. package/dist/InputFields/DatepickerField.js.map +1 -1
  144. package/dist/InputFields/DatepickerFieldHeader.cjs +20 -5
  145. package/dist/InputFields/DatepickerFieldHeader.cjs.map +1 -1
  146. package/dist/InputFields/DatepickerFieldHeader.js +20 -5
  147. package/dist/InputFields/DatepickerFieldHeader.js.map +1 -1
  148. package/dist/InputFields/Label.cjs +38 -11
  149. package/dist/InputFields/Label.cjs.map +1 -1
  150. package/dist/InputFields/Label.js +38 -11
  151. package/dist/InputFields/Label.js.map +1 -1
  152. package/dist/InputFields/NumberField.cjs +66 -16
  153. package/dist/InputFields/NumberField.cjs.map +1 -1
  154. package/dist/InputFields/NumberField.js +66 -16
  155. package/dist/InputFields/NumberField.js.map +1 -1
  156. package/dist/InputFields/PasswordField.cjs +4 -1
  157. package/dist/InputFields/PasswordField.cjs.map +1 -1
  158. package/dist/InputFields/PasswordField.d.ts +1 -1
  159. package/dist/InputFields/PasswordField.js +4 -1
  160. package/dist/InputFields/PasswordField.js.map +1 -1
  161. package/dist/InputFields/QuickSearch.cjs +30 -6
  162. package/dist/InputFields/QuickSearch.cjs.map +1 -1
  163. package/dist/InputFields/QuickSearch.js +30 -6
  164. package/dist/InputFields/QuickSearch.js.map +1 -1
  165. package/dist/InputFields/RadioButton.cjs +63 -15
  166. package/dist/InputFields/RadioButton.cjs.map +1 -1
  167. package/dist/InputFields/RadioButton.js +63 -15
  168. package/dist/InputFields/RadioButton.js.map +1 -1
  169. package/dist/InputFields/RichTextField.cjs +60 -15
  170. package/dist/InputFields/RichTextField.cjs.map +1 -1
  171. package/dist/InputFields/RichTextField.js +60 -15
  172. package/dist/InputFields/RichTextField.js.map +1 -1
  173. package/dist/InputFields/SearchBar.cjs +4 -1
  174. package/dist/InputFields/SearchBar.cjs.map +1 -1
  175. package/dist/InputFields/SearchBar.js +4 -1
  176. package/dist/InputFields/SearchBar.js.map +1 -1
  177. package/dist/InputFields/TextField.cjs +9 -3
  178. package/dist/InputFields/TextField.cjs.map +1 -1
  179. package/dist/InputFields/TextField.d.ts +1 -1
  180. package/dist/InputFields/TextField.js +9 -3
  181. package/dist/InputFields/TextField.js.map +1 -1
  182. package/dist/InputFields/Textarea.cjs +68 -17
  183. package/dist/InputFields/Textarea.cjs.map +1 -1
  184. package/dist/InputFields/Textarea.js +68 -17
  185. package/dist/InputFields/Textarea.js.map +1 -1
  186. package/dist/InputFields/__tests__/NumberField.test.tsx +67 -0
  187. package/dist/InputFields/__tests__/NumberInput.test.tsx +68 -0
  188. package/dist/InputFields/__tests__/QuickSearch.test.tsx +42 -0
  189. package/dist/InputFields/components/SearchBarInput.cjs +28 -7
  190. package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
  191. package/dist/InputFields/components/SearchBarInput.js +28 -7
  192. package/dist/InputFields/components/SearchBarInput.js.map +1 -1
  193. package/dist/InputFields/components/SearchField.cjs +60 -15
  194. package/dist/InputFields/components/SearchField.cjs.map +1 -1
  195. package/dist/InputFields/components/SearchField.js +60 -15
  196. package/dist/InputFields/components/SearchField.js.map +1 -1
  197. package/dist/InputFields/styling.cjs +95 -39
  198. package/dist/InputFields/styling.cjs.map +1 -1
  199. package/dist/InputFields/styling.d.ts +1 -2
  200. package/dist/InputFields/styling.js +95 -39
  201. package/dist/InputFields/styling.js.map +1 -1
  202. package/dist/LinearProgress/LinearProgress.cjs +161 -53
  203. package/dist/LinearProgress/LinearProgress.cjs.map +1 -1
  204. package/dist/LinearProgress/LinearProgress.js +161 -53
  205. package/dist/LinearProgress/LinearProgress.js.map +1 -1
  206. package/dist/LinearProgress/__tests__/LinearProgress.test.tsx +25 -0
  207. package/dist/List/ListRow.cjs +36 -9
  208. package/dist/List/ListRow.cjs.map +1 -1
  209. package/dist/List/ListRow.js +36 -9
  210. package/dist/List/ListRow.js.map +1 -1
  211. package/dist/List/__tests__/ListRow.test.tsx +18 -0
  212. package/dist/List/__tests__/ListRow.tests.d.ts +1 -0
  213. package/dist/LoadingIndicator/LoadingIndicator.cjs +4 -1
  214. package/dist/LoadingIndicator/LoadingIndicator.cjs.map +1 -1
  215. package/dist/LoadingIndicator/LoadingIndicator.js +4 -1
  216. package/dist/LoadingIndicator/LoadingIndicator.js.map +1 -1
  217. package/dist/LoadingPage/GlobalLoadingPage.cjs +4 -1
  218. package/dist/LoadingPage/GlobalLoadingPage.cjs.map +1 -1
  219. package/dist/LoadingPage/GlobalLoadingPage.js +4 -1
  220. package/dist/LoadingPage/GlobalLoadingPage.js.map +1 -1
  221. package/dist/LoadingPage/__tests__/GlobalLoadingPage.test.tsx +23 -0
  222. package/dist/MenuItem/MenuItem.cjs +101 -26
  223. package/dist/MenuItem/MenuItem.cjs.map +1 -1
  224. package/dist/MenuItem/MenuItem.js +101 -26
  225. package/dist/MenuItem/MenuItem.js.map +1 -1
  226. package/dist/Modals/Modal.cjs +4 -1
  227. package/dist/Modals/Modal.cjs.map +1 -1
  228. package/dist/Modals/Modal.js +4 -1
  229. package/dist/Modals/Modal.js.map +1 -1
  230. package/dist/Modals/ModalContent.cjs +24 -6
  231. package/dist/Modals/ModalContent.cjs.map +1 -1
  232. package/dist/Modals/ModalContent.js +24 -6
  233. package/dist/Modals/ModalContent.js.map +1 -1
  234. package/dist/Modals/ModalDialog.cjs +12 -3
  235. package/dist/Modals/ModalDialog.cjs.map +1 -1
  236. package/dist/Modals/ModalDialog.js +12 -3
  237. package/dist/Modals/ModalDialog.js.map +1 -1
  238. package/dist/Modals/ModalNote.cjs +16 -4
  239. package/dist/Modals/ModalNote.cjs.map +1 -1
  240. package/dist/Modals/ModalNote.js +16 -4
  241. package/dist/Modals/ModalNote.js.map +1 -1
  242. package/dist/Modals/ModalStyles.cjs +44 -11
  243. package/dist/Modals/ModalStyles.cjs.map +1 -1
  244. package/dist/Modals/ModalStyles.js +44 -11
  245. package/dist/Modals/ModalStyles.js.map +1 -1
  246. package/dist/Modals/__tests__/Modal.test.tsx +169 -0
  247. package/dist/Modals/__tests__/ModalContainer.test.tsx +77 -0
  248. package/dist/Modals/__tests__/ModalContent.test.tsx +126 -0
  249. package/dist/NavItem/NavItem.cjs +4 -1
  250. package/dist/NavItem/NavItem.cjs.map +1 -1
  251. package/dist/NavItem/NavItem.js +4 -1
  252. package/dist/NavItem/NavItem.js.map +1 -1
  253. package/dist/NavItem/__tests__/NavItem.test.ts +6 -0
  254. package/dist/NotificationDot/NotificationDot.cjs +17 -2
  255. package/dist/NotificationDot/NotificationDot.cjs.map +1 -1
  256. package/dist/NotificationDot/NotificationDot.js +17 -2
  257. package/dist/NotificationDot/NotificationDot.js.map +1 -1
  258. package/dist/NotificationDot/__tests__/NotificationDot.test.tsx +33 -0
  259. package/dist/Paginator/Paginator.cjs +76 -29
  260. package/dist/Paginator/Paginator.cjs.map +1 -1
  261. package/dist/Paginator/Paginator.js +76 -29
  262. package/dist/Paginator/Paginator.js.map +1 -1
  263. package/dist/Paginator/__tests__/Paginator.test.tsx +39 -0
  264. package/dist/Panel/Panel.cjs +4 -1
  265. package/dist/Panel/Panel.cjs.map +1 -1
  266. package/dist/Panel/Panel.js +4 -1
  267. package/dist/Panel/Panel.js.map +1 -1
  268. package/dist/Popover/Popover.cjs +22 -3
  269. package/dist/Popover/Popover.cjs.map +1 -1
  270. package/dist/Popover/Popover.js +22 -3
  271. package/dist/Popover/Popover.js.map +1 -1
  272. package/dist/Popover/__tests__/Popover.test.tsx +64 -0
  273. package/dist/ProfileButton/ProfileButton.cjs +9 -2
  274. package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
  275. package/dist/ProfileButton/ProfileButton.js +9 -2
  276. package/dist/ProfileButton/ProfileButton.js.map +1 -1
  277. package/dist/ProfileButton/__tests__/ProfileButton.test.tsx +31 -0
  278. package/dist/QuizButton/__tests__/QuizButton.test.tsx +53 -0
  279. package/dist/SegmentControl/SegmentControl.cjs +46 -11
  280. package/dist/SegmentControl/SegmentControl.cjs.map +1 -1
  281. package/dist/SegmentControl/SegmentControl.js +46 -11
  282. package/dist/SegmentControl/SegmentControl.js.map +1 -1
  283. package/dist/SegmentControl/__tests__/SegmentControl.test.tsx +145 -0
  284. package/dist/SideMenu/SideMenuHeader.cjs +12 -3
  285. package/dist/SideMenu/SideMenuHeader.cjs.map +1 -1
  286. package/dist/SideMenu/SideMenuHeader.js +12 -3
  287. package/dist/SideMenu/SideMenuHeader.js.map +1 -1
  288. package/dist/SideMenu/__tests__/SideMenu.test.tsx +99 -0
  289. package/dist/Switcher/SwitcherMenuItem.cjs +4 -1
  290. package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
  291. package/dist/Switcher/SwitcherMenuItem.js +4 -1
  292. package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
  293. package/dist/Switcher/__tests__/SwitcherMenuItem.tsx +14 -0
  294. package/dist/Table/TableFooter.cjs +8 -2
  295. package/dist/Table/TableFooter.cjs.map +1 -1
  296. package/dist/Table/TableFooter.js +8 -2
  297. package/dist/Table/TableFooter.js.map +1 -1
  298. package/dist/Table/TableStyles.cjs +132 -33
  299. package/dist/Table/TableStyles.cjs.map +1 -1
  300. package/dist/Table/TableStyles.js +132 -33
  301. package/dist/Table/TableStyles.js.map +1 -1
  302. package/dist/Table/__tests__/Table.test.tsx +499 -0
  303. package/dist/Tabs/HorizontalTabs.cjs +68 -18
  304. package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
  305. package/dist/Tabs/HorizontalTabs.js +68 -18
  306. package/dist/Tabs/HorizontalTabs.js.map +1 -1
  307. package/dist/Tabs/TabLink.cjs +4 -1
  308. package/dist/Tabs/TabLink.cjs.map +1 -1
  309. package/dist/Tabs/TabLink.js +4 -1
  310. package/dist/Tabs/TabLink.js.map +1 -1
  311. package/dist/Tabs/__tests__/HorizontalTabs.test.tsx +95 -0
  312. package/dist/Tabs/__tests__/TabLink.test.tsx +40 -0
  313. package/dist/Tabs/__tests__/TabLink.tests.d.ts +1 -0
  314. package/dist/Tabs/__tests__/Tablist.test.tsx +37 -0
  315. package/dist/Tabs/__tests__/Tablist.tests.d.ts +2 -0
  316. package/dist/Tag/Tag.cjs +2 -2
  317. package/dist/Tag/Tag.cjs.map +1 -1
  318. package/dist/Tag/Tag.js +2 -2
  319. package/dist/Tag/Tag.js.map +1 -1
  320. package/dist/Tag/__tests__/Tag.test.tsx +86 -0
  321. package/dist/Tile/Tile.cjs +8 -2
  322. package/dist/Tile/Tile.cjs.map +1 -1
  323. package/dist/Tile/Tile.js +8 -2
  324. package/dist/Tile/Tile.js.map +1 -1
  325. package/dist/Tile/TileCommonItems.cjs +8 -2
  326. package/dist/Tile/TileCommonItems.cjs.map +1 -1
  327. package/dist/Tile/TileCommonItems.js +8 -2
  328. package/dist/Tile/TileCommonItems.js.map +1 -1
  329. package/dist/Tile/TileFooter.cjs +4 -1
  330. package/dist/Tile/TileFooter.cjs.map +1 -1
  331. package/dist/Tile/TileFooter.js +4 -1
  332. package/dist/Tile/TileFooter.js.map +1 -1
  333. package/dist/Tile/TileHeader.cjs +12 -3
  334. package/dist/Tile/TileHeader.cjs.map +1 -1
  335. package/dist/Tile/TileHeader.js +12 -3
  336. package/dist/Tile/TileHeader.js.map +1 -1
  337. package/dist/Toasters/Toast.cjs +62 -13
  338. package/dist/Toasters/Toast.cjs.map +1 -1
  339. package/dist/Toasters/Toast.js +62 -13
  340. package/dist/Toasters/Toast.js.map +1 -1
  341. package/dist/Toasters/__tests__/Toast.test.tsx +74 -0
  342. package/dist/Toggles/ToggleButton.cjs +9 -3
  343. package/dist/Toggles/ToggleButton.cjs.map +1 -1
  344. package/dist/Toggles/ToggleButton.d.ts +1 -1
  345. package/dist/Toggles/ToggleButton.js +9 -3
  346. package/dist/Toggles/ToggleButton.js.map +1 -1
  347. package/dist/Toggles/TogglerStyles.cjs +22 -8
  348. package/dist/Toggles/TogglerStyles.cjs.map +1 -1
  349. package/dist/Toggles/TogglerStyles.js +22 -8
  350. package/dist/Toggles/TogglerStyles.js.map +1 -1
  351. package/dist/Toggles/__tests__/ToggleButton.test.tsx +53 -0
  352. package/dist/Toggles/__tests__/ToggleSwitch.test.tsx +87 -0
  353. package/dist/Tooltips/TooltipStyles.cjs +28 -6
  354. package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
  355. package/dist/Tooltips/TooltipStyles.js +28 -6
  356. package/dist/Tooltips/TooltipStyles.js.map +1 -1
  357. package/dist/Tooltips/__tests__/TooltipWrapper.test.tsx +16 -0
  358. package/dist/common/InputStyling.cjs +30 -7
  359. package/dist/common/InputStyling.cjs.map +1 -1
  360. package/dist/common/InputStyling.js +30 -7
  361. package/dist/common/InputStyling.js.map +1 -1
  362. package/dist/common/Link.cjs +45 -0
  363. package/dist/common/Link.cjs.map +1 -0
  364. package/dist/common/Link.d.ts +9 -0
  365. package/dist/common/Link.js +37 -0
  366. package/dist/common/Link.js.map +1 -0
  367. package/dist/common/NavigationHelper.cjs +30 -0
  368. package/dist/common/NavigationHelper.cjs.map +1 -0
  369. package/dist/common/NavigationHelper.d.ts +4 -0
  370. package/dist/common/NavigationHelper.js +23 -0
  371. package/dist/common/NavigationHelper.js.map +1 -0
  372. package/dist/custom.d.ts +2 -0
  373. package/dist/styles/colors.cjs +439 -84
  374. package/dist/styles/colors.cjs.map +1 -1
  375. package/dist/styles/colors.d.ts +200 -11
  376. package/dist/styles/colors.js +439 -84
  377. package/dist/styles/colors.js.map +1 -1
  378. package/dist/styles/global.cjs +19 -2
  379. package/dist/styles/global.cjs.map +1 -1
  380. package/dist/styles/global.d.ts +3 -2
  381. package/dist/styles/global.js +18 -3
  382. package/dist/styles/global.js.map +1 -1
  383. package/dist/styles/index.cjs +21 -9
  384. package/dist/styles/index.cjs.map +1 -1
  385. package/dist/styles/index.d.ts +2 -2
  386. package/dist/styles/index.js +18 -6
  387. package/dist/styles/index.js.map +1 -1
  388. package/dist/styles/react-datepicker.css +766 -0
  389. package/dist/utils/color-tokens.cjs +91 -0
  390. package/dist/utils/color-tokens.cjs.map +1 -0
  391. package/dist/utils/color-tokens.d.ts +19 -0
  392. package/dist/utils/color-tokens.js +82 -0
  393. package/dist/utils/color-tokens.js.map +1 -0
  394. package/package.json +144 -141
@@ -1 +1 @@
1
- {"version":3,"file":"Label.cjs","names":["React","_interopRequireWildcard","require","_styles","_types","_styledComponents","_typography","_icons","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Label","styled","label","props","ComponentXXSStyling","COLORS","getColor","theme","BREAKPOINTS","MEDIUM","ComponentXSStyling","LabelRow","div","CopyContainer","TypographyBase","LabelRowInner","CopyState","InputLabel","_ref","inputId","text","size","margin","required","requiredProp","showCopyButton","useTheme","setRequired","useState","copyState","setCopyState","Available","useEffect","undefined","document","getElementById","getAttribute","Boolean","onTriggerClick","id","click","copyInputClick","preventDefault","Copied","val","value","window","navigator","clipboard","writeText","setTimeout","jsx","$margin","children","jsxs","$size","htmlFor","onClick","className","SystemIcons","Asterisk","color","Size","Medium","ComponentXS","ComponentXXS","propTypes","_propTypes","string","isRequired","bool","_default","exports"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\r\n * Import React libraries.\r\n */\r\nimport * as React from 'react';\r\n\r\n/**\r\n * Import custom styles.\r\n */\r\nimport { BREAKPOINTS, COLORS } from '../styles';\r\nimport { Size } from '../types';\r\n\r\n/**\r\n * Import third-party libraries.\r\n */\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { ComponentXS, ComponentXSStyling, ComponentXXS, ComponentXXSStyling, TypographyBase } from '../styles/typography';\r\nimport { SystemIcons } from '../icons';\r\n\r\n// Add component-specific styles.\r\nconst Label = styled.label`\r\n ${props => ComponentXXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ${props => ComponentXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n }\r\n\r\n &.small {\r\n ${props => ComponentXXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n }\r\n &.medium {\r\n ${props => ComponentXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n }\r\n\r\n pointer-events: none;\r\n`;\r\n\r\nconst LabelRow = styled.div<{ $margin?: string }>`\r\n display: flex;\r\n align-items: flex-start;\r\n height: 16px;\r\n margin-bottom: 4px;\r\n`;\r\n\r\nconst CopyContainer = styled.div`\r\n margin-left: auto;\r\n\r\n &:visited:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_800', props.theme)};\r\n }\r\n }\r\n\r\n &:hover:not(.disabled),\r\n &.hover-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_700', props.theme)};\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:focus:not(.disabled),\r\n &.focus-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_700', props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:active:not(.disabled),\r\n &.active-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_700', props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:not(.disabled)\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n\r\n &.disabled\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n }\r\n cursor: pointer;\r\n`;\r\n\r\nconst LabelRowInner = styled.div<{ $size: Size.Small | Size.Medium | undefined }>`\r\n display: flex;\r\n flex-direction: row;\r\n width: 100%;\r\n height: 100%;\r\n align-items: center;\r\n`;\r\n\r\n// Add component-specific types\r\nexport type LabelProps = {\r\n inputId: string;\r\n text: string;\r\n size?: Size.Small | Size.Medium;\r\n margin?: string;\r\n required?: boolean;\r\n showCopyButton?: boolean;\r\n};\r\n\r\nenum CopyState {\r\n Disabled = 0,\r\n Available = 1,\r\n Copied = 2\r\n}\r\n\r\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin, required: requiredProp, showCopyButton }: LabelProps) => {\r\n // Globally used variables within the component\r\n const theme = useTheme();\r\n const [required, setRequired] = React.useState<boolean>(false);\r\n const [copyState, setCopyState] = React.useState<CopyState>(CopyState.Available);\r\n\r\n /**\r\n * Checks if field is set as required and we have to mark it accordingly.\r\n */\r\n React.useEffect(() => {\r\n if(requiredProp === undefined)\r\n {\r\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\r\n setRequired(true);\r\n } else {\r\n setRequired(false);\r\n }\r\n }\r\n else\r\n setRequired(Boolean(requiredProp));\r\n }, []);\r\n /**\r\n * Triggers a click element on a specific element.\r\n * @param id - ID of the element which needs to be clicked.\r\n */\r\n const onTriggerClick = (id: string): void => {\r\n document.getElementById(id)?.click();\r\n };\r\n\r\n const copyInputClick = (e: any) => {\r\n e.preventDefault();\r\n if(copyState == CopyState.Copied)\r\n return;\r\n \r\n const val = (document.getElementById(inputId) as HTMLInputElement)?.value;\r\n if(val)\r\n {\r\n window.navigator.clipboard.writeText(val);\r\n setCopyState(CopyState.Copied);\r\n setTimeout(() => {\r\n setCopyState(CopyState.Available);\r\n }, 1000);\r\n }\r\n };\r\n\r\n return (\r\n <LabelRow $margin={margin}>\r\n <LabelRowInner $size={size}>\r\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\r\n {text}\r\n </Label>\r\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.getColor('critical_500', theme)} />}\r\n\r\n {showCopyButton && \r\n <CopyContainer className={copyState != CopyState.Available ? \"disabled\" : \"\"} onClick={copyInputClick}>\r\n { size == Size.Medium ? <ComponentXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXS> :\r\n <ComponentXXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXXS> }\r\n </CopyContainer> }\r\n </LabelRowInner>\r\n </LabelRow>\r\n );\r\n};\r\n\r\nexport default InputLabel;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Label.cjs","names":["React","_interopRequireWildcard","require","_styles","_types","_styledComponents","_typography","_icons","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Label","styled","label","props","COLORS","generateToken","componentType","defaultVariant","theme","ComponentXXSStyling","BREAKPOINTS","MEDIUM","ComponentXSStyling","LabelRow","div","CopyContainer","TypographyBase","state","LabelRowInner","CopyState","InputLabel","_ref","inputId","text","size","margin","required","requiredProp","showCopyButton","useTheme","setRequired","useState","copyState","setCopyState","Available","useEffect","undefined","document","getElementById","getAttribute","Boolean","onTriggerClick","id","click","copyInputClick","preventDefault","Copied","val","value","window","navigator","clipboard","writeText","setTimeout","jsx","$margin","children","jsxs","$size","htmlFor","onClick","className","SystemIcons","Asterisk","color","Size","Medium","ComponentXS","ComponentXXS","propTypes","_propTypes","string","isRequired","bool","_default","exports"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\r\n * Import React libraries.\r\n */\r\nimport * as React from 'react';\r\n\r\n/**\r\n * Import custom styles.\r\n */\r\nimport { BREAKPOINTS, COLORS } from '../styles';\r\nimport { Size } from '../types';\r\n\r\n/**\r\n * Import third-party libraries.\r\n */\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { ComponentXS, ComponentXSStyling, ComponentXXS, ComponentXXSStyling, TypographyBase } from '../styles/typography';\r\nimport { SystemIcons } from '../icons';\r\n\r\n// Add component-specific styles.\r\nconst Label = styled.label`\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n ${props => ComponentXXSStyling(1, null)}\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ${props => ComponentXSStyling(1, null)}\r\n }\r\n\r\n &.small {\r\n ${props => ComponentXXSStyling(1, null)}\r\n }\r\n &.medium {\r\n ${props => ComponentXSStyling(1, null)}\r\n }\r\n\r\n pointer-events: none;\r\n`;\r\n\r\nconst LabelRow = styled.div<{ $margin?: string }>`\r\n display: flex;\r\n align-items: flex-start;\r\n height: 16px;\r\n margin-bottom: 4px;\r\n`;\r\n\r\nconst CopyContainer = styled.div`\r\n margin-left: auto;\r\n\r\n &:visited:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary', state: 'active' }, props.theme)};\r\n }\r\n }\r\n\r\n &:hover:not(.disabled),\r\n &.hover-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:focus:not(.disabled),\r\n &.focus-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:active:not(.disabled),\r\n &.active-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:not(.disabled)\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n\r\n &.disabled\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary', state: 'disabled' }, props.theme)};\r\n }\r\n }\r\n cursor: pointer;\r\n`;\r\n\r\nconst LabelRowInner = styled.div<{ $size: Size.Small | Size.Medium | undefined }>`\r\n display: flex;\r\n flex-direction: row;\r\n width: 100%;\r\n height: 100%;\r\n align-items: center;\r\n`;\r\n\r\n// Add component-specific types\r\nexport type LabelProps = {\r\n inputId: string;\r\n text: string;\r\n size?: Size.Small | Size.Medium;\r\n margin?: string;\r\n required?: boolean;\r\n showCopyButton?: boolean;\r\n};\r\n\r\nenum CopyState {\r\n Disabled = 0,\r\n Available = 1,\r\n Copied = 2\r\n}\r\n\r\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin, required: requiredProp, showCopyButton }: LabelProps) => {\r\n // Globally used variables within the component\r\n const theme = useTheme();\r\n const [required, setRequired] = React.useState<boolean>(false);\r\n const [copyState, setCopyState] = React.useState<CopyState>(CopyState.Available);\r\n\r\n /**\r\n * Checks if field is set as required and we have to mark it accordingly.\r\n */\r\n React.useEffect(() => {\r\n if(requiredProp === undefined)\r\n {\r\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\r\n setRequired(true);\r\n } else {\r\n setRequired(false);\r\n }\r\n }\r\n else\r\n setRequired(Boolean(requiredProp));\r\n }, []);\r\n /**\r\n * Triggers a click element on a specific element.\r\n * @param id - ID of the element which needs to be clicked.\r\n */\r\n const onTriggerClick = (id: string): void => {\r\n document.getElementById(id)?.click();\r\n };\r\n\r\n const copyInputClick = (e: any) => {\r\n e.preventDefault();\r\n if(copyState == CopyState.Copied)\r\n return;\r\n \r\n const val = (document.getElementById(inputId) as HTMLInputElement)?.value;\r\n if(val)\r\n {\r\n window.navigator.clipboard.writeText(val);\r\n setCopyState(CopyState.Copied);\r\n setTimeout(() => {\r\n setCopyState(CopyState.Available);\r\n }, 1000);\r\n }\r\n };\r\n\r\n return (\r\n <LabelRow $margin={margin}>\r\n <LabelRowInner $size={size}>\r\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\r\n {text}\r\n </Label>\r\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.generateToken({ componentType:'icon', defaultVariant:'critical' }, theme)} />}\r\n {showCopyButton && \r\n <CopyContainer className={copyState != CopyState.Available ? \"disabled\" : \"\"} onClick={copyInputClick}>\r\n { size == Size.Medium ? <ComponentXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXS> :\r\n <ComponentXXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXXS> }\r\n </CopyContainer> }\r\n </LabelRowInner>\r\n </LabelRow>\r\n );\r\n};\r\n\r\nexport default InputLabel;\r\n"],"mappings":"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","ignoreList":[]}
@@ -20,17 +20,21 @@ import { SystemIcons } from '../icons';
20
20
  // Add component-specific styles.
21
21
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
22
22
  const Label = styled.label`
23
- ${props => ComponentXXSStyling(1, COLORS.getColor('neutral_500', props.theme))}
23
+ color: ${props => COLORS.generateToken({
24
+ componentType: 'text',
25
+ defaultVariant: 'subtle'
26
+ }, props.theme)};
27
+ ${props => ComponentXXSStyling(1, null)}
24
28
 
25
29
  ${BREAKPOINTS.MEDIUM} {
26
- ${props => ComponentXSStyling(1, COLORS.getColor('neutral_500', props.theme))}
30
+ ${props => ComponentXSStyling(1, null)}
27
31
  }
28
32
 
29
33
  &.small {
30
- ${props => ComponentXXSStyling(1, COLORS.getColor('neutral_500', props.theme))}
34
+ ${props => ComponentXXSStyling(1, null)}
31
35
  }
32
36
  &.medium {
33
- ${props => ComponentXSStyling(1, COLORS.getColor('neutral_500', props.theme))}
37
+ ${props => ComponentXSStyling(1, null)}
34
38
  }
35
39
 
36
40
  pointer-events: none;
@@ -47,7 +51,11 @@ const CopyContainer = styled.div`
47
51
  &:visited:not(.disabled) {
48
52
  ${TypographyBase}
49
53
  {
50
- color: ${props => COLORS.getColor('primary_800', props.theme)};
54
+ color: ${props => COLORS.generateToken({
55
+ componentType: 'text-link',
56
+ defaultVariant: 'primary',
57
+ state: 'active'
58
+ }, props.theme)};
51
59
  }
52
60
  }
53
61
 
@@ -55,7 +63,10 @@ const CopyContainer = styled.div`
55
63
  &.hover-state:not(.disabled) {
56
64
  ${TypographyBase}
57
65
  {
58
- color: ${props => COLORS.getColor('primary_700', props.theme)};
66
+ color: ${props => COLORS.generateToken({
67
+ componentType: 'text-link',
68
+ defaultVariant: 'primary'
69
+ }, props.theme)};
59
70
  text-decoration-line: underline;
60
71
  }
61
72
  }
@@ -64,7 +75,10 @@ const CopyContainer = styled.div`
64
75
  &.focus-state:not(.disabled) {
65
76
  ${TypographyBase}
66
77
  {
67
- color: ${props => COLORS.getColor('primary_700', props.theme)};
78
+ color: ${props => COLORS.generateToken({
79
+ componentType: 'text-link',
80
+ defaultVariant: 'primary'
81
+ }, props.theme)};
68
82
  background-color: white;
69
83
  text-decoration-line: underline;
70
84
  }
@@ -74,7 +88,10 @@ const CopyContainer = styled.div`
74
88
  &.active-state:not(.disabled) {
75
89
  ${TypographyBase}
76
90
  {
77
- color: ${props => COLORS.getColor('primary_700', props.theme)};
91
+ color: ${props => COLORS.generateToken({
92
+ componentType: 'text-link',
93
+ defaultVariant: 'primary'
94
+ }, props.theme)};
78
95
  background-color: white;
79
96
  text-decoration-line: underline;
80
97
  }
@@ -89,7 +106,10 @@ const CopyContainer = styled.div`
89
106
  text-decoration-style: solid;
90
107
  text-decoration-line: none;
91
108
  font-weight: 700;
92
- color: ${props => COLORS.getColor('primary_600', props.theme)};
109
+ color: ${props => COLORS.generateToken({
110
+ componentType: 'text-link',
111
+ defaultVariant: 'primary'
112
+ }, props.theme)};
93
113
  }
94
114
  }
95
115
 
@@ -102,7 +122,11 @@ const CopyContainer = styled.div`
102
122
  text-decoration-style: solid;
103
123
  text-decoration-line: none;
104
124
  font-weight: 700;
105
- color: ${props => COLORS.getColor('neutral_300', props.theme)};
125
+ color: ${props => COLORS.generateToken({
126
+ componentType: 'text-link',
127
+ defaultVariant: 'primary',
128
+ state: 'disabled'
129
+ }, props.theme)};
106
130
  }
107
131
  }
108
132
  cursor: pointer;
@@ -178,7 +202,10 @@ const InputLabel = _ref => {
178
202
  children: text
179
203
  }), required && /*#__PURE__*/_jsx(SystemIcons.Asterisk, {
180
204
  size: "16px",
181
- color: COLORS.getColor('critical_500', theme)
205
+ color: COLORS.generateToken({
206
+ componentType: 'icon',
207
+ defaultVariant: 'critical'
208
+ }, theme)
182
209
  }), showCopyButton && /*#__PURE__*/_jsx(CopyContainer, {
183
210
  className: copyState != CopyState.Available ? "disabled" : "",
184
211
  onClick: copyInputClick,
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","names":["React","BREAKPOINTS","COLORS","Size","styled","useTheme","ComponentXS","ComponentXSStyling","ComponentXXS","ComponentXXSStyling","TypographyBase","SystemIcons","jsx","_jsx","jsxs","_jsxs","Label","label","props","getColor","theme","MEDIUM","LabelRow","div","CopyContainer","LabelRowInner","CopyState","InputLabel","_ref","inputId","text","size","margin","required","requiredProp","showCopyButton","setRequired","useState","copyState","setCopyState","Available","useEffect","undefined","document","getElementById","getAttribute","Boolean","onTriggerClick","id","click","copyInputClick","e","preventDefault","Copied","val","value","window","navigator","clipboard","writeText","setTimeout","$margin","children","$size","htmlFor","onClick","className","Asterisk","color","Medium","propTypes","_pt","string","isRequired","bool"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\r\n * Import React libraries.\r\n */\r\nimport * as React from 'react';\r\n\r\n/**\r\n * Import custom styles.\r\n */\r\nimport { BREAKPOINTS, COLORS } from '../styles';\r\nimport { Size } from '../types';\r\n\r\n/**\r\n * Import third-party libraries.\r\n */\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { ComponentXS, ComponentXSStyling, ComponentXXS, ComponentXXSStyling, TypographyBase } from '../styles/typography';\r\nimport { SystemIcons } from '../icons';\r\n\r\n// Add component-specific styles.\r\nconst Label = styled.label`\r\n ${props => ComponentXXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ${props => ComponentXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n }\r\n\r\n &.small {\r\n ${props => ComponentXXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n }\r\n &.medium {\r\n ${props => ComponentXSStyling(1, COLORS.getColor('neutral_500', props.theme))}\r\n }\r\n\r\n pointer-events: none;\r\n`;\r\n\r\nconst LabelRow = styled.div<{ $margin?: string }>`\r\n display: flex;\r\n align-items: flex-start;\r\n height: 16px;\r\n margin-bottom: 4px;\r\n`;\r\n\r\nconst CopyContainer = styled.div`\r\n margin-left: auto;\r\n\r\n &:visited:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_800', props.theme)};\r\n }\r\n }\r\n\r\n &:hover:not(.disabled),\r\n &.hover-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_700', props.theme)};\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:focus:not(.disabled),\r\n &.focus-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_700', props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:active:not(.disabled),\r\n &.active-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.getColor('primary_700', props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:not(.disabled)\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n\r\n &.disabled\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n }\r\n cursor: pointer;\r\n`;\r\n\r\nconst LabelRowInner = styled.div<{ $size: Size.Small | Size.Medium | undefined }>`\r\n display: flex;\r\n flex-direction: row;\r\n width: 100%;\r\n height: 100%;\r\n align-items: center;\r\n`;\r\n\r\n// Add component-specific types\r\nexport type LabelProps = {\r\n inputId: string;\r\n text: string;\r\n size?: Size.Small | Size.Medium;\r\n margin?: string;\r\n required?: boolean;\r\n showCopyButton?: boolean;\r\n};\r\n\r\nenum CopyState {\r\n Disabled = 0,\r\n Available = 1,\r\n Copied = 2\r\n}\r\n\r\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin, required: requiredProp, showCopyButton }: LabelProps) => {\r\n // Globally used variables within the component\r\n const theme = useTheme();\r\n const [required, setRequired] = React.useState<boolean>(false);\r\n const [copyState, setCopyState] = React.useState<CopyState>(CopyState.Available);\r\n\r\n /**\r\n * Checks if field is set as required and we have to mark it accordingly.\r\n */\r\n React.useEffect(() => {\r\n if(requiredProp === undefined)\r\n {\r\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\r\n setRequired(true);\r\n } else {\r\n setRequired(false);\r\n }\r\n }\r\n else\r\n setRequired(Boolean(requiredProp));\r\n }, []);\r\n /**\r\n * Triggers a click element on a specific element.\r\n * @param id - ID of the element which needs to be clicked.\r\n */\r\n const onTriggerClick = (id: string): void => {\r\n document.getElementById(id)?.click();\r\n };\r\n\r\n const copyInputClick = (e: any) => {\r\n e.preventDefault();\r\n if(copyState == CopyState.Copied)\r\n return;\r\n \r\n const val = (document.getElementById(inputId) as HTMLInputElement)?.value;\r\n if(val)\r\n {\r\n window.navigator.clipboard.writeText(val);\r\n setCopyState(CopyState.Copied);\r\n setTimeout(() => {\r\n setCopyState(CopyState.Available);\r\n }, 1000);\r\n }\r\n };\r\n\r\n return (\r\n <LabelRow $margin={margin}>\r\n <LabelRowInner $size={size}>\r\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\r\n {text}\r\n </Label>\r\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.getColor('critical_500', theme)} />}\r\n\r\n {showCopyButton && \r\n <CopyContainer className={copyState != CopyState.Available ? \"disabled\" : \"\"} onClick={copyInputClick}>\r\n { size == Size.Medium ? <ComponentXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXS> :\r\n <ComponentXXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXXS> }\r\n </CopyContainer> }\r\n </LabelRowInner>\r\n </LabelRow>\r\n );\r\n};\r\n\r\nexport default InputLabel;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Label.js","names":["React","BREAKPOINTS","COLORS","Size","styled","useTheme","ComponentXS","ComponentXSStyling","ComponentXXS","ComponentXXSStyling","TypographyBase","SystemIcons","jsx","_jsx","jsxs","_jsxs","Label","label","props","generateToken","componentType","defaultVariant","theme","MEDIUM","LabelRow","div","CopyContainer","state","LabelRowInner","CopyState","InputLabel","_ref","inputId","text","size","margin","required","requiredProp","showCopyButton","setRequired","useState","copyState","setCopyState","Available","useEffect","undefined","document","getElementById","getAttribute","Boolean","onTriggerClick","id","click","copyInputClick","e","preventDefault","Copied","val","value","window","navigator","clipboard","writeText","setTimeout","$margin","children","$size","htmlFor","onClick","className","Asterisk","color","Medium","propTypes","_pt","string","isRequired","bool"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\r\n * Import React libraries.\r\n */\r\nimport * as React from 'react';\r\n\r\n/**\r\n * Import custom styles.\r\n */\r\nimport { BREAKPOINTS, COLORS } from '../styles';\r\nimport { Size } from '../types';\r\n\r\n/**\r\n * Import third-party libraries.\r\n */\r\nimport styled, { useTheme } from 'styled-components';\r\nimport { ComponentXS, ComponentXSStyling, ComponentXXS, ComponentXXSStyling, TypographyBase } from '../styles/typography';\r\nimport { SystemIcons } from '../icons';\r\n\r\n// Add component-specific styles.\r\nconst Label = styled.label`\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n ${props => ComponentXXSStyling(1, null)}\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ${props => ComponentXSStyling(1, null)}\r\n }\r\n\r\n &.small {\r\n ${props => ComponentXXSStyling(1, null)}\r\n }\r\n &.medium {\r\n ${props => ComponentXSStyling(1, null)}\r\n }\r\n\r\n pointer-events: none;\r\n`;\r\n\r\nconst LabelRow = styled.div<{ $margin?: string }>`\r\n display: flex;\r\n align-items: flex-start;\r\n height: 16px;\r\n margin-bottom: 4px;\r\n`;\r\n\r\nconst CopyContainer = styled.div`\r\n margin-left: auto;\r\n\r\n &:visited:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary', state: 'active' }, props.theme)};\r\n }\r\n }\r\n\r\n &:hover:not(.disabled),\r\n &.hover-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:focus:not(.disabled),\r\n &.focus-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:active:not(.disabled),\r\n &.active-state:not(.disabled) {\r\n ${TypographyBase}\r\n {\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n background-color: white;\r\n text-decoration-line: underline;\r\n }\r\n }\r\n\r\n &:not(.disabled)\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary' }, props.theme)};\r\n }\r\n }\r\n\r\n &.disabled\r\n {\r\n ${TypographyBase}\r\n {\r\n outline: none;\r\n padding: 2px 0;\r\n text-decoration-style: solid;\r\n text-decoration-line: none;\r\n font-weight: 700;\r\n color: ${props => COLORS.generateToken({componentType:'text-link', defaultVariant: 'primary', state: 'disabled' }, props.theme)};\r\n }\r\n }\r\n cursor: pointer;\r\n`;\r\n\r\nconst LabelRowInner = styled.div<{ $size: Size.Small | Size.Medium | undefined }>`\r\n display: flex;\r\n flex-direction: row;\r\n width: 100%;\r\n height: 100%;\r\n align-items: center;\r\n`;\r\n\r\n// Add component-specific types\r\nexport type LabelProps = {\r\n inputId: string;\r\n text: string;\r\n size?: Size.Small | Size.Medium;\r\n margin?: string;\r\n required?: boolean;\r\n showCopyButton?: boolean;\r\n};\r\n\r\nenum CopyState {\r\n Disabled = 0,\r\n Available = 1,\r\n Copied = 2\r\n}\r\n\r\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin, required: requiredProp, showCopyButton }: LabelProps) => {\r\n // Globally used variables within the component\r\n const theme = useTheme();\r\n const [required, setRequired] = React.useState<boolean>(false);\r\n const [copyState, setCopyState] = React.useState<CopyState>(CopyState.Available);\r\n\r\n /**\r\n * Checks if field is set as required and we have to mark it accordingly.\r\n */\r\n React.useEffect(() => {\r\n if(requiredProp === undefined)\r\n {\r\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\r\n setRequired(true);\r\n } else {\r\n setRequired(false);\r\n }\r\n }\r\n else\r\n setRequired(Boolean(requiredProp));\r\n }, []);\r\n /**\r\n * Triggers a click element on a specific element.\r\n * @param id - ID of the element which needs to be clicked.\r\n */\r\n const onTriggerClick = (id: string): void => {\r\n document.getElementById(id)?.click();\r\n };\r\n\r\n const copyInputClick = (e: any) => {\r\n e.preventDefault();\r\n if(copyState == CopyState.Copied)\r\n return;\r\n \r\n const val = (document.getElementById(inputId) as HTMLInputElement)?.value;\r\n if(val)\r\n {\r\n window.navigator.clipboard.writeText(val);\r\n setCopyState(CopyState.Copied);\r\n setTimeout(() => {\r\n setCopyState(CopyState.Available);\r\n }, 1000);\r\n }\r\n };\r\n\r\n return (\r\n <LabelRow $margin={margin}>\r\n <LabelRowInner $size={size}>\r\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\r\n {text}\r\n </Label>\r\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.generateToken({ componentType:'icon', defaultVariant:'critical' }, theme)} />}\r\n {showCopyButton && \r\n <CopyContainer className={copyState != CopyState.Available ? \"disabled\" : \"\"} onClick={copyInputClick}>\r\n { size == Size.Medium ? <ComponentXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXS> :\r\n <ComponentXXS>{copyState == CopyState.Copied ? 'Copied' : 'Copy'}</ComponentXXS> }\r\n </CopyContainer> }\r\n </LabelRowInner>\r\n </LabelRow>\r\n );\r\n};\r\n\r\nexport default InputLabel;\r\n"],"mappings":"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","ignoreList":[]}
@@ -29,7 +29,13 @@ const Container = _styledComponents.default.div``;
29
29
  const PrefixContainer = _styledComponents.default.div`
30
30
  width: ${props => props.$size === _types.Size.Small ? '10px' : '11px'};
31
31
  height: ${props => props.$size === _types.Size.Small ? '20px' : '24px'};
32
- color: ${props => props.$disabled ? _styles.COLORS.getColor('neutral_300', props.theme) : _styles.COLORS.getColor('neutral_500', props.theme)};
32
+ color: ${props => props.$disabled ? _styles.COLORS.generateToken({
33
+ componentType: 'text',
34
+ state: 'disabled'
35
+ }, props.theme) : _styles.COLORS.generateToken({
36
+ componentType: 'text',
37
+ defaultVariant: 'subtle'
38
+ }, props.theme)};
33
39
  ${props => props.$size === _types.Size.Small ? (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, null) : (0, _typography.ComponentMStyling)(_typography.ComponentTextStyle.Regular, null)}
34
40
  position: absolute;
35
41
  padding: ${props => props.$size === _types.Size.Small ? '14px 0 14px 16px' : '16px 0 16px 16px'};
@@ -48,7 +54,10 @@ const OperatorWrapper = _styledComponents.default.div`
48
54
 
49
55
  .divider {
50
56
  margin: 16px 0;
51
- background: ${props => _styles.COLORS.getColor('neutral_200', props.theme)};
57
+ background: ${props => _styles.COLORS.generateToken({
58
+ componentType: 'border',
59
+ defaultVariant: 'subtle'
60
+ }, props.theme)};
52
61
  width: 1px;
53
62
  }
54
63
  `;
@@ -57,11 +66,23 @@ const NumberInput = _styledComponents.default.input`
57
66
  border: none;
58
67
  border-radius: 4px;
59
68
  text-overflow: ellipsis;
60
- box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.getColor('neutral_400', props.theme)};
69
+ box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.generateToken({
70
+ componentType: 'border',
71
+ defaultVariant: 'default'
72
+ }, props.theme)};
61
73
  outline: none;
62
- color: ${props => _styles.COLORS.getColor('neutral_500', props.theme)};
74
+ color: ${props => _styles.COLORS.generateToken({
75
+ componentType: 'text',
76
+ defaultVariant: 'subtle'
77
+ }, props.theme)};
63
78
 
64
- ${props => props.$fieldSize === _types.Size.Small ? (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.getColor('black', props.theme)) : (0, _typography.ComponentMStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.getColor('black', props.theme))}
79
+ ${props => props.$fieldSize === _types.Size.Small ? (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.generateToken({
80
+ componentType: 'text',
81
+ defaultVariant: 'default'
82
+ }, props.theme)) : (0, _typography.ComponentMStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.generateToken({
83
+ componentType: 'text',
84
+ defaultVariant: 'default'
85
+ }, props.theme))}
65
86
  ${props => props.$type === 'NumberField' ? `
66
87
  padding: ${props.$fieldSize === _types.Size.Small ? '14px 97px 14px 16px' : '16px 97px 16px 16px'};
67
88
  padding-left: ${props.$hasPrefix ? '30px' : ''};
@@ -74,7 +95,10 @@ const NumberInput = _styledComponents.default.input`
74
95
  }
75
96
 
76
97
  &:focus:not(.focus-visible):not(.disabled):not(.readOnly):not(.valid):not(.invalid) {
77
- box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.getColor('primary_800', props.theme)};
98
+ box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
99
+ componentType: 'border',
100
+ state: 'hover'
101
+ }, props.theme)};
78
102
  }
79
103
 
80
104
  &.focus-visible {
@@ -82,35 +106,61 @@ const NumberInput = _styledComponents.default.input`
82
106
  }
83
107
 
84
108
  &:hover:not(.disabled):not(.readOnly):not(.valid):not(.invalid) {
85
- box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.getColor('primary_700', props.theme)};
109
+ box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
110
+ componentType: 'border',
111
+ state: 'hover'
112
+ }, props.theme)};
86
113
  }
87
114
 
88
115
  &.disabled {
89
- box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.getColor('neutral_100', props.theme)};
116
+ box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.generateToken({
117
+ componentType: 'border',
118
+ state: 'disabled'
119
+ }, props.theme)};
90
120
  cursor: not-allowed;
91
- color: ${props => _styles.COLORS.getColor('neutral_300', props.theme)};
121
+ color: ${props => _styles.COLORS.generateToken({
122
+ componentType: 'text',
123
+ state: 'disabled'
124
+ }, props.theme)};
92
125
  pointer-events: none;
93
126
 
94
127
  &::placeholder {
95
- color: ${props => _styles.COLORS.getColor('neutral_300', props.theme)};
128
+ color: ${props => _styles.COLORS.generateToken({
129
+ componentType: 'text',
130
+ state: 'disabled'
131
+ }, props.theme)};
96
132
  }
97
133
  }
98
134
 
99
135
  &.readOnly {
100
- background: ${props => _styles.COLORS.getColor('neutral_100', props.theme)};
101
- box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.getColor('neutral_300', props.theme)};
136
+ background: ${props => _styles.COLORS.generateToken({
137
+ componentType: 'bg-surface',
138
+ state: 'disabled'
139
+ }, props.theme)};
140
+ box-shadow: inset 0 0 0 1px ${props => _styles.COLORS.generateToken({
141
+ componentType: 'border',
142
+ defaultVariant: 'default'
143
+ }, props.theme)};
102
144
  cursor: not-allowed;
103
- background: ${props => _styles.COLORS.getColor('neutral_100', props.theme)};
104
145
  pointer-events: none;
105
- color: ${props => _styles.COLORS.getColor('neutral_500', props.theme)};
146
+ color: ${props => _styles.COLORS.generateToken({
147
+ componentType: 'text',
148
+ defaultVariant: 'subtle'
149
+ }, props.theme)};
106
150
  }
107
151
 
108
152
  &.valid {
109
- box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.getColor('correct_400', props.theme)};
153
+ box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
154
+ componentType: 'border',
155
+ defaultVariant: 'positive'
156
+ }, props.theme)};
110
157
  }
111
158
 
112
159
  &.invalid {
113
- box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.getColor('critical_400', props.theme)};
160
+ box-shadow: inset 0 0 0 2px ${props => _styles.COLORS.generateToken({
161
+ componentType: 'border',
162
+ defaultVariant: 'critical'
163
+ }, props.theme)};
114
164
  }
115
165
  `;
116
166
  const InputContainer = _styledComponents.default.div`
@@ -1 +1 @@
1
- {"version":3,"file":"NumberField.cjs","names":["React","_interopRequireWildcard","require","_TooltipStyles","_TooltipOverflow","_interopRequireDefault","_styledComponents","_Button","_common","_icons","_styles","_typography","_types","_styling","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Container","styled","div","PrefixContainer","props","$size","Size","Small","$disabled","COLORS","getColor","theme","ComponentSStyling","ComponentTextStyle","Regular","ComponentMStyling","OperatorWrapper","Medium","NumberInput","input","$fieldSize","$type","$hasPrefix","Italic","focusStyles","InputContainer","Z_INDEXES","focus","TooltipTrigger","LeftOperator","RightOperator","NumberField","forwardRef","ref","type","size","note","noteIcon","required","prefix","interval","minValue","maxValue","allowNegative","decimalPrecision","disabled","readOnly","state","value","placeholder","onChange","className","id","overflowTooltipPosition","dataTestId","rest","_objectWithoutProperties2","userInput","setUserInput","useState","toString","elementRef","useFocusVisibleRef","useEffect","useImperativeHandle","current","setVal","handleKeyPress","key","addInterval","subtractInterval","handleInput","preventDefault","simpleRegex","RegExp","decimalFormationRegEx","negativeDecimalFormationRegEx","allowNegativeRegex","decimalPrecisionRegex","undefined","negativeAndDecimalRegex","val","target","charAt","test","isInRange","replace","indexOf","lastIndexOf","includes","isDecimal","x","parseFloat","toFixed","parseInt","isNaN","Math","round","pow","isLocked","operator","operatorState","renderNumberFieldElements","jsxs","Fragment","children","jsx","IconButton","tabIndex","variant","shape","action","useTransparentBackground","SystemIcons","Minus","Plus","renderNumberInputElements","onKeyDown","concat","position","withArrow","maxWidth","align","ValidationMessage","States","Default","propTypes","_propTypes","string","number","bool","node","oneOf","func","_default","exports"],"sources":["../../src/InputFields/NumberField.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { TooltipTrigger } from '../Tooltips/TooltipStyles';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport styled from 'styled-components';\r\nimport {IconButton} from '../Button';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS, focusStyles, Z_INDEXES} from '../styles';\r\nimport {\r\n ComponentMStyling,\r\n ComponentSStyling,\r\n ComponentTextStyle,\r\n ComponentXSStyling,\r\n ComponentXXSStyling\r\n} from '../styles/typography';\r\nimport {Size, States, Testable} from '../types';\r\nimport {ValidationMessage} from \"./styling\";\r\n\r\nconst Container = styled.div``;\r\n\r\nconst PrefixContainer = styled.div<{ $size: Size, $disabled: boolean }>`\r\n width: ${props => props.$size === Size.Small ? '10px' : '11px'};\r\n height: ${props => props.$size === Size.Small ? '20px' : '24px'};\r\n color: ${props => props.$disabled ? COLORS.getColor('neutral_300', props.theme) : COLORS.getColor('neutral_500', props.theme)};\r\n ${props => props.$size === Size.Small ? ComponentSStyling(ComponentTextStyle.Regular, null) : ComponentMStyling(ComponentTextStyle.Regular, null)}\r\n position: absolute;\r\n padding: ${props => props.$size === Size.Small ? '14px 0 14px 16px' : '16px 0 16px 16px'};\r\n`;\r\n\r\nconst OperatorWrapper = styled.div<{ $size: Size }>`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n display: flex;\r\n margin: ${props => props.$size === Size.Medium ? '4px 0' : ''};\r\n\r\n svg {\r\n height: 14px;\r\n width: 14px;\r\n }\r\n\r\n .divider {\r\n margin: 16px 0;\r\n background: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n width: 1px;\r\n }\r\n`;\r\n\r\nconst NumberInput = styled.input<{ $fieldSize: Size, $hasPrefix: boolean, $type: string }>`\r\n width: 100%;\r\n border: none;\r\n border-radius: 4px;\r\n text-overflow: ellipsis;\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.getColor('neutral_400', props.theme)};\r\n outline: none;\r\n color: ${props => COLORS.getColor('neutral_500', props.theme)};\r\n\r\n ${props => props.$fieldSize === Size.Small ? ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme)) : ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n ${props => props.$type === 'NumberField' ? `\r\n padding: ${props.$fieldSize === Size.Small ? '14px 97px 14px 16px' : '16px 97px 16px 16px'};\r\n padding-left: ${props.$hasPrefix ? '30px' : ''};\r\n ` : ''}\r\n ${props => props.$type === 'NumberInput' ? `\r\n padding: ${props.$fieldSize === Size.Small ? '14px 48px' : '16px 48px'};\r\n ` : ''}\r\n &::placeholder {\r\n ${props => props.$fieldSize === Size.Small ? ComponentSStyling(ComponentTextStyle.Italic, null) : ComponentMStyling(ComponentTextStyle.Italic, null)}\r\n }\r\n\r\n &:focus:not(.focus-visible):not(.disabled):not(.readOnly):not(.valid):not(.invalid) {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.getColor('primary_800', props.theme)};\r\n }\r\n\r\n &.focus-visible {\r\n ${focusStyles}\r\n }\r\n\r\n &:hover:not(.disabled):not(.readOnly):not(.valid):not(.invalid) {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.getColor('primary_700', props.theme)};\r\n }\r\n\r\n &.disabled {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.getColor('neutral_100', props.theme)};\r\n cursor: not-allowed;\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n pointer-events: none;\r\n\r\n &::placeholder {\r\n color: ${props => COLORS.getColor('neutral_300', props.theme)};\r\n }\r\n }\r\n\r\n &.readOnly {\r\n background: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.getColor('neutral_300', props.theme)};\r\n cursor: not-allowed;\r\n background: ${props => COLORS.getColor('neutral_100', props.theme)};\r\n pointer-events: none;\r\n color: ${props => COLORS.getColor('neutral_500', props.theme)};\r\n }\r\n\r\n &.valid {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.getColor('correct_400', props.theme)};\r\n }\r\n\r\n &.invalid {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.getColor('critical_400', props.theme)};\r\n }\r\n`;\r\n\r\nconst InputContainer = styled.div<{ $size: Size, $type: string }>`\r\n min-width: ${props => props.$type === 'NumberField' ? '160px' : '144px'};\r\n height: ${props => props.$size === Size.Small ? '48px' : '56px'};\r\n display: flex;\r\n position: relative;\r\n margin-bottom: 4px;\r\n\r\n input.focus-visible ~ div.operator {\r\n z-index: ${Z_INDEXES.focus};\r\n }\r\n\r\n ${TooltipTrigger('hover')}\r\n`;\r\n\r\nconst LeftOperator = styled.div<{ $size: Size }>`\r\n position: absolute;\r\n top: ${props => props.$size === Size.Small ? '0' : '4px'};\r\n left: 0;\r\n`;\r\n\r\nconst RightOperator = styled.div<{ $size: Size }>`\r\n position: absolute;\r\n top: ${props => props.$size === Size.Small ? '0' : '4px'};\r\n right: 0;\r\n`;\r\n\r\nexport interface NumberFieldProps extends Testable, Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'onKeyDown' | 'onClick' | 'tabIndex' | 'size' | 'value' | 'prefix' | 'min' | 'max'>\r\n{\r\n /**\r\n * Optional. The size of the number field. Can be 'Small' or 'Medium'.\r\n */\r\n size?: Size.Small | Size.Medium;\r\n\r\n /**\r\n * Optional. The prefix to be displayed before the number in the field.\r\n */\r\n prefix?: string;\r\n\r\n /**\r\n * Optional. The interval for incrementing and decrementing the number in the field.\r\n */\r\n interval?: number;\r\n\r\n /**\r\n * Optional. The minimum value that can be entered in the field.\r\n */\r\n minValue?: number;\r\n\r\n /**\r\n * Optional. The maximum value that can be entered in the field.\r\n */\r\n maxValue?: number;\r\n\r\n /**\r\n * Optional. A boolean indicating whether negative numbers are allowed.\r\n */\r\n allowNegative?: boolean;\r\n\r\n /**\r\n * Optional. The number of decimal places allowed in the number.\r\n */\r\n decimalPrecision?: number;\r\n\r\n /**\r\n * Optional. The state of the number field. Can be 'Valid' or 'Invalid'.\r\n */\r\n state?: States.Valid | States.Invalid;\r\n\r\n /**\r\n * Optional. A note to be displayed below the number field.\r\n */\r\n note?: string;\r\n\r\n /**\r\n * Optional. An icon to be displayed next to the note.\r\n */\r\n noteIcon?: React.ReactNode;\r\n\r\n /**\r\n * Optional. The type of the number field. Can be 'NumberField' or 'NumberInput'.\r\n */\r\n type?: 'NumberField' | 'NumberInput';\r\n\r\n /**\r\n * Optional. The current value of the number field.\r\n */\r\n value?: number;\r\n\r\n /**\r\n * Optional. A function to be called when the value of the number field changes.\r\n */\r\n onChange?: (e: number) => void;\r\n\r\n /**\r\n * Optional. The position of the tooltip when the number overflows. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n}\r\n\r\nconst NumberField = React.forwardRef<HTMLInputElement, NumberFieldProps>((props, ref) => {\r\n const {\r\n type = 'NumberField',\r\n size = Size.Medium,\r\n note,\r\n noteIcon,\r\n required,\r\n prefix,\r\n interval = 1,\r\n minValue,\r\n maxValue,\r\n allowNegative,\r\n decimalPrecision,\r\n disabled,\r\n readOnly,\r\n state,\r\n value,\r\n placeholder,\r\n onChange,\r\n className,\r\n id,\r\n overflowTooltipPosition,\r\n dataTestId,\r\n ...rest\r\n } = props;\r\n\r\n const [userInput, setUserInput] = React.useState(value ? value.toString() : '');\r\n\r\n const elementRef = useFocusVisibleRef();\r\n\r\n React.useEffect(() => setUserInput(`${value ?? ''}`), [value]);\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const setVal = (e: string) => {\r\n setUserInput(e);\r\n onChange && onChange(+e);\r\n }\r\n\r\n const handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\r\n switch (e.key) {\r\n case 'ArrowUp':\r\n addInterval();\r\n break;\r\n case 'ArrowDown':\r\n subtractInterval();\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n const handleInput = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n e.preventDefault();\r\n let simpleRegex = new RegExp(/^[0-9]\\d*$/);\r\n let decimalFormationRegEx = new RegExp(/^[0-9]\\d*\\.$/);\r\n let negativeDecimalFormationRegEx = new RegExp(/^[-][0-9]\\d*\\.$/);\r\n\r\n let allowNegativeRegex = new RegExp(/^[-][0-9]\\d*$/);\r\n let decimalPrecisionRegex = decimalPrecision ? new RegExp(`^[0-9]\\\\d*\\\\.[0-9]\\\\d{0,${decimalPrecision-1}}$`) : undefined;\r\n let negativeAndDecimalRegex = (decimalPrecision && allowNegative) ? new RegExp(`^[-][0-9]\\\\d*\\\\.[0-9]\\\\d{0,${decimalPrecision-1}}$`) : undefined;\r\n\r\n let val = e.target.value;\r\n if (val !== '') {\r\n if (allowNegative && decimalPrecision) {\r\n if (val.length === 1 && val.charAt(0) === '-')\r\n setVal(val);\r\n else {\r\n if ((negativeAndDecimalRegex!.test(val) || decimalPrecisionRegex!.test(val)) && isInRange(val, true))\r\n setVal(val);\r\n\r\n else if ((negativeDecimalFormationRegEx.test(val) || decimalFormationRegEx.test(val)) && isInRange(val.replace('.', ''), true))\r\n setVal(val);\r\n\r\n else if ((allowNegativeRegex.test(val) || simpleRegex.test(val)) && isInRange(val, true))\r\n setVal(val);\r\n }\r\n } else if (allowNegative) {\r\n if (val.length === 1 && val.charAt(0) === '-')\r\n setVal(val);\r\n else if ((allowNegativeRegex.test(val) || simpleRegex.test(val)) && isInRange(val, false))\r\n setVal(val);\r\n } else if (decimalPrecision && (val.indexOf('.') === val.lastIndexOf('.')) && isInRange(val, true)) {\r\n if (decimalPrecisionRegex!.test(val))\r\n setVal(val);\r\n else if (decimalFormationRegEx.test(val))\r\n setVal(val);\r\n else if (!val.includes('.') && simpleRegex.test(val))\r\n setVal(val);\r\n } else if (simpleRegex.test(val) && isInRange(val, false)) {\r\n setVal(val);\r\n }\r\n }\r\n\r\n if (val === '')\r\n setVal('');\r\n }\r\n\r\n const isInRange = (value: string, isDecimal: boolean): boolean => {\r\n let x = isDecimal ? parseFloat(parseFloat(value).toFixed(decimalPrecision)) : parseInt(value);\r\n if (minValue && minValue > x)\r\n return false;\r\n else if (maxValue && maxValue < x)\r\n return false;\r\n else\r\n return true;\r\n }\r\n\r\n const addInterval = () => {\r\n let val = decimalPrecision ? parseFloat(userInput) : parseInt(userInput);\r\n val = isNaN(val) && userInput === '' ? (minValue ? minValue - 1 : 0) : val;\r\n if (!isNaN(val)) {\r\n if (decimalPrecision)\r\n val = Math.round((val + interval) * Math.pow(10, decimalPrecision!)) / Math.pow(10, decimalPrecision!);\r\n else\r\n val += 1;\r\n\r\n if (maxValue && maxValue >= val)\r\n setVal(val.toString());\r\n else if (!maxValue)\r\n setVal(val.toString());\r\n }\r\n }\r\n\r\n const subtractInterval = () => {\r\n let val = decimalPrecision ? parseFloat(userInput) : parseInt(userInput);\r\n val = isNaN(val) && userInput === '' ? (maxValue ? maxValue + 1 : 0) : val;\r\n if (!isNaN(val)) {\r\n if (decimalPrecision)\r\n val = Math.round((val - interval) * Math.pow(10, decimalPrecision!)) / Math.pow(10, decimalPrecision!);\r\n else\r\n val -= 1;\r\n\r\n if ((minValue && minValue <= val) || !minValue) {\r\n if (allowNegative || val >= 0) {\r\n setVal(val.toString());\r\n }\r\n }\r\n }\r\n }\r\n\r\n const isLocked = (input: string, operator: string): boolean => {\r\n let val = decimalPrecision ? parseFloat(input) : parseInt(input);\r\n val = isNaN(val) && userInput === '' ? 0 : val;\r\n let operatorState = false;\r\n if (operator === 'add' && maxValue)\r\n operatorState = val >= maxValue;\r\n\r\n if (operator === 'subtract' && minValue)\r\n operatorState = val <= minValue;\r\n\r\n if (operator === 'subtract' && !minValue && !allowNegative)\r\n operatorState = val <= 0;\r\n\r\n return operatorState;\r\n }\r\n\r\n const renderNumberFieldElements = () => {\r\n return (\r\n <>\r\n {prefix && <PrefixContainer $size={size} $disabled={!!disabled} className=\"operator\">\r\n {prefix}\r\n </PrefixContainer>}\r\n\r\n <OperatorWrapper data-testid={'operators'} $size={size} className=\"operator\">\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => subtractInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'subtract')}>\r\n <SystemIcons.Minus size=\"14px\"/>\r\n </IconButton>\r\n <div className=\"divider\"></div>\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => addInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'add')}>\r\n <SystemIcons.Plus size=\"14px\"/>\r\n </IconButton>\r\n </OperatorWrapper>\r\n </>)\r\n }\r\n\r\n const renderNumberInputElements = () => {\r\n return (\r\n <>\r\n <LeftOperator data-testid={'leftOperator'} $size={size} className=\"operator\">\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => subtractInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'subtract')}>\r\n <SystemIcons.Minus size=\"14px\"/>\r\n </IconButton>\r\n </LeftOperator>\r\n <RightOperator data-testid={'rightOperator'} $size={size} className=\"operator\">\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => addInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'add')}>\r\n <SystemIcons.Plus size=\"14px\"/>\r\n </IconButton>\r\n </RightOperator>\r\n </>)\r\n }\r\n\r\n return (\r\n <Container>\r\n <InputContainer $type={type} $size={size} tabIndex={-1}>\r\n <NumberInput $type={type}\r\n id={id}\r\n data-testid={dataTestId}\r\n $fieldSize={size}\r\n $hasPrefix={!!prefix}\r\n placeholder={placeholder ? placeholder : 'Enter number'}\r\n value={userInput}\r\n ref={elementRef}\r\n tabIndex={(disabled || readOnly) ? -1 : 0}\r\n onChange={e => handleInput(e)}\r\n onKeyDown={e => handleKeyPress(e)}\r\n required={required}\r\n className={disabled ? ' disabled' : ''\r\n .concat(readOnly ? ' readOnly' : '')\r\n .concat(state ? ` ${state}` : '')\r\n .concat(className ? ` ${className}` : '')}\r\n {...rest}/>\r\n\r\n {type === 'NumberField' && renderNumberFieldElements()}\r\n {type === 'NumberInput' && renderNumberInputElements()}\r\n {value && <TooltipOverflow position={overflowTooltipPosition} input={elementRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {value?.toString()}\r\n </TooltipOverflow>}\r\n </InputContainer>\r\n\r\n {\r\n note &&\r\n <ValidationMessage type={state || States.Default}>\r\n {noteIcon}\r\n <span>{note}</span>\r\n </ValidationMessage>\r\n }\r\n\r\n </Container>\r\n );\r\n }\r\n )\r\n;\r\n\r\nexport default NumberField;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NumberField.cjs","names":["React","_interopRequireWildcard","require","_TooltipStyles","_TooltipOverflow","_interopRequireDefault","_styledComponents","_Button","_common","_icons","_styles","_typography","_types","_styling","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Container","styled","div","PrefixContainer","props","$size","Size","Small","$disabled","COLORS","generateToken","componentType","state","theme","defaultVariant","ComponentSStyling","ComponentTextStyle","Regular","ComponentMStyling","OperatorWrapper","Medium","NumberInput","input","$fieldSize","$type","$hasPrefix","Italic","focusStyles","InputContainer","Z_INDEXES","focus","TooltipTrigger","LeftOperator","RightOperator","NumberField","forwardRef","ref","type","size","note","noteIcon","required","prefix","interval","minValue","maxValue","allowNegative","decimalPrecision","disabled","readOnly","value","placeholder","onChange","className","id","overflowTooltipPosition","dataTestId","rest","_objectWithoutProperties2","userInput","setUserInput","useState","toString","elementRef","useFocusVisibleRef","useEffect","useImperativeHandle","current","setVal","handleKeyPress","key","addInterval","subtractInterval","handleInput","preventDefault","simpleRegex","RegExp","decimalFormationRegEx","negativeDecimalFormationRegEx","allowNegativeRegex","decimalPrecisionRegex","undefined","negativeAndDecimalRegex","val","target","charAt","test","isInRange","replace","indexOf","lastIndexOf","includes","isDecimal","x","parseFloat","toFixed","parseInt","isNaN","Math","round","pow","isLocked","operator","operatorState","renderNumberFieldElements","jsxs","Fragment","children","jsx","IconButton","tabIndex","variant","shape","action","useTransparentBackground","SystemIcons","Minus","Plus","renderNumberInputElements","onKeyDown","concat","position","withArrow","maxWidth","align","ValidationMessage","States","Default","propTypes","_propTypes","string","number","bool","node","oneOf","func","_default","exports"],"sources":["../../src/InputFields/NumberField.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { TooltipTrigger } from '../Tooltips/TooltipStyles';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport styled from 'styled-components';\r\nimport {IconButton} from '../Button';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS, focusStyles, Z_INDEXES} from '../styles';\r\nimport {\r\n ComponentMStyling,\r\n ComponentSStyling,\r\n ComponentTextStyle,\r\n ComponentXSStyling,\r\n ComponentXXSStyling\r\n} from '../styles/typography';\r\nimport {Size, States, Testable} from '../types';\r\nimport {ValidationMessage} from \"./styling\";\r\n\r\nconst Container = styled.div``;\r\n\r\nconst PrefixContainer = styled.div<{ $size: Size, $disabled: boolean }>`\r\n width: ${props => props.$size === Size.Small ? '10px' : '11px'};\r\n height: ${props => props.$size === Size.Small ? '20px' : '24px'};\r\n color: ${props => props.$disabled ? COLORS.generateToken({componentType:'text', state:'disabled'}, props.theme) : \r\n COLORS.generateToken({componentType:'text', defaultVariant:'subtle'}, props.theme)};\r\n ${props => props.$size === Size.Small ? ComponentSStyling(ComponentTextStyle.Regular, null) : ComponentMStyling(ComponentTextStyle.Regular, null)}\r\n position: absolute;\r\n padding: ${props => props.$size === Size.Small ? '14px 0 14px 16px' : '16px 0 16px 16px'};\r\n`;\r\n\r\nconst OperatorWrapper = styled.div<{ $size: Size }>`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n display: flex;\r\n margin: ${props => props.$size === Size.Medium ? '4px 0' : ''};\r\n\r\n svg {\r\n height: 14px;\r\n width: 14px;\r\n }\r\n\r\n .divider {\r\n margin: 16px 0;\r\n background: ${props => COLORS.generateToken({ componentType: 'border', defaultVariant: 'subtle' }, props.theme)};\r\n width: 1px;\r\n }\r\n`;\r\n\r\nconst NumberInput = styled.input<{ $fieldSize: Size, $hasPrefix: boolean, $type: string }>`\r\n width: 100%;\r\n border: none;\r\n border-radius: 4px;\r\n text-overflow: ellipsis;\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({componentType:'border', defaultVariant:'default' }, props.theme)};\r\n outline: none;\r\n color: ${props => COLORS.generateToken({componentType:'text', defaultVariant:'subtle'}, props.theme)};\r\n\r\n ${props => props.$fieldSize === Size.Small ? ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme)) :\r\n ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n ${props => props.$type === 'NumberField' ? `\r\n padding: ${props.$fieldSize === Size.Small ? '14px 97px 14px 16px' : '16px 97px 16px 16px'};\r\n padding-left: ${props.$hasPrefix ? '30px' : ''};\r\n ` : ''}\r\n ${props => props.$type === 'NumberInput' ? `\r\n padding: ${props.$fieldSize === Size.Small ? '14px 48px' : '16px 48px'};\r\n ` : ''}\r\n &::placeholder {\r\n ${props => props.$fieldSize === Size.Small ? ComponentSStyling(ComponentTextStyle.Italic, null) : ComponentMStyling(ComponentTextStyle.Italic, null)}\r\n }\r\n\r\n &:focus:not(.focus-visible):not(.disabled):not(.readOnly):not(.valid):not(.invalid) {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({ componentType:'border', state:'hover' }, props.theme)};\r\n }\r\n\r\n &.focus-visible {\r\n ${focusStyles}\r\n }\r\n\r\n &:hover:not(.disabled):not(.readOnly):not(.valid):not(.invalid) {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({ componentType:'border', state:'hover' }, props.theme)};\r\n }\r\n\r\n &.disabled {\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({ componentType:'border', state:'disabled' }, props.theme)};\r\n cursor: not-allowed;\r\n color: ${props => COLORS.generateToken({ componentType:'text', state:'disabled' }, props.theme)};\r\n pointer-events: none;\r\n\r\n &::placeholder {\r\n color: ${props => COLORS.generateToken({ componentType:'text', state:'disabled' }, props.theme)};\r\n }\r\n }\r\n\r\n &.readOnly {\r\n background: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'disabled' }, props.theme)};\r\n box-shadow: inset 0 0 0 1px ${props => COLORS.generateToken({ componentType: 'border', defaultVariant: 'default' }, props.theme)};\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n }\r\n\r\n &.valid {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({ componentType:'border', defaultVariant:'positive' }, props.theme)};\r\n }\r\n\r\n &.invalid {\r\n box-shadow: inset 0 0 0 2px ${props => COLORS.generateToken({ componentType:'border', defaultVariant:'critical' }, props.theme)};\r\n }\r\n`;\r\n\r\nconst InputContainer = styled.div<{ $size: Size, $type: string }>`\r\n min-width: ${props => props.$type === 'NumberField' ? '160px' : '144px'};\r\n height: ${props => props.$size === Size.Small ? '48px' : '56px'};\r\n display: flex;\r\n position: relative;\r\n margin-bottom: 4px;\r\n\r\n input.focus-visible ~ div.operator {\r\n z-index: ${Z_INDEXES.focus};\r\n }\r\n\r\n ${TooltipTrigger('hover')}\r\n`;\r\n\r\nconst LeftOperator = styled.div<{ $size: Size }>`\r\n position: absolute;\r\n top: ${props => props.$size === Size.Small ? '0' : '4px'};\r\n left: 0;\r\n`;\r\n\r\nconst RightOperator = styled.div<{ $size: Size }>`\r\n position: absolute;\r\n top: ${props => props.$size === Size.Small ? '0' : '4px'};\r\n right: 0;\r\n`;\r\n\r\nexport interface NumberFieldProps extends Testable, Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'onKeyDown' | 'onClick' | 'tabIndex' | 'size' | 'value' | 'prefix' | 'min' | 'max'>\r\n{\r\n /**\r\n * Optional. The size of the number field. Can be 'Small' or 'Medium'.\r\n */\r\n size?: Size.Small | Size.Medium;\r\n\r\n /**\r\n * Optional. The prefix to be displayed before the number in the field.\r\n */\r\n prefix?: string;\r\n\r\n /**\r\n * Optional. The interval for incrementing and decrementing the number in the field.\r\n */\r\n interval?: number;\r\n\r\n /**\r\n * Optional. The minimum value that can be entered in the field.\r\n */\r\n minValue?: number;\r\n\r\n /**\r\n * Optional. The maximum value that can be entered in the field.\r\n */\r\n maxValue?: number;\r\n\r\n /**\r\n * Optional. A boolean indicating whether negative numbers are allowed.\r\n */\r\n allowNegative?: boolean;\r\n\r\n /**\r\n * Optional. The number of decimal places allowed in the number.\r\n */\r\n decimalPrecision?: number;\r\n\r\n /**\r\n * Optional. The state of the number field. Can be 'Valid' or 'Invalid'.\r\n */\r\n state?: States.Valid | States.Invalid;\r\n\r\n /**\r\n * Optional. A note to be displayed below the number field.\r\n */\r\n note?: string;\r\n\r\n /**\r\n * Optional. An icon to be displayed next to the note.\r\n */\r\n noteIcon?: React.ReactNode;\r\n\r\n /**\r\n * Optional. The type of the number field. Can be 'NumberField' or 'NumberInput'.\r\n */\r\n type?: 'NumberField' | 'NumberInput';\r\n\r\n /**\r\n * Optional. The current value of the number field.\r\n */\r\n value?: number;\r\n\r\n /**\r\n * Optional. A function to be called when the value of the number field changes.\r\n */\r\n onChange?: (e: number) => void;\r\n\r\n /**\r\n * Optional. The position of the tooltip when the number overflows. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n}\r\n\r\nconst NumberField = React.forwardRef<HTMLInputElement, NumberFieldProps>((props, ref) => {\r\n const {\r\n type = 'NumberField',\r\n size = Size.Medium,\r\n note,\r\n noteIcon,\r\n required,\r\n prefix,\r\n interval = 1,\r\n minValue,\r\n maxValue,\r\n allowNegative,\r\n decimalPrecision,\r\n disabled,\r\n readOnly,\r\n state,\r\n value,\r\n placeholder,\r\n onChange,\r\n className,\r\n id,\r\n overflowTooltipPosition,\r\n dataTestId,\r\n ...rest\r\n } = props;\r\n\r\n const [userInput, setUserInput] = React.useState(value ? value.toString() : '');\r\n\r\n const elementRef = useFocusVisibleRef();\r\n\r\n React.useEffect(() => setUserInput(`${value ?? ''}`), [value]);\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const setVal = (e: string) => {\r\n setUserInput(e);\r\n onChange && onChange(+e);\r\n }\r\n\r\n const handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\r\n switch (e.key) {\r\n case 'ArrowUp':\r\n addInterval();\r\n break;\r\n case 'ArrowDown':\r\n subtractInterval();\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n const handleInput = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n e.preventDefault();\r\n let simpleRegex = new RegExp(/^[0-9]\\d*$/);\r\n let decimalFormationRegEx = new RegExp(/^[0-9]\\d*\\.$/);\r\n let negativeDecimalFormationRegEx = new RegExp(/^[-][0-9]\\d*\\.$/);\r\n\r\n let allowNegativeRegex = new RegExp(/^[-][0-9]\\d*$/);\r\n let decimalPrecisionRegex = decimalPrecision ? new RegExp(`^[0-9]\\\\d*\\\\.[0-9]\\\\d{0,${decimalPrecision-1}}$`) : undefined;\r\n let negativeAndDecimalRegex = (decimalPrecision && allowNegative) ? new RegExp(`^[-][0-9]\\\\d*\\\\.[0-9]\\\\d{0,${decimalPrecision-1}}$`) : undefined;\r\n\r\n let val = e.target.value;\r\n if (val !== '') {\r\n if (allowNegative && decimalPrecision) {\r\n if (val.length === 1 && val.charAt(0) === '-')\r\n setVal(val);\r\n else {\r\n if ((negativeAndDecimalRegex!.test(val) || decimalPrecisionRegex!.test(val)) && isInRange(val, true))\r\n setVal(val);\r\n\r\n else if ((negativeDecimalFormationRegEx.test(val) || decimalFormationRegEx.test(val)) && isInRange(val.replace('.', ''), true))\r\n setVal(val);\r\n\r\n else if ((allowNegativeRegex.test(val) || simpleRegex.test(val)) && isInRange(val, true))\r\n setVal(val);\r\n }\r\n } else if (allowNegative) {\r\n if (val.length === 1 && val.charAt(0) === '-')\r\n setVal(val);\r\n else if ((allowNegativeRegex.test(val) || simpleRegex.test(val)) && isInRange(val, false))\r\n setVal(val);\r\n } else if (decimalPrecision && (val.indexOf('.') === val.lastIndexOf('.')) && isInRange(val, true)) {\r\n if (decimalPrecisionRegex!.test(val))\r\n setVal(val);\r\n else if (decimalFormationRegEx.test(val))\r\n setVal(val);\r\n else if (!val.includes('.') && simpleRegex.test(val))\r\n setVal(val);\r\n } else if (simpleRegex.test(val) && isInRange(val, false)) {\r\n setVal(val);\r\n }\r\n }\r\n\r\n if (val === '')\r\n setVal('');\r\n }\r\n\r\n const isInRange = (value: string, isDecimal: boolean): boolean => {\r\n let x = isDecimal ? parseFloat(parseFloat(value).toFixed(decimalPrecision)) : parseInt(value);\r\n if (minValue && minValue > x)\r\n return false;\r\n else if (maxValue && maxValue < x)\r\n return false;\r\n else\r\n return true;\r\n }\r\n\r\n const addInterval = () => {\r\n let val = decimalPrecision ? parseFloat(userInput) : parseInt(userInput);\r\n val = isNaN(val) && userInput === '' ? (minValue ? minValue - 1 : 0) : val;\r\n if (!isNaN(val)) {\r\n if (decimalPrecision)\r\n val = Math.round((val + interval) * Math.pow(10, decimalPrecision!)) / Math.pow(10, decimalPrecision!);\r\n else\r\n val += 1;\r\n\r\n if (maxValue && maxValue >= val)\r\n setVal(val.toString());\r\n else if (!maxValue)\r\n setVal(val.toString());\r\n }\r\n }\r\n\r\n const subtractInterval = () => {\r\n let val = decimalPrecision ? parseFloat(userInput) : parseInt(userInput);\r\n val = isNaN(val) && userInput === '' ? (maxValue ? maxValue + 1 : 0) : val;\r\n if (!isNaN(val)) {\r\n if (decimalPrecision)\r\n val = Math.round((val - interval) * Math.pow(10, decimalPrecision!)) / Math.pow(10, decimalPrecision!);\r\n else\r\n val -= 1;\r\n\r\n if ((minValue && minValue <= val) || !minValue) {\r\n if (allowNegative || val >= 0) {\r\n setVal(val.toString());\r\n }\r\n }\r\n }\r\n }\r\n\r\n const isLocked = (input: string, operator: string): boolean => {\r\n let val = decimalPrecision ? parseFloat(input) : parseInt(input);\r\n val = isNaN(val) && userInput === '' ? 0 : val;\r\n let operatorState = false;\r\n if (operator === 'add' && maxValue)\r\n operatorState = val >= maxValue;\r\n\r\n if (operator === 'subtract' && minValue)\r\n operatorState = val <= minValue;\r\n\r\n if (operator === 'subtract' && !minValue && !allowNegative)\r\n operatorState = val <= 0;\r\n\r\n return operatorState;\r\n }\r\n\r\n const renderNumberFieldElements = () => {\r\n return (\r\n <>\r\n {prefix && <PrefixContainer $size={size} $disabled={!!disabled} className=\"operator\">\r\n {prefix}\r\n </PrefixContainer>}\r\n\r\n <OperatorWrapper data-testid={'operators'} $size={size} className=\"operator\">\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => subtractInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'subtract')}>\r\n <SystemIcons.Minus size=\"14px\"/>\r\n </IconButton>\r\n <div className=\"divider\"></div>\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => addInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'add')}>\r\n <SystemIcons.Plus size=\"14px\"/>\r\n </IconButton>\r\n </OperatorWrapper>\r\n </>)\r\n }\r\n\r\n const renderNumberInputElements = () => {\r\n return (\r\n <>\r\n <LeftOperator data-testid={'leftOperator'} $size={size} className=\"operator\">\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => subtractInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'subtract')}>\r\n <SystemIcons.Minus size=\"14px\"/>\r\n </IconButton>\r\n </LeftOperator>\r\n <RightOperator data-testid={'rightOperator'} $size={size} className=\"operator\">\r\n <IconButton tabIndex={0} variant=\"secondary\" shape=\"square\" action={() => addInterval()}\r\n useTransparentBackground disabled={disabled || readOnly || isLocked(userInput, 'add')}>\r\n <SystemIcons.Plus size=\"14px\"/>\r\n </IconButton>\r\n </RightOperator>\r\n </>)\r\n }\r\n\r\n return (\r\n <Container>\r\n <InputContainer $type={type} $size={size} tabIndex={-1}>\r\n <NumberInput $type={type}\r\n id={id}\r\n data-testid={dataTestId}\r\n $fieldSize={size}\r\n $hasPrefix={!!prefix}\r\n placeholder={placeholder ? placeholder : 'Enter number'}\r\n value={userInput}\r\n ref={elementRef}\r\n tabIndex={(disabled || readOnly) ? -1 : 0}\r\n onChange={e => handleInput(e)}\r\n onKeyDown={e => handleKeyPress(e)}\r\n required={required}\r\n className={disabled ? ' disabled' : ''\r\n .concat(readOnly ? ' readOnly' : '')\r\n .concat(state ? ` ${state}` : '')\r\n .concat(className ? ` ${className}` : '')}\r\n {...rest}/>\r\n\r\n {type === 'NumberField' && renderNumberFieldElements()}\r\n {type === 'NumberInput' && renderNumberInputElements()}\r\n {value && <TooltipOverflow position={overflowTooltipPosition} input={elementRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {value?.toString()}\r\n </TooltipOverflow>}\r\n </InputContainer>\r\n\r\n {\r\n note &&\r\n <ValidationMessage type={state || States.Default}>\r\n {noteIcon}\r\n <span>{note}</span>\r\n </ValidationMessage>\r\n }\r\n\r\n </Container>\r\n );\r\n }\r\n )\r\n;\r\n\r\nexport default NumberField;\r\n"],"mappings":"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","ignoreList":[]}