@dxc-technology/halstack-react 0.0.0-7ef55ea → 0.0.0-7f5cfb5

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 (277) hide show
  1. package/README.md +46 -0
  2. package/dist/index.d.mts +4197 -0
  3. package/dist/index.d.ts +4197 -0
  4. package/dist/index.js +16846 -0
  5. package/dist/index.mjs +16755 -0
  6. package/package.json +87 -71
  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 -247
  17. package/accordion/Accordion.stories.tsx +0 -307
  18. package/accordion/types.d.ts +0 -64
  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 -68
  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.d.ts +0 -4
  31. package/badge/Badge.js +0 -59
  32. package/badge/types.d.ts +0 -4
  33. package/badge/types.js +0 -5
  34. package/bleed/Bleed.d.ts +0 -3
  35. package/bleed/Bleed.js +0 -84
  36. package/bleed/Bleed.stories.tsx +0 -342
  37. package/bleed/types.d.ts +0 -13
  38. package/bleed/types.js +0 -5
  39. package/box/Box.d.ts +0 -4
  40. package/box/Box.js +0 -126
  41. package/box/Box.stories.tsx +0 -132
  42. package/box/types.d.ts +0 -43
  43. package/box/types.js +0 -5
  44. package/button/Button.d.ts +0 -4
  45. package/button/Button.js +0 -171
  46. package/button/Button.stories.tsx +0 -274
  47. package/button/types.d.ts +0 -53
  48. package/button/types.js +0 -5
  49. package/card/Card.d.ts +0 -4
  50. package/card/Card.js +0 -164
  51. package/card/Card.stories.tsx +0 -201
  52. package/card/ice-cream.jpg +0 -0
  53. package/card/types.d.ts +0 -67
  54. package/card/types.js +0 -5
  55. package/checkbox/Checkbox.d.ts +0 -4
  56. package/checkbox/Checkbox.js +0 -253
  57. package/checkbox/Checkbox.stories.tsx +0 -192
  58. package/checkbox/types.d.ts +0 -60
  59. package/checkbox/types.js +0 -5
  60. package/chip/Chip.d.ts +0 -4
  61. package/chip/Chip.js +0 -161
  62. package/chip/Chip.stories.tsx +0 -119
  63. package/chip/types.d.ts +0 -45
  64. package/chip/types.js +0 -5
  65. package/common/OpenSans.css +0 -81
  66. package/common/RequiredComponent.js +0 -32
  67. package/common/fonts/OpenSans-Bold.ttf +0 -0
  68. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  69. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  70. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  71. package/common/fonts/OpenSans-Italic.ttf +0 -0
  72. package/common/fonts/OpenSans-Light.ttf +0 -0
  73. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  74. package/common/fonts/OpenSans-Regular.ttf +0 -0
  75. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  76. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  77. package/common/utils.js +0 -22
  78. package/common/variables.js +0 -1611
  79. package/date/Date.js +0 -373
  80. package/date/index.d.ts +0 -27
  81. package/date-input/DateInput.d.ts +0 -4
  82. package/date-input/DateInput.js +0 -358
  83. package/date-input/DateInput.stories.tsx +0 -138
  84. package/date-input/types.d.ts +0 -100
  85. package/date-input/types.js +0 -5
  86. package/dialog/Dialog.d.ts +0 -4
  87. package/dialog/Dialog.js +0 -166
  88. package/dialog/Dialog.stories.tsx +0 -212
  89. package/dialog/types.d.ts +0 -43
  90. package/dialog/types.js +0 -5
  91. package/dropdown/Dropdown.d.ts +0 -4
  92. package/dropdown/Dropdown.js +0 -395
  93. package/dropdown/Dropdown.stories.tsx +0 -249
  94. package/dropdown/types.d.ts +0 -80
  95. package/dropdown/types.js +0 -5
  96. package/file-input/FileInput.d.ts +0 -4
  97. package/file-input/FileInput.js +0 -590
  98. package/file-input/FileInput.stories.tsx +0 -507
  99. package/file-input/FileItem.d.ts +0 -14
  100. package/file-input/FileItem.js +0 -184
  101. package/file-input/types.d.ts +0 -112
  102. package/file-input/types.js +0 -5
  103. package/footer/Footer.d.ts +0 -4
  104. package/footer/Footer.js +0 -258
  105. package/footer/Footer.stories.tsx +0 -130
  106. package/footer/Icons.d.ts +0 -2
  107. package/footer/Icons.js +0 -77
  108. package/footer/types.d.ts +0 -65
  109. package/footer/types.js +0 -5
  110. package/header/Header.d.ts +0 -7
  111. package/header/Header.js +0 -324
  112. package/header/Header.stories.tsx +0 -162
  113. package/header/Icons.d.ts +0 -2
  114. package/header/Icons.js +0 -34
  115. package/header/types.d.ts +0 -47
  116. package/header/types.js +0 -5
  117. package/heading/Heading.d.ts +0 -4
  118. package/heading/Heading.js +0 -159
  119. package/heading/Heading.stories.tsx +0 -54
  120. package/heading/types.d.ts +0 -33
  121. package/heading/types.js +0 -5
  122. package/input-text/Icons.js +0 -22
  123. package/input-text/InputText.js +0 -611
  124. package/input-text/index.d.ts +0 -36
  125. package/inset/Inset.d.ts +0 -3
  126. package/inset/Inset.js +0 -84
  127. package/inset/Inset.stories.tsx +0 -229
  128. package/inset/types.d.ts +0 -13
  129. package/inset/types.js +0 -5
  130. package/layout/ApplicationLayout.d.ts +0 -10
  131. package/layout/ApplicationLayout.js +0 -231
  132. package/layout/ApplicationLayout.stories.tsx +0 -171
  133. package/layout/Icons.js +0 -55
  134. package/layout/types.d.ts +0 -57
  135. package/layout/types.js +0 -5
  136. package/link/Link.d.ts +0 -3
  137. package/link/Link.js +0 -153
  138. package/link/Link.stories.tsx +0 -151
  139. package/link/types.d.ts +0 -70
  140. package/link/types.js +0 -5
  141. package/list/List.d.ts +0 -4
  142. package/list/List.js +0 -47
  143. package/list/List.stories.tsx +0 -95
  144. package/list/types.d.ts +0 -7
  145. package/list/types.js +0 -5
  146. package/main.d.ts +0 -51
  147. package/main.js +0 -419
  148. package/number-input/NumberInput.d.ts +0 -4
  149. package/number-input/NumberInput.js +0 -83
  150. package/number-input/NumberInput.stories.tsx +0 -115
  151. package/number-input/NumberInputContext.d.ts +0 -4
  152. package/number-input/NumberInputContext.js +0 -19
  153. package/number-input/numberInputContextTypes.d.ts +0 -19
  154. package/number-input/numberInputContextTypes.js +0 -5
  155. package/number-input/types.d.ts +0 -117
  156. package/number-input/types.js +0 -5
  157. package/paginator/Icons.js +0 -66
  158. package/paginator/Paginator.d.ts +0 -4
  159. package/paginator/Paginator.js +0 -192
  160. package/paginator/Paginator.stories.tsx +0 -63
  161. package/paginator/types.d.ts +0 -38
  162. package/paginator/types.js +0 -5
  163. package/password-input/PasswordInput.d.ts +0 -4
  164. package/password-input/PasswordInput.js +0 -163
  165. package/password-input/PasswordInput.stories.tsx +0 -131
  166. package/password-input/types.d.ts +0 -107
  167. package/password-input/types.js +0 -5
  168. package/progress-bar/ProgressBar.d.ts +0 -4
  169. package/progress-bar/ProgressBar.js +0 -170
  170. package/progress-bar/ProgressBar.stories.jsx +0 -58
  171. package/progress-bar/types.d.ts +0 -37
  172. package/progress-bar/types.js +0 -5
  173. package/radio/Radio.d.ts +0 -4
  174. package/radio/Radio.js +0 -174
  175. package/radio/Radio.stories.tsx +0 -192
  176. package/radio/types.d.ts +0 -54
  177. package/radio/types.js +0 -5
  178. package/radio-group/Radio.d.ts +0 -4
  179. package/radio-group/Radio.js +0 -140
  180. package/radio-group/RadioGroup.d.ts +0 -4
  181. package/radio-group/RadioGroup.js +0 -273
  182. package/radio-group/RadioGroup.stories.tsx +0 -79
  183. package/radio-group/RadioGroup.test.js +0 -248
  184. package/radio-group/types.d.ts +0 -36
  185. package/radio-group/types.js +0 -5
  186. package/resultsetTable/ResultsetTable.d.ts +0 -4
  187. package/resultsetTable/ResultsetTable.js +0 -254
  188. package/resultsetTable/ResultsetTable.stories.tsx +0 -275
  189. package/resultsetTable/types.d.ts +0 -67
  190. package/resultsetTable/types.js +0 -5
  191. package/row/Row.d.ts +0 -3
  192. package/row/Row.js +0 -127
  193. package/row/Row.stories.tsx +0 -237
  194. package/row/types.d.ts +0 -10
  195. package/row/types.js +0 -5
  196. package/select/Select.d.ts +0 -4
  197. package/select/Select.js +0 -869
  198. package/select/Select.stories.tsx +0 -572
  199. package/select/types.d.ts +0 -170
  200. package/select/types.js +0 -5
  201. package/sidenav/Sidenav.d.ts +0 -9
  202. package/sidenav/Sidenav.js +0 -136
  203. package/sidenav/Sidenav.stories.tsx +0 -182
  204. package/sidenav/types.d.ts +0 -50
  205. package/sidenav/types.js +0 -5
  206. package/slider/Slider.d.ts +0 -4
  207. package/slider/Slider.js +0 -317
  208. package/slider/Slider.stories.tsx +0 -177
  209. package/slider/types.d.ts +0 -78
  210. package/slider/types.js +0 -5
  211. package/spinner/Spinner.d.ts +0 -4
  212. package/spinner/Spinner.js +0 -250
  213. package/spinner/Spinner.stories.jsx +0 -103
  214. package/spinner/types.d.ts +0 -32
  215. package/spinner/types.js +0 -5
  216. package/stack/Stack.d.ts +0 -3
  217. package/stack/Stack.js +0 -97
  218. package/stack/Stack.stories.tsx +0 -164
  219. package/stack/types.d.ts +0 -9
  220. package/stack/types.js +0 -5
  221. package/switch/Switch.d.ts +0 -4
  222. package/switch/Switch.js +0 -179
  223. package/switch/Switch.stories.tsx +0 -160
  224. package/switch/types.d.ts +0 -58
  225. package/switch/types.js +0 -5
  226. package/table/Table.d.ts +0 -4
  227. package/table/Table.js +0 -118
  228. package/table/Table.stories.jsx +0 -277
  229. package/table/types.d.ts +0 -21
  230. package/table/types.js +0 -5
  231. package/tabs/Tabs.d.ts +0 -4
  232. package/tabs/Tabs.js +0 -213
  233. package/tabs/Tabs.stories.tsx +0 -120
  234. package/tabs/types.d.ts +0 -78
  235. package/tabs/types.js +0 -5
  236. package/tag/Tag.d.ts +0 -4
  237. package/tag/Tag.js +0 -188
  238. package/tag/Tag.stories.tsx +0 -138
  239. package/tag/types.d.ts +0 -69
  240. package/tag/types.js +0 -5
  241. package/text/Text.d.ts +0 -7
  242. package/text/Text.js +0 -30
  243. package/text/Text.stories.tsx +0 -19
  244. package/text-input/TextInput.d.ts +0 -4
  245. package/text-input/TextInput.js +0 -796
  246. package/text-input/TextInput.stories.tsx +0 -456
  247. package/text-input/types.d.ts +0 -159
  248. package/text-input/types.js +0 -5
  249. package/textarea/Textarea.d.ts +0 -4
  250. package/textarea/Textarea.js +0 -286
  251. package/textarea/Textarea.stories.jsx +0 -136
  252. package/textarea/types.d.ts +0 -130
  253. package/textarea/types.js +0 -5
  254. package/toggle-group/ToggleGroup.d.ts +0 -4
  255. package/toggle-group/ToggleGroup.js +0 -214
  256. package/toggle-group/ToggleGroup.stories.tsx +0 -173
  257. package/toggle-group/types.d.ts +0 -97
  258. package/toggle-group/types.js +0 -5
  259. package/upload/Upload.js +0 -201
  260. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  261. package/upload/buttons-upload/Icons.js +0 -40
  262. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  263. package/upload/dragAndDropArea/Icons.js +0 -39
  264. package/upload/file-upload/FileToUpload.js +0 -115
  265. package/upload/file-upload/Icons.js +0 -66
  266. package/upload/files-upload/FilesToUpload.js +0 -109
  267. package/upload/index.d.ts +0 -15
  268. package/upload/transaction/Icons.js +0 -160
  269. package/upload/transaction/Transaction.js +0 -104
  270. package/upload/transactions/Transactions.js +0 -94
  271. package/useTheme.d.ts +0 -2
  272. package/useTheme.js +0 -22
  273. package/wizard/Wizard.d.ts +0 -4
  274. package/wizard/Wizard.js +0 -281
  275. package/wizard/Wizard.stories.tsx +0 -224
  276. package/wizard/types.d.ts +0 -60
  277. package/wizard/types.js +0 -5
