@laerdal/life-react-components 1.3.2-dev.4 → 1.3.2-dev.7

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 (81) hide show
  1. package/dist/esm/Button/Iconbutton.js +0 -1
  2. package/dist/esm/Button/Iconbutton.js.map +1 -1
  3. package/dist/esm/Dropdown/CommonStyling.js +4 -0
  4. package/dist/esm/Dropdown/CommonStyling.js.map +1 -1
  5. package/dist/esm/Dropdown/DropdownButton.js +5 -2
  6. package/dist/esm/Dropdown/DropdownButton.js.map +1 -1
  7. package/dist/esm/Dropdown/DropdownFilter.js.map +1 -1
  8. package/dist/esm/HyperLink/HyperLink.js +2 -1
  9. package/dist/esm/HyperLink/HyperLink.js.map +1 -1
  10. package/dist/esm/InputFields/Checkbox.js +23 -13
  11. package/dist/esm/InputFields/Checkbox.js.map +1 -1
  12. package/dist/esm/Table/Table.js +115 -181
  13. package/dist/esm/Table/Table.js.map +1 -1
  14. package/dist/esm/Table/TableBody.js +145 -0
  15. package/dist/esm/Table/TableBody.js.map +1 -0
  16. package/dist/esm/Table/TableFooter.js +67 -0
  17. package/dist/esm/Table/TableFooter.js.map +1 -0
  18. package/dist/esm/Table/TableHeaders.js +66 -0
  19. package/dist/esm/Table/TableHeaders.js.map +1 -0
  20. package/dist/esm/Table/TableStyles.js +175 -150
  21. package/dist/esm/Table/TableStyles.js.map +1 -1
  22. package/dist/esm/Table/__tests__/Table.test.js +0 -21
  23. package/dist/esm/Table/__tests__/Table.test.js.map +1 -1
  24. package/dist/js/Button/Iconbutton.d.ts +2 -2
  25. package/dist/js/Button/Iconbutton.js +0 -1
  26. package/dist/js/Button/Iconbutton.js.map +1 -1
  27. package/dist/js/Dropdown/CommonStyling.js +1 -1
  28. package/dist/js/Dropdown/CommonStyling.js.map +1 -1
  29. package/dist/js/Dropdown/DropdownButton.d.ts +1 -1
  30. package/dist/js/Dropdown/DropdownButton.js +5 -2
  31. package/dist/js/Dropdown/DropdownButton.js.map +1 -1
  32. package/dist/js/Dropdown/DropdownButtonTypes.d.ts +1 -0
  33. package/dist/js/Dropdown/DropdownFilter.d.ts +1 -1
  34. package/dist/js/Dropdown/DropdownFilter.js.map +1 -1
  35. package/dist/js/HyperLink/HyperLink.d.ts +1 -1
  36. package/dist/js/HyperLink/HyperLink.js +2 -2
  37. package/dist/js/HyperLink/HyperLink.js.map +1 -1
  38. package/dist/js/InputFields/Checkbox.d.ts +3 -2
  39. package/dist/js/InputFields/Checkbox.js +13 -11
  40. package/dist/js/InputFields/Checkbox.js.map +1 -1
  41. package/dist/js/Table/Table.js +145 -209
  42. package/dist/js/Table/Table.js.map +1 -1
  43. package/dist/js/Table/TableBody.d.ts +9 -0
  44. package/dist/js/Table/TableBody.js +176 -0
  45. package/dist/js/Table/TableBody.js.map +1 -0
  46. package/dist/js/Table/TableFooter.d.ts +13 -0
  47. package/dist/js/Table/TableFooter.js +88 -0
  48. package/dist/js/Table/TableFooter.js.map +1 -0
  49. package/dist/js/Table/TableHeaders.d.ts +9 -0
  50. package/dist/js/Table/TableHeaders.js +87 -0
  51. package/dist/js/Table/TableHeaders.js.map +1 -0
  52. package/dist/js/Table/TableStyles.d.ts +0 -7
  53. package/dist/js/Table/TableStyles.js +5 -31
  54. package/dist/js/Table/TableStyles.js.map +1 -1
  55. package/dist/js/Table/TableTypes.d.ts +23 -16
  56. package/dist/js/Table/__tests__/Table.test.js +8 -30
  57. package/dist/js/Table/__tests__/Table.test.js.map +1 -1
  58. package/dist/umd/Button/Iconbutton.js +0 -1
  59. package/dist/umd/Button/Iconbutton.js.map +1 -1
  60. package/dist/umd/Dropdown/CommonStyling.js +4 -0
  61. package/dist/umd/Dropdown/CommonStyling.js.map +1 -1
  62. package/dist/umd/Dropdown/DropdownButton.js +5 -2
  63. package/dist/umd/Dropdown/DropdownButton.js.map +1 -1
  64. package/dist/umd/Dropdown/DropdownFilter.js.map +1 -1
  65. package/dist/umd/HyperLink/HyperLink.js +2 -1
  66. package/dist/umd/HyperLink/HyperLink.js.map +1 -1
  67. package/dist/umd/InputFields/Checkbox.js +23 -13
  68. package/dist/umd/InputFields/Checkbox.js.map +1 -1
  69. package/dist/umd/Table/Table.js +141 -188
  70. package/dist/umd/Table/Table.js.map +1 -1
  71. package/dist/umd/Table/TableBody.js +281 -0
  72. package/dist/umd/Table/TableBody.js.map +1 -0
  73. package/dist/umd/Table/TableFooter.js +90 -0
  74. package/dist/umd/Table/TableFooter.js.map +1 -0
  75. package/dist/umd/Table/TableHeaders.js +103 -0
  76. package/dist/umd/Table/TableHeaders.js.map +1 -0
  77. package/dist/umd/Table/TableStyles.js +179 -155
  78. package/dist/umd/Table/TableStyles.js.map +1 -1
  79. package/dist/umd/Table/__tests__/Table.test.js +0 -21
  80. package/dist/umd/Table/__tests__/Table.test.js.map +1 -1
  81. package/package.json +1 -1
