@laerdal/life-react-components 6.0.0-dev.20.full → 6.0.0-dev.21.full.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 (54) hide show
  1. package/dist/Card/HorizontalCard/__tests__/VerticalCard.test.tsx +3 -3
  2. package/dist/Card/VerticalCard/Card.cjs +47 -11
  3. package/dist/Card/VerticalCard/Card.cjs.map +1 -1
  4. package/dist/Card/VerticalCard/Card.d.ts +1 -0
  5. package/dist/Card/VerticalCard/Card.js +47 -11
  6. package/dist/Card/VerticalCard/Card.js.map +1 -1
  7. package/dist/Card/VerticalCard/CardBottomSection.cjs +6 -0
  8. package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
  9. package/dist/Card/VerticalCard/CardBottomSection.js +6 -0
  10. package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
  11. package/dist/Card/VerticalCard/CardMiddleSection.cjs +15 -11
  12. package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
  13. package/dist/Card/VerticalCard/CardMiddleSection.d.ts +5 -0
  14. package/dist/Card/VerticalCard/CardMiddleSection.js +15 -11
  15. package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
  16. package/dist/Card/VerticalCard/CardTopSection.cjs +3 -1
  17. package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -1
  18. package/dist/Card/VerticalCard/CardTopSection.js +3 -1
  19. package/dist/Card/VerticalCard/CardTopSection.js.map +1 -1
  20. package/dist/Card/__tests__/Card.test.tsx +3 -3
  21. package/dist/Chips/FilterChip.cjs +1 -0
  22. package/dist/Chips/FilterChip.cjs.map +1 -1
  23. package/dist/Chips/FilterChip.js +1 -0
  24. package/dist/Chips/FilterChip.js.map +1 -1
  25. package/dist/HyperLink/HyperLink.cjs +1 -1
  26. package/dist/HyperLink/HyperLink.cjs.map +1 -1
  27. package/dist/HyperLink/HyperLink.js +1 -1
  28. package/dist/HyperLink/HyperLink.js.map +1 -1
  29. package/dist/Paginator/Paginator.cjs +17 -13
  30. package/dist/Paginator/Paginator.cjs.map +1 -1
  31. package/dist/Paginator/Paginator.d.ts +1 -5
  32. package/dist/Paginator/Paginator.js +17 -13
  33. package/dist/Paginator/Paginator.js.map +1 -1
  34. package/dist/Paginator/__tests__/Paginator.test.tsx +6 -12
  35. package/dist/test-utils.cjs +7 -1
  36. package/dist/test-utils.cjs.map +1 -1
  37. package/dist/test-utils.js +7 -1
  38. package/dist/test-utils.js.map +1 -1
  39. package/package.json +148 -144
  40. package/dist/GlobalNavigationBar/__tests__/GlobalNavigationBar.tests.d.ts +0 -1
  41. package/dist/GlobalNavigationBar/__tests__/Logo.tests.d.ts +0 -1
  42. package/dist/List/__tests__/ListRow.tests.d.ts +0 -1
  43. package/dist/Tabs/__tests__/TabLink.tests.d.ts +0 -1
  44. package/dist/Tabs/__tests__/Tablist.tests.d.ts +0 -2
  45. package/dist/common/Link.cjs +0 -45
  46. package/dist/common/Link.cjs.map +0 -1
  47. package/dist/common/Link.d.ts +0 -9
  48. package/dist/common/Link.js +0 -37
  49. package/dist/common/Link.js.map +0 -1
  50. package/dist/common/NavigationHelper.cjs +0 -30
  51. package/dist/common/NavigationHelper.cjs.map +0 -1
  52. package/dist/common/NavigationHelper.d.ts +0 -4
  53. package/dist/common/NavigationHelper.js +0 -23
  54. package/dist/common/NavigationHelper.js.map +0 -1
@@ -98,7 +98,7 @@ const ItemContent = (0, _styledComponents.default)('div')`
98
98
  width: 100%;
99
99
  height: 100%;
100
100
 
101
- &.somename {
101
+ &.currentPage {
102
102
  z-index: ${_styles.Z_INDEXES.active};
103
103
  color: ${props => _styles.COLORS.generateToken({
104
104
  componentType: 'text',
@@ -131,7 +131,7 @@ const ItemContent = (0, _styledComponents.default)('div')`
131
131
  }
132
132
  }
133
133
 
