@laerdal/life-react-components 1.2.2-dev.11.full → 1.2.2-dev.12

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 (203) hide show
  1. package/dist/esm/Banners/Banner.js +0 -1
  2. package/dist/esm/Banners/Banner.js.map +1 -1
  3. package/dist/esm/Button/BackButton.js +4 -4
  4. package/dist/esm/Button/BackButton.js.map +1 -1
  5. package/dist/esm/Button/__tests__/BackButton.test.js +4 -3
  6. package/dist/esm/Button/__tests__/BackButton.test.js.map +1 -1
  7. package/dist/esm/Chips/ActionChip.js +3 -2
  8. package/dist/esm/Chips/ActionChip.js.map +1 -1
  9. package/dist/esm/Chips/ChipInput.js +2 -1
  10. package/dist/esm/Chips/ChipInput.js.map +1 -1
  11. package/dist/esm/Chips/FilterChip.js +3 -2
  12. package/dist/esm/Chips/FilterChip.js.map +1 -1
  13. package/dist/esm/Chips/InputChip.js +3 -2
  14. package/dist/esm/Chips/InputChip.js.map +1 -1
  15. package/dist/esm/Dropdown/BasicDropdown.js +2 -3
  16. package/dist/esm/Dropdown/BasicDropdown.js.map +1 -1
  17. package/dist/esm/Dropdown/ChipDropdownInput.js +3 -2
  18. package/dist/esm/Dropdown/ChipDropdownInput.js.map +1 -1
  19. package/dist/esm/Dropdown/DropdownFilter.js +3 -4
  20. package/dist/esm/Dropdown/DropdownFilter.js.map +1 -1
  21. package/dist/esm/GlobalNavigationBar/ExtendedMainMenu.js +2 -1
  22. package/dist/esm/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  23. package/dist/esm/InputFields/Label.js +1 -2
  24. package/dist/esm/InputFields/Label.js.map +1 -1
  25. package/dist/esm/InputFields/PasswordField.js +0 -1
  26. package/dist/esm/InputFields/PasswordField.js.map +1 -1
  27. package/dist/esm/InputFields/QuickSearch.js +2 -2
  28. package/dist/esm/InputFields/QuickSearch.js.map +1 -1
  29. package/dist/esm/InputFields/ResponsiveComponentWrapper.js +2 -2
  30. package/dist/esm/InputFields/ResponsiveComponentWrapper.js.map +1 -1
  31. package/dist/esm/InputFields/SearchBar.js +0 -1
  32. package/dist/esm/InputFields/SearchBar.js.map +1 -1
  33. package/dist/esm/InputFields/TextField.js +0 -1
  34. package/dist/esm/InputFields/TextField.js.map +1 -1
  35. package/dist/esm/InputFields/Textarea.js +1 -2
  36. package/dist/esm/InputFields/Textarea.js.map +1 -1
  37. package/dist/esm/InputFields/__tests__/QuickSearch.test.js +2 -1
  38. package/dist/esm/InputFields/__tests__/QuickSearch.test.js.map +1 -1
  39. package/dist/esm/InputFields/components/SearchBarInput.js +0 -1
  40. package/dist/esm/InputFields/components/SearchBarInput.js.map +1 -1
  41. package/dist/esm/LoadingIndicator/LoadingIndicator.js +4 -4
  42. package/dist/esm/LoadingIndicator/LoadingIndicator.js.map +1 -1
  43. package/dist/esm/NotificationDot/NotificationDot.js +9 -9
  44. package/dist/esm/NotificationDot/NotificationDot.js.map +1 -1
  45. package/dist/esm/NotificationDot/__tests__/NotificationDot.test.js +3 -2
  46. package/dist/esm/NotificationDot/__tests__/NotificationDot.test.js.map +1 -1
  47. package/dist/esm/Table/Table.js +1 -1
  48. package/dist/esm/Table/Table.js.map +1 -1
  49. package/dist/esm/Tabs/HorizontalTabs.js +5 -5
  50. package/dist/esm/Tabs/HorizontalTabs.js.map +1 -1
  51. package/dist/esm/Tabs/TabLink.js +2 -2
  52. package/dist/esm/Tabs/TabLink.js.map +1 -1
  53. package/dist/esm/Tabs/Tabs.js +14 -14
  54. package/dist/esm/Tabs/Tabs.js.map +1 -1
  55. package/dist/esm/Tabs/VerticalTabs.js +2 -2
  56. package/dist/esm/Tabs/VerticalTabs.js.map +1 -1
  57. package/dist/esm/styles/typography.js +9 -8
  58. package/dist/esm/styles/typography.js.map +1 -1
  59. package/dist/esm/types.js +1 -0
  60. package/dist/esm/types.js.map +1 -1
  61. package/dist/js/Banners/Banner.d.ts +2 -1
  62. package/dist/js/Banners/Banner.js +0 -1
  63. package/dist/js/Banners/Banner.js.map +1 -1
  64. package/dist/js/Button/BackButton.d.ts +2 -1
  65. package/dist/js/Button/BackButton.js +5 -4
  66. package/dist/js/Button/BackButton.js.map +1 -1
  67. package/dist/js/Button/__tests__/BackButton.test.js +5 -3
  68. package/dist/js/Button/__tests__/BackButton.test.js.map +1 -1
  69. package/dist/js/Chips/ActionChip.js +4 -2
  70. package/dist/js/Chips/ActionChip.js.map +1 -1
  71. package/dist/js/Chips/ChipInput.js +3 -1
  72. package/dist/js/Chips/ChipInput.js.map +1 -1
  73. package/dist/js/Chips/ChipTypes.d.ts +3 -3
  74. package/dist/js/Chips/FilterChip.js +4 -2
  75. package/dist/js/Chips/FilterChip.js.map +1 -1
  76. package/dist/js/Chips/InputChip.js +4 -2
  77. package/dist/js/Chips/InputChip.js.map +1 -1
  78. package/dist/js/Dropdown/BasicDropdown.d.ts +2 -1
  79. package/dist/js/Dropdown/BasicDropdown.js +2 -3
  80. package/dist/js/Dropdown/BasicDropdown.js.map +1 -1
  81. package/dist/js/Dropdown/ChipDropdownInput.d.ts +0 -3
  82. package/dist/js/Dropdown/ChipDropdownInput.js +4 -2
  83. package/dist/js/Dropdown/ChipDropdownInput.js.map +1 -1
  84. package/dist/js/Dropdown/DropdownFilter.d.ts +2 -1
  85. package/dist/js/Dropdown/DropdownFilter.js +3 -4
  86. package/dist/js/Dropdown/DropdownFilter.js.map +1 -1
  87. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js +3 -1
  88. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  89. package/dist/js/InputFields/Label.d.ts +2 -1
  90. package/dist/js/InputFields/Label.js +0 -1
  91. package/dist/js/InputFields/Label.js.map +1 -1
  92. package/dist/js/InputFields/PasswordField.d.ts +2 -1
  93. package/dist/js/InputFields/PasswordField.js +0 -1
  94. package/dist/js/InputFields/PasswordField.js.map +1 -1
  95. package/dist/js/InputFields/QuickSearch.d.ts +2 -1
  96. package/dist/js/InputFields/QuickSearch.js +3 -2
  97. package/dist/js/InputFields/QuickSearch.js.map +1 -1
  98. package/dist/js/InputFields/ResponsiveComponentWrapper.d.ts +2 -1
  99. package/dist/js/InputFields/ResponsiveComponentWrapper.js +3 -2
  100. package/dist/js/InputFields/ResponsiveComponentWrapper.js.map +1 -1
  101. package/dist/js/InputFields/SearchBar.d.ts +2 -1
  102. package/dist/js/InputFields/SearchBar.js +0 -1
  103. package/dist/js/InputFields/SearchBar.js.map +1 -1
  104. package/dist/js/InputFields/TextField.d.ts +2 -1
  105. package/dist/js/InputFields/TextField.js +0 -1
  106. package/dist/js/InputFields/TextField.js.map +1 -1
  107. package/dist/js/InputFields/Textarea.d.ts +2 -1
  108. package/dist/js/InputFields/Textarea.js +0 -1
  109. package/dist/js/InputFields/Textarea.js.map +1 -1
  110. package/dist/js/InputFields/__tests__/QuickSearch.test.js +3 -1
  111. package/dist/js/InputFields/__tests__/QuickSearch.test.js.map +1 -1
  112. package/dist/js/InputFields/components/SearchBarInput.d.ts +2 -1
  113. package/dist/js/InputFields/components/SearchBarInput.js +0 -1
  114. package/dist/js/InputFields/components/SearchBarInput.js.map +1 -1
  115. package/dist/js/LoadingIndicator/LoadingIndicator.d.ts +2 -1
  116. package/dist/js/LoadingIndicator/LoadingIndicator.js +5 -4
  117. package/dist/js/LoadingIndicator/LoadingIndicator.js.map +1 -1
  118. package/dist/js/NotificationDot/NotificationDot.d.ts +2 -1
  119. package/dist/js/NotificationDot/NotificationDot.js +10 -9
  120. package/dist/js/NotificationDot/NotificationDot.js.map +1 -1
  121. package/dist/js/NotificationDot/__tests__/NotificationDot.test.js +4 -2
  122. package/dist/js/NotificationDot/__tests__/NotificationDot.test.js.map +1 -1
  123. package/dist/js/Table/Table.js +1 -1
  124. package/dist/js/Table/Table.js.map +1 -1
  125. package/dist/js/Tabs/HorizontalTabs.d.ts +2 -2
  126. package/dist/js/Tabs/HorizontalTabs.js +3 -2
  127. package/dist/js/Tabs/HorizontalTabs.js.map +1 -1
  128. package/dist/js/Tabs/TabLink.d.ts +2 -1
  129. package/dist/js/Tabs/TabLink.js +3 -2
  130. package/dist/js/Tabs/TabLink.js.map +1 -1
  131. package/dist/js/Tabs/Tabs.d.ts +2 -1
  132. package/dist/js/Tabs/Tabs.js +15 -14
  133. package/dist/js/Tabs/Tabs.js.map +1 -1
  134. package/dist/js/Tabs/VerticalTabs.d.ts +2 -1
  135. package/dist/js/Tabs/VerticalTabs.js +3 -2
  136. package/dist/js/Tabs/VerticalTabs.js.map +1 -1
  137. package/dist/js/styles/typography.d.ts +2 -1
  138. package/dist/js/styles/typography.js +10 -8
  139. package/dist/js/styles/typography.js.map +1 -1
  140. package/dist/js/types.d.ts +1 -0
  141. package/dist/js/types.js +1 -0
  142. package/dist/js/types.js.map +1 -1
  143. package/dist/umd/Banners/Banner.js +0 -1
  144. package/dist/umd/Banners/Banner.js.map +1 -1
  145. package/dist/umd/Button/BackButton.js +7 -8
  146. package/dist/umd/Button/BackButton.js.map +1 -1
  147. package/dist/umd/Button/__tests__/BackButton.test.js +7 -7
  148. package/dist/umd/Button/__tests__/BackButton.test.js.map +1 -1
  149. package/dist/umd/Chips/ActionChip.js +6 -6
  150. package/dist/umd/Chips/ActionChip.js.map +1 -1
  151. package/dist/umd/Chips/ChipInput.js +5 -5
  152. package/dist/umd/Chips/ChipInput.js.map +1 -1
  153. package/dist/umd/Chips/FilterChip.js +6 -6
  154. package/dist/umd/Chips/FilterChip.js.map +1 -1
  155. package/dist/umd/Chips/InputChip.js +6 -6
  156. package/dist/umd/Chips/InputChip.js.map +1 -1
  157. package/dist/umd/Dropdown/BasicDropdown.js +2 -3
  158. package/dist/umd/Dropdown/BasicDropdown.js.map +1 -1
  159. package/dist/umd/Dropdown/ChipDropdownInput.js +6 -6
  160. package/dist/umd/Dropdown/ChipDropdownInput.js.map +1 -1
  161. package/dist/umd/Dropdown/DropdownFilter.js +3 -4
  162. package/dist/umd/Dropdown/DropdownFilter.js.map +1 -1
  163. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js +5 -5
  164. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  165. package/dist/umd/InputFields/Label.js +0 -1
  166. package/dist/umd/InputFields/Label.js.map +1 -1
  167. package/dist/umd/InputFields/PasswordField.js +0 -1
  168. package/dist/umd/InputFields/PasswordField.js.map +1 -1
  169. package/dist/umd/InputFields/QuickSearch.js +5 -6
  170. package/dist/umd/InputFields/QuickSearch.js.map +1 -1
  171. package/dist/umd/InputFields/ResponsiveComponentWrapper.js +5 -6
  172. package/dist/umd/InputFields/ResponsiveComponentWrapper.js.map +1 -1
  173. package/dist/umd/InputFields/SearchBar.js +0 -1
  174. package/dist/umd/InputFields/SearchBar.js.map +1 -1
  175. package/dist/umd/InputFields/TextField.js +0 -1
  176. package/dist/umd/InputFields/TextField.js.map +1 -1
  177. package/dist/umd/InputFields/Textarea.js +0 -1
  178. package/dist/umd/InputFields/Textarea.js.map +1 -1
  179. package/dist/umd/InputFields/__tests__/QuickSearch.test.js +5 -5
  180. package/dist/umd/InputFields/__tests__/QuickSearch.test.js.map +1 -1
  181. package/dist/umd/InputFields/components/SearchBarInput.js +0 -1
  182. package/dist/umd/InputFields/components/SearchBarInput.js.map +1 -1
  183. package/dist/umd/LoadingIndicator/LoadingIndicator.js +7 -8
  184. package/dist/umd/LoadingIndicator/LoadingIndicator.js.map +1 -1
  185. package/dist/umd/NotificationDot/NotificationDot.js +12 -13
  186. package/dist/umd/NotificationDot/NotificationDot.js.map +1 -1
  187. package/dist/umd/NotificationDot/__tests__/NotificationDot.test.js +6 -6
  188. package/dist/umd/NotificationDot/__tests__/NotificationDot.test.js.map +1 -1
  189. package/dist/umd/Table/Table.js +1 -1
  190. package/dist/umd/Table/Table.js.map +1 -1
  191. package/dist/umd/Tabs/HorizontalTabs.js +8 -9
  192. package/dist/umd/Tabs/HorizontalTabs.js.map +1 -1
  193. package/dist/umd/Tabs/TabLink.js +5 -6
  194. package/dist/umd/Tabs/TabLink.js.map +1 -1
  195. package/dist/umd/Tabs/Tabs.js +17 -18
  196. package/dist/umd/Tabs/Tabs.js.map +1 -1
  197. package/dist/umd/Tabs/VerticalTabs.js +5 -6
  198. package/dist/umd/Tabs/VerticalTabs.js.map +1 -1
  199. package/dist/umd/styles/typography.js +12 -12
  200. package/dist/umd/styles/typography.js.map +1 -1
  201. package/dist/umd/types.js +1 -0
  202. package/dist/umd/types.js.map +1 -1
  203. package/package.json +1 -1
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["react", "@testing-library/react", "..", "../../styles/colors", "jest-styled-components"], factory);
3
+ define(["react", "@testing-library/react", "..", "../../types", "../../styles/colors", "jest-styled-components"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(require("react"), require("@testing-library/react"), require(".."), require("../../styles/colors"), require("jest-styled-components"));
5
+ factory(require("react"), require("@testing-library/react"), require(".."), require("../../types"), require("../../styles/colors"), require("jest-styled-components"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(global.react, global.react, global._, global.colors, global.jestStyledComponents);
10
+ factory(global.react, global.react, global._, global.types, global.colors, global.jestStyledComponents);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (_react, _react3, _, _colors) {
13
+ })(this, function (_react, _react3, _, _types, _colors) {
14
14
  "use strict";
15
15
 
16
16
  var _react2 = _interopRequireDefault(_react);
@@ -29,7 +29,7 @@
29
29
  getByTestId
30
30
  } = (0, _react3.render)( /*#__PURE__*/_react2.default.createElement(_.NotificationDot, {
31
31
  variant: "positive",
32
- size: "small",
32
+ size: _types.Size.Small,
33
33
  testId: "testId"
34
34
  }));
35
35
  expect(getByTestId('testId')).toHaveStyleRule('background-color', _colors2.default.correct_500);
@@ -40,7 +40,7 @@
40
40
  getByTestId
41
41
  } = (0, _react3.render)( /*#__PURE__*/_react2.default.createElement(_.NotificationDot, {
42
42
  variant: "critical",
43
- size: "large",
43
+ size: _types.Size.Large,
44
44
  testId: "testId"
45
45
  }));
46
46
  expect(getByTestId('testId')).toHaveStyleRule('background-color', _colors2.default.critical_500);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/NotificationDot/__tests__/NotificationDot.test.tsx"],"names":["describe","it","getByTestId","render","expect","COLORS"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAMAA,EAAAA,QAAQ,CAAA,qBAAA,EAAuB,MAAI;AAC/BC,IAAAA,EAAE,CAAA,yCAAA,EAA4C,YAAY;AACtD,YAAK;AAACC,QAAAA;AAAD,UAAgBC,qBAAM,aACvB,gBAAA,aAAA,CAAA,iBAAA,EAAA;AAAiB,QAAA,OAAO,EAAxB,UAAA;AAAoC,QAAA,IAAI,EAAxC,OAAA;AAAiD,QAAA,MAAM,EAAC;AAAxD,OAAA,CADiBA,CAArB;AAGAC,MAAAA,MAAM,CAACF,WAAW,CAAlBE,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,kBAAAA,EAAiEC,iBAAjED,WAAAA;AACAA,MAAAA,MAAM,CAACF,WAAW,CAAlBE,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,QAAAA,EAAwD,eAAeC,iBAAvED,KAAAA;AALJH,KAAE,CAAFA;AAQAA,IAAAA,EAAE,CAAA,yCAAA,EAA4C,YAAY;AACtD,YAAK;AAACC,QAAAA;AAAD,UAAgBC,qBAAM,aACvB,gBAAA,aAAA,CAAA,iBAAA,EAAA;AAAiB,QAAA,OAAO,EAAxB,UAAA;AAAoC,QAAA,IAAI,EAAxC,OAAA;AAAiD,QAAA,MAAM,EAAC;AAAxD,OAAA,CADiBA,CAArB;AAGAC,MAAAA,MAAM,CAACF,WAAW,CAAlBE,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,kBAAAA,EAAiEC,iBAAjED,YAAAA;AACAA,MAAAA,MAAM,CAACF,WAAW,CAAlBE,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,QAAAA,EAAwD,eAAeC,iBAAvED,KAAAA;AALJH,KAAE,CAAFA;AAQAA,IAAAA,EAAE,CAAA,0CAAA,EAA6C,YAAY;AACvD,YAAK;AAACC,QAAAA;AAAD,UAAgBC,qBAAM,aACvB,gBAAA,aAAA,CAAA,iBAAA,EAAA;AAAiB,QAAA,OAAO,EAAxB,UAAA;AAAoC,QAAA,MAAM,EAAC;AAA3C,OAAA,CADiBA,CAArB;AAGAC,MAAAA,MAAM,CAACF,WAAW,CAAlBE,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,kBAAAA,EAAiEC,iBAAjED,YAAAA;AACAA,MAAAA,MAAM,CAACF,WAAW,CAAlBE,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,QAAAA,EAAwD,eAAeC,iBAAvED,KAAAA;AALJH,KAAE,CAAFA;AAjBJD,GAAQ,CAARA","sourcesContent":["import React from 'react';\nimport { render } from '@testing-library/react';\nimport 'jest-styled-components';\nimport { NotificationDot } from '..';\nimport COLORS from '../../styles/colors';\n\ndescribe('<NotificationDot />',()=>{\n it('renders positive small notification dot', async () => {\n const{getByTestId} = render(\n <NotificationDot variant='positive' size='small' testId='testId'/>\n );\n expect(getByTestId('testId')).toHaveStyleRule('background-color',COLORS.correct_500);\n expect(getByTestId('testId')).toHaveStyleRule('border', '2px solid ' + COLORS.white);\n });\n\n it('renders critical large notification dot', async () => {\n const{getByTestId} = render(\n <NotificationDot variant='critical' size='large' testId='testId'/>\n );\n expect(getByTestId('testId')).toHaveStyleRule('background-color',COLORS.critical_500);\n expect(getByTestId('testId')).toHaveStyleRule('border', '3px solid ' + COLORS.white);\n });\n\n it('renders critical medium notification dot', async () => {\n const{getByTestId} = render(\n <NotificationDot variant='critical' testId='testId'/>\n );\n expect(getByTestId('testId')).toHaveStyleRule('background-color',COLORS.critical_500);\n expect(getByTestId('testId')).toHaveStyleRule('border', '2px solid ' + COLORS.white);\n });\n});"],"file":"NotificationDot.test.js"}
1
+ {"version":3,"sources":["../../../../src/NotificationDot/__tests__/NotificationDot.test.tsx"],"names":["describe","it","getByTestId","render","Size","expect","COLORS"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAOAA,EAAAA,QAAQ,CAAA,qBAAA,EAAuB,MAAI;AAC/BC,IAAAA,EAAE,CAAA,yCAAA,EAA4C,YAAY;AACtD,YAAK;AAACC,QAAAA;AAAD,UAAgBC,qBAAM,aACvB,gBAAA,aAAA,CAAA,iBAAA,EAAA;AAAiB,QAAA,OAAO,EAAxB,UAAA;AAAoC,QAAA,IAAI,EAAEC,YAA1C,KAAA;AAAsD,QAAA,MAAM,EAAC;AAA7D,OAAA,CADiBD,CAArB;AAGAE,MAAAA,MAAM,CAACH,WAAW,CAAlBG,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,kBAAAA,EAAiEC,iBAAjED,WAAAA;AACAA,MAAAA,MAAM,CAACH,WAAW,CAAlBG,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,QAAAA,EAAwD,eAAeC,iBAAvED,KAAAA;AALJJ,KAAE,CAAFA;AAQAA,IAAAA,EAAE,CAAA,yCAAA,EAA4C,YAAY;AACtD,YAAK;AAACC,QAAAA;AAAD,UAAgBC,qBAAM,aACvB,gBAAA,aAAA,CAAA,iBAAA,EAAA;AAAiB,QAAA,OAAO,EAAxB,UAAA;AAAoC,QAAA,IAAI,EAAEC,YAA1C,KAAA;AAAsD,QAAA,MAAM,EAAC;AAA7D,OAAA,CADiBD,CAArB;AAGAE,MAAAA,MAAM,CAACH,WAAW,CAAlBG,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,kBAAAA,EAAiEC,iBAAjED,YAAAA;AACAA,MAAAA,MAAM,CAACH,WAAW,CAAlBG,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,QAAAA,EAAwD,eAAeC,iBAAvED,KAAAA;AALJJ,KAAE,CAAFA;AAQAA,IAAAA,EAAE,CAAA,0CAAA,EAA6C,YAAY;AACvD,YAAK;AAACC,QAAAA;AAAD,UAAgBC,qBAAM,aACvB,gBAAA,aAAA,CAAA,iBAAA,EAAA;AAAiB,QAAA,OAAO,EAAxB,UAAA;AAAoC,QAAA,MAAM,EAAC;AAA3C,OAAA,CADiBA,CAArB;AAGAE,MAAAA,MAAM,CAACH,WAAW,CAAlBG,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,kBAAAA,EAAiEC,iBAAjED,YAAAA;AACAA,MAAAA,MAAM,CAACH,WAAW,CAAlBG,QAAkB,CAAZ,CAANA,CAAAA,eAAAA,CAAAA,QAAAA,EAAwD,eAAeC,iBAAvED,KAAAA;AALJJ,KAAE,CAAFA;AAjBJD,GAAQ,CAARA","sourcesContent":["import React from 'react';\nimport { render } from '@testing-library/react';\nimport 'jest-styled-components';\nimport { NotificationDot } from '..';\nimport { Size } from '../../types';\nimport COLORS from '../../styles/colors';\n\ndescribe('<NotificationDot />',()=>{\n it('renders positive small notification dot', async () => {\n const{getByTestId} = render(\n <NotificationDot variant='positive' size={Size.Small} testId='testId'/>\n );\n expect(getByTestId('testId')).toHaveStyleRule('background-color',COLORS.correct_500);\n expect(getByTestId('testId')).toHaveStyleRule('border', '2px solid ' + COLORS.white);\n });\n\n it('renders critical large notification dot', async () => {\n const{getByTestId} = render(\n <NotificationDot variant='critical' size={Size.Large} testId='testId'/>\n );\n expect(getByTestId('testId')).toHaveStyleRule('background-color',COLORS.critical_500);\n expect(getByTestId('testId')).toHaveStyleRule('border', '3px solid ' + COLORS.white);\n });\n\n it('renders critical medium notification dot', async () => {\n const{getByTestId} = render(\n <NotificationDot variant='critical' testId='testId'/>\n );\n expect(getByTestId('testId')).toHaveStyleRule('background-color',COLORS.critical_500);\n expect(getByTestId('testId')).toHaveStyleRule('border', '2px solid ' + COLORS.white);\n });\n});"],"file":"NotificationDot.test.js"}
@@ -463,7 +463,7 @@
463
463
  cellSpacing: "0",
464
464
  "data-testid": "TestTable"
465
465
  }, renderHeader(), renderBody(), renderFooter()), showLoadingIndicator && /*#__PURE__*/React.createElement(_TableStyles.TableLoadingIndicator, null, /*#__PURE__*/React.createElement(_LoadingIndicator.LoadingIndicator, {
466
- size: "medium",
466
+ size: _types.Size.Medium,
467
467
  color: "#ffffff"
468
468
  })));
469
469
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Table/Table.tsx"],"names":["Table","showLoadingIndicator","React","tmpFilteredRows","filterAndSortRows","setFilteredRows","setTotal","rowsFrom","currentPage","rowsTo","setFrom","setTo","setCurrentPageRows","pagination","setCurrentPage","setRowsPerPage","row","matchFilterCriteria","column","columns","sortingColumn","setSortedDirection","setSortedColumn","a","b","sortTableColumn","tmpColumn","remotePagination","triggerSortingChange","previousPage","previousPageClick","nextPage","nextPageClick","filteredRows","changeRowsPerPage","value","rowsPerPageChange","parseInt","renderHeader","title","length","COLORS","neutral_600","width","justify","onLinkClick","event","linkClick","onIconClick","iconClick","onRowClick","selectedText","window","rowClick","renderBody","currentPageRows","index","key","color","maxWidth","Size","size","className","renderFooter","rowsPerPageValues","x","label","rowsPerPage","total","from","to"],"mappings":"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","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport { MoreVertical, ChevronRight, ChevronLeft, ArrowLineDown, ArrowLineUp } from '../icons/systemicons/SystemIcons';\nimport { SystemIcons as icons } from '../icons/index';\nimport { DropdownFilter } from '../Dropdown/index';\nimport { IconButton, Button } from '../Button/index';\nimport { Size } from '../types'\n\n/**\n * Import custom styles.\n */\nimport { COLORS } from '../styles';\nimport { TableHeaderRowCol, TableColumnHeaderCol, TableContainer, TableDataCol, TableDataRow, TableFooterCol, TableWrapper, TableLoadingIndicator } from './TableStyles';\n\n/**\n * Import custom types.\n */\nimport { TableProps, TableColumn, TableSortingDirection } from './TableTypes';\nimport { LoadingIndicator } from '../LoadingIndicator';\n\nconst Table: React.FunctionComponent<TableProps> = ({\n rowClick,\n linkClick,\n iconClick,\n previousPageClick,\n nextPageClick,\n rowsPerPageChange,\n triggerSortingChange,\n title,\n columns,\n rows,\n remotePagination,\n pagination,\n showLoadingIndicator,\n}: TableProps) => {\n // States used within the component\n const [rowsPerPage, setRowsPerPage] = React.useState<number>(10);\n const [filteredRows, setFilteredRows] = React.useState<any[]>([]);\n const [currentPageRows, setCurrentPageRows] = React.useState<any[]>([]);\n const [currentPage, setCurrentPage] = React.useState<number>(1);\n const [sortedColumn, setSortedColumn] = React.useState<string>('');\n const [sortedDirection, setSortedDirection] = React.useState<TableSortingDirection>('asc');\n const [from, setFrom] = React.useState<number>();\n const [to, setTo] = React.useState<number>();\n const [total, setTotal] = React.useState<number>();\n\n /**\n * Takes care of local pagination.\n * Works only in case remote pagination is not defined or is set to false.\n */\n React.useEffect(() => {\n if (!remotePagination) {\n // Let's retrieve temporary filtered rows and update globally filtered rows\n const tmpFilteredRows = filterAndSortRows();\n setFilteredRows(tmpFilteredRows);\n setTotal(tmpFilteredRows.length);\n\n // Assign rows from and rows to\n const rowsFrom = (currentPage - 1) * rowsPerPage;\n const rowsTo = rowsFrom + rowsPerPage >= tmpFilteredRows.length ? tmpFilteredRows.length : rowsFrom + rowsPerPage;\n\n // Set from and to values\n setFrom(rowsFrom + 1);\n setTo(rowsTo);\n\n // Filter out the rows\n setCurrentPageRows(tmpFilteredRows.slice(rowsFrom, rowsTo));\n }\n }, [rowsPerPage, rows, currentPage, columns, sortedColumn, sortedDirection, remotePagination]);\n\n /**\n * Takes care of remote pagination.\n * Works only in case remote pagination is set to true.\n */\n React.useEffect(() => {\n if (remotePagination) {\n setCurrentPageRows(rows);\n\n // Let's assign pagination values\n setFrom(pagination?.from);\n setTo(pagination?.to);\n setTotal(pagination?.total);\n setCurrentPage(pagination?.currentPage!);\n setRowsPerPage(pagination?.rowsPerPage!);\n }\n }, [remotePagination, pagination, rows]);\n\n /**\n * Filters out a rows by specific column filters and sorts them if any sorting is set.\n * @returns Filtered and sorted rows.\n */\n const filterAndSortRows = (): any[] => {\n let tmpFilteredRows = rows.filter((row) => {\n // Let's start with matched filter criteria\n let matchFilterCriteria = true;\n\n // Let's go through columns\n for (const column of columns) {\n // Let's check if filter value is specified for the column\n // And if it doesn't match the current row column value\n // Then let's update match filter criteria to failed\n if (column.filterValue && row[column.key].toLowerCase().indexOf(column.filterValue.toLowerCase()) === -1) {\n matchFilterCriteria = false;\n }\n }\n\n // Let's return row only in case match filter criteria succeeds\n if (matchFilterCriteria) {\n return row;\n }\n });\n\n // Let's apply sorting if needed\n if (columns.some((column) => column.sortingDirection)) {\n // Let's find the sorting column\n const sortingColumn = columns.find((column) => column.sortingDirection)!;\n\n // Update sorted column data\n setSortedDirection(sortingColumn.sortingDirection!);\n setSortedColumn(sortingColumn.key!);\n\n // Let's sort the rows\n tmpFilteredRows.sort((a, b) => {\n if (a[sortingColumn.key] > b[sortingColumn.key]) {\n return sortingColumn.sortingDirection === 'asc' ? 1 : -1;\n } else if (a[sortingColumn.key] < b[sortingColumn.key]) {\n return sortingColumn.sortingDirection === 'asc' ? -1 : 1;\n } else {\n return 0;\n }\n });\n }\n\n // Let's return filtered rows\n return tmpFilteredRows;\n };\n\n /**\n * Applies a specific sorting to a column.\n * If no sorting exists, then applies ascending initially\n * @param column - Column to which sorting should be applied.\n */\n const sortTableColumn = (column: TableColumn): void => {\n // Let's remove any active sorting\n columns = columns.map((tmpColumn: TableColumn) => {\n // Let's apply new sorting\n // Let's check if it is the column for which we have to apply sorting\n if (column.key === tmpColumn.key && tmpColumn.sortable) {\n // Let's check if sorting is not defined\n // If so, let's toggle the sorting direction\n if (tmpColumn.sortingDirection !== undefined) {\n if (tmpColumn.sortingDirection === 'asc') {\n tmpColumn.sortingDirection = 'desc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('desc');\n\n // Let's trigger remote sorting trigger function\n if (remotePagination && triggerSortingChange) {\n triggerSortingChange(column.key, 'desc');\n }\n } else {\n tmpColumn.sortingDirection = 'asc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('asc');\n\n // Let's trigger remote sorting trigger function\n if (remotePagination && triggerSortingChange) {\n triggerSortingChange(column.key, 'asc');\n }\n }\n } else {\n // Let's apply the initial sorting\n tmpColumn.sortingDirection = 'asc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('asc');\n\n // Let's trigger remote sorting trigger function\n if (remotePagination && triggerSortingChange) {\n triggerSortingChange(column.key, 'asc');\n }\n }\n } else if (tmpColumn.sortingDirection !== undefined) {\n // Let's remove sorting\n tmpColumn.sortingDirection = undefined;\n }\n\n return tmpColumn;\n });\n };\n\n /**\n * Navigates user back to the previous page and updates the current table page.\n */\n const previousPage = () => {\n if (remotePagination) {\n // Let's inform parent component about page change\n if (previousPageClick) {\n previousPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage > 1 ? currentPage - 1 : 1);\n }\n };\n\n /**\n * Navigates user to the next page and updates the current table page.\n */\n const nextPage = () => {\n if (remotePagination) {\n // Let's inform parent component about page change\n if (nextPageClick) {\n nextPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage * rowsPerPage >= filteredRows.length ? currentPage : currentPage + 1);\n }\n };\n\n /**\n * Updates the rows per page value and refreshes the table content accordingly.\n * @param value - Newly selected rows per page value.\n */\n const changeRowsPerPage = (value: string) => {\n // Let's check if we are using remote pagination\n if (remotePagination) {\n // Inform parent component about rows per page change\n if (rowsPerPageChange) {\n rowsPerPageChange(parseInt(value));\n }\n } else {\n // Let's reset current page to 1\n setCurrentPage(1);\n }\n\n // Let's set rows per page\n setRowsPerPage(parseInt(value));\n };\n\n /**\n * Renders the table header.\n */\n const renderHeader = () => {\n return (\n <thead>\n {title && (\n <tr data-testid=\"TestTableHeaderRow\">\n <TableHeaderRowCol colSpan={columns.length}>\n <div>\n {title}\n <MoreVertical size=\"18px\" color={COLORS.neutral_600} />\n </div>\n </TableHeaderRowCol>\n </tr>\n )}\n <tr data-testid=\"TestTableColumnHeaderRow\">\n {columns.map((column: TableColumn) => (\n <TableColumnHeaderCol\n onClick={() => sortTableColumn(column)}\n key={column.key}\n style={{ width: column.width }}\n className={`${column.sortable ? 'sortable' : ''} ${!title ? 'no-border' : ''} ${column.justify ? `justify-${column.justify}` : ''}`}>\n {column.name}\n\n {column.sortingDirection === 'asc' ? <ArrowLineUp size=\"20px\" /> : column.sortingDirection === 'desc' ? <ArrowLineDown size=\"20px\" /> : ''}\n </TableColumnHeaderCol>\n ))}\n </tr>\n </thead>\n );\n };\n\n /**\n * Function which is called when a mouse click happens on a link to pass data to the parent component.\n * @param row - Row in which the link is located.\n * @param key - Key of the column for which the link is set.\n * @param event - Click event handler.\n */\n const onLinkClick = (row: any, key: string, event: React.MouseEvent) => {\n if (linkClick) {\n event.stopPropagation();\n\n linkClick(row, key);\n }\n };\n\n /**\n * Function which is called when a mouse click happens on an icon to pass data to the parent component.\n * @param row - Row in which the icon is located.\n * @param key - Key of the column for which the icon is set.\n * @param event - Click event handler.\n */\n const onIconClick = (row: any, key: string, event: React.MouseEvent<HTMLButtonElement>) => {\n if (iconClick) {\n event.stopPropagation();\n\n iconClick(row, key);\n }\n };\n\n /**\n * Function which is called when a mouse click happens on a row to pass data to the parent component.\n * @param row - Row in which the link is located.\n */\n const onRowClick = (row: any): void => {\n const selectedText = window?.getSelection()?.toString();\n\n // Let's trigger row click only if we haven't selected any text and action exists\n if (selectedText?.length === 0 && rowClick) {\n rowClick(row);\n }\n };\n\n /**\n * Renders the table body.\n */\n const renderBody = () => {\n return (\n <tbody>\n {currentPageRows.length > 0 ? (\n currentPageRows.map((row: any, index: number) => (\n <TableDataRow key={`row_${index}`} onClick={() => onRowClick(row)} data-testid=\"TestTableDataRow\">\n {columns.map((column: TableColumn) => (\n <TableDataCol\n key={`row_${index}_${column.key}`}\n style={column.colorFn ? { color: column.colorFn(row, column.key), maxWidth: column.width } : { maxWidth: column.width }}\n className={`${column.shortenText && `truncate-text`} ${column.justify ? `justify-${column.justify}` : ''} `}\n title={column.shortenText && row[column.key]}>\n {column.isLink && row[column.key] ? (\n <Button\n size={Size.Small}\n variant=\"tertiary\"\n onClick={(event) => onLinkClick(row, column.key, event)}\n style={column.colorFn && { color: column.colorFn(row, column.key) }}>\n {row[column.key]}\n </Button>\n ) : column.isIcon && column.icon ? (\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground={true} action={(event) => onIconClick(row, column.key, event!)}>\n {icons[column.icon!]({ size: '24', className: 'icon' })}\n </IconButton>\n ) : column.customContent ? (\n column.customContent(row, column.key)\n ) : (\n row[column.key]\n )}\n </TableDataCol>\n ))}\n </TableDataRow>\n ))\n ) : (\n <TableDataRow className=\"no-rows\" data-testid=\"TestTableNoDataRow\">\n <TableDataCol colSpan={columns.length} className=\"center\">\n There are no rows to display\n </TableDataCol>\n </TableDataRow>\n )}\n </tbody>\n );\n };\n\n /**\n * Renders the table footer.\n */\n const renderFooter = () => {\n // Define local values used within the footer\n const rowsPerPageValues = ['10', '20', '50', '100'];\n\n return (\n <tfoot>\n <tr>\n <TableFooterCol colSpan={columns.length} data-testid=\"TestTableFooterRow\">\n <div>\n <span>Rows per page: </span>\n <DropdownFilter\n id=\"rows-per-page\"\n list={rowsPerPageValues.map(x => ({ label: x }))}\n disableSorting={true}\n onSelect={(value) => changeRowsPerPage(value)}\n initalValue={rowsPerPage.toString()}\n isButton={true}\n />\n <span className=\"current-page-info\">\n {total === 0 ? 0 : from}-{to} of {total}\n </span>\n <div className=\"controls\">\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => previousPage()} disabled={from === 1}>\n <ChevronLeft size=\"24\" color={COLORS.neutral_600} />\n </IconButton>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => nextPage()} disabled={to === total}>\n <ChevronRight size=\"24\" color={COLORS.neutral_600} />\n </IconButton>\n </div>\n </div>\n </TableFooterCol>\n </tr>\n </tfoot>\n );\n };\n\n /**\n * Return Table component.\n */\n return (\n <TableWrapper>\n <TableContainer cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\">\n {renderHeader()}\n {renderBody()}\n {renderFooter()}\n </TableContainer>\n {showLoadingIndicator && (\n <TableLoadingIndicator>\n <LoadingIndicator size=\"medium\" color=\"#ffffff\"></LoadingIndicator>\n </TableLoadingIndicator>\n )}\n </TableWrapper>\n );\n};\n\nexport default Table;\n"],"file":"Table.js"}
1
+ {"version":3,"sources":["../../../src/Table/Table.tsx"],"names":["Table","showLoadingIndicator","React","tmpFilteredRows","filterAndSortRows","setFilteredRows","setTotal","rowsFrom","currentPage","rowsTo","setFrom","setTo","setCurrentPageRows","pagination","setCurrentPage","setRowsPerPage","row","matchFilterCriteria","column","columns","sortingColumn","setSortedDirection","setSortedColumn","a","b","sortTableColumn","tmpColumn","remotePagination","triggerSortingChange","previousPage","previousPageClick","nextPage","nextPageClick","filteredRows","changeRowsPerPage","value","rowsPerPageChange","parseInt","renderHeader","title","length","COLORS","neutral_600","width","justify","onLinkClick","event","linkClick","onIconClick","iconClick","onRowClick","selectedText","window","rowClick","renderBody","currentPageRows","index","key","color","maxWidth","Size","size","className","renderFooter","rowsPerPageValues","x","label","rowsPerPage","total","from","to"],"mappings":"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","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport { MoreVertical, ChevronRight, ChevronLeft, ArrowLineDown, ArrowLineUp } from '../icons/systemicons/SystemIcons';\nimport { SystemIcons as icons } from '../icons/index';\nimport { DropdownFilter } from '../Dropdown/index';\nimport { IconButton, Button } from '../Button/index';\nimport { Size } from '../types'\n\n/**\n * Import custom styles.\n */\nimport { COLORS } from '../styles';\nimport { TableHeaderRowCol, TableColumnHeaderCol, TableContainer, TableDataCol, TableDataRow, TableFooterCol, TableWrapper, TableLoadingIndicator } from './TableStyles';\n\n/**\n * Import custom types.\n */\nimport { TableProps, TableColumn, TableSortingDirection } from './TableTypes';\nimport { LoadingIndicator } from '../LoadingIndicator';\n\nconst Table: React.FunctionComponent<TableProps> = ({\n rowClick,\n linkClick,\n iconClick,\n previousPageClick,\n nextPageClick,\n rowsPerPageChange,\n triggerSortingChange,\n title,\n columns,\n rows,\n remotePagination,\n pagination,\n showLoadingIndicator,\n}: TableProps) => {\n // States used within the component\n const [rowsPerPage, setRowsPerPage] = React.useState<number>(10);\n const [filteredRows, setFilteredRows] = React.useState<any[]>([]);\n const [currentPageRows, setCurrentPageRows] = React.useState<any[]>([]);\n const [currentPage, setCurrentPage] = React.useState<number>(1);\n const [sortedColumn, setSortedColumn] = React.useState<string>('');\n const [sortedDirection, setSortedDirection] = React.useState<TableSortingDirection>('asc');\n const [from, setFrom] = React.useState<number>();\n const [to, setTo] = React.useState<number>();\n const [total, setTotal] = React.useState<number>();\n\n /**\n * Takes care of local pagination.\n * Works only in case remote pagination is not defined or is set to false.\n */\n React.useEffect(() => {\n if (!remotePagination) {\n // Let's retrieve temporary filtered rows and update globally filtered rows\n const tmpFilteredRows = filterAndSortRows();\n setFilteredRows(tmpFilteredRows);\n setTotal(tmpFilteredRows.length);\n\n // Assign rows from and rows to\n const rowsFrom = (currentPage - 1) * rowsPerPage;\n const rowsTo = rowsFrom + rowsPerPage >= tmpFilteredRows.length ? tmpFilteredRows.length : rowsFrom + rowsPerPage;\n\n // Set from and to values\n setFrom(rowsFrom + 1);\n setTo(rowsTo);\n\n // Filter out the rows\n setCurrentPageRows(tmpFilteredRows.slice(rowsFrom, rowsTo));\n }\n }, [rowsPerPage, rows, currentPage, columns, sortedColumn, sortedDirection, remotePagination]);\n\n /**\n * Takes care of remote pagination.\n * Works only in case remote pagination is set to true.\n */\n React.useEffect(() => {\n if (remotePagination) {\n setCurrentPageRows(rows);\n\n // Let's assign pagination values\n setFrom(pagination?.from);\n setTo(pagination?.to);\n setTotal(pagination?.total);\n setCurrentPage(pagination?.currentPage!);\n setRowsPerPage(pagination?.rowsPerPage!);\n }\n }, [remotePagination, pagination, rows]);\n\n /**\n * Filters out a rows by specific column filters and sorts them if any sorting is set.\n * @returns Filtered and sorted rows.\n */\n const filterAndSortRows = (): any[] => {\n let tmpFilteredRows = rows.filter((row) => {\n // Let's start with matched filter criteria\n let matchFilterCriteria = true;\n\n // Let's go through columns\n for (const column of columns) {\n // Let's check if filter value is specified for the column\n // And if it doesn't match the current row column value\n // Then let's update match filter criteria to failed\n if (column.filterValue && row[column.key].toLowerCase().indexOf(column.filterValue.toLowerCase()) === -1) {\n matchFilterCriteria = false;\n }\n }\n\n // Let's return row only in case match filter criteria succeeds\n if (matchFilterCriteria) {\n return row;\n }\n });\n\n // Let's apply sorting if needed\n if (columns.some((column) => column.sortingDirection)) {\n // Let's find the sorting column\n const sortingColumn = columns.find((column) => column.sortingDirection)!;\n\n // Update sorted column data\n setSortedDirection(sortingColumn.sortingDirection!);\n setSortedColumn(sortingColumn.key!);\n\n // Let's sort the rows\n tmpFilteredRows.sort((a, b) => {\n if (a[sortingColumn.key] > b[sortingColumn.key]) {\n return sortingColumn.sortingDirection === 'asc' ? 1 : -1;\n } else if (a[sortingColumn.key] < b[sortingColumn.key]) {\n return sortingColumn.sortingDirection === 'asc' ? -1 : 1;\n } else {\n return 0;\n }\n });\n }\n\n // Let's return filtered rows\n return tmpFilteredRows;\n };\n\n /**\n * Applies a specific sorting to a column.\n * If no sorting exists, then applies ascending initially\n * @param column - Column to which sorting should be applied.\n */\n const sortTableColumn = (column: TableColumn): void => {\n // Let's remove any active sorting\n columns = columns.map((tmpColumn: TableColumn) => {\n // Let's apply new sorting\n // Let's check if it is the column for which we have to apply sorting\n if (column.key === tmpColumn.key && tmpColumn.sortable) {\n // Let's check if sorting is not defined\n // If so, let's toggle the sorting direction\n if (tmpColumn.sortingDirection !== undefined) {\n if (tmpColumn.sortingDirection === 'asc') {\n tmpColumn.sortingDirection = 'desc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('desc');\n\n // Let's trigger remote sorting trigger function\n if (remotePagination && triggerSortingChange) {\n triggerSortingChange(column.key, 'desc');\n }\n } else {\n tmpColumn.sortingDirection = 'asc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('asc');\n\n // Let's trigger remote sorting trigger function\n if (remotePagination && triggerSortingChange) {\n triggerSortingChange(column.key, 'asc');\n }\n }\n } else {\n // Let's apply the initial sorting\n tmpColumn.sortingDirection = 'asc';\n\n // Update sorted column and direction\n setSortedColumn(column.key);\n setSortedDirection('asc');\n\n // Let's trigger remote sorting trigger function\n if (remotePagination && triggerSortingChange) {\n triggerSortingChange(column.key, 'asc');\n }\n }\n } else if (tmpColumn.sortingDirection !== undefined) {\n // Let's remove sorting\n tmpColumn.sortingDirection = undefined;\n }\n\n return tmpColumn;\n });\n };\n\n /**\n * Navigates user back to the previous page and updates the current table page.\n */\n const previousPage = () => {\n if (remotePagination) {\n // Let's inform parent component about page change\n if (previousPageClick) {\n previousPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage > 1 ? currentPage - 1 : 1);\n }\n };\n\n /**\n * Navigates user to the next page and updates the current table page.\n */\n const nextPage = () => {\n if (remotePagination) {\n // Let's inform parent component about page change\n if (nextPageClick) {\n nextPageClick();\n }\n } else {\n // Let's change the page within the component\n setCurrentPage(currentPage * rowsPerPage >= filteredRows.length ? currentPage : currentPage + 1);\n }\n };\n\n /**\n * Updates the rows per page value and refreshes the table content accordingly.\n * @param value - Newly selected rows per page value.\n */\n const changeRowsPerPage = (value: string) => {\n // Let's check if we are using remote pagination\n if (remotePagination) {\n // Inform parent component about rows per page change\n if (rowsPerPageChange) {\n rowsPerPageChange(parseInt(value));\n }\n } else {\n // Let's reset current page to 1\n setCurrentPage(1);\n }\n\n // Let's set rows per page\n setRowsPerPage(parseInt(value));\n };\n\n /**\n * Renders the table header.\n */\n const renderHeader = () => {\n return (\n <thead>\n {title && (\n <tr data-testid=\"TestTableHeaderRow\">\n <TableHeaderRowCol colSpan={columns.length}>\n <div>\n {title}\n <MoreVertical size=\"18px\" color={COLORS.neutral_600} />\n </div>\n </TableHeaderRowCol>\n </tr>\n )}\n <tr data-testid=\"TestTableColumnHeaderRow\">\n {columns.map((column: TableColumn) => (\n <TableColumnHeaderCol\n onClick={() => sortTableColumn(column)}\n key={column.key}\n style={{ width: column.width }}\n className={`${column.sortable ? 'sortable' : ''} ${!title ? 'no-border' : ''} ${column.justify ? `justify-${column.justify}` : ''}`}>\n {column.name}\n\n {column.sortingDirection === 'asc' ? <ArrowLineUp size=\"20px\" /> : column.sortingDirection === 'desc' ? <ArrowLineDown size=\"20px\" /> : ''}\n </TableColumnHeaderCol>\n ))}\n </tr>\n </thead>\n );\n };\n\n /**\n * Function which is called when a mouse click happens on a link to pass data to the parent component.\n * @param row - Row in which the link is located.\n * @param key - Key of the column for which the link is set.\n * @param event - Click event handler.\n */\n const onLinkClick = (row: any, key: string, event: React.MouseEvent) => {\n if (linkClick) {\n event.stopPropagation();\n\n linkClick(row, key);\n }\n };\n\n /**\n * Function which is called when a mouse click happens on an icon to pass data to the parent component.\n * @param row - Row in which the icon is located.\n * @param key - Key of the column for which the icon is set.\n * @param event - Click event handler.\n */\n const onIconClick = (row: any, key: string, event: React.MouseEvent<HTMLButtonElement>) => {\n if (iconClick) {\n event.stopPropagation();\n\n iconClick(row, key);\n }\n };\n\n /**\n * Function which is called when a mouse click happens on a row to pass data to the parent component.\n * @param row - Row in which the link is located.\n */\n const onRowClick = (row: any): void => {\n const selectedText = window?.getSelection()?.toString();\n\n // Let's trigger row click only if we haven't selected any text and action exists\n if (selectedText?.length === 0 && rowClick) {\n rowClick(row);\n }\n };\n\n /**\n * Renders the table body.\n */\n const renderBody = () => {\n return (\n <tbody>\n {currentPageRows.length > 0 ? (\n currentPageRows.map((row: any, index: number) => (\n <TableDataRow key={`row_${index}`} onClick={() => onRowClick(row)} data-testid=\"TestTableDataRow\">\n {columns.map((column: TableColumn) => (\n <TableDataCol\n key={`row_${index}_${column.key}`}\n style={column.colorFn ? { color: column.colorFn(row, column.key), maxWidth: column.width } : { maxWidth: column.width }}\n className={`${column.shortenText && `truncate-text`} ${column.justify ? `justify-${column.justify}` : ''} `}\n title={column.shortenText && row[column.key]}>\n {column.isLink && row[column.key] ? (\n <Button\n size={Size.Small}\n variant=\"tertiary\"\n onClick={(event) => onLinkClick(row, column.key, event)}\n style={column.colorFn && { color: column.colorFn(row, column.key) }}>\n {row[column.key]}\n </Button>\n ) : column.isIcon && column.icon ? (\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground={true} action={(event) => onIconClick(row, column.key, event!)}>\n {icons[column.icon!]({ size: '24', className: 'icon' })}\n </IconButton>\n ) : column.customContent ? (\n column.customContent(row, column.key)\n ) : (\n row[column.key]\n )}\n </TableDataCol>\n ))}\n </TableDataRow>\n ))\n ) : (\n <TableDataRow className=\"no-rows\" data-testid=\"TestTableNoDataRow\">\n <TableDataCol colSpan={columns.length} className=\"center\">\n There are no rows to display\n </TableDataCol>\n </TableDataRow>\n )}\n </tbody>\n );\n };\n\n /**\n * Renders the table footer.\n */\n const renderFooter = () => {\n // Define local values used within the footer\n const rowsPerPageValues = ['10', '20', '50', '100'];\n\n return (\n <tfoot>\n <tr>\n <TableFooterCol colSpan={columns.length} data-testid=\"TestTableFooterRow\">\n <div>\n <span>Rows per page: </span>\n <DropdownFilter\n id=\"rows-per-page\"\n list={rowsPerPageValues.map(x => ({ label: x }))}\n disableSorting={true}\n onSelect={(value) => changeRowsPerPage(value)}\n initalValue={rowsPerPage.toString()}\n isButton={true}\n />\n <span className=\"current-page-info\">\n {total === 0 ? 0 : from}-{to} of {total}\n </span>\n <div className=\"controls\">\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => previousPage()} disabled={from === 1}>\n <ChevronLeft size=\"24\" color={COLORS.neutral_600} />\n </IconButton>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => nextPage()} disabled={to === total}>\n <ChevronRight size=\"24\" color={COLORS.neutral_600} />\n </IconButton>\n </div>\n </div>\n </TableFooterCol>\n </tr>\n </tfoot>\n );\n };\n\n /**\n * Return Table component.\n */\n return (\n <TableWrapper>\n <TableContainer cellPadding=\"0\" cellSpacing=\"0\" data-testid=\"TestTable\">\n {renderHeader()}\n {renderBody()}\n {renderFooter()}\n </TableContainer>\n {showLoadingIndicator && (\n <TableLoadingIndicator>\n <LoadingIndicator size={Size.Medium} color=\"#ffffff\"></LoadingIndicator>\n </TableLoadingIndicator>\n )}\n </TableWrapper>\n );\n};\n\nexport default Table;\n"],"file":"Table.js"}
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "prop-types", "react", "../styles", "styled-components", "../styles/typography", "../styles/z-indexes"], 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("../styles"), require("styled-components"), require("../styles/typography"), require("../styles/z-indexes"));
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.styles, global.styledComponents, global.typography, global.zIndexes);
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, _styles, _styledComponents, _typography, _zIndexes) {
13
+ })(this, function (exports, _propTypes, _react, _types, _styles, _styledComponents, _typography, _zIndexes) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -226,28 +226,28 @@
226
226
  }