@@ -1,22 +1,22 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "styled-components", "../styles", "../styles/typography"], factory);
3
+ define(["exports", "styled-components", "../styles", "../styles/typography", "../styles/z-indexes"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("styled-components"), require("../styles"), require("../styles/typography"));
5
+ factory(exports, require("styled-components"), require("../styles"), require("../styles/typography"), require("../styles/z-indexes"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.styledComponents, global.styles, global.typography);
10
+ factory(mod.exports, global.styledComponents, global.styles, global.typography, global.zIndexes);
11
11
  global.undefined = mod.exports;
12
12
  }
13
- })(this, function (exports, _styledComponents, _styles, _typography) {
13
+ })(this, function (exports, _styledComponents, _styles, _typography, _zIndexes) {
14
14
  "use strict";
15
15
 
16
16
  Object.defineProperty(exports, "__esModule", {
17
17
  value: true
18
18
  });
19
- exports.TableFooterCol = exports.TableDataCol = exports.TableDataRow = exports.TableColumnHeaderCol = exports.TableHeaderRowCol = exports.TableContainer = exports.TableLoadingIndicator = exports.TableWrapper = undefined;
19
+ exports.TableWrapper = undefined;
20
20
 
21
21
  var _styledComponents2 = _interopRequireDefault(_styledComponents);
22
22
 
@@ -39,170 +39,194 @@
39
39
  */
40
40
  const TableWrapper = exports.TableWrapper = _styledComponents2.default.div`
41
41
  position: relative;
42
- `;
43
- const TableLoadingIndicator = exports.TableLoadingIndicator = _styledComponents2.default.div`
44
- height: 100%;
45
- width: 100%;
46
- position: absolute;
47
- background-color: rgba(0, 0, 0, 0.5);
48
- top: 0;
49
- `;
50
- const TableContainer = exports.TableContainer = _styledComponents2.default.table`
51
- background: transparent;
52
- width: 100%;
53
- border-top: 2px solid ${_styles.COLORS.neutral_200};
54
- border-bottom: 2px solid ${_styles.COLORS.neutral_200};
55
- `;
56
- const TableHeaderRowCol = exports.TableHeaderRowCol = _styledComponents2.default.th`
57
- background-color: ${_styles.COLORS.neutral_20};
58
- border-bottom: 1px solid ${_styles.COLORS.neutral_200};
59
-
60
- ${(0, _typography.ComponentLStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.neutral_600)}
61
- padding: 16px 19px 16px 16px;
62
-
63
- div {
64
- display: flex;
65
- justify-content: space-between;
66
- align-items: center;
67
-
68
- svg {
69
- cursor: pointer;
70
- }
71
- }
72
- `;
73
- const TableColumnHeaderCol = exports.TableColumnHeaderCol = _styledComponents2.default.th`
74
- background-color: ${_styles.COLORS.white};
75
- border-top: 1px solid ${_styles.COLORS.neutral_300};
76
-
77
- ${(0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.neutral_600)}
78
- padding: 18px 16px;
79
- text-align: left;
80
-
81
- &.justify-center {
82
- text-align: center;
83
- }
84
-
85
- &.justify-left {
86
- text-align: left;
87
- }
88
-
89
- &.justify-right {
90
- text-align: right;
91
- }
92
42
 
93
- &.no-border {
94
- border: none;
95
- }
96
-
97
- &.sortable {
98
- cursor: pointer;
99
-
100
- > svg {
101
- float: right;
102
- }
103
-
104
- &:hover {
105
- background: ${_styles.COLORS.primary_20};
106
- }
43
+ .table {
44
+
45
+ background: transparent;
46
+ width: 100%;
47
+
48
+ .table-header {
49
+ .table-header-title .title-content {
50
+ display: flex;
51
+ align-items: center;
52
+ justify-content: space-between;
53
+ width: 100%;
54
+ box-sizing: border-box;
55
+ min-height: 56px;
56
+ border-bottom: 1px solid ${_styles.COLORS.neutral_200};
57
+ border-top: 2px solid ${_styles.COLORS.neutral_200};
58
+ padding: 0 16px;
59
+
60
+ ${(0, _typography.ComponentLStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.black)}
61
+ .title-menu {
62
+ margin-right: -16px;
63
+ }
64
+ }
107
65
 
108
- &:focus {
109
- background: ${_styles.COLORS.primary_100};
66
+ .table-header-columns {
67
+
68
+ .table-header-column {
69
+ ${(0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.neutral_600)}
70
+ position: relative;
71
+
72
+ background-color: ${_styles.COLORS.white};
73
+
74
+ //fixes header heights no idea why
75
+ height: 1px;
76
+
77
+ .header-content {
78
+ box-sizing: border-box;
79
+ min-height: 56px;
80
+ padding: 0 16px;
81
+ height: 100%;
82
+ display: flex;
83
+ align-items: center;
84
+ justify-content: space-between;
85
+ border-top: 1px solid ${_styles.COLORS.neutral_200};
86
+ border-bottom: 1px solid ${_styles.COLORS.neutral_200};
87
+ }
88
+
89
+ &.sortable {
90
+ cursor: pointer;
91
+
92
+ &:hover {
93
+ background-color: ${_styles.COLORS.primary_20};
94
+ color: ${_styles.COLORS.primary_700};
95
+ z-index: ${_zIndexes.Z_INDEXES.hover};
96
+ }
97
+
98
+ &:active {
99
+ background-color: ${_styles.COLORS.primary_100};
100
+ color: ${_styles.COLORS.primary_800};
101
+ box-shadow: none !important;
102
+ z-index: ${_zIndexes.Z_INDEXES.active};
103
+ }
104
+
105
+ &:focus {
106
+ outline: none;
107
+ box-shadow: 0 4px 12px ${_styles.COLORS.focus_25}, 0 0 8px ${_styles.COLORS.focus};
108
+ z-index: ${_zIndexes.Z_INDEXES.focus};
109
+ }
110
+ }
111
+
112
+ &.sortable .header-content > svg {
113
+ opacity: 0;
114
+ }
115
+
116
+ &.sortable.sorted .header-content > svg {
117
+ opacity: 1;
118
+ }
119
+ }
120
+ }
110
121
  }
111
- }
112
- `;
113
- const TableDataRow = exports.TableDataRow = _styledComponents2.default.tr`
114
- background-color: ${_styles.COLORS.neutral_100};
115
122
 
116
- &:nth-child(2n) {
117
- background-color: ${_styles.COLORS.neutral_20};
118
- }
119
-
120
- &:hover {
121
- cursor: pointer;
122
- background-color: ${_styles.COLORS.primary_200};
123
- }
124
-
125
- &.no-rows:hover {
126
- cursor: default;
127
- background-color: ${_styles.COLORS.neutral_100};
128
- }
129
- `;
130
- const TableDataCol = exports.TableDataCol = _styledComponents2.default.td`
131
- background: transparent;
132
-
133
- ${(0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black)}
134
- padding: 15px 16px;
135
- border: none;
136
-
137
- &.truncate-text {
138
- overflow: hidden;
139
- text-overflow: ellipsis;
140
- white-space: nowrap;
141
- }
142
-
143
- &.justify-center {
144
- text-align: center;
145
- }
123
+ .table-body {
124
+ .table-row {
125
+ position: relative;
126
+
127
+ outline: none;
128
+
129
+ .table-cell {
130
+ .table-cell-content {
131
+ min-height: 48px;
132
+
133
+ padding: 0 16px;
134
+ ${(0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, null)}
135
+
136
+ display: flex;
137
+ align-items: center;
138
+ gap: 8px;
139
+
140
+ &.truncate-text,
141
+ &.truncate-text span {
142
+ overflow: hidden;
143
+ text-overflow: ellipsis;
144
+ white-space: nowrap;
145
+ }
146
+
147
+ &.left {
148
+ justify-content: left;
149
+ }
150
+
151
+ &.right {
152
+ justify-content: right;
153
+ }
154
+
155
+ &.center {
156
+ justify-content: center;
157
+ }
158
+ }
159
+
160
+ .table-cell-icon,
161
+ .table-cell-icon svg {
162
+ color: ${_styles.COLORS.neutral_700};
163
+ width: 24px;
164
+ height: 24px;
165
+ }
166
+ }
167
+ }
146
168
 
147
- &.justify-left {
148
- text-align: left;
149
- }
169
+ .table-row:nth-child(odd) {
170
+ background-color: ${_styles.COLORS.neutral_100};
171
+ }
150
172
 
151
- &.justify-right {
152
- text-align: right;
153
- }
173
+ .table-row:nth-child(even) {
174
+ background-color: ${_styles.COLORS.white};
175
+ }
154
176
 
155
- button {
156
- color: ${_styles.COLORS.primary_600};
157
- text-decoration: none;
177
+ .table-row {
178
+ cursor: pointer;
179
+
180
+ &:hover {
181
+ background-color: ${_styles.COLORS.primary_200};
182
+ z-index: ${_zIndexes.Z_INDEXES.hover};
183
+ }
184
+
185
+ &:active {
186
+ box-shadow: none !important;
187
+ z-index: ${_zIndexes.Z_INDEXES.active};
188
+ }
189
+
190
+ &:focus {
191
+ background-color: ${_styles.COLORS.primary_200};
192
+ box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2E7FA1;
193
+ z-index: ${_zIndexes.Z_INDEXES.focus};
194
+ outline: none;
195
+ }
196
+ }
158
197
 
159
- &:hover {
160
- color: ${_styles.COLORS.primary_700};
161
- text-decoration: underline;
162
198
  }
163
199
 
164
- &:focus {
165
- text-decoration: underline;
166
- outline: none;
167
- box-shadow: 0px 4px 12px ${_styles.COLORS.focus_25}, 0px 0px 8px ${_styles.COLORS.focus} !important;
168
- color: ${_styles.COLORS.primary_700};
200
+ .table-footer {
201
+ .footer-content {
202
+ border-top: 2px solid ${_styles.COLORS.neutral_200};
203
+ border-bottom: 1px solid ${_styles.COLORS.neutral_200};
204
+ box-sizing: border-box;
205
+ min-height: 56px;
206
+
207
+ display: flex;
208
+ align-items: center;
209
+ justify-content: right;
210
+
211
+ .current-page-info {
212
+ padding: 0 16px;
213
+ ${(0, _typography.ComponentXSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black)}
214
+ }
215
+
216
+ .controls {
217
+ display: flex;
218
+ }
219
+ }
169
220
  }
170
- }
171
221
 
172
- &.center {
173
- text-align: center;
174
222
  }
175
- `;
176
- const TableFooterCol = exports.TableFooterCol = _styledComponents2.default.td`
177
- border-top: 1px solid ${_styles.COLORS.neutral_200};
178
- padding: 3.5px 20px 3.5px 16px;
179
-
180
- > div {
181
- display: flex;
182
- align-items: center;
183
- justify-content: flex-end;
184
-
185
- > div > div:first-of-type {
186
- ${(0, _typography.ComponentXSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black)}
187
- display: block;
188
- padding-top: 11px;
189
- padding-left: 2px;
190
- padding-right: 30px;
191
- }
192
-
193
- span {
194
- ${(0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black)}
195
-
196
- &.current-page-info {
197
- margin-right: 34px;
198
- margin-left: 39px;
199
- }
200
- }
201
223
 
202
- .controls {
203
- display: flex;
204
- justify-content: space-between;
205
- }
224
+ .table-spinner {
225
+ height: 100%;
226
+ width: 100%;
227
+ position: absolute;
228
+ background-color: rgba(0, 0, 0, 0.5);
229
+ top: 0;
206
230
  }
207
231
  `;
208
232
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Table/TableStyles.ts"],"names":["TableWrapper","styled","div","TableLoadingIndicator","TableContainer","table","COLORS","neutral_200","TableHeaderRowCol","th","neutral_20","ComponentLStyling","ComponentTextStyle","TableColumnHeaderCol","white","neutral_300","ComponentSStyling","primary_20","primary_100","TableDataRow","tr","neutral_100","primary_200","TableDataCol","td","primary_600","primary_700","focus_25","focus","TableFooterCol","ComponentXSStyling"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAEO,QAAMA,YAAY,WAAZA,YAAY,GAAGC,2BAAOC,GAAI;AACvC;AADO,CAAA;AAIA,QAAMC,qBAAqB,WAArBA,qBAAqB,GAAGF,2BAAOC,GAAI;AAChD;AACA;AACA;AACA;AACA;AALO,CAAA;AAQA,QAAME,cAAc,WAAdA,cAAc,GAAGH,2BAAOI,KAAM;AAC3C;AACA;AACA,0BAA0BC,eAAOC,WAAY;AAC7C,6BAA6BD,eAAOC,WAAY;AAJzC,CAAA;AAOA,QAAMC,iBAAiB,WAAjBA,iBAAiB,GAAGP,2BAAOQ,EAAG;AAC3C,sBAAsBH,eAAOI,UAAW;AACxC,6BAA6BJ,eAAOC,WAAY;AAChD;AACA,IAAII,mCAAkBC,+BAAD,IAAjBD,EAA2CL,eAA1B,WAAjBK,CAA+D;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAfO,CAAA;AAkBA,QAAME,oBAAoB,WAApBA,oBAAoB,GAAGZ,2BAAOQ,EAAG;AAC9C,sBAAsBH,eAAOQ,KAAM;AACnC,0BAA0BR,eAAOS,WAAY;AAC7C;AACA,IAAIC,mCAAkBJ,+BAAD,IAAjBI,EAA2CV,eAA1B,WAAjBU,CAA+D;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoBV,eAAOW,UAAW;AACtC;AACA;AACA;AACA,oBAAoBX,eAAOY,WAAY;AACvC;AACA;AAtCO,CAAA;AAyCA,QAAMC,YAAY,WAAZA,YAAY,GAAGlB,2BAAOmB,EAAG;AACtC,sBAAsBd,eAAOe,WAAY;AACzC;AACA;AACA,wBAAwBf,eAAOI,UAAW;AAC1C;AACA;AACA;AACA;AACA,wBAAwBJ,eAAOgB,WAAY;AAC3C;AACA;AACA;AACA;AACA,wBAAwBhB,eAAOe,WAAY;AAC3C;AAfO,CAAA;AAkBA,QAAME,YAAY,WAAZA,YAAY,GAAGtB,2BAAOuB,EAAG;AACtC;AACA;AACA,IAAIR,mCAAkBJ,+BAAD,OAAjBI,EAA8CV,eAA7B,KAAjBU,CAA4D;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAaV,eAAOmB,WAAY;AAChC;AACA;AACA;AACA,eAAenB,eAAOoB,WAAY;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiCpB,eAAOqB,QAAS,iBAAgBrB,eAAOsB,KAAM;AAC9E,eAAetB,eAAOoB,WAAY;AAClC;AACA;AACA;AACA;AACA;AACA;AA5CO,CAAA;AA+CA,QAAMG,cAAc,WAAdA,cAAc,GAAG5B,2BAAOuB,EAAG;AACxC,0BAA0BlB,eAAOC,WAAY;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQuB,oCAAmBlB,+BAAD,OAAlBkB,EAA+CxB,eAA7B,KAAlBwB,CAA6D;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQd,mCAAkBJ,+BAAD,OAAjBI,EAA8CV,eAA7B,KAAjBU,CAA4D;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA9BO,CAAA","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","COLORS","neutral_200","ComponentLStyling","ComponentTextStyle","ComponentSStyling","white","primary_20","primary_700","Z_INDEXES","hover","primary_100","primary_800","active","focus_25","focus","neutral_700","neutral_100","primary_200","ComponentXSStyling"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAWA;AACA;AACA;AAEO,QAAMA,YAAY,WAAZA,YAAY,GAAGC,2BAAOC,GAAI;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmCC,eAAOC,WAAY;AACtD,gCAAgCD,eAAOC,WAAY;AACnD;AACA;AACA,UAAUC,mCAAkBC,+BAAD,IAAjBD,EAA2CF,eAA1B,KAAjBE,CAAyD;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAYE,mCAAkBD,+BAAD,IAAjBC,EAA2CJ,eAA1B,WAAjBI,CAA+D;AAC3E;AACA;AACA,8BAA8BJ,eAAOK,KAAM;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoCL,eAAOC,WAAY;AACvD,uCAAuCD,eAAOC,WAAY;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkCD,eAAOM,UAAW;AACpD,uBAAuBN,eAAOO,WAAY;AAC1C,yBAAyBC,oBAAUC,KAAM;AACzC;AACA;AACA;AACA,kCAAkCT,eAAOU,WAAY;AACrD,uBAAuBV,eAAOW,WAAY;AAC1C;AACA,yBAAyBH,oBAAUI,MAAO;AAC1C;AACA;AACA;AACA;AACA,uCAAuCZ,eAAOa,QAAS,aAAYb,eAAOc,KAAM;AAChF,yBAAyBN,oBAAUM,KAAM;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcV,mCAAkBD,+BAAD,OAAjBC,EAAiB,IAAjBA,CAAoD;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqBJ,eAAOe,WAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4Bf,eAAOgB,WAAY;AAC/C;AACA;AACA;AACA,4BAA4BhB,eAAOK,KAAM;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8BL,eAAOiB,WAAY;AACjD,qBAAqBT,oBAAUC,KAAM;AACrC;AACA;AACA;AACA;AACA,qBAAqBD,oBAAUI,MAAO;AACtC;AACA;AACA;AACA,8BAA8BZ,eAAOiB,WAAY;AACjD;AACA,qBAAqBT,oBAAUM,KAAM;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgCd,eAAOC,WAAY;AACnD,mCAAmCD,eAAOC,WAAY;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAYiB,oCAAmBf,+BAAD,OAAlBe,EAA+ClB,eAA7B,KAAlBkB,CAA6D;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA9LO,CAAA","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 .table {\n\n background: transparent;\n width: 100%;\n\n .table-header {\n .table-header-title .title-content {\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\n .table-header-columns {\n\n .table-header-column {\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 .header-content {\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\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 .header-content > svg {\n opacity: 0;\n }\n\n &.sortable.sorted .header-content > svg {\n opacity: 1;\n }\n }\n }\n }\n\n .table-body {\n .table-row {\n position: relative;\n\n outline: none;\n\n .table-cell {\n .table-cell-content {\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\n .table-cell-icon,\n .table-cell-icon svg {\n color: ${COLORS.neutral_700};\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .table-row:nth-child(odd) {\n background-color: ${COLORS.neutral_100};\n }\n\n .table-row:nth-child(even) {\n background-color: ${COLORS.white};\n }\n\n .table-row {\n cursor: pointer;\n\n &:hover {\n background-color: ${COLORS.primary_200};\n z-index: ${Z_INDEXES.hover};\n }\n\n &:active {\n box-shadow: none !important;\n z-index: ${Z_INDEXES.active};\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\n }\n\n .table-footer {\n .footer-content {\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 .current-page-info {\n padding: 0 16px;\n ${ComponentXSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n .controls {\n display: flex;\n }\n }\n }\n\n }\n\n .table-spinner {\n height: 100%;\n width: 100%;\n position: absolute;\n background-color: rgba(0, 0, 0, 0.5);\n top: 0;\n }\n`;\n"],"file":"TableStyles.js"}
@@ -230,27 +230,6 @@
230
230
  expect(getByTestId('TestTableColumnHeaderRow').children[0].classList.contains('no-border')).toBe(false);
231
231
  expect(getByTestId('TestTableColumnHeaderRow').children[1].classList.contains('no-border')).toBe(false);
232
232
  });
233
- it('Should render columns with no-border class in the column header row, in case title is not passed', () => {
234
- const columns = [{
235
- key: 'column1',
236
- name: 'Column 1'
237
- }, {
238
- key: 'column2',
239
- name: 'Column 2'
240
- }];
241
- const rows = [{
242
- column1: 'Test content',
243
- column2: 'Test content 2'
244
- }];
245
- const {
246
- getByTestId
247
- } = (0, _react3.render)( /*#__PURE__*/_react2.default.createElement(_index.Table, {
248
- rows: rows,
249
- columns: columns
250
- }));
251
- expect(getByTestId('TestTableColumnHeaderRow').children[0].classList.contains('no-border')).toBe(true);
252
- expect(getByTestId('TestTableColumnHeaderRow').children[1].classList.contains('no-border')).toBe(true);
253
- });
254
233
  });
255
234
  describe('Table Body Row tests', () => {
256
235
  it('Should not render "No Data" row in case there are rows', () => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/Table/__tests__/Table.test.tsx"],"names":["describe","it","columns","key","name","rows","column1","column2","getByTestId","render","expect","queryByTestId","tableHeaderRow"],"mappings":"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","sourcesContent":["import React from 'react';\n/**\n * Import React libraries.\n */\nimport { render } from '@testing-library/react';\n\n/**\n * Import custom components.\n */\nimport { Table } from '../index';\n\n/**\n * Import third-party libraries.\n */\nimport 'jest-styled-components';\n\n/**\n * Import custom types.\n */\nimport { TableColumn } from '../TableTypes';\n\ndescribe('<Table />', () => {\n it('Renders the Table', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} title=\"Test title\" />);\n expect(getByTestId('TestTable')).toBeDefined();\n });\n\n describe('Table Header Row Tests', () => {\n it('Should render table header row in case title is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} title=\"Test title\" />);\n expect(queryByTestId('TestTableHeaderRow')).not.toBeNull();\n });\n\n it('Should not render table header row in case title is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(queryByTestId('TestTableHeaderRow')).toBeNull();\n });\n\n describe('Table Header Row functional tests', () => {\n it('Should have title', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} title=\"Test Title\" />);\n const tableHeaderRow = queryByTestId('TestTableHeaderRow');\n expect(tableHeaderRow?.children[0].children[0].textContent).toContain('Test Title');\n });\n\n it('Should have options menu', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} title=\"Test Title\" />);\n expect(queryByTestId('TestTableHeaderRow')?.getElementsByTagName('svg')).not.toBeNull();\n });\n });\n });\n\n describe('Table Column Header Row Tests', () => {\n it('Should render column header row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableColumnHeaderRow')).not.toBeNull();\n });\n\n it('Should render two columns in the column header row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableColumnHeaderRow').children.length).toEqual(2);\n });\n\n it('Should render correct column names in the column header row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableColumnHeaderRow').children[0].textContent).toEqual('Column 1');\n expect(getByTestId('TestTableColumnHeaderRow').children[1].textContent).toEqual('Column 2');\n });\n\n it('Should render columns without no-border class in the column header row, in case title is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} title=\"test title\" />);\n expect(getByTestId('TestTableColumnHeaderRow').children[0].classList.contains('no-border')).toBe(false);\n expect(getByTestId('TestTableColumnHeaderRow').children[1].classList.contains('no-border')).toBe(false);\n });\n\n it('Should render columns with no-border class in the column header row, in case title is not passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableColumnHeaderRow').children[0].classList.contains('no-border')).toBe(true);\n expect(getByTestId('TestTableColumnHeaderRow').children[1].classList.contains('no-border')).toBe(true);\n });\n });\n\n describe('Table Body Row tests', () => {\n it('Should not render \"No Data\" row in case there are rows', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(queryByTestId('TestTableNoDataRow')).toBeNull();\n });\n\n it('Should render \"No Data\" row in case there are no rows', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(queryByTestId('TestTableNoDataRow')).not.toBeNull();\n expect(queryByTestId('TestTableNoDataRow')?.textContent).toEqual('There are no rows to display');\n });\n\n it('Should render a data row with correct content for each row that is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableDataRow')).toBeDefined();\n expect(getByTestId('TestTableDataRow').children.length).toEqual(2);\n expect(getByTestId('TestTableDataRow').children[0].textContent).toEqual('Test content');\n expect(getByTestId('TestTableDataRow').children[1].textContent).toEqual('Test content 2');\n });\n });\n\n it('Should render footer row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableFooterRow')).toBeDefined();\n });\n});\n"],"file":"Table.test.js"}
1
+ {"version":3,"sources":["../../../../src/Table/__tests__/Table.test.tsx"],"names":["describe","it","columns","key","name","rows","column1","column2","getByTestId","render","expect","queryByTestId","tableHeaderRow"],"mappings":"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","sourcesContent":["import React from 'react';\n/**\n * Import React libraries.\n */\nimport { render } from '@testing-library/react';\n\n/**\n * Import custom components.\n */\nimport { Table } from '../index';\n\n/**\n * Import third-party libraries.\n */\nimport 'jest-styled-components';\n\n/**\n * Import custom types.\n */\nimport { TableColumn } from '../TableTypes';\n\ndescribe('<Table />', () => {\n it('Renders the Table', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} title=\"Test title\" />);\n expect(getByTestId('TestTable')).toBeDefined();\n });\n\n describe('Table Header Row Tests', () => {\n it('Should render table header row in case title is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} title=\"Test title\" />);\n expect(queryByTestId('TestTableHeaderRow')).not.toBeNull();\n });\n\n it('Should not render table header row in case title is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(queryByTestId('TestTableHeaderRow')).toBeNull();\n });\n\n describe('Table Header Row functional tests', () => {\n it('Should have title', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} title=\"Test Title\" />);\n const tableHeaderRow = queryByTestId('TestTableHeaderRow');\n expect(tableHeaderRow?.children[0].children[0].textContent).toContain('Test Title');\n });\n\n it('Should have options menu', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} title=\"Test Title\" />);\n expect(queryByTestId('TestTableHeaderRow')?.getElementsByTagName('svg')).not.toBeNull();\n });\n });\n });\n\n describe('Table Column Header Row Tests', () => {\n it('Should render column header row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableColumnHeaderRow')).not.toBeNull();\n });\n\n it('Should render two columns in the column header row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableColumnHeaderRow').children.length).toEqual(2);\n });\n\n it('Should render correct column names in the column header row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableColumnHeaderRow').children[0].textContent).toEqual('Column 1');\n expect(getByTestId('TestTableColumnHeaderRow').children[1].textContent).toEqual('Column 2');\n });\n\n it('Should render columns without no-border class in the column header row, in case title is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} title=\"test title\" />);\n expect(getByTestId('TestTableColumnHeaderRow').children[0].classList.contains('no-border')).toBe(false);\n expect(getByTestId('TestTableColumnHeaderRow').children[1].classList.contains('no-border')).toBe(false);\n });\n\n });\n\n describe('Table Body Row tests', () => {\n it('Should not render \"No Data\" row in case there are rows', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(queryByTestId('TestTableNoDataRow')).toBeNull();\n });\n\n it('Should render \"No Data\" row in case there are no rows', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [];\n const { queryByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(queryByTestId('TestTableNoDataRow')).not.toBeNull();\n expect(queryByTestId('TestTableNoDataRow')?.textContent).toEqual('There are no rows to display');\n });\n\n it('Should render a data row with correct content for each row that is passed', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableDataRow')).toBeDefined();\n expect(getByTestId('TestTableDataRow').children.length).toEqual(2);\n expect(getByTestId('TestTableDataRow').children[0].textContent).toEqual('Test content');\n expect(getByTestId('TestTableDataRow').children[1].textContent).toEqual('Test content 2');\n });\n });\n\n it('Should render footer row', () => {\n const columns: TableColumn[] = [\n {\n key: 'column1',\n name: 'Column 1',\n },\n {\n key: 'column2',\n name: 'Column 2',\n },\n ];\n const rows: any[] = [\n {\n column1: 'Test content',\n column2: 'Test content 2',\n },\n ];\n const { getByTestId } = render(<Table rows={rows} columns={columns} />);\n expect(getByTestId('TestTableFooterRow')).toBeDefined();\n });\n});\n"],"file":"Table.test.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@laerdal/life-react-components",
3
- "version": "1.3.2-dev.4",
3
+ "version": "1.3.2-dev.7",
4
4
  "private": false,
5
5
  "author": "Thomas Kalve <thomas.kalve@laerdal.com>",
6
6
  "contributors": [