@@ -1,254 +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
- isSortable: column.isSortable
190
- }, /*#__PURE__*/_react["default"].createElement(TitleDiv, {
191
- isSortable: column.isSortable
192
- }, column.displayValue), column.isSortable && /*#__PURE__*/_react["default"].createElement(SortIcon, null, getIconForSortableColumn(index))));
193
- }))), /*#__PURE__*/_react["default"].createElement(TableRowGroup, null, filteredResultset.map(function (cells, index) {
194
- return /*#__PURE__*/_react["default"].createElement("tr", {
195
- key: "resultSetTableCell_".concat(index)
196
- }, cells.map(function (cellContent, index) {
197
- return /*#__PURE__*/_react["default"].createElement("td", {
198
- key: "resultSetTableCellContent_".concat(index)
199
- }, cellContent.displayValue);
200
- }));
201
- })))), /*#__PURE__*/_react["default"].createElement(PaginatorContainer, null, /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
202
- totalItems: rows.length,
203
- itemsPerPage: itemsPerPage,
204
- itemsPerPageOptions: itemsPerPageOptions,
205
- itemsPerPageFunction: itemsPerPageFunction,
206
- currentPage: page,
207
- showGoToPage: showGoToPage,
208
- onPageChange: goToPage,
209
- tabIndex: tabIndex
210
- }))));
211
- };
212
-
213
- var TableContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n & table {\n table-layout: auto;\n }\n"])));
214
-
215
- var PaginatorContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])([""])));
216
-
217
- 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) {
218
- return props.theme.rowHeight || "70px";
219
- });
220
-
221
- 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) {
222
- return props.theme.sortIconColor;
223
- });
224
-
225
- var TitleDiv = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: ", ";\n"])), function (props) {
226
- return props.isSortable && "pointer" || "default";
227
- });
228
-
229
- var TableHeader = _styledComponents["default"].th(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])([""])));
230
-
231
- var HeaderContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n width: fit-content;\n :focus {\n ", "\n }\n"])), function (props) {
232
- return props.theme.headerTextAlign === "center" ? "center" : props.theme.headerTextAlign === "right" ? "flex-end" : "flex-start";
233
- }, function (props) {
234
- return props.isSortable && "outline: #0095ff solid 2px; \n outline-offset: 4px;";
235
- });
236
-
237
- var HeaderRow = _styledComponents["default"].thead(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n height: 60px;\n"])));
238
-
239
- 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) {
240
- return props.theme.fontSizeBase;
241
- }, function (props) {
242
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
243
- }, function (props) {
244
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
245
- }, function (props) {
246
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
247
- }, function (props) {
248
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
249
- }, function (props) {
250
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
251
- });
252
-
253
- var _default = DxcResultsetTable;
254
- exports["default"] = _default;
@@ -1,275 +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
- <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24">
15
- <path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z" />
16
- <path d="M0 0h24v24H0z" fill="none" />
17
- </svg>
18
- );
19
-
20
- const columns = [{ displayValue: "Id" }, { displayValue: "Name" }, { displayValue: "City" }];
21
-
22
- const rows = [
23
- [{ displayValue: "001" }, { displayValue: "Peter" }, { displayValue: "Miami" }],
24
- [{ displayValue: "002" }, { displayValue: "Louis" }, { displayValue: "London" }],
25
- [{ displayValue: "003" }, { displayValue: "Lana" }, { displayValue: "Amsterdam" }],
26
- [{ displayValue: "004" }, { displayValue: "Rick" }, { displayValue: "London" }],
27
- [{ displayValue: "005" }, { displayValue: "Mark" }, { displayValue: "Miami" }],
28
- [{ displayValue: "006" }, { displayValue: "Cris" }, { displayValue: "Paris" }],
29
- ];
30
-
31
- const rowsIcon = [
32
- [
33
- { displayValue: "001", sortValue: "001" },
34
- { displayValue: "Peter" },
35
- { displayValue: <DxcButton icon={deleteIcon} /> },
36
- ],
37
- [{ displayValue: "002", sortValue: "002" }, { displayValue: "Louis" }, { displayValue: "" }],
38
- [
39
- { displayValue: "003", sortValue: "003" },
40
- { displayValue: "Mark" },
41
- { displayValue: <DxcButton icon={deleteIcon} /> },
42
- ],
43
- ];
44
-
45
- const columnsSortable = [
46
- { displayValue: "Id", isSortable: true },
47
- { displayValue: "Name", isSortable: true },
48
- { displayValue: "City", isSortable: false },
49
- ];
50
-
51
- const rowsSortable = [
52
- [
53
- { displayValue: "001", sortValue: "001" },
54
- { displayValue: "Peter", sortValue: "Peter" },
55
- { displayValue: "Miami", sortValue: "Miami" },
56
- ],
57
- [
58
- { displayValue: "002", sortValue: "002" },
59
- { displayValue: "Louis", sortValue: "Louis" },
60
- { displayValue: "London", sortValue: "London" },
61
- ],
62
- [
63
- { displayValue: "003", sortValue: "003" },
64
- { displayValue: "Aida", sortValue: "Aida" },
65
- { displayValue: "Wroclaw", sortValue: "Wroclaw" },
66
- ],
67
- [
68
- { displayValue: "004", sortValue: "004" },
69
- { displayValue: "Lana", sortValue: "Lana" },
70
- { displayValue: "Amsterdam", sortValue: "Amsterdam" },
71
- ],
72
- ];
73
-
74
- const longColumns = [
75
- { displayValue: "Column1" },
76
- { displayValue: "Column2" },
77
- { displayValue: "Column3" },
78
- { displayValue: "Column4" },
79
- { displayValue: "Column5" },
80
- { displayValue: "Column6" },
81
- { displayValue: "Column7" },
82
- { displayValue: "Column8" },
83
- { displayValue: "Column9" },
84
- { displayValue: "Column10" },
85
- { displayValue: "Column11" },
86
- { displayValue: "Column12" },
87
- { displayValue: "Column13" },
88
- { displayValue: "Column14" },
89
- { displayValue: "Column15" },
90
- { displayValue: "Column16" },
91
- { displayValue: "Column17" },
92
- { displayValue: "Column18" },
93
- { displayValue: "Column19" },
94
- { displayValue: "Column20" },
95
- ];
96
-
97
- const longRows = [
98
- [
99
- { displayValue: "001", sortValue: "001" },
100
- { displayValue: "Peter", sortValue: "Peter" },
101
- { displayValue: "Miami", sortValue: "Miami" },
102
- { displayValue: "001", sortValue: "001" },
103
- { displayValue: "Peter", sortValue: "Peter" },
104
- { displayValue: "Miami", sortValue: "Miami" },
105
- { displayValue: "Miami", sortValue: "Miami" },
106
- { displayValue: "001", sortValue: "001" },
107
- { displayValue: "Peter", sortValue: "Peter" },
108
- { displayValue: "Miami", sortValue: "Miami" },
109
- { displayValue: "002", sortValue: "002" },
110
- { displayValue: "Louis", sortValue: "Louis" },
111
- { displayValue: "London", sortValue: "London" },
112
- { displayValue: "002", sortValue: "002" },
113
- { displayValue: "Louis", sortValue: "Louis" },
114
- { displayValue: "London", sortValue: "London" },
115
- { displayValue: "002", sortValue: "002" },
116
- { displayValue: "Louis", sortValue: "Louis" },
117
- { displayValue: "London", sortValue: "London" },
118
- { displayValue: "London", sortValue: "London" },
119
- ],
120
- [
121
- { displayValue: "002", sortValue: "002" },
122
- { displayValue: "Louis", sortValue: "Louis" },
123
- { displayValue: "London", sortValue: "London" },
124
- { displayValue: "002", sortValue: "002" },
125
- { displayValue: "Louis", sortValue: "Louis" },
126
- { displayValue: "London", sortValue: "London" },
127
- { displayValue: "002", sortValue: "002" },
128
- { displayValue: "Louis", sortValue: "Louis" },
129
- { displayValue: "London", sortValue: "London" },
130
- { displayValue: "London", sortValue: "London" },
131
- { displayValue: "002", sortValue: "002" },
132
- { displayValue: "Louis", sortValue: "Louis" },
133
- { displayValue: "London", sortValue: "London" },
134
- { displayValue: "002", sortValue: "002" },
135
- { displayValue: "Louis", sortValue: "Louis" },
136
- { displayValue: "London", sortValue: "London" },
137
- { displayValue: "002", sortValue: "002" },
138
- { displayValue: "Louis", sortValue: "Louis" },
139
- { displayValue: "London", sortValue: "London" },
140
- { displayValue: "London", sortValue: "London" },
141
- ],
142
- [
143
- { displayValue: "002", sortValue: "002" },
144
- { displayValue: "Louis", sortValue: "Louis" },
145
- { displayValue: "London", sortValue: "London" },
146
- { displayValue: "002", sortValue: "002" },
147
- { displayValue: "Louis", sortValue: "Louis" },
148
- { displayValue: "London", sortValue: "London" },
149
- { displayValue: "002", sortValue: "002" },
150
- { displayValue: "Louis", sortValue: "Louis" },
151
- { displayValue: "London", sortValue: "London" },
152
- { displayValue: "London", sortValue: "London" },
153
- { displayValue: "002", sortValue: "002" },
154
- { displayValue: "Louis", sortValue: "Louis" },
155
- { displayValue: "London", sortValue: "London" },
156
- { displayValue: "002", sortValue: "002" },
157
- { displayValue: "Louis", sortValue: "Louis" },
158
- { displayValue: "London", sortValue: "London" },
159
- { displayValue: "002", sortValue: "002" },
160
- { displayValue: "Louis", sortValue: "Louis" },
161
- { displayValue: "London", sortValue: "London" },
162
- { displayValue: "London", sortValue: "London" },
163
- ],
164
- ];
165
-
166
- export const Chromatic = () => (
167
- <>
168
- <ExampleContainer>
169
- <Title title="Sortable table" theme="light" level={4} />
170
- <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
171
- </ExampleContainer>
172
- <ExampleContainer>
173
- <Title title="With action" theme="light" level={4} />
174
- <DxcResultsetTable columns={columns} rows={rowsIcon}></DxcResultsetTable>
175
- </ExampleContainer>
176
- <ExampleContainer>
177
- <Title title="With items per page option" theme="light" level={4} />
178
- <DxcResultsetTable
179
- columns={columns}
180
- rows={rows}
181
- itemsPerPage={2}
182
- itemsPerPageOptions={[2, 3]}
183
- ></DxcResultsetTable>
184
- </ExampleContainer>
185
- <ExampleContainer>
186
- <Title title="Scroll resultset table" theme="light" level={4} />
187
- <DxcResultsetTable columns={longColumns} rows={longRows}></DxcResultsetTable>
188
- </ExampleContainer>
189
- <Title title="Margins" theme="light" level={2} />
190
- <ExampleContainer>
191
- <Title title="Xxsmall" theme="light" level={4} />
192
- <DxcResultsetTable columns={columns} rows={rows} margin={"xxsmall"}></DxcResultsetTable>
193
- </ExampleContainer>
194
- <ExampleContainer>
195
- <Title title="Xsmall" theme="light" level={4} />
196
- <DxcResultsetTable columns={columns} rows={rows} margin={"xsmall"}></DxcResultsetTable>
197
- </ExampleContainer>
198
- <ExampleContainer>
199
- <Title title="Small" theme="light" level={4} />
200
- <DxcResultsetTable columns={columns} rows={rows} margin={"small"}></DxcResultsetTable>
201
- </ExampleContainer>
202
- <ExampleContainer>
203
- <Title title="Medium" theme="light" level={4} />
204
- <DxcResultsetTable columns={columns} rows={rows} margin={"medium"}></DxcResultsetTable>
205
- </ExampleContainer>
206
- <ExampleContainer>
207
- <Title title="Large" theme="light" level={4} />
208
- <DxcResultsetTable columns={columns} rows={rows} margin={"large"}></DxcResultsetTable>
209
- </ExampleContainer>
210
- <ExampleContainer>
211
- <Title title="Xlarge" theme="light" level={4} />
212
- <DxcResultsetTable columns={columns} rows={rows} margin={"xlarge"}></DxcResultsetTable>
213
- </ExampleContainer>
214
- <ExampleContainer>
215
- <Title title="Xxlarge" theme="light" level={4} />
216
- <DxcResultsetTable columns={columns} rows={rows} margin={"xxlarge"}></DxcResultsetTable>
217
- <hr />
218
- </ExampleContainer>
219
- </>
220
- );
221
-
222
- const ResultsetTableAsc = () => (
223
- <ExampleContainer>
224
- <Title title="Ascendant sorting" theme="light" level={4} />
225
- <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
226
- </ExampleContainer>
227
- );
228
-
229
- export const AscendentSorting = ResultsetTableAsc.bind({});
230
- AscendentSorting.play = async ({ canvasElement }) => {
231
- const canvas = within(canvasElement);
232
- await userEvent.click(canvas.queryByText("Name"));
233
- };
234
-
235
- const ResultsetTableDesc = () => (
236
- <ExampleContainer>
237
- <Title title="Descendant sorting" theme="light" level={4} />
238
- <DxcResultsetTable columns={columnsSortable} rows={rowsSortable}></DxcResultsetTable>
239
- </ExampleContainer>
240
- );
241
-
242
- export const DescendantSorting = ResultsetTableDesc.bind({});
243
- DescendantSorting.play = async ({ canvasElement }) => {
244
- const canvas = within(canvasElement);
245
- await userEvent.click(canvas.queryByText("Name"));
246
- await userEvent.click(canvas.queryByText("Name"));
247
- };
248
-
249
- const ResultsetTableMiddle = () => (
250
- <ExampleContainer>
251
- <Title title="Middle page" theme="light" level={4} />
252
- <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2}></DxcResultsetTable>
253
- </ExampleContainer>
254
- );
255
-
256
- export const MiddlePage = ResultsetTableMiddle.bind({});
257
- MiddlePage.play = async ({ canvasElement }) => {
258
- const canvas = within(canvasElement);
259
- const nextButton = canvas.getAllByRole("button")[2];
260
- await userEvent.click(nextButton);
261
- };
262
-
263
- const ResultsetTableLast = () => (
264
- <ExampleContainer>
265
- <Title title="Last page" theme="light" level={4} />
266
- <DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2}></DxcResultsetTable>
267
- </ExampleContainer>
268
- );
269
-
270
- export const LastPage = ResultsetTableLast.bind({});
271
- LastPage.play = async ({ canvasElement }) => {
272
- const canvas = within(canvasElement);
273
- const nextButton = canvas.getAllByRole("button")[3];
274
- await userEvent.click(nextButton);
275
- };
@@ -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,3 +0,0 @@
1
- /// <reference types="react" />
2
- import RowPropsType from "./types";
3
- export default function Row({ gutter, align, justify, wrap, reverse, children, }: RowPropsType): JSX.Element;