@dxc-technology/halstack-react 0.0.0-6a36022 → 0.0.0-6a99bfa

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 (264) hide show
  1. package/README.md +46 -0
  2. package/dist/index.d.mts +6670 -0
  3. package/dist/index.d.ts +6670 -0
  4. package/dist/index.js +14442 -0
  5. package/dist/index.mjs +14385 -0
  6. package/package.json +69 -70
  7. package/BackgroundColorContext.d.ts +0 -10
  8. package/BackgroundColorContext.js +0 -47
  9. package/ThemeContext.d.ts +0 -15
  10. package/ThemeContext.js +0 -243
  11. package/V3Select/V3Select.js +0 -455
  12. package/V3Select/index.d.ts +0 -27
  13. package/V3Textarea/V3Textarea.js +0 -260
  14. package/V3Textarea/index.d.ts +0 -27
  15. package/accordion/Accordion.d.ts +0 -4
  16. package/accordion/Accordion.js +0 -258
  17. package/accordion/Accordion.stories.tsx +0 -307
  18. package/accordion/types.d.ts +0 -68
  19. package/accordion/types.js +0 -5
  20. package/accordion-group/AccordionGroup.d.ts +0 -7
  21. package/accordion-group/AccordionGroup.js +0 -170
  22. package/accordion-group/AccordionGroup.stories.tsx +0 -225
  23. package/accordion-group/types.d.ts +0 -72
  24. package/accordion-group/types.js +0 -5
  25. package/alert/Alert.d.ts +0 -4
  26. package/alert/Alert.js +0 -290
  27. package/alert/Alert.stories.tsx +0 -170
  28. package/alert/types.d.ts +0 -49
  29. package/alert/types.js +0 -5
  30. package/badge/Badge.js +0 -59
  31. package/box/Box.d.ts +0 -4
  32. package/box/Box.js +0 -126
  33. package/box/Box.stories.tsx +0 -132
  34. package/box/types.d.ts +0 -43
  35. package/box/types.js +0 -5
  36. package/button/Button.d.ts +0 -4
  37. package/button/Button.js +0 -179
  38. package/button/Button.stories.tsx +0 -276
  39. package/button/types.d.ts +0 -57
  40. package/button/types.js +0 -5
  41. package/card/Card.d.ts +0 -4
  42. package/card/Card.js +0 -164
  43. package/card/Card.stories.tsx +0 -201
  44. package/card/ice-cream.jpg +0 -0
  45. package/card/types.d.ts +0 -67
  46. package/card/types.js +0 -5
  47. package/checkbox/Checkbox.d.ts +0 -4
  48. package/checkbox/Checkbox.js +0 -253
  49. package/checkbox/Checkbox.stories.tsx +0 -192
  50. package/checkbox/types.d.ts +0 -60
  51. package/checkbox/types.js +0 -5
  52. package/chip/Chip.d.ts +0 -4
  53. package/chip/Chip.js +0 -199
  54. package/chip/Chip.stories.tsx +0 -121
  55. package/chip/types.d.ts +0 -53
  56. package/chip/types.js +0 -5
  57. package/common/OpenSans.css +0 -81
  58. package/common/RequiredComponent.js +0 -32
  59. package/common/fonts/OpenSans-Bold.ttf +0 -0
  60. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  61. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  62. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  63. package/common/fonts/OpenSans-Italic.ttf +0 -0
  64. package/common/fonts/OpenSans-Light.ttf +0 -0
  65. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  66. package/common/fonts/OpenSans-Regular.ttf +0 -0
  67. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  68. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  69. package/common/utils.js +0 -22
  70. package/common/variables.js +0 -1612
  71. package/date/Date.js +0 -373
  72. package/date/index.d.ts +0 -27
  73. package/date-input/DateInput.d.ts +0 -4
  74. package/date-input/DateInput.js +0 -358
  75. package/date-input/DateInput.stories.tsx +0 -138
  76. package/date-input/types.d.ts +0 -100
  77. package/date-input/types.js +0 -5
  78. package/dialog/Dialog.d.ts +0 -4
  79. package/dialog/Dialog.js +0 -166
  80. package/dialog/Dialog.stories.tsx +0 -212
  81. package/dialog/types.d.ts +0 -43
  82. package/dialog/types.js +0 -5
  83. package/dropdown/Dropdown.d.ts +0 -4
  84. package/dropdown/Dropdown.js +0 -417
  85. package/dropdown/Dropdown.stories.tsx +0 -247
  86. package/dropdown/types.d.ts +0 -89
  87. package/dropdown/types.js +0 -5
  88. package/file-input/FileInput.d.ts +0 -4
  89. package/file-input/FileInput.js +0 -590
  90. package/file-input/FileInput.stories.tsx +0 -507
  91. package/file-input/FileItem.d.ts +0 -14
  92. package/file-input/FileItem.js +0 -184
  93. package/file-input/types.d.ts +0 -112
  94. package/file-input/types.js +0 -5
  95. package/footer/Footer.d.ts +0 -4
  96. package/footer/Footer.js +0 -260
  97. package/footer/Footer.stories.tsx +0 -130
  98. package/footer/Icons.d.ts +0 -2
  99. package/footer/Icons.js +0 -77
  100. package/footer/types.d.ts +0 -65
  101. package/footer/types.js +0 -5
  102. package/header/Header.d.ts +0 -7
  103. package/header/Header.js +0 -324
  104. package/header/Header.stories.tsx +0 -162
  105. package/header/Icons.d.ts +0 -2
  106. package/header/Icons.js +0 -34
  107. package/header/types.d.ts +0 -47
  108. package/header/types.js +0 -5
  109. package/heading/Heading.d.ts +0 -4
  110. package/heading/Heading.js +0 -159
  111. package/heading/Heading.stories.tsx +0 -54
  112. package/heading/types.d.ts +0 -33
  113. package/heading/types.js +0 -5
  114. package/input-text/Icons.js +0 -22
  115. package/input-text/InputText.js +0 -611
  116. package/input-text/index.d.ts +0 -36
  117. package/inset/Inset.d.ts +0 -3
  118. package/inset/Inset.js +0 -84
  119. package/inset/Inset.stories.tsx +0 -229
  120. package/inset/types.d.ts +0 -13
  121. package/inset/types.js +0 -5
  122. package/layout/ApplicationLayout.d.ts +0 -10
  123. package/layout/ApplicationLayout.js +0 -225
  124. package/layout/ApplicationLayout.stories.tsx +0 -171
  125. package/layout/Icons.js +0 -55
  126. package/layout/types.d.ts +0 -57
  127. package/layout/types.js +0 -5
  128. package/link/Link.d.ts +0 -3
  129. package/link/Link.js +0 -161
  130. package/link/Link.stories.tsx +0 -146
  131. package/link/types.d.ts +0 -74
  132. package/link/types.js +0 -5
  133. package/list/List.d.ts +0 -8
  134. package/list/List.js +0 -47
  135. package/list/List.stories.tsx +0 -95
  136. package/main.d.ts +0 -48
  137. package/main.js +0 -395
  138. package/number-input/NumberInput.d.ts +0 -4
  139. package/number-input/NumberInput.js +0 -83
  140. package/number-input/NumberInput.stories.tsx +0 -115
  141. package/number-input/NumberInputContext.d.ts +0 -4
  142. package/number-input/NumberInputContext.js +0 -19
  143. package/number-input/numberInputContextTypes.d.ts +0 -19
  144. package/number-input/numberInputContextTypes.js +0 -5
  145. package/number-input/types.d.ts +0 -117
  146. package/number-input/types.js +0 -5
  147. package/paginator/Icons.js +0 -66
  148. package/paginator/Paginator.d.ts +0 -4
  149. package/paginator/Paginator.js +0 -192
  150. package/paginator/Paginator.stories.tsx +0 -63
  151. package/paginator/types.d.ts +0 -38
  152. package/paginator/types.js +0 -5
  153. package/password-input/PasswordInput.d.ts +0 -4
  154. package/password-input/PasswordInput.js +0 -163
  155. package/password-input/PasswordInput.stories.tsx +0 -131
  156. package/password-input/types.d.ts +0 -107
  157. package/password-input/types.js +0 -5
  158. package/progress-bar/ProgressBar.d.ts +0 -4
  159. package/progress-bar/ProgressBar.js +0 -170
  160. package/progress-bar/ProgressBar.stories.jsx +0 -58
  161. package/progress-bar/types.d.ts +0 -37
  162. package/progress-bar/types.js +0 -5
  163. package/radio/Radio.d.ts +0 -4
  164. package/radio/Radio.js +0 -174
  165. package/radio/Radio.stories.tsx +0 -192
  166. package/radio/types.d.ts +0 -54
  167. package/radio/types.js +0 -5
  168. package/radio-group/Radio.d.ts +0 -4
  169. package/radio-group/Radio.js +0 -130
  170. package/radio-group/RadioGroup.d.ts +0 -4
  171. package/radio-group/RadioGroup.js +0 -268
  172. package/radio-group/RadioGroup.stories.tsx +0 -79
  173. package/radio-group/types.d.ts +0 -36
  174. package/radio-group/types.js +0 -5
  175. package/resultsetTable/ResultsetTable.d.ts +0 -4
  176. package/resultsetTable/ResultsetTable.js +0 -251
  177. package/resultsetTable/ResultsetTable.stories.tsx +0 -277
  178. package/resultsetTable/types.d.ts +0 -67
  179. package/resultsetTable/types.js +0 -5
  180. package/row/Row.d.ts +0 -11
  181. package/row/Row.js +0 -127
  182. package/row/Row.stories.tsx +0 -239
  183. package/select/Select.d.ts +0 -4
  184. package/select/Select.js +0 -863
  185. package/select/Select.stories.tsx +0 -572
  186. package/select/types.d.ts +0 -170
  187. package/select/types.js +0 -5
  188. package/sidenav/Sidenav.d.ts +0 -9
  189. package/sidenav/Sidenav.js +0 -136
  190. package/sidenav/Sidenav.stories.tsx +0 -182
  191. package/sidenav/types.d.ts +0 -50
  192. package/sidenav/types.js +0 -5
  193. package/slider/Slider.d.ts +0 -4
  194. package/slider/Slider.js +0 -317
  195. package/slider/Slider.stories.tsx +0 -177
  196. package/slider/types.d.ts +0 -78
  197. package/slider/types.js +0 -5
  198. package/spinner/Spinner.d.ts +0 -4
  199. package/spinner/Spinner.js +0 -250
  200. package/spinner/Spinner.stories.jsx +0 -103
  201. package/spinner/types.d.ts +0 -32
  202. package/spinner/types.js +0 -5
  203. package/stack/Stack.d.ts +0 -10
  204. package/stack/Stack.js +0 -97
  205. package/stack/Stack.stories.tsx +0 -166
  206. package/switch/Switch.d.ts +0 -4
  207. package/switch/Switch.js +0 -179
  208. package/switch/Switch.stories.tsx +0 -160
  209. package/switch/types.d.ts +0 -58
  210. package/switch/types.js +0 -5
  211. package/table/Table.d.ts +0 -4
  212. package/table/Table.js +0 -118
  213. package/table/Table.stories.jsx +0 -277
  214. package/table/types.d.ts +0 -21
  215. package/table/types.js +0 -5
  216. package/tabs/Tabs.d.ts +0 -4
  217. package/tabs/Tabs.js +0 -213
  218. package/tabs/Tabs.stories.tsx +0 -122
  219. package/tabs/types.d.ts +0 -70
  220. package/tabs/types.js +0 -5
  221. package/tag/Tag.d.ts +0 -4
  222. package/tag/Tag.js +0 -193
  223. package/tag/Tag.stories.tsx +0 -145
  224. package/tag/types.d.ts +0 -60
  225. package/tag/types.js +0 -5
  226. package/text/Text.d.ts +0 -7
  227. package/text/Text.js +0 -30
  228. package/text/Text.stories.tsx +0 -19
  229. package/text-input/TextInput.d.ts +0 -4
  230. package/text-input/TextInput.js +0 -794
  231. package/text-input/TextInput.stories.tsx +0 -456
  232. package/text-input/types.d.ts +0 -159
  233. package/text-input/types.js +0 -5
  234. package/textarea/Textarea.d.ts +0 -4
  235. package/textarea/Textarea.js +0 -284
  236. package/textarea/Textarea.stories.jsx +0 -136
  237. package/textarea/types.d.ts +0 -130
  238. package/textarea/types.js +0 -5
  239. package/toggle/Toggle.js +0 -186
  240. package/toggle/index.d.ts +0 -21
  241. package/toggle-group/ToggleGroup.d.ts +0 -4
  242. package/toggle-group/ToggleGroup.js +0 -214
  243. package/toggle-group/ToggleGroup.stories.tsx +0 -173
  244. package/toggle-group/types.d.ts +0 -97
  245. package/toggle-group/types.js +0 -5
  246. package/upload/Upload.js +0 -201
  247. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  248. package/upload/buttons-upload/Icons.js +0 -40
  249. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  250. package/upload/dragAndDropArea/Icons.js +0 -39
  251. package/upload/file-upload/FileToUpload.js +0 -115
  252. package/upload/file-upload/Icons.js +0 -66
  253. package/upload/files-upload/FilesToUpload.js +0 -109
  254. package/upload/index.d.ts +0 -15
  255. package/upload/transaction/Icons.js +0 -160
  256. package/upload/transaction/Transaction.js +0 -104
  257. package/upload/transactions/Transactions.js +0 -94
  258. package/useTheme.d.ts +0 -2
  259. package/useTheme.js +0 -22
  260. package/wizard/Wizard.d.ts +0 -4
  261. package/wizard/Wizard.js +0 -281
  262. package/wizard/Wizard.stories.tsx +0 -224
  263. package/wizard/types.d.ts +0 -60
  264. package/wizard/types.js +0 -5
