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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/README.md +1 -1
  2. package/dist/Accordion/__tests__/AccordionMenu.test.tsx +42 -0
  3. package/dist/Accordion/__tests__/ContentAccordion.test.tsx +150 -0
  4. package/dist/AuthPage/__tests__/AuthPage.test.tsx +27 -0
  5. package/dist/Banners/__tests__/Banner.test.tsx +47 -0
  6. package/dist/Banners/__tests__/OverviewBanner.test.tsx +20 -0
  7. package/dist/Breadcrumb/__tests__/Breadcrumb.test.tsx +78 -0
  8. package/dist/Button/DualFunctionButton.cjs +4 -4
  9. package/dist/Button/DualFunctionButton.cjs.map +1 -1
  10. package/dist/Button/DualFunctionButton.d.ts +2 -2
  11. package/dist/Button/DualFunctionButton.js +4 -4
  12. package/dist/Button/DualFunctionButton.js.map +1 -1
  13. package/dist/Button/{Button.cjs → TextButton.cjs} +179 -92
  14. package/dist/Button/TextButton.cjs.map +1 -0
  15. package/dist/Button/TextButton.d.ts +70 -0
  16. package/dist/Button/{Button.js → TextButton.js} +178 -91
  17. package/dist/Button/TextButton.js.map +1 -0
  18. package/dist/Button/__tests__/BackButton.test.tsx +32 -0
  19. package/dist/Button/__tests__/Button.test.tsx +45 -0
  20. package/dist/Button/__tests__/DualButton.test.tsx +119 -0
  21. package/dist/Button/__tests__/TextButton.test.tsx +45 -0
  22. package/dist/Button/index.cjs +11 -11
  23. package/dist/Button/index.cjs.map +1 -1
  24. package/dist/Button/index.d.ts +2 -2
  25. package/dist/Button/index.js +2 -2
  26. package/dist/Button/index.js.map +1 -1
  27. package/dist/Card/HorizontalCard/__tests__/HorizontalCard.test.tsx +71 -0
  28. package/dist/Card/VerticalCard/{Card.cjs → VerticalCard.cjs} +62 -26
  29. package/dist/Card/VerticalCard/VerticalCard.cjs.map +1 -0
  30. package/dist/Card/VerticalCard/VerticalCard.d.ts +25 -0
  31. package/dist/Card/VerticalCard/{Card.js → VerticalCard.js} +62 -26
  32. package/dist/Card/VerticalCard/VerticalCard.js.map +1 -0
  33. package/dist/Card/VerticalCard/{CardBottomSection.cjs → VerticalCardBottomSection.cjs} +45 -27
  34. package/dist/Card/VerticalCard/VerticalCardBottomSection.cjs.map +1 -0
  35. package/dist/Card/VerticalCard/VerticalCardBottomSection.d.ts +53 -0
  36. package/dist/Card/VerticalCard/{CardBottomSection.js → VerticalCardBottomSection.js} +45 -27
  37. package/dist/Card/VerticalCard/VerticalCardBottomSection.js.map +1 -0
  38. package/dist/Card/VerticalCard/{CardMiddleSection.cjs → VerticalCardMiddleSection.cjs} +46 -23
  39. package/dist/Card/VerticalCard/VerticalCardMiddleSection.cjs.map +1 -0
  40. package/dist/Card/VerticalCard/VerticalCardMiddleSection.d.ts +42 -0
  41. package/dist/Card/VerticalCard/{CardMiddleSection.js → VerticalCardMiddleSection.js} +45 -23
  42. package/dist/Card/VerticalCard/VerticalCardMiddleSection.js.map +1 -0
  43. package/dist/Card/VerticalCard/{CardTopSection.cjs → VerticalCardTopSection.cjs} +18 -16
  44. package/dist/Card/VerticalCard/VerticalCardTopSection.cjs.map +1 -0
  45. package/dist/Card/VerticalCard/{CardTopSection.d.ts → VerticalCardTopSection.d.ts} +8 -8
  46. package/dist/Card/VerticalCard/{CardTopSection.js → VerticalCardTopSection.js} +17 -15
  47. package/dist/Card/VerticalCard/VerticalCardTopSection.js.map +1 -0
  48. package/dist/Card/VerticalCard/__tests__/VerticalCard.test.tsx +124 -0
  49. package/dist/Card/VerticalCard/index.cjs +25 -25
  50. package/dist/Card/VerticalCard/index.cjs.map +1 -1
  51. package/dist/Card/VerticalCard/index.d.ts +7 -7
  52. package/dist/Card/VerticalCard/index.js +7 -7
  53. package/dist/Card/VerticalCard/index.js.map +1 -1
  54. package/dist/Chips/ActionChip.cjs +6 -0
  55. package/dist/Chips/ActionChip.cjs.map +1 -1
  56. package/dist/Chips/ActionChip.js +6 -0
  57. package/dist/Chips/ActionChip.js.map +1 -1
  58. package/dist/Chips/ChipStyles.cjs +210 -31
  59. package/dist/Chips/ChipStyles.cjs.map +1 -1
  60. package/dist/Chips/ChipStyles.js +210 -31
  61. package/dist/Chips/ChipStyles.js.map +1 -1
  62. package/dist/Chips/ChoiceChips.cjs +1 -1
  63. package/dist/Chips/ChoiceChips.cjs.map +1 -1
  64. package/dist/Chips/ChoiceChips.js +1 -1
  65. package/dist/Chips/ChoiceChips.js.map +1 -1
  66. package/dist/Chips/FilterChip.cjs +8 -1
  67. package/dist/Chips/FilterChip.cjs.map +1 -1
  68. package/dist/Chips/FilterChip.js +8 -1
  69. package/dist/Chips/FilterChip.js.map +1 -1
  70. package/dist/Chips/InputChip.cjs +14 -0
  71. package/dist/Chips/InputChip.cjs.map +1 -1
  72. package/dist/Chips/InputChip.js +14 -0
  73. package/dist/Chips/InputChip.js.map +1 -1
  74. package/dist/Chips/__tests__/ActionChip.test.tsx +94 -0
  75. package/dist/Chips/__tests__/ChoiceChips.test.tsx +79 -0
  76. package/dist/Chips/__tests__/FilterChip.test.tsx +95 -0
  77. package/dist/Chips/__tests__/InputChip.test.tsx +155 -0
  78. package/dist/ChipsInput/ChipInputField.cjs +8 -2
  79. package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
  80. package/dist/ChipsInput/ChipInputField.js +8 -2
  81. package/dist/ChipsInput/ChipInputField.js.map +1 -1
  82. package/dist/ChipsInput/__tests__/ChipDropdownInput.test.tsx +100 -0
  83. package/dist/ChipsInput/__tests__/ChipInputFields.test.tsx +155 -0
  84. package/dist/Dropdown/DropdownContent.cjs +2 -2
  85. package/dist/Dropdown/DropdownContent.cjs.map +1 -1
  86. package/dist/Dropdown/DropdownContent.js +2 -2
  87. package/dist/Dropdown/DropdownContent.js.map +1 -1
  88. package/dist/Dropdown/__tests__/DropdownFilter.test.tsx +39 -0
  89. package/dist/Footer/Components/FooterTop.cjs +3 -0
  90. package/dist/Footer/Components/FooterTop.cjs.map +1 -1
  91. package/dist/Footer/Components/FooterTop.js +3 -0
  92. package/dist/Footer/Components/FooterTop.js.map +1 -1
  93. package/dist/Footer/__tests__/Footer.test.tsx +182 -0
  94. package/dist/GlobalNavigationBar/Logo.cjs +2 -1
  95. package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
  96. package/dist/GlobalNavigationBar/Logo.js +2 -1
  97. package/dist/GlobalNavigationBar/Logo.js.map +1 -1
  98. package/dist/GlobalNavigationBar/__tests__/Logo.test.tsx +39 -0
  99. package/dist/GlobalNavigationBar/desktop/MainMenu.cjs +10 -1
  100. package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -1
  101. package/dist/GlobalNavigationBar/desktop/MainMenu.js +10 -1
  102. package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -1
  103. package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs +5 -4
  104. package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs.map +1 -1
  105. package/dist/GlobalNavigationBar/desktop/RightSideNav.js +6 -5
  106. package/dist/GlobalNavigationBar/desktop/RightSideNav.js.map +1 -1
  107. package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +1 -1
  108. package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -1
  109. package/dist/GlobalNavigationBar/desktop/UserMenu.js +2 -2
  110. package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -1
  111. package/dist/GlobalNavigationBar/desktop/__tests__/DesktopActions.test.tsx +108 -0
  112. package/dist/GlobalNavigationBar/desktop/__tests__/ExtendedMainMenu.test.tsx +28 -0
  113. package/dist/GlobalNavigationBar/desktop/__tests__/MainMenu.test.tsx +55 -0
  114. package/dist/GlobalNavigationBar/desktop/__tests__/RightSideNav.test.tsx +45 -0
  115. package/dist/GlobalNavigationBar/desktop/__tests__/UserMenu.test.tsx +125 -0
  116. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
  117. package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  118. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs +1 -1
  119. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs.map +1 -1
  120. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js +2 -2
  121. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js.map +1 -1
  122. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenu.test.tsx +317 -0
  123. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuContent.test.tsx +294 -0
  124. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuHeader.test.tsx +195 -0
  125. package/dist/GlobalNavigationBar/types.cjs.map +1 -1
  126. package/dist/GlobalNavigationBar/types.d.ts +2 -2
  127. package/dist/GlobalNavigationBar/types.js.map +1 -1
  128. package/dist/HyperLink/HyperLink.cjs +18 -2
  129. package/dist/HyperLink/HyperLink.cjs.map +1 -1
  130. package/dist/HyperLink/HyperLink.d.ts +2 -0
  131. package/dist/HyperLink/HyperLink.js +18 -2
  132. package/dist/HyperLink/HyperLink.js.map +1 -1
  133. package/dist/HyperLink/styling.cjs +4 -0
  134. package/dist/HyperLink/styling.cjs.map +1 -1
  135. package/dist/HyperLink/styling.js +4 -0
  136. package/dist/HyperLink/styling.js.map +1 -1
  137. package/dist/InputFields/DatepickerField.cjs +21 -5
  138. package/dist/InputFields/DatepickerField.cjs.map +1 -1
  139. package/dist/InputFields/DatepickerField.d.ts +1 -1
  140. package/dist/InputFields/DatepickerField.js +21 -5
  141. package/dist/InputFields/DatepickerField.js.map +1 -1
  142. package/dist/InputFields/NumberField.cjs +4 -0
  143. package/dist/InputFields/NumberField.cjs.map +1 -1
  144. package/dist/InputFields/NumberField.js +4 -0
  145. package/dist/InputFields/NumberField.js.map +1 -1
  146. package/dist/InputFields/RadioButton.cjs +2 -2
  147. package/dist/InputFields/RadioButton.cjs.map +1 -1
  148. package/dist/InputFields/RadioButton.d.ts +4 -4
  149. package/dist/InputFields/RadioButton.js +2 -2
  150. package/dist/InputFields/RadioButton.js.map +1 -1
  151. package/dist/InputFields/__tests__/NumberField.test.tsx +67 -0
  152. package/dist/InputFields/__tests__/NumberInput.test.tsx +68 -0
  153. package/dist/InputFields/__tests__/QuickSearch.test.tsx +42 -0
  154. package/dist/InputFields/components/SearchBarInput.cjs +5 -0
  155. package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
  156. package/dist/InputFields/components/SearchBarInput.js +5 -0
  157. package/dist/InputFields/components/SearchBarInput.js.map +1 -1
  158. package/dist/LinearProgress/__tests__/LinearProgress.test.tsx +25 -0
  159. package/dist/List/__tests__/ListRow.test.tsx +18 -0
  160. package/dist/LoadingPage/__tests__/GlobalLoadingPage.test.tsx +23 -0
  161. package/dist/MiniProductCard/MiniProductCard.cjs +15 -1
  162. package/dist/MiniProductCard/MiniProductCard.cjs.map +1 -1
  163. package/dist/MiniProductCard/MiniProductCard.d.ts +1 -0
  164. package/dist/MiniProductCard/MiniProductCard.js +15 -1
  165. package/dist/MiniProductCard/MiniProductCard.js.map +1 -1
  166. package/dist/Modals/ModalContainer.cjs +102 -83
  167. package/dist/Modals/ModalContainer.cjs.map +1 -1
  168. package/dist/Modals/ModalContainer.d.ts +20 -1
  169. package/dist/Modals/ModalContainer.js +103 -84
  170. package/dist/Modals/ModalContainer.js.map +1 -1
  171. package/dist/Modals/ModalContent.cjs +7 -3
  172. package/dist/Modals/ModalContent.cjs.map +1 -1
  173. package/dist/Modals/ModalContent.js +8 -4
  174. package/dist/Modals/ModalContent.js.map +1 -1
  175. package/dist/Modals/ModalDialog.cjs +2 -2
  176. package/dist/Modals/ModalDialog.cjs.map +1 -1
  177. package/dist/Modals/ModalDialog.js +3 -3
  178. package/dist/Modals/ModalDialog.js.map +1 -1
  179. package/dist/Modals/ModalStyles.cjs +12 -0
  180. package/dist/Modals/ModalStyles.cjs.map +1 -1
  181. package/dist/Modals/ModalStyles.js +12 -0
  182. package/dist/Modals/ModalStyles.js.map +1 -1
  183. package/dist/Modals/ModalTypes.cjs.map +1 -1
  184. package/dist/Modals/ModalTypes.d.ts +3 -3
  185. package/dist/Modals/ModalTypes.js.map +1 -1
  186. package/dist/Modals/__tests__/Modal.test.tsx +169 -0
  187. package/dist/Modals/__tests__/ModalContainer.test.tsx +77 -0
  188. package/dist/Modals/__tests__/ModalContent.test.tsx +126 -0
  189. package/dist/NavItem/NavItem.cjs +7 -1
  190. package/dist/NavItem/NavItem.cjs.map +1 -1
  191. package/dist/NavItem/NavItem.js +7 -1
  192. package/dist/NavItem/NavItem.js.map +1 -1
  193. package/dist/NavItem/__tests__/NavItem.test.ts +6 -0
  194. package/dist/Navigation/NavigationProvider.cjs.map +1 -1
  195. package/dist/Navigation/NavigationProvider.d.ts +3 -0
  196. package/dist/Navigation/NavigationProvider.js.map +1 -1
  197. package/dist/NotificationDot/__tests__/NotificationDot.test.tsx +33 -0
  198. package/dist/Paginator/Paginator.cjs +18 -14
  199. package/dist/Paginator/Paginator.cjs.map +1 -1
  200. package/dist/Paginator/Paginator.d.ts +1 -5
  201. package/dist/Paginator/Paginator.js +18 -14
  202. package/dist/Paginator/Paginator.js.map +1 -1
  203. package/dist/Paginator/__tests__/Paginator.test.tsx +33 -0
  204. package/dist/Popover/Popover.cjs +1 -1
  205. package/dist/Popover/Popover.cjs.map +1 -1
  206. package/dist/Popover/Popover.js +2 -2
  207. package/dist/Popover/Popover.js.map +1 -1
  208. package/dist/Popover/__tests__/Popover.test.tsx +64 -0
  209. package/dist/ProfileButton/__tests__/ProfileButton.test.tsx +31 -0
  210. package/dist/QuizButton/__tests__/QuizButton.test.tsx +53 -0
  211. package/dist/SegmentControl/__tests__/SegmentControl.test.tsx +145 -0
  212. package/dist/SideMenu/SideMenuFooter.cjs +1 -1
  213. package/dist/SideMenu/SideMenuFooter.cjs.map +1 -1
  214. package/dist/SideMenu/SideMenuFooter.js +2 -2
  215. package/dist/SideMenu/SideMenuFooter.js.map +1 -1
  216. package/dist/SideMenu/__tests__/SideMenu.test.tsx +99 -0
  217. package/dist/SideMenu/types.cjs.map +1 -1
  218. package/dist/SideMenu/types.d.ts +2 -2
  219. package/dist/SideMenu/types.js.map +1 -1
  220. package/dist/Switcher/__tests__/SwitcherMenuItem.tsx +14 -0
  221. package/dist/Table/TableBody.cjs +1 -1
  222. package/dist/Table/TableBody.cjs.map +1 -1
  223. package/dist/Table/TableBody.js +2 -2
  224. package/dist/Table/TableBody.js.map +1 -1
  225. package/dist/Table/TableStyles.cjs +4 -1
  226. package/dist/Table/TableStyles.cjs.map +1 -1
  227. package/dist/Table/TableStyles.js +4 -1
  228. package/dist/Table/TableStyles.js.map +1 -1
  229. package/dist/Table/TableTypes.cjs.map +1 -1
  230. package/dist/Table/TableTypes.d.ts +2 -2
  231. package/dist/Table/TableTypes.js.map +1 -1
  232. package/dist/Table/__tests__/Table.test.tsx +499 -0
  233. package/dist/Tabs/VerticalTabs.cjs +1 -0
  234. package/dist/Tabs/VerticalTabs.cjs.map +1 -1
  235. package/dist/Tabs/VerticalTabs.js +1 -0
  236. package/dist/Tabs/VerticalTabs.js.map +1 -1
  237. package/dist/Tabs/__tests__/HorizontalTabs.test.tsx +95 -0
  238. package/dist/Tabs/__tests__/TabLink.test.tsx +40 -0
  239. package/dist/Tabs/__tests__/Tablist.test.tsx +37 -0
  240. package/dist/Tag/Tag.cjs +48 -12
  241. package/dist/Tag/Tag.cjs.map +1 -1
  242. package/dist/Tag/Tag.js +48 -12
  243. package/dist/Tag/Tag.js.map +1 -1
  244. package/dist/Tag/__tests__/Tag.test.tsx +86 -0
  245. package/dist/Tile/TileCommonItems.cjs +1 -1
  246. package/dist/Tile/TileCommonItems.cjs.map +1 -1
  247. package/dist/Tile/TileCommonItems.js +2 -2
  248. package/dist/Tile/TileCommonItems.js.map +1 -1
  249. package/dist/Tile/TileTypes.cjs.map +1 -1
  250. package/dist/Tile/TileTypes.d.ts +2 -2
  251. package/dist/Tile/TileTypes.js.map +1 -1
  252. package/dist/Toasters/Toast.cjs +1 -2
  253. package/dist/Toasters/Toast.cjs.map +1 -1
  254. package/dist/Toasters/Toast.js +2 -3
  255. package/dist/Toasters/Toast.js.map +1 -1
  256. package/dist/Toasters/__tests__/Toast.test.tsx +74 -0
  257. package/dist/Toggles/TogglerStyles.cjs +171 -15
  258. package/dist/Toggles/TogglerStyles.cjs.map +1 -1
  259. package/dist/Toggles/TogglerStyles.js +171 -15
  260. package/dist/Toggles/TogglerStyles.js.map +1 -1
  261. package/dist/Toggles/__tests__/ToggleButton.test.tsx +53 -0
  262. package/dist/Toggles/__tests__/ToggleSwitch.test.tsx +87 -0
  263. package/dist/Tooltips/__tests__/TooltipWrapper.test.tsx +16 -0
  264. package/dist/common/NavigationHelper.cjs +0 -28
  265. package/dist/common/NavigationHelper.cjs.map +1 -1
  266. package/dist/common/NavigationHelper.d.ts +0 -4
  267. package/dist/common/NavigationHelper.js +1 -22
  268. package/dist/common/NavigationHelper.js.map +1 -1
  269. package/dist/styles/colors.cjs +6 -0
  270. package/dist/styles/colors.cjs.map +1 -1
  271. package/dist/styles/colors.d.ts +6 -0
  272. package/dist/styles/colors.js +6 -0
  273. package/dist/styles/colors.js.map +1 -1
  274. package/dist/styles/design-tokens/dark/tokens.css +481 -0
  275. package/dist/styles/design-tokens/light/tokens.css +481 -0
  276. package/dist/styles/design-tokens/rqi_dark/tokens.css +481 -0
  277. package/dist/styles/design-tokens/rqi_light/tokens.css +481 -0
  278. package/dist/styles/global.cjs +4 -4
  279. package/dist/styles/global.cjs.map +1 -1
  280. package/dist/styles/global.js +4 -4
  281. package/dist/styles/global.js.map +1 -1
  282. package/dist/styles/react-datepicker.css +766 -0
  283. package/dist/styles/typography.cjs +4 -1
  284. package/dist/styles/typography.cjs.map +1 -1
  285. package/dist/styles/typography.js +4 -1
  286. package/dist/styles/typography.js.map +1 -1
  287. package/dist/test-utils.cjs +7 -1
  288. package/dist/test-utils.cjs.map +1 -1
  289. package/dist/test-utils.js +7 -1
  290. package/dist/test-utils.js.map +1 -1
  291. package/package.json +11 -6
  292. package/dist/Button/Button.cjs.map +0 -1
  293. package/dist/Button/Button.d.ts +0 -70
  294. package/dist/Button/Button.js.map +0 -1
  295. package/dist/Card/VerticalCard/Card.cjs.map +0 -1
  296. package/dist/Card/VerticalCard/Card.d.ts +0 -24
  297. package/dist/Card/VerticalCard/Card.js.map +0 -1
  298. package/dist/Card/VerticalCard/CardBottomSection.cjs.map +0 -1
  299. package/dist/Card/VerticalCard/CardBottomSection.d.ts +0 -49
  300. package/dist/Card/VerticalCard/CardBottomSection.js.map +0 -1
  301. package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +0 -1
  302. package/dist/Card/VerticalCard/CardMiddleSection.d.ts +0 -37
  303. package/dist/Card/VerticalCard/CardMiddleSection.js.map +0 -1
  304. package/dist/Card/VerticalCard/CardTopSection.cjs.map +0 -1
  305. package/dist/Card/VerticalCard/CardTopSection.js.map +0 -1
  306. package/dist/GlobalNavigationBar/__tests__/GlobalNavigationBar.tests.d.ts +0 -1
  307. package/dist/GlobalNavigationBar/__tests__/Logo.tests.d.ts +0 -1
  308. package/dist/List/__tests__/ListRow.tests.d.ts +0 -1
  309. package/dist/Tabs/__tests__/TabLink.tests.d.ts +0 -1
  310. package/dist/Tabs/__tests__/Tablist.tests.d.ts +0 -2
  311. package/dist/common/Link.cjs +0 -45
  312. package/dist/common/Link.cjs.map +0 -1
  313. package/dist/common/Link.d.ts +0 -9
  314. package/dist/common/Link.js +0 -37
  315. package/dist/common/Link.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButton.js","names":["React","styled","SystemIcons","COLORS","ComponentTextStyle","focusStyles","Size","ComponentLStyling","ComponentMStyling","ComponentSStyling","ComponentXXSStyling","defaultOnMouseDownHandler","jsx","_jsx","jsxs","_jsxs","StyledRadioButton","div","props","$margin","generateToken","componentType","defaultVariant","theme","$selected","$invalid","Regular","state","RadioButton","forwardRef","_ref","ref","id","selected","label","additionalLabel","invalid","select","disabled","margin","iconPointerEventsTransparent","size","tabIndexVal","className","dataTestId","rest","_objectWithoutProperties","_excluded","onKeyPress","e","keyCode","Medium","cls","_objectSpread","onClick","onMouseDown","onKeyDown","$disabled","tabIndex","children","RadioButtonOn","RadioButtonOff","htmlFor","undefined","propTypes","_pt","string","bool","isRequired","func","number"],"sources":["../../src/InputFields/RadioButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS, ComponentTextStyle, focusStyles} from '../styles';\r\nimport {Size, Testable} from '../types';\r\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXXSStyling} from '../styles';\r\nimport {defaultOnMouseDownHandler} from '../common';\r\n\r\nconst StyledRadioButton = styled.div<{ $margin?: string, $disabled?: boolean, $invalid?: boolean, $selected?: boolean }>`\r\n display: flex;\r\n width: 100%;\r\n min-height: 48px;\r\n min-width: 48px;\r\n\r\n ${props => (props.$margin ? `margin: ${props.$margin};` : '')}\r\n cursor: pointer;\r\n\r\n color: ${props => COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme)};\r\n\r\n .pointerTransparent {\r\n pointer-events: none;\r\n }\r\n\r\n .radio-button-icon {\r\n margin: 6px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n box-sizing: border-box;\r\n height: 36px;\r\n min-width: 36px;\r\n border-radius: 50%;\r\n\r\n svg {\r\n color: ${props => (props.$selected ? COLORS.generateToken({componentType:'icon', defaultVariant:'selected'}, props.theme) : \r\n props.$invalid ? COLORS.generateToken({componentType:'icon', defaultVariant:'critical'}, props.theme) : COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme))};\r\n }\r\n }\r\n\r\n .radio-button-label {\r\n user-select: none;\r\n display: flex;\r\n flex-direction: column;\r\n\r\n label {\r\n cursor: inherit;\r\n }\r\n\r\n span {\r\n ${props => ComponentXXSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n }\r\n }\r\n\r\n &.small {\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n .radio-button-label {\r\n padding-top: 14px;\r\n }\r\n }\r\n\r\n &.medium {\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n .radio-button-label {\r\n padding-top: 12px;\r\n }\r\n }\r\n\r\n &.large {\r\n ${props => ComponentLStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n .radio-button-label {\r\n padding-top: 12px;\r\n }\r\n }\r\n\r\n &:not(.disabled):focus {\r\n ${focusStyles}\r\n }\r\n\r\n &:not(.disabled):hover {\r\n .radio-button-icon {\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'hover' }, props.theme)};\r\n\r\n svg {\r\n color: ${props => COLORS.generateToken({ componentType:'icon', state:'hover' }, props.theme)};\r\n }\r\n }\r\n }\r\n\r\n &:not(.disabled):active {\r\n .radio-button-icon {\r\n background: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'active' }, props.theme)};\r\n\r\n svg {\r\n color: ${props => COLORS.generateToken({ componentType:'icon', state:'active' }, props.theme)};\r\n }\r\n }\r\n }\r\n\r\n &.disabled {\r\n cursor: not-allowed;\r\n\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'disabled' }, props.theme)};\r\n\r\n .radio-button-icon,\r\n .radio-button-label {\r\n pointer-events: none;\r\n }\r\n\r\n .radio-button-icon {\r\n background-color: transparent;\r\n }\r\n\r\n .radio-button-icon svg {\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', state: 'disabled' }, props.theme)};\r\n }\r\n }\r\n\r\n &.dropdown-hover:not(.disabled) {\r\n .radio-button-icon {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'hover' }, props.theme)};\r\n\r\n svg {\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', state: 'hover' }, props.theme)};\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport type RadioButtonProps = Testable & Omit<React.HTMLAttributes<HTMLDivElement>, 'tabIndex' | 'className' | 'onClick' | 'onMouseDown' | 'onKeyDown'> & {\r\n /** Optional. Id of the component */\r\n id?: string;\r\n /** Required. Current state of the component. */\r\n selected: boolean;\r\n /** Required. Handler to be called when user selects/unselected the radio button. */\r\n select: (selected: boolean) => void;\r\n /** Optional. Label to be shown on the right side of the radio button. */\r\n label?: string;\r\n /** Optional. Secondary label to be shown under the main 'label' */\r\n additionalLabel?: string;\r\n /** Optional. If set, then if radiobutton is in unselected state it will be shown in invalid state. */\r\n invalid?: boolean;\r\n /** Optional. If disabled, user can not interact with the component. */\r\n disabled?: boolean;\r\n /** Optional. If set, then 'pointer-events: none' will be set on the component. */\r\n iconPointerEventsTransparent?: boolean;\r\n /** Optional. Margin style attribute to be set on the top level tag of the component. */\r\n margin?: string;\r\n /** Optional. Size of the radio button, defaults to 'medium'. */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Optional. TabIndex attribute to be set on the component. */\r\n tabIndexVal?: number;\r\n /** Optional. Extra classname to be set on the container of the component. */\r\n className?: string;\r\n}\r\n\r\nconst RadioButton = React.forwardRef<HTMLDivElement, RadioButtonProps>(({\r\n id,\r\n selected,\r\n label,\r\n additionalLabel,\r\n invalid,\r\n select,\r\n disabled,\r\n margin,\r\n iconPointerEventsTransparent,\r\n size,\r\n tabIndexVal,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }: RadioButtonProps, ref) => {\r\n const onKeyPress = (e: any) => {\r\n if (e.keyCode === 13 && !disabled) {\r\n select(!selected);\r\n }\r\n };\r\n\r\n size = size ?? Size.Medium;\r\n\r\n const cls = `${size} ${className || ''} ${disabled ? ' disabled' : ''}`;\r\n\r\n return (\r\n <StyledRadioButton key={id}\r\n $margin={margin}\r\n ref={ref}\r\n onClick={() => !disabled && select(!selected)}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onKeyDown={onKeyPress}\r\n $disabled={disabled}\r\n className={cls}\r\n tabIndex={disabled ? -1 : (tabIndexVal ? tabIndexVal : 0)}\r\n $invalid={invalid}\r\n $selected={selected}\r\n {...rest}>\r\n <div className={'radio-button-icon'} id={id} data-testid={dataTestId}>\r\n {selected && <SystemIcons.RadioButtonOn className={iconPointerEventsTransparent ? 'pointerTransparent' : ''} size=\"24px\"/>}\r\n {!selected &&\r\n <SystemIcons.RadioButtonOff className={iconPointerEventsTransparent ? 'pointerTransparent' : ''} size=\"24px\"/>}\r\n </div>\r\n <div className={'radio-button-label'}>\r\n {label && <label htmlFor={id}>{label}</label>}\r\n {additionalLabel !== undefined && <span>{additionalLabel}</span>}\r\n </div>\r\n </StyledRadioButton>\r\n );\r\n});\r\n\r\nexport default RadioButton;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RadioButton.js","names":["React","styled","SystemIcons","COLORS","ComponentTextStyle","focusStyles","Size","ComponentLStyling","ComponentMStyling","ComponentSStyling","ComponentXXSStyling","defaultOnMouseDownHandler","jsx","_jsx","jsxs","_jsxs","StyledRadioButton","div","props","$margin","generateToken","componentType","defaultVariant","theme","$selected","$invalid","Regular","state","RadioButton","forwardRef","_ref","ref","id","selected","label","additionalLabel","invalid","select","disabled","margin","iconPointerEventsTransparent","size","tabIndexVal","className","dataTestId","rest","_objectWithoutProperties","_excluded","onKeyPress","e","keyCode","Medium","cls","_objectSpread","onClick","onMouseDown","onKeyDown","$disabled","tabIndex","children","RadioButtonOn","RadioButtonOff","htmlFor","undefined","propTypes","_pt","string","bool","isRequired","func","oneOfType","node","number"],"sources":["../../src/InputFields/RadioButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS, ComponentTextStyle, focusStyles} from '../styles';\r\nimport {Size, Testable} from '../types';\r\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXXSStyling} from '../styles';\r\nimport {defaultOnMouseDownHandler} from '../common';\r\n\r\nconst StyledRadioButton = styled.div<{ $margin?: string, $disabled?: boolean, $invalid?: boolean, $selected?: boolean }>`\r\n display: flex;\r\n width: 100%;\r\n min-height: 48px;\r\n min-width: 48px;\r\n\r\n ${props => (props.$margin ? `margin: ${props.$margin};` : '')}\r\n cursor: pointer;\r\n\r\n color: ${props => COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme)};\r\n\r\n .pointerTransparent {\r\n pointer-events: none;\r\n }\r\n\r\n .radio-button-icon {\r\n margin: 6px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n box-sizing: border-box;\r\n height: 36px;\r\n min-width: 36px;\r\n border-radius: 50%;\r\n\r\n svg {\r\n color: ${props => (props.$selected ? COLORS.generateToken({componentType:'icon', defaultVariant:'selected'}, props.theme) : \r\n props.$invalid ? COLORS.generateToken({componentType:'icon', defaultVariant:'critical'}, props.theme) : COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme))};\r\n }\r\n }\r\n\r\n .radio-button-label {\r\n user-select: none;\r\n display: flex;\r\n flex-direction: column;\r\n\r\n label {\r\n cursor: inherit;\r\n }\r\n\r\n span {\r\n ${props => ComponentXXSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n }\r\n }\r\n\r\n &.small {\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n .radio-button-label {\r\n padding-top: 14px;\r\n }\r\n }\r\n\r\n &.medium {\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n .radio-button-label {\r\n padding-top: 12px;\r\n }\r\n }\r\n\r\n &.large {\r\n ${props => ComponentLStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n .radio-button-label {\r\n padding-top: 12px;\r\n }\r\n }\r\n\r\n &:not(.disabled):focus {\r\n ${focusStyles}\r\n }\r\n\r\n &:not(.disabled):hover {\r\n .radio-button-icon {\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'hover' }, props.theme)};\r\n\r\n svg {\r\n color: ${props => COLORS.generateToken({ componentType:'icon', state:'hover' }, props.theme)};\r\n }\r\n }\r\n }\r\n\r\n &:not(.disabled):active {\r\n .radio-button-icon {\r\n background: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'active' }, props.theme)};\r\n\r\n svg {\r\n color: ${props => COLORS.generateToken({ componentType:'icon', state:'active' }, props.theme)};\r\n }\r\n }\r\n }\r\n\r\n &.disabled {\r\n cursor: not-allowed;\r\n\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'disabled' }, props.theme)};\r\n\r\n .radio-button-icon,\r\n .radio-button-label {\r\n pointer-events: none;\r\n }\r\n\r\n .radio-button-icon {\r\n background-color: transparent;\r\n }\r\n\r\n .radio-button-icon svg {\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', state: 'disabled' }, props.theme)};\r\n }\r\n }\r\n\r\n &.dropdown-hover:not(.disabled) {\r\n .radio-button-icon {\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'hover' }, props.theme)};\r\n\r\n svg {\r\n color: ${props => COLORS.generateToken({ componentType: 'icon', state: 'hover' }, props.theme)};\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport type RadioButtonProps = Testable & Omit<React.HTMLAttributes<HTMLDivElement>, 'tabIndex' | 'className' | 'onClick' | 'onMouseDown' | 'onKeyDown'> & {\r\n /** Optional. Id of the component */\r\n id?: string;\r\n /** Required. Current state of the component. */\r\n selected: boolean;\r\n /** Required. Handler to be called when user selects/unselected the radio button. */\r\n select: (selected: boolean) => void;\r\n /** Optional. Label to be shown on the right side of the radio button. */\r\n label?: string | React.ReactNode;\r\n /** Optional. Secondary label to be shown under the main 'label' */\r\n additionalLabel?: string | React.ReactNode;\r\n /** Optional. If set, then if radiobutton is in unselected state it will be shown in invalid state. */\r\n invalid?: boolean;\r\n /** Optional. If disabled, user can not interact with the component. */\r\n disabled?: boolean;\r\n /** Optional. If set, then 'pointer-events: none' will be set on the component. */\r\n iconPointerEventsTransparent?: boolean;\r\n /** Optional. Margin style attribute to be set on the top level tag of the component. */\r\n margin?: string;\r\n /** Optional. Size of the radio button, defaults to 'medium'. */\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n /** Optional. TabIndex attribute to be set on the component. */\r\n tabIndexVal?: number;\r\n /** Optional. Extra classname to be set on the container of the component. */\r\n className?: string;\r\n}\r\n\r\nconst RadioButton = React.forwardRef<HTMLDivElement, RadioButtonProps>(({\r\n id,\r\n selected,\r\n label,\r\n additionalLabel,\r\n invalid,\r\n select,\r\n disabled,\r\n margin,\r\n iconPointerEventsTransparent,\r\n size,\r\n tabIndexVal,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }: RadioButtonProps, ref) => {\r\n const onKeyPress = (e: any) => {\r\n if (e.keyCode === 13 && !disabled) {\r\n select(!selected);\r\n }\r\n };\r\n\r\n size = size ?? Size.Medium;\r\n\r\n const cls = `${size} ${className || ''} ${disabled ? ' disabled' : ''}`;\r\n\r\n return (\r\n <StyledRadioButton key={id}\r\n $margin={margin}\r\n ref={ref}\r\n onClick={() => !disabled && select(!selected)}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onKeyDown={onKeyPress}\r\n $disabled={disabled}\r\n className={cls}\r\n tabIndex={disabled ? -1 : (tabIndexVal ? tabIndexVal : 0)}\r\n $invalid={invalid}\r\n $selected={selected}\r\n {...rest}>\r\n <div className={'radio-button-icon'} id={id} data-testid={dataTestId}>\r\n {selected && <SystemIcons.RadioButtonOn className={iconPointerEventsTransparent ? 'pointerTransparent' : ''} size=\"24px\"/>}\r\n {!selected &&\r\n <SystemIcons.RadioButtonOff className={iconPointerEventsTransparent ? 'pointerTransparent' : ''} size=\"24px\"/>}\r\n </div>\r\n <div className={'radio-button-label'}>\r\n {label && <label htmlFor={id}>{label}</label>}\r\n {additionalLabel !== undefined && <span>{additionalLabel}</span>}\r\n </div>\r\n </StyledRadioButton>\r\n );\r\n});\r\n\r\nexport default RadioButton;\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,67 @@
1
+ import React from 'react';
2
+ import {render} from '../../test-utils';
3
+ import {Size, States} from '../../types';
4
+ import 'jest-styled-components';
5
+ import {COLORS, NumberField} from '../..';
6
+
7
+
8
+ describe('<NumberField />', () => {
9
+
10
+ it('renders note field', async () => {
11
+ const { getByText } = render(
12
+ <NumberField type='NumberField' note='test note' size={Size.Medium}/>
13
+ );
14
+ expect(getByText('test note')).toBeDefined();
15
+ });
16
+
17
+ it('renders required asterisk', async () => {
18
+ const { queryByTestId } = render(
19
+ <NumberField type='NumberField' dataTestId='numberInput' required size={Size.Medium}/>
20
+ );
21
+ expect(queryByTestId('labelIcon')).toBeDefined();
22
+ });
23
+
24
+ it('does not renders required asterisk', async () => {
25
+ const { queryByTestId } = render(
26
+ <NumberField type='NumberField' dataTestId='numberInput' size={Size.Medium}/>
27
+ );
28
+ expect(queryByTestId('labelIcon')).toBeNull();
29
+ });
30
+
31
+ it('renders positive note and input container', async () => {
32
+ const { container, getByTestId } = render(
33
+ <NumberField type='NumberField' dataTestId='numberInput' note='test note' state={States.Valid} size={Size.Medium}/>
34
+ );
35
+ expect(container.getElementsByClassName('valid').length).toBe(1);
36
+ });
37
+
38
+ it('renders warning note and input container', async () => {
39
+ const { container, getByTestId } = render(
40
+ <NumberField type='NumberField' dataTestId='numberInput' note='test note' state={States.Invalid} size={Size.Medium}/>
41
+ );
42
+ expect(container.getElementsByClassName('invalid').length).toBe(1);
43
+ });
44
+
45
+ it('renders correct disabled input container', async () => {
46
+ const { getByTestId } = render(
47
+ <NumberField type='NumberField' dataTestId='numberInput' size={Size.Small}/>
48
+ );
49
+ expect(getByTestId('numberInput')).toHaveStyleRule('cursor', `not-allowed`, {modifier:'&.disabled'});
50
+ });
51
+
52
+ it('renders correct readonly input container', async () => {
53
+ const { getByTestId } = render(
54
+ <NumberField type='NumberField' dataTestId='numberInput' size={Size.Small}/>
55
+ );
56
+ expect(getByTestId('numberInput')).toHaveStyleRule('cursor', `not-allowed`, {modifier:'&.readOnly'});
57
+ });
58
+
59
+ it('renders operators in the input container', async () => {
60
+ const { getByTestId } = render(
61
+ <NumberField type='NumberField' dataTestId='numberInput' size={Size.Medium}/>
62
+ );
63
+ expect(getByTestId('operators').childElementCount).toBe(3);
64
+ expect(getByTestId('operators').firstChild).toBeDefined();
65
+ expect(getByTestId('operators').lastChild).toBeDefined();
66
+ })
67
+ })
@@ -0,0 +1,68 @@
1
+ import React from 'react';
2
+ import { render } from '../../test-utils';
3
+ import {Size, States} from '../../types';
4
+ import 'jest-styled-components';
5
+ import { COLORS, NumberField } from '../..';
6
+
7
+
8
+ describe('<NumberField />', () => {
9
+
10
+ it('renders note field', async () => {
11
+ const { getByText } = render(
12
+ <NumberField type='NumberInput' note='test note' size={Size.Medium}/>
13
+ );
14
+ expect(getByText('test note')).toBeDefined();
15
+ });
16
+
17
+ it('renders required asterisk', async () => {
18
+ const { queryByTestId } = render(
19
+ <NumberField type='NumberInput' required size={Size.Medium}/>
20
+ );
21
+ expect(queryByTestId('labelIcon')).toBeDefined();
22
+ });
23
+
24
+ it('does not renders required asterisk', async () => {
25
+ const { queryByTestId } = render(
26
+ <NumberField type='NumberInput' size={Size.Medium}/>
27
+ );
28
+ expect(queryByTestId('labelIcon')).toBeNull();
29
+ });
30
+
31
+ it('renders positive note and input container', async () => {
32
+ const { container, getByTestId } = render(
33
+ <NumberField type='NumberInput' dataTestId='numberInput' note='test note' state={States.Valid} size={Size.Medium}/>
34
+ );
35
+ expect(container.getElementsByClassName('valid').length).toBe(1);
36
+ });
37
+
38
+ it('renders warning note and input container', async () => {
39
+ const { container, getByTestId } = render(
40
+ <NumberField type='NumberInput' dataTestId='numberInput' note='test note' state={States.Invalid} size={Size.Medium}/>
41
+ );
42
+ expect(container.getElementsByClassName('invalid').length).toBe(1);
43
+ });
44
+
45
+ it('renders correct disabled input container', async () => {
46
+ const { getByTestId } = render(
47
+ <NumberField type='NumberInput' dataTestId='numberInput' size={Size.Small}/>
48
+ );
49
+ expect(getByTestId('numberInput')).toHaveStyleRule('cursor', `not-allowed`, {modifier:'&.disabled'});
50
+ });
51
+
52
+ it('renders correct readonly input container', async () => {
53
+ const { getByTestId } = render(
54
+ <NumberField type='NumberInput' dataTestId='numberInput' size={Size.Small}/>
55
+ );
56
+ expect(getByTestId('numberInput')).toHaveStyleRule('cursor', `not-allowed`, {modifier:'&.readOnly'});
57
+ });
58
+
59
+ it('renders operators in the input container', async () => {
60
+ const { getByTestId } = render(
61
+ <NumberField type='NumberInput' size={Size.Medium}/>
62
+ );
63
+ expect(getByTestId('leftOperator')).toHaveStyleRule('left', '0');
64
+ expect(getByTestId('leftOperator')).toHaveStyleRule('top', '4px');
65
+ expect(getByTestId('rightOperator')).toHaveStyleRule('right', '0');
66
+ expect(getByTestId('rightOperator')).toHaveStyleRule('top', '4px');
67
+ })
68
+ })
@@ -0,0 +1,42 @@
1
+ import React from 'react';
2
+ import { findByTestId, render } from '../../test-utils';
3
+ import {Size} from '../../types';
4
+ import 'jest-styled-components';
5
+ import { QuickSearch } from '..';
6
+ import { ThemeProvider } from 'styled-components';
7
+
8
+ describe('<QuickSearch />', () => {
9
+
10
+
11
+ it('Renders quick search', async () => {
12
+ let search = '';
13
+ let searchEntered = false;
14
+ const { queryByText, getByTestId, queryAllByTestId, container } = render(
15
+ <ThemeProvider theme={{}}>
16
+ <div style={{ width: '400px' }}>
17
+ <QuickSearch
18
+ id="QuickSearch"
19
+ size={Size.Small}
20
+ enterSearch={() => {
21
+ searchEntered = true;
22
+ }}
23
+ removeSearch={() => {
24
+ search = '';
25
+ }}
26
+ setSearchTerm={(term) => {
27
+ search = term;
28
+ }}
29
+ />
30
+ </div></ThemeProvider>,
31
+ );
32
+ expect(getByTestId('QuickSearch_main').classList.contains('small')).toBeTruthy();
33
+ expect(getByTestId('QuickSearch_Searchbutton')).toBeDefined();
34
+
35
+ // Test click on icon and check that input field shows
36
+ expect(queryAllByTestId('QuickSearch').length).toBe(0);
37
+ (await findByTestId(container, 'QuickSearch_Searchbutton') as HTMLButtonElement)?.click();
38
+ expect(await findByTestId(container, 'QuickSearch_main')).toBeDefined();
39
+ expect(getByTestId('QuickSearch_main').classList.contains('expanded')).toBeTruthy();
40
+ expect(getByTestId('QuickSearch_Clearicon').parentElement).toHaveProperty('hidden');
41
+ });
42
+ });
@@ -99,6 +99,11 @@ const Search = exports.Search = _styledComponents.default.input.attrs(() => ({
99
99
  }
100
100
  }
101
101
 
102
+ background: ${props => _index.COLORS.generateToken({
103
+ componentType: 'bg-surface',
104
+ defaultVariant: 'default'
105
+ }, props.theme)};
106
+
102
107
  &:disabled {
103
108
  background: transparent;
104
109
  border: none;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchBarInput.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_index","_styles","_common","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Search","exports","styled","input","attrs","type","props","ComponentSStyling","ComponentTextStyle","Italic","COLORS","generateToken","componentType","defaultVariant","theme","Regular","BREAKPOINTS","MEDIUM","ComponentMStyling","SearchBarInput","forwardRef","ref","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","size","onBlur","onClick","elementRef","useFocusVisibleRef","focusParentRefs","useImperativeHandle","current","isPressingEnter","key","preventDefault","stopPropagation","jsx","className","tabIndex","onChange","target","value","onKeyPress","propTypes","_propTypes","string","isRequired","func","bool","array","_default"],"sources":["../../../src/InputFields/components/SearchBarInput.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../../styles/index';\r\nimport { Size } from '../../types';\r\nimport { ComponentMStyling, ComponentSStyling } from '../../styles';\r\nimport { useFocusVisibleRef } from '../../common';\r\n\r\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\r\n appearance: none;\r\n width: calc(100% - 96px);\r\n\r\n /* To prevent browser putting its own cross inside the search bar */\r\n\r\n &::-ms-clear {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-ms-reveal {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-webkit-search-decoration,\r\n &::-webkit-search-cancel-button,\r\n &::-webkit-search-results-button,\r\n &::-webkit-search-results-decoration {\r\n display: none;\r\n }\r\n\r\n &::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text', defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n height: 32px;\r\n border-width: 0;\r\n margin-left: 48px;\r\n outline: none;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.small {\r\n margin-left: 44px;\r\n\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.medium {\r\n margin-left: 48px;\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n \r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &:disabled {\r\n background: transparent;\r\n border: none;\r\n }\r\n`;\r\n\r\ntype SearchBarInputProps = {\r\n id: string;\r\n searchTerm?: string;\r\n setSearchTerm: (term: string) => void;\r\n enterSearch: (e: any) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n onKeyDown?: (e: React.KeyboardEvent) => void;\r\n size?: Size.Small | Size.Medium;\r\n onBlur?: (e: any) => void;\r\n focusParentRefs?: React.RefObject<any>[];\r\n onClick?: ()=>void;\r\n};\r\n\r\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\r\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, onBlur, onClick } = props;\r\n\r\n const elementRef = useFocusVisibleRef(props.focusParentRefs || []);\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const isPressingEnter = (e: any) => {\r\n if (e.key === 'Enter') {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n return (\r\n <Search\r\n placeholder={disabled ? '' : placeholder}\r\n ref={elementRef}\r\n id={id}\r\n data-testid={id}\r\n className={size ? size : ''}\r\n tabIndex={0}\r\n disabled={disabled}\r\n onChange={(e: any) => setSearchTerm(e.target.value)}\r\n value={searchTerm}\r\n onBlur={(e) => onBlur && onBlur(e)}\r\n onKeyDown={onKeyDown}\r\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\r\n onClick={onClick}\r\n />\r\n );\r\n});\r\n\r\nexport default SearchBarInput;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SearchBarInput.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_index","_styles","_common","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Search","exports","styled","input","attrs","type","props","ComponentSStyling","ComponentTextStyle","Italic","COLORS","generateToken","componentType","defaultVariant","theme","Regular","BREAKPOINTS","MEDIUM","ComponentMStyling","SearchBarInput","forwardRef","ref","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","size","onBlur","onClick","elementRef","useFocusVisibleRef","focusParentRefs","useImperativeHandle","current","isPressingEnter","key","preventDefault","stopPropagation","jsx","className","tabIndex","onChange","target","value","onKeyPress","propTypes","_propTypes","string","isRequired","func","bool","array","_default"],"sources":["../../../src/InputFields/components/SearchBarInput.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../../styles/index';\r\nimport { Size } from '../../types';\r\nimport { ComponentMStyling, ComponentSStyling } from '../../styles';\r\nimport { useFocusVisibleRef } from '../../common';\r\n\r\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\r\n appearance: none;\r\n width: calc(100% - 96px);\r\n\r\n /* To prevent browser putting its own cross inside the search bar */\r\n\r\n &::-ms-clear {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-ms-reveal {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-webkit-search-decoration,\r\n &::-webkit-search-cancel-button,\r\n &::-webkit-search-results-button,\r\n &::-webkit-search-results-decoration {\r\n display: none;\r\n }\r\n\r\n &::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text', defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n height: 32px;\r\n border-width: 0;\r\n margin-left: 48px;\r\n outline: none;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.small {\r\n margin-left: 44px;\r\n\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.medium {\r\n margin-left: 48px;\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n \r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n background: ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'default'}, props.theme)};\r\n\r\n &:disabled {\r\n background: transparent;\r\n border: none;\r\n }\r\n`;\r\n\r\ntype SearchBarInputProps = {\r\n id: string;\r\n searchTerm?: string;\r\n setSearchTerm: (term: string) => void;\r\n enterSearch: (e: any) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n onKeyDown?: (e: React.KeyboardEvent) => void;\r\n size?: Size.Small | Size.Medium;\r\n onBlur?: (e: any) => void;\r\n focusParentRefs?: React.RefObject<any>[];\r\n onClick?: ()=>void;\r\n};\r\n\r\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\r\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, onBlur, onClick } = props;\r\n\r\n const elementRef = useFocusVisibleRef(props.focusParentRefs || []);\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const isPressingEnter = (e: any) => {\r\n if (e.key === 'Enter') {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n return (\r\n <Search\r\n placeholder={disabled ? '' : placeholder}\r\n ref={elementRef}\r\n id={id}\r\n data-testid={id}\r\n className={size ? size : ''}\r\n tabIndex={0}\r\n disabled={disabled}\r\n onChange={(e: any) => setSearchTerm(e.target.value)}\r\n value={searchTerm}\r\n onBlur={(e) => onBlur && onBlur(e)}\r\n onKeyDown={onKeyDown}\r\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\r\n onClick={onClick}\r\n />\r\n );\r\n});\r\n\r\nexport default SearchBarInput;\r\n"],"mappings":"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","ignoreList":[]}
@@ -90,6 +90,11 @@ export const Search = styled.input.attrs(() => ({
90
90
  }
91
91
  }
92
92
 
93
+ background: ${props => COLORS.generateToken({
94
+ componentType: 'bg-surface',
95
+ defaultVariant: 'default'
96
+ }, props.theme)};
97
+
93
98
  &:disabled {
94
99
  background: transparent;
95
100
  border: none;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchBarInput.js","names":["React","styled","BREAKPOINTS","COLORS","ComponentTextStyle","ComponentMStyling","ComponentSStyling","useFocusVisibleRef","jsx","_jsx","Search","input","attrs","type","props","Italic","generateToken","componentType","defaultVariant","theme","Regular","MEDIUM","SearchBarInput","forwardRef","ref","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","size","onBlur","onClick","elementRef","focusParentRefs","useImperativeHandle","current","isPressingEnter","e","key","preventDefault","stopPropagation","className","tabIndex","onChange","target","value","onKeyPress","propTypes","_pt","string","isRequired","func","bool","array"],"sources":["../../../src/InputFields/components/SearchBarInput.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../../styles/index';\r\nimport { Size } from '../../types';\r\nimport { ComponentMStyling, ComponentSStyling } from '../../styles';\r\nimport { useFocusVisibleRef } from '../../common';\r\n\r\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\r\n appearance: none;\r\n width: calc(100% - 96px);\r\n\r\n /* To prevent browser putting its own cross inside the search bar */\r\n\r\n &::-ms-clear {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-ms-reveal {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-webkit-search-decoration,\r\n &::-webkit-search-cancel-button,\r\n &::-webkit-search-results-button,\r\n &::-webkit-search-results-decoration {\r\n display: none;\r\n }\r\n\r\n &::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text', defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n height: 32px;\r\n border-width: 0;\r\n margin-left: 48px;\r\n outline: none;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.small {\r\n margin-left: 44px;\r\n\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.medium {\r\n margin-left: 48px;\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n \r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &:disabled {\r\n background: transparent;\r\n border: none;\r\n }\r\n`;\r\n\r\ntype SearchBarInputProps = {\r\n id: string;\r\n searchTerm?: string;\r\n setSearchTerm: (term: string) => void;\r\n enterSearch: (e: any) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n onKeyDown?: (e: React.KeyboardEvent) => void;\r\n size?: Size.Small | Size.Medium;\r\n onBlur?: (e: any) => void;\r\n focusParentRefs?: React.RefObject<any>[];\r\n onClick?: ()=>void;\r\n};\r\n\r\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\r\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, onBlur, onClick } = props;\r\n\r\n const elementRef = useFocusVisibleRef(props.focusParentRefs || []);\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const isPressingEnter = (e: any) => {\r\n if (e.key === 'Enter') {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n return (\r\n <Search\r\n placeholder={disabled ? '' : placeholder}\r\n ref={elementRef}\r\n id={id}\r\n data-testid={id}\r\n className={size ? size : ''}\r\n tabIndex={0}\r\n disabled={disabled}\r\n onChange={(e: any) => setSearchTerm(e.target.value)}\r\n value={searchTerm}\r\n onBlur={(e) => onBlur && onBlur(e)}\r\n onKeyDown={onKeyDown}\r\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\r\n onClick={onClick}\r\n />\r\n );\r\n});\r\n\r\nexport default SearchBarInput;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SearchBarInput.js","names":["React","styled","BREAKPOINTS","COLORS","ComponentTextStyle","ComponentMStyling","ComponentSStyling","useFocusVisibleRef","jsx","_jsx","Search","input","attrs","type","props","Italic","generateToken","componentType","defaultVariant","theme","Regular","MEDIUM","SearchBarInput","forwardRef","ref","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","size","onBlur","onClick","elementRef","focusParentRefs","useImperativeHandle","current","isPressingEnter","e","key","preventDefault","stopPropagation","className","tabIndex","onChange","target","value","onKeyPress","propTypes","_pt","string","isRequired","func","bool","array"],"sources":["../../../src/InputFields/components/SearchBarInput.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../../styles/index';\r\nimport { Size } from '../../types';\r\nimport { ComponentMStyling, ComponentSStyling } from '../../styles';\r\nimport { useFocusVisibleRef } from '../../common';\r\n\r\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\r\n appearance: none;\r\n width: calc(100% - 96px);\r\n\r\n /* To prevent browser putting its own cross inside the search bar */\r\n\r\n &::-ms-clear {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-ms-reveal {\r\n display: none;\r\n width: 0;\r\n height: 0;\r\n }\r\n\r\n &::-webkit-search-decoration,\r\n &::-webkit-search-cancel-button,\r\n &::-webkit-search-results-button,\r\n &::-webkit-search-results-decoration {\r\n display: none;\r\n }\r\n\r\n &::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text', defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n height: 32px;\r\n border-width: 0;\r\n margin-left: 48px;\r\n outline: none;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.small {\r\n margin-left: 44px;\r\n\r\n ::placeholder {\r\n ${props => ComponentSStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n &.medium {\r\n margin-left: 48px;\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant:'default'}, props.theme))}\r\n \r\n ::placeholder {\r\n ${props => ComponentMStyling(ComponentTextStyle.Italic, COLORS.generateToken({componentType:'text',defaultVariant:'subtle'}, props.theme))}\r\n }\r\n }\r\n\r\n background: ${props => COLORS.generateToken({componentType:'bg-surface', defaultVariant:'default'}, props.theme)};\r\n\r\n &:disabled {\r\n background: transparent;\r\n border: none;\r\n }\r\n`;\r\n\r\ntype SearchBarInputProps = {\r\n id: string;\r\n searchTerm?: string;\r\n setSearchTerm: (term: string) => void;\r\n enterSearch: (e: any) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n onKeyDown?: (e: React.KeyboardEvent) => void;\r\n size?: Size.Small | Size.Medium;\r\n onBlur?: (e: any) => void;\r\n focusParentRefs?: React.RefObject<any>[];\r\n onClick?: ()=>void;\r\n};\r\n\r\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\r\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, onBlur, onClick } = props;\r\n\r\n const elementRef = useFocusVisibleRef(props.focusParentRefs || []);\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const isPressingEnter = (e: any) => {\r\n if (e.key === 'Enter') {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n return (\r\n <Search\r\n placeholder={disabled ? '' : placeholder}\r\n ref={elementRef}\r\n id={id}\r\n data-testid={id}\r\n className={size ? size : ''}\r\n tabIndex={0}\r\n disabled={disabled}\r\n onChange={(e: any) => setSearchTerm(e.target.value)}\r\n value={searchTerm}\r\n onBlur={(e) => onBlur && onBlur(e)}\r\n onKeyDown={onKeyDown}\r\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\r\n onClick={onClick}\r\n />\r\n );\r\n});\r\n\r\nexport default SearchBarInput;\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import {render} from '../../test-utils';
3
+ import LinearProgress, {Bar, Dot, Line, LinearProgressType, LineFill} from '../LinearProgress';
4
+
5
+
6
+
7
+ describe('LinearProgress', () => {
8
+ it('should render dots', () => {
9
+ const wrapper = render(<LinearProgress type={LinearProgressType.Dots} max={11} value={6}/>);
10
+ expect(wrapper.container.querySelectorAll(`${Dot}`)).toHaveLength(11)
11
+ expect(wrapper.container.querySelectorAll(`${Dot}.active`)).toHaveLength(6)
12
+ });
13
+
14
+ it('should render bars', () => {
15
+ const wrapper = render(<LinearProgress type={LinearProgressType.Bars} max={11} value={6}/>);
16
+ expect(wrapper.container.querySelectorAll(`${Bar}`)).toHaveLength(11)
17
+ expect(wrapper.container.querySelectorAll(`${Bar}.active`)).toHaveLength(6)
18
+ });
19
+
20
+ it('should render line', () => {
21
+ const wrapper = render(<LinearProgress type={LinearProgressType.Line} max={11} value={6}/>);
22
+ expect(wrapper.container.querySelectorAll(`${Line}`)).toHaveLength(1)
23
+ expect(wrapper.container.querySelectorAll(`${LineFill}`).item(0).getAttribute('style')).toEqual(`width: ${6 / 11 * 100}%;`)
24
+ });
25
+ });
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import {render} from '../../test-utils';
3
+ import {ListRow} from '../index';
4
+ import {Size} from '../../types';
5
+ import {SystemIcons} from '../../icons';
6
+
7
+ describe('<ListRow />', () => {
8
+ it('Renders', async () => {
9
+ const {getByText} = render(
10
+ <ListRow
11
+ icon={<SystemIcons.Institute/>}
12
+ mainText={'Laerdal Medical AS'}
13
+ size={Size.Small}
14
+ disabled={false}/>,
15
+ );
16
+ expect(getByText('Laerdal Medical AS')).toBeDefined();
17
+ });
18
+ });
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import { render } from '../../test-utils';
3
+ import { GlobalLoadingPage } from '../index';
4
+ import 'jest-styled-components';
5
+ import { COLORS } from '../../styles';
6
+
7
+
8
+
9
+
10
+ describe('<GlobalLoadingPage />', () => {
11
+ it('Renders GlobalLoadingPage', async () => {
12
+ const optionalMessage = 'This is the optional message';
13
+ const { queryByText, getByTestId } = render(<GlobalLoadingPage optionalMessage={optionalMessage} />);
14
+ expect(queryByText(optionalMessage)).toBeDefined();
15
+ expect(getByTestId('TestLoadingMain')).toBeDefined();
16
+ expect(getByTestId('TestLoadingMain')).toHaveStyleRule('background-color', COLORS.primary_20);
17
+ expect(getByTestId('TestLoadingMain')).toHaveStyleRule('height', '100%');
18
+ expect(getByTestId('TestLoadingLogoAndMessage')).toBeDefined();
19
+ expect(getByTestId('TestLoadingLogoAndMessage')).toHaveStyleRule('position', 'absolute');
20
+ expect(getByTestId('TestLoadingLogoAndMessage')).toHaveStyleRule('align-items', 'center');
21
+ expect(getByTestId('TestLoadingLogoAndMessage')).toHaveStyleRule('bottom', '36px');
22
+ });
23
+ });
@@ -12,6 +12,7 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
12
  var _styles = require("../styles");
13
13
  var _icons = require("../icons");
14
14
  var _HyperLink = require("../HyperLink/HyperLink");
15
+ var _Navigation = require("../Navigation");
15
16
  var _jsxRuntime = require("react/jsx-runtime");
16
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
18
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -80,11 +81,23 @@ const RightIconWrapper = _styledComponents.default.div`
80
81
  const MiniProductCard = _ref => {
81
82
  let {
82
83
  url,
84
+ external,
83
85
  product,
84
86
  target = '_self'
85
87
  } = _ref;
86
88
  const theme = (0, _styledComponents.useTheme)();
89
+ const {
90
+ navigate
91
+ } = (0, _Navigation.useNavigation)();
92
+ const onClick = e => {
93
+ if (external) {
94
+ return;
95
+ }
96
+ e?.preventDefault();
97
+ navigate && navigate(url ?? '', false);
98
+ };
87
99
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ProductLink, {
100
+ onClick: onClick,
88
101
  $variant: "styleless",
89
102
  href: url ?? '',
90
103
  target: target,
@@ -109,7 +122,8 @@ const MiniProductCard = _ref => {
109
122
  };
110
123
  MiniProductCard.propTypes = {
111
124
  url: _propTypes.default.string,
112
- target: _propTypes.default.string
125
+ target: _propTypes.default.string,
126
+ external: _propTypes.default.bool
113
127
  };
114
128
  var _default = exports.default = MiniProductCard;
115
129
  //# sourceMappingURL=MiniProductCard.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MiniProductCard.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_styles","_icons","_HyperLink","_jsxRuntime","_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","ProductLink","styled","props","jsx","StyledLink","COLORS","getColor","theme","BREAKPOINTS","MEDIUM","ProductThing","div","ProductImage","img","ProductName","h2","ComponentMStyling","ComponentTextStyle","Regular","ProductType","span","ComponentSStyling","ProductInnerWrapper","RightIconWrapper","MiniProductCard","_ref","url","product","target","useTheme","$variant","href","children","jsxs","image","src","name","type","SystemIcons","ChevronRight","color","className","size","propTypes","_propTypes","string","_default","exports"],"sources":["../../src/MiniProductCard/MiniProductCard.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {Product} from '../types';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport { StyledLink } from '../HyperLink/HyperLink';\r\n\r\nexport type MiniProductCardProps = {\r\n product: Product;\r\n url?: string;\r\n target?: string;\r\n};\r\nconst ProductLink = styled(props => <StyledLink {...props} />)`\r\n display: flex;\r\n flex: 1;\r\n margin: 10px 8px;\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n text-decoration: none;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 305px;\r\n }\r\n`;\r\n\r\nconst ProductThing = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n border-radius: 8px;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n\r\n &:hover {\r\n background: ${props => COLORS.getColor('primary_20', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n &:active {\r\n background: ${props => COLORS.getColor('primary_100', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n`;\r\n\r\nconst ProductImage = styled.img`\r\n width: 95px;\r\n height: 75px;\r\n object-fit: fill;\r\n border-radius: 8px;\r\n`;\r\n\r\nconst ProductName = styled.h2`\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n margin-top: 3px;\r\n`;\r\n\r\nconst ProductType = styled.span`\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n`;\r\n\r\nconst ProductInnerWrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 12px 18px;\r\n flex: 1;\r\n`;\r\n\r\nconst RightIconWrapper = styled.div`\r\n display: flex;\r\n justify-self: flex-start;\r\n align-items: center;\r\n padding-right: 12px;\r\n`;\r\n\r\nconst MiniProductCard: React.FunctionComponent<MiniProductCardProps> = ({ url, product, target = '_self' }: MiniProductCardProps) => {\r\n const theme = useTheme();\r\n return (\r\n <ProductLink $variant='styleless' href={url ?? ''} target={target}>\r\n <ProductThing>\r\n {product.image && <ProductImage src={product.image} />}\r\n <ProductInnerWrapper>\r\n <ProductName>{product.name}</ProductName>\r\n <ProductType>{product.type}</ProductType>\r\n </ProductInnerWrapper>\r\n <RightIconWrapper>\r\n <SystemIcons.ChevronRight color={COLORS.getColor('primary', theme)} className={'product-chevron-right'} size={'24px'} />\r\n </RightIconWrapper>\r\n </ProductThing>\r\n </ProductLink>\r\n );\r\n};\r\n\r\nexport default MiniProductCard;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MiniProductCard.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_styles","_icons","_HyperLink","_Navigation","_jsxRuntime","_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","ProductLink","styled","props","jsx","StyledLink","COLORS","getColor","theme","BREAKPOINTS","MEDIUM","ProductThing","div","ProductImage","img","ProductName","h2","ComponentMStyling","ComponentTextStyle","Regular","ProductType","span","ComponentSStyling","ProductInnerWrapper","RightIconWrapper","MiniProductCard","_ref","url","external","product","target","useTheme","navigate","useNavigation","onClick","preventDefault","$variant","href","children","jsxs","image","src","name","type","SystemIcons","ChevronRight","color","className","size","propTypes","_propTypes","string","bool","_default","exports"],"sources":["../../src/MiniProductCard/MiniProductCard.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {Product} from '../types';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport { StyledLink } from '../HyperLink/HyperLink';\r\nimport { useNavigation } from '../Navigation';\r\n\r\nexport type MiniProductCardProps = {\r\n product: Product;\r\n url?: string;\r\n target?: string;\r\n external?: boolean;\r\n};\r\nconst ProductLink = styled(props => <StyledLink {...props} />)`\r\n display: flex;\r\n flex: 1;\r\n margin: 10px 8px;\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n text-decoration: none;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 305px;\r\n }\r\n`;\r\n\r\nconst ProductThing = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n border-radius: 8px;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n\r\n &:hover {\r\n background: ${props => COLORS.getColor('primary_20', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n &:active {\r\n background: ${props => COLORS.getColor('primary_100', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n`;\r\n\r\nconst ProductImage = styled.img`\r\n width: 95px;\r\n height: 75px;\r\n object-fit: fill;\r\n border-radius: 8px;\r\n`;\r\n\r\nconst ProductName = styled.h2`\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n margin-top: 3px;\r\n`;\r\n\r\nconst ProductType = styled.span`\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n`;\r\n\r\nconst ProductInnerWrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 12px 18px;\r\n flex: 1;\r\n`;\r\n\r\nconst RightIconWrapper = styled.div`\r\n display: flex;\r\n justify-self: flex-start;\r\n align-items: center;\r\n padding-right: 12px;\r\n`;\r\n\r\nconst MiniProductCard: React.FunctionComponent<MiniProductCardProps> = ({ url, external, product, target = '_self' }: MiniProductCardProps) => {\r\n const theme = useTheme();\r\n const { navigate } = useNavigation();\r\n const onClick = (e: any) => {\r\n if (external) {\r\n return;\r\n }\r\n e?.preventDefault();\r\n navigate && navigate(url ?? '', false);\r\n };\r\n return (\r\n <ProductLink onClick={onClick} $variant='styleless' href={url ?? ''} target={target}>\r\n <ProductThing>\r\n {product.image && <ProductImage src={product.image} />}\r\n <ProductInnerWrapper>\r\n <ProductName>{product.name}</ProductName>\r\n <ProductType>{product.type}</ProductType>\r\n </ProductInnerWrapper>\r\n <RightIconWrapper>\r\n <SystemIcons.ChevronRight color={COLORS.getColor('primary', theme)} className={'product-chevron-right'} size={'24px'} />\r\n </RightIconWrapper>\r\n </ProductThing>\r\n </ProductLink>\r\n );\r\n};\r\n\r\nexport default MiniProductCard;\r\n"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,7 @@ export type MiniProductCardProps = {
4
4
  product: Product;
5
5
  url?: string;
6
6
  target?: string;
7
+ external?: boolean;
7
8
  };
8
9
  declare const MiniProductCard: React.FunctionComponent<MiniProductCardProps>;
9
10
  export default MiniProductCard;
@@ -8,6 +8,7 @@ import { BREAKPOINTS, COLORS, ComponentTextStyle } from '../styles';
8
8
  import { SystemIcons } from '../icons';
9
9
  import { ComponentMStyling, ComponentSStyling } from '../styles';
10
10
  import { StyledLink } from '../HyperLink/HyperLink';
11
+ import { useNavigation } from '../Navigation';
11
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
13
  const ProductLink = styled(props => /*#__PURE__*/_jsx(StyledLink, _objectSpread({}, props)))`
13
14
  display: flex;
@@ -72,11 +73,23 @@ const RightIconWrapper = styled.div`
72
73
  const MiniProductCard = _ref => {
73
74
  let {
74
75
  url,
76
+ external,
75
77
  product,
76
78
  target = '_self'
77
79
  } = _ref;
78
80
  const theme = useTheme();
81
+ const {
82
+ navigate
83
+ } = useNavigation();
84
+ const onClick = e => {
85
+ if (external) {
86
+ return;
87
+ }
88
+ e?.preventDefault();
89
+ navigate && navigate(url ?? '', false);
90
+ };
79
91
  return /*#__PURE__*/_jsx(ProductLink, {
92
+ onClick: onClick,
80
93
  $variant: "styleless",
81
94
  href: url ?? '',
82
95
  target: target,
@@ -101,7 +114,8 @@ const MiniProductCard = _ref => {
101
114
  };
102
115
  MiniProductCard.propTypes = {
103
116
  url: _pt.string,
104
- target: _pt.string
117
+ target: _pt.string,
118
+ external: _pt.bool
105
119
  };
106
120
  export default MiniProductCard;
107
121
  //# sourceMappingURL=MiniProductCard.js.map