@dxc-technology/halstack-react 0.0.0-d4fec82 → 0.0.0-d618bea

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 (191) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -3
  3. package/ThemeContext.d.ts +15 -0
  4. package/ThemeContext.js +5 -8
  5. package/V3Select/V3Select.js +2 -2
  6. package/V3Textarea/V3Textarea.js +2 -2
  7. package/accordion/Accordion.js +2 -2
  8. package/accordion-group/AccordionGroup.js +2 -2
  9. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  10. package/alert/Alert.js +2 -2
  11. package/alert/Alert.stories.tsx +170 -0
  12. package/alert/types.d.ts +1 -1
  13. package/badge/Badge.js +1 -1
  14. package/box/Box.d.ts +4 -0
  15. package/box/Box.js +6 -32
  16. package/box/{Box.stories.jsx → Box.stories.tsx} +0 -0
  17. package/box/types.d.ts +43 -0
  18. package/box/types.js +5 -0
  19. package/button/Button.d.ts +1 -1
  20. package/button/Button.js +9 -12
  21. package/button/Button.stories.tsx +217 -234
  22. package/button/types.d.ts +11 -11
  23. package/card/Card.js +5 -6
  24. package/card/Card.stories.tsx +201 -0
  25. package/card/ice-cream.jpg +0 -0
  26. package/card/types.d.ts +4 -6
  27. package/checkbox/Checkbox.js +2 -2
  28. package/checkbox/Checkbox.stories.tsx +192 -0
  29. package/checkbox/types.d.ts +1 -1
  30. package/chip/Chip.d.ts +4 -0
  31. package/chip/Chip.js +1 -23
  32. package/chip/Chip.stories.tsx +121 -0
  33. package/chip/types.d.ts +53 -0
  34. package/chip/types.js +5 -0
  35. package/common/variables.js +44 -37
  36. package/date/Date.js +1 -1
  37. package/date-input/DateInput.js +4 -7
  38. package/date-input/DateInput.stories.tsx +138 -0
  39. package/dialog/Dialog.d.ts +4 -0
  40. package/dialog/Dialog.js +6 -25
  41. package/dialog/Dialog.stories.tsx +212 -0
  42. package/dialog/types.d.ts +43 -0
  43. package/dialog/types.js +5 -0
  44. package/dropdown/Dropdown.js +1 -1
  45. package/dropdown/types.d.ts +1 -1
  46. package/file-input/FileInput.d.ts +4 -0
  47. package/file-input/FileInput.js +65 -76
  48. package/file-input/FileItem.d.ts +14 -0
  49. package/file-input/FileItem.js +12 -21
  50. package/file-input/types.d.ts +112 -0
  51. package/file-input/types.js +5 -0
  52. package/footer/Footer.d.ts +1 -1
  53. package/footer/Footer.js +8 -8
  54. package/footer/Footer.stories.tsx +151 -0
  55. package/footer/types.d.ts +22 -18
  56. package/header/Header.d.ts +7 -0
  57. package/header/Header.js +28 -30
  58. package/header/Header.stories.tsx +162 -0
  59. package/header/Icons.js +2 -27
  60. package/header/types.d.ts +47 -0
  61. package/header/types.js +5 -0
  62. package/heading/Heading.d.ts +4 -0
  63. package/heading/Heading.js +7 -24
  64. package/heading/Heading.stories.tsx +53 -0
  65. package/heading/types.d.ts +33 -0
  66. package/heading/types.js +5 -0
  67. package/input-text/InputText.js +2 -2
  68. package/layout/ApplicationLayout.d.ts +10 -0
  69. package/layout/ApplicationLayout.js +8 -18
  70. package/layout/ApplicationLayout.stories.tsx +171 -0
  71. package/layout/types.d.ts +57 -0
  72. package/layout/types.js +5 -0
  73. package/link/Link.d.ts +3 -0
  74. package/link/Link.js +4 -26
  75. package/link/Link.stories.tsx +146 -0
  76. package/link/types.d.ts +74 -0
  77. package/link/types.js +5 -0
  78. package/list/List.d.ts +7 -0
  79. package/list/List.js +37 -0
  80. package/list/List.stories.tsx +70 -0
  81. package/main.d.ts +7 -3
  82. package/main.js +34 -2
  83. package/number-input/NumberInput.d.ts +4 -0
  84. package/number-input/NumberInput.js +5 -50
  85. package/number-input/{NumberInput.stories.jsx → NumberInput.stories.tsx} +0 -0
  86. package/number-input/NumberInputContext.d.ts +4 -0
  87. package/number-input/NumberInputContext.js +5 -2
  88. package/number-input/numberInputContextTypes.d.ts +19 -0
  89. package/number-input/numberInputContextTypes.js +5 -0
  90. package/number-input/types.d.ts +117 -0
  91. package/number-input/types.js +5 -0
  92. package/package.json +1 -1
  93. package/paginator/Paginator.js +2 -8
  94. package/paginator/Paginator.stories.tsx +63 -0
  95. package/password-input/PasswordInput.d.ts +4 -0
  96. package/password-input/PasswordInput.js +19 -55
  97. package/password-input/{PasswordInput.stories.jsx → PasswordInput.stories.tsx} +1 -1
  98. package/password-input/types.d.ts +107 -0
  99. package/password-input/types.js +5 -0
  100. package/progress-bar/ProgressBar.js +3 -3
  101. package/progress-bar/ProgressBar.stories.jsx +58 -0
  102. package/radio/Radio.js +2 -2
  103. package/radio/Radio.stories.tsx +192 -0
  104. package/radio/types.d.ts +2 -2
  105. package/resultsetTable/ResultsetTable.d.ts +4 -0
  106. package/resultsetTable/ResultsetTable.js +4 -27
  107. package/resultsetTable/types.d.ts +67 -0
  108. package/resultsetTable/types.js +5 -0
  109. package/row/Row.d.ts +11 -0
  110. package/row/Row.js +124 -0
  111. package/row/Row.stories.tsx +223 -0
  112. package/select/Select.js +15 -17
  113. package/select/Select.stories.tsx +572 -0
  114. package/sidenav/Sidenav.d.ts +9 -0
  115. package/sidenav/Sidenav.js +6 -15
  116. package/sidenav/Sidenav.stories.tsx +165 -0
  117. package/sidenav/types.d.ts +50 -0
  118. package/sidenav/types.js +5 -0
  119. package/slider/Slider.d.ts +1 -1
  120. package/slider/Slider.js +43 -32
  121. package/slider/Slider.stories.tsx +177 -0
  122. package/slider/types.d.ts +2 -7
  123. package/spinner/Spinner.d.ts +4 -0
  124. package/spinner/Spinner.js +8 -25
  125. package/spinner/Spinner.stories.jsx +102 -0
  126. package/spinner/types.d.ts +32 -0
  127. package/spinner/types.js +5 -0
  128. package/stack/Stack.d.ts +10 -0
  129. package/stack/Stack.js +94 -0
  130. package/stack/Stack.stories.tsx +150 -0
  131. package/switch/Switch.js +4 -4
  132. package/switch/Switch.stories.tsx +160 -0
  133. package/table/Table.d.ts +4 -0
  134. package/table/Table.js +3 -3
  135. package/table/Table.stories.jsx +276 -0
  136. package/table/types.d.ts +21 -0
  137. package/table/types.js +5 -0
  138. package/tabs/Tabs.js +4 -2
  139. package/tabs/Tabs.stories.tsx +121 -0
  140. package/tabs/types.d.ts +3 -4
  141. package/tag/Tag.d.ts +4 -0
  142. package/tag/Tag.js +21 -36
  143. package/tag/Tag.stories.tsx +145 -0
  144. package/tag/types.d.ts +60 -0
  145. package/tag/types.js +5 -0
  146. package/text/Text.d.ts +7 -0
  147. package/text/Text.js +30 -0
  148. package/text/Text.stories.tsx +19 -0
  149. package/text-input/TextInput.d.ts +4 -0
  150. package/text-input/TextInput.js +42 -81
  151. package/text-input/TextInput.stories.tsx +456 -0
  152. package/text-input/types.d.ts +159 -0
  153. package/text-input/types.js +5 -0
  154. package/textarea/Textarea.js +29 -32
  155. package/textarea/index.d.ts +18 -8
  156. package/toggle/Toggle.js +1 -1
  157. package/toggle-group/ToggleGroup.d.ts +4 -0
  158. package/toggle-group/ToggleGroup.js +8 -34
  159. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  160. package/toggle-group/types.d.ts +84 -0
  161. package/toggle-group/types.js +5 -0
  162. package/upload/buttons-upload/ButtonsUpload.js +2 -2
  163. package/upload/dragAndDropArea/DragAndDropArea.js +2 -2
  164. package/upload/file-upload/FileToUpload.js +1 -1
  165. package/upload/files-upload/FilesToUpload.js +1 -1
  166. package/upload/transaction/Transaction.js +2 -2
  167. package/upload/transactions/Transactions.js +1 -1
  168. package/useTheme.d.ts +2 -0
  169. package/useTheme.js +1 -1
  170. package/wizard/Wizard.d.ts +4 -0
  171. package/wizard/Wizard.js +13 -53
  172. package/wizard/Wizard.stories.jsx +224 -0
  173. package/wizard/types.d.ts +64 -0
  174. package/wizard/types.js +5 -0
  175. package/box/index.d.ts +0 -25
  176. package/chip/index.d.ts +0 -22
  177. package/dialog/index.d.ts +0 -18
  178. package/file-input/index.d.ts +0 -81
  179. package/header/index.d.ts +0 -25
  180. package/heading/index.d.ts +0 -17
  181. package/link/index.d.ts +0 -23
  182. package/number-input/index.d.ts +0 -113
  183. package/password-input/index.d.ts +0 -94
  184. package/resultsetTable/index.d.ts +0 -19
  185. package/sidenav/index.d.ts +0 -13
  186. package/spinner/index.d.ts +0 -17
  187. package/table/index.d.ts +0 -13
  188. package/tag/index.d.ts +0 -24
  189. package/text-input/index.d.ts +0 -135
  190. package/toggle-group/index.d.ts +0 -21
  191. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,192 @@
