@laerdal/life-react-components 1.2.2-dev.7 → 1.3.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 (270) hide show
  1. package/dist/esm/Accordion/AccordionItem.js +70 -0
  2. package/dist/esm/Accordion/AccordionItem.js.map +1 -0
  3. package/dist/esm/Accordion/AccordionMenu.js +61 -0
  4. package/dist/esm/Accordion/AccordionMenu.js.map +1 -0
  5. package/dist/esm/Accordion/__tests__/AccordionMenu.test.js +53 -0
  6. package/dist/esm/Accordion/__tests__/AccordionMenu.test.js.map +1 -0
  7. package/dist/esm/Accordion/index.js +4 -0
  8. package/dist/esm/Accordion/index.js.map +1 -0
  9. package/dist/esm/Accordion/styles.js +75 -0
  10. package/dist/esm/Accordion/styles.js.map +1 -0
  11. package/dist/esm/Breadcrumb/Breadcrumb.js.map +1 -1
  12. package/dist/esm/Button/Iconbutton.js +5 -2
  13. package/dist/esm/Button/Iconbutton.js.map +1 -1
  14. package/dist/esm/Dropdown/BasicDropdown.js +17 -9
  15. package/dist/esm/Dropdown/BasicDropdown.js.map +1 -1
  16. package/dist/esm/Dropdown/CommonStyling.js +71 -71
  17. package/dist/esm/Dropdown/CommonStyling.js.map +1 -1
  18. package/dist/esm/Dropdown/DropdownContent.js +13 -1
  19. package/dist/esm/Dropdown/DropdownContent.js.map +1 -1
  20. package/dist/esm/GlobalNavigationBar/Avatar.js +2 -2
  21. package/dist/esm/GlobalNavigationBar/Avatar.js.map +1 -1
  22. package/dist/esm/GlobalNavigationBar/ExtendedMainMenu.js +2 -1
  23. package/dist/esm/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  24. package/dist/esm/GlobalNavigationBar/GlobalNavigationBar.js +6 -2
  25. package/dist/esm/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  26. package/dist/esm/GlobalNavigationBar/Logo.js +10 -10
  27. package/dist/esm/GlobalNavigationBar/Logo.js.map +1 -1
  28. package/dist/esm/GlobalNavigationBar/UserMenu/MobileUserMenu.js +2 -1
  29. package/dist/esm/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
  30. package/dist/esm/GlobalNavigationBar/UserMenu/UserMenu.js +2 -1
  31. package/dist/esm/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  32. package/dist/esm/GlobalNavigationBar/mobile/CommonStyles.js +8 -1
  33. package/dist/esm/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  34. package/dist/esm/HyperLink/HyperLink.js +20 -17
  35. package/dist/esm/HyperLink/HyperLink.js.map +1 -1
  36. package/dist/esm/InputFields/Checkbox.js +27 -16
  37. package/dist/esm/InputFields/Checkbox.js.map +1 -1
  38. package/dist/esm/InputFields/DatepickerField.js +6 -0
  39. package/dist/esm/InputFields/DatepickerField.js.map +1 -1
  40. package/dist/esm/InputFields/PasswordField.js +1 -1
  41. package/dist/esm/InputFields/PasswordField.js.map +1 -1
  42. package/dist/esm/InputFields/RadioButton.js +21 -14
  43. package/dist/esm/InputFields/RadioButton.js.map +1 -1
  44. package/dist/esm/InputFields/SearchBar.js +13 -13
  45. package/dist/esm/InputFields/SearchBar.js.map +1 -1
  46. package/dist/esm/List/ListRow.js +4 -1
  47. package/dist/esm/List/ListRow.js.map +1 -1
  48. package/dist/esm/Modals/ModalContainer.js +8 -1
  49. package/dist/esm/Modals/ModalContainer.js.map +1 -1
  50. package/dist/esm/Modals/ModalDialog.js +76 -26
  51. package/dist/esm/Modals/ModalDialog.js.map +1 -1
  52. package/dist/esm/Modals/ModalStyles.js +38 -21
  53. package/dist/esm/Modals/ModalStyles.js.map +1 -1
  54. package/dist/esm/Modals/ModalTypes.js +2 -0
  55. package/dist/esm/Modals/ModalTypes.js.map +1 -0
  56. package/dist/esm/NavItem/NavItem.js +4 -0
  57. package/dist/esm/NavItem/NavItem.js.map +1 -1
  58. package/dist/esm/Paginator/Paginator.js +60 -48
  59. package/dist/esm/Paginator/Paginator.js.map +1 -1
  60. package/dist/esm/Paginator/__tests__/Paginator.test.js +4 -4
  61. package/dist/esm/Paginator/__tests__/Paginator.test.js.map +1 -1
  62. package/dist/esm/Switcher/MobileSwitcherMenu.js +2 -1
  63. package/dist/esm/Switcher/MobileSwitcherMenu.js.map +1 -1
  64. package/dist/esm/Switcher/SwitcherMenuItem.js +5 -0
  65. package/dist/esm/Switcher/SwitcherMenuItem.js.map +1 -1
  66. package/dist/esm/Tabs/HorizontalTabs.js +10 -4
  67. package/dist/esm/Tabs/HorizontalTabs.js.map +1 -1
  68. package/dist/esm/Tabs/TabLink.js +15 -4
  69. package/dist/esm/Tabs/TabLink.js.map +1 -1
  70. package/dist/esm/Toasters/ToastContext.js +2 -1
  71. package/dist/esm/Toasters/ToastContext.js.map +1 -1
  72. package/dist/esm/Tooltips/TooltipStyles.js +6 -5
  73. package/dist/esm/Tooltips/TooltipStyles.js.map +1 -1
  74. package/dist/esm/Tooltips/TooltipTypes.js.map +1 -1
  75. package/dist/esm/Tooltips/TooltipWrapper.js +4 -1
  76. package/dist/esm/Tooltips/TooltipWrapper.js.map +1 -1
  77. package/dist/esm/icons/index.js +1 -1
  78. package/dist/esm/icons/index.js.map +1 -1
  79. package/dist/esm/index.js +1 -0
  80. package/dist/esm/index.js.map +1 -1
  81. package/dist/esm/styles/typography.js +25 -6
  82. package/dist/esm/styles/typography.js.map +1 -1
  83. package/dist/esm/styles/z-indexes.js +14 -0
  84. package/dist/esm/styles/z-indexes.js.map +1 -0
  85. package/dist/js/Accordion/AccordionItem.d.ts +9 -0
  86. package/dist/js/Accordion/AccordionItem.js +101 -0
  87. package/dist/js/Accordion/AccordionItem.js.map +1 -0
  88. package/dist/js/Accordion/AccordionMenu.d.ts +17 -0
  89. package/dist/js/Accordion/AccordionMenu.js +111 -0
  90. package/dist/js/Accordion/AccordionMenu.js.map +1 -0
  91. package/dist/js/Accordion/__tests__/AccordionMenu.test.js +101 -0
  92. package/dist/js/Accordion/__tests__/AccordionMenu.test.js.map +1 -0
  93. package/dist/js/Accordion/index.d.ts +3 -0
  94. package/dist/js/Accordion/index.js +30 -0
  95. package/dist/js/Accordion/index.js.map +1 -0
  96. package/dist/js/Accordion/styles.d.ts +11 -0
  97. package/dist/js/Accordion/styles.js +52 -0
  98. package/dist/js/Accordion/styles.js.map +1 -0
  99. package/dist/js/Breadcrumb/Breadcrumb.js.map +1 -1
  100. package/dist/js/Button/Iconbutton.d.ts +1 -1
  101. package/dist/js/Button/Iconbutton.js +16 -9
  102. package/dist/js/Button/Iconbutton.js.map +1 -1
  103. package/dist/js/Dropdown/BasicDropdown.d.ts +4 -1
  104. package/dist/js/Dropdown/BasicDropdown.js +17 -9
  105. package/dist/js/Dropdown/BasicDropdown.js.map +1 -1
  106. package/dist/js/Dropdown/CommonStyling.d.ts +2 -0
  107. package/dist/js/Dropdown/CommonStyling.js +8 -4
  108. package/dist/js/Dropdown/CommonStyling.js.map +1 -1
  109. package/dist/js/Dropdown/DropdownContent.js +5 -3
  110. package/dist/js/Dropdown/DropdownContent.js.map +1 -1
  111. package/dist/js/GlobalNavigationBar/Avatar.js +2 -2
  112. package/dist/js/GlobalNavigationBar/Avatar.js.map +1 -1
  113. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js +3 -1
  114. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  115. package/dist/js/GlobalNavigationBar/GlobalNavigationBar.js +5 -3
  116. package/dist/js/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  117. package/dist/js/GlobalNavigationBar/Logo.js +9 -9
  118. package/dist/js/GlobalNavigationBar/Logo.js.map +1 -1
  119. package/dist/js/GlobalNavigationBar/UserMenu/MobileUserMenu.js +3 -1
  120. package/dist/js/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
  121. package/dist/js/GlobalNavigationBar/UserMenu/UserMenu.js +3 -1
  122. package/dist/js/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  123. package/dist/js/GlobalNavigationBar/mobile/CommonStyles.js +4 -2
  124. package/dist/js/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  125. package/dist/js/HyperLink/HyperLink.d.ts +2 -2
  126. package/dist/js/HyperLink/HyperLink.js +19 -15
  127. package/dist/js/HyperLink/HyperLink.js.map +1 -1
  128. package/dist/js/InputFields/Checkbox.js +9 -5
  129. package/dist/js/InputFields/Checkbox.js.map +1 -1
  130. package/dist/js/InputFields/DatepickerField.js +3 -1
  131. package/dist/js/InputFields/DatepickerField.js.map +1 -1
  132. package/dist/js/InputFields/PasswordField.js +1 -1
  133. package/dist/js/InputFields/PasswordField.js.map +1 -1
  134. package/dist/js/InputFields/RadioButton.js +3 -3
  135. package/dist/js/InputFields/RadioButton.js.map +1 -1
  136. package/dist/js/InputFields/SearchBar.js +15 -15
  137. package/dist/js/InputFields/SearchBar.js.map +1 -1
  138. package/dist/js/List/ListRow.js +3 -1
  139. package/dist/js/List/ListRow.js.map +1 -1
  140. package/dist/js/Modals/ModalContainer.js +3 -1
  141. package/dist/js/Modals/ModalContainer.js.map +1 -1
  142. package/dist/js/Modals/ModalDialog.d.ts +2 -6
  143. package/dist/js/Modals/ModalDialog.js +77 -46
  144. package/dist/js/Modals/ModalDialog.js.map +1 -1
  145. package/dist/js/Modals/ModalStyles.d.ts +6 -0
  146. package/dist/js/Modals/ModalStyles.js +34 -14
  147. package/dist/js/Modals/ModalStyles.js.map +1 -1
  148. package/dist/js/Modals/ModalTypes.d.ts +18 -0
  149. package/dist/js/Modals/ModalTypes.js +6 -0
  150. package/dist/js/Modals/ModalTypes.js.map +1 -0
  151. package/dist/js/NavItem/NavItem.js +3 -1
  152. package/dist/js/NavItem/NavItem.js.map +1 -1
  153. package/dist/js/Paginator/Paginator.js +39 -38
  154. package/dist/js/Paginator/Paginator.js.map +1 -1
  155. package/dist/js/Paginator/__tests__/Paginator.test.js +6 -6
  156. package/dist/js/Paginator/__tests__/Paginator.test.js.map +1 -1
  157. package/dist/js/Switcher/MobileSwitcherMenu.js +3 -1
  158. package/dist/js/Switcher/MobileSwitcherMenu.js.map +1 -1
  159. package/dist/js/Switcher/SwitcherMenuItem.js +3 -1
  160. package/dist/js/Switcher/SwitcherMenuItem.js.map +1 -1
  161. package/dist/js/Tabs/HorizontalTabs.js +4 -2
  162. package/dist/js/Tabs/HorizontalTabs.js.map +1 -1
  163. package/dist/js/Tabs/TabLink.js +4 -2
  164. package/dist/js/Tabs/TabLink.js.map +1 -1
  165. package/dist/js/Toasters/ToastContext.js +3 -1
  166. package/dist/js/Toasters/ToastContext.js.map +1 -1
  167. package/dist/js/Tooltips/TooltipStyles.d.ts +4 -2
  168. package/dist/js/Tooltips/TooltipStyles.js +12 -4
  169. package/dist/js/Tooltips/TooltipStyles.js.map +1 -1
  170. package/dist/js/Tooltips/TooltipTypes.d.ts +1 -0
  171. package/dist/js/Tooltips/TooltipTypes.js.map +1 -1
  172. package/dist/js/Tooltips/TooltipWrapper.d.ts +1 -1
  173. package/dist/js/Tooltips/TooltipWrapper.js +5 -1
  174. package/dist/js/Tooltips/TooltipWrapper.js.map +1 -1
  175. package/dist/js/icons/index.js +1 -1
  176. package/dist/js/icons/index.js.map +1 -1
  177. package/dist/js/index.d.ts +1 -0
  178. package/dist/js/index.js +13 -0
  179. package/dist/js/index.js.map +1 -1
  180. package/dist/js/styles/typography.d.ts +1 -0
  181. package/dist/js/styles/typography.js +25 -6
  182. package/dist/js/styles/typography.js.map +1 -1
  183. package/dist/js/styles/z-indexes.d.ts +13 -0
  184. package/dist/js/styles/z-indexes.js +21 -0
  185. package/dist/js/styles/z-indexes.js.map +1 -0
  186. package/dist/umd/Accordion/AccordionItem.js +98 -0
  187. package/dist/umd/Accordion/AccordionItem.js.map +1 -0
  188. package/dist/umd/Accordion/AccordionMenu.js +138 -0
  189. package/dist/umd/Accordion/AccordionMenu.js.map +1 -0
  190. package/dist/umd/Accordion/__tests__/AccordionMenu.test.js +74 -0
  191. package/dist/umd/Accordion/__tests__/AccordionMenu.test.js.map +1 -0
  192. package/dist/umd/Accordion/index.js +44 -0
  193. package/dist/umd/Accordion/index.js.map +1 -0
  194. package/dist/umd/Accordion/styles.js +101 -0
  195. package/dist/umd/Accordion/styles.js.map +1 -0
  196. package/dist/umd/Breadcrumb/Breadcrumb.js.map +1 -1
  197. package/dist/umd/Button/Iconbutton.js +16 -59
  198. package/dist/umd/Button/Iconbutton.js.map +1 -1
  199. package/dist/umd/Dropdown/BasicDropdown.js +17 -9
  200. package/dist/umd/Dropdown/BasicDropdown.js.map +1 -1
  201. package/dist/umd/Dropdown/CommonStyling.js +74 -75
  202. package/dist/umd/Dropdown/CommonStyling.js.map +1 -1
  203. package/dist/umd/Dropdown/DropdownContent.js +16 -5
  204. package/dist/umd/Dropdown/DropdownContent.js.map +1 -1
  205. package/dist/umd/GlobalNavigationBar/Avatar.js +2 -2
  206. package/dist/umd/GlobalNavigationBar/Avatar.js.map +1 -1
  207. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js +5 -5
  208. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  209. package/dist/umd/GlobalNavigationBar/GlobalNavigationBar.js +9 -6
  210. package/dist/umd/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  211. package/dist/umd/GlobalNavigationBar/Logo.js +10 -10
  212. package/dist/umd/GlobalNavigationBar/Logo.js.map +1 -1
  213. package/dist/umd/GlobalNavigationBar/UserMenu/MobileUserMenu.js +5 -5
  214. package/dist/umd/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
  215. package/dist/umd/GlobalNavigationBar/UserMenu/UserMenu.js +5 -5
  216. package/dist/umd/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  217. package/dist/umd/GlobalNavigationBar/mobile/CommonStyles.js +11 -5
  218. package/dist/umd/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  219. package/dist/umd/HyperLink/HyperLink.js +68 -17
  220. package/dist/umd/HyperLink/HyperLink.js.map +1 -1
  221. package/dist/umd/InputFields/Checkbox.js +27 -16
  222. package/dist/umd/InputFields/Checkbox.js.map +1 -1
  223. package/dist/umd/InputFields/DatepickerField.js +9 -4
  224. package/dist/umd/InputFields/DatepickerField.js.map +1 -1
  225. package/dist/umd/InputFields/PasswordField.js +1 -1
  226. package/dist/umd/InputFields/PasswordField.js.map +1 -1
  227. package/dist/umd/InputFields/RadioButton.js +21 -14
  228. package/dist/umd/InputFields/RadioButton.js.map +1 -1
  229. package/dist/umd/InputFields/SearchBar.js +13 -13
  230. package/dist/umd/InputFields/SearchBar.js.map +1 -1
  231. package/dist/umd/List/ListRow.js +7 -5
  232. package/dist/umd/List/ListRow.js.map +1 -1
  233. package/dist/umd/Modals/ModalContainer.js +11 -5
  234. package/dist/umd/Modals/ModalContainer.js.map +1 -1
  235. package/dist/umd/Modals/ModalDialog.js +77 -29
  236. package/dist/umd/Modals/ModalDialog.js.map +1 -1
  237. package/dist/umd/Modals/ModalStyles.js +39 -22
  238. package/dist/umd/Modals/ModalStyles.js.map +1 -1
  239. package/dist/umd/Modals/ModalTypes.js +20 -0
  240. package/dist/umd/Modals/ModalTypes.js.map +1 -0
  241. package/dist/umd/NavItem/NavItem.js +7 -4
  242. package/dist/umd/NavItem/NavItem.js.map +1 -1
  243. package/dist/umd/Paginator/Paginator.js +60 -51
  244. package/dist/umd/Paginator/Paginator.js.map +1 -1
  245. package/dist/umd/Paginator/__tests__/Paginator.test.js +4 -4
  246. package/dist/umd/Paginator/__tests__/Paginator.test.js.map +1 -1
  247. package/dist/umd/Switcher/MobileSwitcherMenu.js +5 -5
  248. package/dist/umd/Switcher/MobileSwitcherMenu.js.map +1 -1
  249. package/dist/umd/Switcher/SwitcherMenuItem.js +8 -4
  250. package/dist/umd/Switcher/SwitcherMenuItem.js.map +1 -1
  251. package/dist/umd/Tabs/HorizontalTabs.js +12 -7
  252. package/dist/umd/Tabs/HorizontalTabs.js.map +1 -1
  253. package/dist/umd/Tabs/TabLink.js +18 -8
  254. package/dist/umd/Tabs/TabLink.js.map +1 -1
  255. package/dist/umd/Toasters/ToastContext.js +5 -5
  256. package/dist/umd/Toasters/ToastContext.js.map +1 -1
  257. package/dist/umd/Tooltips/TooltipStyles.js +11 -9
  258. package/dist/umd/Tooltips/TooltipStyles.js.map +1 -1
  259. package/dist/umd/Tooltips/TooltipTypes.js.map +1 -1
  260. package/dist/umd/Tooltips/TooltipWrapper.js +4 -1
  261. package/dist/umd/Tooltips/TooltipWrapper.js.map +1 -1
  262. package/dist/umd/icons/index.js +1 -1
  263. package/dist/umd/icons/index.js.map +1 -1
  264. package/dist/umd/index.js +13 -4
  265. package/dist/umd/index.js.map +1 -1
  266. package/dist/umd/styles/typography.js +25 -6
  267. package/dist/umd/styles/typography.js.map +1 -1
  268. package/dist/umd/styles/z-indexes.js +33 -0
  269. package/dist/umd/styles/z-indexes.js.map +1 -0
  270. package/package.json +10 -19
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/NavItem/NavItem.tsx"],"names":["NavItem","styled","div","ComponentMStyling","ComponentTextStyle","COLORS","neutral_20","neutral_800","primary_600","neutral_300","neutral_100","primary_20","primary_700","primary_500"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,QAAMA,OAAO,GAAGC,2BAAOC,GAAI;AAC3B,IAAIC,mCAAkBC,+BAAD,OAAjBD,EAA8CE,eAA7B,WAAjBF,CAAkE;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwBE,eAAOC,UAAW;AAC1C,aAAaD,eAAOE,WAAY;AAChC;AACA,0BAA0BF,eAAOG,WAAY;AAC7C;AACA;AACA;AACA;AACA,aAAaH,eAAOI,WAAY;AAChC,wBAAwBJ,eAAOK,WAAY;AAC3C;AACA,0BAA0BL,eAAOK,WAAY;AAC7C;AACA;AACA;AACA;AACA,wBAAwBL,eAAOM,UAAW;AAC1C,aAAaN,eAAOO,WAAY;AAChC;AACA,0BAA0BP,eAAOG,WAAY;AAC7C;AACA;AACA;AACA;AACA,8BAA8BH,eAAOQ,WAAY;AACjD;AACA;AACA,0BAA0BR,eAAOG,WAAY;AAC7C;AACA;AArDA,CAAA;oBAwDA,O","sourcesContent":["import styled from 'styled-components';\n\nimport { COLORS } from '../styles';\nimport { ComponentMStyling, ComponentTextStyle } from '../styles/typography';\n\nconst NavItem = styled.div`\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n margin: 0;\n padding: 0 21px 0 21px;\n height: 64px;\n\n display: flex;\n align-items: center;\n text-align: center;\n position: relative;\n\n &:after {\n content: '';\n display: block;\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: 3px;\n background-color: transparent;\n }\n\n &.active:not(.disabled) {\n background-color: ${COLORS.neutral_20};\n color: ${COLORS.neutral_800};\n &:after {\n background-color: ${COLORS.primary_600};\n }\n }\n\n &.disabled {\n color: ${COLORS.neutral_300};\n background-color: ${COLORS.neutral_100};\n &:after {\n background-color: ${COLORS.neutral_100};\n }\n }\n\n &:hover:not(.disabled) {\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n &:after {\n background-color: ${COLORS.primary_600};\n }\n }\n\n &:focus:not(.disabled) {\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n outline: none;\n &:after {\n background-color: ${COLORS.primary_600};\n }\n }\n`;\n\nexport default NavItem;\n"],"file":"NavItem.js"}
1
+ {"version":3,"sources":["../../../src/NavItem/NavItem.tsx"],"names":["NavItem","styled","div","ComponentMStyling","ComponentTextStyle","COLORS","Z_INDEXES","active","neutral_20","neutral_800","primary_600","neutral_300","neutral_100","hover","primary_20","primary_700","focus","primary_500"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,QAAMA,OAAO,GAAGC,2BAAOC,GAAI;AAC3B,IAAIC,mCAAkBC,+BAAD,OAAjBD,EAA8CE,eAA7B,WAAjBF,CAAkE;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAeG,oBAAUC,MAAO;AAChC,wBAAwBF,eAAOG,UAAW;AAC1C,aAAaH,eAAOI,WAAY;AAChC;AACA,0BAA0BJ,eAAOK,WAAY;AAC7C;AACA;AACA;AACA;AACA,aAAaL,eAAOM,WAAY;AAChC,wBAAwBN,eAAOO,WAAY;AAC3C;AACA,0BAA0BP,eAAOO,WAAY;AAC7C;AACA;AACA;AACA;AACA,eAAeN,oBAAUO,KAAM;AAC/B,wBAAwBR,eAAOS,UAAW;AAC1C,aAAaT,eAAOU,WAAY;AAChC;AACA,0BAA0BV,eAAOK,WAAY;AAC7C;AACA;AACA;AACA;AACA,eAAeJ,oBAAUU,KAAM;AAC/B,8BAA8BX,eAAOY,WAAY;AACjD;AACA;AACA,0BAA0BZ,eAAOK,WAAY;AAC7C;AACA;AAxDA,CAAA;oBA2DA,O","sourcesContent":["import styled from 'styled-components';\n\nimport { COLORS } from '../styles';\nimport { ComponentMStyling, ComponentTextStyle } from '../styles/typography';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\nconst NavItem = styled.div`\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n margin: 0;\n padding: 0 21px 0 21px;\n height: 64px;\n\n display: flex;\n align-items: center;\n text-align: center;\n position: relative;\n\n &:after {\n content: '';\n display: block;\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: 3px;\n background-color: transparent;\n }\n\n &.active:not(.disabled) {\n z-index: ${Z_INDEXES.active};\n background-color: ${COLORS.neutral_20};\n color: ${COLORS.neutral_800};\n &:after {\n background-color: ${COLORS.primary_600};\n }\n }\n\n &.disabled {\n color: ${COLORS.neutral_300};\n background-color: ${COLORS.neutral_100};\n &:after {\n background-color: ${COLORS.neutral_100};\n }\n }\n\n &:hover:not(.disabled) {\n z-index: ${Z_INDEXES.hover};\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n &:after {\n background-color: ${COLORS.primary_600};\n }\n }\n\n &:focus:not(.disabled) {\n z-index: ${Z_INDEXES.focus};\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n outline: none;\n &:after {\n background-color: ${COLORS.primary_600};\n }\n }\n`;\n\nexport default NavItem;\n"],"file":"NavItem.js"}
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "prop-types", "react", "styled-components", "react-router-dom", "../styles", "../icons/systemicons/SystemIcons", "../styles/typography"], factory);
3
+ define(["exports", "prop-types", "react", "styled-components", "react-router-dom", "../styles", "../icons/systemicons/SystemIcons", "../styles/typography", "../styles/z-indexes", "react-router", "../Button"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("prop-types"), require("react"), require("styled-components"), require("react-router-dom"), require("../styles"), require("../icons/systemicons/SystemIcons"), require("../styles/typography"));
5
+ factory(exports, require("prop-types"), require("react"), require("styled-components"), require("react-router-dom"), require("../styles"), require("../icons/systemicons/SystemIcons"), require("../styles/typography"), require("../styles/z-indexes"), require("react-router"), require("../Button"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.reactRouterDom, global.styles, global.SystemIcons, global.typography);
10
+ factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.reactRouterDom, global.styles, global.SystemIcons, global.typography, global.zIndexes, global.reactRouter, global.Button);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _propTypes, _react, _styledComponents, _reactRouterDom, _styles, _SystemIcons, _typography) {
13
+ })(this, function (exports, _propTypes, _react, _styledComponents, _reactRouterDom, _styles, _SystemIcons, _typography, _zIndexes, _reactRouter, _Button) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -96,7 +96,7 @@
96
96
  `;
97
97
  const Item = _styledComponents2.default.li`
98
98
  width: 48px;
99
- height: 45px;
99
+ height: 48px;
100
100
  display: flex;
101
101
  align-items: center;
102
102
  justify-content: center;
@@ -108,29 +108,30 @@
108
108
  width: 100%;
109
109
  height: 100%;
110
110
  text-decoration: none;
111
- border-bottom: 3px solid transparent;
112
111
 
113
112
  ${(0, _typography.ComponentMStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.neutral_600)}
114
113
 
115
114
  &:focus,
116
115
  &:focus-within {
116
+ z-index: ${_zIndexes.Z_INDEXES.focus};
117
117
  box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2e7fa1;
118
118
  outline-width: 0;
119
119
  }
120
120
  }
