@dfds-ui/experiences 0.10.0-alpha.192ac9d0 → 0.10.0-alpha.2d2ac3e0

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 (76) hide show
  1. package/cjs/dynamic-table/Body/TableBody.js +57 -0
  2. package/cjs/dynamic-table/Body/TableBody.types.js +5 -0
  3. package/cjs/dynamic-table/Body/TableCell.js +26 -0
  4. package/cjs/dynamic-table/Body/TableCell.styles.js +43 -0
  5. package/cjs/dynamic-table/Body/TableCell.types.js +5 -0
  6. package/cjs/dynamic-table/Body/TableRow.js +50 -0
  7. package/cjs/dynamic-table/Body/TableRow.styles.js +39 -0
  8. package/cjs/dynamic-table/Body/TableRow.types.js +5 -0
  9. package/cjs/dynamic-table/DynamicTable.js +55 -174
  10. package/cjs/dynamic-table/DynamicTable.styles.js +23 -29
  11. package/cjs/dynamic-table/DynamicTable.types.js +5 -0
  12. package/cjs/dynamic-table/Head/TableHead.js +85 -0
  13. package/cjs/dynamic-table/Head/TableHead.styles.js +89 -0
  14. package/cjs/dynamic-table/Head/TableHead.types.js +5 -0
  15. package/cjs/dynamic-table/Skeleton/SkeletonTable.styles.js +28 -0
  16. package/cjs/dynamic-table/Skeleton/helpers/createSkeletonRows.js +40 -0
  17. package/cjs/dynamic-table/helpers/getHeaderRow.js +27 -0
  18. package/cjs/dynamic-table/stories/headerRow.js +26 -0
  19. package/cjs/dynamic-table/stories/headerRowSortable.js +28 -0
  20. package/cjs/dynamic-table/stories/tableRows.js +76 -0
  21. package/dynamic-table/Body/TableBody.d.ts +4 -0
  22. package/dynamic-table/Body/TableBody.js +52 -0
  23. package/dynamic-table/Body/TableBody.types.d.ts +10 -0
  24. package/dynamic-table/Body/TableBody.types.js +1 -0
  25. package/dynamic-table/Body/TableCell.d.ts +4 -0
  26. package/dynamic-table/Body/TableCell.js +13 -0
  27. package/dynamic-table/Body/TableCell.styles.d.ts +14 -0
  28. package/dynamic-table/Body/TableCell.styles.js +32 -0
  29. package/dynamic-table/Body/TableCell.types.d.ts +5 -0
  30. package/dynamic-table/Body/TableCell.types.js +1 -0
  31. package/dynamic-table/Body/TableRow.d.ts +4 -0
  32. package/dynamic-table/Body/TableRow.js +38 -0
  33. package/dynamic-table/Body/TableRow.styles.d.ts +10 -0
  34. package/dynamic-table/Body/TableRow.styles.js +23 -0
  35. package/dynamic-table/Body/TableRow.types.d.ts +10 -0
  36. package/dynamic-table/Body/TableRow.types.js +1 -0
  37. package/dynamic-table/DynamicTable.d.ts +4 -29
  38. package/dynamic-table/DynamicTable.js +55 -189
  39. package/dynamic-table/DynamicTable.styles.d.ts +12 -5
  40. package/dynamic-table/DynamicTable.styles.js +16 -17
  41. package/dynamic-table/DynamicTable.types.d.ts +26 -0
  42. package/dynamic-table/DynamicTable.types.js +1 -0
  43. package/dynamic-table/Head/TableHead.d.ts +4 -0
  44. package/dynamic-table/Head/TableHead.js +69 -0
  45. package/dynamic-table/Head/TableHead.styles.d.ts +24 -0
  46. package/dynamic-table/Head/TableHead.styles.js +72 -0
  47. package/dynamic-table/Head/TableHead.types.d.ts +33 -0
  48. package/dynamic-table/Head/TableHead.types.js +1 -0
  49. package/dynamic-table/Skeleton/SkeletonTable.styles.d.ts +4 -0
  50. package/dynamic-table/Skeleton/SkeletonTable.styles.js +18 -0
  51. package/dynamic-table/Skeleton/helpers/createSkeletonRows.d.ts +3 -0
  52. package/dynamic-table/Skeleton/helpers/createSkeletonRows.js +43 -0
  53. package/dynamic-table/helpers/getHeaderRow.d.ts +3 -0
  54. package/dynamic-table/helpers/getHeaderRow.js +19 -0
  55. package/dynamic-table/stories/headerRow.d.ts +3 -0
  56. package/dynamic-table/stories/headerRow.js +19 -0
  57. package/dynamic-table/stories/headerRowSortable.d.ts +3 -0
  58. package/dynamic-table/stories/headerRowSortable.js +21 -0
  59. package/dynamic-table/stories/tableRows.d.ts +3 -0
  60. package/dynamic-table/stories/tableRows.js +67 -0
  61. package/package.json +9 -9
  62. package/cjs/dynamic-table/DynamicTable.d.ts +0 -29
  63. package/cjs/dynamic-table/DynamicTable.styles.d.ts +0 -5
  64. package/cjs/footer/Footer.d.ts +0 -23
  65. package/cjs/footer/FooterColumn.d.ts +0 -11
  66. package/cjs/footer/FooterColumnItem.d.ts +0 -7
  67. package/cjs/footer/FooterMetaLink.d.ts +0 -7
  68. package/cjs/footer/index.d.ts +0 -4
  69. package/cjs/index.d.ts +0 -5
  70. package/cjs/internet-explorer-modal/IEModal.d.ts +0 -69
  71. package/cjs/locale-selector/LocaleOption.d.ts +0 -8
  72. package/cjs/locale-selector/LocaleSelector.d.ts +0 -49
  73. package/cjs/locale-selector/index.d.ts +0 -1
  74. package/cjs/swiper/Swiper.d.ts +0 -5
  75. package/cjs/swiper/SwiperCard.d.ts +0 -5
  76. package/cjs/swiper/index.d.ts +0 -2
