@dxc-technology/halstack-react 0.0.0-a678636 → 0.0.0-a94d337
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.
- package/babel.config.js +6 -2
- package/dist/BackgroundColorContext.js +46 -0
- package/dist/ThemeContext.js +235 -2
- package/dist/V3Textarea/V3Textarea.js +264 -0
- package/dist/accordion/Accordion.js +170 -65
- package/dist/accordion-group/AccordionGroup.js +186 -0
- package/dist/alert/Alert.js +183 -84
- package/dist/alert/index.d.ts +51 -0
- package/dist/badge/Badge.js +63 -0
- package/dist/box/Box.js +31 -23
- package/dist/button/Button.js +83 -26
- package/dist/card/Card.js +72 -35
- package/dist/checkbox/Checkbox.js +98 -38
- package/dist/chip/Chip.js +128 -36
- package/dist/common/RequiredComponent.js +2 -8
- package/dist/common/utils.js +2 -22
- package/dist/common/variables.js +1439 -304
- package/dist/date/Date.js +80 -57
- package/dist/date-input/DateInput.js +400 -0
- package/dist/date-input/index.d.ts +95 -0
- package/dist/dialog/Dialog.js +58 -37
- package/dist/dropdown/Dropdown.js +199 -71
- package/dist/file-input/FileInput.js +644 -0
- package/dist/file-input/FileItem.js +280 -0
- package/dist/file-input/index.d.ts +81 -0
- package/dist/footer/Footer.js +121 -46
- package/dist/footer/Icons.js +77 -0
- package/dist/header/Header.js +171 -97
- package/dist/header/Icons.js +59 -0
- package/dist/heading/Heading.js +81 -16
- package/dist/input-text/Icons.js +22 -0
- package/dist/input-text/InputText.js +292 -106
- package/dist/layout/ApplicationLayout.js +327 -0
- package/dist/layout/Icons.js +55 -0
- package/dist/link/Link.js +136 -35
- package/dist/main.d.ts +8 -0
- package/dist/main.js +103 -7
- package/dist/new-select/NewSelect.js +836 -0
- package/dist/new-select/index.d.ts +53 -0
- package/dist/number-input/NumberInput.js +136 -0
- package/dist/number-input/NumberInputContext.js +16 -0
- package/dist/number-input/index.d.ts +113 -0
- package/dist/paginator/Paginator.js +149 -56
- package/dist/password-input/PasswordInput.js +198 -0
- package/dist/password-input/index.d.ts +94 -0
- package/dist/progress-bar/ProgressBar.js +95 -38
- package/dist/radio/Radio.js +31 -17
- package/dist/resultsetTable/ResultsetTable.js +93 -68
- package/dist/select/Select.js +244 -146
- package/dist/sidenav/Sidenav.js +86 -129
- package/dist/slider/Slider.js +206 -70
- package/dist/spinner/Spinner.js +247 -59
- package/dist/switch/Switch.js +50 -27
- package/dist/table/Table.js +52 -13
- package/dist/tabs/Tabs.js +206 -35
- package/dist/tabs-for-sections/TabsForSections.js +1 -16
- package/dist/tag/Tag.js +100 -35
- package/dist/text-input/TextInput.js +971 -0
- package/dist/text-input/index.d.ts +135 -0
- package/dist/textarea/Textarea.js +248 -106
- package/dist/textarea/index.d.ts +117 -0
- package/dist/toggle/Toggle.js +16 -19
- package/dist/toggle-group/ToggleGroup.js +158 -48
- package/dist/upload/Upload.js +16 -11
- package/dist/upload/buttons-upload/ButtonsUpload.js +31 -14
- package/dist/upload/dragAndDropArea/DragAndDropArea.js +78 -28
- package/dist/upload/file-upload/FileToUpload.js +50 -24
- package/dist/upload/files-upload/FilesToUpload.js +16 -16
- package/dist/upload/readme.md +2 -2
- package/dist/upload/transaction/Transaction.js +44 -24
- package/dist/upload/transactions/Transactions.js +38 -20
- package/dist/useTheme.js +22 -0
- package/dist/wizard/Wizard.js +139 -55
- package/dist/wizard/invalid_icon.svg +4 -5
- package/dist/wizard/valid_icon.svg +4 -5
- package/package.json +13 -5
- package/test/AccordionGroup.test.js +125 -0
- package/test/Date.test.js +49 -45
- package/test/DateInput.test.js +242 -0
- package/test/Dropdown.test.js +15 -0
- package/test/FileInput.test.js +201 -0
- package/test/Footer.test.js +2 -7
- package/test/Header.test.js +5 -10
- package/test/InputText.test.js +53 -41
- package/test/Link.test.js +25 -7
- package/test/NumberInput.test.js +259 -0
- package/test/Paginator.test.js +72 -60
- package/test/PasswordInput.test.js +83 -0
- package/test/ResultsetTable.test.js +66 -19
- package/test/Select.test.js +55 -34
- package/test/Sidenav.test.js +22 -64
- package/test/Slider.test.js +17 -0
- package/test/Spinner.test.js +5 -0
- package/test/Tabs.test.js +21 -0
- package/test/TextInput.test.js +732 -0
- package/test/Textarea.test.js +193 -0
- package/test/ToggleGroup.test.js +5 -1
- package/test/Upload.test.js +5 -5
- package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
- package/dist/accordion/Accordion.stories.js +0 -207
- package/dist/accordion/readme.md +0 -96
- package/dist/alert/Alert.stories.js +0 -158
- package/dist/alert/close.svg +0 -4
- package/dist/alert/error.svg +0 -4
- package/dist/alert/info.svg +0 -4
- package/dist/alert/readme.md +0 -43
- package/dist/alert/success.svg +0 -4
- package/dist/alert/warning.svg +0 -4
- package/dist/button/Button.stories.js +0 -224
- package/dist/button/readme.md +0 -93
- package/dist/common/services/example-service.js +0 -10
- package/dist/common/services/example-service.test.js +0 -12
- package/dist/date/calendar.svg +0 -1
- package/dist/date/calendar_dark.svg +0 -1
- package/dist/dialog/Dialog.stories.js +0 -217
- package/dist/dialog/readme.md +0 -32
- package/dist/dropdown/Dropdown.stories.js +0 -249
- package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
- package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
- package/dist/dropdown/readme.md +0 -69
- package/dist/footer/Footer.stories.js +0 -94
- package/dist/footer/dxc_logo_wht.png +0 -0
- package/dist/footer/readme.md +0 -41
- package/dist/header/Header.stories.js +0 -176
- package/dist/header/close_icon.svg +0 -1
- package/dist/header/dxc_logo_black.png +0 -0
- package/dist/header/dxc_logo_blk_rgb.svg +0 -6
- package/dist/header/dxc_logo_white.png +0 -0
- package/dist/header/hamb_menu_black.svg +0 -1
- package/dist/header/hamb_menu_white.svg +0 -1
- package/dist/header/readme.md +0 -33
- package/dist/input-text/InputText.stories.js +0 -209
- package/dist/input-text/error.svg +0 -1
- package/dist/input-text/readme.md +0 -91
- package/dist/select/Select.stories.js +0 -235
- package/dist/select/readme.md +0 -72
- package/dist/sidenav/arrow_icon.svg +0 -3
- package/dist/slider/Slider.stories.js +0 -241
- package/dist/toggle-group/readme.md +0 -82
- package/test/Toggle.test.js +0 -43
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
type SVG = string | (HTMLElement & SVGElement);
|
|
2
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
type Margin = {
|
|
4
|
+
top?: Space;
|
|
5
|
+
bottom?: Space;
|
|
6
|
+
left?: Space;
|
|
7
|
+
right?: Space;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
type OptionGroup = {
|
|
11
|
+
label: string;
|
|
12
|
+
options: Option[];
|
|
13
|
+
};
|
|
14
|
+
type Option = {
|
|
15
|
+
icon?: string | SVG;
|
|
16
|
+
label: string;
|
|
17
|
+
value: string;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
type Props = {
|
|
21
|
+
label?: string;
|
|
22
|
+
name?: string;
|
|
23
|
+
value?: string | string[];
|
|
24
|
+
options?: Option[] | OptionGroup[];
|
|
25
|
+
helperText?: string;
|
|
26
|
+
placeholder?: string;
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
optional?: boolean;
|
|
29
|
+
searchable?: boolean;
|
|
30
|
+
multiple?: boolean;
|
|
31
|
+
onChange?: (value: string | string[]) => void;
|
|
32
|
+
onBlur?: (val: { value: string | string[]; error: string }) => void;
|
|
33
|
+
error?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
36
|
+
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
|
37
|
+
*/
|
|
38
|
+
margin?: Space | Margin;
|
|
39
|
+
/**
|
|
40
|
+
* Size of the component ('small' | 'medium' | 'large' | 'fillParent').
|
|
41
|
+
*/
|
|
42
|
+
size?: "small" | "medium" | "large" | "fillParent";
|
|
43
|
+
/**
|
|
44
|
+
* Value of the tabindex attribute.
|
|
45
|
+
*/
|
|
46
|
+
tabIndex?: number;
|
|
47
|
+
/**
|
|
48
|
+
* Reference to the component.
|
|
49
|
+
*/
|
|
50
|
+
ref?: React.RefObject<HTMLDivElement>;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export default function DxcNewSelect(props: Props): JSX.Element;
|
|
@@ -0,0 +1,136 @@
|
|
|
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"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
+
|
|
12
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
+
|
|
14
|
+
var _react = _interopRequireDefault(require("react"));
|
|
15
|
+
|
|
16
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
|
+
|
|
18
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
19
|
+
|
|
20
|
+
var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
|
|
21
|
+
|
|
22
|
+
var _NumberInputContext = _interopRequireDefault(require("./NumberInputContext"));
|
|
23
|
+
|
|
24
|
+
var _variables = require("../common/variables.js");
|
|
25
|
+
|
|
26
|
+
function _templateObject() {
|
|
27
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n // Chrome, Safari, Edge, Opera\n input::-webkit-outer-spin-button,\n input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n\n // Firefox\n input[type=\"number\"] {\n -moz-appearance: textfield;\n }\n"]);
|
|
28
|
+
|
|
29
|
+
_templateObject = function _templateObject() {
|
|
30
|
+
return data;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
return data;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
var DxcNumberInput = _react["default"].forwardRef(function (_ref, ref) {
|
|
37
|
+
var _ref$label = _ref.label,
|
|
38
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
39
|
+
_ref$name = _ref.name,
|
|
40
|
+
name = _ref$name === void 0 ? "" : _ref$name,
|
|
41
|
+
value = _ref.value,
|
|
42
|
+
_ref$helperText = _ref.helperText,
|
|
43
|
+
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
44
|
+
_ref$placeholder = _ref.placeholder,
|
|
45
|
+
placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
|
|
46
|
+
_ref$disabled = _ref.disabled,
|
|
47
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
48
|
+
_ref$optional = _ref.optional,
|
|
49
|
+
optional = _ref$optional === void 0 ? false : _ref$optional,
|
|
50
|
+
_ref$prefix = _ref.prefix,
|
|
51
|
+
prefix = _ref$prefix === void 0 ? "" : _ref$prefix,
|
|
52
|
+
_ref$suffix = _ref.suffix,
|
|
53
|
+
suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
|
|
54
|
+
min = _ref.min,
|
|
55
|
+
max = _ref.max,
|
|
56
|
+
step = _ref.step,
|
|
57
|
+
onChange = _ref.onChange,
|
|
58
|
+
onBlur = _ref.onBlur,
|
|
59
|
+
_ref$error = _ref.error,
|
|
60
|
+
error = _ref$error === void 0 ? "" : _ref$error,
|
|
61
|
+
_ref$autocomplete = _ref.autocomplete,
|
|
62
|
+
autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
|
|
63
|
+
margin = _ref.margin,
|
|
64
|
+
_ref$size = _ref.size,
|
|
65
|
+
size = _ref$size === void 0 ? "medium" : _ref$size,
|
|
66
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
67
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
68
|
+
return _react["default"].createElement(_NumberInputContext["default"].Provider, {
|
|
69
|
+
value: {
|
|
70
|
+
typeNumber: "number",
|
|
71
|
+
minNumber: min,
|
|
72
|
+
maxNumber: max,
|
|
73
|
+
stepNumber: step
|
|
74
|
+
}
|
|
75
|
+
}, _react["default"].createElement(NumberInputContainer, null, _react["default"].createElement(_TextInput["default"], {
|
|
76
|
+
label: label,
|
|
77
|
+
name: name,
|
|
78
|
+
value: value,
|
|
79
|
+
helperText: helperText,
|
|
80
|
+
placeholder: placeholder,
|
|
81
|
+
disabled: disabled,
|
|
82
|
+
optional: optional,
|
|
83
|
+
prefix: prefix,
|
|
84
|
+
suffix: suffix,
|
|
85
|
+
error: error,
|
|
86
|
+
onChange: onChange,
|
|
87
|
+
onBlur: onBlur,
|
|
88
|
+
autocomplete: autocomplete,
|
|
89
|
+
margin: margin,
|
|
90
|
+
size: size,
|
|
91
|
+
tabIndex: tabIndex,
|
|
92
|
+
ref: ref
|
|
93
|
+
})));
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
var sizes = {
|
|
97
|
+
small: "240px",
|
|
98
|
+
medium: "360px",
|
|
99
|
+
large: "480px",
|
|
100
|
+
fillParent: "100%"
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
var NumberInputContainer = _styledComponents["default"].div(_templateObject());
|
|
104
|
+
|
|
105
|
+
DxcNumberInput.propTypes = {
|
|
106
|
+
label: _propTypes["default"].string,
|
|
107
|
+
name: _propTypes["default"].string,
|
|
108
|
+
value: _propTypes["default"].string,
|
|
109
|
+
helperText: _propTypes["default"].string,
|
|
110
|
+
placeholder: _propTypes["default"].string,
|
|
111
|
+
error: _propTypes["default"].string,
|
|
112
|
+
disabled: _propTypes["default"].bool,
|
|
113
|
+
optional: _propTypes["default"].bool,
|
|
114
|
+
prefix: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].shape({
|
|
115
|
+
type: _propTypes["default"].oneOf(["svg"])
|
|
116
|
+
})]),
|
|
117
|
+
suffix: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].shape({
|
|
118
|
+
type: _propTypes["default"].oneOf(["svg"])
|
|
119
|
+
})]),
|
|
120
|
+
min: _propTypes["default"].number,
|
|
121
|
+
max: _propTypes["default"].number,
|
|
122
|
+
step: _propTypes["default"].number,
|
|
123
|
+
onChange: _propTypes["default"].func,
|
|
124
|
+
onBlur: _propTypes["default"].func,
|
|
125
|
+
autocomplete: _propTypes["default"].string,
|
|
126
|
+
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
127
|
+
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
128
|
+
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
129
|
+
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
130
|
+
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
131
|
+
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
|
|
132
|
+
size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
|
|
133
|
+
tabIndex: _propTypes["default"].number
|
|
134
|
+
};
|
|
135
|
+
var _default = DxcNumberInput;
|
|
136
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,16 @@
|
|
|
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"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
/* eslint-disable prefer-template */
|
|
13
|
+
var NumberInputContext = _react["default"].createContext();
|
|
14
|
+
|
|
15
|
+
var _default = NumberInputContext;
|
|
16
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
type Size = "small" | "medium" | "large" | "fillParent";
|
|
2
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
type Margin = {
|
|
4
|
+
top?: Space;
|
|
5
|
+
bottom?: Space;
|
|
6
|
+
left?: Space;
|
|
7
|
+
right?: Space;
|
|
8
|
+
};
|
|
9
|
+
type Props = {
|
|
10
|
+
/**
|
|
11
|
+
* Text to be placed above the number.
|
|
12
|
+
*/
|
|
13
|
+
label?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Name attribute of the input element.
|
|
16
|
+
*/
|
|
17
|
+
name?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Value of the input element. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
|
|
20
|
+
*/
|
|
21
|
+
value?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Helper text to be placed above the number.
|
|
24
|
+
*/
|
|
25
|
+
helperText?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Text to be put as placeholder of the number.
|
|
28
|
+
*/
|
|
29
|
+
placeholder?: string;
|
|
30
|
+
/**
|
|
31
|
+
* If true, the component will be disabled.
|
|
32
|
+
*/
|
|
33
|
+
disabled?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* If true, the number will be optional, showing '(Optional)'
|
|
36
|
+
* next to the label. Otherwise, the field will be considered required
|
|
37
|
+
* and an error will be passed as a parameter to the OnBlur and onChange
|
|
38
|
+
* functions when it has not been filled.
|
|
39
|
+
*/
|
|
40
|
+
optional?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Prefix to be placed before the number value.
|
|
43
|
+
*/
|
|
44
|
+
prefix?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Suffix to be placed after the number value.
|
|
47
|
+
*/
|
|
48
|
+
suffix?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Minimum value allowed by the number input. If the typed value by the user is
|
|
51
|
+
* lower than min, the onBlur and onChange functions will be called with
|
|
52
|
+
* the current value and an internal error informing that the current
|
|
53
|
+
* value is not correct. If a valid state is reached, the error parameter
|
|
54
|
+
* will be null in both events.
|
|
55
|
+
*/
|
|
56
|
+
min?: number;
|
|
57
|
+
/**
|
|
58
|
+
* Maximum value allowed by the number input. If the typed value by the user
|
|
59
|
+
* surpasses max, the onBlur and onChange functions will be called with
|
|
60
|
+
* the current value and an internal error informing that the current
|
|
61
|
+
* value is not correct. If a valid state is reached, the error parameter
|
|
62
|
+
* will be null in both events.
|
|
63
|
+
*/
|
|
64
|
+
max?: number;
|
|
65
|
+
/**
|
|
66
|
+
* The step interval to use when using the up and down arrows to adjust the value.
|
|
67
|
+
*/
|
|
68
|
+
step?: number;
|
|
69
|
+
/**
|
|
70
|
+
* This function will be called when the user types within the input
|
|
71
|
+
* element of the component. An object including the current value and
|
|
72
|
+
* the error (if the value entered is not valid) will be passed to this
|
|
73
|
+
* function. If there is no error, error will be null.
|
|
74
|
+
*/
|
|
75
|
+
onChange?: (val: { value: string; error: string }) => void;
|
|
76
|
+
/**
|
|
77
|
+
* This function will be called when the input element loses the focus.
|
|
78
|
+
* An object including the input value and the error (if the value
|
|
79
|
+
* entered is not valid) will be passed to this function. If there is no error,
|
|
80
|
+
* error will be null.
|
|
81
|
+
*/
|
|
82
|
+
onBlur?: (val: { value: string; error: string }) => void;
|
|
83
|
+
/**
|
|
84
|
+
* If it is defined, the component will change its appearance, showing
|
|
85
|
+
* the error below the input component. If it is not defined, the error
|
|
86
|
+
* messages will be managed internally, but never displayed on its own.
|
|
87
|
+
*/
|
|
88
|
+
error?: string;
|
|
89
|
+
/**
|
|
90
|
+
* HTML autocomplete attribute. Lets the user specify if any permission the user agent has to provide automated assistance in filling out the input value.
|
|
91
|
+
* Its value must be one of all the possible values of the HTML autocomplete attribute: 'on', 'off', 'email', 'username', 'new-password', ...
|
|
92
|
+
*/
|
|
93
|
+
autocomplete?: string;
|
|
94
|
+
/**
|
|
95
|
+
* Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
96
|
+
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
|
97
|
+
*/
|
|
98
|
+
margin?: Space | Margin;
|
|
99
|
+
/**
|
|
100
|
+
* Size of the component ('small' | 'medium' | 'large' | 'fillParent').
|
|
101
|
+
*/
|
|
102
|
+
size?: Size;
|
|
103
|
+
/**
|
|
104
|
+
* Value of the tabindex attribute.
|
|
105
|
+
*/
|
|
106
|
+
tabIndex?: number;
|
|
107
|
+
/**
|
|
108
|
+
* Reference to the component.
|
|
109
|
+
*/
|
|
110
|
+
ref?: React.RefObject<HTMLDivElement>;
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
export default function DxcNumberInput(props: Props): JSX.Element;
|
|
@@ -11,20 +11,20 @@ exports["default"] = void 0;
|
|
|
11
11
|
|
|
12
12
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
15
|
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
var _variables = require("../common/variables.js");
|
|
16
|
+
var _react = _interopRequireDefault(require("react"));
|
|
19
17
|
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
var _utils = require("../common/utils.js");
|
|
18
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
23
19
|
|
|
24
20
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
25
21
|
|
|
22
|
+
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
23
|
+
|
|
26
24
|
var _Button = _interopRequireDefault(require("../button/Button"));
|
|
27
25
|
|
|
26
|
+
var _Select = _interopRequireDefault(require("../select/Select"));
|
|
27
|
+
|
|
28
28
|
var _previousPage = _interopRequireDefault(require("./images/previousPage.svg"));
|
|
29
29
|
|
|
30
30
|
var _previous = _interopRequireDefault(require("./images/previous.svg"));
|
|
@@ -33,11 +33,51 @@ var _next = _interopRequireDefault(require("./images/next.svg"));
|
|
|
33
33
|
|
|
34
34
|
var _nextPage = _interopRequireDefault(require("./images/nextPage.svg"));
|
|
35
35
|
|
|
36
|
-
require("../
|
|
36
|
+
var _BackgroundColorContext = require("../BackgroundColorContext.js");
|
|
37
37
|
|
|
38
|
-
function
|
|
38
|
+
function _templateObject8() {
|
|
39
39
|
var data = (0, _taggedTemplateLiteral2["default"])([""]);
|
|
40
40
|
|
|
41
|
+
_templateObject8 = function _templateObject8() {
|
|
42
|
+
return data;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
return data;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function _templateObject7() {
|
|
49
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: ", ";\n margin-left: ", ";\n\n label {\n height: 0px;\n }\n label + .MuiInput-formControl {\n margin-top: 0px;\n }\n"]);
|
|
50
|
+
|
|
51
|
+
_templateObject7 = function _templateObject7() {
|
|
52
|
+
return data;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
return data;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function _templateObject6() {
|
|
59
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n width: 100%;\n justify-content: flex-end;\n align-items: center;\n margin: 0 ", " 0 ", ";\n"]);
|
|
60
|
+
|
|
61
|
+
_templateObject6 = function _templateObject6() {
|
|
62
|
+
return data;
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
return data;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
function _templateObject5() {
|
|
69
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: ", ";\n margin-left: ", ";\n"]);
|
|
70
|
+
|
|
71
|
+
_templateObject5 = function _templateObject5() {
|
|
72
|
+
return data;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
return data;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function _templateObject4() {
|
|
79
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 10px;\n margin-left: 10px;\n"]);
|
|
80
|
+
|
|
41
81
|
_templateObject4 = function _templateObject4() {
|
|
42
82
|
return data;
|
|
43
83
|
};
|
|
@@ -46,7 +86,7 @@ function _templateObject4() {
|
|
|
46
86
|
}
|
|
47
87
|
|
|
48
88
|
function _templateObject3() {
|
|
49
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
89
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 15px;\n"]);
|
|
50
90
|
|
|
51
91
|
_templateObject3 = function _templateObject3() {
|
|
52
92
|
return data;
|
|
@@ -56,7 +96,7 @@ function _templateObject3() {
|
|
|
56
96
|
}
|
|
57
97
|
|
|
58
98
|
function _templateObject2() {
|
|
59
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right:
|
|
99
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n margin-right: ", ";\n margin-left: ", ";\n\n label {\n height: 0px;\n }\n label + .MuiInput-formControl {\n margin-top: 0px;\n }\n"]);
|
|
60
100
|
|
|
61
101
|
_templateObject2 = function _templateObject2() {
|
|
62
102
|
return data;
|
|
@@ -66,7 +106,7 @@ function _templateObject2() {
|
|
|
66
106
|
}
|
|
67
107
|
|
|
68
108
|
function _templateObject() {
|
|
69
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height:
|
|
109
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: ", ";\n width: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n text-transform: ", ";\n background-color: ", ";\n color: ", ";\n\n button {\n &:disabled {\n background-color: transparent !important;\n opacity: 0.3 !important;\n }\n }\n"]);
|
|
70
110
|
|
|
71
111
|
_templateObject = function _templateObject() {
|
|
72
112
|
return data;
|
|
@@ -80,25 +120,37 @@ var DxcPaginator = function DxcPaginator(_ref) {
|
|
|
80
120
|
currentPage = _ref$currentPage === void 0 ? 1 : _ref$currentPage,
|
|
81
121
|
_ref$itemsPerPage = _ref.itemsPerPage,
|
|
82
122
|
itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
|
|
123
|
+
itemsPerPageOptions = _ref.itemsPerPageOptions,
|
|
83
124
|
_ref$totalItems = _ref.totalItems,
|
|
84
125
|
totalItems = _ref$totalItems === void 0 ? 1 : _ref$totalItems,
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
126
|
+
showGoToPage = _ref.showGoToPage,
|
|
127
|
+
onPageChange = _ref.onPageChange,
|
|
128
|
+
itemsPerPageFunction = _ref.itemsPerPageFunction,
|
|
129
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
130
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
89
131
|
var totalPages = Math.ceil(totalItems / itemsPerPage);
|
|
90
132
|
var currentPageInternal = currentPage === -1 ? totalPages : currentPage;
|
|
91
133
|
var minItemsPerPage = currentPageInternal === 1 || currentPageInternal === 0 ? currentPageInternal : (currentPageInternal - 1) * itemsPerPage + 1;
|
|
92
134
|
var maxItemsPerPage = minItemsPerPage - 1 + itemsPerPage > totalItems ? totalItems : minItemsPerPage - 1 + itemsPerPage;
|
|
93
|
-
var
|
|
94
|
-
var colorsTheme = (0, _react.useMemo)(function () {
|
|
95
|
-
return (0, _utils.getCustomTheme)(_variables.theme, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
|
|
96
|
-
}, [customTheme]);
|
|
135
|
+
var colorsTheme = (0, _useTheme["default"])();
|
|
97
136
|
return _react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
98
137
|
theme: colorsTheme.paginator
|
|
138
|
+
}, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
|
|
139
|
+
color: colorsTheme.paginator.backgroundColor
|
|
99
140
|
}, _react["default"].createElement(DxcPaginatorContainer, {
|
|
100
141
|
disabled: currentPageInternal === 1
|
|
101
|
-
}, _react["default"].createElement(LabelsContainer, null, _react["default"].createElement(
|
|
142
|
+
}, _react["default"].createElement(LabelsContainer, null, itemsPerPageOptions && _react["default"].createElement(ItemsPageContainer, null, _react["default"].createElement(ItemsLabel, null, "Items per page "), _react["default"].createElement(_Select["default"], {
|
|
143
|
+
options: itemsPerPageOptions.map(function (num) {
|
|
144
|
+
return {
|
|
145
|
+
label: num,
|
|
146
|
+
value: num
|
|
147
|
+
};
|
|
148
|
+
}),
|
|
149
|
+
onChange: itemsPerPageFunction,
|
|
150
|
+
value: itemsPerPage,
|
|
151
|
+
size: "small",
|
|
152
|
+
tabIndex: tabIndex
|
|
153
|
+
})), _react["default"].createElement(TotalItemsContainer, null, minItemsPerPage, " to ", maxItemsPerPage, " of ", totalItems), onPageChange && _react["default"].createElement(_Button["default"], {
|
|
102
154
|
size: "small",
|
|
103
155
|
mode: "secondary",
|
|
104
156
|
disabled: currentPageInternal === 1 || currentPageInternal === 0,
|
|
@@ -107,12 +159,11 @@ var DxcPaginator = function DxcPaginator(_ref) {
|
|
|
107
159
|
right: "xxsmall"
|
|
108
160
|
},
|
|
109
161
|
iconSrc: _previousPage["default"],
|
|
162
|
+
tabIndex: tabIndex,
|
|
110
163
|
onClick: function onClick() {
|
|
111
|
-
|
|
112
|
-
firstFunction();
|
|
113
|
-
}
|
|
164
|
+
onPageChange(1);
|
|
114
165
|
}
|
|
115
|
-
}),
|
|
166
|
+
}), onPageChange && _react["default"].createElement(_Button["default"], {
|
|
116
167
|
size: "small",
|
|
117
168
|
mode: "secondary",
|
|
118
169
|
disabled: currentPageInternal === 1 || currentPageInternal === 0,
|
|
@@ -121,12 +172,22 @@ var DxcPaginator = function DxcPaginator(_ref) {
|
|
|
121
172
|
right: "xxsmall"
|
|
122
173
|
},
|
|
123
174
|
iconSrc: _previous["default"],
|
|
175
|
+
tabIndex: tabIndex,
|
|
124
176
|
onClick: function onClick() {
|
|
125
|
-
|
|
126
|
-
prevFunction();
|
|
127
|
-
}
|
|
177
|
+
onPageChange(currentPage - 1);
|
|
128
178
|
}
|
|
129
|
-
}), _react["default"].createElement(
|
|
179
|
+
}), showGoToPage && _react["default"].createElement(PageToSelectContainer, null, _react["default"].createElement(GoToLabel, null, "Go to page: "), _react["default"].createElement(_Select["default"], {
|
|
180
|
+
options: (0, _toConsumableArray2["default"])(Array(totalPages).keys()).map(function (num) {
|
|
181
|
+
return {
|
|
182
|
+
label: num + 1,
|
|
183
|
+
value: num + 1
|
|
184
|
+
};
|
|
185
|
+
}),
|
|
186
|
+
onChange: onPageChange,
|
|
187
|
+
value: currentPage,
|
|
188
|
+
size: "small",
|
|
189
|
+
tabIndex: tabIndex
|
|
190
|
+
})) || _react["default"].createElement(TextContainer, null, "Page: ", currentPageInternal, " of ", totalPages), onPageChange && _react["default"].createElement(_Button["default"], {
|
|
130
191
|
size: "small",
|
|
131
192
|
mode: "secondary",
|
|
132
193
|
disabled: currentPageInternal === totalPages,
|
|
@@ -135,12 +196,11 @@ var DxcPaginator = function DxcPaginator(_ref) {
|
|
|
135
196
|
right: "xxsmall"
|
|
136
197
|
},
|
|
137
198
|
iconSrc: _next["default"],
|
|
199
|
+
tabIndex: tabIndex,
|
|
138
200
|
onClick: function onClick() {
|
|
139
|
-
|
|
140
|
-
nextFunction();
|
|
141
|
-
}
|
|
201
|
+
onPageChange(currentPage + 1);
|
|
142
202
|
}
|
|
143
|
-
}),
|
|
203
|
+
}), onPageChange && _react["default"].createElement(_Button["default"], {
|
|
144
204
|
size: "small",
|
|
145
205
|
mode: "secondary",
|
|
146
206
|
disabled: currentPageInternal === totalPages,
|
|
@@ -149,48 +209,81 @@ var DxcPaginator = function DxcPaginator(_ref) {
|
|
|
149
209
|
right: "xxsmall"
|
|
150
210
|
},
|
|
151
211
|
iconSrc: _nextPage["default"],
|
|
212
|
+
tabIndex: tabIndex,
|
|
152
213
|
onClick: function onClick() {
|
|
153
|
-
|
|
154
|
-
lastFunction(totalPages);
|
|
155
|
-
}
|
|
214
|
+
onPageChange(totalPages);
|
|
156
215
|
}
|
|
157
|
-
}))));
|
|
216
|
+
})))));
|
|
158
217
|
};
|
|
159
218
|
|
|
160
219
|
var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject(), function (props) {
|
|
161
|
-
return props.theme.
|
|
220
|
+
return props.theme.height;
|
|
221
|
+
}, function (props) {
|
|
222
|
+
return props.theme.width;
|
|
223
|
+
}, function (props) {
|
|
224
|
+
return props.theme.fontFamily;
|
|
225
|
+
}, function (props) {
|
|
226
|
+
return props.theme.fontSize;
|
|
227
|
+
}, function (props) {
|
|
228
|
+
return props.theme.fontWeight;
|
|
229
|
+
}, function (props) {
|
|
230
|
+
return props.theme.fontStyle;
|
|
162
231
|
}, function (props) {
|
|
163
|
-
return props.theme.
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
232
|
+
return props.theme.fontTextTransform;
|
|
233
|
+
}, function (props) {
|
|
234
|
+
return props.theme.backgroundColor;
|
|
235
|
+
}, function (props) {
|
|
236
|
+
return props.theme.fontColor;
|
|
237
|
+
});
|
|
238
|
+
|
|
239
|
+
var ItemsPageContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
|
|
240
|
+
return props.theme.itemsPerPageSelectorMarginRight;
|
|
241
|
+
}, function (props) {
|
|
242
|
+
return props.theme.itemsPerPageSelectorMarginLeft;
|
|
243
|
+
});
|
|
244
|
+
|
|
245
|
+
var ItemsLabel = _styledComponents["default"].span(_templateObject3());
|
|
170
246
|
|
|
247
|
+
var GoToLabel = _styledComponents["default"].span(_templateObject4());
|
|
171
248
|
|
|
172
|
-
var TotalItemsContainer = _styledComponents["default"].span(
|
|
249
|
+
var TotalItemsContainer = _styledComponents["default"].span(_templateObject5(), function (props) {
|
|
250
|
+
return props.theme.totalItemsContainerMarginRight;
|
|
251
|
+
}, function (props) {
|
|
252
|
+
return props.theme.totalItemsContainerMarginLeft;
|
|
253
|
+
});
|
|
173
254
|
|
|
174
|
-
var LabelsContainer = _styledComponents["default"].div(
|
|
255
|
+
var LabelsContainer = _styledComponents["default"].div(_templateObject6(), function (props) {
|
|
256
|
+
return props.theme.marginRight;
|
|
257
|
+
}, function (props) {
|
|
258
|
+
return props.theme.marginLeft;
|
|
259
|
+
});
|
|
260
|
+
|
|
261
|
+
var PageToSelectContainer = _styledComponents["default"].span(_templateObject7(), function (props) {
|
|
262
|
+
return props.theme.pageSelectorMarginRight;
|
|
263
|
+
}, function (props) {
|
|
264
|
+
return props.theme.pageSelectorMarginLeft;
|
|
265
|
+
});
|
|
175
266
|
|
|
176
|
-
var TextContainer = _styledComponents["default"].span(
|
|
267
|
+
var TextContainer = _styledComponents["default"].span(_templateObject8());
|
|
177
268
|
|
|
178
269
|
DxcPaginator.propTypes = {
|
|
179
270
|
currentPage: _propTypes["default"].number,
|
|
180
271
|
itemsPerPage: _propTypes["default"].number,
|
|
272
|
+
itemsPerPageOptions: _propTypes["default"].arrayOf(_propTypes["default"].number),
|
|
181
273
|
totalItems: _propTypes["default"].number.isRequired,
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
274
|
+
showGoToPage: _propTypes["default"].bool,
|
|
275
|
+
onPageChange: _propTypes["default"].func,
|
|
276
|
+
itemsPerPageFunction: _propTypes["default"].func,
|
|
277
|
+
tabIndex: _propTypes["default"].number
|
|
186
278
|
};
|
|
187
279
|
DxcPaginator.defaultProps = {
|
|
188
280
|
currentPage: 1,
|
|
189
281
|
itemsPerPage: 5,
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
282
|
+
itemsPerPageOptions: null,
|
|
283
|
+
showGoToPage: false,
|
|
284
|
+
onPageChange: null,
|
|
285
|
+
itemsPerPageFunction: null,
|
|
286
|
+
tabIndex: 0
|
|
194
287
|
};
|
|
195
288
|
var _default = DxcPaginator;
|
|
196
289
|
exports["default"] = _default;
|