@dxc-technology/halstack-react 0.0.0-cb610df → 0.0.0-cc01d9c
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/README.md +1 -1
- package/babel.config.js +6 -2
- package/dist/BackgroundColorContext.js +46 -0
- package/dist/ThemeContext.js +237 -2
- package/dist/V3Select/V3Select.js +549 -0
- package/dist/V3Select/index.d.ts +27 -0
- package/dist/V3Textarea/V3Textarea.js +264 -0
- package/dist/V3Textarea/index.d.ts +27 -0
- package/dist/accordion/Accordion.js +152 -67
- package/dist/accordion/index.d.ts +28 -0
- package/dist/accordion-group/AccordionGroup.js +186 -0
- package/dist/accordion-group/index.d.ts +16 -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/box/index.d.ts +25 -0
- package/dist/button/Button.js +63 -27
- package/dist/button/index.d.ts +24 -0
- package/dist/card/Card.js +72 -35
- package/dist/card/index.d.ts +22 -0
- package/dist/checkbox/Checkbox.js +99 -40
- package/dist/checkbox/index.d.ts +24 -0
- package/dist/chip/Chip.js +97 -40
- package/dist/chip/index.d.ts +22 -0
- package/dist/common/RequiredComponent.js +2 -8
- package/dist/common/utils.js +2 -22
- package/dist/common/variables.js +1444 -304
- package/dist/date/Date.js +75 -52
- package/dist/date/index.d.ts +27 -0
- 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/dialog/index.d.ts +18 -0
- package/dist/dropdown/Dropdown.js +177 -82
- package/dist/dropdown/index.d.ts +26 -0
- package/dist/file-input/FileInput.js +644 -0
- package/dist/file-input/FileItem.js +287 -0
- package/dist/file-input/index.d.ts +81 -0
- package/dist/footer/Footer.js +90 -40
- package/dist/footer/Icons.js +77 -0
- package/dist/footer/index.d.ts +25 -0
- package/dist/header/Header.js +192 -95
- package/dist/header/Icons.js +59 -0
- package/dist/header/index.d.ts +25 -0
- package/dist/heading/Heading.js +93 -16
- package/dist/heading/index.d.ts +17 -0
- package/dist/input-text/Icons.js +22 -0
- package/dist/input-text/InputText.js +248 -113
- package/dist/input-text/index.d.ts +36 -0
- package/dist/layout/ApplicationLayout.js +18 -26
- package/dist/layout/Icons.js +55 -0
- package/dist/link/Link.js +107 -41
- package/dist/link/index.d.ts +23 -0
- package/dist/main.d.ts +40 -0
- package/dist/main.js +96 -16
- 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/Icons.js +66 -0
- package/dist/paginator/Paginator.js +150 -63
- package/dist/paginator/index.d.ts +20 -0
- package/dist/password-input/PasswordInput.js +203 -0
- package/dist/password-input/index.d.ts +94 -0
- package/dist/progress-bar/ProgressBar.js +95 -38
- package/dist/progress-bar/index.d.ts +18 -0
- package/dist/radio/Radio.js +31 -17
- package/dist/radio/index.d.ts +23 -0
- package/dist/resultsetTable/ResultsetTable.js +90 -65
- package/dist/resultsetTable/index.d.ts +19 -0
- package/dist/select/Select.js +914 -271
- package/dist/select/index.d.ts +53 -0
- package/dist/sidenav/Sidenav.js +66 -15
- package/dist/sidenav/index.d.ts +13 -0
- package/dist/slider/Slider.js +211 -73
- package/dist/slider/index.d.ts +29 -0
- package/dist/spinner/Spinner.js +247 -59
- package/dist/spinner/index.d.ts +17 -0
- package/dist/switch/Switch.js +50 -27
- package/dist/switch/index.d.ts +24 -0
- package/dist/table/Table.js +51 -24
- package/dist/table/index.d.ts +13 -0
- package/dist/tabs/Tabs.js +206 -35
- package/dist/tabs/index.d.ts +19 -0
- package/dist/tag/Tag.js +85 -37
- package/dist/tag/index.d.ts +24 -0
- package/dist/text-input/TextInput.js +974 -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/index.d.ts +21 -0
- package/dist/toggle-group/ToggleGroup.js +156 -43
- package/dist/toggle-group/index.d.ts +21 -0
- package/dist/upload/Upload.js +13 -8
- package/dist/upload/buttons-upload/ButtonsUpload.js +32 -19
- package/dist/upload/buttons-upload/Icons.js +40 -0
- package/dist/upload/dragAndDropArea/DragAndDropArea.js +84 -34
- package/dist/upload/dragAndDropArea/Icons.js +39 -0
- package/dist/upload/file-upload/FileToUpload.js +64 -33
- package/dist/upload/file-upload/Icons.js +66 -0
- package/dist/upload/files-upload/FilesToUpload.js +16 -16
- package/dist/upload/index.d.ts +15 -0
- package/dist/upload/transaction/Icons.js +160 -0
- package/dist/upload/transaction/Transaction.js +42 -49
- package/dist/upload/transactions/Transactions.js +38 -20
- package/dist/useTheme.js +22 -0
- package/dist/wizard/Icons.js +65 -0
- package/dist/wizard/Wizard.js +138 -60
- package/dist/wizard/index.d.ts +18 -0
- package/package.json +14 -11
- package/test/AccordionGroup.test.js +125 -0
- package/test/Date.test.js +15 -13
- 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/Heading.test.js +60 -12
- package/test/InputText.test.js +29 -25
- package/test/Link.test.js +12 -2
- 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 +371 -147
- package/test/Slider.test.js +9 -17
- 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 +1 -1
- package/test/V3Select.test.js +212 -0
- 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/checkbox/Checkbox.stories.js +0 -144
- package/dist/checkbox/readme.md +0 -116
- package/dist/common/services/example-service.js +0 -10
- package/dist/common/services/example-service.test.js +0 -12
- package/dist/date/Date.stories.js +0 -205
- package/dist/date/calendar.svg +0 -1
- package/dist/date/calendar_dark.svg +0 -1
- package/dist/date/readme.md +0 -73
- 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/layout/facebook.svg +0 -45
- package/dist/layout/linkedin.svg +0 -50
- package/dist/layout/twitter.svg +0 -53
- package/dist/link/readme.md +0 -51
- package/dist/paginator/images/next.svg +0 -3
- package/dist/paginator/images/nextPage.svg +0 -3
- package/dist/paginator/images/previous.svg +0 -3
- package/dist/paginator/images/previousPage.svg +0 -3
- package/dist/paginator/readme.md +0 -50
- package/dist/progress-bar/ProgressBar.stories.js +0 -280
- package/dist/progress-bar/readme.md +0 -63
- package/dist/radio/Radio.stories.js +0 -166
- package/dist/radio/readme.md +0 -70
- package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
- package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
- package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
- package/dist/select/Select.stories.js +0 -235
- package/dist/select/readme.md +0 -72
- package/dist/slider/Slider.stories.js +0 -241
- package/dist/slider/readme.md +0 -64
- package/dist/spinner/Spinner.stories.js +0 -183
- package/dist/spinner/readme.md +0 -65
- package/dist/switch/Switch.stories.js +0 -134
- package/dist/switch/readme.md +0 -133
- package/dist/tabs/Tabs.stories.js +0 -130
- package/dist/tabs/readme.md +0 -78
- package/dist/tabs-for-sections/TabsForSections.js +0 -92
- package/dist/tabs-for-sections/readme.md +0 -78
- package/dist/toggle/Toggle.stories.js +0 -297
- package/dist/toggle/readme.md +0 -80
- package/dist/toggle-group/readme.md +0 -82
- package/dist/upload/Upload.stories.js +0 -72
- package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
- package/dist/upload/buttons-upload/upload-button.svg +0 -1
- package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
- package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
- package/dist/upload/file-upload/audio-icon.svg +0 -4
- package/dist/upload/file-upload/close.svg +0 -4
- package/dist/upload/file-upload/file-icon.svg +0 -4
- package/dist/upload/file-upload/video-icon.svg +0 -4
- package/dist/upload/readme.md +0 -37
- package/dist/upload/transaction/audio-icon-err.svg +0 -4
- package/dist/upload/transaction/audio-icon.svg +0 -4
- package/dist/upload/transaction/error-icon.svg +0 -4
- package/dist/upload/transaction/file-icon-err.svg +0 -4
- package/dist/upload/transaction/file-icon.svg +0 -4
- package/dist/upload/transaction/image-icon-err.svg +0 -4
- package/dist/upload/transaction/image-icon.svg +0 -4
- package/dist/upload/transaction/success-icon.svg +0 -4
- package/dist/upload/transaction/video-icon-err.svg +0 -4
- package/dist/upload/transaction/video-icon.svg +0 -4
- package/dist/wizard/invalid_icon.svg +0 -6
- package/dist/wizard/valid_icon.svg +0 -6
- package/dist/wizard/validation-wrong.svg +0 -6
- package/test/TabsForSections.test.js +0 -34
- package/test/Toggle.test.js +0 -43
package/dist/table/Table.js
CHANGED
|
@@ -13,7 +13,7 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
|
13
13
|
|
|
14
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
15
|
|
|
16
|
-
var _react =
|
|
16
|
+
var _react = _interopRequireDefault(require("react"));
|
|
17
17
|
|
|
18
18
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
19
|
|
|
@@ -21,20 +21,12 @@ var _variables = require("../common/variables.js");
|
|
|
21
21
|
|
|
22
22
|
var _utils = require("../common/utils.js");
|
|
23
23
|
|
|
24
|
-
var
|
|
24
|
+
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
var data = (0, _taggedTemplateLiteral2["default"])([""]);
|
|
28
|
-
|
|
29
|
-
_templateObject3 = function _templateObject3() {
|
|
30
|
-
return data;
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
return data;
|
|
34
|
-
}
|
|
26
|
+
var _BackgroundColorContext = require("../BackgroundColorContext.js");
|
|
35
27
|
|
|
36
28
|
function _templateObject2() {
|
|
37
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n border-collapse: collapse;\n width: 100%;\n\n & tr {\n border-bottom:
|
|
29
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n border-collapse: collapse;\n width: 100%;\n\n & tr {\n border-bottom: ", ";\n }\n & td {\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n text-align: ", ";\n line-height: ", ";\n padding: ", ";\n }\n & th {\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n text-align: ", ";\n line-height: ", ";\n padding: ", ";\n }\n & th:first-child {\n border-top-left-radius: ", ";\n }\n & th:last-child {\n border-top-right-radius: ", ";\n }\n"]);
|
|
38
30
|
|
|
39
31
|
_templateObject2 = function _templateObject2() {
|
|
40
32
|
return data;
|
|
@@ -44,7 +36,7 @@ function _templateObject2() {
|
|
|
44
36
|
}
|
|
45
37
|
|
|
46
38
|
function _templateObject() {
|
|
47
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
39
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n overflow: hidden auto;\n &::-webkit-scrollbar {\n width: 8px;\n }\n &::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 6px;\n }\n &::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 6px;\n }\n"]);
|
|
48
40
|
|
|
49
41
|
_templateObject = function _templateObject() {
|
|
50
42
|
return data;
|
|
@@ -56,15 +48,14 @@ function _templateObject() {
|
|
|
56
48
|
var DxcTable = function DxcTable(_ref) {
|
|
57
49
|
var children = _ref.children,
|
|
58
50
|
margin = _ref.margin;
|
|
59
|
-
var
|
|
60
|
-
var colorsTheme = (0, _react.useMemo)(function () {
|
|
61
|
-
return (0, _utils.getCustomTheme)(_variables.theme, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
|
|
62
|
-
}, [customTheme]);
|
|
51
|
+
var colorsTheme = (0, _useTheme["default"])();
|
|
63
52
|
return _react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
64
53
|
theme: colorsTheme.table
|
|
65
54
|
}, _react["default"].createElement(DxcTableContainer, {
|
|
66
55
|
margin: margin
|
|
67
|
-
}, _react["default"].createElement(DxcTableContent, null, _react["default"].createElement(
|
|
56
|
+
}, _react["default"].createElement(DxcTableContent, null, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
|
|
57
|
+
color: colorsTheme.table.dataBackgroundColor
|
|
58
|
+
}, children))));
|
|
68
59
|
};
|
|
69
60
|
|
|
70
61
|
var calculateWidth = function calculateWidth(margin) {
|
|
@@ -84,22 +75,58 @@ var DxcTableContainer = _styledComponents["default"].div(_templateObject(), func
|
|
|
84
75
|
}, function (props) {
|
|
85
76
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
86
77
|
}, function (props) {
|
|
87
|
-
return props.theme.
|
|
78
|
+
return props.theme.scrollBarThumbColor;
|
|
88
79
|
}, function (props) {
|
|
89
|
-
return props.theme.
|
|
80
|
+
return props.theme.scrollBarTrackColor;
|
|
90
81
|
});
|
|
91
82
|
|
|
92
83
|
var DxcTableContent = _styledComponents["default"].table(_templateObject2(), function (props) {
|
|
93
|
-
return props.theme.
|
|
84
|
+
return "".concat(props.theme.rowSeparatorThickness, " ").concat(props.theme.rowSeparatorStyle, " ").concat(props.theme.rowSeparatorColor);
|
|
85
|
+
}, function (props) {
|
|
86
|
+
return props.theme.dataBackgroundColor;
|
|
87
|
+
}, function (props) {
|
|
88
|
+
return props.theme.dataFontFamily;
|
|
89
|
+
}, function (props) {
|
|
90
|
+
return props.theme.dataFontSize;
|
|
91
|
+
}, function (props) {
|
|
92
|
+
return props.theme.dataFontStyle;
|
|
93
|
+
}, function (props) {
|
|
94
|
+
return props.theme.dataFontWeight;
|
|
95
|
+
}, function (props) {
|
|
96
|
+
return props.theme.dataFontColor;
|
|
97
|
+
}, function (props) {
|
|
98
|
+
return props.theme.dataFontTextTransform;
|
|
94
99
|
}, function (props) {
|
|
95
|
-
return props.theme.
|
|
100
|
+
return props.theme.dataTextAlign;
|
|
101
|
+
}, function (props) {
|
|
102
|
+
return props.theme.dataTextLineHeight;
|
|
103
|
+
}, function (props) {
|
|
104
|
+
return "".concat(props.theme.dataPaddingTop, " ").concat(props.theme.dataPaddingRight, " ").concat(props.theme.dataPaddingBottom, " ").concat(props.theme.dataPaddingLeft);
|
|
96
105
|
}, function (props) {
|
|
97
106
|
return props.theme.headerBackgroundColor;
|
|
107
|
+
}, function (props) {
|
|
108
|
+
return props.theme.headerFontFamily;
|
|
109
|
+
}, function (props) {
|
|
110
|
+
return props.theme.headerFontSize;
|
|
111
|
+
}, function (props) {
|
|
112
|
+
return props.theme.headerFontStyle;
|
|
113
|
+
}, function (props) {
|
|
114
|
+
return props.theme.headerFontWeight;
|
|
98
115
|
}, function (props) {
|
|
99
116
|
return props.theme.headerFontColor;
|
|
117
|
+
}, function (props) {
|
|
118
|
+
return props.theme.headerFontTextTransform;
|
|
119
|
+
}, function (props) {
|
|
120
|
+
return props.theme.headerTextAlign;
|
|
121
|
+
}, function (props) {
|
|
122
|
+
return props.theme.headerTextLineHeight;
|
|
123
|
+
}, function (props) {
|
|
124
|
+
return "".concat(props.theme.headerPaddingTop, " ").concat(props.theme.headerPaddingRight, " ").concat(props.theme.headerPaddingBottom, " ").concat(props.theme.headerPaddingLeft);
|
|
125
|
+
}, function (props) {
|
|
126
|
+
return props.theme.headerBorderRadius;
|
|
127
|
+
}, function (props) {
|
|
128
|
+
return props.theme.headerBorderRadius;
|
|
100
129
|
});
|
|
101
130
|
|
|
102
|
-
var DxcTableTBody = _styledComponents["default"].tbody(_templateObject3());
|
|
103
|
-
|
|
104
131
|
var _default = DxcTable;
|
|
105
132
|
exports["default"] = _default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
2
|
+
type Margin = {
|
|
3
|
+
top?: Space;
|
|
4
|
+
bottom?: Space;
|
|
5
|
+
left?: Space;
|
|
6
|
+
right?: Space;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
type Props = {
|
|
10
|
+
margin?: Space | Margin;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export default function DxcTable(props: Props): JSX.Element;
|
package/dist/tabs/Tabs.js
CHANGED
|
@@ -11,13 +11,15 @@ exports["default"] = void 0;
|
|
|
11
11
|
|
|
12
12
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
13
|
|
|
14
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
|
-
|
|
16
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
17
15
|
|
|
16
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
17
|
+
|
|
18
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
19
|
+
|
|
18
20
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
19
21
|
|
|
20
|
-
var _react =
|
|
22
|
+
var _react = _interopRequireDefault(require("react"));
|
|
21
23
|
|
|
22
24
|
var _Tabs = _interopRequireDefault(require("@material-ui/core/Tabs"));
|
|
23
25
|
|
|
@@ -27,17 +29,75 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
|
27
29
|
|
|
28
30
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
29
31
|
|
|
30
|
-
require("../common/OpenSans.css");
|
|
31
|
-
|
|
32
32
|
var _variables = require("../common/variables.js");
|
|
33
33
|
|
|
34
|
-
var
|
|
34
|
+
var _Badge = _interopRequireDefault(require("../badge/Badge"));
|
|
35
35
|
|
|
36
|
-
var
|
|
36
|
+
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
37
37
|
|
|
38
|
-
function
|
|
38
|
+
function _templateObject9() {
|
|
39
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 22px;\n max-width: 22px;\n margin-bottom: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n align-items: center;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
|
|
40
|
+
|
|
41
|
+
_templateObject9 = function _templateObject9() {
|
|
42
|
+
return data;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
return data;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function _templateObject8() {
|
|
39
49
|
var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 22px;\n max-width: 22px;\n"]);
|
|
40
50
|
|
|
51
|
+
_templateObject8 = function _templateObject8() {
|
|
52
|
+
return data;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
return data;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function _templateObject7() {
|
|
59
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n .MuiTabs-root {\n background: white;\n min-height: ", ";\n\n .MuiTabs-scroller {\n .MuiTabs-flexContainer + span {\n z-index: 4;\n }\n }\n .MuiTab-root {\n text-transform: ", " !important;\n }\n .MuiButtonBase-root {\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n\n padding: ", ";\n height: ", ";\n min-width: 90px;\n max-width: 360px;\n min-height: ", ";\n\n &:hover {\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n font-weight: ", ";\n }\n &:not(.Mui-selected) {\n background-color: ", ";\n color: ", ";\n svg {\n color: ", ";\n }\n }\n &.Mui-selected {\n background-color: ", ";\n color: ", ";\n svg {\n color: ", ";\n }\n }\n &.Mui-disabled {\n cursor: not-allowed !important;\n pointer-events: all;\n color: ", ";\n font-style: ", ";\n svg {\n color: ", ";\n }\n }\n &:focus {\n outline: ", " auto 1px;\n }\n }\n .MuiTabs-indicator {\n background-color: ", ";\n height: ", ";\n }\n .MuiTabs-scrollButtons {\n min-width: ", ";\n width: ", ";\n padding: 0;\n }\n @media (max-width: 599.95px) {\n .MuiTabs-scrollButtonsDesktop {\n display: flex;\n }\n }\n }\n"]);
|
|
60
|
+
|
|
61
|
+
_templateObject7 = function _templateObject7() {
|
|
62
|
+
return data;
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
return data;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
function _templateObject6() {
|
|
69
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n left: 0px;\n bottom: 0;\n width: 100%;\n height: ", ";\n position: absolute;\n background-color: ", ";\n"]);
|
|
70
|
+
|
|
71
|
+
_templateObject6 = function _templateObject6() {
|
|
72
|
+
return data;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
return data;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function _templateObject5() {
|
|
79
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n margin-left: ", ";\n margin-right: ", ";\n"]);
|
|
80
|
+
|
|
81
|
+
_templateObject5 = function _templateObject5() {
|
|
82
|
+
return data;
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
return data;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
function _templateObject4() {
|
|
89
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n right: 0;\n top: ", ";\n width: 23px;\n height: 17px;\n"]);
|
|
90
|
+
|
|
91
|
+
_templateObject4 = function _templateObject4() {
|
|
92
|
+
return data;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
return data;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function _templateObject3() {
|
|
99
|
+
var data = (0, _taggedTemplateLiteral2["default"])([""]);
|
|
100
|
+
|
|
41
101
|
_templateObject3 = function _templateObject3() {
|
|
42
102
|
return data;
|
|
43
103
|
};
|
|
@@ -46,7 +106,7 @@ function _templateObject3() {
|
|
|
46
106
|
}
|
|
47
107
|
|
|
48
108
|
function _templateObject2() {
|
|
49
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
109
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n align-items: center;\n"]);
|
|
50
110
|
|
|
51
111
|
_templateObject2 = function _templateObject2() {
|
|
52
112
|
return data;
|
|
@@ -56,7 +116,7 @@ function _templateObject2() {
|
|
|
56
116
|
}
|
|
57
117
|
|
|
58
118
|
function _templateObject() {
|
|
59
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
119
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n"]);
|
|
60
120
|
|
|
61
121
|
_templateObject = function _templateObject() {
|
|
62
122
|
return data;
|
|
@@ -70,17 +130,22 @@ var DxcTabs = function DxcTabs(_ref) {
|
|
|
70
130
|
_ref$tabs = _ref.tabs,
|
|
71
131
|
tabs = _ref$tabs === void 0 ? [] : _ref$tabs,
|
|
72
132
|
onTabClick = _ref.onTabClick,
|
|
73
|
-
|
|
133
|
+
onTabHover = _ref.onTabHover,
|
|
134
|
+
margin = _ref.margin,
|
|
135
|
+
_ref$iconPosition = _ref.iconPosition,
|
|
136
|
+
iconPosition = _ref$iconPosition === void 0 ? "left" : _ref$iconPosition,
|
|
137
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
138
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
74
139
|
|
|
75
140
|
var _React$useState = _react["default"].useState(0),
|
|
76
141
|
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
|
|
77
142
|
innerActiveTabIndex = _React$useState2[0],
|
|
78
143
|
setInnerActiveTabIndex = _React$useState2[1];
|
|
79
144
|
|
|
80
|
-
var
|
|
81
|
-
var
|
|
82
|
-
return
|
|
83
|
-
}
|
|
145
|
+
var colorsTheme = (0, _useTheme["default"])();
|
|
146
|
+
var hasLabelAndIcon = tabs && tabs.filter(function (tab) {
|
|
147
|
+
return tab.label && tab.icon;
|
|
148
|
+
}).length > 0;
|
|
84
149
|
|
|
85
150
|
var handleChange = function handleChange(event, newValue) {
|
|
86
151
|
if (activeTabIndex == null) {
|
|
@@ -92,33 +157,90 @@ var DxcTabs = function DxcTabs(_ref) {
|
|
|
92
157
|
}
|
|
93
158
|
};
|
|
94
159
|
|
|
160
|
+
var getTabIndex = function getTabIndex(index, disabled) {
|
|
161
|
+
return (activeTabIndex === index || innerActiveTabIndex === index) && !disabled ? tabIndex : -1;
|
|
162
|
+
};
|
|
163
|
+
|
|
164
|
+
var getLabelForTab = function getLabelForTab(tab) {
|
|
165
|
+
return _react["default"].createElement(ParentLabelSpan, null, _react["default"].createElement(MainLabelContainer, {
|
|
166
|
+
hasBadge: tab.notificationNumber
|
|
167
|
+
}, _react["default"].createElement(TabLabelContainer, {
|
|
168
|
+
hasLabelAndIcon: hasLabelAndIcon,
|
|
169
|
+
iconPosition: iconPosition
|
|
170
|
+
}, tab.icon ? _react["default"].createElement(TabIconContainer, {
|
|
171
|
+
hasLabelAndIcon: hasLabelAndIcon,
|
|
172
|
+
iconPosition: iconPosition
|
|
173
|
+
}, (0, _typeof2["default"])(tab.icon) === "object" ? tab.icon : _react["default"].createElement(tab.icon)) : tab.iconSrc && _react["default"].createElement(TabIcon, {
|
|
174
|
+
src: tab.iconSrc
|
|
175
|
+
}), _react["default"].createElement(LabelTextContainer, null, tab.label))), tab.notificationNumber && tab.notificationNumber !== false && _react["default"].createElement(BadgeContainer, {
|
|
176
|
+
hasLabelAndIcon: hasLabelAndIcon,
|
|
177
|
+
iconPosition: iconPosition
|
|
178
|
+
}, _react["default"].createElement(_Badge["default"], {
|
|
179
|
+
notificationText: tab.notificationNumber > 99 ? "+99" : tab.notificationNumber
|
|
180
|
+
})));
|
|
181
|
+
};
|
|
182
|
+
|
|
95
183
|
return _react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
96
184
|
theme: colorsTheme.tabs
|
|
97
185
|
}, _react["default"].createElement(DxCTabs, {
|
|
98
|
-
margin: margin
|
|
186
|
+
margin: margin,
|
|
187
|
+
hasLabelAndIcon: hasLabelAndIcon,
|
|
188
|
+
iconPosition: iconPosition
|
|
99
189
|
}, _react["default"].createElement(Underline, null), _react["default"].createElement(_Tabs["default"], {
|
|
100
190
|
value: activeTabIndex != null ? activeTabIndex : innerActiveTabIndex,
|
|
101
191
|
onChange: handleChange,
|
|
102
192
|
variant: "scrollable",
|
|
103
|
-
scrollButtons: "
|
|
193
|
+
scrollButtons: "auto"
|
|
104
194
|
}, tabs.map(function (tab, i) {
|
|
195
|
+
var tabContent = _react["default"].forwardRef(function (props, ref) {
|
|
196
|
+
return _react["default"].createElement("div", (0, _extends2["default"])({
|
|
197
|
+
role: "button"
|
|
198
|
+
}, props, {
|
|
199
|
+
ref: ref
|
|
200
|
+
}));
|
|
201
|
+
});
|
|
202
|
+
|
|
105
203
|
return _react["default"].createElement(_Tab["default"], {
|
|
204
|
+
tabIndex: (activeTabIndex === i || innerActiveTabIndex === i) && !tab.isDisabled ? tabIndex : -1,
|
|
106
205
|
key: "tab".concat(i).concat(tab.label),
|
|
107
|
-
label: tab
|
|
108
|
-
icon: tab.iconSrc && _react["default"].createElement(TabIcon, {
|
|
109
|
-
src: tab.iconSrc
|
|
110
|
-
}),
|
|
206
|
+
label: getLabelForTab(tab),
|
|
111
207
|
disabled: tab.isDisabled,
|
|
112
|
-
disableRipple: true
|
|
208
|
+
disableRipple: true,
|
|
209
|
+
onMouseEnter: function onMouseEnter() {
|
|
210
|
+
onTabHover(i);
|
|
211
|
+
},
|
|
212
|
+
onMouseLeave: function onMouseLeave() {
|
|
213
|
+
onTabHover(null);
|
|
214
|
+
}
|
|
113
215
|
});
|
|
114
216
|
}))));
|
|
115
217
|
};
|
|
116
218
|
|
|
117
|
-
var
|
|
118
|
-
|
|
219
|
+
var ParentLabelSpan = _styledComponents["default"].div(_templateObject());
|
|
220
|
+
|
|
221
|
+
var TabLabelContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
|
|
222
|
+
return props.hasLabelAndIcon && props.iconPosition === "top" && "column" || "row";
|
|
223
|
+
});
|
|
224
|
+
|
|
225
|
+
var LabelTextContainer = _styledComponents["default"].div(_templateObject3());
|
|
226
|
+
|
|
227
|
+
var BadgeContainer = _styledComponents["default"].div(_templateObject4(), function (props) {
|
|
228
|
+
return props.hasLabelAndIcon && props.iconPosition === "top" && "0" || "5px";
|
|
229
|
+
});
|
|
230
|
+
|
|
231
|
+
var MainLabelContainer = _styledComponents["default"].div(_templateObject5(), function (props) {
|
|
232
|
+
return props.hasBadge && "35px" || "unset";
|
|
233
|
+
}, function (props) {
|
|
234
|
+
return props.hasBadge && "35px" || "unset";
|
|
235
|
+
});
|
|
236
|
+
|
|
237
|
+
var Underline = _styledComponents["default"].div(_templateObject6(), function (props) {
|
|
238
|
+
return props.theme.dividerThickness;
|
|
239
|
+
}, function (props) {
|
|
240
|
+
return props.theme.dividerColor;
|
|
119
241
|
});
|
|
120
242
|
|
|
121
|
-
var DxCTabs = _styledComponents["default"].div(
|
|
243
|
+
var DxCTabs = _styledComponents["default"].div(_templateObject7(), function (props) {
|
|
122
244
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
123
245
|
}, function (props) {
|
|
124
246
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
|
|
@@ -129,44 +251,93 @@ var DxCTabs = _styledComponents["default"].div(_templateObject2(), function (pro
|
|
|
129
251
|
}, function (props) {
|
|
130
252
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
131
253
|
}, function (props) {
|
|
132
|
-
return props.
|
|
254
|
+
return (!props.hasLabelAndIcon || props.hasLabelAndIcon && props.iconPosition !== "top") && "48px" || "72px";
|
|
133
255
|
}, function (props) {
|
|
134
|
-
return
|
|
256
|
+
return props.theme.fontTextTransform;
|
|
135
257
|
}, function (props) {
|
|
136
|
-
return
|
|
258
|
+
return props.theme.fontFamily;
|
|
259
|
+
}, function (props) {
|
|
260
|
+
return props.theme.fontSize;
|
|
261
|
+
}, function (props) {
|
|
262
|
+
return props.theme.fontStyle;
|
|
263
|
+
}, function (props) {
|
|
264
|
+
return props.theme.fontWeight;
|
|
265
|
+
}, function (props) {
|
|
266
|
+
return (!props.hasLabelAndIcon || props.hasLabelAndIcon && props.iconPosition !== "top") && "12px 16px" || "8px 16px";
|
|
267
|
+
}, function (props) {
|
|
268
|
+
return (!props.hasLabelAndIcon || props.hasLabelAndIcon && props.iconPosition !== "top") && "48px" || "72px";
|
|
269
|
+
}, function (props) {
|
|
270
|
+
return (!props.hasLabelAndIcon || props.hasLabelAndIcon && props.iconPosition !== "top") && "48px" || "72px";
|
|
271
|
+
}, function (props) {
|
|
272
|
+
return "".concat(props.theme.hoverBackgroundColor, " !important");
|
|
273
|
+
}, function (props) {
|
|
274
|
+
return "".concat(props.theme.pressedBackgroundColor, " !important");
|
|
275
|
+
}, function (props) {
|
|
276
|
+
return "".concat(props.theme.pressedFontWeight, " !important");
|
|
277
|
+
}, function (props) {
|
|
278
|
+
return props.theme.unselectedBackgroundColor;
|
|
279
|
+
}, function (props) {
|
|
280
|
+
return props.theme.unselectedFontColor;
|
|
281
|
+
}, function (props) {
|
|
282
|
+
return props.theme.unselectedIconColor;
|
|
137
283
|
}, function (props) {
|
|
138
284
|
return props.theme.selectedBackgroundColor;
|
|
139
285
|
}, function (props) {
|
|
140
286
|
return props.theme.selectedFontColor;
|
|
141
287
|
}, function (props) {
|
|
142
|
-
return props.theme.
|
|
288
|
+
return props.theme.selectedIconColor;
|
|
289
|
+
}, function (props) {
|
|
290
|
+
return props.theme.disabledFontColor;
|
|
291
|
+
}, function (props) {
|
|
292
|
+
return props.theme.disabledFontStyle;
|
|
293
|
+
}, function (props) {
|
|
294
|
+
return props.theme.disabledIconColor;
|
|
295
|
+
}, function (props) {
|
|
296
|
+
return props.theme.focusOutline;
|
|
143
297
|
}, function (props) {
|
|
144
|
-
return props.theme.
|
|
298
|
+
return props.theme.selectedUnderlineColor;
|
|
145
299
|
}, function (props) {
|
|
146
|
-
return props.theme.
|
|
300
|
+
return props.theme.selectedUnderlineThickness;
|
|
301
|
+
}, function (props) {
|
|
302
|
+
return props.theme.scrollButtonsWidth;
|
|
303
|
+
}, function (props) {
|
|
304
|
+
return props.theme.scrollButtonsWidth;
|
|
147
305
|
});
|
|
148
306
|
|
|
149
|
-
var TabIcon = _styledComponents["default"].img(
|
|
307
|
+
var TabIcon = _styledComponents["default"].img(_templateObject8());
|
|
308
|
+
|
|
309
|
+
var TabIconContainer = _styledComponents["default"].div(_templateObject9(), function (props) {
|
|
310
|
+
return props.hasLabelAndIcon && props.iconPosition === "top" && "8px" || "";
|
|
311
|
+
}, function (props) {
|
|
312
|
+
return props.hasLabelAndIcon && props.iconPosition === "left" && "12px" || "";
|
|
313
|
+
});
|
|
150
314
|
|
|
151
315
|
DxcTabs.propTypes = {
|
|
152
316
|
activeTabIndex: _propTypes["default"].number,
|
|
153
317
|
onTabClick: _propTypes["default"].func,
|
|
318
|
+
onTabHover: _propTypes["default"].func,
|
|
154
319
|
tabs: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
155
320
|
label: _propTypes["default"].string,
|
|
321
|
+
icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
|
|
156
322
|
iconSrc: _propTypes["default"].string,
|
|
157
|
-
isDisabled: _propTypes["default"]
|
|
323
|
+
isDisabled: _propTypes["default"].bool,
|
|
324
|
+
notificationNumber: _propTypes["default"].oneOfType([_propTypes["default"].bool, _propTypes["default"].string, _propTypes["default"].number])
|
|
158
325
|
})),
|
|
159
326
|
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
160
327
|
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
161
328
|
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
162
329
|
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
163
330
|
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
164
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
|
|
331
|
+
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
|
|
332
|
+
iconPosition: _propTypes["default"].oneOf(["top", "left"]),
|
|
333
|
+
tabIndex: _propTypes["default"].number
|
|
165
334
|
};
|
|
166
335
|
DxcTabs.defaultProps = {
|
|
167
336
|
activeTabIndex: null,
|
|
168
337
|
tabs: [],
|
|
169
|
-
onTabClick: function onTabClick() {}
|
|
338
|
+
onTabClick: function onTabClick() {},
|
|
339
|
+
onTabHover: function onTabHover() {},
|
|
340
|
+
iconPosition: "top"
|
|
170
341
|
};
|
|
171
342
|
var _default = DxcTabs;
|
|
172
343
|
exports["default"] = _default;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
2
|
+
type Margin = {
|
|
3
|
+
top?: Space;
|
|
4
|
+
bottom?: Space;
|
|
5
|
+
left?: Space;
|
|
6
|
+
right?: Space;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
type Props = {
|
|
10
|
+
activeTabIndex?: number;
|
|
11
|
+
tabs?: any;
|
|
12
|
+
onTabClick?: void;
|
|
13
|
+
onTabHover?: void;
|
|
14
|
+
iconPosition?: "top" | "left";
|
|
15
|
+
margin?: Space | Margin;
|
|
16
|
+
tabIndex?: number;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export default function DxcTabs(props: Props): JSX.Element;
|