@@ -0,0 +1,38 @@
1
+ import React from 'react';
2
+ import { Checkbox } from '@dfds-ui/forms';
3
+ import TableCell from './TableCell';
4
+ import { TableCellCheckboxStyled } from './TableCell.styles';
5
+ import { TableRowStyled } from './TableRow.styles';
6
+ import { jsx as ___EmotionJSX } from "@emotion/react";
7
+ var TableRow = /*#__PURE__*/React.memo(function (_ref) {
8
+ var headerRow = _ref.headerRow,
9
+ isActive = _ref.isActive,
10
+ onClickRow = _ref.onClickRow,
11
+ onSelectRow = _ref.onSelectRow,
12
+ row = _ref.row,
13
+ selectableRows = _ref.selectableRows,
14
+ selectedRows = _ref.selectedRows;
15
+ return ___EmotionJSX(TableRowStyled, {
16
+ active: isActive,
17
+ hoverColor: !!onClickRow,
18
+ onClick: function onClick() {
19
+ return onClickRow && onClickRow(row.id ? String(row.id) : '');
20
+ }
21
+ }, selectableRows && row.id && ___EmotionJSX(TableCellCheckboxStyled, null, ___EmotionJSX(Checkbox, {
22
+ checked: selectedRows.includes(row.id),
23
+ name: row.id,
24
+ onChange: function onChange() {
25
+ onSelectRow(row.id);
26
+ },
27
+ onLabelClick: function onLabelClick(e) {
28
+ e.stopPropagation();
29
+ },
30
+ visualSize: "small"
31
+ })), headerRow.map(function (headerCell, index) {
32
+ return ___EmotionJSX(TableCell, {
33
+ headerCell: headerRow === null || headerRow === void 0 ? void 0 : headerRow[index],
34
+ key: index
35
+ }, row[headerCell.key] || '-');
36
+ }));
37
+ });
38
+ export default TableRow;
@@ -0,0 +1,10 @@
1
+ export declare const genericTableRowStyle: import("@emotion/react").SerializedStyles;
2
+ declare type TableRowProps = {
3
+ active?: boolean;
4
+ hoverColor: boolean;
5
+ };
6
+ export declare const TableRowStyled: import("@emotion/styled").StyledComponent<{
7
+ theme?: import("@emotion/react").Theme | undefined;
8
+ as?: import("react").ElementType<any> | undefined;
9
+ } & TableRowProps, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>, {}>;
10
+ export {};
@@ -0,0 +1,23 @@
1
+ import _styled from "@emotion/styled/base";
2
+
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
4
+
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
6
+
7
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
+
9
+ import { theme } from '@dfds-ui/theme';
10
+ import { css } from '@emotion/react';
11
+ export var genericTableRowStyle = /*#__PURE__*/css("border-bottom:1px solid ", theme.colors.surface.secondary, ";border-collapse:collapse;height:48px;" + (process.env.NODE_ENV === "production" ? "" : ";label:genericTableRowStyle;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0JvZHkvVGFibGVSb3cuc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJdUMiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL2R5bmFtaWMtdGFibGUvQm9keS9UYWJsZVJvdy5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdGhlbWUgfSBmcm9tICdAZGZkcy11aS90aGVtZSdcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5cbmV4cG9ydCBjb25zdCBnZW5lcmljVGFibGVSb3dTdHlsZSA9IGNzc2BcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7dGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgaGVpZ2h0OiA0OHB4O1xuYFxuXG50eXBlIFRhYmxlUm93UHJvcHMgPSB7XG4gIGFjdGl2ZT86IGJvb2xlYW5cbiAgaG92ZXJDb2xvcjogYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgVGFibGVSb3dTdHlsZWQgPSBzdHlsZWQudHI8VGFibGVSb3dQcm9wcz5gXG4gICR7eyAuLi5nZW5lcmljVGFibGVSb3dTdHlsZSB9fVxuXG4gICY6aG92ZXIge1xuICAgICR7KHsgaG92ZXJDb2xvciB9KSA9PlxuICAgICAgaG92ZXJDb2xvciAmJlxuICAgICAgYFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9ycy5zdXJmYWNlLnNlY29uZGFyeX07XG4gICAgICAgIGN1cnNvcjogJHtob3ZlckNvbG9yICYmICdwb2ludGVyJ307XG4gICAgICBgfTtcbiAgfVxuXG4gICR7KHsgYWN0aXZlIH0pID0+XG4gICAgYWN0aXZlICYmXG4gICAgYFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCA0MywgNjksIDAuMTIpO1xuICAgIGB9O1xuYFxuIl19 */");
12
+ export var TableRowStyled = _styled("tr", process.env.NODE_ENV === "production" ? {
13
+ target: "e1ozhs4m0"
14
+ } : {
15
+ target: "e1ozhs4m0",
16
+ label: "TableRowStyled"
17
+ })(_objectSpread({}, genericTableRowStyle), " &:hover{", function (_ref) {
18
+ var hoverColor = _ref.hoverColor;
19
+ return hoverColor && "\n background-color: ".concat(theme.colors.surface.secondary, ";\n cursor: ").concat(hoverColor && 'pointer', ";\n ");
20
+ }, ";}", function (_ref2) {
21
+ var active = _ref2.active;
22
+ return active && "\n background-color: rgba(0, 43, 69, 0.12);\n ";
23
+ }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0JvZHkvVGFibGVSb3cuc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlc0QiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL2R5bmFtaWMtdGFibGUvQm9keS9UYWJsZVJvdy5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdGhlbWUgfSBmcm9tICdAZGZkcy11aS90aGVtZSdcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5cbmV4cG9ydCBjb25zdCBnZW5lcmljVGFibGVSb3dTdHlsZSA9IGNzc2BcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7dGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgaGVpZ2h0OiA0OHB4O1xuYFxuXG50eXBlIFRhYmxlUm93UHJvcHMgPSB7XG4gIGFjdGl2ZT86IGJvb2xlYW5cbiAgaG92ZXJDb2xvcjogYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgVGFibGVSb3dTdHlsZWQgPSBzdHlsZWQudHI8VGFibGVSb3dQcm9wcz5gXG4gICR7eyAuLi5nZW5lcmljVGFibGVSb3dTdHlsZSB9fVxuXG4gICY6aG92ZXIge1xuICAgICR7KHsgaG92ZXJDb2xvciB9KSA9PlxuICAgICAgaG92ZXJDb2xvciAmJlxuICAgICAgYFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9ycy5zdXJmYWNlLnNlY29uZGFyeX07XG4gICAgICAgIGN1cnNvcjogJHtob3ZlckNvbG9yICYmICdwb2ludGVyJ307XG4gICAgICBgfTtcbiAgfVxuXG4gICR7KHsgYWN0aXZlIH0pID0+XG4gICAgYWN0aXZlICYmXG4gICAgYFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCA0MywgNjksIDAuMTIpO1xuICAgIGB9O1xuYFxuIl19 */"));
@@ -0,0 +1,10 @@
1
+ import { Header, Row } from '../DynamicTable.types';
2
+ export declare type TableRowProps = {
3
+ headerRow: Header[];
4
+ isActive?: boolean;
5
+ onClickRow?: (id: string) => void;
6
+ onSelectRow: (id: string) => void;
7
+ row: Row;
8
+ selectableRows: boolean;
9
+ selectedRows: string[];
10
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,29 +1,4 @@
1
- import { FunctionComponent } from 'react';
2
- declare type DataKey = {
3
- displayName: string;
4
- key: string;
5
- rightAlign?: boolean;
6
- customColumnWidth?: string;
7
- bold?: boolean;
8
- };
9
- declare type DynamicTableProps = {
10
- data: any[];
11
- dataKeys?: DataKey[];
12
- className?: string;
13
- hasHeader?: boolean;
14
- colorScheme?: {
15
- valueKey: string;
16
- colors: any;
17
- };
18
- badgesScheme?: {
19
- valueKey: string;
20
- intentMapping: any;
21
- };
22
- fixedHeight?: string;
23
- stickyHeader?: boolean;
24
- onSortByKey?: (value: string, sortByDescending: boolean) => void;
25
- onSelectFunction?: (list: string[]) => void;
26
- onSelectRow?: (id: string) => void;
27
- };
28
- declare const DynamicTable: FunctionComponent<DynamicTableProps>;
29
- export default DynamicTable;
1
+ import React from 'react';
2
+ import { DynamicTableProps } from './DynamicTable.types';
3
+ declare const _default: React.NamedExoticComponent<DynamicTableProps>;
4
+ export default _default;
@@ -1,11 +1,3 @@
1
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
-
3
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
-
5
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
6
-
7
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
8
-
9
1
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
2
 
11
3
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -18,198 +10,72 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
18
10
 
19
11
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
20
12
 
21
- import React, { useState, useEffect } from 'react';
22
- import { Badge, Checkbox } from '@dfds-ui/react-components';
23
- import { dynamicTableWrapperStyle, downStyle, cellStyle, thStyle, rowStyle } from './DynamicTable.styles';
24
- import { ChevronDown } from '@dfds-ui/icons/system';
13
+ import React, { useEffect, useMemo, useState } from 'react';
14
+ import TableBody from './Body/TableBody';
15
+ import { TableStyled, TableWrapperStyled } from './DynamicTable.styles';
16
+ import TableHead from './Head/TableHead';
17
+ import createSkeletonRows from './Skeleton/helpers/createSkeletonRows';
18
+ import { Fade } from './Skeleton/SkeletonTable.styles';
25
19
  import { jsx as ___EmotionJSX } from "@emotion/react";
26
20
 
27
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
28
21
  var DynamicTable = function DynamicTable(_ref) {
29
- var data = _ref.data,
30
- dataKeys = _ref.dataKeys,
31
- className = _ref.className,
32
- hasHeader = _ref.hasHeader,
33
- onSortByKey = _ref.onSortByKey,
34
- onSelectFunction = _ref.onSelectFunction,
22
+ var activeRow = _ref.activeRow,
23
+ descending = _ref.descending,
24
+ height = _ref.height,
25
+ headerRow = _ref.headerRow,
26
+ isLoading = _ref.isLoading,
27
+ onClickRow = _ref.onClickRow,
35
28
  onSelectRow = _ref.onSelectRow,
36
- colorScheme = _ref.colorScheme,
37
- badgesScheme = _ref.badgesScheme,
38
- fixedHeight = _ref.fixedHeight,
29
+ onSort = _ref.onSort,
30
+ rows = _ref.rows,
31
+ _ref$selectedRows = _ref.selectedRows,
32
+ selectedRows = _ref$selectedRows === void 0 ? [] : _ref$selectedRows,
33
+ sortingBy = _ref.sortingBy,
39
34
  stickyHeader = _ref.stickyHeader;
40
- var keys = dataKeys || [];
41
-
42
- if (!dataKeys) {
43
- var newKeys = Object.keys(data[0]);
44
-
45
- for (var i = 0; i < newKeys.length; i++) {
46
- keys.push({
47
- displayName: newKeys[i],
48
- key: newKeys[i],
49
- rightAlign: false
50
- });
51
- }
52
-
53
- keys = dataKeys || keys;
54
- }
55
-
56
- var itemsAreSelectable = onSelectFunction && keys.some(function (key) {
57
- return key.key === 'id';
58
- }); // states
59
35
 
60
- var _useState = useState([]),
36
+ // states
37
+ var _useState = useState(sortingBy || ''),
61
38
  _useState2 = _slicedToArray(_useState, 2),
62
- selectedRows = _useState2[0],
63
- setSelectedRows = _useState2[1];
39
+ sortByKeyValue = _useState2[0],
40
+ setSortByKeyValue = _useState2[1];
64
41
 
65
- var _useState3 = useState(''),
42
+ var _useState3 = useState(sortingBy && descending || false),
66
43
  _useState4 = _slicedToArray(_useState3, 2),
67
- sortByKeyValue = _useState4[0],
68
- setSortByKeyValue = _useState4[1];
69
-
70
- var _useState5 = useState(false),
71
- _useState6 = _slicedToArray(_useState5, 2),
72
- sortByDescending = _useState6[0],
73
- setSortByDescending = _useState6[1];
44
+ sortDescending = _useState4[0],
45
+ setSortDescending = _useState4[1];
74
46
 
47
+ var selectableRows = !!onSelectRow;
48
+ var skeletonRows = useMemo(function () {
49
+ return createSkeletonRows(headerRow);
50
+ }, [headerRow]);
75
51
  useEffect(function () {
76
- onSelectFunction && onSelectFunction(selectedRows);
77
- }, [onSelectFunction, selectedRows]); // update state and callback functions
78
-
79
- var updateSelectedRows = function updateSelectedRows(id) {
80
- if (itemsAreSelectable) {
81
- var selection = _toConsumableArray(selectedRows);
82
-
83
- if (selectedRows.includes(id)) {
84
- var index = selectedRows.indexOf(id);
85
- if (index !== -1) selection.splice(index, 1);
86
- setSelectedRows(selection);
87
- } else {
88
- selection.push(id);
89
- setSelectedRows(selection);
90
- }
91
- }
92
- };
93
-
94
- var toggleAll = function toggleAll() {
95
- if (onSelectFunction) {
96
- if (selectedRows.length === 0) {
97
- var newArray = [];
98
-
99
- for (var _i2 = 0; _i2 < data.length; _i2++) {
100
- newArray.push(data[_i2].id);
101
- }
102
-
103
- setSelectedRows(newArray);
104
- onSelectFunction(selectedRows);
105
- } else {
106
- setSelectedRows([]);
107
- onSelectFunction(selectedRows);
108
- }
109
- }
110
- };
111
-
112
- var sort = function sort(oldKey, newKey) {
113
- if (onSortByKey) {
114
- if (oldKey !== newKey) {
115
- setSortByKeyValue(newKey);
116
- setSortByDescending(false);
117
- } else {
118
- setSortByDescending(!sortByDescending);
119
- }
120
- }
121
- };
122
-
123
- var selectRow = function selectRow(id) {
124
- onSelectRow && onSelectRow(id);
125
- };
126
-
127
- useEffect(function () {
128
- if (onSortByKey) {
129
- onSortByKey(sortByKeyValue, sortByDescending);
130
- }
131
- }, [sortByDescending, sortByKeyValue, onSortByKey]);
132
- return ___EmotionJSX("div", {
133
- css: dynamicTableWrapperStyle({
134
- stickyHeader: stickyHeader,
135
- fixedHeight: fixedHeight,
136
- columns: keys.length,
137
- onSelectFunction: onSelectFunction,
138
- onSortByKey: onSortByKey
139
- })
140
- }, ___EmotionJSX("table", {
141
- className: className
142
- }, hasHeader && ___EmotionJSX("thead", null, ___EmotionJSX("tr", null, itemsAreSelectable && ___EmotionJSX("th", {
143
- className: "checkboxColumn"
144
- }, ___EmotionJSX(Checkbox, {
145
- indeterminate: true,
146
- size: "small",
147
- name: "all",
148
- checked: selectedRows.length > 0,
149
- onChange: function onChange() {
150
- toggleAll();
52
+ if (onSort) {
53
+ onSort(sortByKeyValue, sortDescending);
151
54
  }
152
- })), keys.map(function (key, i) {
153
- return ___EmotionJSX("th", {
154
- css: thStyle({
155
- onSelectFunction: !!onSelectFunction,
156
- columns: keys.length,
157
- align: key.rightAlign ? 'right' : 'left',
158
- customColumnWidth: key.customColumnWidth
159
- }),
160
- onClick: function onClick() {
161
- return sort(sortByKeyValue, key.key);
162
- },
163
- key: i,
164
- align: key.rightAlign ? 'right' : 'left'
165
- }, onSortByKey && key.rightAlign && ___EmotionJSX(ChevronDown, {
166
- css: downStyle({
167
- showArrow: sortByKeyValue === key.key,
168
- descending: sortByDescending
169
- })
170
- }), key.displayName, onSortByKey && !key.rightAlign && ___EmotionJSX(ChevronDown, {
171
- css: downStyle({
172
- showArrow: sortByKeyValue === key.key,
173
- descending: sortByDescending
174
- })
175
- }));
176
- }))), ___EmotionJSX("tbody", null, data.map(function (row, i) {
177
- return ___EmotionJSX("tr", {
178
- className: "dynamicTableRow-".concat(i),
179
- css: rowStyle({
180
- hoverColor: !!onSelectRow
181
- }),
182
- key: i
183
- }, itemsAreSelectable && ___EmotionJSX("td", {
184
- className: "checkboxColumn"
185
- }, ___EmotionJSX(Checkbox, {
186
- size: "small",
187
- name: row.id,
188
- checked: selectedRows.includes(row.id),
189
- onChange: function onChange() {
190
- updateSelectedRows(row.id);
191
- }
192
- })), keys.map(function (cell, index) {
193
- var cellElement = row[cell.key];
194
- return ___EmotionJSX("td", {
195
- className: "dynamicTableColumn-".concat(cell.key),
196
- onClick: function onClick() {
197
- return onSelectRow && row.id ? selectRow(row.id) : null;
198
- },
199
- css: cellStyle({
200
- onSelectFunction: !!onSelectFunction,
201
- columns: keys.length,
202
- bold: cell.bold,
203
- customColumnWidth: cell.customColumnWidth,
204
- color: !badgesScheme && colorScheme && colorScheme.colors && colorScheme.colors[cellElement] || null
205
- }),
206
- align: cell.rightAlign ? 'right' : 'left',
207
- key: index
208
- }, !(badgesScheme !== null && badgesScheme !== void 0 && badgesScheme.intentMapping[cellElement]) && ___EmotionJSX("span", null, cellElement || '-'), (badgesScheme === null || badgesScheme === void 0 ? void 0 : badgesScheme.intentMapping[cellElement]) && ___EmotionJSX(Badge, {
209
- intent: badgesScheme.intentMapping[cellElement]
210
- }, cellElement || '-'));
211
- }));
212
- }))));
55
+ }, [sortDescending, onSort, sortByKeyValue]);
56
+ return ___EmotionJSX(TableWrapperStyled, {
57
+ height: height
58
+ }, ___EmotionJSX(TableStyled, null, headerRow && ___EmotionJSX(TableHead, {
59
+ headerRow: headerRow,
60
+ onSelectRow: onSelectRow,
61
+ onSort: onSort,
62
+ rows: rows,
63
+ selectableRows: selectableRows,
64
+ selectedRows: selectedRows,
65
+ setSortDescending: setSortDescending,
66
+ setSortByKeyValue: setSortByKeyValue,
67
+ sortDescending: sortDescending,
68
+ sortByKeyValue: sortByKeyValue,
69
+ stickyHeader: stickyHeader
70
+ }), ___EmotionJSX(TableBody, {
71
+ activeRow: activeRow,
72
+ headerRow: headerRow,
73
+ onClickRow: onClickRow,
74
+ onSelectRow: onSelectRow,
75
+ rows: !isLoading ? rows : skeletonRows,
76
+ selectableRows: selectableRows,
77
+ selectedRows: selectedRows
78
+ })), isLoading && ___EmotionJSX(Fade, null));
213
79
  };
214
80
 
215
- export default DynamicTable;
81
+ export default /*#__PURE__*/React.memo(DynamicTable);
@@ -1,5 +1,12 @@
1
- export declare const dynamicTableWrapperStyle: (props: any) => import("@emotion/react").SerializedStyles;
2
- export declare const thStyle: (props: any) => import("@emotion/react").SerializedStyles;
3
- export declare const rowStyle: (props: any) => import("@emotion/react").SerializedStyles;
4
- export declare const cellStyle: (props: any) => import("@emotion/react").SerializedStyles;
5
- export declare const downStyle: (props: any) => import("@emotion/react").SerializedStyles;
1
+ declare type TableWrapperProps = {
2
+ height?: string;
3
+ };
4
+ export declare const TableWrapperStyled: import("@emotion/styled").StyledComponent<{
5
+ theme?: import("@emotion/react").Theme | undefined;
6
+ as?: import("react").ElementType<any> | undefined;
7
+ } & TableWrapperProps, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
8
+ export declare const TableStyled: import("@emotion/styled").StyledComponent<{
9
+ theme?: import("@emotion/react").Theme | undefined;
10
+ as?: import("react").ElementType<any> | undefined;
11
+ }, import("react").DetailedHTMLProps<import("react").TableHTMLAttributes<HTMLTableElement>, HTMLTableElement>, {}>;
12
+ export {};
@@ -1,18 +1,17 @@
1
- import { css } from '@emotion/react';
1
+ import _styled from "@emotion/styled/base";
2
2
  import { theme } from '@dfds-ui/theme';
3
- import { dividerBorder } from '@dfds-ui/react-components/divider';
4
- export var dynamicTableWrapperStyle = function dynamicTableWrapperStyle(props) {
5
- return /*#__PURE__*/css("width:100%;overflow-x:auto;overflow-y:", props.fixedHeight && 'auto', ";height:", props.fixedHeight, ";table{font-size:12px;line-height:16px;background-color:", theme.colors.surface.primary, ";tr{height:48px;border-collapse:collapse;td,th{color:", theme.colors.primary.main, ";padding:0 5px;", dividerBorder(false, 'bottom'), ";}th{position:", props.stickyHeader && 'sticky', ";background-color:", props.stickyHeader && theme.colors.surface.primary, ";z-index:", props.stickyHeader && '10', ";top:-1px;transition-duration:500ms;&:hover{background-color:", props.onSortByKey && theme.colors.surface.secondary, ";cursor:", props.onSortByKey && 'pointer', ";}}.checkboxColumn{width:36px;min-width:unset;&:hover{background-color:unset;}}}}" + (process.env.NODE_ENV === "production" ? "" : ";label:dynamicTableWrapperStyle;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0R5bmFtaWNUYWJsZS5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUkyRCIsImZpbGUiOiIuLi8uLi9zcmMvZHluYW1pYy10YWJsZS9EeW5hbWljVGFibGUuc3R5bGVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICdAZGZkcy11aS90aGVtZSdcbmltcG9ydCB7IGRpdmlkZXJCb3JkZXIgfSBmcm9tICdAZGZkcy11aS9yZWFjdC1jb21wb25lbnRzL2RpdmlkZXInXG5cbmV4cG9ydCBjb25zdCBkeW5hbWljVGFibGVXcmFwcGVyU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogJHtwcm9wcy5maXhlZEhlaWdodCAmJiAnYXV0byd9O1xuICBoZWlnaHQ6ICR7cHJvcHMuZml4ZWRIZWlnaHR9O1xuICB0YWJsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7dGhlbWUuY29sb3JzLnN1cmZhY2UucHJpbWFyeX07XG4gICAgdHIge1xuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGNvbG9yOiAke3RoZW1lLmNvbG9ycy5wcmltYXJ5Lm1haW59O1xuICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgJHtkaXZpZGVyQm9yZGVyKGZhbHNlLCAnYm90dG9tJyl9O1xuICAgICAgfVxuXG4gICAgICB0aCB7XG4gICAgICAgIHBvc2l0aW9uOiAke3Byb3BzLnN0aWNreUhlYWRlciAmJiAnc3RpY2t5J307XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMuc3RpY2t5SGVhZGVyICYmIHRoZW1lLmNvbG9ycy5zdXJmYWNlLnByaW1hcnl9O1xuICAgICAgICB6LWluZGV4OiAke3Byb3BzLnN0aWNreUhlYWRlciAmJiAnMTAnfTtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcy5vblNvcnRCeUtleSAmJiB0aGVtZS5jb2xvcnMuc3VyZmFjZS5zZWNvbmRhcnl9O1xuICAgICAgICAgIGN1cnNvcjogJHtwcm9wcy5vblNvcnRCeUtleSAmJiAncG9pbnRlcid9O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jaGVja2JveENvbHVtbiB7XG4gICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgdGhTdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIHRleHQtYWxpZ246ICR7cHJvcHMuYWxpZ259O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8IGBjYWxjKCgxMDAlICR7cHJvcHMub25TZWxlY3RGdW5jdGlvbiAmJiAnLTM2cHgnfSkgLyAke3Byb3BzLmNvbHVtbnN9KWB9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMuY3VzdG9tQ29sdW1uV2lkdGggfHwgJ2F1dG8nfTtcbiAgc3ZnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIGxlZnQ6ICR7cHJvcHMuYWxpZ24gPT09ICdyaWdodCcgJiYgJzVweCd9O1xuICAgIHJpZ2h0OiAke3Byb3BzLmFsaWduID09PSAnbGVmdCcgJiYgJzVweCd9O1xuICB9XG4gICY6aG92ZXIge1xuICAgIHN2ZyB7XG4gICAgICBjb2xvcjogJHt0aGVtZS5jb2xvcnMucHJpbWFyeS5kYXJrfTtcbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IHJvd1N0eWxlID0gKHByb3BzOiBhbnkpID0+IGNzc2BcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwbXM7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMuaG92ZXJDb2xvciAmJiB0aGVtZS5jb2xvcnMuc3VyZmFjZS5zZWNvbmRhcnl9O1xuICAgIGN1cnNvcjogJHtwcm9wcy5ob3ZlckNvbG9yICYmICdwb2ludGVyJ307XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IGNlbGxTdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIGZvbnQtd2VpZ2h0OiAke3Byb3BzLmJvbGQgPyAnYm9sZCcgOiAnJ307XG4gIHdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8IGBjYWxjKCgxMDAlICR7cHJvcHMub25TZWxlY3RGdW5jdGlvbiAmJiAnLTM2cHgnfSkgLyAke3Byb3BzLmNvbHVtbnN9KWB9O1xuICBtaW4td2lkdGg6ICR7cHJvcHMuY3VzdG9tQ29sdW1uV2lkdGggfHwgJ2F1dG8nfTtcbiAgJHtwcm9wcy5jb2xvciAmJlxuICBgc3BhbiB7XG4gICAgICBjb2xvcjogJHtwcm9wcy5jb2xvci50Y307XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLmNvbG9yLmJnIHx8ICdub25lJ307XG4gICAgICBtYXJnaW46IDVweCAwO1xuICAgICAgcGFkZGluZzogMnB4IDhweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgfWB9O1xuYFxuXG5leHBvcnQgY29uc3QgZG93blN0eWxlID0gKHByb3BzOiBhbnkpID0+IGNzc2BcbiAgY29sb3I6ICR7cHJvcHMuc2hvd0Fycm93ID8gdGhlbWUuY29sb3JzLnByaW1hcnkuZGFyayA6ICd0cmFuc3BhcmVudCd9O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbiAgdHJhbnNmb3JtOiAkeyFwcm9wcy5kZXNjZW5kaW5nICYmICdyb3RhdGUoMTgwZGVnKSd9O1xuICBmb250LXNpemU6IDIwcHg7XG5gXG4iXX0= */");
6
- };
7
- export var thStyle = function thStyle(props) {
8
- return /*#__PURE__*/css("text-align:", props.align, ";position:relative;width:", props.customColumnWidth || "calc((100% ".concat(props.onSelectFunction && '-36px', ") / ").concat(props.columns, ")"), ";min-width:", props.customColumnWidth || 'auto', ";svg{position:absolute;top:calc(50% - 10px);left:", props.align === 'right' && '5px', ";right:", props.align === 'left' && '5px', ";}&:hover{svg{color:", theme.colors.primary.dark, ";}}" + (process.env.NODE_ENV === "production" ? "" : ";label:thStyle;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0R5bmFtaWNUYWJsZS5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStDMEMiLCJmaWxlIjoiLi4vLi4vc3JjL2R5bmFtaWMtdGFibGUvRHluYW1pY1RhYmxlLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGRmZHMtdWkvdGhlbWUnXG5pbXBvcnQgeyBkaXZpZGVyQm9yZGVyIH0gZnJvbSAnQGRmZHMtdWkvcmVhY3QtY29tcG9uZW50cy9kaXZpZGVyJ1xuXG5leHBvcnQgY29uc3QgZHluYW1pY1RhYmxlV3JhcHBlclN0eWxlID0gKHByb3BzOiBhbnkpID0+IGNzc2BcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6ICR7cHJvcHMuZml4ZWRIZWlnaHQgJiYgJ2F1dG8nfTtcbiAgaGVpZ2h0OiAke3Byb3BzLmZpeGVkSGVpZ2h0fTtcbiAgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9ycy5zdXJmYWNlLnByaW1hcnl9O1xuICAgIHRyIHtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBjb2xvcjogJHt0aGVtZS5jb2xvcnMucHJpbWFyeS5tYWlufTtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgICR7ZGl2aWRlckJvcmRlcihmYWxzZSwgJ2JvdHRvbScpfTtcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBwb3NpdGlvbjogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJ3N0aWNreSd9O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLnN0aWNreUhlYWRlciAmJiB0aGVtZS5jb2xvcnMuc3VyZmFjZS5wcmltYXJ5fTtcbiAgICAgICAgei1pbmRleDogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJzEwJ307XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICAgICAgICBjdXJzb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgJ3BvaW50ZXInfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2hlY2tib3hDb2x1bW4ge1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IHRoU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICB0ZXh0LWFsaWduOiAke3Byb3BzLmFsaWdufTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBsZWZ0OiAke3Byb3BzLmFsaWduID09PSAncmlnaHQnICYmICc1cHgnfTtcbiAgICByaWdodDogJHtwcm9wcy5hbGlnbiA9PT0gJ2xlZnQnICYmICc1cHgnfTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBzdmcge1xuICAgICAgY29sb3I6ICR7dGhlbWUuY29sb3JzLnByaW1hcnkuZGFya307XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCByb3dTdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLmhvdmVyQ29sb3IgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICBjdXJzb3I6ICR7cHJvcHMuaG92ZXJDb2xvciAmJiAncG9pbnRlcid9O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBjZWxsU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICBmb250LXdlaWdodDogJHtwcm9wcy5ib2xkID8gJ2JvbGQnIDogJyd9O1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gICR7cHJvcHMuY29sb3IgJiZcbiAgYHNwYW4ge1xuICAgICAgY29sb3I6ICR7cHJvcHMuY29sb3IudGN9O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcy5jb2xvci5iZyB8fCAnbm9uZSd9O1xuICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1gfTtcbmBcblxuZXhwb3J0IGNvbnN0IGRvd25TdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIGNvbG9yOiAke3Byb3BzLnNob3dBcnJvdyA/IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmRhcmsgOiAndHJhbnNwYXJlbnQnfTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gIHRyYW5zZm9ybTogJHshcHJvcHMuZGVzY2VuZGluZyAmJiAncm90YXRlKDE4MGRlZyknfTtcbiAgZm9udC1zaXplOiAyMHB4O1xuYFxuIl19 */");
9
- };
10
- export var rowStyle = function rowStyle(props) {
11
- return /*#__PURE__*/css("transition-duration:100ms;&:hover{background-color:", props.hoverColor && theme.colors.surface.secondary, ";cursor:", props.hoverColor && 'pointer', ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:rowStyle;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0R5bmFtaWNUYWJsZS5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlFMkMiLCJmaWxlIjoiLi4vLi4vc3JjL2R5bmFtaWMtdGFibGUvRHluYW1pY1RhYmxlLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGRmZHMtdWkvdGhlbWUnXG5pbXBvcnQgeyBkaXZpZGVyQm9yZGVyIH0gZnJvbSAnQGRmZHMtdWkvcmVhY3QtY29tcG9uZW50cy9kaXZpZGVyJ1xuXG5leHBvcnQgY29uc3QgZHluYW1pY1RhYmxlV3JhcHBlclN0eWxlID0gKHByb3BzOiBhbnkpID0+IGNzc2BcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6ICR7cHJvcHMuZml4ZWRIZWlnaHQgJiYgJ2F1dG8nfTtcbiAgaGVpZ2h0OiAke3Byb3BzLmZpeGVkSGVpZ2h0fTtcbiAgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9ycy5zdXJmYWNlLnByaW1hcnl9O1xuICAgIHRyIHtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBjb2xvcjogJHt0aGVtZS5jb2xvcnMucHJpbWFyeS5tYWlufTtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgICR7ZGl2aWRlckJvcmRlcihmYWxzZSwgJ2JvdHRvbScpfTtcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBwb3NpdGlvbjogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJ3N0aWNreSd9O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLnN0aWNreUhlYWRlciAmJiB0aGVtZS5jb2xvcnMuc3VyZmFjZS5wcmltYXJ5fTtcbiAgICAgICAgei1pbmRleDogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJzEwJ307XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICAgICAgICBjdXJzb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgJ3BvaW50ZXInfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2hlY2tib3hDb2x1bW4ge1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IHRoU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICB0ZXh0LWFsaWduOiAke3Byb3BzLmFsaWdufTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBsZWZ0OiAke3Byb3BzLmFsaWduID09PSAncmlnaHQnICYmICc1cHgnfTtcbiAgICByaWdodDogJHtwcm9wcy5hbGlnbiA9PT0gJ2xlZnQnICYmICc1cHgnfTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBzdmcge1xuICAgICAgY29sb3I6ICR7dGhlbWUuY29sb3JzLnByaW1hcnkuZGFya307XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCByb3dTdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLmhvdmVyQ29sb3IgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICBjdXJzb3I6ICR7cHJvcHMuaG92ZXJDb2xvciAmJiAncG9pbnRlcid9O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBjZWxsU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICBmb250LXdlaWdodDogJHtwcm9wcy5ib2xkID8gJ2JvbGQnIDogJyd9O1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gICR7cHJvcHMuY29sb3IgJiZcbiAgYHNwYW4ge1xuICAgICAgY29sb3I6ICR7cHJvcHMuY29sb3IudGN9O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcy5jb2xvci5iZyB8fCAnbm9uZSd9O1xuICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1gfTtcbmBcblxuZXhwb3J0IGNvbnN0IGRvd25TdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIGNvbG9yOiAke3Byb3BzLnNob3dBcnJvdyA/IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmRhcmsgOiAndHJhbnNwYXJlbnQnfTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gIHRyYW5zZm9ybTogJHshcHJvcHMuZGVzY2VuZGluZyAmJiAncm90YXRlKDE4MGRlZyknfTtcbiAgZm9udC1zaXplOiAyMHB4O1xuYFxuIl19 */");
12
- };
13
- export var cellStyle = function cellStyle(props) {
14
- return /*#__PURE__*/css("font-weight:", props.bold ? 'bold' : '', ";width:", props.customColumnWidth || "calc((100% ".concat(props.onSelectFunction && '-36px', ") / ").concat(props.columns, ")"), ";min-width:", props.customColumnWidth || 'auto', ";", props.color && "span {\n color: ".concat(props.color.tc, ";\n background-color: ").concat(props.color.bg || 'none', ";\n margin: 5px 0;\n padding: 2px 8px;\n border-radius: 10px;\n }"), ";" + (process.env.NODE_ENV === "production" ? "" : ";label:cellStyle;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0R5bmFtaWNUYWJsZS5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlFNEMiLCJmaWxlIjoiLi4vLi4vc3JjL2R5bmFtaWMtdGFibGUvRHluYW1pY1RhYmxlLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGRmZHMtdWkvdGhlbWUnXG5pbXBvcnQgeyBkaXZpZGVyQm9yZGVyIH0gZnJvbSAnQGRmZHMtdWkvcmVhY3QtY29tcG9uZW50cy9kaXZpZGVyJ1xuXG5leHBvcnQgY29uc3QgZHluYW1pY1RhYmxlV3JhcHBlclN0eWxlID0gKHByb3BzOiBhbnkpID0+IGNzc2BcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6ICR7cHJvcHMuZml4ZWRIZWlnaHQgJiYgJ2F1dG8nfTtcbiAgaGVpZ2h0OiAke3Byb3BzLmZpeGVkSGVpZ2h0fTtcbiAgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9ycy5zdXJmYWNlLnByaW1hcnl9O1xuICAgIHRyIHtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBjb2xvcjogJHt0aGVtZS5jb2xvcnMucHJpbWFyeS5tYWlufTtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgICR7ZGl2aWRlckJvcmRlcihmYWxzZSwgJ2JvdHRvbScpfTtcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBwb3NpdGlvbjogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJ3N0aWNreSd9O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLnN0aWNreUhlYWRlciAmJiB0aGVtZS5jb2xvcnMuc3VyZmFjZS5wcmltYXJ5fTtcbiAgICAgICAgei1pbmRleDogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJzEwJ307XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICAgICAgICBjdXJzb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgJ3BvaW50ZXInfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2hlY2tib3hDb2x1bW4ge1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IHRoU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICB0ZXh0LWFsaWduOiAke3Byb3BzLmFsaWdufTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBsZWZ0OiAke3Byb3BzLmFsaWduID09PSAncmlnaHQnICYmICc1cHgnfTtcbiAgICByaWdodDogJHtwcm9wcy5hbGlnbiA9PT0gJ2xlZnQnICYmICc1cHgnfTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBzdmcge1xuICAgICAgY29sb3I6ICR7dGhlbWUuY29sb3JzLnByaW1hcnkuZGFya307XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCByb3dTdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLmhvdmVyQ29sb3IgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICBjdXJzb3I6ICR7cHJvcHMuaG92ZXJDb2xvciAmJiAncG9pbnRlcid9O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBjZWxsU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICBmb250LXdlaWdodDogJHtwcm9wcy5ib2xkID8gJ2JvbGQnIDogJyd9O1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gICR7cHJvcHMuY29sb3IgJiZcbiAgYHNwYW4ge1xuICAgICAgY29sb3I6ICR7cHJvcHMuY29sb3IudGN9O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcy5jb2xvci5iZyB8fCAnbm9uZSd9O1xuICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1gfTtcbmBcblxuZXhwb3J0IGNvbnN0IGRvd25TdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIGNvbG9yOiAke3Byb3BzLnNob3dBcnJvdyA/IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmRhcmsgOiAndHJhbnNwYXJlbnQnfTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gIHRyYW5zZm9ybTogJHshcHJvcHMuZGVzY2VuZGluZyAmJiAncm90YXRlKDE4MGRlZyknfTtcbiAgZm9udC1zaXplOiAyMHB4O1xuYFxuIl19 */");
15
- };
16
- export var downStyle = function downStyle(props) {
17
- return /*#__PURE__*/css("color:", props.showArrow ? theme.colors.primary.dark : 'transparent', ";transition-duration:250ms;transform:", !props.descending && 'rotate(180deg)', ";font-size:20px;" + (process.env.NODE_ENV === "production" ? "" : ";label:downStyle;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0R5bmFtaWNUYWJsZS5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVGNEMiLCJmaWxlIjoiLi4vLi4vc3JjL2R5bmFtaWMtdGFibGUvRHluYW1pY1RhYmxlLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCdcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGRmZHMtdWkvdGhlbWUnXG5pbXBvcnQgeyBkaXZpZGVyQm9yZGVyIH0gZnJvbSAnQGRmZHMtdWkvcmVhY3QtY29tcG9uZW50cy9kaXZpZGVyJ1xuXG5leHBvcnQgY29uc3QgZHluYW1pY1RhYmxlV3JhcHBlclN0eWxlID0gKHByb3BzOiBhbnkpID0+IGNzc2BcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6ICR7cHJvcHMuZml4ZWRIZWlnaHQgJiYgJ2F1dG8nfTtcbiAgaGVpZ2h0OiAke3Byb3BzLmZpeGVkSGVpZ2h0fTtcbiAgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9ycy5zdXJmYWNlLnByaW1hcnl9O1xuICAgIHRyIHtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICAgIHRkLFxuICAgICAgdGgge1xuICAgICAgICBjb2xvcjogJHt0aGVtZS5jb2xvcnMucHJpbWFyeS5tYWlufTtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgICR7ZGl2aWRlckJvcmRlcihmYWxzZSwgJ2JvdHRvbScpfTtcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBwb3NpdGlvbjogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJ3N0aWNreSd9O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLnN0aWNreUhlYWRlciAmJiB0aGVtZS5jb2xvcnMuc3VyZmFjZS5wcmltYXJ5fTtcbiAgICAgICAgei1pbmRleDogJHtwcm9wcy5zdGlja3lIZWFkZXIgJiYgJzEwJ307XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICAgICAgICBjdXJzb3I6ICR7cHJvcHMub25Tb3J0QnlLZXkgJiYgJ3BvaW50ZXInfTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2hlY2tib3hDb2x1bW4ge1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IHRoU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICB0ZXh0LWFsaWduOiAke3Byb3BzLmFsaWdufTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBsZWZ0OiAke3Byb3BzLmFsaWduID09PSAncmlnaHQnICYmICc1cHgnfTtcbiAgICByaWdodDogJHtwcm9wcy5hbGlnbiA9PT0gJ2xlZnQnICYmICc1cHgnfTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBzdmcge1xuICAgICAgY29sb3I6ICR7dGhlbWUuY29sb3JzLnByaW1hcnkuZGFya307XG4gICAgfVxuICB9XG5gXG5cbmV4cG9ydCBjb25zdCByb3dTdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzLmhvdmVyQ29sb3IgJiYgdGhlbWUuY29sb3JzLnN1cmZhY2Uuc2Vjb25kYXJ5fTtcbiAgICBjdXJzb3I6ICR7cHJvcHMuaG92ZXJDb2xvciAmJiAncG9pbnRlcid9O1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBjZWxsU3R5bGUgPSAocHJvcHM6IGFueSkgPT4gY3NzYFxuICBmb250LXdlaWdodDogJHtwcm9wcy5ib2xkID8gJ2JvbGQnIDogJyd9O1xuICB3aWR0aDogJHtwcm9wcy5jdXN0b21Db2x1bW5XaWR0aCB8fCBgY2FsYygoMTAwJSAke3Byb3BzLm9uU2VsZWN0RnVuY3Rpb24gJiYgJy0zNnB4J30pIC8gJHtwcm9wcy5jb2x1bW5zfSlgfTtcbiAgbWluLXdpZHRoOiAke3Byb3BzLmN1c3RvbUNvbHVtbldpZHRoIHx8ICdhdXRvJ307XG4gICR7cHJvcHMuY29sb3IgJiZcbiAgYHNwYW4ge1xuICAgICAgY29sb3I6ICR7cHJvcHMuY29sb3IudGN9O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcy5jb2xvci5iZyB8fCAnbm9uZSd9O1xuICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1gfTtcbmBcblxuZXhwb3J0IGNvbnN0IGRvd25TdHlsZSA9IChwcm9wczogYW55KSA9PiBjc3NgXG4gIGNvbG9yOiAke3Byb3BzLnNob3dBcnJvdyA/IHRoZW1lLmNvbG9ycy5wcmltYXJ5LmRhcmsgOiAndHJhbnNwYXJlbnQnfTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gIHRyYW5zZm9ybTogJHshcHJvcHMuZGVzY2VuZGluZyAmJiAncm90YXRlKDE4MGRlZyknfTtcbiAgZm9udC1zaXplOiAyMHB4O1xuYFxuIl19 */");
18
- };
3
+ export var TableWrapperStyled = _styled("div", process.env.NODE_ENV === "production" ? {
4
+ target: "e1dds0xk1"
5
+ } : {
6
+ target: "e1dds0xk1",
7
+ label: "TableWrapperStyled"
8
+ })("color:", theme.colors.text.primary, ";display:flex;flex-direction:column;overflow-x:auto;width:100%;", function (_ref) {
9
+ var height = _ref.height;
10
+ return height && "\n height: ".concat(height, ";\n overflow-y: ").concat(height && 'auto', ";\n ");
11
+ }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0R5bmFtaWNUYWJsZS5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU8rRCIsImZpbGUiOiIuLi8uLi9zcmMvZHluYW1pYy10YWJsZS9EeW5hbWljVGFibGUuc3R5bGVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRoZW1lIH0gZnJvbSAnQGRmZHMtdWkvdGhlbWUnXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcblxudHlwZSBUYWJsZVdyYXBwZXJQcm9wcyA9IHtcbiAgaGVpZ2h0Pzogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCBUYWJsZVdyYXBwZXJTdHlsZWQgPSBzdHlsZWQuZGl2PFRhYmxlV3JhcHBlclByb3BzPmBcbiAgY29sb3I6ICR7dGhlbWUuY29sb3JzLnRleHQucHJpbWFyeX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuXG4gICR7KHsgaGVpZ2h0IH0pID0+XG4gICAgaGVpZ2h0ICYmXG4gICAgYFxuICAgICAgaGVpZ2h0OiAke2hlaWdodH07XG4gICAgICBvdmVyZmxvdy15OiAke2hlaWdodCAmJiAnYXV0byd9O1xuICAgIGB9O1xuYFxuXG5leHBvcnQgY29uc3QgVGFibGVTdHlsZWQgPSBzdHlsZWQudGFibGVgXG4gIGJhY2tncm91bmQtY29sb3I6ICR7dGhlbWUuY29sb3JzLnN1cmZhY2UucHJpbWFyeX07XG4gIGZvbnQtZmFtaWx5OiBWZXJkYW5hLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB3aWR0aDogMTAwJTtcbmBcbiJdfQ== */"));
12
+ export var TableStyled = _styled("table", process.env.NODE_ENV === "production" ? {
13
+ target: "e1dds0xk0"
14
+ } : {
15
+ target: "e1dds0xk0",
16
+ label: "TableStyled"
17
+ })("background-color:", theme.colors.surface.primary, ";font-family:Verdana,sans-serif;font-size:12px;line-height:16px;width:100%;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9keW5hbWljLXRhYmxlL0R5bmFtaWNUYWJsZS5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCdUMiLCJmaWxlIjoiLi4vLi4vc3JjL2R5bmFtaWMtdGFibGUvRHluYW1pY1RhYmxlLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0aGVtZSB9IGZyb20gJ0BkZmRzLXVpL3RoZW1lJ1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5cbnR5cGUgVGFibGVXcmFwcGVyUHJvcHMgPSB7XG4gIGhlaWdodD86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgVGFibGVXcmFwcGVyU3R5bGVkID0gc3R5bGVkLmRpdjxUYWJsZVdyYXBwZXJQcm9wcz5gXG4gIGNvbG9yOiAke3RoZW1lLmNvbG9ycy50ZXh0LnByaW1hcnl9O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcblxuICAkeyh7IGhlaWdodCB9KSA9PlxuICAgIGhlaWdodCAmJlxuICAgIGBcbiAgICAgIGhlaWdodDogJHtoZWlnaHR9O1xuICAgICAgb3ZlcmZsb3cteTogJHtoZWlnaHQgJiYgJ2F1dG8nfTtcbiAgICBgfTtcbmBcblxuZXhwb3J0IGNvbnN0IFRhYmxlU3R5bGVkID0gc3R5bGVkLnRhYmxlYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9ycy5zdXJmYWNlLnByaW1hcnl9O1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgd2lkdGg6IDEwMCU7XG5gXG4iXX0= */"));
@@ -0,0 +1,26 @@
1
+ export declare type Header = {
2
+ displayName: string;
3
+ key: string;
4
+ sortKey?: string;
5
+ sortable?: boolean;
6
+ textAlign?: 'center' | 'left' | 'right';
7
+ width?: string;
8
+ };
9
+ export declare type Row = {
10
+ id?: string;
11
+ [name: string]: any;
12
+ };
13
+ export declare type DynamicTableProps = {
14
+ activeRow?: string;
15
+ descending?: boolean;
16
+ headerRow: Header[];
17
+ height?: string;
18
+ isLoading?: boolean;
19
+ onClickRow?: (id: string) => void;
20
+ onSelectRow?: (list: string[]) => void;
21
+ onSort?: (value: string, sortDescending: boolean) => void;
22
+ rows: Row[];
23
+ selectedRows?: string[];
24
+ sortingBy?: string;
25
+ stickyHeader?: boolean;
26
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { TableHeadProps } from './TableHead.types';
3
+ declare const TableHead: React.MemoExoticComponent<({ headerRow, onSelectRow, onSort, rows, selectableRows, selectedRows, setSortDescending, setSortByKeyValue, sortDescending, sortByKeyValue, stickyHeader, }: TableHeadProps) => JSX.Element>;
4
+ export default TableHead;
@@ -0,0 +1,69 @@
1
+ import React, { useCallback } from 'react';
2
+ import { Checkbox } from '@dfds-ui/react-components';
3
+ import { ChevronStyled, TableHeadCellCheckboxStyled, TableHeadCellStyled, TableHeadRow } from './TableHead.styles';
4
+ import { jsx as ___EmotionJSX } from "@emotion/react";
5
+ var TableHead = /*#__PURE__*/React.memo(function (_ref) {
6
+ var headerRow = _ref.headerRow,
7
+ onSelectRow = _ref.onSelectRow,
8
+ onSort = _ref.onSort,
9
+ rows = _ref.rows,
10
+ selectableRows = _ref.selectableRows,
11
+ selectedRows = _ref.selectedRows,
12
+ setSortDescending = _ref.setSortDescending,
13
+ setSortByKeyValue = _ref.setSortByKeyValue,
14
+ sortDescending = _ref.sortDescending,
15
+ sortByKeyValue = _ref.sortByKeyValue,
16
+ stickyHeader = _ref.stickyHeader;
17
+ var toggleAll = useCallback(function () {
18
+ if (!onSelectRow) return;
19
+ var newArray = [];
20
+
21
+ if (selectedRows.length === 0) {
22
+ for (var i = 0; i < rows.length; i++) {
23
+ newArray.push(rows[i].id || '');
24
+ }
25
+ }
26
+
27
+ onSelectRow(newArray);
28
+ }, [onSelectRow, rows, selectedRows]);
29
+ var sort = useCallback(function (oldKey, newKey) {
30
+ if (!onSort) return;
31
+
32
+ if (oldKey !== newKey) {
33
+ setSortByKeyValue(newKey);
34
+ setSortDescending(false);
35
+ } else {
36
+ setSortDescending(!sortDescending);
37
+ }
38
+ }, [onSort, setSortDescending, setSortByKeyValue, sortDescending]);
39
+ return ___EmotionJSX("thead", null, ___EmotionJSX(TableHeadRow, null, selectableRows && ___EmotionJSX(TableHeadCellCheckboxStyled, {
40
+ stickyHeader: stickyHeader
41
+ }, ___EmotionJSX(Checkbox, {
42
+ checked: selectedRows.length > 0,
43
+ indeterminate: true,
44
+ name: "all",
45
+ onChange: toggleAll,
46
+ size: "small"
47
+ })), headerRow.map(function (headerCell, i) {
48
+ var sortKey = headerCell.sortKey || headerCell.key;
49
+
50
+ var clickHandler = function clickHandler() {
51
+ return headerCell.sortable && sort(sortByKeyValue, sortKey);
52
+ };
53
+
54
+ var showChevron = String(sortByKeyValue === sortKey);
55
+ return ___EmotionJSX(TableHeadCellStyled, {
56
+ align: headerCell.textAlign,
57
+ key: i,
58
+ onClick: clickHandler,
59
+ sortByKey: onSort,
60
+ sortable: headerCell.sortable,
61
+ stickyHeader: stickyHeader,
62
+ customWidth: headerCell.width
63
+ }, ___EmotionJSX("div", null, ___EmotionJSX("span", null, headerCell.displayName), headerCell.sortable && onSort && ___EmotionJSX(ChevronStyled, {
64
+ descending: String(sortDescending),
65
+ show: showChevron
66
+ })));
67
+ })));
68
+ });
69
+ export default TableHead;