134
- &.somename:after{
134
+ &.currentPage:after{
135
135
  content: '';
136
136
  position: absolute;
137
137
  bottom: 4px;
@@ -143,13 +143,13 @@ const ItemContent = (0, _styledComponents.default)('div')`
143
143
  defaultVariant: 'selected'
144
144
  }, props.theme)}
145
145
  }
146
- &.somename:hover:after{
146
+ &.currentPage:hover:after{
147
147
  background-color: ${props => _styles.COLORS.generateToken({
148
148
  componentType: 'border',
149
149
  defaultVariant: 'selected'
150
150
  }, props.theme)}
151
151
  }
152
- &.somename:active:after{
152
+ &.currentPage:active:after{
153
153
  background-color: ${props => _styles.COLORS.generateToken({
154
154
  componentType: 'border',
155
155
  defaultVariant: 'selected'
@@ -160,7 +160,6 @@ const ItemContent = (0, _styledComponents.default)('div')`
160
160
  const Step = _ref => {
161
161
  let {
162
162
  up = true,
163
- target = '',
164
163
  disabled = false,
165
164
  page,
166
165
  onPageChange,
@@ -175,14 +174,17 @@ const Step = _ref => {
175
174
  variant: 'secondary',
176
175
  shape: 'circular',
177
176
  disabled: disabled,
178
- children: up ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.ChevronRight, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.ChevronLeft, {})
177
+ children: up ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.ChevronRight, {
178
+ "aria-label": "Next Page"
179
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.ChevronLeft, {
180
+ "aria-label": "Previous Page"
181
+ })
179
182
  });
180
183
  };
181
184
  const Paginator = _ref2 => {
182
185
  let {
183
186
  pageCount = 1,
184
187
  currentPage = 1,
185
- baseUrl = '',
186
188
  onPageChange
187
189
  } = _ref2;
188
190
  const pages = [];
@@ -205,15 +207,16 @@ const Paginator = _ref2 => {
205
207
  }
206
208
  }
207
209
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(Container, {
210
+ "aria-label": "Pagination",
208
211
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(Items, {
209
212
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Step, {
210
213
  up: false,
211
- target: `${baseUrl}/${currentPage - 1}`,
212
214
  page: currentPage - 1,
213
215
  disabled: currentPage === 1,
214
216
  onPageChange: onPageChange,
215
217
  id: "paginator-left"
216
218
  }), pages.findIndex(item => item === 1) === -1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(Item, {
219
+ "aria-current": currentPage === 1,
217
220
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_HyperLink.HyperLink, {
218
221
  target: "_self",
219
222
  onClick: e => {
@@ -223,29 +226,32 @@ const Paginator = _ref2 => {
223
226
  variant: 'styleless',
224
227
  href: '',
225
228
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ItemContent, {
226
- className: currentPage === 1 ? 'somename' : '',
229
+ className: currentPage === 1 ? 'currentPage' : '',
227
230
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
228
231
  children: "1"
229
232
  })
230
233
  })
231
234
  })
232
235
  }), currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(Dots, {}), pages.map(page => /*#__PURE__*/(0, _jsxRuntime.jsx)(Item, {
236
+ "aria-current": currentPage === page,
233
237
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_HyperLink.HyperLink, {
234
238
  target: "_self",
235
239
  href: '',
236
240
  onClick: e => {
241
+ console.log(`Page changed to: ${page}`);
237
242
  onPageChange && onPageChange(page);
238
243
  e.preventDefault();
239
244
  },
240
245
  variant: 'styleless',
241
246
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ItemContent, {
242
- className: currentPage === page ? 'somename' : '',
247
+ className: currentPage === page ? 'currentPage' : '',
243
248
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
244
249
  children: page
245
250
  })
246
251
  })
247
252
  })
248
253
  }, page)), pageCount > 5 && currentPage <= pageCount - 3 && /*#__PURE__*/(0, _jsxRuntime.jsx)(Dots, {}), pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(Item, {
254
+ "aria-current": currentPage === pageCount,
249
255
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_HyperLink.HyperLink, {
250
256
  target: "_self",
251
257
  href: '',
@@ -255,7 +261,7 @@ const Paginator = _ref2 => {
255
261
  e.preventDefault();
256
262
  },
257
263
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ItemContent, {
258
- className: currentPage === pageCount ? 'somename' : '',
264
+ className: currentPage === pageCount ? 'currentPage' : '',
259
265
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
260
266
  children: pageCount
261
267
  })
@@ -263,7 +269,6 @@ const Paginator = _ref2 => {
263
269
  })
264
270
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(Step, {
265
271
  up: true,
266
- target: `${baseUrl}/${currentPage + 1}`,
267
272
  page: currentPage + 1,
268
273
  disabled: currentPage === pageCount,
269
274
  onPageChange: onPageChange,
@@ -275,7 +280,6 @@ const Paginator = _ref2 => {
275
280
  Paginator.propTypes = {
276
281
  pageCount: _propTypes.default.number.isRequired,
277
282
  currentPage: _propTypes.default.number.isRequired,
278
- baseUrl: _propTypes.default.string.isRequired,
279
283
  onPageChange: _propTypes.default.func
280
284
  };
281
285
  var _default = exports.default = Paginator;
@@ -1 +1 @@
1
- {"version":3,"file":"Paginator.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_styles","_icons","_Button","_HyperLink","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Container","styled","nav","BREAKPOINTS","MEDIUM","Items","ul","Item","li","props","ComponentMStyling","ComponentTextStyle","Regular","COLORS","generateToken","componentType","defaultVariant","theme","focusStyles","Z_INDEXES","hover","state","active","Dots","ItemContent","Step","_ref","up","target","disabled","page","onPageChange","id","handleButtonClick","jsx","IconButton","action","event","variant","shape","children","SystemIcons","ChevronRight","ChevronLeft","Paginator","_ref2","pageCount","currentPage","baseUrl","pages","from","to","push","jsxs","findIndex","item","HyperLink","onClick","preventDefault","href","className","map","propTypes","_propTypes","number","isRequired","string","func","_default","exports"],"sources":["../../src/Paginator/Paginator.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {ComponentMStyling} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {IconButton} from '../Button';\r\nimport { HyperLink } from '../HyperLink';\r\n\r\nconst Container = styled.nav`\r\n margin: 20px 0;\r\n display: flex;\r\n justify-content: center;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 75%;\r\n }\r\n`;\r\n\r\nconst Items = styled.ul`\r\n margin: 0;\r\n padding: 0;\r\n list-style: none;\r\n display: flex;\r\n`;\r\n\r\nconst Item = styled.li`\r\n width: 48px;\r\n height: 48px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n & > * {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100%;\r\n height: 100%;\r\n text-decoration: none;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant: 'subtle'}, props.theme))}\r\n\r\n &:focus,\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n }\r\n & > a:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'hover' }, props.theme)};\r\n }\r\n\r\n & > a:active {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state:'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'active' }, props.theme)};\r\n }\r\n`;\r\n\r\nconst Dots = styled(Item)`\r\n cursor: not-allowed;\r\n &:after{\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme))}\r\n content: '...';\r\n }\r\n`;\r\n\r\nconst ItemContent = styled('div')`\r\n text-align:center;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n \r\n &.somename {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant: 'selected' }, props.theme)};\r\n cursor: default;\r\n &:hover {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'hover' }, props.theme)};\r\n }\r\n &:active {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n }\r\n }\r\n\r\n &.somename:after{\r\n content: '';\r\n position: absolute;\r\n bottom: 4px;\r\n width: 32px;\r\n border-radius: 4px;\r\n height: 4px;\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.somename:hover:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.somename:active:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n`\r\n\r\nexport interface PaginatorProps {\r\n /**\r\n * Required. The total number of pages.\r\n */\r\n pageCount: number;\r\n\r\n /**\r\n * Required. The current active page.\r\n */\r\n currentPage: number;\r\n\r\n /**\r\n * Required. The base URL to which the page number will be appended.\r\n */\r\n baseUrl: string;\r\n\r\n /**\r\n * Optional. A callback function that will be called when the page changes.\r\n * It receives the new page number as its argument.\r\n * If the function returns false, the page change will be prevented.\r\n */\r\n onPageChange?: (page: number) => boolean | void;\r\n};\r\n\r\nconst Step = ({\r\n up = true,\r\n target = '',\r\n disabled = false,\r\n page,\r\n onPageChange,\r\n id,\r\n}: {\r\n up: boolean;\r\n target: string;\r\n disabled: boolean;\r\n page: number;\r\n onPageChange?: (page: number) => void | boolean;\r\n id?: string;\r\n}) => {\r\n \r\n const handleButtonClick = () => {\r\n onPageChange && !onPageChange(page);\r\n }\r\n\r\n return (\r\n <IconButton id={id}\r\n action={event => handleButtonClick()}\r\n variant={'secondary'}\r\n shape={'circular'}\r\n disabled={disabled}>\r\n {up ? <SystemIcons.ChevronRight/> : <SystemIcons.ChevronLeft/>}\r\n </IconButton>\r\n )\r\n};\r\n\r\nconst Paginator = ({ pageCount = 1, currentPage = 1, baseUrl = '', onPageChange }: PaginatorProps) => {\r\n const pages = [];\r\n let from = 2;\r\n let to = 4;\r\n if (pageCount === 0) return null;\r\n\r\n if (pageCount > 1) {\r\n if (currentPage >= 4 && currentPage <= pageCount - 2) {\r\n from = currentPage - 1;\r\n to = currentPage + 1;\r\n } else if (pageCount - 2 > 1 && currentPage > pageCount - 2) {\r\n from = pageCount - 3;\r\n to = pageCount - 1;\r\n }\r\n if (to > pageCount) {\r\n to = pageCount;\r\n }\r\n for (let i = from; i <= to; i += 1) {\r\n pages.push(i);\r\n }\r\n }\r\n\r\n return (\r\n <Container>\r\n <Items>\r\n <Step up={false}\r\n target={`${baseUrl}/${currentPage - 1}`}\r\n page={currentPage - 1}\r\n disabled={currentPage === 1}\r\n onPageChange={onPageChange}\r\n id=\"paginator-left\"/>\r\n {pages.findIndex(item => item === 1) === -1 && (\r\n <Item>\r\n <HyperLink\r\n target='_self'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(1);\r\n e.preventDefault();\r\n } } variant={'styleless'} href={''}>\r\n <ItemContent className={currentPage === 1 ? 'somename' : ''}>\r\n <span>1</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n {currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && (\r\n <Dots/>\r\n )}\r\n {pages.map(page => (\r\n <Item key={page}>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n onClick={(e) => {\r\n onPageChange && onPageChange(page);\r\n e.preventDefault();\r\n } } variant={'styleless'}>\r\n <ItemContent className={currentPage === page ? 'somename' : ''}>\r\n <span>{page}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n ))}\r\n {pageCount > 5 && currentPage <= pageCount - 3 && (\r\n <Dots/>\r\n )}\r\n {pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && (\r\n <Item>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n variant='styleless'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(pageCount);\r\n e.preventDefault();\r\n }}>\r\n <ItemContent className={currentPage === pageCount ? 'somename' : ''}>\r\n <span>{pageCount}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n <Step up\r\n target={`${baseUrl}/${currentPage + 1}`}\r\n page={currentPage + 1}\r\n disabled={currentPage === pageCount}\r\n onPageChange={onPageChange}\r\n id=\"paginator-right\"/>\r\n </Items>\r\n </Container>\r\n );\r\n};\r\n\r\nexport default Paginator;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Paginator.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_styles","_icons","_Button","_HyperLink","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Container","styled","nav","BREAKPOINTS","MEDIUM","Items","ul","Item","li","props","ComponentMStyling","ComponentTextStyle","Regular","COLORS","generateToken","componentType","defaultVariant","theme","focusStyles","Z_INDEXES","hover","state","active","Dots","ItemContent","Step","_ref","up","disabled","page","onPageChange","id","handleButtonClick","jsx","IconButton","action","event","variant","shape","children","SystemIcons","ChevronRight","ChevronLeft","Paginator","_ref2","pageCount","currentPage","pages","from","to","push","jsxs","findIndex","item","HyperLink","target","onClick","preventDefault","href","className","map","console","log","propTypes","_propTypes","number","isRequired","func","_default","exports"],"sources":["../../src/Paginator/Paginator.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {ComponentMStyling} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {IconButton} from '../Button';\r\nimport { HyperLink } from '../HyperLink';\r\n\r\nconst Container = styled.nav`\r\n margin: 20px 0;\r\n display: flex;\r\n justify-content: center;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 75%;\r\n }\r\n`;\r\n\r\nconst Items = styled.ul`\r\n margin: 0;\r\n padding: 0;\r\n list-style: none;\r\n display: flex;\r\n`;\r\n\r\nconst Item = styled.li`\r\n width: 48px;\r\n height: 48px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n & > * {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100%;\r\n height: 100%;\r\n text-decoration: none;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant: 'subtle'}, props.theme))}\r\n\r\n &:focus,\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n }\r\n & > a:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'hover' }, props.theme)};\r\n }\r\n\r\n & > a:active {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state:'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'active' }, props.theme)};\r\n }\r\n`;\r\n\r\nconst Dots = styled(Item)`\r\n cursor: not-allowed;\r\n &:after{\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme))}\r\n content: '...';\r\n }\r\n`;\r\n\r\nconst ItemContent = styled('div')`\r\n text-align:center;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n \r\n &.currentPage {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant: 'selected' }, props.theme)};\r\n cursor: default;\r\n &:hover {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'hover' }, props.theme)};\r\n }\r\n &:active {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n }\r\n }\r\n\r\n &.currentPage:after{\r\n content: '';\r\n position: absolute;\r\n bottom: 4px;\r\n width: 32px;\r\n border-radius: 4px;\r\n height: 4px;\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.currentPage:hover:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.currentPage:active:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n`\r\n\r\nexport interface PaginatorProps {\r\n /**\r\n * Required. The total number of pages.\r\n */\r\n pageCount: number;\r\n\r\n /**\r\n * Required. The current active page.\r\n */\r\n currentPage: number;\r\n\r\n /**\r\n * Optional. A callback function that will be called when the page changes.\r\n * It receives the new page number as its argument.\r\n * If the function returns false, the page change will be prevented.\r\n */\r\n onPageChange?: (page: number) => boolean | void;\r\n};\r\n\r\nconst Step = ({\r\n up = true,\r\n disabled = false,\r\n page,\r\n onPageChange,\r\n id,\r\n}: {\r\n up: boolean;\r\n disabled: boolean;\r\n page: number;\r\n onPageChange?: (page: number) => void | boolean;\r\n id?: string;\r\n}) => {\r\n \r\n const handleButtonClick = () => {\r\n onPageChange && !onPageChange(page);\r\n }\r\n\r\n return (\r\n <IconButton id={id}\r\n action={event => handleButtonClick()}\r\n variant={'secondary'}\r\n shape={'circular'}\r\n disabled={disabled}>\r\n {up ? <SystemIcons.ChevronRight aria-label=\"Next Page\" /> : <SystemIcons.ChevronLeft aria-label=\"Previous Page\"/>}\r\n </IconButton>\r\n )\r\n};\r\n\r\nconst Paginator = ({ pageCount = 1, currentPage = 1, onPageChange }: PaginatorProps) => {\r\n const pages = [];\r\n let from = 2;\r\n let to = 4;\r\n if (pageCount === 0) return null;\r\n\r\n if (pageCount > 1) {\r\n if (currentPage >= 4 && currentPage <= pageCount - 2) {\r\n from = currentPage - 1;\r\n to = currentPage + 1;\r\n } else if (pageCount - 2 > 1 && currentPage > pageCount - 2) {\r\n from = pageCount - 3;\r\n to = pageCount - 1;\r\n }\r\n if (to > pageCount) {\r\n to = pageCount;\r\n }\r\n for (let i = from; i <= to; i += 1) {\r\n pages.push(i);\r\n }\r\n }\r\n\r\n return (\r\n <Container aria-label=\"Pagination\">\r\n <Items>\r\n <Step up={false}\r\n page={currentPage - 1}\r\n disabled={currentPage === 1}\r\n onPageChange={onPageChange}\r\n id=\"paginator-left\"/>\r\n {pages.findIndex(item => item === 1) === -1 && (\r\n <Item aria-current={currentPage === 1}>\r\n <HyperLink\r\n target='_self'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(1);\r\n e.preventDefault();\r\n } } variant={'styleless'} href={''}>\r\n <ItemContent className={currentPage === 1 ? 'currentPage' : ''}>\r\n <span>1</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n {currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && (\r\n <Dots/>\r\n )}\r\n {pages.map(page => (\r\n <Item key={page} aria-current={currentPage === page}>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n onClick={(e) => {\r\n console.log(`Page changed to: ${page}`);\r\n onPageChange && onPageChange(page);\r\n e.preventDefault();\r\n } } variant={'styleless'}>\r\n <ItemContent className={currentPage === page ? 'currentPage' : ''}>\r\n <span>{page}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n ))}\r\n {pageCount > 5 && currentPage <= pageCount - 3 && (\r\n <Dots/>\r\n )}\r\n {pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && (\r\n <Item aria-current={currentPage === pageCount}>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n variant='styleless'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(pageCount);\r\n e.preventDefault();\r\n }}>\r\n <ItemContent className={currentPage === pageCount ? 'currentPage' : ''}>\r\n <span>{pageCount}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n <Step up\r\n page={currentPage + 1}\r\n disabled={currentPage === pageCount}\r\n onPageChange={onPageChange}\r\n id=\"paginator-right\"/>\r\n </Items>\r\n </Container>\r\n );\r\n};\r\n\r\nexport default Paginator;\r\n"],"mappings":"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","ignoreList":[]}
@@ -8,10 +8,6 @@ export interface PaginatorProps {
8
8
  * Required. The current active page.
9
9
  */
10
10
  currentPage: number;
11
- /**
12
- * Required. The base URL to which the page number will be appended.
13
- */
14
- baseUrl: string;
15
11
  /**
16
12
  * Optional. A callback function that will be called when the page changes.
17
13
  * It receives the new page number as its argument.
@@ -19,5 +15,5 @@ export interface PaginatorProps {
19
15
  */
20
16
  onPageChange?: (page: number) => boolean | void;
21
17
  }
22
- declare const Paginator: ({ pageCount, currentPage, baseUrl, onPageChange }: PaginatorProps) => React.JSX.Element | null;
18
+ declare const Paginator: ({ pageCount, currentPage, onPageChange }: PaginatorProps) => React.JSX.Element | null;
23
19
  export default Paginator;
@@ -91,7 +91,7 @@ const ItemContent = styled('div')`
91
91
  width: 100%;
92
92
  height: 100%;
93
93
 
94
- &.somename {
94
+ &.currentPage {
95
95
  z-index: ${Z_INDEXES.active};
96
96
  color: ${props => COLORS.generateToken({
97
97
  componentType: 'text',
@@ -124,7 +124,7 @@ const ItemContent = styled('div')`
124
124
  }
125
125
  }
126
126
 
127
- &.somename:after{
127
+ &.currentPage:after{
128
128
  content: '';
129
129
  position: absolute;
130
130
  bottom: 4px;
@@ -136,13 +136,13 @@ const ItemContent = styled('div')`
136
136
  defaultVariant: 'selected'
137
137
  }, props.theme)}
138
138
  }
139
- &.somename:hover:after{
139
+ &.currentPage:hover:after{
140
140
  background-color: ${props => COLORS.generateToken({
141
141
  componentType: 'border',
142
142
  defaultVariant: 'selected'
143
143
  }, props.theme)}
144
144
  }
145
- &.somename:active:after{
145
+ &.currentPage:active:after{
146
146
  background-color: ${props => COLORS.generateToken({
147
147
  componentType: 'border',
148
148
  defaultVariant: 'selected'
@@ -153,7 +153,6 @@ const ItemContent = styled('div')`
153
153
  const Step = _ref => {
154
154
  let {
155
155
  up = true,
156
- target = '',
157
156
  disabled = false,
158
157
  page,
159
158
  onPageChange,
@@ -168,14 +167,17 @@ const Step = _ref => {
168
167
  variant: 'secondary',
169
168
  shape: 'circular',
170
169
  disabled: disabled,
171
- children: up ? /*#__PURE__*/_jsx(SystemIcons.ChevronRight, {}) : /*#__PURE__*/_jsx(SystemIcons.ChevronLeft, {})
170
+ children: up ? /*#__PURE__*/_jsx(SystemIcons.ChevronRight, {
171
+ "aria-label": "Next Page"
172
+ }) : /*#__PURE__*/_jsx(SystemIcons.ChevronLeft, {
173
+ "aria-label": "Previous Page"
174
+ })
172
175
  });
173
176
  };
174
177
  const Paginator = _ref2 => {
175
178
  let {
176
179
  pageCount = 1,
177
180
  currentPage = 1,
178
- baseUrl = '',
179
181
  onPageChange
180
182
  } = _ref2;
181
183
  const pages = [];
@@ -198,15 +200,16 @@ const Paginator = _ref2 => {
198
200
  }
199
201
  }
200
202
  return /*#__PURE__*/_jsx(Container, {
203
+ "aria-label": "Pagination",
201
204
  children: /*#__PURE__*/_jsxs(Items, {
202
205
  children: [/*#__PURE__*/_jsx(Step, {
203
206
  up: false,
204
- target: `${baseUrl}/${currentPage - 1}`,
205
207
  page: currentPage - 1,
206
208
  disabled: currentPage === 1,
207
209
  onPageChange: onPageChange,
208
210
  id: "paginator-left"
209
211
  }), pages.findIndex(item => item === 1) === -1 && /*#__PURE__*/_jsx(Item, {
212
+ "aria-current": currentPage === 1,
210
213
  children: /*#__PURE__*/_jsx(HyperLink, {
211
214
  target: "_self",
212
215
  onClick: e => {
@@ -216,29 +219,32 @@ const Paginator = _ref2 => {
216
219
  variant: 'styleless',
217
220
  href: '',
218
221
  children: /*#__PURE__*/_jsx(ItemContent, {
219
- className: currentPage === 1 ? 'somename' : '',
222
+ className: currentPage === 1 ? 'currentPage' : '',
220
223
  children: /*#__PURE__*/_jsx("span", {
221
224
  children: "1"
222
225
  })
223
226
  })
224
227
  })
225
228
  }), currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && /*#__PURE__*/_jsx(Dots, {}), pages.map(page => /*#__PURE__*/_jsx(Item, {
229
+ "aria-current": currentPage === page,
226
230
  children: /*#__PURE__*/_jsx(HyperLink, {
227
231
  target: "_self",
228
232
  href: '',
229
233
  onClick: e => {
234
+ console.log(`Page changed to: ${page}`);
230
235
  onPageChange && onPageChange(page);
231
236
  e.preventDefault();
232
237
  },
233
238
  variant: 'styleless',
234
239
  children: /*#__PURE__*/_jsx(ItemContent, {
235
- className: currentPage === page ? 'somename' : '',
240
+ className: currentPage === page ? 'currentPage' : '',
236
241
  children: /*#__PURE__*/_jsx("span", {
237
242
  children: page
238
243
  })
239
244
  })
240
245
  })
241
246
  }, page)), pageCount > 5 && currentPage <= pageCount - 3 && /*#__PURE__*/_jsx(Dots, {}), pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && /*#__PURE__*/_jsx(Item, {
247
+ "aria-current": currentPage === pageCount,
242
248
  children: /*#__PURE__*/_jsx(HyperLink, {
243
249
  target: "_self",
244
250
  href: '',
@@ -248,7 +254,7 @@ const Paginator = _ref2 => {
248
254
  e.preventDefault();
249
255
  },
250
256
  children: /*#__PURE__*/_jsx(ItemContent, {
251
- className: currentPage === pageCount ? 'somename' : '',
257
+ className: currentPage === pageCount ? 'currentPage' : '',
252
258
  children: /*#__PURE__*/_jsx("span", {
253
259
  children: pageCount
254
260
  })
@@ -256,7 +262,6 @@ const Paginator = _ref2 => {
256
262
  })
257
263
  }), /*#__PURE__*/_jsx(Step, {
258
264
  up: true,
259
- target: `${baseUrl}/${currentPage + 1}`,
260
265
  page: currentPage + 1,
261
266
  disabled: currentPage === pageCount,
262
267
  onPageChange: onPageChange,
@@ -268,7 +273,6 @@ const Paginator = _ref2 => {
268
273
  Paginator.propTypes = {
269
274
  pageCount: _pt.number.isRequired,
270
275
  currentPage: _pt.number.isRequired,
271
- baseUrl: _pt.string.isRequired,
272
276
  onPageChange: _pt.func
273
277
  };
274
278
  export default Paginator;
@@ -1 +1 @@
1
- {"version":3,"file":"Paginator.js","names":["React","styled","BREAKPOINTS","COLORS","ComponentTextStyle","focusStyles","SystemIcons","ComponentMStyling","Z_INDEXES","IconButton","HyperLink","jsx","_jsx","jsxs","_jsxs","Container","nav","MEDIUM","Items","ul","Item","li","props","Regular","generateToken","componentType","defaultVariant","theme","hover","state","active","Dots","ItemContent","Step","_ref","up","target","disabled","page","onPageChange","id","handleButtonClick","action","event","variant","shape","children","ChevronRight","ChevronLeft","Paginator","_ref2","pageCount","currentPage","baseUrl","pages","from","to","i","push","findIndex","item","onClick","e","preventDefault","href","className","map","propTypes","_pt","number","isRequired","string","func"],"sources":["../../src/Paginator/Paginator.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {ComponentMStyling} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {IconButton} from '../Button';\r\nimport { HyperLink } from '../HyperLink';\r\n\r\nconst Container = styled.nav`\r\n margin: 20px 0;\r\n display: flex;\r\n justify-content: center;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 75%;\r\n }\r\n`;\r\n\r\nconst Items = styled.ul`\r\n margin: 0;\r\n padding: 0;\r\n list-style: none;\r\n display: flex;\r\n`;\r\n\r\nconst Item = styled.li`\r\n width: 48px;\r\n height: 48px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n & > * {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100%;\r\n height: 100%;\r\n text-decoration: none;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant: 'subtle'}, props.theme))}\r\n\r\n &:focus,\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n }\r\n & > a:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'hover' }, props.theme)};\r\n }\r\n\r\n & > a:active {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state:'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'active' }, props.theme)};\r\n }\r\n`;\r\n\r\nconst Dots = styled(Item)`\r\n cursor: not-allowed;\r\n &:after{\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme))}\r\n content: '...';\r\n }\r\n`;\r\n\r\nconst ItemContent = styled('div')`\r\n text-align:center;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n \r\n &.somename {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant: 'selected' }, props.theme)};\r\n cursor: default;\r\n &:hover {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'hover' }, props.theme)};\r\n }\r\n &:active {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n }\r\n }\r\n\r\n &.somename:after{\r\n content: '';\r\n position: absolute;\r\n bottom: 4px;\r\n width: 32px;\r\n border-radius: 4px;\r\n height: 4px;\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.somename:hover:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.somename:active:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n`\r\n\r\nexport interface PaginatorProps {\r\n /**\r\n * Required. The total number of pages.\r\n */\r\n pageCount: number;\r\n\r\n /**\r\n * Required. The current active page.\r\n */\r\n currentPage: number;\r\n\r\n /**\r\n * Required. The base URL to which the page number will be appended.\r\n */\r\n baseUrl: string;\r\n\r\n /**\r\n * Optional. A callback function that will be called when the page changes.\r\n * It receives the new page number as its argument.\r\n * If the function returns false, the page change will be prevented.\r\n */\r\n onPageChange?: (page: number) => boolean | void;\r\n};\r\n\r\nconst Step = ({\r\n up = true,\r\n target = '',\r\n disabled = false,\r\n page,\r\n onPageChange,\r\n id,\r\n}: {\r\n up: boolean;\r\n target: string;\r\n disabled: boolean;\r\n page: number;\r\n onPageChange?: (page: number) => void | boolean;\r\n id?: string;\r\n}) => {\r\n \r\n const handleButtonClick = () => {\r\n onPageChange && !onPageChange(page);\r\n }\r\n\r\n return (\r\n <IconButton id={id}\r\n action={event => handleButtonClick()}\r\n variant={'secondary'}\r\n shape={'circular'}\r\n disabled={disabled}>\r\n {up ? <SystemIcons.ChevronRight/> : <SystemIcons.ChevronLeft/>}\r\n </IconButton>\r\n )\r\n};\r\n\r\nconst Paginator = ({ pageCount = 1, currentPage = 1, baseUrl = '', onPageChange }: PaginatorProps) => {\r\n const pages = [];\r\n let from = 2;\r\n let to = 4;\r\n if (pageCount === 0) return null;\r\n\r\n if (pageCount > 1) {\r\n if (currentPage >= 4 && currentPage <= pageCount - 2) {\r\n from = currentPage - 1;\r\n to = currentPage + 1;\r\n } else if (pageCount - 2 > 1 && currentPage > pageCount - 2) {\r\n from = pageCount - 3;\r\n to = pageCount - 1;\r\n }\r\n if (to > pageCount) {\r\n to = pageCount;\r\n }\r\n for (let i = from; i <= to; i += 1) {\r\n pages.push(i);\r\n }\r\n }\r\n\r\n return (\r\n <Container>\r\n <Items>\r\n <Step up={false}\r\n target={`${baseUrl}/${currentPage - 1}`}\r\n page={currentPage - 1}\r\n disabled={currentPage === 1}\r\n onPageChange={onPageChange}\r\n id=\"paginator-left\"/>\r\n {pages.findIndex(item => item === 1) === -1 && (\r\n <Item>\r\n <HyperLink\r\n target='_self'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(1);\r\n e.preventDefault();\r\n } } variant={'styleless'} href={''}>\r\n <ItemContent className={currentPage === 1 ? 'somename' : ''}>\r\n <span>1</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n {currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && (\r\n <Dots/>\r\n )}\r\n {pages.map(page => (\r\n <Item key={page}>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n onClick={(e) => {\r\n onPageChange && onPageChange(page);\r\n e.preventDefault();\r\n } } variant={'styleless'}>\r\n <ItemContent className={currentPage === page ? 'somename' : ''}>\r\n <span>{page}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n ))}\r\n {pageCount > 5 && currentPage <= pageCount - 3 && (\r\n <Dots/>\r\n )}\r\n {pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && (\r\n <Item>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n variant='styleless'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(pageCount);\r\n e.preventDefault();\r\n }}>\r\n <ItemContent className={currentPage === pageCount ? 'somename' : ''}>\r\n <span>{pageCount}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n <Step up\r\n target={`${baseUrl}/${currentPage + 1}`}\r\n page={currentPage + 1}\r\n disabled={currentPage === pageCount}\r\n onPageChange={onPageChange}\r\n id=\"paginator-right\"/>\r\n </Items>\r\n </Container>\r\n );\r\n};\r\n\r\nexport default Paginator;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Paginator.js","names":["React","styled","BREAKPOINTS","COLORS","ComponentTextStyle","focusStyles","SystemIcons","ComponentMStyling","Z_INDEXES","IconButton","HyperLink","jsx","_jsx","jsxs","_jsxs","Container","nav","MEDIUM","Items","ul","Item","li","props","Regular","generateToken","componentType","defaultVariant","theme","hover","state","active","Dots","ItemContent","Step","_ref","up","disabled","page","onPageChange","id","handleButtonClick","action","event","variant","shape","children","ChevronRight","ChevronLeft","Paginator","_ref2","pageCount","currentPage","pages","from","to","i","push","findIndex","item","target","onClick","e","preventDefault","href","className","map","console","log","propTypes","_pt","number","isRequired","func"],"sources":["../../src/Paginator/Paginator.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle, focusStyles} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {ComponentMStyling} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {IconButton} from '../Button';\r\nimport { HyperLink } from '../HyperLink';\r\n\r\nconst Container = styled.nav`\r\n margin: 20px 0;\r\n display: flex;\r\n justify-content: center;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 75%;\r\n }\r\n`;\r\n\r\nconst Items = styled.ul`\r\n margin: 0;\r\n padding: 0;\r\n list-style: none;\r\n display: flex;\r\n`;\r\n\r\nconst Item = styled.li`\r\n width: 48px;\r\n height: 48px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n & > * {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100%;\r\n height: 100%;\r\n text-decoration: none;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'text', defaultVariant: 'subtle'}, props.theme))}\r\n\r\n &:focus,\r\n &:focus-within {\r\n ${focusStyles}\r\n }\r\n }\r\n & > a:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'hover' }, props.theme)};\r\n }\r\n\r\n & > a:active {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType:'text', state:'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType:'bg-surface', state:'active' }, props.theme)};\r\n }\r\n`;\r\n\r\nconst Dots = styled(Item)`\r\n cursor: not-allowed;\r\n &:after{\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({componentType:'icon',defaultVariant:'subtle'}, props.theme))}\r\n content: '...';\r\n }\r\n`;\r\n\r\nconst ItemContent = styled('div')`\r\n text-align:center;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n \r\n &.currentPage {\r\n z-index: ${Z_INDEXES.active};\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant: 'selected' }, props.theme)};\r\n cursor: default;\r\n &:hover {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'hover' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'hover' }, props.theme)};\r\n }\r\n &:active {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'active' }, props.theme)};\r\n background-color: ${props => COLORS.generateToken({ componentType: 'bg-surface', state: 'active' }, props.theme)};\r\n }\r\n }\r\n\r\n &.currentPage:after{\r\n content: '';\r\n position: absolute;\r\n bottom: 4px;\r\n width: 32px;\r\n border-radius: 4px;\r\n height: 4px;\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.currentPage:hover:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n &.currentPage:active:after{\r\n background-color: ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'selected'}, props.theme)}\r\n }\r\n`\r\n\r\nexport interface PaginatorProps {\r\n /**\r\n * Required. The total number of pages.\r\n */\r\n pageCount: number;\r\n\r\n /**\r\n * Required. The current active page.\r\n */\r\n currentPage: number;\r\n\r\n /**\r\n * Optional. A callback function that will be called when the page changes.\r\n * It receives the new page number as its argument.\r\n * If the function returns false, the page change will be prevented.\r\n */\r\n onPageChange?: (page: number) => boolean | void;\r\n};\r\n\r\nconst Step = ({\r\n up = true,\r\n disabled = false,\r\n page,\r\n onPageChange,\r\n id,\r\n}: {\r\n up: boolean;\r\n disabled: boolean;\r\n page: number;\r\n onPageChange?: (page: number) => void | boolean;\r\n id?: string;\r\n}) => {\r\n \r\n const handleButtonClick = () => {\r\n onPageChange && !onPageChange(page);\r\n }\r\n\r\n return (\r\n <IconButton id={id}\r\n action={event => handleButtonClick()}\r\n variant={'secondary'}\r\n shape={'circular'}\r\n disabled={disabled}>\r\n {up ? <SystemIcons.ChevronRight aria-label=\"Next Page\" /> : <SystemIcons.ChevronLeft aria-label=\"Previous Page\"/>}\r\n </IconButton>\r\n )\r\n};\r\n\r\nconst Paginator = ({ pageCount = 1, currentPage = 1, onPageChange }: PaginatorProps) => {\r\n const pages = [];\r\n let from = 2;\r\n let to = 4;\r\n if (pageCount === 0) return null;\r\n\r\n if (pageCount > 1) {\r\n if (currentPage >= 4 && currentPage <= pageCount - 2) {\r\n from = currentPage - 1;\r\n to = currentPage + 1;\r\n } else if (pageCount - 2 > 1 && currentPage > pageCount - 2) {\r\n from = pageCount - 3;\r\n to = pageCount - 1;\r\n }\r\n if (to > pageCount) {\r\n to = pageCount;\r\n }\r\n for (let i = from; i <= to; i += 1) {\r\n pages.push(i);\r\n }\r\n }\r\n\r\n return (\r\n <Container aria-label=\"Pagination\">\r\n <Items>\r\n <Step up={false}\r\n page={currentPage - 1}\r\n disabled={currentPage === 1}\r\n onPageChange={onPageChange}\r\n id=\"paginator-left\"/>\r\n {pages.findIndex(item => item === 1) === -1 && (\r\n <Item aria-current={currentPage === 1}>\r\n <HyperLink\r\n target='_self'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(1);\r\n e.preventDefault();\r\n } } variant={'styleless'} href={''}>\r\n <ItemContent className={currentPage === 1 ? 'currentPage' : ''}>\r\n <span>1</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n {currentPage >= 4 && pageCount > 5 && pageCount && pages.findIndex(item => item === 1) === -1 && (\r\n <Dots/>\r\n )}\r\n {pages.map(page => (\r\n <Item key={page} aria-current={currentPage === page}>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n onClick={(e) => {\r\n console.log(`Page changed to: ${page}`);\r\n onPageChange && onPageChange(page);\r\n e.preventDefault();\r\n } } variant={'styleless'}>\r\n <ItemContent className={currentPage === page ? 'currentPage' : ''}>\r\n <span>{page}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n ))}\r\n {pageCount > 5 && currentPage <= pageCount - 3 && (\r\n <Dots/>\r\n )}\r\n {pages.findIndex(item => item === pageCount) === -1 && pageCount !== 1 && (\r\n <Item aria-current={currentPage === pageCount}>\r\n <HyperLink\r\n target='_self'\r\n href={''}\r\n variant='styleless'\r\n onClick={(e) => {\r\n onPageChange && onPageChange(pageCount);\r\n e.preventDefault();\r\n }}>\r\n <ItemContent className={currentPage === pageCount ? 'currentPage' : ''}>\r\n <span>{pageCount}</span>\r\n </ItemContent>\r\n </HyperLink>\r\n </Item>\r\n )}\r\n <Step up\r\n page={currentPage + 1}\r\n disabled={currentPage === pageCount}\r\n onPageChange={onPageChange}\r\n id=\"paginator-right\"/>\r\n </Items>\r\n </Container>\r\n );\r\n};\r\n\r\nexport default Paginator;\r\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { render } from '../../test-utils';
2
+ import { queryByAttribute, render } from '../../test-utils';
3
3
  import { Paginator } from '../index';
4
4
  import { createMemoryHistory } from 'history';
5
5
  import 'jest-styled-components';
@@ -8,19 +8,13 @@ import 'jest-styled-components';
8
8
 
9
9
  describe('<Paginator />', () => {
10
10
 
11
- const navProps = {
12
- currentPath: '',
13
- isActiveRoute: () => false,
14
- navigate: (path: string, isExternal: boolean) => {}
15
- };
16
-
17
11
  it('Renders Paginator', async () => {
18
- const history = createMemoryHistory();
19
- const route = '/1';
20
- history.push(route);
12
+
21
13
  let curPage = 1;
22
14
  const { queryByText, container } = render(
23
- <Paginator pageCount={6} currentPage={1} baseUrl="" onPageChange={(page) => { curPage = page; }} />
15
+ <Paginator pageCount={6} currentPage={1} onPageChange={(page) => {
16
+ console.log(`Page changed to: ${page}`);
17
+ curPage = page; }} />
24
18
  );
25
19
 
26
20
  expect(queryByText('1')).toBeDefined();
@@ -33,7 +27,7 @@ describe('<Paginator />', () => {
33
27
  expect(curPage).toBe(2);
34
28
 
35
29
  // Click directly on 6. Expect to be taken to /6
36
- queryByText('6')?.click();
30
+ (queryByText('6') as HTMLElement)?.click();
37
31
  expect(curPage).toBe(6);
38
32
  });
39
33
  });
@@ -23,6 +23,7 @@ Object.keys(_react2).forEach(function (key) {
23
23
  });
24
24
  });
25
25
  var _styledComponents = require("styled-components");
26
+ var _Navigation = require("./Navigation");
26
27
  var _jsxRuntime = require("react/jsx-runtime");
27
28
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
29
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -32,7 +33,12 @@ const AllTheProviders = _ref => {
32
33
  } = _ref;
33
34
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_styledComponents.ThemeProvider, {
34
35
  theme: {},
35
- children: children
36
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Navigation.NavigationProvider, {
37
+ currentPath: "",
38
+ isActiveRoute: () => false,
39
+ navigate: () => {},
40
+ children: children
41
+ })
36
42
  });
37
43
  };
38
44
  const customRender = (ui, options) => (0, _react2.render)(ui, _objectSpread({
@@ -1 +1 @@
1
- {"version":3,"file":"test-utils.cjs","names":["_react","_interopRequireDefault","require","_react2","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_styledComponents","_jsxRuntime","ownKeys","e","r","t","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","length","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","AllTheProviders","_ref","children","jsx","ThemeProvider","theme","customRender","ui","options","render","wrapper"],"sources":["../src/test-utils.tsx"],"sourcesContent":["import React, {ReactElement} from 'react'\r\nimport {render, RenderOptions} from '@testing-library/react'\r\nimport {ThemeProvider} from 'styled-components'\r\n\r\nconst AllTheProviders = ({children}: {children: React.ReactNode}) => {\r\n return (\r\n <ThemeProvider theme={{}}>\r\n {children}\r\n </ThemeProvider>\r\n )\r\n}\r\n\r\nconst customRender = (\r\n ui: ReactElement<any>,\r\n options?: Omit<RenderOptions, 'wrapper'>,\r\n) => render(ui, {wrapper: AllTheProviders, ...options})\r\n\r\nexport * from '@testing-library/react'\r\nexport {customRender as render}"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAgBAE,MAAA,CAAAC,IAAA,CAAAF,OAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,OAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,OAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAfA,IAAAS,iBAAA,GAAAd,OAAA;AAA+C,IAAAe,WAAA,GAAAf,OAAA;AAAA,SAAAgB,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAjB,MAAA,CAAAC,IAAA,CAAAc,CAAA,OAAAf,MAAA,CAAAkB,qBAAA,QAAAC,CAAA,GAAAnB,MAAA,CAAAkB,qBAAA,CAAAH,CAAA,GAAAC,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAJ,CAAA,WAAAhB,MAAA,CAAAqB,wBAAA,CAAAN,CAAA,EAAAC,CAAA,EAAAN,UAAA,OAAAO,CAAA,CAAAK,IAAA,CAAAC,KAAA,CAAAN,CAAA,EAAAE,CAAA,YAAAF,CAAA;AAAA,SAAAO,cAAAT,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAS,SAAA,CAAAC,MAAA,EAAAV,CAAA,UAAAC,CAAA,WAAAQ,SAAA,CAAAT,CAAA,IAAAS,SAAA,CAAAT,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAd,MAAA,CAAAiB,CAAA,OAAAf,OAAA,WAAAc,CAAA,QAAAW,gBAAA,CAAAC,OAAA,EAAAb,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAhB,MAAA,CAAA6B,yBAAA,GAAA7B,MAAA,CAAA8B,gBAAA,CAAAf,CAAA,EAAAf,MAAA,CAAA6B,yBAAA,CAAAZ,CAAA,KAAAH,OAAA,CAAAd,MAAA,CAAAiB,CAAA,GAAAf,OAAA,WAAAc,CAAA,IAAAhB,MAAA,CAAAS,cAAA,CAAAM,CAAA,EAAAC,CAAA,EAAAhB,MAAA,CAAAqB,wBAAA,CAAAJ,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAE/C,MAAMgB,eAAe,GAAGC,IAAA,IAA6C;EAAA,IAA5C;IAACC;EAAqC,CAAC,GAAAD,IAAA;EAC9D,oBACE,IAAAnB,WAAA,CAAAqB,GAAA,EAACtB,iBAAA,CAAAuB,aAAa;IAACC,KAAK,EAAE,CAAC,CAAE;IAAAH,QAAA,EACpBA;EAAQ,CACE,CAAC;AAEpB,CAAC;AAED,MAAMI,YAAY,GAAGA,CACnBC,EAAqB,EACrBC,OAAwC,KACrC,IAAAC,cAAM,EAACF,EAAE,EAAAd,aAAA;EAAGiB,OAAO,EAAEV;AAAe,GAAKQ,OAAO,CAAC,CAAC;AAAA/B,OAAA,CAAAgC,MAAA,GAAAH,YAAA","ignoreList":[]}
1
+ {"version":3,"file":"test-utils.cjs","names":["_react","_interopRequireDefault","require","_react2","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_styledComponents","_Navigation","_jsxRuntime","ownKeys","e","r","t","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","length","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","AllTheProviders","_ref","children","jsx","ThemeProvider","theme","NavigationProvider","currentPath","isActiveRoute","navigate","customRender","ui","options","render","wrapper"],"sources":["../src/test-utils.tsx"],"sourcesContent":["import React, {ReactElement} from 'react'\r\nimport {render, RenderOptions} from '@testing-library/react'\r\nimport {ThemeProvider} from 'styled-components'\r\nimport { NavigationProvider } from './Navigation'\r\n\r\nconst AllTheProviders = ({children}: {children: React.ReactNode}) => {\r\n return (\r\n <ThemeProvider theme={{}}>\r\n <NavigationProvider currentPath='' isActiveRoute={() => false} navigate={() => {}}>\r\n {children}\r\n </NavigationProvider>\r\n </ThemeProvider>\r\n )\r\n}\r\n\r\nconst customRender = (\r\n ui: ReactElement<any>,\r\n options?: Omit<RenderOptions, 'wrapper'>,\r\n) => render(ui, {wrapper: AllTheProviders, ...options})\r\n\r\nexport * from '@testing-library/react'\r\nexport {customRender as render}"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAmBAE,MAAA,CAAAC,IAAA,CAAAF,OAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,OAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,OAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAlBA,IAAAS,iBAAA,GAAAd,OAAA;AACA,IAAAe,WAAA,GAAAf,OAAA;AAAiD,IAAAgB,WAAA,GAAAhB,OAAA;AAAA,SAAAiB,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAlB,MAAA,CAAAC,IAAA,CAAAe,CAAA,OAAAhB,MAAA,CAAAmB,qBAAA,QAAAC,CAAA,GAAApB,MAAA,CAAAmB,qBAAA,CAAAH,CAAA,GAAAC,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAJ,CAAA,WAAAjB,MAAA,CAAAsB,wBAAA,CAAAN,CAAA,EAAAC,CAAA,EAAAP,UAAA,OAAAQ,CAAA,CAAAK,IAAA,CAAAC,KAAA,CAAAN,CAAA,EAAAE,CAAA,YAAAF,CAAA;AAAA,SAAAO,cAAAT,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAS,SAAA,CAAAC,MAAA,EAAAV,CAAA,UAAAC,CAAA,WAAAQ,SAAA,CAAAT,CAAA,IAAAS,SAAA,CAAAT,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAf,MAAA,CAAAkB,CAAA,OAAAhB,OAAA,WAAAe,CAAA,QAAAW,gBAAA,CAAAC,OAAA,EAAAb,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAjB,MAAA,CAAA8B,yBAAA,GAAA9B,MAAA,CAAA+B,gBAAA,CAAAf,CAAA,EAAAhB,MAAA,CAAA8B,yBAAA,CAAAZ,CAAA,KAAAH,OAAA,CAAAf,MAAA,CAAAkB,CAAA,GAAAhB,OAAA,WAAAe,CAAA,IAAAjB,MAAA,CAAAS,cAAA,CAAAO,CAAA,EAAAC,CAAA,EAAAjB,MAAA,CAAAsB,wBAAA,CAAAJ,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAEjD,MAAMgB,eAAe,GAAGC,IAAA,IAA6C;EAAA,IAA5C;IAACC;EAAqC,CAAC,GAAAD,IAAA;EAC9D,oBACE,IAAAnB,WAAA,CAAAqB,GAAA,EAACvB,iBAAA,CAAAwB,aAAa;IAACC,KAAK,EAAE,CAAC,CAAE;IAAAH,QAAA,eACvB,IAAApB,WAAA,CAAAqB,GAAA,EAACtB,WAAA,CAAAyB,kBAAkB;MAACC,WAAW,EAAC,EAAE;MAACC,aAAa,EAAEA,CAAA,KAAM,KAAM;MAACC,QAAQ,EAAEA,CAAA,KAAM,CAAC,CAAE;MAAAP,QAAA,EAC/EA;IAAQ,CACS;EAAC,CACR,CAAC;AAEpB,CAAC;AAED,MAAMQ,YAAY,GAAGA,CACnBC,EAAqB,EACrBC,OAAwC,KACrC,IAAAC,cAAM,EAACF,EAAE,EAAAlB,aAAA;EAAGqB,OAAO,EAAEd;AAAe,GAAKY,OAAO,CAAC,CAAC;AAAApC,OAAA,CAAAqC,MAAA,GAAAH,YAAA","ignoreList":[]}
@@ -4,6 +4,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
4
4
  import React from 'react';
5
5
  import { render } from '@testing-library/react';
6
6
  import { ThemeProvider } from 'styled-components';
7
+ import { NavigationProvider } from './Navigation';
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  const AllTheProviders = _ref => {
9
10
  let {
@@ -11,7 +12,12 @@ const AllTheProviders = _ref => {
11
12
  } = _ref;
12
13
  return /*#__PURE__*/_jsx(ThemeProvider, {
13
14
  theme: {},
14
- children: children
15
+ children: /*#__PURE__*/_jsx(NavigationProvider, {
16
+ currentPath: "",
17
+ isActiveRoute: () => false,
18
+ navigate: () => {},
19
+ children: children
20
+ })
15
21
  });
16
22
  };
17
23
  const customRender = (ui, options) => render(ui, _objectSpread({
@@ -1 +1 @@
1
- {"version":3,"file":"test-utils.js","names":["React","render","ThemeProvider","jsx","_jsx","AllTheProviders","_ref","children","theme","customRender","ui","options","_objectSpread","wrapper"],"sources":["../src/test-utils.tsx"],"sourcesContent":["import React, {ReactElement} from 'react'\r\nimport {render, RenderOptions} from '@testing-library/react'\r\nimport {ThemeProvider} from 'styled-components'\r\n\r\nconst AllTheProviders = ({children}: {children: React.ReactNode}) => {\r\n return (\r\n <ThemeProvider theme={{}}>\r\n {children}\r\n </ThemeProvider>\r\n )\r\n}\r\n\r\nconst customRender = (\r\n ui: ReactElement<any>,\r\n options?: Omit<RenderOptions, 'wrapper'>,\r\n) => render(ui, {wrapper: AllTheProviders, ...options})\r\n\r\nexport * from '@testing-library/react'\r\nexport {customRender as render}"],"mappings":";;;AAAA,OAAOA,KAAK,MAAsB,OAAO;AACzC,SAAQC,MAAM,QAAsB,wBAAwB;AAC5D,SAAQC,aAAa,QAAO,mBAAmB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAE/C,MAAMC,eAAe,GAAGC,IAAA,IAA6C;EAAA,IAA5C;IAACC;EAAqC,CAAC,GAAAD,IAAA;EAC9D,oBACEF,IAAA,CAACF,aAAa;IAACM,KAAK,EAAE,CAAC,CAAE;IAAAD,QAAA,EACpBA;EAAQ,CACE,CAAC;AAEpB,CAAC;AAED,MAAME,YAAY,GAAGA,CACnBC,EAAqB,EACrBC,OAAwC,KACrCV,MAAM,CAACS,EAAE,EAAAE,aAAA;EAAGC,OAAO,EAAER;AAAe,GAAKM,OAAO,CAAC,CAAC;AAEvD,cAAc,wBAAwB;AACtC,SAAQF,YAAY,IAAIR,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"test-utils.js","names":["React","render","ThemeProvider","NavigationProvider","jsx","_jsx","AllTheProviders","_ref","children","theme","currentPath","isActiveRoute","navigate","customRender","ui","options","_objectSpread","wrapper"],"sources":["../src/test-utils.tsx"],"sourcesContent":["import React, {ReactElement} from 'react'\r\nimport {render, RenderOptions} from '@testing-library/react'\r\nimport {ThemeProvider} from 'styled-components'\r\nimport { NavigationProvider } from './Navigation'\r\n\r\nconst AllTheProviders = ({children}: {children: React.ReactNode}) => {\r\n return (\r\n <ThemeProvider theme={{}}>\r\n <NavigationProvider currentPath='' isActiveRoute={() => false} navigate={() => {}}>\r\n {children}\r\n </NavigationProvider>\r\n </ThemeProvider>\r\n )\r\n}\r\n\r\nconst customRender = (\r\n ui: ReactElement<any>,\r\n options?: Omit<RenderOptions, 'wrapper'>,\r\n) => render(ui, {wrapper: AllTheProviders, ...options})\r\n\r\nexport * from '@testing-library/react'\r\nexport {customRender as render}"],"mappings":";;;AAAA,OAAOA,KAAK,MAAsB,OAAO;AACzC,SAAQC,MAAM,QAAsB,wBAAwB;AAC5D,SAAQC,aAAa,QAAO,mBAAmB;AAC/C,SAASC,kBAAkB,QAAQ,cAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAEjD,MAAMC,eAAe,GAAGC,IAAA,IAA6C;EAAA,IAA5C;IAACC;EAAqC,CAAC,GAAAD,IAAA;EAC9D,oBACEF,IAAA,CAACH,aAAa;IAACO,KAAK,EAAE,CAAC,CAAE;IAAAD,QAAA,eACvBH,IAAA,CAACF,kBAAkB;MAACO,WAAW,EAAC,EAAE;MAACC,aAAa,EAAEA,CAAA,KAAM,KAAM;MAACC,QAAQ,EAAEA,CAAA,KAAM,CAAC,CAAE;MAAAJ,QAAA,EAC/EA;IAAQ,CACS;EAAC,CACR,CAAC;AAEpB,CAAC;AAED,MAAMK,YAAY,GAAGA,CACnBC,EAAqB,EACrBC,OAAwC,KACrCd,MAAM,CAACa,EAAE,EAAAE,aAAA;EAAGC,OAAO,EAAEX;AAAe,GAAKS,OAAO,CAAC,CAAC;AAEvD,cAAc,wBAAwB;AACtC,SAAQF,YAAY,IAAIZ,MAAM","ignoreList":[]}