227
227
  }
228
228
 
229
- &.size-XS {
229
+ &.size-${_types.Size.XSmall} {
230
230
  ${(0, _typography.ComponentXSStyling)(_styles.ComponentTextStyle.Regular, null)}
231
231
  padding: 0px 16px;
232
232
  height: 32px;
233
233
  margin-top: 16px;
234
234
  }
235
235
 
236
- &.size-S {
236
+ &.size-${_types.Size.Small} {
237
237
  ${(0, _typography.ComponentSStyling)(_styles.ComponentTextStyle.Regular, null)}
238
238
  padding: 0px 16px;
239
239
  height: 40px;
240
240
  margin-top: 8px;
241
241
  }
242
242
 
243
- &.size-M {
243
+ &.size-${_types.Size.Medium} {
244
244
  ${(0, _typography.ComponentMStyling)(_styles.ComponentTextStyle.Regular, null)}
245
245
  height: 48px;
246
246
  min-width: 96px;
247
247
  padding: 0px 16px;
248
248
  }
249
249
 
250
- &.size-L {
250
+ &.size-${_types.Size.Large} {
251
251
  ${(0, _typography.ComponentLStyling)(_styles.ComponentTextStyle.Regular, null)}
252
252
  height: 56px;
253
253
  min-width: 144px;
@@ -291,7 +291,6 @@
291
291
  };
292
292
 
293
293
  HorizontalTabs.propTypes = {
294
- size: _propTypes2.default.oneOf(['XS', 'S', 'M', 'L']).isRequired,
295
294
  tabs: _propTypes2.default.arrayOf(_propTypes2.default.shape({
296
295
  value: _propTypes2.default.string.isRequired,
297
296
  selected: _propTypes2.default.bool.isRequired,
@@ -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","Z_INDEXES","hover","primary_20","primary_700","active","focus","primary_800","focus_25","primary_500","primary_100","ComponentXSStyling","ComponentTextStyle","ComponentSStyling","ComponentMStyling","ComponentLStyling","size","tabs","sideFill","fullWidth","onTabChange","value","selected","to","disabled","HorizontalTabs","doTabChange","document","tab","index","width","length"],"mappings":"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","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\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-XS {\n ${ComponentXSStyling(ComponentTextStyle.Regular, null)}\n padding: 0px 16px;\n height: 32px;\n margin-top: 16px;\n }\n\n &.size-S {\n ${ComponentSStyling(ComponentTextStyle.Regular, null)}\n padding: 0px 16px;\n height: 40px;\n margin-top: 8px;\n }\n\n &.size-M {\n ${ComponentMStyling(ComponentTextStyle.Regular, null)}\n height: 48px;\n min-width: 96px;\n padding: 0px 16px;\n }\n\n &.size-L {\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: HorizontalTabSizes;\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\ntype HorizontalTabSizes = 'XS' | 'S' | 'M' | 'L';\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"}
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "prop-types", "react", "react-router-dom", "styled-components", "../NotificationDot", "../styles", "../styles/z-indexes"], factory);
3
+ define(["exports", "prop-types", "react", "react-router-dom", "styled-components", "../NotificationDot", "../types", "../styles", "../styles/z-indexes"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("prop-types"), require("react"), require("react-router-dom"), require("styled-components"), require("../NotificationDot"), require("../styles"), require("../styles/z-indexes"));
5
+ factory(exports, require("prop-types"), require("react"), require("react-router-dom"), require("styled-components"), require("../NotificationDot"), require("../types"), require("../styles"), 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.reactRouterDom, global.styledComponents, global.NotificationDot, global.styles, global.zIndexes);
10
+ factory(mod.exports, global.propTypes, global.react, global.reactRouterDom, global.styledComponents, global.NotificationDot, global.types, global.styles, global.zIndexes);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _propTypes, _react, _reactRouterDom, _styledComponents, _NotificationDot, _styles, _zIndexes) {
13
+ })(this, function (exports, _propTypes, _react, _reactRouterDom, _styledComponents, _NotificationDot, _types, _styles, _zIndexes) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -213,7 +213,7 @@
213
213
  onLinkClick,
214
214
  testId,
215
215
  showNotificationDot = false,
216
- size = 'small',
216
+ size = _types.Size.Small,
217
217
  variant = 'critical'
218
218
  }) => {
219
219
  const location = (0, _reactRouterDom.useLocation)();
@@ -250,7 +250,6 @@
250
250
  onLinkClick: _propTypes2.default.func,
251
251
  testId: _propTypes2.default.string,
252
252
  showNotificationDot: _propTypes2.default.bool,
253
- size: _propTypes2.default.string,
254
253
  variant: _propTypes2.default.oneOf(['positive', 'critical'])
255
254
  };
256
255
  exports.default = TabLink;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Tabs/TabLink.tsx"],"names":["disabled","requiredLine","optionalLine","onLinkClick","testId","showNotificationDot","size","variant","StyledTabLink","styled","COLORS","neutral_600","props","Z_INDEXES","focus","white","active","neutral_20","primary_20","hover","primary_600","primary_100","primary_800","primary_500","neutral_300","OptionalLineWrapperWithIcon","div","TopWrapper","TextContainer","StyledNotification","OptionalLineWrapper","TabLink","exact","location","ref","React","to","OptionalLineIcon"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { NavLink, NavLinkProps, useLocation } from 'react-router-dom';\nimport styled from 'styled-components';\nimport { NotificationDot } from '../NotificationDot';\nimport { BaseProps } from '../icons';\nimport { COLORS } from '../styles';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\ntype TabLinkProps = {\n disabled?: boolean;\n requiredLine: string;\n optionalLine?: string;\n OptionalLineIcon?: React.FunctionComponent<BaseProps>;\n onLinkClick?: () => void;\n testId?: string;\n showNotificationDot?: boolean;\n size?: string;\n variant?: 'positive' | 'critical';\n} & NavLinkProps;\n\ntype StyledTabLinkProps = {\n disabled?: boolean;\n exact: boolean;\n};\n\nconst StyledTabLink = styled(NavLink)<StyledTabLinkProps>`\n display: flex;\n flex-direction: row;\n align-items: center;\n\n font-size: 16px;\n line-height: 120%;\n color: ${COLORS.neutral_600};\n\n background-color: ${(props) => (props.disabled ? COLORS.neutral_100 : 'transparent')};\n cursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n border-left: 1px solid transparent;\n text-decoration: none;\n position: relative;\n border-radius: 2px;\n\n &:not(:last-child) {\n margin-bottom: 4px;\n }\n\n &:focus {\n z-index: ${Z_INDEXES.focus};\n background-color: ${COLORS.white};\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2e7fa1;\n outline: none;\n\n &::after {\n background-color: ${COLORS.white};\n }\n }\n\n &.active {\n z-index: ${Z_INDEXES.active};\n background-color: ${COLORS.neutral_20};\n }\n\n &.active:hover {\n background-color: ${COLORS.primary_20};\n }\n\n &.active:focus {\n background-color: ${COLORS.white};\n }\n\n &:hover {\n z-index: ${Z_INDEXES.hover};\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_600};\n }\n\n &:active {\n z-index: ${Z_INDEXES.active};\n box-shadow: none;\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n }\n\n &.active {\n &::after {\n position: absolute;\n content: ' ';\n width: 4px;\n top: 0;\n bottom: 0;\n left: -1px;\n background-color: ${COLORS.primary_500};\n\n border-radius: 2px;\n }\n }\n\n &.active:hover {\n &::after {\n background-color: ${COLORS.primary_600};\n }\n }\n\n &.active:active {\n background-color: ${COLORS.primary_100};\n\n &::after {\n background-color: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n box-shadow: none;\n background-color: ${COLORS.white};\n\n span {\n color: ${COLORS.neutral_300};\n }\n\n &::after {\n background-color: ${COLORS.white};\n }\n }\n`;\n\nconst OptionalLineWrapperWithIcon = styled.div`\n display: flex;\n flex-direction: row;\n span {\n margin: 0 0 0 4px !important;\n font-size: 12px;\n line-height: 16px;\n }\n`;\n\nconst TopWrapper = styled.div`\n display: flex;\n flex-direction: row;\n span:not(:only-child) {\n width: calc(100% - 32px);\n }\n`;\n\nconst TextContainer = styled.div`\n width: 100%;\n`;\n\nconst StyledNotification = styled.div`\n margin: 0 15px 0 0 !important;\n`;\n\nconst OptionalLineWrapper = styled.div`\n font-size: 12px;\n`;\n\nconst TabLink = ({ to, disabled = false, exact = false, requiredLine, optionalLine, OptionalLineIcon, onLinkClick, testId, showNotificationDot = false, size = 'small', variant = 'critical' }: TabLinkProps) => {\n const location = useLocation();\n const ref = React.useRef<any>(null);\n\n return (\n <StyledTabLink\n to={to.toString()}\n activeClassName=\"active\"\n disabled={disabled}\n exact={exact}\n role=\"tab\"\n aria-selected={to === location.pathname}\n onClick={() => {\n ref?.current?.blur();\n if (onLinkClick) {\n onLinkClick();\n }\n }}\n ref={ref}\n data-testid={testId}>\n <TextContainer> \n <TopWrapper>\n <span>{requiredLine}</span> \n </TopWrapper>\n {optionalLine && OptionalLineIcon ? (\n <OptionalLineWrapperWithIcon>\n {OptionalLineIcon && <OptionalLineIcon size=\"16px\" />}\n {optionalLine !== undefined && <span>{optionalLine}</span>}\n </OptionalLineWrapperWithIcon>\n ) : optionalLine ? (\n <OptionalLineWrapper>\n <span>{optionalLine}</span>\n </OptionalLineWrapper>\n ) : (\n <></>\n )}\n </TextContainer>\n <StyledNotification>\n {showNotificationDot && <NotificationDot testId=\"NotificationDot\" size={size} variant={variant} />}\n </StyledNotification>\n </StyledTabLink>\n );\n};\n\nexport default TabLink;\n"],"file":"TabLink.js"}
1
+ {"version":3,"sources":["../../../src/Tabs/TabLink.tsx"],"names":["disabled","requiredLine","optionalLine","onLinkClick","testId","showNotificationDot","variant","StyledTabLink","styled","COLORS","neutral_600","props","Z_INDEXES","focus","white","active","neutral_20","primary_20","hover","primary_600","primary_100","primary_800","primary_500","neutral_300","OptionalLineWrapperWithIcon","div","TopWrapper","TextContainer","StyledNotification","OptionalLineWrapper","TabLink","exact","size","Size","location","ref","React","to","OptionalLineIcon"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { NavLink, NavLinkProps, useLocation } from 'react-router-dom';\nimport styled from 'styled-components';\nimport { NotificationDot } from '../NotificationDot';\nimport { BaseProps } from '../icons';\nimport { Size } from '../types';\nimport { COLORS } from '../styles';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\ntype TabLinkProps = {\n disabled?: boolean;\n requiredLine: string;\n optionalLine?: string;\n OptionalLineIcon?: React.FunctionComponent<BaseProps>;\n onLinkClick?: () => void;\n testId?: string;\n showNotificationDot?: boolean;\n size?: Size.Small | Size.Medium | Size.Large;\n variant?: 'positive' | 'critical';\n} & NavLinkProps;\n\ntype StyledTabLinkProps = {\n disabled?: boolean;\n exact: boolean;\n};\n\nconst StyledTabLink = styled(NavLink)<StyledTabLinkProps>`\n display: flex;\n flex-direction: row;\n align-items: center;\n\n font-size: 16px;\n line-height: 120%;\n color: ${COLORS.neutral_600};\n\n background-color: ${(props) => (props.disabled ? COLORS.neutral_100 : 'transparent')};\n cursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n border-left: 1px solid transparent;\n text-decoration: none;\n position: relative;\n border-radius: 2px;\n\n &:not(:last-child) {\n margin-bottom: 4px;\n }\n\n &:focus {\n z-index: ${Z_INDEXES.focus};\n background-color: ${COLORS.white};\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2e7fa1;\n outline: none;\n\n &::after {\n background-color: ${COLORS.white};\n }\n }\n\n &.active {\n z-index: ${Z_INDEXES.active};\n background-color: ${COLORS.neutral_20};\n }\n\n &.active:hover {\n background-color: ${COLORS.primary_20};\n }\n\n &.active:focus {\n background-color: ${COLORS.white};\n }\n\n &:hover {\n z-index: ${Z_INDEXES.hover};\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_600};\n }\n\n &:active {\n z-index: ${Z_INDEXES.active};\n box-shadow: none;\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n }\n\n &.active {\n &::after {\n position: absolute;\n content: ' ';\n width: 4px;\n top: 0;\n bottom: 0;\n left: -1px;\n background-color: ${COLORS.primary_500};\n\n border-radius: 2px;\n }\n }\n\n &.active:hover {\n &::after {\n background-color: ${COLORS.primary_600};\n }\n }\n\n &.active:active {\n background-color: ${COLORS.primary_100};\n\n &::after {\n background-color: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n box-shadow: none;\n background-color: ${COLORS.white};\n\n span {\n color: ${COLORS.neutral_300};\n }\n\n &::after {\n background-color: ${COLORS.white};\n }\n }\n`;\n\nconst OptionalLineWrapperWithIcon = styled.div`\n display: flex;\n flex-direction: row;\n span {\n margin: 0 0 0 4px !important;\n font-size: 12px;\n line-height: 16px;\n }\n`;\n\nconst TopWrapper = styled.div`\n display: flex;\n flex-direction: row;\n span:not(:only-child) {\n width: calc(100% - 32px);\n }\n`;\n\nconst TextContainer = styled.div`\n width: 100%;\n`;\n\nconst StyledNotification = styled.div`\n margin: 0 15px 0 0 !important;\n`;\n\nconst OptionalLineWrapper = styled.div`\n font-size: 12px;\n`;\n\nconst TabLink = ({ to, disabled = false, exact = false, requiredLine, optionalLine, OptionalLineIcon, onLinkClick, testId, showNotificationDot = false, size = Size.Small, variant = 'critical' }: TabLinkProps) => {\n const location = useLocation();\n const ref = React.useRef<any>(null);\n\n return (\n <StyledTabLink\n to={to.toString()}\n activeClassName=\"active\"\n disabled={disabled}\n exact={exact}\n role=\"tab\"\n aria-selected={to === location.pathname}\n onClick={() => {\n ref?.current?.blur();\n if (onLinkClick) {\n onLinkClick();\n }\n }}\n ref={ref}\n data-testid={testId}>\n <TextContainer> \n <TopWrapper>\n <span>{requiredLine}</span> \n </TopWrapper>\n {optionalLine && OptionalLineIcon ? (\n <OptionalLineWrapperWithIcon>\n {OptionalLineIcon && <OptionalLineIcon size=\"16px\" />}\n {optionalLine !== undefined && <span>{optionalLine}</span>}\n </OptionalLineWrapperWithIcon>\n ) : optionalLine ? (\n <OptionalLineWrapper>\n <span>{optionalLine}</span>\n </OptionalLineWrapper>\n ) : (\n <></>\n )}\n </TextContainer>\n <StyledNotification>\n {showNotificationDot && <NotificationDot testId=\"NotificationDot\" size={size} variant={variant} />}\n </StyledNotification>\n </StyledTabLink>\n );\n};\n\nexport default TabLink;\n"],"file":"TabLink.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"], factory);
3
+ define(["exports", "prop-types", "react", "styled-components", "../types"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("prop-types"), require("react"), require("styled-components"));
5
+ factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../types"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.propTypes, global.react, global.styledComponents);
10
+ factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.types);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _propTypes, _react, _styledComponents) {
13
+ })(this, function (exports, _propTypes, _react, _styledComponents, _types) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -81,13 +81,13 @@
81
81
 
82
82
  const getHeight = size => {
83
83
  switch (size) {
84
- case 'small':
84
+ case _types.Size.Small:
85
85
  return '48px';
86
86
 
87
- case 'medium':
87
+ case _types.Size.Medium:
88
88
  return '56px';
89
89
 
90
- case 'large':
90
+ case _types.Size.Large:
91
91
  return '64px';
92
92
 
93
93
  default:
@@ -97,13 +97,13 @@
97
97
 
98
98
  const getFontSize = size => {
99
99
  switch (size) {
100
- case 'small':
100
+ case _types.Size.Small:
101
101
  return '16px';
102
102
 
103
- case 'medium':
103
+ case _types.Size.Medium:
104
104
  return '18px';
105
105
 
106
- case 'large':
106
+ case _types.Size.Large:
107
107
  return '20px';
108
108
 
109
109
  default:
@@ -113,13 +113,13 @@
113
113
 
114
114
  const getTopMargin = size => {
115
115
  switch (size) {
116
- case 'small':
116
+ case _types.Size.Small:
117
117
  return '6px';
118
118
 
119
- case 'medium':
119
+ case _types.Size.Medium:
120
120
  return '10px';
121
121
 
122
- case 'large':
122
+ case _types.Size.Large:
123
123
  return '12px';
124
124
 
125
125
  default:
@@ -129,13 +129,13 @@
129
129
 
130
130
  const getBottomMargin = size => {
131
131
  switch (size) {
132
- case 'small':
132
+ case _types.Size.Small:
133
133
  return '2px';
134
134
 
135
- case 'medium':
135
+ case _types.Size.Medium:
136
136
  return '3px';
137
137
 
138
- case 'large':
138
+ case _types.Size.Large:
139
139
  return '4px';
140
140
 
141
141
  default:
@@ -178,8 +178,7 @@
178
178
  }, children);
179
179
 
180
180
  Tabs.propTypes = {
181
- children: _propTypes2.default.any,
182
- size: _propTypes2.default.string.isRequired
181
+ children: _propTypes2.default.any
183
182
  };
184
183
  exports.default = Tabs;
185
184
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Tabs/Tabs.tsx"],"names":["children","size","getHeight","getFontSize","getTopMargin","getBottomMargin","Nav","styled","nav","props","Tabs"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,QAAME,SAAS,GAAID,IAAD,IAAkB;AAClC,YAAA,IAAA;AACE,WAAA,OAAA;AACE,eAAA,MAAA;;AACF,WAAA,QAAA;AACE,eAAA,MAAA;;AACF,WAAA,OAAA;AACE,eAAA,MAAA;;AACF;AACE,eAAA,MAAA;AARJ;AADF,GAAA;;AAaA,QAAME,WAAW,GAAIF,IAAD,IAAkB;AACpC,YAAA,IAAA;AACE,WAAA,OAAA;AACE,eAAA,MAAA;;AACF,WAAA,QAAA;AACE,eAAA,MAAA;;AACF,WAAA,OAAA;AACE,eAAA,MAAA;;AACF;AACE,eAAA,MAAA;AARJ;AADF,GAAA;;AAaA,QAAMG,YAAY,GAAIH,IAAD,IAAkB;AACrC,YAAA,IAAA;AACE,WAAA,OAAA;AACE,eAAA,KAAA;;AACF,WAAA,QAAA;AACE,eAAA,MAAA;;AACF,WAAA,OAAA;AACE,eAAA,MAAA;;AACF;AACE,eAAA,MAAA;AARJ;AADF,GAAA;;AAaA,QAAMI,eAAe,GAAIJ,IAAD,IAAkB;AACxC,YAAA,IAAA;AACE,WAAA,OAAA;AACE,eAAA,KAAA;;AACF,WAAA,QAAA;AACE,eAAA,KAAA;;AACF,WAAA,OAAA;AACE,eAAA,KAAA;;AACF;AACE,eAAA,KAAA;AARJ;AADF,GAAA;;AAaA,QAAMK,GAAG,GAAGC,2BAAOC,GAAe;AAClC;AACA;AACA;AACA;AACA,cAAeC,KAAD,IAAWP,SAAS,CAACO,KAAK,CAAN,IAAA,CAAa;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAkBA,KAAD,IAAWN,WAAW,CAACM,KAAK,CAAN,IAAA,CAAa;AACpD,cAAeA,KAAD,IAAWL,YAAY,CAACK,KAAK,CAAN,IAAA,CAAa,MAAMA,KAAD,IAAWJ,eAAe,CAACI,KAAK,CAAN,IAAA,CAAa;AAC9F;AACA;AACA,iBAAkBA,KAAD,IAAWN,WAAW,CAACM,KAAK,CAAN,IAAA,CAAa;AACpD;AACA;AACA;AACA;AACA;AACA;AAvBA,CAAA;;AA0BA,QAAMC,IAAwC,GAAG,CAAC;AAAA,IAAA,QAAA;AAAYT,IAAAA;AAAZ,GAAD,KAAA,aAC/C,KAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAK,IAAA,IAAI,EAAT,SAAA;AAAoB,IAAA,IAAI,EAAEA;AAA1B,GAAA,EADF,QACE,CADF;;;AAlFED,IAAAA,Q;AACAC,IAAAA,I;;oBAuFF,I","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\ntype TabsProps = {\n children?: any;\n size: string;\n};\n\nconst getHeight = (size: string) => {\n switch (size) {\n case 'small':\n return '48px';\n case 'medium':\n return '56px';\n case 'large':\n return '64px';\n default:\n return '48px';\n }\n};\n\nconst getFontSize = (size: string) => {\n switch (size) {\n case 'small':\n return '16px';\n case 'medium':\n return '18px';\n case 'large':\n return '20px';\n default:\n return '20px';\n }\n};\n\nconst getTopMargin = (size: string) => {\n switch (size) {\n case 'small':\n return '6px';\n case 'medium':\n return '10px';\n case 'large':\n return '12px';\n default:\n return '12px';\n }\n};\n\nconst getBottomMargin = (size: string) => {\n switch (size) {\n case 'small':\n return '2px';\n case 'medium':\n return '3px';\n case 'large':\n return '4px';\n default:\n return '4px';\n }\n};\n\nconst Nav = styled.nav<TabsProps>`\n display: flex;\n flex-direction: column;\n\n a {\n height: ${(props) => getHeight(props.size)};\n }\n\n a > div:last-of-type {\n font-size: 12px;\n margin: 0 0 8px 16px;\n }\n a > div:first-child {\n font-size: ${(props) => getFontSize(props.size)};\n margin: ${(props) => getTopMargin(props.size)} 0 ${(props) => getBottomMargin(props.size)} 16px;\n }\n a > div:only-of-type {\n font-size: ${(props) => getFontSize(props.size)};\n margin: auto 0 auto 16px;\n }\n\n @media print {\n display: none;\n }\n`;\n\nconst Tabs: React.FunctionComponent<TabsProps> = ({ children, size }) => (\n <Nav role=\"tablist\" size={size}>\n {children}\n </Nav>\n);\n\nexport default Tabs;\n"],"file":"Tabs.js"}
1
+ {"version":3,"sources":["../../../src/Tabs/Tabs.tsx"],"names":["children","getHeight","size","Size","getFontSize","getTopMargin","getBottomMargin","Nav","styled","nav","props","Tabs"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,QAAMC,SAAS,GAAIC,IAAD,IAAgB;AAChC,YAAA,IAAA;AACE,WAAKC,YAAL,KAAA;AACE,eAAA,MAAA;;AACF,WAAKA,YAAL,MAAA;AACE,eAAA,MAAA;;AACF,WAAKA,YAAL,KAAA;AACE,eAAA,MAAA;;AACF;AACE,eAAA,MAAA;AARJ;AADF,GAAA;;AAaA,QAAMC,WAAW,GAAIF,IAAD,IAAgB;AAClC,YAAA,IAAA;AACE,WAAKC,YAAL,KAAA;AACE,eAAA,MAAA;;AACF,WAAKA,YAAL,MAAA;AACE,eAAA,MAAA;;AACF,WAAKA,YAAL,KAAA;AACE,eAAA,MAAA;;AACF;AACE,eAAA,MAAA;AARJ;AADF,GAAA;;AAaA,QAAME,YAAY,GAAIH,IAAD,IAAgB;AACnC,YAAA,IAAA;AACE,WAAKC,YAAL,KAAA;AACE,eAAA,KAAA;;AACF,WAAKA,YAAL,MAAA;AACE,eAAA,MAAA;;AACF,WAAKA,YAAL,KAAA;AACE,eAAA,MAAA;;AACF;AACE,eAAA,MAAA;AARJ;AADF,GAAA;;AAaA,QAAMG,eAAe,GAAIJ,IAAD,IAAgB;AACtC,YAAA,IAAA;AACE,WAAKC,YAAL,KAAA;AACE,eAAA,KAAA;;AACF,WAAKA,YAAL,MAAA;AACE,eAAA,KAAA;;AACF,WAAKA,YAAL,KAAA;AACE,eAAA,KAAA;;AACF;AACE,eAAA,KAAA;AARJ;AADF,GAAA;;AAaA,QAAMI,GAAG,GAAGC,2BAAOC,GAAe;AAClC;AACA;AACA;AACA;AACA,cAAeC,KAAD,IAAWT,SAAS,CAACS,KAAK,CAAN,IAAA,CAAa;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAkBA,KAAD,IAAWN,WAAW,CAACM,KAAK,CAAN,IAAA,CAAa;AACpD,cAAeA,KAAD,IAAWL,YAAY,CAACK,KAAK,CAAN,IAAA,CAAa,MAAMA,KAAD,IAAWJ,eAAe,CAACI,KAAK,CAAN,IAAA,CAAa;AAC9F;AACA;AACA,iBAAkBA,KAAD,IAAWN,WAAW,CAACM,KAAK,CAAN,IAAA,CAAa;AACpD;AACA;AACA;AACA;AACA;AACA;AAvBA,CAAA;;AA0BA,QAAMC,IAAwC,GAAG,CAAC;AAAA,IAAA,QAAA;AAAYT,IAAAA;AAAZ,GAAD,KAAA,aAC/C,KAAA,CAAA,aAAA,CAAA,GAAA,EAAA;AAAK,IAAA,IAAI,EAAT,SAAA;AAAoB,IAAA,IAAI,EAAEA;AAA1B,GAAA,EADF,QACE,CADF;;;AAlFEF,IAAAA,Q;;oBAwFF,I","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { Size } from '../types';\n\ntype TabsProps = {\n children?: any;\n size: Size;\n};\n\nconst getHeight = (size: Size) => {\n switch (size) {\n case Size.Small:\n return '48px';\n case Size.Medium:\n return '56px';\n case Size.Large:\n return '64px';\n default:\n return '48px';\n }\n};\n\nconst getFontSize = (size: Size) => {\n switch (size) {\n case Size.Small:\n return '16px';\n case Size.Medium:\n return '18px';\n case Size.Large:\n return '20px';\n default:\n return '20px';\n }\n};\n\nconst getTopMargin = (size: Size) => {\n switch (size) {\n case Size.Small:\n return '6px';\n case Size.Medium:\n return '10px';\n case Size.Large:\n return '12px';\n default:\n return '12px';\n }\n};\n\nconst getBottomMargin = (size: Size) => {\n switch (size) {\n case Size.Small:\n return '2px';\n case Size.Medium:\n return '3px';\n case Size.Large:\n return '4px';\n default:\n return '4px';\n }\n};\n\nconst Nav = styled.nav<TabsProps>`\n display: flex;\n flex-direction: column;\n\n a {\n height: ${(props) => getHeight(props.size)};\n }\n\n a > div:last-of-type {\n font-size: 12px;\n margin: 0 0 8px 16px;\n }\n a > div:first-child {\n font-size: ${(props) => getFontSize(props.size)};\n margin: ${(props) => getTopMargin(props.size)} 0 ${(props) => getBottomMargin(props.size)} 16px;\n }\n a > div:only-of-type {\n font-size: ${(props) => getFontSize(props.size)};\n margin: auto 0 auto 16px;\n }\n\n @media print {\n display: none;\n }\n`;\n\nconst Tabs: React.FunctionComponent<TabsProps> = ({ children, size }) => (\n <Nav role=\"tablist\" size={size}>\n {children}\n </Nav>\n);\n\nexport default Tabs;\n"],"file":"Tabs.js"}
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "prop-types", "react", "./Tabs", "./TabLink"], factory);
3
+ define(["exports", "prop-types", "react", "./Tabs", "./TabLink", "../types"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("prop-types"), require("react"), require("./Tabs"), require("./TabLink"));
5
+ factory(exports, require("prop-types"), require("react"), require("./Tabs"), require("./TabLink"), require("../types"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.propTypes, global.react, global.Tabs, global.TabLink);
10
+ factory(mod.exports, global.propTypes, global.react, global.Tabs, global.TabLink, global.types);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _propTypes, _react, _Tabs, _TabLink) {
13
+ })(this, function (exports, _propTypes, _react, _Tabs, _TabLink, _types) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -86,7 +86,7 @@
86
86
  entries
87
87
  }) => {
88
88
  return /*#__PURE__*/React.createElement(_Tabs2.default, {
89
- size: size || 'large'
89
+ size: size ?? _types.Size.Large
90
90
  }, entries?.map(entry => /*#__PURE__*/React.createElement(_TabLink2.default, {
91
91
  key: entry.to,
92
92
  to: entry.to,
@@ -107,7 +107,6 @@
107
107
  };
108
108
 
109
109
  VerticalTabs.propTypes = {
110
- size: _propTypes2.default.string,
111
110
  entries: _propTypes2.default.arrayOf(_propTypes2.default.shape({
112
111
  requiredLine: _propTypes2.default.string.isRequired,
113
112
  optionalLine: _propTypes2.default.string,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Tabs/VerticalTabs.tsx"],"names":["requiredLine","optionalLine","to","disabled","onClick","exact","showNotificationDot","variant","size","entries","VerticalTabs","entry"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,QAAMU,YAAY,GAAG,CAAC;AAAA,IAAA,IAAA;AAAQD,IAAAA;AAAR,GAAD,KAA0C;AAC7D,WAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA;AAAM,MAAA,IAAI,EAAED,IAAI,IAAI;AAApB,KAAA,EACG,OAAO,EAAP,GAAA,CAAcG,KAAD,IAAA,aACZ,KAAA,CAAA,aAAA,CAAA,iBAAA,EAAA;AACE,MAAA,GAAG,EAAEA,KAAK,CADZ,EAAA;AAEE,MAAA,EAAE,EAAEA,KAAK,CAFX,EAAA;AAGE,MAAA,KAAK,EAAEA,KAAK,CAHd,KAAA;AAIE,MAAA,YAAY,EAAEA,KAAK,CAJrB,YAAA;AAKE,MAAA,YAAY,EAAEA,KAAK,CALrB,YAAA;AAME,MAAA,gBAAgB,EAAEA,KAAK,CANzB,gBAAA;AAOE,MAAA,QAAQ,EAAEA,KAAK,CAPjB,QAAA;AAQE,MAAA,mBAAmB,EAAEA,KAAK,CAR5B,mBAAA;AASE,MAAA,IAAI,EATN,IAAA;AAUE,MAAA,OAAO,EAAEA,KAAK,CAVhB,OAAA;AAWE,MAAA,WAAW,EAAE,MAAM;AACjB,YAAIA,KAAK,CAAT,OAAA,EAAmB;AACjBA,UAAAA,KAAK,CAALA,OAAAA;AACD;AACF;AAfH,KAAA,CADD,CADH,CADF;AADF,GAAA;;;AAJEH,IAAAA,I;AACAC,IAAAA,O;AAZAT,MAAAA,Y;AACAC,MAAAA,Y;AAEAC,MAAAA,E;AACAC,MAAAA,Q;AACAC,MAAAA,O;AACAC,MAAAA,K;AACAC,MAAAA,mB;AACAC,MAAAA,O,6BAAU,U,EAAa,U;;;oBAgCzB,Y","sourcesContent":["import * as React from 'react';\nimport Tabs from './Tabs';\nimport TabLink from './TabLink';\nimport { BaseProps } from '../icons';\n\nexport interface VerticalTabEntry {\n requiredLine: string;\n optionalLine?: string;\n optionalLineIcon?: React.FunctionComponent<BaseProps>;\n to: string;\n disabled?: boolean;\n onClick?: () => void;\n exact?: boolean;\n showNotificationDot?: boolean;\n variant?: 'critical' | 'positive';\n}\ninterface VerticalTabsProps {\n size?: string;\n entries: VerticalTabEntry[];\n}\n\nconst VerticalTabs = ({ size, entries }: VerticalTabsProps) => {\n return (\n <Tabs size={size || 'large'}>\n {entries?.map((entry: VerticalTabEntry) => (\n <TabLink\n key={entry.to}\n to={entry.to}\n exact={entry.exact}\n requiredLine={entry.requiredLine}\n optionalLine={entry.optionalLine}\n OptionalLineIcon={entry.optionalLineIcon}\n disabled={entry.disabled}\n showNotificationDot={entry.showNotificationDot}\n size={size}\n variant={entry.variant}\n onLinkClick={() => {\n if (entry.onClick) {\n entry.onClick();\n }\n }}></TabLink>\n ))}\n </Tabs>\n );\n};\n\nexport default VerticalTabs;\n"],"file":"VerticalTabs.js"}
1
+ {"version":3,"sources":["../../../src/Tabs/VerticalTabs.tsx"],"names":["requiredLine","optionalLine","to","disabled","onClick","exact","showNotificationDot","variant","entries","VerticalTabs","size","Size","Large","entry"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,QAAMS,YAAY,GAAG,CAAC;AAAA,IAAA,IAAA;AAAQD,IAAAA;AAAR,GAAD,KAA0C;AAC7D,WAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA;AAAM,MAAA,IAAI,EAAEE,IAAI,IAAIC,YAAKC;AAAzB,KAAA,EACG,OAAO,EAAP,GAAA,CAAcC,KAAD,IAAA,aACZ,KAAA,CAAA,aAAA,CAAA,iBAAA,EAAA;AACE,MAAA,GAAG,EAAEA,KAAK,CADZ,EAAA;AAEE,MAAA,EAAE,EAAEA,KAAK,CAFX,EAAA;AAGE,MAAA,KAAK,EAAEA,KAAK,CAHd,KAAA;AAIE,MAAA,YAAY,EAAEA,KAAK,CAJrB,YAAA;AAKE,MAAA,YAAY,EAAEA,KAAK,CALrB,YAAA;AAME,MAAA,gBAAgB,EAAEA,KAAK,CANzB,gBAAA;AAOE,MAAA,QAAQ,EAAEA,KAAK,CAPjB,QAAA;AAQE,MAAA,mBAAmB,EAAEA,KAAK,CAR5B,mBAAA;AASE,MAAA,IAAI,EATN,IAAA;AAUE,MAAA,OAAO,EAAEA,KAAK,CAVhB,OAAA;AAWE,MAAA,WAAW,EAAE,MAAM;AACjB,YAAIA,KAAK,CAAT,OAAA,EAAmB;AACjBA,UAAAA,KAAK,CAALA,OAAAA;AACD;AACF;AAfH,KAAA,CADD,CADH,CADF;AADF,GAAA;;;AAHEL,IAAAA,O;AAZAR,MAAAA,Y;AACAC,MAAAA,Y;AAEAC,MAAAA,E;AACAC,MAAAA,Q;AACAC,MAAAA,O;AACAC,MAAAA,K;AACAC,MAAAA,mB;AACAC,MAAAA,O,6BAAU,U,EAAa,U;;;oBAgCzB,Y","sourcesContent":["import * as React from 'react';\nimport Tabs from './Tabs';\nimport TabLink from './TabLink';\nimport { BaseProps } from '../icons';\nimport { Size } from '../types';\n\nexport interface VerticalTabEntry {\n requiredLine: string;\n optionalLine?: string;\n optionalLineIcon?: React.FunctionComponent<BaseProps>;\n to: string;\n disabled?: boolean;\n onClick?: () => void;\n exact?: boolean;\n showNotificationDot?: boolean;\n variant?: 'critical' | 'positive';\n}\ninterface VerticalTabsProps {\n size?: Size.Small | Size.Medium | Size.Large;\n entries: VerticalTabEntry[];\n}\n\nconst VerticalTabs = ({ size, entries }: VerticalTabsProps) => {\n return (\n <Tabs size={size ?? Size.Large}>\n {entries?.map((entry: VerticalTabEntry) => (\n <TabLink\n key={entry.to}\n to={entry.to}\n exact={entry.exact}\n requiredLine={entry.requiredLine}\n optionalLine={entry.optionalLine}\n OptionalLineIcon={entry.optionalLineIcon}\n disabled={entry.disabled}\n showNotificationDot={entry.showNotificationDot}\n size={size}\n variant={entry.variant}\n onLinkClick={() => {\n if (entry.onClick) {\n entry.onClick();\n }\n }}></TabLink>\n ))}\n </Tabs>\n );\n};\n\nexport default VerticalTabs;\n"],"file":"VerticalTabs.js"}