121
-
122
121
  & > a:hover {
122
+ z-index: ${_zIndexes.Z_INDEXES.hover};
123
123
  color: ${_styles.COLORS.primary_800};
124
124
  background-color: ${_styles.COLORS.primary_20};
125
125
  box-shadow: none;
126
126
  }
127
127
  & > a:active {
128
+ z-index: ${_zIndexes.Z_INDEXES.active};
128
129
  color: ${_styles.COLORS.primary_700};
129
130
  background-color: ${_styles.COLORS.primary_100};
130
131
  box-shadow: none;
131
132
  }
132
-
133
133
  & > a.active {
134
+ z-index: ${_zIndexes.Z_INDEXES.active};
134
135
  color: ${_styles.COLORS.neutral_800};
135
136
  background-color: ${_styles.COLORS.neutral_20};
136
137
  cursor: default;
@@ -146,22 +147,36 @@
146
147
  }
147
148
  `;
148
149
  const Dots = (0, _styledComponents2.default)(Item)`
149
- padding-top: 1%;
150
150
  cursor: not-allowed;
151
+ &:after{
152
+ ${(0, _typography.ComponentMStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.neutral_600)}
153
+ content: '...';
154
+ }
151
155
  `;
152
156
  const ItemContent = (0, _styledComponents2.default)('div')`
