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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) 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/Modals/ModalContainer.js +5 -0
  44. package/dist/esm/Modals/ModalContainer.js.map +1 -1
  45. package/dist/esm/NotificationDot/NotificationDot.js +9 -9
  46. package/dist/esm/NotificationDot/NotificationDot.js.map +1 -1
  47. package/dist/esm/NotificationDot/__tests__/NotificationDot.test.js +3 -2
  48. package/dist/esm/NotificationDot/__tests__/NotificationDot.test.js.map +1 -1
  49. package/dist/esm/Table/Table.js +1 -1
  50. package/dist/esm/Table/Table.js.map +1 -1
  51. package/dist/esm/Tabs/HorizontalTabs.js +5 -5
  52. package/dist/esm/Tabs/HorizontalTabs.js.map +1 -1
  53. package/dist/esm/Tabs/TabLink.js +2 -2
  54. package/dist/esm/Tabs/TabLink.js.map +1 -1
  55. package/dist/esm/Tabs/Tabs.js +14 -14
  56. package/dist/esm/Tabs/Tabs.js.map +1 -1
  57. package/dist/esm/Tabs/VerticalTabs.js +2 -2
  58. package/dist/esm/Tabs/VerticalTabs.js.map +1 -1
  59. package/dist/esm/styles/typography.js +9 -8
  60. package/dist/esm/styles/typography.js.map +1 -1
  61. package/dist/esm/types.js +1 -0
  62. package/dist/esm/types.js.map +1 -1
  63. package/dist/js/Banners/Banner.d.ts +2 -1
  64. package/dist/js/Banners/Banner.js +0 -1
  65. package/dist/js/Banners/Banner.js.map +1 -1
  66. package/dist/js/Button/BackButton.d.ts +2 -1
  67. package/dist/js/Button/BackButton.js +5 -4
  68. package/dist/js/Button/BackButton.js.map +1 -1
  69. package/dist/js/Button/__tests__/BackButton.test.js +5 -3
  70. package/dist/js/Button/__tests__/BackButton.test.js.map +1 -1
  71. package/dist/js/Chips/ActionChip.js +4 -2
  72. package/dist/js/Chips/ActionChip.js.map +1 -1
  73. package/dist/js/Chips/ChipInput.js +3 -1
  74. package/dist/js/Chips/ChipInput.js.map +1 -1
  75. package/dist/js/Chips/ChipTypes.d.ts +3 -3
  76. package/dist/js/Chips/FilterChip.js +4 -2
  77. package/dist/js/Chips/FilterChip.js.map +1 -1
  78. package/dist/js/Chips/InputChip.js +4 -2
  79. package/dist/js/Chips/InputChip.js.map +1 -1
  80. package/dist/js/Dropdown/BasicDropdown.d.ts +2 -1
  81. package/dist/js/Dropdown/BasicDropdown.js +2 -3
  82. package/dist/js/Dropdown/BasicDropdown.js.map +1 -1
  83. package/dist/js/Dropdown/ChipDropdownInput.d.ts +0 -3
  84. package/dist/js/Dropdown/ChipDropdownInput.js +4 -2
  85. package/dist/js/Dropdown/ChipDropdownInput.js.map +1 -1
  86. package/dist/js/Dropdown/DropdownFilter.d.ts +2 -1
  87. package/dist/js/Dropdown/DropdownFilter.js +3 -4
  88. package/dist/js/Dropdown/DropdownFilter.js.map +1 -1
  89. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js +3 -1
  90. package/dist/js/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  91. package/dist/js/InputFields/Label.d.ts +2 -1
  92. package/dist/js/InputFields/Label.js +0 -1
  93. package/dist/js/InputFields/Label.js.map +1 -1
  94. package/dist/js/InputFields/PasswordField.d.ts +2 -1
  95. package/dist/js/InputFields/PasswordField.js +0 -1
  96. package/dist/js/InputFields/PasswordField.js.map +1 -1
  97. package/dist/js/InputFields/QuickSearch.d.ts +2 -1
  98. package/dist/js/InputFields/QuickSearch.js +3 -2
  99. package/dist/js/InputFields/QuickSearch.js.map +1 -1
  100. package/dist/js/InputFields/ResponsiveComponentWrapper.d.ts +2 -1
  101. package/dist/js/InputFields/ResponsiveComponentWrapper.js +3 -2
  102. package/dist/js/InputFields/ResponsiveComponentWrapper.js.map +1 -1
  103. package/dist/js/InputFields/SearchBar.d.ts +2 -1
  104. package/dist/js/InputFields/SearchBar.js +0 -1
  105. package/dist/js/InputFields/SearchBar.js.map +1 -1
  106. package/dist/js/InputFields/TextField.d.ts +2 -1
  107. package/dist/js/InputFields/TextField.js +0 -1
  108. package/dist/js/InputFields/TextField.js.map +1 -1
  109. package/dist/js/InputFields/Textarea.d.ts +2 -1
  110. package/dist/js/InputFields/Textarea.js +0 -1
  111. package/dist/js/InputFields/Textarea.js.map +1 -1
  112. package/dist/js/InputFields/__tests__/QuickSearch.test.js +3 -1
  113. package/dist/js/InputFields/__tests__/QuickSearch.test.js.map +1 -1
  114. package/dist/js/InputFields/components/SearchBarInput.d.ts +2 -1
  115. package/dist/js/InputFields/components/SearchBarInput.js +0 -1
  116. package/dist/js/InputFields/components/SearchBarInput.js.map +1 -1
  117. package/dist/js/LoadingIndicator/LoadingIndicator.d.ts +2 -1
  118. package/dist/js/LoadingIndicator/LoadingIndicator.js +5 -4
  119. package/dist/js/LoadingIndicator/LoadingIndicator.js.map +1 -1
  120. package/dist/js/Modals/ModalContainer.js +1 -1
  121. package/dist/js/Modals/ModalContainer.js.map +1 -1
  122. package/dist/js/NotificationDot/NotificationDot.d.ts +2 -1
  123. package/dist/js/NotificationDot/NotificationDot.js +10 -9
  124. package/dist/js/NotificationDot/NotificationDot.js.map +1 -1
  125. package/dist/js/NotificationDot/__tests__/NotificationDot.test.js +4 -2
  126. package/dist/js/NotificationDot/__tests__/NotificationDot.test.js.map +1 -1
  127. package/dist/js/Table/Table.js +1 -1
  128. package/dist/js/Table/Table.js.map +1 -1
  129. package/dist/js/Tabs/HorizontalTabs.d.ts +2 -2
  130. package/dist/js/Tabs/HorizontalTabs.js +3 -2
  131. package/dist/js/Tabs/HorizontalTabs.js.map +1 -1
  132. package/dist/js/Tabs/TabLink.d.ts +2 -1
  133. package/dist/js/Tabs/TabLink.js +3 -2
  134. package/dist/js/Tabs/TabLink.js.map +1 -1
  135. package/dist/js/Tabs/Tabs.d.ts +2 -1
  136. package/dist/js/Tabs/Tabs.js +15 -14
  137. package/dist/js/Tabs/Tabs.js.map +1 -1
  138. package/dist/js/Tabs/VerticalTabs.d.ts +2 -1
  139. package/dist/js/Tabs/VerticalTabs.js +3 -2
  140. package/dist/js/Tabs/VerticalTabs.js.map +1 -1
  141. package/dist/js/styles/typography.d.ts +2 -1
  142. package/dist/js/styles/typography.js +10 -8
  143. package/dist/js/styles/typography.js.map +1 -1
  144. package/dist/js/types.d.ts +1 -0
  145. package/dist/js/types.js +1 -0
  146. package/dist/js/types.js.map +1 -1
  147. package/dist/umd/Banners/Banner.js +0 -1
  148. package/dist/umd/Banners/Banner.js.map +1 -1
  149. package/dist/umd/Button/BackButton.js +7 -8
  150. package/dist/umd/Button/BackButton.js.map +1 -1
  151. package/dist/umd/Button/__tests__/BackButton.test.js +7 -7
  152. package/dist/umd/Button/__tests__/BackButton.test.js.map +1 -1
  153. package/dist/umd/Chips/ActionChip.js +6 -6
  154. package/dist/umd/Chips/ActionChip.js.map +1 -1
  155. package/dist/umd/Chips/ChipInput.js +5 -5
  156. package/dist/umd/Chips/ChipInput.js.map +1 -1
  157. package/dist/umd/Chips/FilterChip.js +6 -6
  158. package/dist/umd/Chips/FilterChip.js.map +1 -1
  159. package/dist/umd/Chips/InputChip.js +6 -6
  160. package/dist/umd/Chips/InputChip.js.map +1 -1
  161. package/dist/umd/Dropdown/BasicDropdown.js +2 -3
  162. package/dist/umd/Dropdown/BasicDropdown.js.map +1 -1
  163. package/dist/umd/Dropdown/ChipDropdownInput.js +6 -6
  164. package/dist/umd/Dropdown/ChipDropdownInput.js.map +1 -1
  165. package/dist/umd/Dropdown/DropdownFilter.js +3 -4
  166. package/dist/umd/Dropdown/DropdownFilter.js.map +1 -1
  167. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js +5 -5
  168. package/dist/umd/GlobalNavigationBar/ExtendedMainMenu.js.map +1 -1
  169. package/dist/umd/InputFields/Label.js +0 -1
  170. package/dist/umd/InputFields/Label.js.map +1 -1
  171. package/dist/umd/InputFields/PasswordField.js +0 -1
  172. package/dist/umd/InputFields/PasswordField.js.map +1 -1
  173. package/dist/umd/InputFields/QuickSearch.js +5 -6
  174. package/dist/umd/InputFields/QuickSearch.js.map +1 -1
  175. package/dist/umd/InputFields/ResponsiveComponentWrapper.js +5 -6
  176. package/dist/umd/InputFields/ResponsiveComponentWrapper.js.map +1 -1
  177. package/dist/umd/InputFields/SearchBar.js +0 -1
  178. package/dist/umd/InputFields/SearchBar.js.map +1 -1
  179. package/dist/umd/InputFields/TextField.js +0 -1
  180. package/dist/umd/InputFields/TextField.js.map +1 -1
  181. package/dist/umd/InputFields/Textarea.js +0 -1
  182. package/dist/umd/InputFields/Textarea.js.map +1 -1
  183. package/dist/umd/InputFields/__tests__/QuickSearch.test.js +5 -5
  184. package/dist/umd/InputFields/__tests__/QuickSearch.test.js.map +1 -1
  185. package/dist/umd/InputFields/components/SearchBarInput.js +0 -1
  186. package/dist/umd/InputFields/components/SearchBarInput.js.map +1 -1
  187. package/dist/umd/LoadingIndicator/LoadingIndicator.js +7 -8
  188. package/dist/umd/LoadingIndicator/LoadingIndicator.js.map +1 -1
  189. package/dist/umd/Modals/ModalContainer.js +5 -0
  190. package/dist/umd/Modals/ModalContainer.js.map +1 -1
  191. package/dist/umd/NotificationDot/NotificationDot.js +12 -13
  192. package/dist/umd/NotificationDot/NotificationDot.js.map +1 -1
  193. package/dist/umd/NotificationDot/__tests__/NotificationDot.test.js +6 -6
  194. package/dist/umd/NotificationDot/__tests__/NotificationDot.test.js.map +1 -1
  195. package/dist/umd/Table/Table.js +1 -1
  196. package/dist/umd/Table/Table.js.map +1 -1
  197. package/dist/umd/Tabs/HorizontalTabs.js +8 -9
  198. package/dist/umd/Tabs/HorizontalTabs.js.map +1 -1
  199. package/dist/umd/Tabs/TabLink.js +5 -6
  200. package/dist/umd/Tabs/TabLink.js.map +1 -1
  201. package/dist/umd/Tabs/Tabs.js +17 -18
  202. package/dist/umd/Tabs/Tabs.js.map +1 -1
  203. package/dist/umd/Tabs/VerticalTabs.js +5 -6
  204. package/dist/umd/Tabs/VerticalTabs.js.map +1 -1
  205. package/dist/umd/styles/typography.js +12 -12
  206. package/dist/umd/styles/typography.js.map +1 -1
  207. package/dist/umd/types.js +1 -0
  208. package/dist/umd/types.js.map +1 -1
  209. 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", "..", "jest-styled-components"], factory);
