@dxc-technology/halstack-react 0.0.0-951bb80 → 0.0.0-953f527

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 (276) hide show
  1. package/README.md +46 -0
  2. package/dist/index.d.mts +6496 -0
  3. package/dist/index.d.ts +6496 -0
  4. package/dist/index.js +13619 -0
  5. package/dist/index.mjs +13562 -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 -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.js +0 -59
  31. package/bleed/Bleed.d.ts +0 -3
  32. package/bleed/Bleed.js +0 -84
  33. package/bleed/Bleed.stories.tsx +0 -342
  34. package/bleed/types.d.ts +0 -13
  35. package/bleed/types.js +0 -5
  36. package/box/Box.d.ts +0 -4
  37. package/box/Box.js +0 -126
  38. package/box/Box.stories.tsx +0 -132
  39. package/box/types.d.ts +0 -43
  40. package/box/types.js +0 -5
  41. package/button/Button.d.ts +0 -4
  42. package/button/Button.js +0 -171
  43. package/button/Button.stories.tsx +0 -274
  44. package/button/types.d.ts +0 -53
  45. package/button/types.js +0 -5
  46. package/card/Card.d.ts +0 -4
  47. package/card/Card.js +0 -164
  48. package/card/Card.stories.tsx +0 -201
  49. package/card/ice-cream.jpg +0 -0
  50. package/card/types.d.ts +0 -67
  51. package/card/types.js +0 -5
  52. package/checkbox/Checkbox.d.ts +0 -4
  53. package/checkbox/Checkbox.js +0 -253
  54. package/checkbox/Checkbox.stories.tsx +0 -192
  55. package/checkbox/types.d.ts +0 -60
  56. package/checkbox/types.js +0 -5
  57. package/chip/Chip.d.ts +0 -4
  58. package/chip/Chip.js +0 -161
  59. package/chip/Chip.stories.tsx +0 -119
  60. package/chip/types.d.ts +0 -45
  61. package/chip/types.js +0 -5
  62. package/common/OpenSans.css +0 -81
  63. package/common/RequiredComponent.js +0 -32
  64. package/common/fonts/OpenSans-Bold.ttf +0 -0
  65. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  66. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  67. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  68. package/common/fonts/OpenSans-Italic.ttf +0 -0
  69. package/common/fonts/OpenSans-Light.ttf +0 -0
  70. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  71. package/common/fonts/OpenSans-Regular.ttf +0 -0
  72. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  73. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  74. package/common/utils.js +0 -22
  75. package/common/variables.js +0 -1611
  76. package/date/Date.js +0 -373
  77. package/date/index.d.ts +0 -27
  78. package/date-input/DateInput.d.ts +0 -4
  79. package/date-input/DateInput.js +0 -358
  80. package/date-input/DateInput.stories.tsx +0 -138
  81. package/date-input/types.d.ts +0 -100
  82. package/date-input/types.js +0 -5
  83. package/dialog/Dialog.d.ts +0 -4
  84. package/dialog/Dialog.js +0 -166
  85. package/dialog/Dialog.stories.tsx +0 -212
  86. package/dialog/types.d.ts +0 -43
  87. package/dialog/types.js +0 -5
  88. package/dropdown/Dropdown.d.ts +0 -4
  89. package/dropdown/Dropdown.js +0 -395
  90. package/dropdown/Dropdown.stories.tsx +0 -249
  91. package/dropdown/types.d.ts +0 -80
  92. package/dropdown/types.js +0 -5
  93. package/file-input/FileInput.d.ts +0 -4
  94. package/file-input/FileInput.js +0 -590
  95. package/file-input/FileInput.stories.tsx +0 -507
  96. package/file-input/FileItem.d.ts +0 -14
  97. package/file-input/FileItem.js +0 -184
  98. package/file-input/types.d.ts +0 -112
  99. package/file-input/types.js +0 -5
  100. package/footer/Footer.d.ts +0 -4
  101. package/footer/Footer.js +0 -258
  102. package/footer/Footer.stories.tsx +0 -130
  103. package/footer/Icons.d.ts +0 -2
  104. package/footer/Icons.js +0 -77
  105. package/footer/types.d.ts +0 -65
  106. package/footer/types.js +0 -5
  107. package/header/Header.d.ts +0 -7
  108. package/header/Header.js +0 -324
  109. package/header/Header.stories.tsx +0 -162
  110. package/header/Icons.d.ts +0 -2
  111. package/header/Icons.js +0 -34
  112. package/header/types.d.ts +0 -47
  113. package/header/types.js +0 -5
  114. package/heading/Heading.d.ts +0 -4
  115. package/heading/Heading.js +0 -159
  116. package/heading/Heading.stories.tsx +0 -54
  117. package/heading/types.d.ts +0 -33
  118. package/heading/types.js +0 -5
  119. package/input-text/Icons.js +0 -22
  120. package/input-text/InputText.js +0 -611
  121. package/input-text/index.d.ts +0 -36
  122. package/inset/Inset.d.ts +0 -3
  123. package/inset/Inset.js +0 -84
  124. package/inset/Inset.stories.tsx +0 -229
  125. package/inset/types.d.ts +0 -13
  126. package/inset/types.js +0 -5
  127. package/layout/ApplicationLayout.d.ts +0 -10
  128. package/layout/ApplicationLayout.js +0 -225
  129. package/layout/ApplicationLayout.stories.tsx +0 -171
  130. package/layout/Icons.js +0 -55
  131. package/layout/types.d.ts +0 -57
  132. package/layout/types.js +0 -5
  133. package/link/Link.d.ts +0 -3
  134. package/link/Link.js +0 -153
  135. package/link/Link.stories.tsx +0 -151
  136. package/link/types.d.ts +0 -70
  137. package/link/types.js +0 -5
  138. package/list/List.d.ts +0 -4
  139. package/list/List.js +0 -47
  140. package/list/List.stories.tsx +0 -95
  141. package/list/types.d.ts +0 -7
  142. package/list/types.js +0 -5
  143. package/main.d.ts +0 -49
  144. package/main.js +0 -403
  145. package/number-input/NumberInput.d.ts +0 -4
  146. package/number-input/NumberInput.js +0 -83
  147. package/number-input/NumberInput.stories.tsx +0 -115
  148. package/number-input/NumberInputContext.d.ts +0 -4
  149. package/number-input/NumberInputContext.js +0 -19
  150. package/number-input/numberInputContextTypes.d.ts +0 -19
  151. package/number-input/numberInputContextTypes.js +0 -5
  152. package/number-input/types.d.ts +0 -117
  153. package/number-input/types.js +0 -5
  154. package/paginator/Icons.js +0 -66
  155. package/paginator/Paginator.d.ts +0 -4
  156. package/paginator/Paginator.js +0 -192
  157. package/paginator/Paginator.stories.tsx +0 -63
  158. package/paginator/types.d.ts +0 -38
  159. package/paginator/types.js +0 -5
  160. package/password-input/PasswordInput.d.ts +0 -4
  161. package/password-input/PasswordInput.js +0 -163
  162. package/password-input/PasswordInput.stories.tsx +0 -131
  163. package/password-input/types.d.ts +0 -107
  164. package/password-input/types.js +0 -5
  165. package/progress-bar/ProgressBar.d.ts +0 -4
  166. package/progress-bar/ProgressBar.js +0 -170
  167. package/progress-bar/ProgressBar.stories.jsx +0 -58
  168. package/progress-bar/types.d.ts +0 -37
  169. package/progress-bar/types.js +0 -5
  170. package/radio/Radio.d.ts +0 -4
  171. package/radio/Radio.js +0 -174
  172. package/radio/Radio.stories.tsx +0 -192
  173. package/radio/types.d.ts +0 -54
  174. package/radio/types.js +0 -5
  175. package/radio-group/Radio.d.ts +0 -4
  176. package/radio-group/Radio.js +0 -140
  177. package/radio-group/RadioGroup.d.ts +0 -4
  178. package/radio-group/RadioGroup.js +0 -273
  179. package/radio-group/RadioGroup.stories.tsx +0 -79
  180. package/radio-group/RadioGroup.test.js +0 -248
  181. package/radio-group/types.d.ts +0 -36
  182. package/radio-group/types.js +0 -5
  183. package/resultsetTable/ResultsetTable.d.ts +0 -4
  184. package/resultsetTable/ResultsetTable.js +0 -251
  185. package/resultsetTable/ResultsetTable.stories.tsx +0 -275
  186. package/resultsetTable/types.d.ts +0 -67
  187. package/resultsetTable/types.js +0 -5
  188. package/row/Row.d.ts +0 -3
  189. package/row/Row.js +0 -127
  190. package/row/Row.stories.tsx +0 -237
  191. package/row/types.d.ts +0 -10
  192. package/row/types.js +0 -5
  193. package/select/Select.d.ts +0 -4
  194. package/select/Select.js +0 -863
  195. package/select/Select.stories.tsx +0 -572
  196. package/select/types.d.ts +0 -170
  197. package/select/types.js +0 -5
  198. package/sidenav/Sidenav.d.ts +0 -9
  199. package/sidenav/Sidenav.js +0 -136
  200. package/sidenav/Sidenav.stories.tsx +0 -182
  201. package/sidenav/types.d.ts +0 -50
  202. package/sidenav/types.js +0 -5
  203. package/slider/Slider.d.ts +0 -4
  204. package/slider/Slider.js +0 -317
  205. package/slider/Slider.stories.tsx +0 -177
  206. package/slider/types.d.ts +0 -78
  207. package/slider/types.js +0 -5
  208. package/spinner/Spinner.d.ts +0 -4
  209. package/spinner/Spinner.js +0 -250
  210. package/spinner/Spinner.stories.jsx +0 -103
  211. package/spinner/types.d.ts +0 -32
  212. package/spinner/types.js +0 -5
  213. package/stack/Stack.d.ts +0 -3
  214. package/stack/Stack.js +0 -97
  215. package/stack/Stack.stories.tsx +0 -164
  216. package/stack/types.d.ts +0 -9
  217. package/stack/types.js +0 -5
  218. package/switch/Switch.d.ts +0 -4
  219. package/switch/Switch.js +0 -179
  220. package/switch/Switch.stories.tsx +0 -160
  221. package/switch/types.d.ts +0 -58
  222. package/switch/types.js +0 -5
  223. package/table/Table.d.ts +0 -4
  224. package/table/Table.js +0 -118
  225. package/table/Table.stories.jsx +0 -277
  226. package/table/types.d.ts +0 -21
  227. package/table/types.js +0 -5
  228. package/tabs/Tabs.d.ts +0 -4
  229. package/tabs/Tabs.js +0 -213
  230. package/tabs/Tabs.stories.tsx +0 -120
  231. package/tabs/types.d.ts +0 -78
  232. package/tabs/types.js +0 -5
  233. package/tag/Tag.d.ts +0 -4
  234. package/tag/Tag.js +0 -188
  235. package/tag/Tag.stories.tsx +0 -138
  236. package/tag/types.d.ts +0 -69
  237. package/tag/types.js +0 -5
  238. package/text/Text.d.ts +0 -7
  239. package/text/Text.js +0 -30
  240. package/text/Text.stories.tsx +0 -19
  241. package/text-input/TextInput.d.ts +0 -4
  242. package/text-input/TextInput.js +0 -794
  243. package/text-input/TextInput.stories.tsx +0 -456
  244. package/text-input/types.d.ts +0 -159
  245. package/text-input/types.js +0 -5
  246. package/textarea/Textarea.d.ts +0 -4
  247. package/textarea/Textarea.js +0 -284
  248. package/textarea/Textarea.stories.jsx +0 -136
  249. package/textarea/types.d.ts +0 -130
  250. package/textarea/types.js +0 -5
  251. package/toggle/Toggle.js +0 -186
  252. package/toggle/index.d.ts +0 -21
  253. package/toggle-group/ToggleGroup.d.ts +0 -4
  254. package/toggle-group/ToggleGroup.js +0 -214
  255. package/toggle-group/ToggleGroup.stories.tsx +0 -173
  256. package/toggle-group/types.d.ts +0 -97
  257. package/toggle-group/types.js +0 -5
  258. package/upload/Upload.js +0 -201
  259. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  260. package/upload/buttons-upload/Icons.js +0 -40
  261. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  262. package/upload/dragAndDropArea/Icons.js +0 -39
  263. package/upload/file-upload/FileToUpload.js +0 -115
  264. package/upload/file-upload/Icons.js +0 -66
  265. package/upload/files-upload/FilesToUpload.js +0 -109
  266. package/upload/index.d.ts +0 -15
  267. package/upload/transaction/Icons.js +0 -160
  268. package/upload/transaction/Transaction.js +0 -104
  269. package/upload/transactions/Transactions.js +0 -94
  270. package/useTheme.d.ts +0 -2
  271. package/useTheme.js +0 -22
  272. package/wizard/Wizard.d.ts +0 -4
  273. package/wizard/Wizard.js +0 -281
  274. package/wizard/Wizard.stories.tsx +0 -224
  275. package/wizard/types.d.ts +0 -60
  276. 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,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;