@laerdal/life-react-components 1.3.2-dev.1.full → 1.3.2-dev.11

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 (139) hide show
  1. package/dist/esm/Accordion/ContentAccordion.js +238 -0
  2. package/dist/esm/Accordion/ContentAccordion.js.map +1 -0
  3. package/dist/esm/Accordion/__tests__/ContetnAccordion.test.js +137 -0
  4. package/dist/esm/Accordion/__tests__/ContetnAccordion.test.js.map +1 -0
  5. package/dist/esm/Accordion/index.js +1 -0
  6. package/dist/esm/Accordion/index.js.map +1 -1
  7. package/dist/esm/AuthPage/AuthPage.js +1 -1
  8. package/dist/esm/AuthPage/AuthPage.js.map +1 -1
  9. package/dist/esm/AuthPage/Information.js +1 -1
  10. package/dist/esm/AuthPage/Information.js.map +1 -1
  11. package/dist/esm/Banners/Banner.js +16 -16
  12. package/dist/esm/Banners/Banner.js.map +1 -1
  13. package/dist/esm/Button/Iconbutton.js +0 -1
  14. package/dist/esm/Button/Iconbutton.js.map +1 -1
  15. package/dist/esm/Dropdown/ChipDropdownInput.js +2 -2
  16. package/dist/esm/Dropdown/ChipDropdownInput.js.map +1 -1
  17. package/dist/esm/Dropdown/CommonStyling.js +4 -0
  18. package/dist/esm/Dropdown/CommonStyling.js.map +1 -1
  19. package/dist/esm/Dropdown/DropdownButton.js +5 -2
  20. package/dist/esm/Dropdown/DropdownButton.js.map +1 -1
  21. package/dist/esm/Dropdown/DropdownFilter.js.map +1 -1
  22. package/dist/esm/HyperLink/HyperLink.js +2 -1
  23. package/dist/esm/HyperLink/HyperLink.js.map +1 -1
  24. package/dist/esm/InputFields/Checkbox.js +23 -13
  25. package/dist/esm/InputFields/Checkbox.js.map +1 -1
  26. package/dist/esm/Table/Table.js +113 -181
  27. package/dist/esm/Table/Table.js.map +1 -1
  28. package/dist/esm/Table/TableBody.js +135 -0
  29. package/dist/esm/Table/TableBody.js.map +1 -0
  30. package/dist/esm/Table/TableFooter.js +60 -0
  31. package/dist/esm/Table/TableFooter.js.map +1 -0
  32. package/dist/esm/Table/TableHeaders.js +55 -0
  33. package/dist/esm/Table/TableHeaders.js.map +1 -0
  34. package/dist/esm/Table/TableStyles.js +130 -117
  35. package/dist/esm/Table/TableStyles.js.map +1 -1
  36. package/dist/esm/Table/__tests__/Table.test.js +0 -21
  37. package/dist/esm/Table/__tests__/Table.test.js.map +1 -1
  38. package/dist/esm/Tabs/TabLink.js +1 -0
  39. package/dist/esm/Tabs/TabLink.js.map +1 -1
  40. package/dist/esm/styles/typography.js +66 -66
  41. package/dist/esm/styles/typography.js.map +1 -1
  42. package/dist/js/Accordion/ContentAccordion.d.ts +18 -0
  43. package/dist/js/Accordion/ContentAccordion.js +151 -0
  44. package/dist/js/Accordion/ContentAccordion.js.map +1 -0
  45. package/dist/js/Accordion/__tests__/ContetnAccordion.test.js +151 -0
  46. package/dist/js/Accordion/__tests__/ContetnAccordion.test.js.map +1 -0
  47. package/dist/js/Accordion/index.d.ts +1 -0
  48. package/dist/js/Accordion/index.js +8 -0
  49. package/dist/js/Accordion/index.js.map +1 -1
  50. package/dist/js/AuthPage/AuthPage.js +1 -1
  51. package/dist/js/AuthPage/AuthPage.js.map +1 -1
  52. package/dist/js/AuthPage/Information.d.ts +1 -1
  53. package/dist/js/AuthPage/Information.js +1 -1
  54. package/dist/js/AuthPage/Information.js.map +1 -1
  55. package/dist/js/Banners/Banner.js +16 -19
  56. package/dist/js/Banners/Banner.js.map +1 -1
  57. package/dist/js/Button/Iconbutton.d.ts +2 -2
  58. package/dist/js/Button/Iconbutton.js +0 -1
  59. package/dist/js/Button/Iconbutton.js.map +1 -1
  60. package/dist/js/Dropdown/ChipDropdownInput.js +3 -1
  61. package/dist/js/Dropdown/ChipDropdownInput.js.map +1 -1
  62. package/dist/js/Dropdown/CommonStyling.js +1 -1
  63. package/dist/js/Dropdown/CommonStyling.js.map +1 -1
  64. package/dist/js/Dropdown/DropdownButton.d.ts +1 -1
  65. package/dist/js/Dropdown/DropdownButton.js +5 -2
  66. package/dist/js/Dropdown/DropdownButton.js.map +1 -1
  67. package/dist/js/Dropdown/DropdownButtonTypes.d.ts +1 -0
  68. package/dist/js/Dropdown/DropdownFilter.d.ts +1 -1
  69. package/dist/js/Dropdown/DropdownFilter.js.map +1 -1
  70. package/dist/js/HyperLink/HyperLink.d.ts +1 -1
  71. package/dist/js/HyperLink/HyperLink.js +2 -2
  72. package/dist/js/HyperLink/HyperLink.js.map +1 -1
  73. package/dist/js/InputFields/Checkbox.d.ts +3 -2
  74. package/dist/js/InputFields/Checkbox.js +13 -11
  75. package/dist/js/InputFields/Checkbox.js.map +1 -1
  76. package/dist/js/Table/Table.js +143 -209
  77. package/dist/js/Table/Table.js.map +1 -1
  78. package/dist/js/Table/TableBody.d.ts +9 -0
  79. package/dist/js/Table/TableBody.js +167 -0
  80. package/dist/js/Table/TableBody.js.map +1 -0
  81. package/dist/js/Table/TableFooter.d.ts +13 -0
  82. package/dist/js/Table/TableFooter.js +82 -0
  83. package/dist/js/Table/TableFooter.js.map +1 -0
  84. package/dist/js/Table/TableHeaders.d.ts +9 -0
  85. package/dist/js/Table/TableHeaders.js +77 -0
  86. package/dist/js/Table/TableHeaders.js.map +1 -0
  87. package/dist/js/Table/TableStyles.d.ts +17 -7
  88. package/dist/js/Table/TableStyles.js +58 -16
  89. package/dist/js/Table/TableStyles.js.map +1 -1
  90. package/dist/js/Table/TableTypes.d.ts +23 -16
  91. package/dist/js/Table/__tests__/Table.test.js +8 -30
  92. package/dist/js/Table/__tests__/Table.test.js.map +1 -1
  93. package/dist/js/Tabs/TabLink.js +1 -1
  94. package/dist/js/Tabs/TabLink.js.map +1 -1
  95. package/dist/js/styles/typography.d.ts +6 -6
  96. package/dist/js/styles/typography.js +66 -66
  97. package/dist/js/styles/typography.js.map +1 -1
  98. package/dist/umd/Accordion/ContentAccordion.js +266 -0
  99. package/dist/umd/Accordion/ContentAccordion.js.map +1 -0
  100. package/dist/umd/Accordion/__tests__/ContetnAccordion.test.js +165 -0
  101. package/dist/umd/Accordion/__tests__/ContetnAccordion.test.js.map +1 -0
  102. package/dist/umd/Accordion/index.js +10 -4
  103. package/dist/umd/Accordion/index.js.map +1 -1
  104. package/dist/umd/AuthPage/AuthPage.js +1 -1
  105. package/dist/umd/AuthPage/AuthPage.js.map +1 -1
  106. package/dist/umd/AuthPage/Information.js +1 -1
  107. package/dist/umd/AuthPage/Information.js.map +1 -1
  108. package/dist/umd/Banners/Banner.js +16 -16
  109. package/dist/umd/Banners/Banner.js.map +1 -1
  110. package/dist/umd/Button/Iconbutton.js +0 -1
  111. package/dist/umd/Button/Iconbutton.js.map +1 -1
  112. package/dist/umd/Dropdown/ChipDropdownInput.js +2 -2
  113. package/dist/umd/Dropdown/ChipDropdownInput.js.map +1 -1
  114. package/dist/umd/Dropdown/CommonStyling.js +4 -0
  115. package/dist/umd/Dropdown/CommonStyling.js.map +1 -1
  116. package/dist/umd/Dropdown/DropdownButton.js +5 -2
  117. package/dist/umd/Dropdown/DropdownButton.js.map +1 -1
  118. package/dist/umd/Dropdown/DropdownFilter.js.map +1 -1
  119. package/dist/umd/HyperLink/HyperLink.js +2 -1
  120. package/dist/umd/HyperLink/HyperLink.js.map +1 -1
  121. package/dist/umd/InputFields/Checkbox.js +23 -13
  122. package/dist/umd/InputFields/Checkbox.js.map +1 -1
  123. package/dist/umd/Table/Table.js +139 -188
  124. package/dist/umd/Table/Table.js.map +1 -1
  125. package/dist/umd/Table/TableBody.js +270 -0
  126. package/dist/umd/Table/TableBody.js.map +1 -0
  127. package/dist/umd/Table/TableFooter.js +82 -0
  128. package/dist/umd/Table/TableFooter.js.map +1 -0
  129. package/dist/umd/Table/TableHeaders.js +91 -0
  130. package/dist/umd/Table/TableHeaders.js.map +1 -0
  131. package/dist/umd/Table/TableStyles.js +134 -122
  132. package/dist/umd/Table/TableStyles.js.map +1 -1
  133. package/dist/umd/Table/__tests__/Table.test.js +0 -21
  134. package/dist/umd/Table/__tests__/Table.test.js.map +1 -1
  135. package/dist/umd/Tabs/TabLink.js +1 -0
  136. package/dist/umd/Tabs/TabLink.js.map +1 -1
  137. package/dist/umd/styles/typography.js +66 -66
  138. package/dist/umd/styles/typography.js.map +1 -1
  139. package/package.json +1 -1
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ var _Button = require("../Button");
13
+
14
+ var _types = require("../types");
15
+
16
+ var React = _interopRequireWildcard(require("react"));
17
+
18
+ var _InputFields = require("../InputFields");
19
+
20
+ var _Iconbutton = _interopRequireDefault(require("../Button/Iconbutton"));
21
+
22
+ var _HyperLink = require("../HyperLink");
23
+
24
+ var _TableStyles = require("./TableStyles");
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
+
30
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
+
32
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
33
+
34
+ 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; }
35
+
36
+ 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; }
37
+
38
+ 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; }
39
+
40
+ var TableBody = function TableBody(props) {
41
+ var renderCellBody = function renderCellBody(column, row) {
42
+ switch (column.type) {
43
+ case 'link':
44
+ {
45
+ var _props = _objectSpread({
46
+ variant: 'default',
47
+ href: ''
48
+ }, column.additionalProps);
49
+
50
+ return /*#__PURE__*/React.createElement(_HyperLink.HyperLink, _extends({
51
+ style: column.colorFn && {
52
+ color: column.colorFn(row, column.key)
53
+ }
54
+ }, _props, {
55
+ onClick: function onClick(e) {
56
+ e.preventDefault();
57
+ e.stopPropagation();
58
+ column.action && column.action(row, e);
59
+ }
60
+ }), row[column.key]);
61
+ }
62
+
63
+ case 'icon':
64
+ {
65
+ var _props2 = _objectSpread({
66
+ iconColor: column.colorFn && column.colorFn(row, column.key),
67
+ variant: 'secondary',
68
+ shape: 'circular',
69
+ useTransparentBackground: true
70
+ }, column.additionalProps);
71
+
72
+ return /*#__PURE__*/React.createElement(_Iconbutton.default, _extends({}, _props2, {
73
+ action: function action(e) {
74
+ e === null || e === void 0 ? void 0 : e.stopPropagation();
75
+ column.action && column.action(row, e);
76
+ }
77
+ }), column.icon);
78
+ }
79
+
80
+ case 'button':
81
+ {
82
+ var _props3 = _objectSpread({
83
+ variant: 'tertiary',
84
+ size: _types.Size.Small
85
+ }, column.additionalProps);
86
+
87
+ return /*#__PURE__*/React.createElement(_Button.Button, _extends({
88
+ style: column.colorFn && {
89
+ color: column.colorFn(row, column.key)
90
+ }
91
+ }, _props3, {
92
+ onClick: function onClick(e) {
93
+ e === null || e === void 0 ? void 0 : e.stopPropagation();
94
+ column.action && column.action(row, e);
95
+ }
96
+ }), row[column.key]);
97
+ }
98
+
99
+ case 'boolean':
100
+ return /*#__PURE__*/React.createElement(_InputFields.Checkbox, {
101
+ selected: !!row[column.key],
102
+ readonly: true
103
+ });
104
+
105
+ case 'custom':
106
+ return column.customContent && column.customContent(row, column.key);
107
+
108
+ case 'number':
109
+ case 'text':
110
+ default:
111
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_TableStyles.StyledTableCellIcon, null, column.icon), /*#__PURE__*/React.createElement("span", null, row[column.key]));
112
+ }
113
+ };
114
+
115
+ return /*#__PURE__*/React.createElement(_TableStyles.StyledTableBody, null, props.currentPageRows.length > 0 ? props.currentPageRows.map(function (row, index) {
116
+ var _props$selected;
117
+
118
+ return /*#__PURE__*/React.createElement(_TableStyles.StyledTableBodyRow, {
119
+ key: "row_".concat(index),
120
+ className: props.selectable ? 'selectable' : '',
121
+ onClick: function onClick() {
122
+ return props.onRowClick && props.onRowClick(row);
123
+ },
124
+ onMouseDown: function onMouseDown(event) {
125
+ return event.preventDefault();
126
+ },
127
+ onKeyPress: function onKeyPress(e) {
128
+ if (e.key === 'Enter') {
129
+ props.onRowClick && props.onRowClick(row);
130
+ }
131
+ },
132
+ tabIndex: props.selectable ? 0 : undefined,
133
+ "data-testid": "TestTableDataRow"
134
+ }, props.multiSelect && /*#__PURE__*/React.createElement(_TableStyles.StyledTableCell, null, /*#__PURE__*/React.createElement(_TableStyles.StyledTableCellContent, null, /*#__PURE__*/React.createElement(_InputFields.Checkbox, {
135
+ selected: ((_props$selected = props.selected) === null || _props$selected === void 0 ? void 0 : _props$selected.indexOf(props.keyExpr ? row[props.keyExpr] : row)) > -1,
136
+ readonly: true
137
+ }))), props.columns.map(function (column) {
138
+ return /*#__PURE__*/React.createElement(_TableStyles.StyledTableCell, {
139
+ key: "row_".concat(index, "_").concat(column.key),
140
+ style: column.colorFn ? {
141
+ color: column.colorFn(row, column.key),
142
+ maxWidth: column.width
143
+ } : {
144
+ maxWidth: column.width
145
+ },
146
+ title: column.shortenText && row[column.key]
147
+ }, /*#__PURE__*/React.createElement(_TableStyles.StyledTableCellContent, {
148
+ className: "".concat(column.shortenText && "truncate-text", " ").concat(column.justify || '')
149
+ }, renderCellBody(column, row)));
150
+ }));
151
+ }) : /*#__PURE__*/React.createElement(_TableStyles.StyledTableBodyRow, {
152
+ "data-testid": "TestTableNoDataRow"
153
+ }, /*#__PURE__*/React.createElement(_TableStyles.StyledTableCell, {
154
+ colSpan: props.columns.length + (props.multiSelect ? 1 : 0)
155
+ }, /*#__PURE__*/React.createElement(_TableStyles.StyledTableCellContent, {
156
+ className: 'center'
157
+ }, "There are no rows to display"))));
158
+ };
159
+
160
+ TableBody.propTypes = {
161
+ currentPageRows: _propTypes.default.arrayOf(_propTypes.default.any).isRequired,
162
+ onRowClick: _propTypes.default.func,
163
+ selected: _propTypes.default.any
164
+ };
165
+ var _default = TableBody;
166
+ exports.default = _default;
167
+ //# sourceMappingURL=TableBody.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Table/TableBody.tsx"],"names":["TableBody","props","renderCellBody","column","row","type","variant","href","additionalProps","colorFn","color","key","e","preventDefault","stopPropagation","action","iconColor","shape","useTransparentBackground","icon","size","Size","Small","customContent","currentPageRows","length","map","index","selectable","onRowClick","event","undefined","multiSelect","selected","indexOf","keyExpr","columns","maxWidth","width","shortenText","justify"],"mappings":"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","sourcesContent":["import {TableColumn, TableProps} from './TableTypes';\nimport {Button} from '../Button';\nimport {Size} from '../types';\nimport * as React from 'react';\nimport {Checkbox} from '../InputFields';\nimport {ButtonProps} from '../Button/Button';\nimport IconButton, {IconButtonProps} from '../Button/Iconbutton';\nimport {HyperlinkProps} from '../HyperLink/HyperLink';\nimport {HyperLink} from '../HyperLink';\nimport {\n StyledTableBody,\n StyledTableBodyRow,\n StyledTableCell,\n StyledTableCellContent,\n StyledTableCellIcon\n} from './TableStyles';\n\n\ninterface TableBodyProps extends TableProps {\n currentPageRows: any[];\n onRowClick?: (row: any) => void;\n selected?: any | any[];\n}\n\nconst TableBody: React.FC<TableBodyProps> = (props) => {\n\n const renderCellBody = (column: TableColumn, row: any) => {\n switch (column.type) {\n case 'link': {\n const props = ({variant: 'default', href: '', ...column.additionalProps}) as HyperlinkProps;\n return (\n <HyperLink style={column.colorFn && {color: column.colorFn(row, column.key)}}\n {...props}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </HyperLink>\n );\n }\n case 'icon': {\n const props = ({\n iconColor: column.colorFn && column.colorFn(row, column.key),\n variant: 'secondary',\n shape: 'circular',\n useTransparentBackground: true,\n ...column.additionalProps\n }) as IconButtonProps;\n return <IconButton {...props}\n action={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {column.icon}\n </IconButton>\n }\n case 'button': {\n const props = ({\n variant: 'tertiary',\n size: Size.Small,\n ...column.additionalProps\n }) as ButtonProps;\n return <Button style={column.colorFn && {color: column.colorFn(row, column.key)}}\n {...props}\n onClick={(e) => {\n e?.stopPropagation();\n column.action && column.action(row, e);\n }}>\n {row[column.key]}\n </Button>\n }\n case 'boolean':\n return <Checkbox selected={!!row[column.key]} readonly={true}/>;\n case 'custom':\n return column.customContent && column.customContent(row, column.key);\n case 'number':\n case 'text':\n default:\n return (\n <>\n <StyledTableCellIcon>{column.icon}</StyledTableCellIcon>\n <span>{row[column.key]}</span>\n </>\n );\n }\n }\n\n return (\n <StyledTableBody>\n {props.currentPageRows.length > 0 ? (\n props.currentPageRows.map((row: any, index: number) => (\n <StyledTableBodyRow key={`row_${index}`}\n className={props.selectable ? 'selectable' : ''}\n onClick={() => props.onRowClick && props.onRowClick(row)}\n onMouseDown={(event) => event.preventDefault()}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.onRowClick && props.onRowClick(row);\n }\n }}\n tabIndex={props.selectable ? 0 : undefined}\n data-testid=\"TestTableDataRow\">\n {\n props.multiSelect &&\n <StyledTableCell>\n <StyledTableCellContent>\n <Checkbox selected={props.selected?.indexOf(props.keyExpr ? row[props.keyExpr] : row) > -1}\n readonly={true}/>\n </StyledTableCellContent>\n </StyledTableCell>\n }\n {props.columns.map((column: TableColumn) => (\n <StyledTableCell key={`row_${index}_${column.key}`}\n style={column.colorFn ? {\n color: column.colorFn(row, column.key),\n maxWidth: column.width\n } : {maxWidth: column.width}}\n title={column.shortenText && row[column.key]}>\n <StyledTableCellContent className={`${column.shortenText && `truncate-text`} ${column.justify || ''}`}>\n {renderCellBody(column, row)}\n </StyledTableCellContent>\n </StyledTableCell>\n ))}\n </StyledTableBodyRow>\n ))\n ) : (\n <StyledTableBodyRow data-testid=\"TestTableNoDataRow\">\n <StyledTableCell colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableCellContent className={'center'}>\n There are no rows to display\n </StyledTableCellContent>\n </StyledTableCell>\n </StyledTableBodyRow>\n )}\n\n </StyledTableBody>\n );\n }\n;\n\nexport default TableBody;\n"],"file":"TableBody.js"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { TableProps } from './TableTypes';
3
+ interface TableFooterProps extends TableProps {
4
+ onRowsPerPageChange: (value: number) => void;
5
+ rowsPerPage: number;
6
+ from?: number;
7
+ to?: number;
8
+ total?: number;
9
+ nextPage: () => void;
10
+ prevPage: () => void;
11
+ }
12
+ declare const TableFooter: React.FunctionComponent<TableFooterProps>;
13
+ export default TableFooter;
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _Dropdown = require("../Dropdown");
13
+
14
+ var _Button = require("../Button");
15
+
16
+ var _SystemIcons = require("../icons/systemicons/SystemIcons");
17
+
18
+ var _styles = require("../styles");
19
+
20
+ var _TableStyles = require("./TableStyles");
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+
24
+ var TableFooter = function TableFooter(props) {
25
+ var rowsPerPageValues = [{
26
+ label: '10'
27
+ }, {
28
+ label: '20'
29
+ }, {
30
+ label: '50'
31
+ }, {
32
+ label: '100'
33
+ }];
34
+ var dropDownText = "Rows per page: ".concat(props.rowsPerPage);
35
+ return /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableFooter, null, /*#__PURE__*/_react.default.createElement("tr", null, /*#__PURE__*/_react.default.createElement("td", {
36
+ colSpan: props.columns.length + (props.multiSelect ? 1 : 0),
37
+ "data-testid": "TestTableFooterRow"
38
+ }, /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableFooterContent, null, /*#__PURE__*/_react.default.createElement(_Dropdown.DropdownFilter, {
39
+ id: "rows-per-page",
40
+ list: rowsPerPageValues,
41
+ disableSorting: true,
42
+ onSelect: function onSelect(value) {
43
+ return props.onRowsPerPageChange(+value);
44
+ },
45
+ initalValue: dropDownText,
46
+ keepInitialValue: true,
47
+ isButton: true
48
+ }), /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableFooterCurrentInfo, null, props.total === 0 ? 0 : props.from, "-", props.to, " of ", props.total), /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableFooterControls, null, /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
49
+ variant: "secondary",
50
+ shape: "circular",
51
+ action: function action() {
52
+ return props.prevPage();
53
+ },
54
+ disabled: props.from === 1
55
+ }, /*#__PURE__*/_react.default.createElement(_SystemIcons.ChevronLeft, {
56
+ size: "24",
57
+ color: _styles.COLORS.neutral_600
58
+ })), /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
59
+ variant: "secondary",
60
+ shape: "circular",
61
+ action: function action() {
62
+ return props.nextPage();
63
+ },
64
+ disabled: props.to === props.total
65
+ }, /*#__PURE__*/_react.default.createElement(_SystemIcons.ChevronRight, {
66
+ size: "24",
67
+ color: _styles.COLORS.neutral_600
68
+ })))))));
69
+ };
70
+
71
+ TableFooter.propTypes = {
72
+ onRowsPerPageChange: _propTypes.default.func.isRequired,
73
+ rowsPerPage: _propTypes.default.number.isRequired,
74
+ from: _propTypes.default.number,
75
+ to: _propTypes.default.number,
76
+ total: _propTypes.default.number,
77
+ nextPage: _propTypes.default.func.isRequired,
78
+ prevPage: _propTypes.default.func.isRequired
79
+ };
80
+ var _default = TableFooter;
81
+ exports.default = _default;
82
+ //# sourceMappingURL=TableFooter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Table/TableFooter.tsx"],"names":["TableFooter","props","rowsPerPageValues","label","dropDownText","rowsPerPage","columns","length","multiSelect","value","onRowsPerPageChange","total","from","to","prevPage","COLORS","neutral_600","nextPage"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AAEA;;;;AAkBA,IAAMA,WAAsD,GAAG,SAAzDA,WAAyD,CAACC,KAAD,EAAW;AACxE,MAAMC,iBAAuC,GAAG,CAAC;AAACC,IAAAA,KAAK,EAAE;AAAR,GAAD,EAAgB;AAACA,IAAAA,KAAK,EAAE;AAAR,GAAhB,EAA+B;AAACA,IAAAA,KAAK,EAAE;AAAR,GAA/B,EAA8C;AAACA,IAAAA,KAAK,EAAE;AAAR,GAA9C,CAAhD;AAEA,MAAMC,YAAY,4BAAqBH,KAAK,CAACI,WAA3B,CAAlB;AAEA,sBACE,6BAAC,8BAAD,qBACE,sDACE;AAAI,IAAA,OAAO,EAAEJ,KAAK,CAACK,OAAN,CAAcC,MAAd,IAAwBN,KAAK,CAACO,WAAN,GAAoB,CAApB,GAAwB,CAAhD,CAAb;AAAiE,mBAAY;AAA7E,kBACE,6BAAC,qCAAD,qBACE,6BAAC,wBAAD;AACE,IAAA,EAAE,EAAC,eADL;AAEE,IAAA,IAAI,EAAEN,iBAFR;AAGE,IAAA,cAAc,EAAE,IAHlB;AAIE,IAAA,QAAQ,EAAE,kBAACO,KAAD;AAAA,aAAWR,KAAK,CAACS,mBAAN,CAA0B,CAACD,KAA3B,CAAX;AAAA,KAJZ;AAKE,IAAA,WAAW,EAAEL,YALf;AAME,IAAA,gBAAgB,EAAE,IANpB;AAOE,IAAA,QAAQ,EAAE;AAPZ,IADF,eAUE,6BAAC,yCAAD,QACGH,KAAK,CAACU,KAAN,KAAgB,CAAhB,GAAoB,CAApB,GAAwBV,KAAK,CAACW,IADjC,OACwCX,KAAK,CAACY,EAD9C,UACsDZ,KAAK,CAACU,KAD5D,CAVF,eAaE,6BAAC,sCAAD,qBACE,6BAAC,kBAAD;AAAY,IAAA,OAAO,EAAC,WAApB;AAAgC,IAAA,KAAK,EAAC,UAAtC;AAAiD,IAAA,MAAM,EAAE;AAAA,aAAMV,KAAK,CAACa,QAAN,EAAN;AAAA,KAAzD;AACY,IAAA,QAAQ,EAAEb,KAAK,CAACW,IAAN,KAAe;AADrC,kBAEE,6BAAC,wBAAD;AAAa,IAAA,IAAI,EAAC,IAAlB;AAAuB,IAAA,KAAK,EAAEG,eAAOC;AAArC,IAFF,CADF,eAKE,6BAAC,kBAAD;AAAY,IAAA,OAAO,EAAC,WAApB;AAAgC,IAAA,KAAK,EAAC,UAAtC;AAAiD,IAAA,MAAM,EAAE;AAAA,aAAMf,KAAK,CAACgB,QAAN,EAAN;AAAA,KAAzD;AACY,IAAA,QAAQ,EAAEhB,KAAK,CAACY,EAAN,KAAaZ,KAAK,CAACU;AADzC,kBAEE,6BAAC,yBAAD;AAAc,IAAA,IAAI,EAAC,IAAnB;AAAwB,IAAA,KAAK,EAAEI,eAAOC;AAAtC,IAFF,CALF,CAbF,CADF,CADF,CADF,CADF;AAgCD,CArCD;;;AATEN,EAAAA,mB;AACAL,EAAAA,W;AACAO,EAAAA,I;AACAC,EAAAA,E;AACAF,EAAAA,K;AACAM,EAAAA,Q;AACAH,EAAAA,Q;;eA2Cad,W","sourcesContent":["import React from 'react';\nimport {TableProps} from './TableTypes';\nimport {DropdownFilter} from '../Dropdown';\nimport {IconButton} from '../Button';\nimport {ChevronLeft, ChevronRight} from '../icons/systemicons/SystemIcons';\nimport {COLORS} from '../styles';\nimport {DropdownFilterItem} from '../Dropdown/DropdownFilter';\nimport {\n StyledTableFooter,\n StyledTableFooterContent,\n StyledTableFooterControls,\n StyledTableFooterCurrentInfo\n} from './TableStyles';\n\n\ninterface TableFooterProps extends TableProps {\n onRowsPerPageChange: (value: number) => void;\n rowsPerPage: number;\n from?: number;\n to?: number;\n total?: number;\n nextPage: () => void;\n prevPage: () => void;\n}\n\nconst TableFooter: React.FunctionComponent<TableFooterProps> = (props) => {\n const rowsPerPageValues: DropdownFilterItem[] = [{label: '10'}, {label: '20'}, {label: '50'}, {label: '100'}];\n\n const dropDownText = `Rows per page: ${props.rowsPerPage}`;\n\n return (\n <StyledTableFooter>\n <tr>\n <td colSpan={props.columns.length + (props.multiSelect ? 1 : 0)} data-testid=\"TestTableFooterRow\">\n <StyledTableFooterContent>\n <DropdownFilter\n id=\"rows-per-page\"\n list={rowsPerPageValues}\n disableSorting={true}\n onSelect={(value) => props.onRowsPerPageChange(+value)}\n initalValue={dropDownText}\n keepInitialValue={true}\n isButton={true}\n />\n <StyledTableFooterCurrentInfo>\n {props.total === 0 ? 0 : props.from}-{props.to} of {props.total}\n </StyledTableFooterCurrentInfo>\n <StyledTableFooterControls>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.prevPage()}\n disabled={props.from === 1}>\n <ChevronLeft size=\"24\" color={COLORS.neutral_600}/>\n </IconButton>\n <IconButton variant=\"secondary\" shape=\"circular\" action={() => props.nextPage()}\n disabled={props.to === props.total}>\n <ChevronRight size=\"24\" color={COLORS.neutral_600}/>\n </IconButton>\n </StyledTableFooterControls>\n </StyledTableFooterContent>\n </td>\n </tr>\n </StyledTableFooter>\n );\n};\n\n\nexport default TableFooter;\n"],"file":"TableFooter.js"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { TableColumn, TableProps } from './TableTypes';
3
+ interface TableHeaderProps extends TableProps {
4
+ sortByColumn: (column: TableColumn) => void;
5
+ onSelectAllClick: () => void;
6
+ selectAllState: 'all' | 'some' | 'none';
7
+ }
8
+ declare const TableHeader: React.FunctionComponent<TableHeaderProps>;
9
+ export default TableHeader;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _SystemIcons = require("../icons/systemicons/SystemIcons");
13
+
14
+ var _Dropdown = require("../Dropdown");
15
+
16
+ var _icons = require("../icons");
17
+
18
+ var _types = require("../types");
19
+
20
+ var _InputFields = require("../InputFields");
21
+
22
+ var _TableStyles = require("./TableStyles");
23
+
24
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
+
26
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
27
+
28
+ var TableHeader = function TableHeader(props) {
29
+ return /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeader, null, !!props.title && /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeaderTitle, {
30
+ "data-testid": "TestTableHeaderRow"
31
+ }, /*#__PURE__*/_react.default.createElement("th", {
32
+ colSpan: props.columns.length + (props.multiSelect ? 1 : 0)
33
+ }, /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeaderTitleContent, null, /*#__PURE__*/_react.default.createElement("span", null, props.title), props.menu && /*#__PURE__*/_react.default.createElement(_Dropdown.DropdownButton, _extends({
34
+ className: 'title-menu',
35
+ icon: /*#__PURE__*/_react.default.createElement(_icons.SystemIcons.MoreVertical, null),
36
+ size: _types.Size.Medium
37
+ }, props.menu))))), /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeaderColumns, {
38
+ "data-testid": "TestTableColumnHeaderRow"
39
+ }, props.multiSelect && /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeaderColumn, null, /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeaderColumnContent, null, /*#__PURE__*/_react.default.createElement(_InputFields.Checkbox, {
40
+ selected: props.selectAllState === 'all',
41
+ semiSelected: props.selectAllState === 'some',
42
+ select: props.onSelectAllClick
43
+ }))), props.columns.map(function (column) {
44
+ return /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeaderColumn, {
45
+ key: column.key,
46
+ onMouseDown: function onMouseDown(e) {
47
+ return e.preventDefault();
48
+ },
49
+ onClick: function onClick(e) {
50
+ return props.sortByColumn(column);
51
+ },
52
+ onKeyPress: function onKeyPress(e) {
53
+ if (e.key === 'Enter') {
54
+ props.sortByColumn(column);
55
+ }
56
+ },
57
+ style: {
58
+ width: column.width
59
+ },
60
+ tabIndex: column.sortable ? 0 : -1,
61
+ className: "".concat(!!column.sortable ? 'sortable' : '', " ").concat(!!column.sortable && !!column.sortingDirection ? 'sorted' : '')
62
+ }, /*#__PURE__*/_react.default.createElement(_TableStyles.StyledTableHeaderColumnContent, null, /*#__PURE__*/_react.default.createElement("span", null, column.name), column.sortable && (column.sortingDirection === 'asc' ? /*#__PURE__*/_react.default.createElement(_SystemIcons.ArrowLineUp, {
63
+ size: '24px'
64
+ }) : /*#__PURE__*/_react.default.createElement(_SystemIcons.ArrowLineDown, {
65
+ size: '24px'
66
+ }))));
67
+ })));
68
+ };
69
+
70
+ TableHeader.propTypes = {
71
+ sortByColumn: _propTypes.default.func.isRequired,
72
+ onSelectAllClick: _propTypes.default.func.isRequired,
73
+ selectAllState: _propTypes.default.oneOf(['all', 'some', 'none']).isRequired
74
+ };
75
+ var _default = TableHeader;
76
+ exports.default = _default;
77
+ //# sourceMappingURL=TableHeaders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/Table/TableHeaders.tsx"],"names":["TableHeader","props","title","columns","length","multiSelect","menu","Size","Medium","selectAllState","onSelectAllClick","map","column","key","e","preventDefault","sortByColumn","width","sortable","sortingDirection","name"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAcA,IAAMA,WAAsD,GAAG,SAAzDA,WAAyD,CAAAC,KAAK,EAAI;AAEtE,sBACE,6BAAC,8BAAD,QAEI,CAAC,CAACA,KAAK,CAACC,KAAR,iBACA,6BAAC,mCAAD;AAAwB,mBAAY;AAApC,kBACE;AAAI,IAAA,OAAO,EAAED,KAAK,CAACE,OAAN,CAAcC,MAAd,IAAwBH,KAAK,CAACI,WAAN,GAAoB,CAApB,GAAwB,CAAhD;AAAb,kBACE,6BAAC,0CAAD,qBACE,2CAAOJ,KAAK,CAACC,KAAb,CADF,EAGID,KAAK,CAACK,IAAN,iBACA,6BAAC,wBAAD;AAAgB,IAAA,SAAS,EAAE,YAA3B;AACgB,IAAA,IAAI,eAAE,6BAAC,kBAAD,CAAa,YAAb,OADtB;AAEgB,IAAA,IAAI,EAAEC,YAAKC;AAF3B,KAEuCP,KAAK,CAACK,IAF7C,EAJJ,CADF,CADF,CAHJ,eAiBE,6BAAC,qCAAD;AAA0B,mBAAY;AAAtC,KAEIL,KAAK,CAACI,WAAN,iBACA,6BAAC,oCAAD,qBACE,6BAAC,2CAAD,qBACE,6BAAC,qBAAD;AAAU,IAAA,QAAQ,EAAEJ,KAAK,CAACQ,cAAN,KAAyB,KAA7C;AACU,IAAA,YAAY,EAAER,KAAK,CAACQ,cAAN,KAAyB,MADjD;AAEU,IAAA,MAAM,EAAER,KAAK,CAACS;AAFxB,IADF,CADF,CAHJ,EAWGT,KAAK,CAACE,OAAN,CAAcQ,GAAd,CAAkB,UAACC,MAAD;AAAA,wBACjB,6BAAC,oCAAD;AAAyB,MAAA,GAAG,EAAEA,MAAM,CAACC,GAArC;AACI,MAAA,WAAW,EAAE,qBAACC,CAAD;AAAA,eAAOA,CAAC,CAACC,cAAF,EAAP;AAAA,OADjB;AAEI,MAAA,OAAO,EAAE,iBAACD,CAAD;AAAA,eAAOb,KAAK,CAACe,YAAN,CAAmBJ,MAAnB,CAAP;AAAA,OAFb;AAGI,MAAA,UAAU,EAAE,oBAACE,CAAD,EAAO;AACjB,YAAIA,CAAC,CAACD,GAAF,KAAU,OAAd,EAAuB;AACrBZ,UAAAA,KAAK,CAACe,YAAN,CAAmBJ,MAAnB;AACD;AACF,OAPL;AAQI,MAAA,KAAK,EAAE;AAACK,QAAAA,KAAK,EAAEL,MAAM,CAACK;AAAf,OARX;AASI,MAAA,QAAQ,EAAEL,MAAM,CAACM,QAAP,GAAkB,CAAlB,GAAsB,CAAC,CATrC;AAUI,MAAA,SAAS,YAAK,CAAC,CAACN,MAAM,CAACM,QAAT,GAAoB,UAApB,GAAiC,EAAtC,cAA4C,CAAC,CAACN,MAAM,CAACM,QAAT,IAAqB,CAAC,CAACN,MAAM,CAACO,gBAA9B,GAAiD,QAAjD,GAA4D,EAAxG;AAVb,oBAWE,6BAAC,2CAAD,qBACI,2CACGP,MAAM,CAACQ,IADV,CADJ,EAKIR,MAAM,CAACM,QAAP,KAEEN,MAAM,CAACO,gBAAP,KAA4B,KAA5B,gBACI,6BAAC,wBAAD;AAAa,MAAA,IAAI,EAAE;AAAnB,MADJ,gBAEI,6BAAC,0BAAD;AAAe,MAAA,IAAI,EAAE;AAArB,MAJN,CALJ,CAXF,CADiB;AAAA,GAAlB,CAXH,CAjBF,CADF;AA4DD,CA9DD;;;AALEH,EAAAA,Y;AACAN,EAAAA,gB;AACAD,EAAAA,c,4BAAgB,K,EAAQ,M,EAAS,M;;eAmEpBT,W","sourcesContent":["import React from 'react';\nimport {TableColumn, TableProps} from './TableTypes';\nimport {ArrowLineDown, ArrowLineUp} from '../icons/systemicons/SystemIcons';\nimport {DropdownButton} from '../Dropdown';\nimport {SystemIcons} from '../icons';\nimport {Size} from '../types';\nimport {Checkbox} from '../InputFields';\nimport {\n StyledTableHeader, StyledTableHeaderColumn, StyledTableHeaderColumnContent,\n StyledTableHeaderColumns,\n StyledTableHeaderTitle,\n StyledTableHeaderTitleContent\n} from './TableStyles';\n\n\ninterface TableHeaderProps extends TableProps {\n sortByColumn: (column: TableColumn) => void;\n onSelectAllClick: () => void;\n selectAllState: 'all' | 'some' | 'none';\n}\n\nconst TableHeader: React.FunctionComponent<TableHeaderProps> = props => {\n\n return (\n <StyledTableHeader>\n {\n !!props.title &&\n <StyledTableHeaderTitle data-testid=\"TestTableHeaderRow\">\n <th colSpan={props.columns.length + (props.multiSelect ? 1 : 0)}>\n <StyledTableHeaderTitleContent>\n <span>{props.title}</span>\n {\n props.menu &&\n <DropdownButton className={'title-menu'}\n icon={<SystemIcons.MoreVertical/>}\n size={Size.Medium} {...props.menu}/>\n }\n </StyledTableHeaderTitleContent>\n </th>\n </StyledTableHeaderTitle>\n }\n <StyledTableHeaderColumns data-testid=\"TestTableColumnHeaderRow\">\n {\n props.multiSelect &&\n <StyledTableHeaderColumn>\n <StyledTableHeaderColumnContent>\n <Checkbox selected={props.selectAllState === 'all'}\n semiSelected={props.selectAllState === 'some'}\n select={props.onSelectAllClick}/>\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n }\n {props.columns.map((column: TableColumn) => (\n <StyledTableHeaderColumn key={column.key}\n onMouseDown={(e) => e.preventDefault()}\n onClick={(e) => props.sortByColumn(column)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n props.sortByColumn(column)\n }\n }}\n style={{width: column.width}}\n tabIndex={column.sortable ? 0 : -1}\n className={`${!!column.sortable ? 'sortable' : ''} ${!!column.sortable && !!column.sortingDirection ? 'sorted' : ''}`}>\n <StyledTableHeaderColumnContent>\n <span>\n {column.name}\n </span>\n {\n column.sortable &&\n (\n column.sortingDirection === 'asc'\n ? <ArrowLineUp size={'24px'}/>\n : <ArrowLineDown size={'24px'}/>\n )\n }\n </StyledTableHeaderColumnContent>\n </StyledTableHeaderColumn>\n ))}\n </StyledTableHeaderColumns>\n\n </StyledTableHeader>\n )\n}\n\nexport default TableHeader;\n"],"file":"TableHeaders.js"}
@@ -2,10 +2,20 @@
2
2
  * Table styles