1
+ import React from "react";
2
+ import DxcRadio from "./Radio";
3
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import DarkContainer from "../../.storybook/components/DarkSection";
7
+ import { userEvent, within } from "@storybook/testing-library";
8
+
9
+ export default {
10
+ title: "Radio",
11
+ component: DxcRadio,
12
+ };
13
+
14
+ const Radio = () => (
15
+ <>
16
+ <>
17
+ <ExampleContainer>
18
+ <Title title="Default" theme="light" level={4} />
19
+ <DxcRadio label="Radio" />
20
+ </ExampleContainer>
21
+ <ExampleContainer>
22
+ <Title title="Focused" theme="light" level={4} />
23
+ <DxcRadio label="Focused" />
24
+ </ExampleContainer>
25
+ <ExampleContainer>
26
+ <Title title="Checked" theme="light" level={4} />
27
+ <DxcRadio label="Radio" checked />
28
+ </ExampleContainer>
29
+ <ExampleContainer>
30
+ <Title title="Required" theme="light" level={4} />
31
+ <DxcRadio label="Radio" required />
32
+ </ExampleContainer>
33
+ <ExampleContainer>
34
+ <Title title="Disabled and checked" theme="light" level={4} />
35
+ <DxcRadio label="Radio" disabled checked />
36
+ </ExampleContainer>
37
+ <ExampleContainer>
38
+ <Title title="Disabled and required" theme="light" level={4} />
39
+ <DxcRadio label="Radio" disabled required />
40
+ </ExampleContainer>
41
+ <ExampleContainer>
42
+ <Title title="Disabled, required and checked" theme="light" level={4} />
43
+ <DxcRadio label="Radio" disabled required checked />
44
+ </ExampleContainer>
45
+ <ExampleContainer>
46
+ <Title title="Label after" theme="light" level={4} />
47
+ <DxcRadio label="Radio" labelPosition="after" />
48
+ </ExampleContainer>
49
+ <ExampleContainer>
50
+ <Title title="Checked with label after" theme="light" level={4} />
51
+ <DxcRadio label="Radio" checked labelPosition="after" />
52
+ </ExampleContainer>
53
+ <ExampleContainer>
54
+ <Title title="Required with label after" theme="light" level={4} />
55
+ <DxcRadio label="Radio" required labelPosition="after" />
56
+ </ExampleContainer>
57
+ <ExampleContainer>
58
+ <Title title="Disabled and checked with label after" theme="light" level={4} />
59
+ <DxcRadio label="Radio" disabled checked labelPosition="after" />
60
+ </ExampleContainer>
61
+ <ExampleContainer>
62
+ <Title title="Disabled and required with label after" theme="light" level={4} />
63
+ <DxcRadio label="Radio" disabled required labelPosition="after" />
64
+ </ExampleContainer>
65
+ <ExampleContainer>
66
+ <Title title="Disabled, required and checked with label after" theme="light" level={4} />
67
+ <DxcRadio label="Radio" disabled required checked labelPosition="after" />
68
+ </ExampleContainer>
69
+ <ExampleContainer pseudoState="pseudo-hover">
70
+ <Title title="Hovered" theme="light" level={4} />
71
+ <DxcRadio label="Hovered" />
72
+ </ExampleContainer>
73
+ <ExampleContainer pseudoState="pseudo-hover">
74
+ <Title title="Hovered and checked" theme="light" level={4} />
75
+ <DxcRadio label="Hovered" checked />
76
+ </ExampleContainer>
77
+ </>
78
+ <BackgroundColorProvider color="#333333">
79
+ <DarkContainer>
80
+ <>
81
+ <ExampleContainer>
82
+ <Title title="Default" theme="dark" level={4} />
83
+ <DxcRadio label="Radio" />
84
+ </ExampleContainer>
85
+ <ExampleContainer>
86
+ <Title title="Checked" theme="dark" level={4} />
87
+ <DxcRadio label="Radio" checked />
88
+ </ExampleContainer>
89
+ <ExampleContainer>
90
+ <Title title="Required" theme="dark" level={4} />
91
+ <DxcRadio label="Radio" required />
92
+ </ExampleContainer>
93
+ <ExampleContainer>
94
+ <Title title="Disabled and checked" theme="dark" level={4} />
95
+ <DxcRadio label="Radio" disabled checked />
96
+ </ExampleContainer>
97
+ <ExampleContainer>
98
+ <Title title="Disabled and required" theme="dark" level={4} />
99
+ <DxcRadio label="Radio" disabled required />
100
+ </ExampleContainer>
101
+ <ExampleContainer>
102
+ <Title title="Disabled, required and checked" theme="dark" level={4} />
103
+ <DxcRadio label="Radio" disabled required checked />
104
+ </ExampleContainer>
105
+ <ExampleContainer>
106
+ <Title title="Label after" theme="dark" level={4} />
107
+ <DxcRadio label="Radio" labelPosition="after" />
108
+ </ExampleContainer>
109
+ <ExampleContainer>
110
+ <Title title="Checked with label after" theme="dark" level={4} />
111
+ <DxcRadio label="Radio" checked labelPosition="after" />
112
+ </ExampleContainer>
113
+ <ExampleContainer>
114
+ <Title title="Required with label after" theme="dark" level={4} />
115
+ <DxcRadio label="Radio" required labelPosition="after" />
116
+ </ExampleContainer>
117
+ <ExampleContainer>
118
+ <Title title="Disabled and checked with label after" theme="dark" level={4} />
119
+ <DxcRadio label="Radio" disabled checked labelPosition="after" />
120
+ </ExampleContainer>
121
+ <ExampleContainer>
122
+ <Title title="Disabled and required with label after" theme="dark" level={4} />
123
+ <DxcRadio label="Radio" disabled required labelPosition="after" />
124
+ </ExampleContainer>
125
+ <ExampleContainer>
126
+ <Title title="Disabled, required and checked with label after" theme="dark" level={4} />
127
+ <DxcRadio label="Radio" disabled required checked labelPosition="after" />
128
+ </ExampleContainer>
129
+ <ExampleContainer pseudoState="pseudo-hover">
130
+ <Title title="Hovered" theme="dark" level={4} />
131
+ <DxcRadio label="Hovered" />
132
+ </ExampleContainer>
133
+ <ExampleContainer pseudoState="pseudo-hover">
134
+ <Title title="Hovered and checked" theme="dark" level={4} />
135
+ <DxcRadio label="Hovered" checked />
136
+ </ExampleContainer>
137
+ </>
138
+ </DarkContainer>
139
+ </BackgroundColorProvider>
140
+ <Title title="Sizes" theme="light" level={2} />
141
+ <ExampleContainer>
142
+ <DxcRadio label="Small" size="small" />
143
+ </ExampleContainer>
144
+ <ExampleContainer>
145
+ <DxcRadio label="Medium" size="medium" />
146
+ </ExampleContainer>
147
+ <ExampleContainer>
148
+ <DxcRadio label="Large" size="large" />
149
+ </ExampleContainer>
150
+ <ExampleContainer>
151
+ <DxcRadio label="FitContent" size="fitContent" />
152
+ </ExampleContainer>
153
+ <ExampleContainer>
154
+ <DxcRadio label="FillParent" size="fillParent" />
155
+ </ExampleContainer>
156
+ <Title title="Margins" theme="light" level={2} />
157
+ <ExampleContainer>
158
+ <Title title="Xxsmall" theme="light" level={4} />
159
+ <DxcRadio label="Xxsmall" margin={"xxsmall"} />
160
+ </ExampleContainer>
161
+ <ExampleContainer>
162
+ <Title title="Xsmall" theme="light" level={4} />
163
+ <DxcRadio label="Xsmall" margin={"xsmall"} />
164
+ </ExampleContainer>
165
+ <ExampleContainer>
166
+ <Title title="Small" theme="light" level={4} />
167
+ <DxcRadio label="Small" margin={"small"} />
168
+ </ExampleContainer>
169
+ <ExampleContainer>
170
+ <Title title="Medium" theme="light" level={4} />
171
+ <DxcRadio label="Medium" margin={"medium"} />
172
+ </ExampleContainer>
173
+ <ExampleContainer>
174
+ <Title title="Large" theme="light" level={4} />
175
+ <DxcRadio label="Large" margin={"large"} />
176
+ </ExampleContainer>
177
+ <ExampleContainer>
178
+ <Title title="Xlarge" theme="light" level={4} />
179
+ <DxcRadio label="Xlarge" margin={"xlarge"} />
180
+ </ExampleContainer>
181
+ <ExampleContainer>
182
+ <Title title="Xxlarge" theme="light" level={4} />
183
+ <DxcRadio label="Xxlarge" margin={"xxlarge"} />
184
+ </ExampleContainer>
185
+ </>
186
+ );
187
+
188
+ export const Chromatic = Radio.bind({});
189
+ Chromatic.play = async () => {
190
+ await userEvent.tab();
191
+ await userEvent.tab();
192
+ };
package/radio/types.d.ts CHANGED
@@ -42,8 +42,8 @@ declare type Props = {
42
42
  */
43
43
  onClick?: (val: boolean) => void;
44
44
  /**
45
- * Size of the margin to be applied to the component. You can pass an object with 'top',
46
- * 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
45
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
46
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
47
47
  */
48
48
  margin?: Space | Margin;
49
49
  /**
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import ResultsetTablePropsType from "./types";
3
+ declare const DxcResultsetTable: ({ columns, rows, showGoToPage, itemsPerPage, itemsPerPageOptions, itemsPerPageFunction, margin, tabIndex, }: ResultsetTablePropsType) => JSX.Element;
4
+ export default DxcResultsetTable;
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
13
 
16
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
@@ -21,15 +19,13 @@ var _react = _interopRequireWildcard(require("react"));
21
19
 
22
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
21
 
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
22
  var _variables = require("../common/variables.js");
27
23
 
28
24
  var _Table = _interopRequireDefault(require("../table/Table"));
29
25
 
30
26
  var _Paginator = _interopRequireDefault(require("../paginator/Paginator"));
31
27
 
32
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
28
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
33
29
 
34
30
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
35
31
 
@@ -117,6 +113,8 @@ var BothArrows = function BothArrows() {
117
113
  var DxcResultsetTable = function DxcResultsetTable(_ref) {
118
114
  var columns = _ref.columns,
119
115
  rows = _ref.rows,
116
+ _ref$showGoToPage = _ref.showGoToPage,
117
+ showGoToPage = _ref$showGoToPage === void 0 ? true : _ref$showGoToPage,
120
118
  _ref$itemsPerPage = _ref.itemsPerPage,
121
119
  itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
122
120
  itemsPerPageOptions = _ref.itemsPerPageOptions,
@@ -205,7 +203,7 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
205
203
  itemsPerPageOptions: itemsPerPageOptions,
206
204
  itemsPerPageFunction: itemsPerPageFunction,
207
205
  currentPage: page,
208
- showGoToPage: true,
206
+ showGoToPage: showGoToPage,
209
207
  onPageChange: goToPage,
210
208
  tabIndex: tabIndex
211
209
  }))));
@@ -249,26 +247,5 @@ var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObjec
249
247
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
250
248
  });
251
249
 
252
- DxcResultsetTable.propTypes = {
253
- rows: _propTypes["default"].array,
254
- columns: _propTypes["default"].array,
255
- itemsPerPage: _propTypes["default"].number,
256
- itemsPerPageOptions: _propTypes["default"].arrayOf(_propTypes["default"].number),
257
- itemsPerPageFunction: _propTypes["default"].func,
258
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
259
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
260
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
261
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
262
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
263
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
264
- tabIndex: _propTypes["default"].number
265
- };
266
- DxcResultsetTable.defaultProps = {
267
- rows: [],
268
- columns: [],
269
- itemsPerPage: 5,
270
- itemsPerPageOptions: null,
271
- itemsPerPageFunction: null
272
- };
273
250
  var _default = DxcResultsetTable;
274
251
  exports["default"] = _default;
@@ -0,0 +1,67 @@
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;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/row/Row.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ declare type RowProps = {
3
+ gutter?: "none" | "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 {};
package/row/Row.js ADDED
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = Row;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _templateObject;
17
+
18
+ function Row(_ref) {
19
+ var _ref$gutter = _ref.gutter,
20
+ gutter = _ref$gutter === void 0 ? "none" : _ref$gutter,
21
+ align = _ref.align,
22
+ justify = _ref.justify,
23
+ _ref$wrap = _ref.wrap,
24
+ wrap = _ref$wrap === void 0 ? true : _ref$wrap,
25
+ _ref$reverse = _ref.reverse,
26
+ reverse = _ref$reverse === void 0 ? false : _ref$reverse,
27
+ children = _ref.children;
28
+ return /*#__PURE__*/_react["default"].createElement(StyledRow, {
29
+ gutter: gutter,
30
+ align: align,
31
+ justify: justify,
32
+ wrap: wrap,
33
+ reverse: reverse
34
+ }, children);
35
+ }
36
+
37
+ var StyledRow = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n flex-wrap: ", ";\n align-items: ", "};\n justify-content: ", ";\n gap: ", ";\n"])), function (_ref2) {
38
+ var reverse = _ref2.reverse;
39
+ return reverse ? "row-reverse" : "row";
40
+ }, function (_ref3) {
41
+ var wrap = _ref3.wrap;
42
+ return wrap ? "wrap" : "nowrap";
43
+ }, function (_ref4) {
44
+ var align = _ref4.align;
45
+
46
+ switch (align) {
47
+ case "start":
48
+ return "flex-start";
49
+
50
+ case "center":
51
+ return "center";
52
+
53
+ case "end":
54
+ return "flex-end";
55
+
56
+ case "baseline":
57
+ return "baseline";
58
+
59
+ case "stretch":
60
+ return "stretch";
61
+
62
+ default:
63
+ return "initial";
64
+ }
65
+ }, function (_ref5) {
66
+ var justify = _ref5.justify;
67
+
68
+ switch (justify) {
69
+ case "spaceBetween":
70
+ return "space-between";
71
+
72
+ case "spaceAround":
73
+ return "space-around";
74
+
75
+ case "spaceEvenly":
76
+ return "space-evenly";
77
+
78
+ case "start":
79
+ return "flex-start";
80
+
81
+ case "center":
82
+ return "center";
83
+
84
+ case "end":
85
+ return "flex-end";
86
+
87
+ default:
88
+ return "initial";
89
+ }
90
+ }, function (_ref6) {
91
+ var gutter = _ref6.gutter;
92
+
93
+ switch (gutter) {
94
+ case "none":
95
+ return "0";
96
+
97
+ case "xxsmall":
98
+ return "0.125rem";
99
+
100
+ case "xsmall":
101
+ return "0.25rem";
102
+
103
+ case "small":
104
+ return "0.5rem";
105
+
106
+ case "medium":
107
+ return "1rem";
108
+
109
+ case "large":
110
+ return "1.5rem";
111
+
112
+ case "xlarge":
113
+ return "2rem";
114
+
115
+ case "xxlarge":
116
+ return "3rem";
117
+
118
+ case "xxxlarge":
119
+ return "4rem";
120
+
121
+ default:
122
+ return "0";
123
+ }
124
+ });