153
- width: 100%;
154
157
  text-align:center;
155
- display: table-cell;
156
- vertical-align:middle;
157
- `;
158
- const ItemSelected = (0, _styledComponents2.default)('div')`
158
+ display: flex;
159
159
  justify-content: center;
160
- margin: 0 20%;
161
- border-radius: 4px;
162
- text-align: center;
163
- height: 4px;
164
- background-color: ${_styles.COLORS.primary_500}
160
+ align-items: center;
161
+ position: relative;
162
+ width: 100%;
163
+ height: 100%;
164
+
165
+ &.active:after{
166
+ content: '';
167
+ position: absolute;
168
+ bottom: 4px;
169
+ width: 32px;
170
+ border-radius: 4px;
171
+ height: 4px;
172
+ background-color: ${_styles.COLORS.primary_500}
173
+ }
174
+ &.active:hover:after{
175
+ background-color: ${_styles.COLORS.primary_700}
176
+ }
177
+ &.active:active:after{
178
+ background-color: ${_styles.COLORS.primary_800}
179
+ }
165
180
  `;
166
181
 
167
182
  const Step = ({
@@ -170,30 +185,22 @@
170
185
  disabled = false,
171
186
  page,
172
187
  onPageChange,
173
- testId
188
+ id
174
189
  }) => {
175
- if (disabled) return /*#__PURE__*/React.createElement(Item, {
176
- style: {
177
- cursor: 'not-allowed'
178
- },
179
- "data-testid": `${testId}_Disabled`
180
- }, up ? /*#__PURE__*/React.createElement(_SystemIcons.ChevronRight, {
181
- size: "20",
182
- color: _styles.COLORS.neutral_300
183
- }) : /*#__PURE__*/React.createElement(_SystemIcons.ChevronLeft, {
184
- size: "20",
185
- color: _styles.COLORS.neutral_300
186
- }));
187
- return /*#__PURE__*/React.createElement(Item, {
188
- "data-testid": `${testId}_Enabled`
189
- }, /*#__PURE__*/React.createElement(_reactRouterDom.NavLink, {
190
- to: target,
191
- onClick: () => {
192
- if (onPageChange) onPageChange(page);
193
- }
194
- }, up ? /*#__PURE__*/React.createElement(_SystemIcons.ChevronRight, {
195
- size: "20"
196
- }) : /*#__PURE__*/React.createElement(_SystemIcons.ChevronLeft, null)));
190
+ const history = (0, _reactRouter.useHistory)();
191
+
192
+ const handleButtonClick = () => {
193
+ history.push(target);
194
+ onPageChange && onPageChange(page);
195
+ };
196
+
197
+ return /*#__PURE__*/React.createElement(_Button.IconButton, {
198
+ id: id,
199
+ action: event => handleButtonClick(),
200
+ variant: 'secondary',
201
+ shape: 'circular',
202
+ disabled: disabled
203
+ }, up ? /*#__PURE__*/React.createElement(_SystemIcons.ChevronRight, null) : /*#__PURE__*/React.createElement(_SystemIcons.ChevronLeft, null));
197
204
  };
198
205
 
199
206
  const Paginator = ({
@@ -233,29 +240,31 @@
233
240
  onPageChange: () => {
234
241
  if (onPageChange) onPageChange(currentPage - 1);
235
242
  },
236
- testId: "Test-StepLeft"
243
+ id: "paginator-left"
237
244
  }), pages.findIndex(item => item === 1) === -1 && /*#__PURE__*/React.createElement(Item, null, /*#__PURE__*/React.createElement(_reactRouterDom.NavLink, {
238
245
  to: `${baseUrl}/1`,
239
246
  onClick: () => {
240
247
  if (onPageChange) onPageChange(1);
241
248
  }
242
- }, /*#__PURE__*/React.createElement(ItemContent, null, /*#__PURE__*/React.createElement("span", null, "1"), currentPage === 1 && /*#__PURE__*/React.createElement(ItemSelected, null)))), currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && /*#__PURE__*/React.createElement(Dots, null, /*#__PURE__*/React.createElement(_SystemIcons.MoreHorizontal, {
243
- color: _styles.COLORS.neutral_600
244
- })), pages.map(page => /*#__PURE__*/React.createElement(Item, {
249
+ }, /*#__PURE__*/React.createElement(ItemContent, {
250
+ className: currentPage === 1 ? 'active' : ''
251
+ }, /*#__PURE__*/React.createElement("span", null, "1")))), currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && /*#__PURE__*/React.createElement(Dots, null), pages.map(page => /*#__PURE__*/React.createElement(Item, {
245
252
  key: page
246
253
  }, /*#__PURE__*/React.createElement(_reactRouterDom.NavLink, {
247
254
  to: `${baseUrl}/${page}`,
248
255
  onClick: () => {
249
256
  if (onPageChange) onPageChange(page);
250
257
  }
251
- }, /*#__PURE__*/React.createElement(ItemContent, null, /*#__PURE__*/React.createElement("span", null, page), currentPage === page && /*#__PURE__*/React.createElement(ItemSelected, null))))), pageCount > 5 && currentPage <= pageCount - 3 && /*#__PURE__*/React.createElement(Dots, null, /*#__PURE__*/React.createElement(_SystemIcons.MoreHorizontal, {
252
- color: _styles.COLORS.neutral_600
253
- })), pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && /*#__PURE__*/React.createElement(Item, null, /*#__PURE__*/React.createElement(_reactRouterDom.NavLink, {
258
+ }, /*#__PURE__*/React.createElement(ItemContent, {
259
+ className: currentPage === page ? 'active' : ''
260
+ }, /*#__PURE__*/React.createElement("span", null, page))))), pageCount > 5 && currentPage <= pageCount - 3 && /*#__PURE__*/React.createElement(Dots, null), pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && /*#__PURE__*/React.createElement(Item, null, /*#__PURE__*/React.createElement(_reactRouterDom.NavLink, {
254
261
  to: `${baseUrl}/${pageCount}`,
255
262
  onClick: () => {
256
263
  if (onPageChange) onPageChange(pageCount);
257
264
  }
258
- }, /*#__PURE__*/React.createElement(ItemContent, null, /*#__PURE__*/React.createElement("span", null, pageCount), currentPage === pageCount && /*#__PURE__*/React.createElement(ItemSelected, null)))), /*#__PURE__*/React.createElement(Step, {
265
+ }, /*#__PURE__*/React.createElement(ItemContent, {
266
+ className: currentPage === pageCount ? 'active' : ''
267
+ }, /*#__PURE__*/React.createElement("span", null, pageCount)))), /*#__PURE__*/React.createElement(Step, {
259
268
  up: true,
260
269
  target: `${baseUrl}/${currentPage + 1}`,
261
270
  page: currentPage + 1,
@@ -263,7 +272,7 @@
263
272
  onPageChange: () => {
264
273
  if (onPageChange) onPageChange(currentPage + 1);
265
274
  },
266
- testId: "Test-StepRight"
275
+ id: "paginator-right"
267
276
  })));
268
277
  };
269
278
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Paginator/Paginator.tsx"],"names":["Container","styled","nav","BREAKPOINTS","MEDIUM","Items","ul","Item","li","ComponentMStyling","ComponentTextStyle","COLORS","primary_800","primary_20","primary_700","primary_100","neutral_800","neutral_20","Dots","ItemContent","ItemSelected","primary_500","pageCount","currentPage","baseUrl","onPageChange","Step","up","target","disabled","testId","cursor","neutral_300","Paginator","pages","from","to","i","item","neutral_600","page"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {NavLink} from 'react-router-dom';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\nimport {ChevronLeft, ChevronRight, MoreHorizontal} from '../icons/systemicons/SystemIcons';\nimport {ComponentMStyling} from '../styles/typography';\n\nconst Container = styled.nav`\n margin: 20px 0;\n display: flex;\n justify-content: center;\n\n ${BREAKPOINTS.MEDIUM} {\n width: 75%;\n }\n`;\n\nconst Items = styled.ul`\n margin: 0;\n padding: 0;\n list-style: none;\n display: flex;\n`;\n\nconst Item = styled.li`\n width: 48px;\n height: 45px;\n display: flex;\n align-items: center;\n justify-content: center;\n\n & > * {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n text-decoration: none;\n border-bottom: 3px solid transparent;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n &:focus,\n &:focus-within {\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2e7fa1;\n outline-width: 0;\n }\n }\n\n & > a:hover {\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_20};\n box-shadow: none;\n }\n & > a:active {\n color: ${COLORS.primary_700};\n background-color: ${COLORS.primary_100};\n box-shadow: none;\n }\n\n & > a.active {\n color: ${COLORS.neutral_800};\n background-color: ${COLORS.neutral_20};\n cursor: default;\n box-shadow: none;\n &:hover {\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_20};\n }\n &:active {\n color: ${COLORS.primary_700};\n background-color: ${COLORS.primary_100};\n }\n }\n`;\n\nconst Dots = styled(Item)`\n padding-top: 1%;\n cursor: not-allowed;\n`;\n\nconst ItemContent = styled('div')`\n width: 100%;\n text-align:center;\n display: table-cell;\n vertical-align:middle;\n`\nconst ItemSelected = styled('div')`\n justify-content: center;\n margin: 0 20%;\n border-radius: 4px;\n text-align: center;\n height: 4px;\n background-color: ${COLORS.primary_500}\n`\n\ntype PaginatorProps = {\n pageCount: number;\n currentPage: number;\n baseUrl: string;\n onPageChange?: (page: number) => void;\n};\n\nconst Step = ({\n up = true,\n target = '',\n disabled = false,\n page,\n onPageChange,\n testId,\n}: {\n up: boolean;\n target: string;\n disabled: boolean;\n page: number;\n onPageChange?: (page: number) => void;\n testId?: string;\n}) => {\n if (disabled)\n return (\n <Item style={{ cursor: 'not-allowed' }} data-testid={`${testId}_Disabled`}>\n {up ? <ChevronRight size=\"20\" color={COLORS.neutral_300} /> : <ChevronLeft size=\"20\" color={COLORS.neutral_300} />}\n </Item>\n );\n return (\n <Item data-testid={`${testId}_Enabled`}>\n <NavLink\n to={target}\n onClick={() => {\n if (onPageChange) onPageChange(page);\n }}>\n {up ? <ChevronRight size=\"20\" /> : <ChevronLeft />}\n </NavLink>\n </Item>\n );\n};\n\nconst Paginator = ({ pageCount = 1, currentPage = 1, baseUrl = '', onPageChange }: PaginatorProps) => {\n const pages = [];\n let from = 2;\n let to = 4;\n if (pageCount === 0) return null;\n\n if (pageCount > 1) {\n if (currentPage >= 4 && currentPage <= pageCount - 2) {\n from = currentPage - 1;\n to = currentPage + 1;\n } else if (pageCount - 2 > 1 && currentPage > pageCount - 2) {\n from = pageCount - 3;\n to = pageCount - 1;\n }\n if (to > pageCount) {\n to = pageCount;\n }\n for (let i = from; i <= to; i += 1) {\n pages.push(i);\n }\n }\n\n return (\n <Container>\n <Items>\n <Step\n up={false}\n target={`${baseUrl}/${currentPage - 1}`}\n page={currentPage - 1}\n disabled={currentPage === 1}\n onPageChange={() => {\n if (onPageChange) onPageChange(currentPage - 1);\n }}\n testId=\"Test-StepLeft\"\n />\n {pages.findIndex(item => item === 1) === -1 && (\n <Item>\n <NavLink\n to={`${baseUrl}/1`}\n onClick={() => {\n if (onPageChange) onPageChange(1);\n }}>\n <ItemContent>\n <span>1</span>\n {currentPage === 1 && <ItemSelected />}\n </ItemContent>\n </NavLink>\n </Item>\n )}\n {currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && (\n <Dots>\n <MoreHorizontal color={COLORS.neutral_600} />\n </Dots>\n )}\n {pages.map(page => (\n <Item key={page}>\n <NavLink\n to={`${baseUrl}/${page}`}\n onClick={() => {\n if (onPageChange) onPageChange(page);\n }}>\n <ItemContent>\n <span>{page}</span>\n {currentPage === page && <ItemSelected />}\n </ItemContent>\n </NavLink>\n </Item>\n ))}\n {pageCount > 5 && currentPage <= pageCount - 3 && (\n <Dots>\n <MoreHorizontal color={COLORS.neutral_600} />\n </Dots>\n )}\n {pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && (\n <Item>\n <NavLink\n to={`${baseUrl}/${pageCount}`}\n onClick={() => {\n if (onPageChange) onPageChange(pageCount);\n }}>\n <ItemContent>\n <span>{pageCount}</span>\n {currentPage === pageCount && <ItemSelected />}\n </ItemContent>\n </NavLink>\n </Item>\n )}\n <Step\n up\n target={`${baseUrl}/${currentPage + 1}`}\n page={currentPage + 1}\n disabled={currentPage === pageCount}\n onPageChange={() => {\n if (onPageChange) onPageChange(currentPage + 1);\n }}\n testId=\"Test-StepRight\"\n />\n </Items>\n </Container>\n );\n};\n\nexport default Paginator;\n"],"file":"Paginator.js"}
1
+ {"version":3,"sources":["../../../src/Paginator/Paginator.tsx"],"names":["Container","styled","nav","BREAKPOINTS","MEDIUM","Items","ul","Item","li","ComponentMStyling","ComponentTextStyle","COLORS","Z_INDEXES","focus","hover","primary_800","primary_20","active","primary_700","primary_100","neutral_800","neutral_20","Dots","ItemContent","primary_500","pageCount","currentPage","baseUrl","onPageChange","Step","up","target","disabled","id","history","handleButtonClick","event","Paginator","pages","from","to","i","item","page"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {NavLink} from 'react-router-dom';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\nimport {ChevronLeft, ChevronRight} from '../icons/systemicons/SystemIcons';\nimport {ComponentMStyling} from '../styles/typography';\nimport {Z_INDEXES} from '../styles/z-indexes';\nimport {useHistory} from 'react-router';\nimport {IconButton} from '../Button';\n\nconst Container = styled.nav`\n margin: 20px 0;\n display: flex;\n justify-content: center;\n\n ${BREAKPOINTS.MEDIUM} {\n width: 75%;\n }\n`;\n\nconst Items = styled.ul`\n margin: 0;\n padding: 0;\n list-style: none;\n display: flex;\n`;\n\nconst Item = styled.li`\n width: 48px;\n height: 48px;\n display: flex;\n align-items: center;\n justify-content: center;\n\n & > * {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n text-decoration: none;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n &:focus,\n &:focus-within {\n z-index: ${Z_INDEXES.focus};\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2e7fa1;\n outline-width: 0;\n }\n }\n & > a:hover {\n z-index: ${Z_INDEXES.hover};\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_20};\n box-shadow: none;\n }\n & > a:active {\n z-index: ${Z_INDEXES.active};\n color: ${COLORS.primary_700};\n background-color: ${COLORS.primary_100};\n box-shadow: none;\n }\n & > a.active {\n z-index: ${Z_INDEXES.active};\n color: ${COLORS.neutral_800};\n background-color: ${COLORS.neutral_20};\n cursor: default;\n box-shadow: none;\n &:hover {\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_20};\n }\n &:active {\n color: ${COLORS.primary_700};\n background-color: ${COLORS.primary_100};\n }\n }\n`;\n\nconst Dots = styled(Item)`\n cursor: not-allowed;\n &:after{\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n content: '...';\n }\n`;\n\nconst ItemContent = styled('div')`\n text-align:center;\n display: flex;\n justify-content: center;\n align-items: center;\n position: relative;\n width: 100%;\n height: 100%;\n \n &.active:after{\n content: '';\n position: absolute;\n bottom: 4px;\n width: 32px;\n border-radius: 4px;\n height: 4px;\n background-color: ${COLORS.primary_500}\n }\n &.active:hover:after{\n background-color: ${COLORS.primary_700}\n }\n &.active:active:after{\n background-color: ${COLORS.primary_800}\n }\n`\n\ntype PaginatorProps = {\n pageCount: number;\n currentPage: number;\n baseUrl: string;\n onPageChange?: (page: number) => void;\n};\n\nconst Step = ({\n up = true,\n target = '',\n disabled = false,\n page,\n onPageChange,\n id,\n}: {\n up: boolean;\n target: string;\n disabled: boolean;\n page: number;\n onPageChange?: (page: number) => void;\n id?: string;\n}) => {\n const history = useHistory();\n\n const handleButtonClick = () => {\n history.push(target);\n onPageChange && onPageChange(page);\n }\n\n return (\n <IconButton id={id}\n action={event => handleButtonClick()}\n variant={'secondary'}\n shape={'circular'}\n disabled={disabled}>\n {up ? <ChevronRight/> : <ChevronLeft/>}\n </IconButton>\n )\n};\n\nconst Paginator = ({ pageCount = 1, currentPage = 1, baseUrl = '', onPageChange }: PaginatorProps) => {\n const pages = [];\n let from = 2;\n let to = 4;\n if (pageCount === 0) return null;\n\n if (pageCount > 1) {\n if (currentPage >= 4 && currentPage <= pageCount - 2) {\n from = currentPage - 1;\n to = currentPage + 1;\n } else if (pageCount - 2 > 1 && currentPage > pageCount - 2) {\n from = pageCount - 3;\n to = pageCount - 1;\n }\n if (to > pageCount) {\n to = pageCount;\n }\n for (let i = from; i <= to; i += 1) {\n pages.push(i);\n }\n }\n\n return (\n <Container>\n <Items>\n <Step up={false}\n target={`${baseUrl}/${currentPage - 1}`}\n page={currentPage - 1}\n disabled={currentPage === 1}\n onPageChange={() => {\n if (onPageChange) onPageChange(currentPage - 1);\n }}\n id=\"paginator-left\"/>\n {pages.findIndex(item => item === 1) === -1 && (\n <Item>\n <NavLink\n to={`${baseUrl}/1`}\n onClick={() => {\n if (onPageChange) onPageChange(1);\n }}>\n <ItemContent className={currentPage === 1 ? 'active' : ''}>\n <span>1</span>\n </ItemContent>\n </NavLink>\n </Item>\n )}\n {currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && (\n <Dots/>\n )}\n {pages.map(page => (\n <Item key={page}>\n <NavLink\n to={`${baseUrl}/${page}`}\n onClick={() => {\n if (onPageChange) onPageChange(page);\n }}>\n <ItemContent className={currentPage === page ? 'active' : ''}>\n <span>{page}</span>\n </ItemContent>\n </NavLink>\n </Item>\n ))}\n {pageCount > 5 && currentPage <= pageCount - 3 && (\n <Dots/>\n )}\n {pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && (\n <Item>\n <NavLink\n to={`${baseUrl}/${pageCount}`}\n onClick={() => {\n if (onPageChange) onPageChange(pageCount);\n }}>\n <ItemContent className={currentPage === pageCount ? 'active' : ''}>\n <span>{pageCount}</span>\n </ItemContent>\n </NavLink>\n </Item>\n )}\n <Step up\n target={`${baseUrl}/${currentPage + 1}`}\n page={currentPage + 1}\n disabled={currentPage === pageCount}\n onPageChange={() => {\n if (onPageChange) onPageChange(currentPage + 1);\n }}\n id=\"paginator-right\"/>\n </Items>\n </Container>\n );\n};\n\nexport default Paginator;\n"],"file":"Paginator.js"}
@@ -86,7 +86,7 @@
86
86
  history.push(route);
87
87
  const {
88
88
  queryByText,
89
- getByTestId
89
+ container
90
90
  } = (0, _react3.render)( /*#__PURE__*/_react2.default.createElement(_reactRouter.Router, {
91
91
  history: history
92
92
  }, /*#__PURE__*/_react2.default.createElement(_index.Paginator, {
@@ -96,11 +96,11 @@
96
96
  onPageChange: () => {}
97
97
  })));
98
98
  expect(queryByText('1')).toBeDefined();
99
- expect(getByTestId('Test-StepLeft_Disabled')).toBeDefined();
100
- expect(getByTestId('Test-StepRight_Enabled')).toBeDefined();
99
+ expect(container.querySelector('#paginator-left')).toBeDefined();
100
+ expect(container.querySelector('#paginator-right')).toBeDefined();
101
101
  expect(queryByText('6')).toBeDefined(); // Click on stepper to the right. Expect to be taken from 1 to 2
102
102
 
103
- getByTestId('Test-StepRight_Enabled').children[0].click();
103
+ container.querySelector('#paginator-right')?.click();
104
104
  expect(history.location.pathname).toBe('/2'); // Click directly on 6. Expect to be taken to /6
105
105
 
106
106
  queryByText('6')?.click();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/Paginator/__tests__/Paginator.test.tsx"],"names":["jest","useLocation","pathname","describe","it","history","route","getByTestId","render","expect","queryByText"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOAA,EAAAA,IAAI,CAAJA,IAAAA,CAAAA,kBAAAA,EAA8B,MAAA,aAAA,CAAA,aAAA,CAAA,EAAA,EACzBA,IAAI,CAAJA,aAAAA,CADyB,kBACzBA,CADyB,CAAA,EAAA,EAAA,EAAA;AAE5BC,IAAAA,WAAW,EAAE,OAAO;AAClBC,MAAAA,QAAQ,EAAE;AADQ,KAAP;AAFe,GAAA,CAA9BF;AAOAG,EAAAA,QAAQ,CAAA,eAAA,EAAkB,MAAM;AAC9BC,IAAAA,EAAE,CAAA,mBAAA,EAAsB,YAAY;AAClC,YAAMC,OAAO,GAAb,mCAAA;AACA,YAAMC,KAAK,GAAX,IAAA;AACAD,MAAAA,OAAO,CAAPA,IAAAA,CAAAA,KAAAA;AACA,YAAM;AAAA,QAAA,WAAA;AAAeE,QAAAA;AAAf,UAA+BC,qBAAM,aACzC,gBAAA,aAAA,CAAA,mBAAA,EAAA;AAAQ,QAAA,OAAO,EAAEH;AAAjB,OAAA,EAAA,aACE,gBAAA,aAAA,CAAA,gBAAA,EAAA;AAAW,QAAA,SAAS,EAApB,CAAA;AAAyB,QAAA,WAAW,EAApC,CAAA;AAAyC,QAAA,OAAO,EAAhD,EAAA;AAAoD,QAAA,YAAY,EAAE,MAAM,CAAE;AAA1E,OAAA,CADF,CADmCG,CAArC;AAKAC,MAAAA,MAAM,CAACC,WAAW,CAAlBD,GAAkB,CAAZ,CAANA,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACF,WAAW,CAAlBE,wBAAkB,CAAZ,CAANA,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACF,WAAW,CAAlBE,wBAAkB,CAAZ,CAANA,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAlBD,GAAkB,CAAZ,CAANA,CAZkC,WAYlCA,GAZkC,CAclC;;AACCF,MAAAA,WAAW,CAAXA,wBAAW,CAAXA,CAAAA,QAAAA,CAAD,CAACA,EAAD,KAACA;AACDE,MAAAA,MAAM,CAACJ,OAAO,CAAPA,QAAAA,CAAPI,QAAM,CAANA,CAAAA,IAAAA,CAhBkC,IAgBlCA,EAhBkC,CAkBlC;;AACAC,MAAAA,WAAW,CAAXA,GAAW,CAAXA,EAAAA,KAAAA;AACAD,MAAAA,MAAM,CAACJ,OAAO,CAAPA,QAAAA,CAAPI,QAAM,CAANA,CAAAA,IAAAA,CAAAA,IAAAA;AApBFL,KAAE,CAAFA;AADFD,GAAQ,CAARA","sourcesContent":["import React, { useState } from 'react';\nimport { render } from '@testing-library/react';\nimport { Paginator } from '../index';\nimport { Router } from 'react-router';\nimport { createMemoryHistory } from 'history';\nimport 'jest-styled-components';\n\njest.mock('react-router-dom', () => ({\n ...jest.requireActual('react-router-dom'),\n useLocation: () => ({\n pathname: 'localhost:3000/test',\n }),\n}));\n\ndescribe('<Paginator />', () => {\n it('Renders Paginator', async () => {\n const history = createMemoryHistory();\n const route = '/1';\n history.push(route);\n const { queryByText, getByTestId } = render(\n <Router history={history}>\n <Paginator pageCount={6} currentPage={1} baseUrl=\"\" onPageChange={() => {}} />\n </Router>,\n );\n expect(queryByText('1')).toBeDefined();\n expect(getByTestId('Test-StepLeft_Disabled')).toBeDefined();\n expect(getByTestId('Test-StepRight_Enabled')).toBeDefined();\n expect(queryByText('6')).toBeDefined();\n\n // Click on stepper to the right. Expect to be taken from 1 to 2\n (getByTestId('Test-StepRight_Enabled').children[0] as HTMLElement).click();\n expect(history.location.pathname).toBe('/2');\n\n // Click directly on 6. Expect to be taken to /6\n queryByText('6')?.click();\n expect(history.location.pathname).toBe('/6');\n });\n});\n"],"file":"Paginator.test.js"}
1
+ {"version":3,"sources":["../../../../src/Paginator/__tests__/Paginator.test.tsx"],"names":["jest","useLocation","pathname","describe","it","history","route","container","render","expect","queryByText"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOAA,EAAAA,IAAI,CAAJA,IAAAA,CAAAA,kBAAAA,EAA8B,MAAA,aAAA,CAAA,aAAA,CAAA,EAAA,EACzBA,IAAI,CAAJA,aAAAA,CADyB,kBACzBA,CADyB,CAAA,EAAA,EAAA,EAAA;AAE5BC,IAAAA,WAAW,EAAE,OAAO;AAClBC,MAAAA,QAAQ,EAAE;AADQ,KAAP;AAFe,GAAA,CAA9BF;AAOAG,EAAAA,QAAQ,CAAA,eAAA,EAAkB,MAAM;AAC9BC,IAAAA,EAAE,CAAA,mBAAA,EAAsB,YAAY;AAClC,YAAMC,OAAO,GAAb,mCAAA;AACA,YAAMC,KAAK,GAAX,IAAA;AACAD,MAAAA,OAAO,CAAPA,IAAAA,CAAAA,KAAAA;AACA,YAAM;AAAA,QAAA,WAAA;AAAeE,QAAAA;AAAf,UAA6BC,qBAAM,aACvC,gBAAA,aAAA,CAAA,mBAAA,EAAA;AAAQ,QAAA,OAAO,EAAEH;AAAjB,OAAA,EAAA,aACE,gBAAA,aAAA,CAAA,gBAAA,EAAA;AAAW,QAAA,SAAS,EAApB,CAAA;AAAyB,QAAA,WAAW,EAApC,CAAA;AAAyC,QAAA,OAAO,EAAhD,EAAA;AAAoD,QAAA,YAAY,EAAE,MAAM,CAAE;AAA1E,OAAA,CADF,CADiCG,CAAnC;AAMAC,MAAAA,MAAM,CAACC,WAAW,CAAlBD,GAAkB,CAAZ,CAANA,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACF,SAAS,CAATA,aAAAA,CAAPE,iBAAOF,CAAD,CAANE,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACF,SAAS,CAATA,aAAAA,CAAPE,kBAAOF,CAAD,CAANE,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAlBD,GAAkB,CAAZ,CAANA,CAbkC,WAalCA,GAbkC,CAelC;;AACCF,MAAAA,SAAS,CAATA,aAAAA,CAAD,kBAACA,GAAD,KAACA;AACDE,MAAAA,MAAM,CAACJ,OAAO,CAAPA,QAAAA,CAAPI,QAAM,CAANA,CAAAA,IAAAA,CAjBkC,IAiBlCA,EAjBkC,CAmBlC;;AACAC,MAAAA,WAAW,CAAXA,GAAW,CAAXA,EAAAA,KAAAA;AACAD,MAAAA,MAAM,CAACJ,OAAO,CAAPA,QAAAA,CAAPI,QAAM,CAANA,CAAAA,IAAAA,CAAAA,IAAAA;AArBFL,KAAE,CAAFA;AADFD,GAAQ,CAARA","sourcesContent":["import React, { useState } from 'react';\nimport { render } from '@testing-library/react';\nimport { Paginator } from '../index';\nimport { Router } from 'react-router';\nimport { createMemoryHistory } from 'history';\nimport 'jest-styled-components';\n\njest.mock('react-router-dom', () => ({\n ...jest.requireActual('react-router-dom'),\n useLocation: () => ({\n pathname: 'localhost:3000/test',\n }),\n}));\n\ndescribe('<Paginator />', () => {\n it('Renders Paginator', async () => {\n const history = createMemoryHistory();\n const route = '/1';\n history.push(route);\n const { queryByText, container } = render(\n <Router history={history}>\n <Paginator pageCount={6} currentPage={1} baseUrl=\"\" onPageChange={() => {}} />\n </Router>,\n );\n\n expect(queryByText('1')).toBeDefined();\n expect(container.querySelector('#paginator-left')).toBeDefined();\n expect(container.querySelector('#paginator-right')).toBeDefined();\n expect(queryByText('6')).toBeDefined();\n\n // Click on stepper to the right. Expect to be taken from 1 to 2\n (container.querySelector('#paginator-right') as HTMLElement)?.click();\n expect(history.location.pathname).toBe('/2');\n\n // Click directly on 6. Expect to be taken to /6\n queryByText('6')?.click();\n expect(history.location.pathname).toBe('/6');\n });\n});\n"],"file":"Paginator.test.js"}
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "prop-types", "react", "styled-components", "../styles", "../Button", "../icons/systemicons/SystemIcons", "../GlobalNavigationBar/mobile/CommonStyles", "./SwitcherMenuItem", "../styles/typography"], factory);
3
+ define(["exports", "prop-types", "react", "styled-components", "../styles", "../Button", "../icons/systemicons/SystemIcons", "../GlobalNavigationBar/mobile/CommonStyles", "./SwitcherMenuItem", "../styles/typography", "../styles/z-indexes"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../styles"), require("../Button"), require("../icons/systemicons/SystemIcons"), require("../GlobalNavigationBar/mobile/CommonStyles"), require("./SwitcherMenuItem"), require("../styles/typography"));
5
+ factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../styles"), require("../Button"), require("../icons/systemicons/SystemIcons"), require("../GlobalNavigationBar/mobile/CommonStyles"), require("./SwitcherMenuItem"), require("../styles/typography"), require("../styles/z-indexes"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.styles, global.Button, global.SystemIcons, global.CommonStyles, global.SwitcherMenuItem, global.typography);
10
+ factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.styles, global.Button, global.SystemIcons, global.CommonStyles, global.SwitcherMenuItem, global.typography, global.zIndexes);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _propTypes, _react, _styledComponents, _styles, _Button, _SystemIcons, _CommonStyles, _SwitcherMenuItem, _typography) {
13
+ })(this, function (exports, _propTypes, _react, _styledComponents, _styles, _Button, _SystemIcons, _CommonStyles, _SwitcherMenuItem, _typography, _zIndexes) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -91,7 +91,7 @@
91
91
  animation: ${_CommonStyles.flowDown} 0.2s ease-in-out;
92
92
  position: absolute;
93
93
  border-radius: 4px;
94
- z-index: 100;
94
+ z-index: ${_zIndexes.Z_INDEXES.off_canvas};
95
95
  height: 100%;
96
96
  width: 320px;
97
97
  padding-inline-start: 0;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Switcher/MobileSwitcherMenu.tsx"],"names":["Menu","styled","ul","COLORS","white","flowDown","BREAKPOINTS","SMALL","scrollBarStyling","MenuSection","li","MenuSectionList","UserMenuSectionListStyling","Top","div","neutral_600","ComponentSStyling","ComponentTextStyle","LabelLine","span","neutral_20","header","elementsHeader","clickMenuAction","elements","MobileSwitcherMenu","React","e","document","element","icon"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, scrollBarStyling} from '../styles';\n\nimport {UserMenuItem} from '../types';\nimport {IconButton} from '../Button';\nimport {ArrowLineLeft, Close} from '../icons/systemicons/SystemIcons';\nimport {flowDown, Right, UserMenuSectionListStyling} from '../GlobalNavigationBar/mobile/CommonStyles';\nimport SwitcherMenuItem from './SwitcherMenuItem';\nimport {ComponentSStyling} from '../styles/typography';\n\nconst Menu = styled.ul`\n list-style: none;\n margin: 0;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n -webkit-animation: ${flowDown} 0.2s ease-in-out;\n animation: ${flowDown} 0.2s ease-in-out;\n position: absolute;\n border-radius: 4px;\n z-index: 100;\n height: 100%;\n width: 320px;\n padding-inline-start: 0;\n overflow-y: scroll;\n ${BREAKPOINTS.SMALL} {\n min-width: 360px;\n }\n\n .open & {\n display: flex;\n flex-direction: column;\n }\n\n ${scrollBarStyling};\n`;\n\nconst MenuSection = styled.li`\n padding: 8px 0;\n position: relative;\n\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nconst MenuSectionList = styled.ul`\n list-style: none;\n margin: 0;\n overflow-y: unset !important;\n padding-inline-start: 0;\n\n ${UserMenuSectionListStyling}\n`;\n\nconst Top = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 22px 12px 0 12px;\n color: ${COLORS.neutral_600};\n\n h3 {\n margin-block-start: 0 !important;\n margin-block-end: 0 !important;\n margin-inline-start: 0px;\n margin-inline-end: 0px;\n margin-left: 24px;\n\n ${ComponentSStyling(ComponentTextStyle.Regular, 'inherit')}\n }\n`;\n\nconst LabelLine = styled.span`\n height: 32px;\n background-color: ${COLORS.neutral_20};\n padding-left: 24px;\n display: flex;\n line-height: 32px;\n`;\n\ninterface Props {\n header: string;\n elementsHeader: string;\n clickMenuAction: () => void;\n elements?: UserMenuItem[];\n}\n\nconst MobileSwitcherMenu = ({ header, elementsHeader, clickMenuAction, elements }: Props) => {\n React.useEffect(() => {\n function handleKeyPress(e: any) {\n if (e.keyCode === 27) {\n clickMenuAction();\n }\n }\n\n document.addEventListener('keydown', handleKeyPress, false);\n return () => {\n document.removeEventListener('keydown', handleKeyPress, false);\n };\n }, [clickMenuAction]);\n\n return (\n <Menu onClick={() => {}} role=\"menu\" aria-labelledby=\"UserMenuButton\">\n <Top>\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <ArrowLineLeft size=\"24px\" color={COLORS.neutral_600} />\n </IconButton>\n <h3>{header}</h3>\n <Right>\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <Close size=\"24px\" />\n </IconButton>\n </Right>\n </Top>\n {elements && elements?.length > 0 && (\n <MenuSection>\n <LabelLine>{elementsHeader}</LabelLine>\n <MenuSectionList>\n {elements?.map((element) => (\n <SwitcherMenuItem url={element?.to} label={element?.label} Icon={element.icon} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n </Menu>\n );\n};\n\nexport default MobileSwitcherMenu;\n"],"file":"MobileSwitcherMenu.js"}
1
+ {"version":3,"sources":["../../../src/Switcher/MobileSwitcherMenu.tsx"],"names":["Menu","styled","ul","COLORS","white","flowDown","Z_INDEXES","off_canvas","BREAKPOINTS","SMALL","scrollBarStyling","MenuSection","li","MenuSectionList","UserMenuSectionListStyling","Top","div","neutral_600","ComponentSStyling","ComponentTextStyle","LabelLine","span","neutral_20","header","elementsHeader","clickMenuAction","elements","MobileSwitcherMenu","React","e","document","element","icon"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, scrollBarStyling} from '../styles';\n\nimport {UserMenuItem} from '../types';\nimport {IconButton} from '../Button';\nimport {ArrowLineLeft, Close} from '../icons/systemicons/SystemIcons';\nimport {flowDown, Right, UserMenuSectionListStyling} from '../GlobalNavigationBar/mobile/CommonStyles';\nimport SwitcherMenuItem from './SwitcherMenuItem';\nimport {ComponentSStyling} from '../styles/typography';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\nconst Menu = styled.ul`\n list-style: none;\n margin: 0;\n background-color: ${COLORS.white};\n box-sizing: border-box;\n display: none;\n -webkit-animation: ${flowDown} 0.2s ease-in-out;\n animation: ${flowDown} 0.2s ease-in-out;\n position: absolute;\n border-radius: 4px;\n z-index: ${Z_INDEXES.off_canvas};\n height: 100%;\n width: 320px;\n padding-inline-start: 0;\n overflow-y: scroll;\n ${BREAKPOINTS.SMALL} {\n min-width: 360px;\n }\n\n .open & {\n display: flex;\n flex-direction: column;\n }\n\n ${scrollBarStyling};\n`;\n\nconst MenuSection = styled.li`\n padding: 8px 0;\n position: relative;\n\n .disabled-link {\n color: #21212150;\n pointer-events: none;\n key-events: none;\n }\n`;\n\nconst MenuSectionList = styled.ul`\n list-style: none;\n margin: 0;\n overflow-y: unset !important;\n padding-inline-start: 0;\n\n ${UserMenuSectionListStyling}\n`;\n\nconst Top = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 22px 12px 0 12px;\n color: ${COLORS.neutral_600};\n\n h3 {\n margin-block-start: 0 !important;\n margin-block-end: 0 !important;\n margin-inline-start: 0px;\n margin-inline-end: 0px;\n margin-left: 24px;\n\n ${ComponentSStyling(ComponentTextStyle.Regular, 'inherit')}\n }\n`;\n\nconst LabelLine = styled.span`\n height: 32px;\n background-color: ${COLORS.neutral_20};\n padding-left: 24px;\n display: flex;\n line-height: 32px;\n`;\n\ninterface Props {\n header: string;\n elementsHeader: string;\n clickMenuAction: () => void;\n elements?: UserMenuItem[];\n}\n\nconst MobileSwitcherMenu = ({ header, elementsHeader, clickMenuAction, elements }: Props) => {\n React.useEffect(() => {\n function handleKeyPress(e: any) {\n if (e.keyCode === 27) {\n clickMenuAction();\n }\n }\n\n document.addEventListener('keydown', handleKeyPress, false);\n return () => {\n document.removeEventListener('keydown', handleKeyPress, false);\n };\n }, [clickMenuAction]);\n\n return (\n <Menu onClick={() => {}} role=\"menu\" aria-labelledby=\"UserMenuButton\">\n <Top>\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <ArrowLineLeft size=\"24px\" color={COLORS.neutral_600} />\n </IconButton>\n <h3>{header}</h3>\n <Right>\n <IconButton variant=\"secondary\" shape=\"circular\" action={clickMenuAction} isInMobileMenu={true}>\n <Close size=\"24px\" />\n </IconButton>\n </Right>\n </Top>\n {elements && elements?.length > 0 && (\n <MenuSection>\n <LabelLine>{elementsHeader}</LabelLine>\n <MenuSectionList>\n {elements?.map((element) => (\n <SwitcherMenuItem url={element?.to} label={element?.label} Icon={element.icon} />\n ))}\n </MenuSectionList>\n </MenuSection>\n )}\n </Menu>\n );\n};\n\nexport default MobileSwitcherMenu;\n"],"file":"MobileSwitcherMenu.js"}
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "react", "styled-components", "../styles", "../styles/typography"], factory);
3
+ define(["exports", "react", "styled-components", "../styles", "../styles/typography", "../styles/z-indexes"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("react"), require("styled-components"), require("../styles"), require("../styles/typography"));
5
+ factory(exports, require("react"), require("styled-components"), require("../styles"), require("../styles/typography"), require("../styles/z-indexes"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.react, global.styledComponents, global.styles, global.typography);
10
+ factory(mod.exports, global.react, global.styledComponents, global.styles, global.typography, global.zIndexes);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _react, _styledComponents, _styles, _typography) {
13
+ })(this, function (exports, _react, _styledComponents, _styles, _typography, _zIndexes) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -107,6 +107,7 @@
107
107
  }