3
3
  */
4
4
  export declare const TableWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
5
- export declare const TableLoadingIndicator: import("styled-components").StyledComponent<"div", any, {}, never>;
6
- export declare const TableContainer: import("styled-components").StyledComponent<"table", any, {}, never>;
7
- export declare const TableHeaderRowCol: import("styled-components").StyledComponent<"th", any, {}, never>;
8
- export declare const TableColumnHeaderCol: import("styled-components").StyledComponent<"th", any, {}, never>;
9
- export declare const TableDataRow: import("styled-components").StyledComponent<"tr", any, {}, never>;
10
- export declare const TableDataCol: import("styled-components").StyledComponent<"td", any, {}, never>;
11
- export declare const TableFooterCol: import("styled-components").StyledComponent<"td", any, {}, never>;
5
+ export declare const StyledTable: import("styled-components").StyledComponent<"table", any, {}, never>;
6
+ export declare const StyledTableHeader: import("styled-components").StyledComponent<"thead", any, {}, never>;
7
+ export declare const StyledTableHeaderTitle: import("styled-components").StyledComponent<"tr", any, {}, never>;
8
+ export declare const StyledTableHeaderTitleContent: import("styled-components").StyledComponent<"div", any, {}, never>;
9
+ export declare const StyledTableHeaderColumns: import("styled-components").StyledComponent<"tr", any, {}, never>;
10
+ export declare const StyledTableHeaderColumnContent: import("styled-components").StyledComponent<"div", any, {}, never>;
11
+ export declare const StyledTableHeaderColumn: import("styled-components").StyledComponent<"th", any, {}, never>;
12
+ export declare const StyledTableBodyRow: import("styled-components").StyledComponent<"tr", any, {}, never>;
13
+ export declare const StyledTableBody: import("styled-components").StyledComponent<"tbody", any, {}, never>;
14
+ export declare const StyledTableCell: import("styled-components").StyledComponent<"td", any, {}, never>;
15
+ export declare const StyledTableCellContent: import("styled-components").StyledComponent<"div", any, {}, never>;
16
+ export declare const StyledTableCellIcon: import("styled-components").StyledComponent<"div", any, {}, never>;
17
+ export declare const StyledTableFooter: import("styled-components").StyledComponent<"tfoot", any, {}, never>;
18
+ export declare const StyledTableFooterContent: import("styled-components").StyledComponent<"div", any, {}, never>;
19
+ export declare const StyledTableFooterCurrentInfo: import("styled-components").StyledComponent<"span", any, {}, never>;
20
+ export declare const StyledTableFooterControls: import("styled-components").StyledComponent<"div", any, {}, never>;
21
+ export declare const StyledTableSpinner: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.TableFooterCol = exports.TableDataCol = exports.TableDataRow = exports.TableColumnHeaderCol = exports.TableHeaderRowCol = exports.TableContainer = exports.TableLoadingIndicator = exports.TableWrapper = void 0;
6
+ exports.StyledTableSpinner = exports.StyledTableFooterControls = exports.StyledTableFooterCurrentInfo = exports.StyledTableFooterContent = exports.StyledTableFooter = exports.StyledTableCellIcon = exports.StyledTableCellContent = exports.StyledTableCell = exports.StyledTableBody = exports.StyledTableBodyRow = exports.StyledTableHeaderColumn = exports.StyledTableHeaderColumnContent = exports.StyledTableHeaderColumns = exports.StyledTableHeaderTitleContent = exports.StyledTableHeaderTitle = exports.StyledTableHeader = exports.StyledTable = exports.TableWrapper = void 0;
7
7
 