@@ -1,251 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
- var _react = _interopRequireWildcard(require("react"));
19
-
20
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _variables = require("../common/variables.js");
23
-
24
- var _Table = _interopRequireDefault(require("../table/Table"));
25
-
26
- var _Paginator = _interopRequireDefault(require("../paginator/Paginator"));
27
-
28
- var _useTheme = _interopRequireDefault(require("../useTheme"));
29
-
30
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
31
-
32
- 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); }
33
-
34
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
35
-
36
- function normalizeSortValue(sortValue) {
37
- return typeof sortValue === "string" ? sortValue.toUpperCase() : sortValue;
38
- }
39
-
40
- function sortArray(index, order, resultset) {
41
- return resultset.slice().sort(function (element1, element2) {
42
- var sortValueA = normalizeSortValue(element1[index].sortValue || element1[index].displayValue);
43
- var sortValueB = normalizeSortValue(element2[index].sortValue || element2[index].displayValue);
44
- var comparison = 0;
45
-
46
- if ((0, _typeof2["default"])(sortValueA) === "object") {
47
- comparison = -1;
48
- } else if ((0, _typeof2["default"])(sortValueB) === "object") {
49
- comparison = 1;
50
- } else if (sortValueA > sortValueB) {
51
- comparison = 1;
52
- } else if (sortValueA < sortValueB) {
53
- comparison = -1;
54
- }
55
-
56
- return order === "desc" ? comparison * -1 : comparison;
57
- });
58
- }
59
-
60
- var getMinItemsPerPageIndex = function getMinItemsPerPageIndex(currentPageInternal, itemsPerPage, page) {
61
- return currentPageInternal === 1 ? 0 : itemsPerPage * (page - 1);
62
- };
63
-
64
- var getMaxItemsPerPageIndex = function getMaxItemsPerPageIndex(minItemsPerPageIndex, itemsPerPage, resultset, page) {
65
- return minItemsPerPageIndex + itemsPerPage > resultset.length ? resultset.length : itemsPerPage * page - 1;
66
- };
67
-
68
- var ArrowUp = function ArrowUp() {
69
- return /*#__PURE__*/_react["default"].createElement("svg", {
70
- xmlns: "http://www.w3.org/2000/svg",
71
- height: "24",
72
- viewBox: "0 0 24 24",
73
- width: "24",
74
- fill: "currentColor"
75
- }, /*#__PURE__*/_react["default"].createElement("path", {
76
- d: "M0 0h24v24H0V0z",
77
- fill: "none"
78
- }), /*#__PURE__*/_react["default"].createElement("path", {
79
- d: "M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z"
80
- }));
81
- };
82
-
83
- var ArrowDown = function ArrowDown() {
84
- return /*#__PURE__*/_react["default"].createElement("svg", {
85
- xmlns: "http://www.w3.org/2000/svg",
86
- height: "24",
87
- viewBox: "0 0 24 24",
88
- width: "24",
89
- fill: "currentColor"
90
- }, /*#__PURE__*/_react["default"].createElement("path", {
91
- d: "M0 0h24v24H0V0z",
92
- fill: "none"
93
- }), /*#__PURE__*/_react["default"].createElement("path", {
94
- d: "M20 12l-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"
95
- }));
96
- };
97
-
98
- var BothArrows = function BothArrows() {
99
- return /*#__PURE__*/_react["default"].createElement("svg", {
100
- xmlns: "http://www.w3.org/2000/svg",
101
- height: "24",
102
- viewBox: "0 0 24 24",
103
- width: "24",
104
- fill: "currentColor"
105
- }, /*#__PURE__*/_react["default"].createElement("path", {
106
- d: "M0 0h24v24H0z",
107
- fill: "none"
108
- }), /*#__PURE__*/_react["default"].createElement("path", {
109
- d: "M12 5.83L15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17z"
110
- }));
111
- };
112
-
113
- var DxcResultsetTable = function DxcResultsetTable(_ref) {
114
- var columns = _ref.columns,
115
- rows = _ref.rows,
116
- _ref$showGoToPage = _ref.showGoToPage,
117
- showGoToPage = _ref$showGoToPage === void 0 ? true : _ref$showGoToPage,
118
- _ref$itemsPerPage = _ref.itemsPerPage,
119
- itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
120
- itemsPerPageOptions = _ref.itemsPerPageOptions,
121
- itemsPerPageFunction = _ref.itemsPerPageFunction,
122
- margin = _ref.margin,
123
- _ref$tabIndex = _ref.tabIndex,
124
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
125
- var colorsTheme = (0, _useTheme["default"])();
126
-
127
- var _useState = (0, _react.useState)(1),
128
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
129
- page = _useState2[0],
130
- changePage = _useState2[1];
131
-
132
- var _useState3 = (0, _react.useState)(""),
133
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
134
- sortColumnIndex = _useState4[0],
135
- changeSortColumnIndex = _useState4[1];
136
-
137
- var _useState5 = (0, _react.useState)("asc"),
138
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
139
- sortOrder = _useState6[0],
140
- changeSortOrder = _useState6[1];
141
-
142
- var minItemsPerPageIndex = (0, _react.useMemo)(function () {
143
- return getMinItemsPerPageIndex(page, itemsPerPage, page);
144
- }, [itemsPerPage, page]);
145
- var maxItemsPerPageIndex = (0, _react.useMemo)(function () {
146
- return getMaxItemsPerPageIndex(minItemsPerPageIndex, itemsPerPage, rows, page);
147
- }, [itemsPerPage, minItemsPerPageIndex, page, rows]);
148
-
149
- var goToPage = function goToPage(newPage) {
150
- changePage(newPage);
151
- };
152
-
153
- var changeSorting = function changeSorting(columnIndex) {
154
- changePage(1);
155
- changeSortColumnIndex(columnIndex);
156
- changeSortOrder(sortColumnIndex === "" || sortColumnIndex !== columnIndex ? "asc" : sortOrder === "asc" ? "desc" : "asc");
157
- };
158
-
159
- var getIconForSortableColumn = function getIconForSortableColumn(clickedColumnIndex) {
160
- return sortColumnIndex === clickedColumnIndex ? sortOrder === "asc" ? /*#__PURE__*/_react["default"].createElement(ArrowUp, null) : /*#__PURE__*/_react["default"].createElement(ArrowDown, null) : /*#__PURE__*/_react["default"].createElement(BothArrows, null);
161
- };
162
-
163
- (0, _react.useEffect)(function () {
164
- if (rows.length > 0) {
165
- changePage(1);
166
- } else {
167
- changePage(0);
168
- }
169
- }, [rows.length, itemsPerPage]);
170
- var sortedResultset = (0, _react.useMemo)(function () {
171
- return sortColumnIndex !== "" ? sortArray(sortColumnIndex, sortOrder, rows) : rows;
172
- }, [sortColumnIndex, sortOrder, rows]);
173
- var filteredResultset = (0, _react.useMemo)(function () {
174
- return sortedResultset && sortedResultset.slice(minItemsPerPageIndex, maxItemsPerPageIndex + 1);
175
- }, [sortedResultset, minItemsPerPageIndex, maxItemsPerPageIndex]);
176
- return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
177
- theme: colorsTheme.table
178
- }, /*#__PURE__*/_react["default"].createElement(DxcResultsetTableContainer, {
179
- margin: margin
180
- }, /*#__PURE__*/_react["default"].createElement(TableContainer, null, /*#__PURE__*/_react["default"].createElement(_Table["default"], null, /*#__PURE__*/_react["default"].createElement(HeaderRow, null, /*#__PURE__*/_react["default"].createElement("tr", null, columns.map(function (column, index) {
181
- return /*#__PURE__*/_react["default"].createElement(TableHeader, {
182
- key: "tableHeader_".concat(index)
183
- }, /*#__PURE__*/_react["default"].createElement(HeaderContainer, {
184
- key: "headerContainer_".concat(index),
185
- onClick: function onClick() {
186
- return column.isSortable && changeSorting(index);
187
- },
188
- tabIndex: column.isSortable ? tabIndex : -1
189
- }, /*#__PURE__*/_react["default"].createElement(TitleDiv, {
190
- isSortable: column.isSortable
191
- }, column.displayValue), column.isSortable && /*#__PURE__*/_react["default"].createElement(SortIcon, null, getIconForSortableColumn(index))));
192
- }))), /*#__PURE__*/_react["default"].createElement(TableRowGroup, null, filteredResultset.map(function (cells, index) {
193
- return /*#__PURE__*/_react["default"].createElement("tr", {
194
- key: "resultSetTableCell_".concat(index)
195
- }, cells.map(function (cellContent, index) {
196
- return /*#__PURE__*/_react["default"].createElement("td", {
197
- key: "resultSetTableCellContent_".concat(index)
198
- }, cellContent.displayValue);
199
- }));
200
- })))), /*#__PURE__*/_react["default"].createElement(PaginatorContainer, null, /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
201
- totalItems: rows.length,
202
- itemsPerPage: itemsPerPage,
203
- itemsPerPageOptions: itemsPerPageOptions,
204
- itemsPerPageFunction: itemsPerPageFunction,
205
- currentPage: page,
206
- showGoToPage: showGoToPage,
207
- onPageChange: goToPage,
208
- tabIndex: tabIndex
209
- }))));
210
- };
211
-
212
- var TableContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n & table {\n table-layout: auto;\n }\n"])));
213
-
214
- var PaginatorContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])([""])));
215
-
216
- var TableRowGroup = _styledComponents["default"].tbody(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n > div:nth-child(1) {\n position: absolute;\n left: calc(50% - 68.5px);\n bottom: calc(50% - 68.5px - 30px);\n }\n & tr {\n height: ", ";\n }\n"])), function (props) {
217
- return props.theme.rowHeight || "70px";
218
- });
219
-
220
- var SortIcon = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n top: 409px;\n left: 390px;\n height: 14px;\n cursor: pointer;\n color: ", ";\n\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
221
- return props.theme.sortIconColor;
222
- });
223
-
224
- var TitleDiv = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: ", ";\n"])), function (props) {
225
- return props.isSortable && "pointer" || "default";
226
- });
227
-
228
- var TableHeader = _styledComponents["default"].th(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])([""])));
229
-
230
- var HeaderContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n width: 100%;\n :focus {\n outline: #0095ff auto 1px;\n }\n"])), function (props) {
231
- return props.theme.headerTextAlign === "center" ? "center" : props.theme.headerTextAlign === "right" ? "flex-end" : "flex-start";
232
- });
233
-
234
- var HeaderRow = _styledComponents["default"].thead(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n height: 60px;\n"])));
235
-
236
- var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
237
- return props.theme.fontSizeBase;
238
- }, function (props) {
239
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
240
- }, function (props) {
241
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
242
- }, function (props) {
243
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
244
- }, function (props) {
245
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
246
- }, function (props) {
247
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
248
- });
249
-
250
- var _default = DxcResultsetTable;
251
- exports["default"] = _default;
@@ -1,277 +0,0 @@
1
- import React from "react";
2
- import DxcResultsetTable from "./ResultsetTable";
3
- import DxcButton from "../button/Button";
4
- import Title from "../../.storybook/components/Title";
5
- import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
- import { userEvent, within } from "@storybook/testing-library";
7
-
8
- export default {
9
- title: "Resultset Table",
10
- component: DxcResultsetTable,
11
- };
12
-
13
- const deleteIcon = () => {
14
- return (
15
- <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24">
16
- <path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z" />
17
- <path d="M0 0h24v24H0z" fill="none" />
18
- </svg>
19
- );
20
- };
21
-
22
- const columns = [{ displayValue: "Id" }, { displayValue: "Name" }, { displayValue: "City" }];
23
-
24
- const rows = [
25
- [{ displayValue: "001" }, { displayValue: "Peter" }, { displayValue: "Miami" }],
26
- [{ displayValue: "002" }, { displayValue: "Louis" }, { displayValue: "London" }],
27
- [{ displayValue: "003" }, { displayValue: "Lana" }, { displayValue: "Amsterdam" }],
28
- [{ displayValue: "004" }, { displayValue: "Rick" }, { displayValue: "London" }],
29
- [{ displayValue: "005" }, { displayValue: "Mark" }, { displayValue: "Miami" }],
30
- [{ displayValue: "006" }, { displayValue: "Cris" }, { displayValue: "Paris" }],
31
- ];
32
-
33
- const rowsIcon = [
34
- [
35
- { displayValue: "001", sortValue: "001" },
36
- { displayValue: "Peter" },
37
- { displayValue: <DxcButton icon={deleteIcon} /> },
38
- ],
39
- [{ displayValue: "002", sortValue: "002" }, { displayValue: "Louis" }, { displayValue: "" }],
40
- [
41
- { displayValue: "003", sortValue: "003" },
42
- { displayValue: "Mark" },
43
- { displayValue: <DxcButton icon={deleteIcon} /> },
44
- ],
45
- ];
46
-
47
- const columnsSortable = [
48
- { displayValue: "Id", isSortable: true },
49
- { displayValue: "Name", isSortable: true },
50
- { displayValue: "City", isSortable: false },
51
- ];
52
-
53
- const rowsSortable = [
54
- [
55
- { displayValue: "001", sortValue: "001" },
56
- { displayValue: "Peter", sortValue: "Peter" },
57
- { displayValue: "Miami", sortValue: "Miami" },
58
- ],
59
- [
60
- { displayValue: "002", sortValue: "002" },
61
- { displayValue: "Louis", sortValue: "Louis" },
62
- { displayValue: "London", sortValue: "London" },
63
- ],
64
- [
65
- { displayValue: "003", sortValue: "003" },
66
- { displayValue: "Aida", sortValue: "Aida" },
67
- { displayValue: "Wroclaw", sortValue: "Wroclaw" },
68
- ],
69
- [
70
- { displayValue: "004", sortValue: "004" },
71
- { displayValue: "Lana", sortValue: "Lana" },
72
- { displayValue: "Amsterdam", sortValue: "Amsterdam" },
73
- ],
74
- ];
75
-
76
- const longColumns = [
77
- { displayValue: "Column1" },
78
- { displayValue: "Column2" },
79
- { displayValue: "Column3" },
80
- { displayValue: "Column4" },
81
- { displayValue: "Column5" },
82
- { displayValue: "Column6" },
83
- { displayValue: "Column7" },
84
- { displayValue: "Column8" },
85
- { displayValue: "Column9" },
86
- { displayValue: "Column10" },
87
- { displayValue: "Column11" },
88
- { displayValue: "Column12" },
89
- { displayValue: "Column13" },
90
- { displayValue: "Column14" },
91
- { displayValue: "Column15" },
92
- { displayValue: "Column16" },
93
- { displayValue: "Column17" },
94
- { displayValue: "Column18" },
95
- { displayValue: "Column19" },
96
- { displayValue: "Column20" },
97
- ];
98
-
99
- const longRows = [
100
- [
101
- { displayValue: "001", sortValue: "001" },
102
- { displayValue: "Peter", sortValue: "Peter" },
103
- { displayValue: "Miami", sortValue: "Miami" },
104
- { displayValue: "001", sortValue: "001" },
105
- { displayValue: "Peter", sortValue: "Peter" },
106
- { displayValue: "Miami", sortValue: "Miami" },
107
- { displayValue: "Miami", sortValue: "Miami" },
108
- { displayValue: "001", sortValue: "001" },
109
- { displayValue: "Peter", sortValue: "Peter" },
110
- { displayValue: "Miami", sortValue: "Miami" },
111
- { displayValue: "002", sortValue: "002" },
112
- { displayValue: "Louis", sortValue: "Louis" },
113
- { displayValue: "London", sortValue: "London" },
114
- { displayValue: "002", sortValue: "002" },
115
- { displayValue: "Louis", sortValue: "Louis" },
116
- { displayValue: "London", sortValue: "London" },
117
- { displayValue: "002", sortValue: "002" },
118
- { displayValue: "Louis", sortValue: "Louis" },
119
- { displayValue: "London", sortValue: "London" },
120
- { displayValue: "London", sortValue: "London" },
121
- ],
122
- [
123
- { displayValue: "002", sortValue: "002" },
124
- { displayValue: "Louis", sortValue: "Louis" },
125
- { displayValue: "London", sortValue: "London" },
126
- { displayValue: "002", sortValue: "002" },
127
- { displayValue: "Louis", sortValue: "Louis" },
128
- { displayValue: "London", sortValue: "London" },
129
- { displayValue: "002", sortValue: "002" },
130
- { displayValue: "Louis", sortValue: "Louis" },
131
- { displayValue: "London", sortValue: "London" },
132
- { displayValue: "London", sortValue: "London" },
133
- { displayValue: "002", sortValue: "002" },
134
- { displayValue: "Louis", sortValue: "Louis" },
135
- { displayValue: "London", sortValue: "London" },
136
- { displayValue: "002", sortValue: "002" },
137
- { displayValue: "Louis", sortValue: "Louis" },
138
- { displayValue: "London", sortValue: "London" },
139
- { displayValue: "002", sortValue: "002" },
140
- { displayValue: "Louis", sortValue: "Louis" },
141
- { displayValue: "London", sortValue: "London" },
142
- { displayValue: "London", sortValue: "London" },
143
- ],
144
- [
145
- { displayValue: "002", sortValue: "002" },
146
- { displayValue: "Louis", sortValue: "Louis" },
147
- { displayValue: "London", sortValue: "London" },
148
- { displayValue: "002", sortValue: "002" },
149
- { displayValue: "Louis", sortValue: "Louis" },
150
- { displayValue: "London", sortValue: "London" },
151
- { displayValue: "002", sortValue: "002" },
152
- { displayValue: "Louis", sortValue: "Louis" },
153
- { displayValue: "London", sortValue: "London" },
154
- { displayValue: "London", sortValue: "London" },
155
- { displayValue: "002", sortValue: "002" },
156
- { displayValue: "Louis", sortValue: "Louis" },
157
- { displayValue: "London", sortValue: "London" },
158
- { displayValue: "002", sortValue: "002" },
159
- { displayValue: "Louis", sortValue: "Louis" },
160
- { displayValue: "London", sortValue: "London" },
161
- { displayValue: "002", sortValue: "002" },
162
- { displayValue: "Louis", sortValue: "Louis" },
163
- { displayValue: "London", sortValue: "London" },
164
- { displayValue: "London", sortValue: "London" },
165
- ],
166
- ];
167
-
168
- export const Chromatic = () => (
169
- <>
170
- <ExampleContainer>
171
- <Title title="Sortable table" theme="light" level={4} />
172
- <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
173
- </ExampleContainer>
174
- <ExampleContainer>
175
- <Title title="With action" theme="light" level={4} />
176
- <DxcResultsetTable columns={columns} rows={rowsIcon}></DxcResultsetTable>
177
- </ExampleContainer>
178
- <ExampleContainer>
179
- <Title title="With items per page option" theme="light" level={4} />
180
- <DxcResultsetTable
181
- columns={columns}
182
- rows={rows}
183
- itemsPerPage={2}
184
- itemsPerPageOptions={[2, 3]}
185
- ></DxcResultsetTable>
186
- </ExampleContainer>
187
- <ExampleContainer>
188
- <Title title="Scroll resultset table" theme="light" level={4} />
189
- <DxcResultsetTable columns={longColumns} rows={longRows}></DxcResultsetTable>
190
- </ExampleContainer>
191
- <Title title="Margins" theme="light" level={2} />
192
- <ExampleContainer>
193
- <Title title="Xxsmall" theme="light" level={4} />
194
- <DxcResultsetTable columns={columns} rows={rows} margin={"xxsmall"}></DxcResultsetTable>
195
- </ExampleContainer>
196
- <ExampleContainer>
197
- <Title title="Xsmall" theme="light" level={4} />
198
- <DxcResultsetTable columns={columns} rows={rows} margin={"xsmall"}></DxcResultsetTable>
199
- </ExampleContainer>
200
- <ExampleContainer>
201
- <Title title="Small" theme="light" level={4} />
202
- <DxcResultsetTable columns={columns} rows={rows} margin={"small"}></DxcResultsetTable>
203
- </ExampleContainer>
204
- <ExampleContainer>
205
- <Title title="Medium" theme="light" level={4} />
206
- <DxcResultsetTable columns={columns} rows={rows} margin={"medium"}></DxcResultsetTable>
207
- </ExampleContainer>
208
- <ExampleContainer>
209
- <Title title="Large" theme="light" level={4} />
210
- <DxcResultsetTable columns={columns} rows={rows} margin={"large"}></DxcResultsetTable>
211
- </ExampleContainer>
212
- <ExampleContainer>
213
- <Title title="Xlarge" theme="light" level={4} />
214
- <DxcResultsetTable columns={columns} rows={rows} margin={"xlarge"}></DxcResultsetTable>
215
- </ExampleContainer>
216
- <ExampleContainer>
217
- <Title title="Xxlarge" theme="light" level={4} />
218
- <DxcResultsetTable columns={columns} rows={rows} margin={"xxlarge"}></DxcResultsetTable>
219
- <hr />
220
- </ExampleContainer>
221
- </>
222
- );
223
-
224
- const ResultsetTableAsc = () => (
225
- <ExampleContainer>
226
- <Title title="Ascendant sorting" theme="light" level={4} />
227
- <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
228
- </ExampleContainer>
229
- );
230
-
231
- export const AscendentSorting = ResultsetTableAsc.bind({});
232
- AscendentSorting.play = async ({ canvasElement }) => {
233
- const canvas = within(canvasElement);
234
- await userEvent.click(canvas.queryByText("Name"));
235
- };
236
-
237
- const ResultsetTableDesc = () => (
238
- <ExampleContainer>
239
- <Title title="Descendant sorting" theme="light" level={4} />
240
- <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
241
- </ExampleContainer>
242
- );
243
-
244
- export const DescendantSorting = ResultsetTableDesc.bind({});
245
- DescendantSorting.play = async ({ canvasElement }) => {
246
- const canvas = within(canvasElement);
247
- await userEvent.click(canvas.queryByText("Name"));
248
- await userEvent.click(canvas.queryByText("Name"));
249
- };
250
-
251
- const ResultsetTableMiddle = () => (
252
- <ExampleContainer>
253
- <Title title="Middle page" theme="light" level={4} />
254
- <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2}></DxcResultsetTable>
255
- </ExampleContainer>
256
- );
257
-
258
- export const MiddlePage = ResultsetTableMiddle.bind({});
259
- MiddlePage.play = async ({ canvasElement }) => {
260
- const canvas = within(canvasElement);
261
- const nextButton = canvas.getAllByRole("button")[2];
262
- await userEvent.click(nextButton);
263
- };
264
-
265
- const ResultsetTableLast = () => (
266
- <ExampleContainer>
267
- <Title title="Last page" theme="light" level={4} />
268
- <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2}></DxcResultsetTable>
269
- </ExampleContainer>
270
- );
271
-
272
- export const LastPage = ResultsetTableLast.bind({});
273
- LastPage.play = async ({ canvasElement }) => {
274
- const canvas = within(canvasElement);
275
- const nextButton = canvas.getAllByRole("button")[3];
276
- await userEvent.click(nextButton);
277
- };
@@ -1,67 +0,0 @@
1
- /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Margin = {
4
- top?: Space;
5
- bottom?: Space;
6
- left?: Space;
7
- right?: Space;
8
- };
9
- declare type Column = {
10
- /**
11
- * Column display value.
12
- */
13
- displayValue: React.ReactNode;
14
- /**
15
- * Boolean value to indicate whether the column is sortable or not.
16
- */
17
- isSortable?: boolean;
18
- };
19
- declare type Row = {
20
- /**
21
- * Value to be displayed in the cell.
22
- */
23
- displayValue: React.ReactNode;
24
- /**
25
- * Value to be used when sorting the table by that
26
- * column. If not indicated displayValue will be used for sorting.
27
- */
28
- sortValue?: string;
29
- };
30
- declare type Props = {
31
- /**
32
- * An array of objects representing the columns of the table.
33
- */
34
- columns: Column[];
35
- /**
36
- * An array of objects representing the rows of the table, you will have
37
- * as many objects as columns in the table.
38
- */
39
- rows: Row[][];
40
- /**
41
- * If true, a select component for navigation between pages will be displayed.
42
- */
43
- showGoToPage?: boolean;
44
- /**
45
- * Number of items per page.
46
- */
47
- itemsPerPage?: number;
48
- /**
49
- * An array of numbers representing the items per page options.
50
- */
51
- itemsPerPageOptions?: number[];
52
- /**
53
- * This function will be called when the user selects an item per page
54
- * option. The value selected will be passed as a parameter.
55
- */
56
- itemsPerPageFunction?: (newValue: number) => void;
57
- /**
58
- * Size of the margin to be applied to the component. You can pass an object with 'top',
59
- * 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
60
- */
61
- margin?: Space | Margin;
62
- /**
63
- * Value of the tabindex attribute given to the sortable icon.
64
- */
65
- tabIndex?: number;
66
- };
67
- export default Props;
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
package/row/Row.d.ts DELETED
@@ -1,11 +0,0 @@
1
- import React from "react";
2
- declare type RowProps = {
3
- gutter?: "none" | "xxxsmall" | "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge" | "xxxlarge";
4
- align?: "start" | "center" | "end" | "baseline" | "stretch";
5
- justify?: "start" | "center" | "end" | "spaceBetween" | "spaceAround" | "spaceEvenly";
6
- wrap?: boolean;
7
- reverse?: boolean;
8
- children: React.ReactNode;
9
- };
10
- export default function Row({ gutter, align, justify, wrap, reverse, children }: RowProps): JSX.Element;
11
- export {};