108
108
 
109
109
  &.active:not(.disabled) {
110
+ z-index: ${_zIndexes.Z_INDEXES.active};
110
111
  font-weight: bold;
111
112
  color: ${_styles.COLORS.neutral_800};
112
113
 
@@ -125,6 +126,7 @@
125
126
  }
126
127
 
127
128
  &:hover:not(.disabled) {
129
+ z-index: ${_zIndexes.Z_INDEXES.hover};
128
130
  color: ${_styles.COLORS.primary_600};
129
131
  background-color: ${_styles.COLORS.primary_20};
130
132
 
@@ -134,6 +136,7 @@
134
136
  }
135
137
 
136
138
  &:active:not(.disabled) {
139
+ z-index: ${_zIndexes.Z_INDEXES.active};
137
140
  color: ${_styles.COLORS.primary_800};
138
141
  background-color: ${_styles.COLORS.primary_100};
139
142
  box-shadow: none;
@@ -148,6 +151,7 @@
148
151
  }
149
152
 
150
153
  &:focus:not(.disabled) {
154
+ z-index: ${_zIndexes.Z_INDEXES.focus};
151
155
  box-shadow: 0px 0px 8px ${_styles.COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);
152
156
  outline: none;
153
157
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Switcher/SwitcherMenuItem.tsx"],"names":["StyledSwitcherItem","styled","div","ComponentMStyling","ComponentTextStyle","COLORS","neutral_800","primary_500","neutral_300","neutral_100","primary_600","primary_20","primary_800","primary_100","A","a","SwitcherMenuItem","as","testId","window","url","disabled","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,QAAMA,kBAAkB,GAAGC,2BAAOC,GAAI;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,mCAAkBC,2BAAD,OAAjBD,EAA8CE,eAA7B,WAAjBF,CAAkE;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAaE,eAAOC,WAAY;AAChC;AACA;AACA,0BAA0BD,eAAOE,WAAY;AAC7C;AACA;AACA;AACA,cAAcF,eAAOC,WAAY;AACjC;AACA;AACA;AACA;AACA,aAAaD,eAAOG,WAAY;AAChC,wBAAwBH,eAAOI,WAAY;AAC3C;AACA;AACA;AACA,aAAaJ,eAAOK,WAAY;AAChC,wBAAwBL,eAAOM,UAAW;AAC1C;AACA;AACA,cAAcN,eAAOK,WAAY;AACjC;AACA;AACA;AACA;AACA,aAAaL,eAAOO,WAAY;AAChC,wBAAwBP,eAAOQ,WAAY;AAC3C;AACA;AACA;AACA,0BAA0BR,eAAOE,WAAY;AAC7C;AACA;AACA;AACA,cAAcF,eAAOO,WAAY;AACjC;AACA;AACA;AACA;AACA,8BAA8BP,eAAOE,WAAY;AACjD;AACA;AAzEA,CAAA;AA4EA,QAAMO,CAAC,GAAGb,2BAAOc,CAAjB,EAAA;;AAEA,QAAMC,gBAAgB,GAAG,CAAC;AAAA,IAAA,KAAA;AAAA,IAAA,GAAA;AAAA,IAAA,QAAA;AAAA,IAAA,IAAA;AAA8BC,IAAAA,EAAE,GAAhC,CAAA;AAAsCC,IAAAA;AAAtC,GAAD,KAAA,aACvB,KAAA,CAAA,aAAA,CAAA,kBAAA,EAAA;AACE,IAAA,OAAO,EAAE,MAAOC,MAAM,CAANA,QAAAA,CAAAA,IAAAA,GAAuBC,GAAG,IAD5C,EAAA;AAEE,IAAA,EAAE,EAFJ,EAAA;AAGE,IAAA,IAAI,EAAEA,GAAG,IAHX,EAAA;AAIE,IAAA,MAAM,EAJR,SAAA;AAKE,IAAA,GAAG,EALL,KAAA;AAME,IAAA,SAAS,EAAEC,QAAQ,GAAA,UAAA,GANrB,EAAA;AAOE,mBAAaH;AAPf,GAAA,EAQGI,IAAI,IAAA,aAAI,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAM,IAAA,IAAI,EAAV,MAAA;AAAkB,IAAA,KAAK,EAAC;AAAxB,GAAA,CARX,EADF,KACE,CADF;;oBAcA,gB","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport {SwitcherNavItem} from '../types';\nimport {ComponentMStyling} from '../styles/typography';\n\nconst StyledSwitcherItem = styled.div`\n padding: 16px 25px;\n margin: 0 2px;\n\n display: flex;\n align-items: center;\n text-align: center;\n position: relative;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n text-decoration: none;\n\n svg {\n margin-right: 16px;\n }\n\n &:after {\n content: '';\n display: block;\n position: absolute;\n left: 4px;\n top: 4px;\n bottom: 4px;\n width: 4px;\n background-color: transparent;\n border-radius: 2px;\n }\n\n &.active:not(.disabled) {\n font-weight: bold;\n color: ${COLORS.neutral_800};\n\n &:after {\n background-color: ${COLORS.primary_500};\n }\n\n svg path {\n fill: ${COLORS.neutral_800};\n }\n }\n\n &.disabled {\n color: ${COLORS.neutral_300};\n background-color: ${COLORS.neutral_100};\n }\n\n &:hover:not(.disabled) {\n color: ${COLORS.primary_600};\n background-color: ${COLORS.primary_20};\n\n svg path {\n fill: ${COLORS.primary_600};\n }\n }\n\n &:active:not(.disabled) {\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_100};\n box-shadow: none;\n\n &:after {\n background-color: ${COLORS.primary_500};\n }\n\n svg path {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:focus:not(.disabled) {\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n outline: none;\n }\n`;\n\nconst A = styled.a``;\n\nconst SwitcherMenuItem = ({ label, url, disabled, Icon, as = A, testId }: SwitcherNavItem) => (\n <StyledSwitcherItem\n onClick={() => (window.location.href = url || '')}\n as={as}\n href={url || ''}\n target=\"_parent\"\n key={label}\n className={disabled ? 'disabled' : ''}\n data-testid={testId}>\n {Icon && <Icon size=\"22px\" color=\"#666666\" />}\n {label}\n </StyledSwitcherItem>\n);\n\nexport default SwitcherMenuItem;\n"],"file":"SwitcherMenuItem.js"}
1
+ {"version":3,"sources":["../../../src/Switcher/SwitcherMenuItem.tsx"],"names":["StyledSwitcherItem","styled","div","ComponentMStyling","ComponentTextStyle","COLORS","Z_INDEXES","active","neutral_800","primary_500","neutral_300","neutral_100","hover","primary_600","primary_20","primary_800","primary_100","focus","A","a","SwitcherMenuItem","as","testId","window","url","disabled","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,QAAMA,kBAAkB,GAAGC,2BAAOC,GAAI;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,mCAAkBC,2BAAD,OAAjBD,EAA8CE,eAA7B,WAAjBF,CAAkE;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAeG,oBAAUC,MAAO;AAChC;AACA,aAAaF,eAAOG,WAAY;AAChC;AACA;AACA,0BAA0BH,eAAOI,WAAY;AAC7C;AACA;AACA;AACA,cAAcJ,eAAOG,WAAY;AACjC;AACA;AACA;AACA;AACA,aAAaH,eAAOK,WAAY;AAChC,wBAAwBL,eAAOM,WAAY;AAC3C;AACA;AACA;AACA,eAAeL,oBAAUM,KAAM;AAC/B,aAAaP,eAAOQ,WAAY;AAChC,wBAAwBR,eAAOS,UAAW;AAC1C;AACA;AACA,cAAcT,eAAOQ,WAAY;AACjC;AACA;AACA;AACA;AACA,eAAeP,oBAAUC,MAAO;AAChC,aAAaF,eAAOU,WAAY;AAChC,wBAAwBV,eAAOW,WAAY;AAC3C;AACA;AACA;AACA,0BAA0BX,eAAOI,WAAY;AAC7C;AACA;AACA;AACA,cAAcJ,eAAOU,WAAY;AACjC;AACA;AACA;AACA;AACA,eAAeT,oBAAUW,KAAM;AAC/B,8BAA8BZ,eAAOI,WAAY;AACjD;AACA;AA7EA,CAAA;AAgFA,QAAMS,CAAC,GAAGjB,2BAAOkB,CAAjB,EAAA;;AAEA,QAAMC,gBAAgB,GAAG,CAAC;AAAA,IAAA,KAAA;AAAA,IAAA,GAAA;AAAA,IAAA,QAAA;AAAA,IAAA,IAAA;AAA8BC,IAAAA,EAAE,GAAhC,CAAA;AAAsCC,IAAAA;AAAtC,GAAD,KAAA,aACvB,KAAA,CAAA,aAAA,CAAA,kBAAA,EAAA;AACE,IAAA,OAAO,EAAE,MAAOC,MAAM,CAANA,QAAAA,CAAAA,IAAAA,GAAuBC,GAAG,IAD5C,EAAA;AAEE,IAAA,EAAE,EAFJ,EAAA;AAGE,IAAA,IAAI,EAAEA,GAAG,IAHX,EAAA;AAIE,IAAA,MAAM,EAJR,SAAA;AAKE,IAAA,GAAG,EALL,KAAA;AAME,IAAA,SAAS,EAAEC,QAAQ,GAAA,UAAA,GANrB,EAAA;AAOE,mBAAaH;AAPf,GAAA,EAQGI,IAAI,IAAA,aAAI,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAM,IAAA,IAAI,EAAV,MAAA;AAAkB,IAAA,KAAK,EAAC;AAAxB,GAAA,CARX,EADF,KACE,CADF;;oBAcA,gB","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport {SwitcherNavItem} from '../types';\nimport {ComponentMStyling} from '../styles/typography';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\nconst StyledSwitcherItem = styled.div`\n padding: 16px 25px;\n margin: 0 2px;\n\n display: flex;\n align-items: center;\n text-align: center;\n position: relative;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n\n text-decoration: none;\n\n svg {\n margin-right: 16px;\n }\n\n &:after {\n content: '';\n display: block;\n position: absolute;\n left: 4px;\n top: 4px;\n bottom: 4px;\n width: 4px;\n background-color: transparent;\n border-radius: 2px;\n }\n\n &.active:not(.disabled) {\n z-index: ${Z_INDEXES.active};\n font-weight: bold;\n color: ${COLORS.neutral_800};\n\n &:after {\n background-color: ${COLORS.primary_500};\n }\n\n svg path {\n fill: ${COLORS.neutral_800};\n }\n }\n\n &.disabled {\n color: ${COLORS.neutral_300};\n background-color: ${COLORS.neutral_100};\n }\n\n &:hover:not(.disabled) {\n z-index: ${Z_INDEXES.hover};\n color: ${COLORS.primary_600};\n background-color: ${COLORS.primary_20};\n\n svg path {\n fill: ${COLORS.primary_600};\n }\n }\n\n &:active:not(.disabled) {\n z-index: ${Z_INDEXES.active};\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_100};\n box-shadow: none;\n\n &:after {\n background-color: ${COLORS.primary_500};\n }\n\n svg path {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:focus:not(.disabled) {\n z-index: ${Z_INDEXES.focus};\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n outline: none;\n }\n`;\n\nconst A = styled.a``;\n\nconst SwitcherMenuItem = ({ label, url, disabled, Icon, as = A, testId }: SwitcherNavItem) => (\n <StyledSwitcherItem\n onClick={() => (window.location.href = url || '')}\n as={as}\n href={url || ''}\n target=\"_parent\"\n key={label}\n className={disabled ? 'disabled' : ''}\n data-testid={testId}>\n {Icon && <Icon size=\"22px\" color=\"#666666\" />}\n {label}\n </StyledSwitcherItem>\n);\n\nexport default SwitcherMenuItem;\n"],"file":"SwitcherMenuItem.js"}
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "prop-types", "react", "../types", "../styles", "styled-components", "../styles/typography"], factory);
3
+ define(["exports", "prop-types", "react", "../types", "../styles", "styled-components", "../styles/typography", "../styles/z-indexes"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("prop-types"), require("react"), require("../types"), require("../styles"), require("styled-components"), require("../styles/typography"));
5
+ factory(exports, require("prop-types"), require("react"), require("../types"), require("../styles"), require("styled-components"), require("../styles/typography"), require("../styles/z-indexes"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.propTypes, global.react, global.types, global.styles, global.styledComponents, global.typography);
10
+ factory(mod.exports, global.propTypes, global.react, global.types, global.styles, global.styledComponents, global.typography, global.zIndexes);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _propTypes, _react, _types, _styles, _styledComponents, _typography) {
13
+ })(this, function (exports, _propTypes, _react, _types, _styles, _styledComponents, _typography, _zIndexes) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -100,8 +100,7 @@
100
100
  const TabSideFill = _styledComponents2.default.div`
101
101
  position: absolute;
102
102
  border-bottom: 1px solid ${_styles.COLORS.neutral_100};
103
- height: Calc(100% - 1px);
104
- z-index: 1;
103
+ bottom: 0;
105
104
  width: 100%;
106
105
 
107
106
  &.fill {
@@ -112,7 +111,6 @@
112
111
  color: ${_styles.COLORS.neutral_800};
113
112
  border: none;
114
113
  background-color: transparent;
115
- z-index: 2;
116
114
  cursor: pointer;
117
115
  padding: 0px;
118
116
 
@@ -130,6 +128,7 @@
130
128
  }
131
129
 
132
130
  &:hover {
131
+ z-index: ${_zIndexes.Z_INDEXES.hover};
133
132
  div {
134
133
  background: ${_styles.COLORS.primary_20};
135
134
  color: ${_styles.COLORS.primary_700};
@@ -142,8 +141,14 @@
142
141
  }
143
142
  }
144
143
  }
144
+ &.selected{
145
+ z-index: ${_zIndexes.Z_INDEXES.active};
146
+ }
145
147
 
146
148
  &:focus {
149
+ z-index: ${_zIndexes.Z_INDEXES.focus};
150
+ outline: none;
151
+
147
152
  div {
148
153
  color: ${_styles.COLORS.primary_800};
149
154
  box-shadow: 0px 4px 12px ${_styles.COLORS.focus_25}, 0px 0px 8px ${_styles.COLORS.focus} !important;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Tabs/HorizontalTabs.tsx"],"names":["HorizontalTabContainer","styled","div","TabSideFill","COLORS","neutral_100","white","TabButton","button","neutral_800","neutral_300","primary_20","primary_700","primary_800","focus_25","focus","primary_500","primary_100","Size","XSmall","ComponentXSStyling","ComponentTextStyle","Small","ComponentSStyling","Medium","ComponentMStyling","Large","ComponentLStyling","tabs","sideFill","fullWidth","onTabChange","value","selected","to","disabled","HorizontalTabs","doTabChange","document","tab","index","width","length","size"],"mappings":"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","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\nimport { Size } from '../types';\n\n/**\n * Import custom styles.\n */\nimport {COLORS, ComponentTextStyle} from '../styles';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXSStyling} from '../styles/typography';\n\n// Add custom styles\nconst HorizontalTabContainer = styled.div`\n width: 100%;\n display: flex;\n position: relative;\n flex-direction: row;\n`;\n\nconst TabSideFill = styled.div`\n position: absolute;\n border-bottom: 1px solid ${COLORS.neutral_100};\n height: Calc(100% - 1px);\n z-index: 1;\n width: 100%;\n\n &.fill {\n background: ${COLORS.white};\n }\n`;\n\nconst TabButton = styled.button`\n color: ${COLORS.neutral_800};\n border: none;\n background-color: transparent;\n z-index: 2;\n cursor: pointer;\n padding: 0px;\n\n &.disabled {\n &:hover, &:focus {\n cursor: not-allowed;\n \n div {\n color: ${COLORS.neutral_300};\n box-shadow: none !important;\n background-color: transparent;\n color: ${COLORS.neutral_300};\n }\n }\n }\n\n &:hover {\n div {\n background: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_700};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n }\n \n &:focus {\n div {\n color: ${COLORS.primary_800};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n\n &.selected {\n border-top: 2px solid ${COLORS.primary_800};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n }\n\n div {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n &:hover {\n background: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_700};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n \n &.selected {\n background-color: ${COLORS.white};\n border-top: 2px solid ${COLORS.primary_500};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n \n &:focus {\n color: ${COLORS.primary_800};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_800};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n \n &:active {\n background: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_800};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n \n &.disabled {\n color: ${COLORS.neutral_300};\n cursor: not-allowed;\n box-shadow: none !important;\n \n &:hover, &:focus {\n background-color: transparent;\n color: ${COLORS.neutral_300};\n }\n }\n\n &.size-${Size.XSmall} {\n ${ComponentXSStyling(ComponentTextStyle.Regular, null)}\n padding: 0px 16px;\n height: 32px;\n margin-top: 16px;\n }\n\n &.size-${Size.Small} {\n ${ComponentSStyling(ComponentTextStyle.Regular, null)}\n padding: 0px 16px;\n height: 40px;\n margin-top: 8px;\n }\n\n &.size-${Size.Medium} {\n ${ComponentMStyling(ComponentTextStyle.Regular, null)}\n height: 48px;\n min-width: 96px;\n padding: 0px 16px;\n }\n\n &.size-${Size.Large} {\n ${ComponentLStyling(ComponentTextStyle.Regular, null)}\n height: 56px;\n min-width: 144px;\n padding: 0px 16px;\n }\n }\n`;\n\n// Add component-specific types\ninterface HorizontalTabProps {\n size: Size;\n tabs: HorizontalTab[];\n sideFill?: boolean;\n fullWidth?: boolean;\n onTabChange: (to: string) => void;\n}\n\ninterface HorizontalTab {\n value: string;\n selected: boolean;\n to: string;\n disabled?: boolean;\n}\n\nconst HorizontalTabs = ({ size, tabs, sideFill, fullWidth, onTabChange }: HorizontalTabProps) => {\n /**\n * Informs parent component of tab change and clears focus.\n * @param to - A link to which user should be navigated.\n */\n const doTabChange = (to: string): void => {\n // Let's inform parent component\n onTabChange(to);\n\n // Let's clear focus\n if (document.activeElement instanceof HTMLElement) {\n document.activeElement!.blur();\n }\n };\n\n return (\n <HorizontalTabContainer>\n <TabSideFill className={`${sideFill ? 'fill' : ''}`} />\n {tabs.map((tab: HorizontalTab, index: number) => (\n <TabButton\n key={`${tab}_${index}`}\n style={fullWidth ? { width: `${100 / tabs.length}%` } : {}}\n className={`size-${size} ${tab.selected ? 'selected' : ''} ${tab.disabled ? 'disabled' : ''}`}\n onClick={() => !tab.disabled && doTabChange(tab.to)}>\n <div className={`size-${size} ${tab.selected ? 'selected' : ''} ${tab.disabled ? 'disabled' : ''}`}>\n {tab.value}\n </div>\n </TabButton>\n ))}\n </HorizontalTabContainer>\n );\n};\n\nexport default HorizontalTabs;\n"],"file":"HorizontalTabs.js"}
1
+ {"version":3,"sources":["../../../src/Tabs/HorizontalTabs.tsx"],"names":["HorizontalTabContainer","styled","div","TabSideFill","COLORS","neutral_100","white","TabButton","button","neutral_800","neutral_300","Z_INDEXES","hover","primary_20","primary_700","active","focus","primary_800","focus_25","primary_500","primary_100","Size","XSmall","ComponentXSStyling","ComponentTextStyle","Small","ComponentSStyling","Medium","ComponentMStyling","Large","ComponentLStyling","tabs","sideFill","fullWidth","onTabChange","value","selected","to","disabled","HorizontalTabs","doTabChange","document","tab","index","width","length","size"],"mappings":"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","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\nimport { Size } from '../types';\n\n/**\n * Import custom styles.\n */\nimport {COLORS, ComponentTextStyle} from '../styles';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXSStyling} from '../styles/typography';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\n// Add custom styles\nconst HorizontalTabContainer = styled.div`\n width: 100%;\n display: flex;\n position: relative;\n flex-direction: row;\n`;\n\nconst TabSideFill = styled.div`\n position: absolute;\n border-bottom: 1px solid ${COLORS.neutral_100};\n bottom: 0;\n width: 100%;\n\n &.fill {\n background: ${COLORS.white};\n }\n`;\n\nconst TabButton = styled.button`\n color: ${COLORS.neutral_800};\n border: none;\n background-color: transparent;\n cursor: pointer;\n padding: 0px;\n\n &.disabled {\n &:hover, &:focus {\n cursor: not-allowed;\n \n div {\n color: ${COLORS.neutral_300};\n box-shadow: none !important;\n background-color: transparent;\n color: ${COLORS.neutral_300};\n }\n }\n }\n\n &:hover {\n z-index: ${Z_INDEXES.hover};\n div {\n background: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_700};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n }\n &.selected{\n z-index: ${Z_INDEXES.active};\n }\n \n &:focus {\n z-index: ${Z_INDEXES.focus};\n outline: none;\n \n div {\n color: ${COLORS.primary_800};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n\n &.selected {\n border-top: 2px solid ${COLORS.primary_800};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n }\n\n div {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n &:hover {\n background: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_700};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n \n &.selected {\n background-color: ${COLORS.white};\n border-top: 2px solid ${COLORS.primary_500};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n \n &:focus {\n color: ${COLORS.primary_800};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_800};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n \n &:active {\n background: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n outline: none;\n \n &.selected {\n border-top: 2px solid ${COLORS.primary_800};\n border-bottom: 0px;\n border-left: 1px solid ${COLORS.neutral_100};\n border-right: 1px solid ${COLORS.neutral_100};\n }\n }\n \n &.disabled {\n color: ${COLORS.neutral_300};\n cursor: not-allowed;\n box-shadow: none !important;\n \n &:hover, &:focus {\n background-color: transparent;\n color: ${COLORS.neutral_300};\n }\n }\n\n &.size-${Size.XSmall} {\n ${ComponentXSStyling(ComponentTextStyle.Regular, null)}\n padding: 0px 16px;\n height: 32px;\n margin-top: 16px;\n }\n\n &.size-${Size.Small} {\n ${ComponentSStyling(ComponentTextStyle.Regular, null)}\n padding: 0px 16px;\n height: 40px;\n margin-top: 8px;\n }\n\n &.size-${Size.Medium} {\n ${ComponentMStyling(ComponentTextStyle.Regular, null)}\n height: 48px;\n min-width: 96px;\n padding: 0px 16px;\n }\n\n &.size-${Size.Large} {\n ${ComponentLStyling(ComponentTextStyle.Regular, null)}\n height: 56px;\n min-width: 144px;\n padding: 0px 16px;\n }\n }\n`;\n\n// Add component-specific types\ninterface HorizontalTabProps {\n size: Size;\n tabs: HorizontalTab[];\n sideFill?: boolean;\n fullWidth?: boolean;\n onTabChange: (to: string) => void;\n}\n\ninterface HorizontalTab {\n value: string;\n selected: boolean;\n to: string;\n disabled?: boolean;\n}\n\nconst HorizontalTabs = ({ size, tabs, sideFill, fullWidth, onTabChange }: HorizontalTabProps) => {\n /**\n * Informs parent component of tab change and clears focus.\n * @param to - A link to which user should be navigated.\n */\n const doTabChange = (to: string): void => {\n // Let's inform parent component\n onTabChange(to);\n\n // Let's clear focus\n if (document.activeElement instanceof HTMLElement) {\n document.activeElement!.blur();\n }\n };\n\n return (\n <HorizontalTabContainer>\n <TabSideFill className={`${sideFill ? 'fill' : ''}`} />\n {tabs.map((tab: HorizontalTab, index: number) => (\n <TabButton\n key={`${tab}_${index}`}\n style={fullWidth ? { width: `${100 / tabs.length}%` } : {}}\n className={`size-${size} ${tab.selected ? 'selected' : ''} ${tab.disabled ? 'disabled' : ''}`}\n onClick={() => !tab.disabled && doTabChange(tab.to)}>\n <div className={`size-${size} ${tab.selected ? 'selected' : ''} ${tab.disabled ? 'disabled' : ''}`}>\n {tab.value}\n </div>\n </TabButton>\n ))}\n </HorizontalTabContainer>\n );\n};\n\nexport default HorizontalTabs;\n"],"file":"HorizontalTabs.js"}