8
8
  var _styledComponents = _interopRequireDefault(require("styled-components"));
9
9
 
@@ -11,7 +11,9 @@ var _styles = require("../styles");
11
11
 
12
12
  var _typography = require("../styles/typography");
13
13
 
14
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
14
+ var _zIndexes = require("../styles/z-indexes");
15
+
16
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18;
15
17
 
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
 
@@ -24,31 +26,71 @@ var TableWrapper = _styledComponents.default.div(_templateObject || (_templateOb
24
26
 
25
27
  exports.TableWrapper = TableWrapper;
26
28
 
27
- var TableLoadingIndicator = _styledComponents.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n height: 100%;\n width: 100%;\n position: absolute;\n background-color: rgba(0, 0, 0, 0.5);\n top: 0;\n"])));
29
+ var StyledTable = _styledComponents.default.table(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n background: transparent;\n width: 100%;\n"])));
30
+
31
+ exports.StyledTable = StyledTable;
32
+
33
+ var StyledTableHeader = _styledComponents.default.thead(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n"])));
34
+
35
+ exports.StyledTableHeader = StyledTableHeader;
36
+
37
+ var StyledTableHeaderTitle = _styledComponents.default.tr(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n"])));
38
+
39
+ exports.StyledTableHeaderTitle = StyledTableHeaderTitle;
40
+
41
+ var StyledTableHeaderTitleContent = _styledComponents.default.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n box-sizing: border-box;\n min-height: 56px;\n border-bottom: 1px solid ", ";\n border-top: 2px solid ", ";\n padding: 0 16px;\n\n ", "\n .title-menu {\n margin-right: -16px;\n }\n"])), _styles.COLORS.neutral_200, _styles.COLORS.neutral_200, (0, _typography.ComponentLStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.black));
42
+
43
+ exports.StyledTableHeaderTitleContent = StyledTableHeaderTitleContent;
44
+
45
+ var StyledTableHeaderColumns = _styledComponents.default.tr(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n"])));
46
+
47
+ exports.StyledTableHeaderColumns = StyledTableHeaderColumns;
48
+
49
+ var StyledTableHeaderColumnContent = _styledComponents.default.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n box-sizing: border-box;\n min-height: 56px;\n padding: 0 16px;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-top: 1px solid ", ";\n border-bottom: 1px solid ", ";\n"])), _styles.COLORS.neutral_200, _styles.COLORS.neutral_200);
50
+
51
+ exports.StyledTableHeaderColumnContent = StyledTableHeaderColumnContent;
52
+
53
+ var StyledTableHeaderColumn = _styledComponents.default.th(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n ", "\n position: relative;\n\n background-color: ", ";\n\n //fixes header heights no idea why\n height: 1px;\n\n &.sortable {\n cursor: pointer;\n\n &:hover {\n background-color: ", ";\n color: ", ";\n z-index: ", ";\n }\n\n &:active {\n background-color: ", ";\n color: ", ";\n box-shadow: none !important;\n z-index: ", ";\n }\n\n &:focus {\n outline: none;\n box-shadow: 0 4px 12px ", ", 0 0 8px ", ";\n z-index: ", ";\n }\n }\n\n &.sortable ", " > svg {\n opacity: 0;\n }\n\n &.sortable.sorted ", " > svg {\n opacity: 1;\n }\n\n"])), (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.neutral_600), _styles.COLORS.white, _styles.COLORS.primary_20, _styles.COLORS.primary_700, _zIndexes.Z_INDEXES.hover, _styles.COLORS.primary_100, _styles.COLORS.primary_800, _zIndexes.Z_INDEXES.active, _styles.COLORS.focus_25, _styles.COLORS.focus, _zIndexes.Z_INDEXES.focus, StyledTableHeaderColumnContent, StyledTableHeaderColumnContent);
54
+
55
+ exports.StyledTableHeaderColumn = StyledTableHeaderColumn;
56
+
57
+ var StyledTableBodyRow = _styledComponents.default.tr(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n cursor: pointer;\n position: relative;\n outline: none;\n\n &:hover {\n background-color: ", ";\n z-index: ", ";\n }\n\n &:focus {\n background-color: ", ";\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2E7FA1;\n z-index: ", ";\n outline: none;\n }\n\n &:active {\n box-shadow: none;\n z-index: ", ";\n }\n\n"])), _styles.COLORS.primary_200, _zIndexes.Z_INDEXES.hover, _styles.COLORS.primary_200, _zIndexes.Z_INDEXES.focus, _zIndexes.Z_INDEXES.active);
58
+
59
+ exports.StyledTableBodyRow = StyledTableBodyRow;
60
+
61
+ var StyledTableBody = _styledComponents.default.tbody(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n ", ":nth-child(odd):not(:hover):not(:focus):not(:active) {\n background-color: ", ";\n }\n\n ", ":nth-child(even):not(:hover):not(:focus):not(:active) {\n background-color: ", ";\n }\n"])), StyledTableBodyRow, _styles.COLORS.neutral_100, StyledTableBodyRow, _styles.COLORS.white);
62
+
63
+ exports.StyledTableBody = StyledTableBody;
64
+
65
+ var StyledTableCell = _styledComponents.default.td(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral([""])));
66
+
67
+ exports.StyledTableCell = StyledTableCell;
68
+
69
+ var StyledTableCellContent = _styledComponents.default.div(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n min-height: 48px;\n\n padding: 0 16px;\n ", "\n\n display: flex;\n align-items: center;\n gap: 8px;\n\n &.truncate-text,\n &.truncate-text span {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &.left {\n justify-content: left;\n }\n\n &.right {\n justify-content: right;\n }\n\n &.center {\n justify-content: center;\n }\n"])), (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, null));
28
70
 
29
- exports.TableLoadingIndicator = TableLoadingIndicator;
71
+ exports.StyledTableCellContent = StyledTableCellContent;
30
72
 
31
- var TableContainer = _styledComponents.default.table(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n background: transparent;\n width: 100%;\n border-top: 2px solid ", ";\n border-bottom: 2px solid ", ";\n"])), _styles.COLORS.neutral_200, _styles.COLORS.neutral_200);
73
+ var StyledTableCellIcon = _styledComponents.default.div(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["\n color: ", ";\n width: 24px;\n height: 24px;\n\n svg {\n color: ", ";\n width: 24px;\n height: 24px;\n }\n"])), _styles.COLORS.neutral_700, _styles.COLORS.neutral_700);
32
74
 
33
- exports.TableContainer = TableContainer;
75
+ exports.StyledTableCellIcon = StyledTableCellIcon;
34
76
 
35
- var TableHeaderRowCol = _styledComponents.default.th(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n background-color: ", ";\n border-bottom: 1px solid ", ";\n\n ", "\n padding: 16px 19px 16px 16px;\n\n div {\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n cursor: pointer;\n }\n }\n"])), _styles.COLORS.neutral_20, _styles.COLORS.neutral_200, (0, _typography.ComponentLStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.neutral_600));
77
+ var StyledTableFooter = _styledComponents.default.tfoot(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["\n"])));
36
78
 
37
- exports.TableHeaderRowCol = TableHeaderRowCol;
79
+ exports.StyledTableFooter = StyledTableFooter;
38
80
 
39
- var TableColumnHeaderCol = _styledComponents.default.th(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n background-color: ", ";\n border-top: 1px solid ", ";\n\n ", "\n padding: 18px 16px;\n text-align: left;\n\n &.justify-center {\n text-align: center;\n }\n\n &.justify-left {\n text-align: left;\n }\n\n &.justify-right {\n text-align: right;\n }\n\n &.no-border {\n border: none;\n }\n\n &.sortable {\n cursor: pointer;\n\n > svg {\n float: right;\n }\n\n &:hover {\n background: ", ";\n }\n\n &:focus {\n background: ", ";\n }\n }\n"])), _styles.COLORS.white, _styles.COLORS.neutral_300, (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.neutral_600), _styles.COLORS.primary_20, _styles.COLORS.primary_100);
81
+ var StyledTableFooterContent = _styledComponents.default.div(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral(["\n border-top: 2px solid ", ";\n border-bottom: 1px solid ", ";\n box-sizing: border-box;\n min-height: 56px;\n\n display: flex;\n align-items: center;\n justify-content: right;\n"])), _styles.COLORS.neutral_200, _styles.COLORS.neutral_200);
40
82
 
41
- exports.TableColumnHeaderCol = TableColumnHeaderCol;
83
+ exports.StyledTableFooterContent = StyledTableFooterContent;
42
84
 
43
- var TableDataRow = _styledComponents.default.tr(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n background-color: ", ";\n\n &:nth-child(2n) {\n background-color: ", ";\n }\n\n &:hover {\n cursor: pointer;\n background-color: ", ";\n }\n\n &.no-rows:hover {\n cursor: default;\n background-color: ", ";\n }\n"])), _styles.COLORS.neutral_100, _styles.COLORS.neutral_20, _styles.COLORS.primary_200, _styles.COLORS.neutral_100);
85
+ var StyledTableFooterCurrentInfo = _styledComponents.default.span(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral(["\n padding: 0 16px;\n ", "\n"])), (0, _typography.ComponentXSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black));
44
86
 
45
- exports.TableDataRow = TableDataRow;
87
+ exports.StyledTableFooterCurrentInfo = StyledTableFooterCurrentInfo;
46
88
 
47
- var TableDataCol = _styledComponents.default.td(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n background: transparent;\n\n ", "\n padding: 15px 16px;\n border: none;\n\n &.truncate-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &.justify-center {\n text-align: center;\n }\n\n &.justify-left {\n text-align: left;\n }\n\n &.justify-right {\n text-align: right;\n }\n\n button {\n color: ", ";\n text-decoration: none;\n\n &:hover {\n color: ", ";\n text-decoration: underline;\n }\n\n &:focus {\n text-decoration: underline;\n outline: none;\n box-shadow: 0px 4px 12px ", ", 0px 0px 8px ", " !important;\n color: ", ";\n }\n }\n\n &.center {\n text-align: center;\n }\n"])), (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black), _styles.COLORS.primary_600, _styles.COLORS.primary_700, _styles.COLORS.focus_25, _styles.COLORS.focus, _styles.COLORS.primary_700);
89
+ var StyledTableFooterControls = _styledComponents.default.div(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral(["\n display: flex;\n"])));
48
90
 
49
- exports.TableDataCol = TableDataCol;
91
+ exports.StyledTableFooterControls = StyledTableFooterControls;
50
92
 
51
- var TableFooterCol = _styledComponents.default.td(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n border-top: 1px solid ", ";\n padding: 3.5px 20px 3.5px 16px;\n\n > div {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n\n > div > div:first-of-type {\n ", "\n display: block;\n padding-top: 11px;\n padding-left: 2px;\n padding-right: 30px;\n }\n\n span {\n ", "\n\n &.current-page-info {\n margin-right: 34px;\n margin-left: 39px;\n }\n }\n\n .controls {\n display: flex;\n justify-content: space-between;\n }\n }\n"])), _styles.COLORS.neutral_200, (0, _typography.ComponentXSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black), (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black));
93
+ var StyledTableSpinner = _styledComponents.default.div(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral(["\n height: 100%;\n width: 100%;\n position: absolute;\n background-color: rgba(0, 0, 0, 0.5);\n top: 0;\n"])));
52
94
 
53
- exports.TableFooterCol = TableFooterCol;
95
+ exports.StyledTableSpinner = StyledTableSpinner;
54
96
  //# sourceMappingURL=TableStyles.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Table/TableStyles.ts"],"names":["TableWrapper","styled","div","TableLoadingIndicator","TableContainer","table","COLORS","neutral_200","TableHeaderRowCol","th","neutral_20","ComponentTextStyle","Bold","neutral_600","TableColumnHeaderCol","white","neutral_300","primary_20","primary_100","TableDataRow","tr","neutral_100","primary_200","TableDataCol","td","Regular","black","primary_600","primary_700","focus_25","focus","TableFooterCol"],"mappings":";;;;;;;AAGA;;AAKA;;AACA;;;;;;;;AAEA;AACA;AACA;AAEO,IAAMA,YAAY,GAAGC,0BAAOC,GAAV,8FAAlB;;;;AAIA,IAAMC,qBAAqB,GAAGF,0BAAOC,GAAV,qLAA3B;;;;AAQA,IAAME,cAAc,GAAGH,0BAAOI,KAAV,uLAGDC,eAAOC,WAHN,EAIED,eAAOC,WAJT,CAApB;;;;AAOA,IAAMC,iBAAiB,GAAGP,0BAAOQ,EAAV,iUACRH,eAAOI,UADC,EAEDJ,eAAOC,WAFN,EAI1B,mCAAkBI,+BAAmBC,IAArC,EAA2CN,eAAOO,WAAlD,CAJ0B,CAAvB;;;;AAkBA,IAAMC,oBAAoB,GAAGb,0BAAOQ,EAAV,2jBACXH,eAAOS,KADI,EAEPT,eAAOU,WAFA,EAI7B,mCAAkBL,+BAAmBC,IAArC,EAA2CN,eAAOO,WAAlD,CAJ6B,EAgCbP,eAAOW,UAhCM,EAoCbX,eAAOY,WApCM,CAA1B;;;;AAyCA,IAAMC,YAAY,GAAGlB,0BAAOmB,EAAV,oTACHd,eAAOe,WADJ,EAIDf,eAAOI,UAJN,EASDJ,eAAOgB,WATN,EAcDhB,eAAOe,WAdN,CAAlB;;;;AAkBA,IAAME,YAAY,GAAGtB,0BAAOuB,EAAV,qwBAGrB,mCAAkBb,+BAAmBc,OAArC,EAA8CnB,eAAOoB,KAArD,CAHqB,EA0BZpB,eAAOqB,WA1BK,EA8BVrB,eAAOsB,WA9BG,EAqCQtB,eAAOuB,QArCf,EAqCwCvB,eAAOwB,KArC/C,EAsCVxB,eAAOsB,WAtCG,CAAlB;;;;AA+CA,IAAMG,cAAc,GAAG9B,0BAAOuB,EAAV,kmBACDlB,eAAOC,WADN,EAUnB,oCAAmBI,+BAAmBc,OAAtC,EAA+CnB,eAAOoB,KAAtD,CAVmB,EAkBnB,mCAAkBf,+BAAmBc,OAArC,EAA8CnB,eAAOoB,KAArD,CAlBmB,CAApB","sourcesContent":["/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\n\n/**\n * Import custom style properties.\n */\nimport { COLORS } from '../styles';\nimport { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle, ComponentXSStyling } from '../styles/typography';\n\n/**\n * Table styles\n */\n\nexport const TableWrapper = styled.div`\n position: relative;\n`;\n\nexport const TableLoadingIndicator = styled.div`\n height: 100%;\n width: 100%;\n position: absolute;\n background-color: rgba(0, 0, 0, 0.5);\n top: 0;\n`;\n\nexport const TableContainer = styled.table`\n background: transparent;\n width: 100%;\n border-top: 2px solid ${COLORS.neutral_200};\n border-bottom: 2px solid ${COLORS.neutral_200};\n`;\n\nexport const TableHeaderRowCol = styled.th`\n background-color: ${COLORS.neutral_20};\n border-bottom: 1px solid ${COLORS.neutral_200};\n\n ${ComponentLStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n padding: 16px 19px 16px 16px;\n\n div {\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n cursor: pointer;\n }\n }\n`;\n\nexport const TableColumnHeaderCol = styled.th`\n background-color: ${COLORS.white};\n border-top: 1px solid ${COLORS.neutral_300};\n\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n padding: 18px 16px;\n text-align: left;\n\n &.justify-center {\n text-align: center;\n }\n\n &.justify-left {\n text-align: left;\n }\n\n &.justify-right {\n text-align: right;\n }\n\n &.no-border {\n border: none;\n }\n\n &.sortable {\n cursor: pointer;\n\n > svg {\n float: right;\n }\n\n &:hover {\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n background: ${COLORS.primary_100};\n }\n }\n`;\n\nexport const TableDataRow = styled.tr`\n background-color: ${COLORS.neutral_100};\n\n &:nth-child(2n) {\n background-color: ${COLORS.neutral_20};\n }\n\n &:hover {\n cursor: pointer;\n background-color: ${COLORS.primary_200};\n }\n\n &.no-rows:hover {\n cursor: default;\n background-color: ${COLORS.neutral_100};\n }\n`;\n\nexport const TableDataCol = styled.td`\n background: transparent;\n\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n padding: 15px 16px;\n border: none;\n\n &.truncate-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &.justify-center {\n text-align: center;\n }\n\n &.justify-left {\n text-align: left;\n }\n\n &.justify-right {\n text-align: right;\n }\n\n button {\n color: ${COLORS.primary_600};\n text-decoration: none;\n\n &:hover {\n color: ${COLORS.primary_700};\n text-decoration: underline;\n }\n\n &:focus {\n text-decoration: underline;\n outline: none;\n box-shadow: 0px 4px 12px ${COLORS.focus_25}, 0px 0px 8px ${COLORS.focus} !important;\n color: ${COLORS.primary_700};\n }\n }\n\n &.center {\n text-align: center;\n }\n`;\n\nexport const TableFooterCol = styled.td`\n border-top: 1px solid ${COLORS.neutral_200};\n padding: 3.5px 20px 3.5px 16px;\n\n > div {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n\n > div > div:first-of-type {\n ${ComponentXSStyling(ComponentTextStyle.Regular, COLORS.black)}\n display: block;\n padding-top: 11px;\n padding-left: 2px;\n padding-right: 30px;\n }\n\n span {\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n &.current-page-info {\n margin-right: 34px;\n margin-left: 39px;\n }\n }\n\n .controls {\n display: flex;\n justify-content: space-between;\n }\n }\n`;\n"],"file":"TableStyles.js"}
1
+ {"version":3,"sources":["../../../src/Table/TableStyles.ts"],"names":["TableWrapper","styled","div","StyledTable","table","StyledTableHeader","thead","StyledTableHeaderTitle","tr","StyledTableHeaderTitleContent","COLORS","neutral_200","ComponentTextStyle","Bold","black","StyledTableHeaderColumns","StyledTableHeaderColumnContent","StyledTableHeaderColumn","th","neutral_600","white","primary_20","primary_700","Z_INDEXES","hover","primary_100","primary_800","active","focus_25","focus","StyledTableBodyRow","primary_200","StyledTableBody","tbody","neutral_100","StyledTableCell","td","StyledTableCellContent","Regular","StyledTableCellIcon","neutral_700","StyledTableFooter","tfoot","StyledTableFooterContent","StyledTableFooterCurrentInfo","span","StyledTableFooterControls","StyledTableSpinner"],"mappings":";;;;;;;AAGA;;AAKA;;AACA;;AAOA;;;;;;;;AAEA;AACA;AACA;AAEO,IAAMA,YAAY,GAAGC,0BAAOC,GAAV,8FAAlB;;;;AAKA,IAAMC,WAAW,GAAGF,0BAAOG,KAAV,qHAAjB;;;;AAKA,IAAMC,iBAAiB,GAAGJ,0BAAOK,KAAV,yEAAvB;;;;AAGA,IAAMC,sBAAsB,GAAGN,0BAAOO,EAAV,yEAA5B;;;;AAGA,IAAMC,6BAA6B,GAAGR,0BAAOC,GAAV,sWAObQ,eAAOC,WAPM,EAQhBD,eAAOC,WARS,EAWtC,mCAAkBC,+BAAmBC,IAArC,EAA2CH,eAAOI,KAAlD,CAXsC,CAAnC;;;;AAiBA,IAAMC,wBAAwB,GAAGd,0BAAOO,EAAV,yEAA9B;;;;AAGA,IAAMQ,8BAA8B,GAAGf,0BAAOC,GAAV,6SAQjBQ,eAAOC,WARU,EASdD,eAAOC,WATO,CAApC;;;;AAYA,IAAMM,uBAAuB,GAAGhB,0BAAOiB,EAAV,urBAChC,mCAAkBN,+BAAmBC,IAArC,EAA2CH,eAAOS,WAAlD,CADgC,EAIdT,eAAOU,KAJO,EAaVV,eAAOW,UAbG,EAcrBX,eAAOY,WAdc,EAenBC,oBAAUC,KAfS,EAmBVd,eAAOe,WAnBG,EAoBrBf,eAAOgB,WApBc,EAsBnBH,oBAAUI,MAtBS,EA2BLjB,eAAOkB,QA3BF,EA2BuBlB,eAAOmB,KA3B9B,EA4BnBN,oBAAUM,KA5BS,EAgCrBb,8BAhCqB,EAoCdA,8BApCc,CAA7B;;;;AA0CA,IAAMc,kBAAkB,GAAG7B,0BAAOO,EAAV,obAMPE,eAAOqB,WANA,EAOhBR,oBAAUC,KAPM,EAWPd,eAAOqB,WAXA,EAahBR,oBAAUM,KAbM,EAmBhBN,oBAAUI,MAnBM,CAAxB;;;;AAwBA,IAAMK,eAAe,GAAG/B,0BAAOgC,KAAV,+QACxBH,kBADwB,EAEJpB,eAAOwB,WAFH,EAKxBJ,kBALwB,EAMJpB,eAAOU,KANH,CAArB;;;;AAWA,IAAMe,eAAe,GAAGlC,0BAAOmC,EAAV,yEAArB;;;;AAEA,IAAMC,sBAAsB,GAAGpC,0BAAOC,GAAV,+cAI/B,mCAAkBU,+BAAmB0B,OAArC,EAA8C,IAA9C,CAJ+B,CAA5B;;;;AA8BA,IAAMC,mBAAmB,GAAGtC,0BAAOC,GAAV,oMACrBQ,eAAO8B,WADc,EAMnB9B,eAAO8B,WANY,CAAzB;;;;AAaA,IAAMC,iBAAiB,GAAGxC,0BAAOyC,KAAV,2EAAvB;;;;AAGA,IAAMC,wBAAwB,GAAG1C,0BAAOC,GAAV,oQACXQ,eAAOC,WADI,EAERD,eAAOC,WAFC,CAA9B;;;;AAWA,IAAMiC,4BAA4B,GAAG3C,0BAAO4C,IAAV,wGAErC,oCAAmBjC,+BAAmB0B,OAAtC,EAA+C5B,eAAOI,KAAtD,CAFqC,CAAlC;;;;AAKA,IAAMgC,yBAAyB,GAAG7C,0BAAOC,GAAV,6FAA/B;;;;AAIA,IAAM6C,kBAAkB,GAAG9C,0BAAOC,GAAV,uLAAxB","sourcesContent":["/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\n\n/**\n * Import custom style properties.\n */\nimport {COLORS} from '../styles';\nimport {\n ComponentLStyling,\n ComponentMStyling,\n ComponentSStyling,\n ComponentTextStyle,\n ComponentXSStyling\n} from '../styles/typography';\nimport {Z_INDEXES} from '../styles/z-indexes';\n\n/**\n * Table styles\n */\n\nexport const TableWrapper = styled.div`\n position: relative;\n`;\n\n\nexport const StyledTable = styled.table`\n background: transparent;\n width: 100%;\n`;\n\nexport const StyledTableHeader = styled.thead`\n`;\n\nexport const StyledTableHeaderTitle = styled.tr`\n`;\n\nexport const StyledTableHeaderTitleContent = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n box-sizing: border-box;\n min-height: 56px;\n border-bottom: 1px solid ${COLORS.neutral_200};\n border-top: 2px solid ${COLORS.neutral_200};\n padding: 0 16px;\n\n ${ComponentLStyling(ComponentTextStyle.Bold, COLORS.black)}\n .title-menu {\n margin-right: -16px;\n }\n`;\n\nexport const StyledTableHeaderColumns = styled.tr`\n`;\n\nexport const StyledTableHeaderColumnContent = styled.div`\n box-sizing: border-box;\n min-height: 56px;\n padding: 0 16px;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-top: 1px solid ${COLORS.neutral_200};\n border-bottom: 1px solid ${COLORS.neutral_200};\n`;\n\nexport const StyledTableHeaderColumn = styled.th`\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n position: relative;\n\n background-color: ${COLORS.white};\n\n //fixes header heights no idea why\n height: 1px;\n\n &.sortable {\n cursor: pointer;\n\n &:hover {\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n z-index: ${Z_INDEXES.hover};\n }\n\n &:active {\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n box-shadow: none !important;\n z-index: ${Z_INDEXES.active};\n }\n\n &:focus {\n outline: none;\n box-shadow: 0 4px 12px ${COLORS.focus_25}, 0 0 8px ${COLORS.focus};\n z-index: ${Z_INDEXES.focus};\n }\n }\n\n &.sortable ${StyledTableHeaderColumnContent} > svg {\n opacity: 0;\n }\n\n &.sortable.sorted ${StyledTableHeaderColumnContent} > svg {\n opacity: 1;\n }\n\n`;\n\nexport const StyledTableBodyRow = styled.tr`\n cursor: pointer;\n position: relative;\n outline: none;\n\n &:hover {\n background-color: ${COLORS.primary_200};\n z-index: ${Z_INDEXES.hover};\n }\n\n &:focus {\n background-color: ${COLORS.primary_200};\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2E7FA1;\n z-index: ${Z_INDEXES.focus};\n outline: none;\n }\n\n &:active {\n box-shadow: none;\n z-index: ${Z_INDEXES.active};\n }\n\n`;\n\nexport const StyledTableBody = styled.tbody`\n ${StyledTableBodyRow}:nth-child(odd):not(:hover):not(:focus):not(:active) {\n background-color: ${COLORS.neutral_100};\n }\n\n ${StyledTableBodyRow}:nth-child(even):not(:hover):not(:focus):not(:active) {\n background-color: ${COLORS.white};\n }\n`;\n\n\nexport const StyledTableCell = styled.td``;\n\nexport const StyledTableCellContent = styled.div`\n min-height: 48px;\n\n padding: 0 16px;\n ${ComponentSStyling(ComponentTextStyle.Regular, null)}\n\n display: flex;\n align-items: center;\n gap: 8px;\n\n &.truncate-text,\n &.truncate-text span {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &.left {\n justify-content: left;\n }\n\n &.right {\n justify-content: right;\n }\n\n &.center {\n justify-content: center;\n }\n`;\n\nexport const StyledTableCellIcon = styled.div`\n color: ${COLORS.neutral_700};\n width: 24px;\n height: 24px;\n\n svg {\n color: ${COLORS.neutral_700};\n width: 24px;\n height: 24px;\n }\n`;\n\n\nexport const StyledTableFooter = styled.tfoot`\n`;\n\nexport const StyledTableFooterContent = styled.div`\n border-top: 2px solid ${COLORS.neutral_200};\n border-bottom: 1px solid ${COLORS.neutral_200};\n box-sizing: border-box;\n min-height: 56px;\n\n display: flex;\n align-items: center;\n justify-content: right;\n`;\n\nexport const StyledTableFooterCurrentInfo = styled.span`\n padding: 0 16px;\n ${ComponentXSStyling(ComponentTextStyle.Regular, COLORS.black)}\n`;\n\nexport const StyledTableFooterControls = styled.div`\n display: flex;\n`;\n\nexport const StyledTableSpinner = styled.div`\n height: 100%;\n width: 100%;\n position: absolute;\n background-color: rgba(0, 0, 0, 0.5);\n top: 0;\n`;\n"],"file":"TableStyles.js"}