3
+ define(["react", "@testing-library/react", "../../types", "..", "jest-styled-components"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(require("react"), require("@testing-library/react"), require(".."), require("jest-styled-components"));
5
+ factory(require("react"), require("@testing-library/react"), require("../../types"), require(".."), require("jest-styled-components"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(global.react, global.react, global._, global.jestStyledComponents);
10
+ factory(global.react, global.react, global.types, global._, global.jestStyledComponents);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (_react, _react3, _) {
13
+ })(this, function (_react, _react3, _types, _) {
14
14
  "use strict";
15
15
 
16
16
  var _react2 = _interopRequireDefault(_react);
@@ -35,7 +35,7 @@
35
35
  }
36
36
  }, /*#__PURE__*/_react2.default.createElement(_.QuickSearch, {
37
37
  id: "QuickSearch",
38
- size: 'small',
38
+ size: _types.Size.Small,
39
39
  enterSearch: () => {
40
40
  searchEntered = true;
41
41
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/InputFields/__tests__/QuickSearch.test.tsx"],"names":["describe","it","search","searchEntered","queryAllByTestId","render","width","term","expect","getByTestId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAKAA,EAAAA,QAAQ,CAAA,iBAAA,EAAoB,MAAM;AAChCC,IAAAA,EAAE,CAAA,sBAAA,EAAyB,YAAY;AACrC,UAAIC,MAAM,GAAV,EAAA;AACA,UAAIC,aAAa,GAAjB,KAAA;AACA,YAAM;AAAA,QAAA,WAAA;AAAA,QAAA,WAAA;AAA4BC,QAAAA;AAA5B,UAAiDC,qBAAM,aAC3D,gBAAA,aAAA,CAAA,KAAA,EAAA;AAAK,QAAA,KAAK,EAAE;AAAEC,UAAAA,KAAK,EAAE;AAAT;AAAZ,OAAA,EAAA,aACE,gBAAA,aAAA,CAAA,aAAA,EAAA;AACE,QAAA,EAAE,EADJ,aAAA;AAEE,QAAA,IAAI,EAFN,OAAA;AAGE,QAAA,WAAW,EAAE,MAAM;AACjBH,UAAAA,aAAa,GAAbA,IAAAA;AAJJ,SAAA;AAME,QAAA,YAAY,EAAE,MAAM;AAClBD,UAAAA,MAAM,GAANA,EAAAA;AAPJ,SAAA;AASE,QAAA,aAAa,EAAGK,IAAD,IAAU;AACvBL,UAAAA,MAAM,GAANA,IAAAA;AACD;AAXH,OAAA,CADF,CADqDG,CAAvD;AAiBAG,MAAAA,MAAM,CAACC,WAAW,CAAXA,kBAAW,CAAXA,CAAAA,SAAAA,CAAAA,QAAAA,CAAPD,OAAOC,CAAD,CAAND,CAAAA,UAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAlBD,0BAAkB,CAAZ,CAANA,CArBqC,WAqBrCA,GArBqC,CAuBrC;;AACAA,MAAAA,MAAM,CAACJ,gBAAgB,CAAhBA,aAAgB,CAAhBA,CAAPI,MAAM,CAANA,CAAAA,IAAAA,CAAAA,CAAAA;AACCC,MAAAA,WAAW,CAAZ,0BAAY,CAAXA,EAAD,KAACA;AACDD,MAAAA,MAAM,CAACC,WAAW,CAAlBD,aAAkB,CAAZ,CAANA,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAXA,kBAAW,CAAXA,CAAAA,SAAAA,CAAAA,QAAAA,CAAPD,UAAOC,CAAD,CAAND,CAAAA,UAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAXA,uBAAW,CAAXA,CAAPD,aAAM,CAANA,CAAAA,cAAAA,CAAAA,QAAAA;AA5BFP,KAAE,CAAFA;AADFD,GAAQ,CAARA","sourcesContent":["import React from 'react';\nimport { render } from '@testing-library/react';\nimport 'jest-styled-components';\nimport { QuickSearch } from '..';\n\ndescribe('<QuickSearch />', () => {\n it('Renders quick search', async () => {\n let search = '';\n let searchEntered = false;\n const { queryByText, getByTestId, queryAllByTestId } = render(\n <div style={{ width: '400px' }}>\n <QuickSearch\n id=\"QuickSearch\"\n size={'small'}\n enterSearch={() => {\n searchEntered = true;\n }}\n removeSearch={() => {\n search = '';\n }}\n setSearchTerm={(term) => {\n search = term;\n }}\n />\n </div>,\n );\n expect(getByTestId('QuickSearch_main').classList.contains('small')).toBeTruthy();\n expect(getByTestId('QuickSearch_Searchbutton')).toBeDefined();\n\n // Test click on icon and check that input field shows\n expect(queryAllByTestId('QuickSearch').length).toBe(0);\n (getByTestId('QuickSearch_Searchbutton') as HTMLButtonElement)?.click();\n expect(getByTestId('QuickSearch')).toBeDefined();\n expect(getByTestId('QuickSearch_main').classList.contains('expanded')).toBeTruthy();\n expect(getByTestId('QuickSearch_Clearicon').parentElement).toHaveProperty('hidden');\n });\n});\n"],"file":"QuickSearch.test.js"}
1
+ {"version":3,"sources":["../../../../src/InputFields/__tests__/QuickSearch.test.tsx"],"names":["describe","it","search","searchEntered","queryAllByTestId","render","width","Size","term","expect","getByTestId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAMAA,EAAAA,QAAQ,CAAA,iBAAA,EAAoB,MAAM;AAChCC,IAAAA,EAAE,CAAA,sBAAA,EAAyB,YAAY;AACrC,UAAIC,MAAM,GAAV,EAAA;AACA,UAAIC,aAAa,GAAjB,KAAA;AACA,YAAM;AAAA,QAAA,WAAA;AAAA,QAAA,WAAA;AAA4BC,QAAAA;AAA5B,UAAiDC,qBAAM,aAC3D,gBAAA,aAAA,CAAA,KAAA,EAAA;AAAK,QAAA,KAAK,EAAE;AAAEC,UAAAA,KAAK,EAAE;AAAT;AAAZ,OAAA,EAAA,aACE,gBAAA,aAAA,CAAA,aAAA,EAAA;AACE,QAAA,EAAE,EADJ,aAAA;AAEE,QAAA,IAAI,EAAEC,YAFR,KAAA;AAGE,QAAA,WAAW,EAAE,MAAM;AACjBJ,UAAAA,aAAa,GAAbA,IAAAA;AAJJ,SAAA;AAME,QAAA,YAAY,EAAE,MAAM;AAClBD,UAAAA,MAAM,GAANA,EAAAA;AAPJ,SAAA;AASE,QAAA,aAAa,EAAGM,IAAD,IAAU;AACvBN,UAAAA,MAAM,GAANA,IAAAA;AACD;AAXH,OAAA,CADF,CADqDG,CAAvD;AAiBAI,MAAAA,MAAM,CAACC,WAAW,CAAXA,kBAAW,CAAXA,CAAAA,SAAAA,CAAAA,QAAAA,CAAPD,OAAOC,CAAD,CAAND,CAAAA,UAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAlBD,0BAAkB,CAAZ,CAANA,CArBqC,WAqBrCA,GArBqC,CAuBrC;;AACAA,MAAAA,MAAM,CAACL,gBAAgB,CAAhBA,aAAgB,CAAhBA,CAAPK,MAAM,CAANA,CAAAA,IAAAA,CAAAA,CAAAA;AACCC,MAAAA,WAAW,CAAZ,0BAAY,CAAXA,EAAD,KAACA;AACDD,MAAAA,MAAM,CAACC,WAAW,CAAlBD,aAAkB,CAAZ,CAANA,CAAAA,WAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAXA,kBAAW,CAAXA,CAAAA,SAAAA,CAAAA,QAAAA,CAAPD,UAAOC,CAAD,CAAND,CAAAA,UAAAA;AACAA,MAAAA,MAAM,CAACC,WAAW,CAAXA,uBAAW,CAAXA,CAAPD,aAAM,CAANA,CAAAA,cAAAA,CAAAA,QAAAA;AA5BFR,KAAE,CAAFA;AADFD,GAAQ,CAARA","sourcesContent":["import React from 'react';\nimport { render } from '@testing-library/react';\nimport {Size} from '../../types';\nimport 'jest-styled-components';\nimport { QuickSearch } from '..';\n\ndescribe('<QuickSearch />', () => {\n it('Renders quick search', async () => {\n let search = '';\n let searchEntered = false;\n const { queryByText, getByTestId, queryAllByTestId } = render(\n <div style={{ width: '400px' }}>\n <QuickSearch\n id=\"QuickSearch\"\n size={Size.Small}\n enterSearch={() => {\n searchEntered = true;\n }}\n removeSearch={() => {\n search = '';\n }}\n setSearchTerm={(term) => {\n search = term;\n }}\n />\n </div>,\n );\n expect(getByTestId('QuickSearch_main').classList.contains('small')).toBeTruthy();\n expect(getByTestId('QuickSearch_Searchbutton')).toBeDefined();\n\n // Test click on icon and check that input field shows\n expect(queryAllByTestId('QuickSearch').length).toBe(0);\n (getByTestId('QuickSearch_Searchbutton') as HTMLButtonElement)?.click();\n expect(getByTestId('QuickSearch')).toBeDefined();\n expect(getByTestId('QuickSearch_main').classList.contains('expanded')).toBeTruthy();\n expect(getByTestId('QuickSearch_Clearicon').parentElement).toHaveProperty('hidden');\n });\n});\n"],"file":"QuickSearch.test.js"}
@@ -191,7 +191,6 @@
191
191
  placeholder: _propTypes2.default.string,
192
192
  disabled: _propTypes2.default.bool,
193
193
  onKeyDown: _propTypes2.default.func,
194
- size: _propTypes2.default.oneOf(['small', 'medium']),
195
194
  setTabbedHere: _propTypes2.default.func.isRequired,
196
195
  onBlur: _propTypes2.default.func
197
196
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/InputFields/components/SearchBarInput.tsx"],"names":["Search","type","ComponentSStyling","ComponentTextStyle","COLORS","BigSearch","styled","ComponentMStyling","BREAKPOINTS","MEDIUM","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","size","setTabbedHere","onBlur","SearchBarInput","isPressingEnter","e"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../../styles/index';\nimport { ComponentMStyling, ComponentSStyling } from '../../styles/typography';\n\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\n appearance: none;\n width: calc(100% - 96px);\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n /* To prevent browser putting its own cross inside the search bar */\n ::-ms-clear {\n display: none;\n width: 0;\n height: 0;\n }\n ::-ms-reveal {\n display: none;\n width: 0;\n height: 0;\n }\n ::-webkit-search-decoration,\n ::-webkit-search-cancel-button,\n ::-webkit-search-results-button,\n ::-webkit-search-results-decoration {\n display: none;\n }\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_500)}\n }\n\n &:focus {\n outline-width: 0;\n }\n`;\n\nexport const BigSearch = styled(Search)`\n height: 32px;\n border-width: 0;\n margin-left: 50px;\n outline: none;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n ${BREAKPOINTS.MEDIUM} {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.small {\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.medium {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &:disabled {\n background: transparent;\n border: none;\n }\n`;\n\ntype SearchBarInputProps = {\n id: string;\n searchTerm?: string;\n setSearchTerm: (term: string) => void;\n enterSearch: (e: any) => void;\n placeholder?: string;\n disabled?: boolean;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n size?: 'small' | 'medium';\n setTabbedHere: (tabbedHere: boolean) => void;\n onBlur?: (e: any) => void;\n};\n\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, setTabbedHere, onBlur } = props;\n const isPressingEnter = (e: any) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n e.stopPropagation();\n return true;\n }\n return false;\n };\n\n return (\n <BigSearch\n placeholder={disabled ? '' : placeholder}\n id={id}\n data-testid={id}\n className={size ? size : ''}\n tabIndex={0}\n disabled={disabled}\n onChange={(e: any) => setSearchTerm(e.target.value)}\n value={searchTerm}\n ref={ref}\n onBlur={(e) => (onBlur ? onBlur(e) : setTabbedHere(false))}\n onKeyDown={onKeyDown}\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\n />\n );\n});\n\nexport default SearchBarInput;\n"],"file":"SearchBarInput.js"}
1
+ {"version":3,"sources":["../../../../src/InputFields/components/SearchBarInput.tsx"],"names":["Search","type","ComponentSStyling","ComponentTextStyle","COLORS","BigSearch","styled","ComponentMStyling","BREAKPOINTS","MEDIUM","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","setTabbedHere","onBlur","SearchBarInput","isPressingEnter","e","size"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../../styles/index';\nimport { Size } from '../../types';\nimport { ComponentMStyling, ComponentSStyling } from '../../styles/typography';\n\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\n appearance: none;\n width: calc(100% - 96px);\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n /* To prevent browser putting its own cross inside the search bar */\n ::-ms-clear {\n display: none;\n width: 0;\n height: 0;\n }\n ::-ms-reveal {\n display: none;\n width: 0;\n height: 0;\n }\n ::-webkit-search-decoration,\n ::-webkit-search-cancel-button,\n ::-webkit-search-results-button,\n ::-webkit-search-results-decoration {\n display: none;\n }\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_500)}\n }\n\n &:focus {\n outline-width: 0;\n }\n`;\n\nexport const BigSearch = styled(Search)`\n height: 32px;\n border-width: 0;\n margin-left: 50px;\n outline: none;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n ${BREAKPOINTS.MEDIUM} {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.small {\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.medium {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &:disabled {\n background: transparent;\n border: none;\n }\n`;\n\ntype SearchBarInputProps = {\n id: string;\n searchTerm?: string;\n setSearchTerm: (term: string) => void;\n enterSearch: (e: any) => void;\n placeholder?: string;\n disabled?: boolean;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n size?: Size.Small | Size.Medium;\n setTabbedHere: (tabbedHere: boolean) => void;\n onBlur?: (e: any) => void;\n};\n\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, setTabbedHere, onBlur } = props;\n const isPressingEnter = (e: any) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n e.stopPropagation();\n return true;\n }\n return false;\n };\n\n return (\n <BigSearch\n placeholder={disabled ? '' : placeholder}\n id={id}\n data-testid={id}\n className={size ? size : ''}\n tabIndex={0}\n disabled={disabled}\n onChange={(e: any) => setSearchTerm(e.target.value)}\n value={searchTerm}\n ref={ref}\n onBlur={(e) => (onBlur ? onBlur(e) : setTabbedHere(false))}\n onKeyDown={onKeyDown}\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\n />\n );\n});\n\nexport default SearchBarInput;\n"],"file":"SearchBarInput.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", "../icons/systemicons/SystemIcons"], factory);
3
+ define(["exports", "prop-types", "react", "styled-components", "../styles", "../types", "../icons/systemicons/SystemIcons"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../styles"), require("../icons/systemicons/SystemIcons"));
5
+ factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../styles"), require("../types"), require("../icons/systemicons/SystemIcons"));
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.SystemIcons);
10
+ factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.styles, global.types, global.SystemIcons);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _propTypes, _react, _styledComponents, _styles, _SystemIcons) {
13
+ })(this, function (exports, _propTypes, _react, _styledComponents, _styles, _types, _SystemIcons) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
@@ -103,16 +103,16 @@
103
103
  `;
104
104
 
105
105
  const LoadingIndicator = ({
106
- size = 'medium',
106
+ size = _types.Size.Medium,
107
107
  color = _styles.COLORS.primary
108
108
  }) => {
109
109
  switch (size) {
110
- case 'medium':
110
+ case _types.Size.Medium:
111
111
  return /*#__PURE__*/React.createElement(LoadingWrapper, null, /*#__PURE__*/React.createElement(_SystemIcons.LoadingMedium, {
112
112
  color: color
113
113
  }));
114
114
 
115
- case 'small':
115
+ case _types.Size.Small:
116
116
  return /*#__PURE__*/React.createElement(LoadingWrapper, null, /*#__PURE__*/React.createElement(_SystemIcons.LoadingSmall, {
117
117
  color: color
118
118
  }));
@@ -125,7 +125,6 @@
125
125
  };
126
126
 
127
127
  LoadingIndicator.propTypes = {
128
- size: _propTypes2.default.oneOf(['small', 'medium']),
129
128
  color: _propTypes2.default.string
130
129
  };
131
130
  exports.default = LoadingIndicator;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/LoadingIndicator/LoadingIndicator.tsx"],"names":["LoadingWrapper","styled","div","size","color","LoadingIndicator","COLORS","primary"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,QAAMA,cAAc,GAAGC,2BAAOC,GAAI;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AApBA,CAAA;;AA4BA,QAAMG,gBAAgB,GAAG,CAAC;AAAEF,IAAAA,IAAI,GAAN,QAAA;AAAmBC,IAAAA,KAAK,GAAGE,eAAOC;AAAlC,GAAD,KAAwE;AAC/F,YAAA,IAAA;AACE,WAAA,QAAA;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,0BAAA,EAAA;AAAe,UAAA,KAAK,EAAEH;AAAtB,SAAA,CADF,CADF;;AAKF,WAAA,OAAA;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,yBAAA,EAAA;AAAc,UAAA,KAAK,EAAEA;AAArB,SAAA,CADF,CADF;;AAKF;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,0BAAA,EAAA;AAAe,UAAA,KAAK,EAAEA;AAAtB,SAAA,CADF,CADF;AAdJ;AADF,GAAA;;;AAJED,IAAAA,I,6BAAO,O,EAAU,Q;AACjBC,IAAAA,K;;oBA0BF,gB","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { COLORS } from '../styles';\nimport { LoadingMedium, LoadingSmall } from '../icons/systemicons/SystemIcons';\n\nconst LoadingWrapper = styled.div`\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n\n svg {\n animation-name: spin;\n animation-duration: 1s;\n animation-iteration-count: infinite;\n transform-origin: 50% 50%;\n\n @keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n }\n`;\n\ntype LoadingIndicatorProps = {\n size?: 'small' | 'medium';\n color?: string;\n};\n\nconst LoadingIndicator = ({ size = 'medium', color = COLORS.primary }: LoadingIndicatorProps) => {\n switch (size) {\n case 'medium':\n return (\n <LoadingWrapper>\n <LoadingMedium color={color} />\n </LoadingWrapper>\n );\n case 'small':\n return (\n <LoadingWrapper>\n <LoadingSmall color={color} />\n </LoadingWrapper>\n );\n default:\n return (\n <LoadingWrapper>\n <LoadingMedium color={color} />\n </LoadingWrapper>\n );\n }\n};\n\nexport default LoadingIndicator;\n"],"file":"LoadingIndicator.js"}
1
+ {"version":3,"sources":["../../../src/LoadingIndicator/LoadingIndicator.tsx"],"names":["LoadingWrapper","styled","div","color","LoadingIndicator","size","Size","COLORS","primary"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,QAAMA,cAAc,GAAGC,2BAAOC,GAAI;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AApBA,CAAA;;AA4BA,QAAME,gBAAgB,GAAG,CAAC;AAAEC,IAAAA,IAAI,GAAGC,YAAT,MAAA;AAAsBH,IAAAA,KAAK,GAAGI,eAAOC;AAArC,GAAD,KAA2E;AAClG,YAAA,IAAA;AACE,WAAKF,YAAL,MAAA;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,0BAAA,EAAA;AAAe,UAAA,KAAK,EAAEH;AAAtB,SAAA,CADF,CADF;;AAKF,WAAKG,YAAL,KAAA;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,yBAAA,EAAA;AAAc,UAAA,KAAK,EAAEH;AAArB,SAAA,CADF,CADF;;AAKF;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,0BAAA,EAAA;AAAe,UAAA,KAAK,EAAEA;AAAtB,SAAA,CADF,CADF;AAdJ;AADF,GAAA;;;AAHEA,IAAAA,K;;oBA0BF,gB","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { COLORS } from '../styles';\nimport { Size } from '../types';\nimport { LoadingMedium, LoadingSmall } from '../icons/systemicons/SystemIcons';\n\nconst LoadingWrapper = styled.div`\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n\n svg {\n animation-name: spin;\n animation-duration: 1s;\n animation-iteration-count: infinite;\n transform-origin: 50% 50%;\n\n @keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n }\n`;\n\ntype LoadingIndicatorProps = {\n size?: Size.Small | Size.Medium;\n color?: string;\n};\n\nconst LoadingIndicator = ({ size = Size.Medium, color = COLORS.primary }: LoadingIndicatorProps) => {\n switch (size) {\n case Size.Medium:\n return (\n <LoadingWrapper>\n <LoadingMedium color={color} />\n </LoadingWrapper>\n );\n case Size.Small:\n return (\n <LoadingWrapper>\n <LoadingSmall color={color} />\n </LoadingWrapper>\n );\n default:\n return (\n <LoadingWrapper>\n <LoadingMedium color={color} />\n </LoadingWrapper>\n );\n }\n};\n\nexport default LoadingIndicator;\n"],"file":"LoadingIndicator.js"}
@@ -182,6 +182,11 @@
182
182
  transform: translate(-50%, -50%) scale(1.1, 1.1);
183
183
  transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);
184
184
  }
185
+
186
+ .ReactModal__Body--open,
187
+ .ReactModal__Html--open {
188
+ overflow: hidden;
189
+ }
185
190
  `;
186
191
 
187
192
  class ModalContainer extends React.Component {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Modals/ModalContainer.tsx"],"names":["ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOWS","BOXSHADOW_L3","modalTransitions","Z_INDEXES","backdrop","modal","id","showModal","closeModal","children","modalHeight","modalWidth","modalOverflow","padding","minWidth","maxWidth","ModalContainer","React","componentDidMount","ReactModal","document","head","style","render","sizes","stylesConfiguration","styles"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport ReactModal from 'react-modal';\nimport { BOXSHADOWS } from '../styles';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\nconst ModalContainerStyles = {\n content: {\n top: '50%',\n left: '50%',\n right: 'auto',\n bottom: 'auto',\n marginRight: '-50%',\n width: '640px',\n height: '320px',\n borderRadius: '8px',\n boxSizing: 'border-box' as any,\n margin: 0,\n overflow: 'auto',\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\n },\n};\n\n//override modal classes to define the animations\nconst modalTransitions = `\n.ReactModal__Overlay {\n opacity: 0;\n z-index: ${Z_INDEXES.backdrop};\n}\n\n.ReactModal__Overlay--after-open {\n opacity: 1;\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Content{\n z-index: ${Z_INDEXES.modal};\n opacity:0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n}\n\n.ReactModal__Content--after-open{\n opacity: 1;\n transform: translate(-50%, -50%) scale(1.0, 1.0);\n transition: transform 150ms ease-in-out, opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Overlay--before-close {\n opacity: 0;\n transition: opacity 120ms linear;\n}\n\n.ReactModal__Content--before-close{\n opacity: 0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\n}\n`;\n\ntype ModalContainerProps = {\n id?: string;\n showModal: boolean;\n closeModal: () => void;\n children: any;\n modalHeight?: any;\n modalWidth?: any;\n modalOverflow?: string;\n padding?: string;\n minWidth?: string;\n maxWidth?: string;\n};\n\ntype ModalContainerState = {};\n\nclass ModalContainer extends React.Component<ModalContainerProps, ModalContainerState> {\n componentDidMount() {\n if (ReactModal.defaultStyles.overlay) {\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\n }\n\n //append style node to override modal transition classes\n if (!document.querySelector('[modal-custom-styling=\"active\"]')) {\n const head = document.head || document.getElementsByTagName('head')[0];\n const style = document.createElement('style');\n style.setAttribute('modal-custom-styling', 'active');\n head.appendChild(style);\n style.appendChild(document.createTextNode(modalTransitions));\n }\n }\n\n GetSize = (modalHeight: string = 'auto', modalWidth: string = 'auto') => ({ height: modalHeight, width: modalWidth });\n GetOverflow = (modalOverflow: string = 'visible') => modalOverflow;\n render() {\n const { id, showModal, closeModal, children, modalHeight, modalWidth, modalOverflow, padding, minWidth = '', maxWidth = '' } = this.props;\n const sizes = this.GetSize(modalHeight, modalWidth);\n const { height, width } = sizes;\n const overflow = this.GetOverflow(modalOverflow);\n const stylesConfiguration = Object.assign({ ...ModalContainerStyles.content }, { height, width, padding, overflow, minWidth, maxWidth });\n const styles = { content: stylesConfiguration };\n\n return (\n <ReactModal id={id} isOpen={showModal} closeTimeoutMS={120} onRequestClose={() => closeModal()} style={styles} appElement={document.getElementById('root') || ''}>\n {children}\n </ReactModal>\n );\n }\n}\n\nexport default ModalContainer;\n"],"file":"ModalContainer.js"}
1
+ {"version":3,"sources":["../../../src/Modals/ModalContainer.tsx"],"names":["ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOWS","BOXSHADOW_L3","modalTransitions","Z_INDEXES","backdrop","modal","id","showModal","closeModal","children","modalHeight","modalWidth","modalOverflow","padding","minWidth","maxWidth","ModalContainer","React","componentDidMount","ReactModal","document","head","style","render","sizes","stylesConfiguration","styles"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport ReactModal from 'react-modal';\nimport { BOXSHADOWS } from '../styles';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\nconst ModalContainerStyles = {\n content: {\n top: '50%',\n left: '50%',\n right: 'auto',\n bottom: 'auto',\n marginRight: '-50%',\n width: '640px',\n height: '320px',\n borderRadius: '8px',\n boxSizing: 'border-box' as any,\n margin: 0,\n overflow: 'auto',\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\n },\n};\n\n//override modal classes to define the animations\nconst modalTransitions = `\n.ReactModal__Overlay {\n opacity: 0;\n z-index: ${Z_INDEXES.backdrop};\n}\n\n.ReactModal__Overlay--after-open {\n opacity: 1;\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Content{\n z-index: ${Z_INDEXES.modal};\n opacity:0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n}\n\n.ReactModal__Content--after-open{\n opacity: 1;\n transform: translate(-50%, -50%) scale(1.0, 1.0);\n transition: transform 150ms ease-in-out, opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Overlay--before-close {\n opacity: 0;\n transition: opacity 120ms linear;\n}\n\n.ReactModal__Content--before-close{\n opacity: 0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\n}\n\n.ReactModal__Body--open,\n.ReactModal__Html--open {\n overflow: hidden;\n}\n`;\n\ntype ModalContainerProps = {\n id?: string;\n showModal: boolean;\n closeModal: () => void;\n children: any;\n modalHeight?: any;\n modalWidth?: any;\n modalOverflow?: string;\n padding?: string;\n minWidth?: string;\n maxWidth?: string;\n};\n\ntype ModalContainerState = {};\n\nclass ModalContainer extends React.Component<ModalContainerProps, ModalContainerState> {\n componentDidMount() {\n if (ReactModal.defaultStyles.overlay) {\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\n }\n\n //append style node to override modal transition classes\n if (!document.querySelector('[modal-custom-styling=\"active\"]')) {\n const head = document.head || document.getElementsByTagName('head')[0];\n const style = document.createElement('style');\n style.setAttribute('modal-custom-styling', 'active');\n head.appendChild(style);\n style.appendChild(document.createTextNode(modalTransitions));\n }\n }\n\n GetSize = (modalHeight: string = 'auto', modalWidth: string = 'auto') => ({ height: modalHeight, width: modalWidth });\n GetOverflow = (modalOverflow: string = 'visible') => modalOverflow;\n render() {\n const { id, showModal, closeModal, children, modalHeight, modalWidth, modalOverflow, padding, minWidth = '', maxWidth = '' } = this.props;\n const sizes = this.GetSize(modalHeight, modalWidth);\n const { height, width } = sizes;\n const overflow = this.GetOverflow(modalOverflow);\n const stylesConfiguration = Object.assign({ ...ModalContainerStyles.content }, { height, width, padding, overflow, minWidth, maxWidth });\n const styles = { content: stylesConfiguration };\n\n return (\n <ReactModal id={id} isOpen={showModal} closeTimeoutMS={120} onRequestClose={() => closeModal()} style={styles} appElement={document.getElementById('root') || ''}>\n {children}\n </ReactModal>\n );\n }\n}\n\nexport default ModalContainer;\n"],"file":"ModalContainer.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"), require(".."));
5
+ factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../types"), require(".."));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.propTypes, global.react, global.styledComponents, global._);
10
+ factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.types, global._);
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", {
@@ -80,22 +80,22 @@
80
80
  }
81
81
 
82
82
  const ContentWrapper = _styledComponents2.default.div`
83
- width: ${props => props.size === 'small' ? '16px' : props.size === 'large' ? '24px' : '20px'};
84
- height: ${props => props.size === 'small' ? '16px' : props.size === 'large' ? '24px' : '20px'};
85
- padding: ${props => props.size === 'small' ? '3px' : props.size === 'large' ? '4px' : '4px'};
83
+ width: ${props => props.size === _types.Size.Small ? '16px' : props.size === _types.Size.Large ? '24px' : '20px'};
84
+ height: ${props => props.size === _types.Size.Small ? '16px' : props.size === _types.Size.Large ? '24px' : '20px'};
85
+ padding: ${props => props.size === _types.Size.Small ? '3px' : props.size === _types.Size.Large ? '4px' : '4px'};
86
86
  box-sizing: border-box;
87
87
  `;
88
88
  const Content = _styledComponents2.default.div`
89
89
  background-color: ${props => props.variant === 'positive' ? _.COLORS.correct_500 : _.COLORS.critical_500};
90
- height: ${props => props.size === 'small' ? '10px' : props.size === 'large' ? '16px' : '12px'};
91
- width: ${props => props.size === 'small' ? '10px' : props.size === 'large' ? '16px' : '12px'};
92
- border-radius: ${props => props.size === 'small' ? '10px' : props.size === 'large' ? '16px' : '12px'};
93
- border: ${props => props.size === 'small' ? '2px solid ' + _.COLORS.white : props.size === 'large' ? '3px solid ' + _.COLORS.white : '2px solid ' + _.COLORS.white};
90
+ height: ${props => props.size === _types.Size.Small ? '10px' : props.size === _types.Size.Large ? '16px' : '12px'};
91
+ width: ${props => props.size === _types.Size.Small ? '10px' : props.size === _types.Size.Large ? '16px' : '12px'};
92
+ border-radius: ${props => props.size === _types.Size.Small ? '10px' : props.size === _types.Size.Large ? '16px' : '12px'};
93
+ border: ${props => props.size === _types.Size.Small ? '2px solid ' + _.COLORS.white : props.size === _types.Size.Large ? '3px solid ' + _.COLORS.white : '2px solid ' + _.COLORS.white};
94
94
  box-sizing: border-box;
95
95
  `;
96
96
 
97
97
  const NotificationDot = ({
98
- size = 'medium',
98
+ size = _types.Size.Medium,
99
99
  variant,
100
100
  testId
101
101
  }) => {
@@ -110,7 +110,6 @@
110
110
  };
111
111
 
112
112
  NotificationDot.propTypes = {
113
- size: _propTypes2.default.string,
114
113
  variant: _propTypes2.default.oneOf(['critical', 'positive']).isRequired,
115
114
  testId: _propTypes2.default.string
116
115
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/NotificationDot/NotificationDot.tsx"],"names":["size","variant","testId","ContentWrapper","styled","div","props","Content","COLORS","critical_500","white","NotificationDot"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,QAAMG,cAAc,GAAGC,2BAAOC,GAAuB;AACrD,WAAYC,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAmCA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAkC,MAAQ;AACnG,YAAaA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAmCA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAkC,MAAQ;AACpG,aAAcA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,KAAAA,GAAkCA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,KAAAA,GAAiC,KAAO;AAClG;AAJA,CAAA;AAOA,QAAMC,OAAO,GAAGH,2BAAOC,GAAuB;AAC9C,sBAAuBC,KAAD,IAAWA,KAAK,CAALA,OAAAA,KAAAA,UAAAA,GAA+BE,SAA/BF,WAAAA,GAAoDE,SAAOC,YAAa;AACzG,YAAaH,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAmCA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAkC,MAAQ;AACpG,WAAYA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAmCA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAkC,MAAQ;AACnG,mBAAoBA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAmCA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAAA,MAAAA,GAAkC,MAAQ;AAC3G,YAAaA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAyB,eAAeE,SAAxCF,KAAAA,GAAwDA,KAAK,CAALA,IAAAA,KAAAA,OAAAA,GAAyB,eAAeE,SAAxCF,KAAAA,GAAuD,eAAeE,SAAOE,KAAO;AACnK;AANA,CAAA;;AASA,QAAMC,eAA2D,GAAG,CAAC;AAACX,IAAAA,IAAI,GAAL,QAAA;AAAA,IAAA,OAAA;AAA2BE,IAAAA;AAA3B,GAAD,KAAwC;AAC1G,WAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA;AAAgB,MAAA,IAAI,EAApB,IAAA;AAA4B,MAAA,OAAO,EAAED;AAArC,KAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,OAAA,EAAA;AAAS,MAAA,IAAI,EAAb,IAAA;AAAqB,MAAA,OAAO,EAA5B,OAAA;AAAuC,qBAAaC;AAApD,KAAA,CADF,CADF;AADF,GAAA;;;AArBEF,IAAAA,I;AACAC,IAAAA,O,6BAAS,U,EAAa,U;AACtBC,IAAAA,M;;oBA2BF,e","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {COLORS} from '..';\n\nexport interface NotificationProps {\n size?: string;\n variant: 'critical' | 'positive';\n testId?: string;\n}\n\nconst ContentWrapper = styled.div<NotificationProps>`\n width: ${(props) => props.size === 'small' ? '16px' : (props.size === 'large' ? '24px' : '20px')};\n height: ${(props) => props.size === 'small' ? '16px' : (props.size === 'large' ? '24px' : '20px')};\n padding: ${(props) => props.size === 'small' ? '3px' : (props.size === 'large' ? '4px' : '4px')};\n box-sizing: border-box;\n`;\n\nconst Content = styled.div<NotificationProps>`\n background-color: ${(props) => props.variant === 'positive' ? COLORS.correct_500 : COLORS.critical_500};\n height: ${(props) => props.size === 'small' ? '10px' : (props.size === 'large' ? '16px' : '12px')};\n width: ${(props) => props.size === 'small' ? '10px' : (props.size === 'large' ? '16px' : '12px')};\n border-radius: ${(props) => props.size === 'small' ? '10px' : (props.size === 'large' ? '16px' : '12px')};\n border: ${(props) => props.size === 'small' ? '2px solid ' + COLORS.white : (props.size === 'large' ? '3px solid ' + COLORS.white : '2px solid ' + COLORS.white)};\n box-sizing: border-box;\n`;\n\nconst NotificationDot: React.FunctionComponent<NotificationProps> = ({size = 'medium', variant, testId}) => {\n return (\n <ContentWrapper size={size} variant={variant}>\n <Content size={size} variant={variant} data-testid={testId}/>\n </ContentWrapper>\n );\n};\n\nexport default NotificationDot;\n"],"file":"NotificationDot.js"}
1
+ {"version":3,"sources":["../../../src/NotificationDot/NotificationDot.tsx"],"names":["variant","testId","ContentWrapper","styled","div","props","Size","Content","COLORS","critical_500","white","NotificationDot","size"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,QAAME,cAAc,GAAGC,2BAAOC,GAAuB;AACrD,WAAYC,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAsCA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAqC,MAAQ;AACzG,YAAaA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAsCA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAqC,MAAQ;AAC1G,aAAcA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,KAAAA,GAAqCA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,KAAAA,GAAoC,KAAO;AACxG;AAJA,CAAA;AAOA,QAAME,OAAO,GAAGJ,2BAAOC,GAAuB;AAC9C,sBAAuBC,KAAD,IAAWA,KAAK,CAALA,OAAAA,KAAAA,UAAAA,GAA+BG,SAA/BH,WAAAA,GAAoDG,SAAOC,YAAa;AACzG,YAAaJ,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAsCA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAqC,MAAQ;AAC1G,WAAYA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAsCA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAqC,MAAQ;AACzG,mBAAoBA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAsCA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAAAA,MAAAA,GAAqC,MAAQ;AACjH,YAAaA,KAAD,IAAWA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAA4B,eAAeG,SAA3CH,KAAAA,GAA2DA,KAAK,CAALA,IAAAA,KAAeC,YAAfD,KAAAA,GAA4B,eAAeG,SAA3CH,KAAAA,GAA0D,eAAeG,SAAOE,KAAO;AACzK;AANA,CAAA;;AASA,QAAMC,eAA2D,GAAG,CAAC;AAACC,IAAAA,IAAI,GAAGN,YAAR,MAAA;AAAA,IAAA,OAAA;AAA8BL,IAAAA;AAA9B,GAAD,KAA2C;AAC7G,WAAA,aACE,KAAA,CAAA,aAAA,CAAA,cAAA,EAAA;AAAgB,MAAA,IAAI,EAApB,IAAA;AAA4B,MAAA,OAAO,EAAED;AAArC,KAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,OAAA,EAAA;AAAS,MAAA,IAAI,EAAb,IAAA;AAAqB,MAAA,OAAO,EAA5B,OAAA;AAAuC,qBAAaC;AAApD,KAAA,CADF,CADF;AADF,GAAA;;;AApBED,IAAAA,O,6BAAS,U,EAAa,U;AACtBC,IAAAA,M;;oBA2BF,e","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { Size } from '../types';\nimport {COLORS} from '..';\n\nexport interface NotificationProps {\n size?: Size.Small | Size.Medium | Size.Large;\n variant: 'critical' | 'positive';\n testId?: string;\n}\n\nconst ContentWrapper = styled.div<NotificationProps>`\n width: ${(props) => props.size === Size.Small ? '16px' : (props.size === Size.Large ? '24px' : '20px')};\n height: ${(props) => props.size === Size.Small ? '16px' : (props.size === Size.Large ? '24px' : '20px')};\n padding: ${(props) => props.size === Size.Small ? '3px' : (props.size === Size.Large ? '4px' : '4px')};\n box-sizing: border-box;\n`;\n\nconst Content = styled.div<NotificationProps>`\n background-color: ${(props) => props.variant === 'positive' ? COLORS.correct_500 : COLORS.critical_500};\n height: ${(props) => props.size === Size.Small ? '10px' : (props.size === Size.Large ? '16px' : '12px')};\n width: ${(props) => props.size === Size.Small ? '10px' : (props.size === Size.Large ? '16px' : '12px')};\n border-radius: ${(props) => props.size === Size.Small ? '10px' : (props.size === Size.Large ? '16px' : '12px')};\n border: ${(props) => props.size === Size.Small ? '2px solid ' + COLORS.white : (props.size === Size.Large ? '3px solid ' + COLORS.white : '2px solid ' + COLORS.white)};\n box-sizing: border-box;\n`;\n\nconst NotificationDot: React.FunctionComponent<NotificationProps> = ({size = Size.Medium, variant, testId}) => {\n return (\n <ContentWrapper size={size} variant={variant}>\n <Content size={size} variant={variant} data-testid={testId}/>\n </ContentWrapper>\n );\n};\n\nexport default NotificationDot;\n"],"file":"NotificationDot.js"}
@@ -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,