@dxc-technology/halstack-react 0.0.0-51a5c42 → 0.0.0-51b0da8

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 (184) hide show
  1. package/README.md +27 -47
  2. package/dist/index.d.mts +6520 -0
  3. package/dist/index.d.ts +6520 -0
  4. package/dist/index.js +14559 -0
  5. package/dist/index.mjs +14471 -0
  6. package/package.json +83 -68
  7. package/babel.config.js +0 -8
  8. package/dist/BackgroundColorContext.js +0 -46
  9. package/dist/ThemeContext.js +0 -248
  10. package/dist/V3Textarea/V3Textarea.js +0 -264
  11. package/dist/accordion/Accordion.js +0 -353
  12. package/dist/accordion-group/AccordionGroup.js +0 -186
  13. package/dist/alert/Alert.js +0 -403
  14. package/dist/alert/index.d.ts +0 -51
  15. package/dist/badge/Badge.js +0 -63
  16. package/dist/box/Box.js +0 -156
  17. package/dist/button/Button.js +0 -238
  18. package/dist/card/Card.js +0 -254
  19. package/dist/checkbox/Checkbox.js +0 -300
  20. package/dist/checkbox/Checkbox.stories.js +0 -144
  21. package/dist/checkbox/readme.md +0 -116
  22. package/dist/chip/Chip.js +0 -265
  23. package/dist/common/OpenSans.css +0 -81
  24. package/dist/common/RequiredComponent.js +0 -40
  25. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  26. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  27. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  28. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  29. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  30. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  31. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  32. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  33. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  34. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  35. package/dist/common/utils.js +0 -22
  36. package/dist/common/variables.js +0 -1569
  37. package/dist/date/Date.js +0 -379
  38. package/dist/date/Date.stories.js +0 -205
  39. package/dist/date/readme.md +0 -73
  40. package/dist/date-input/DateInput.js +0 -400
  41. package/dist/date-input/index.d.ts +0 -95
  42. package/dist/dialog/Dialog.js +0 -218
  43. package/dist/dropdown/Dropdown.js +0 -544
  44. package/dist/file-input/FileInput.js +0 -644
  45. package/dist/file-input/FileItem.js +0 -280
  46. package/dist/file-input/index.d.ts +0 -81
  47. package/dist/footer/Footer.js +0 -395
  48. package/dist/footer/dxc_logo.svg +0 -15
  49. package/dist/footer/readme.md +0 -41
  50. package/dist/header/Header.js +0 -434
  51. package/dist/header/Icons.js +0 -59
  52. package/dist/heading/Heading.js +0 -218
  53. package/dist/input-text/InputText.js +0 -707
  54. package/dist/input-text/error.svg +0 -1
  55. package/dist/input-text/readme.md +0 -91
  56. package/dist/layout/ApplicationLayout.js +0 -331
  57. package/dist/layout/facebook.svg +0 -45
  58. package/dist/layout/linkedin.svg +0 -50
  59. package/dist/layout/twitter.svg +0 -53
  60. package/dist/link/Link.js +0 -237
  61. package/dist/link/readme.md +0 -51
  62. package/dist/main.d.ts +0 -8
  63. package/dist/main.js +0 -367
  64. package/dist/new-select/NewSelect.js +0 -836
  65. package/dist/new-select/index.d.ts +0 -53
  66. package/dist/number-input/NumberInput.js +0 -136
  67. package/dist/number-input/NumberInputContext.js +0 -16
  68. package/dist/number-input/index.d.ts +0 -113
  69. package/dist/paginator/Paginator.js +0 -289
  70. package/dist/paginator/images/next.svg +0 -3
  71. package/dist/paginator/images/nextPage.svg +0 -3
  72. package/dist/paginator/images/previous.svg +0 -3
  73. package/dist/paginator/images/previousPage.svg +0 -3
  74. package/dist/paginator/readme.md +0 -50
  75. package/dist/password-input/PasswordInput.js +0 -198
  76. package/dist/password-input/index.d.ts +0 -94
  77. package/dist/progress-bar/ProgressBar.js +0 -242
  78. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  79. package/dist/progress-bar/readme.md +0 -63
  80. package/dist/radio/Radio.js +0 -209
  81. package/dist/radio/Radio.stories.js +0 -166
  82. package/dist/radio/readme.md +0 -70
  83. package/dist/resultsetTable/ResultsetTable.js +0 -358
  84. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  85. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  86. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  87. package/dist/select/Select.js +0 -549
  88. package/dist/sidenav/Sidenav.js +0 -179
  89. package/dist/slider/Slider.js +0 -394
  90. package/dist/slider/readme.md +0 -64
  91. package/dist/spinner/Spinner.js +0 -381
  92. package/dist/spinner/Spinner.stories.js +0 -183
  93. package/dist/spinner/readme.md +0 -65
  94. package/dist/switch/Switch.js +0 -222
  95. package/dist/switch/Switch.stories.js +0 -134
  96. package/dist/switch/readme.md +0 -133
  97. package/dist/table/Table.js +0 -132
  98. package/dist/tabs/Tabs.js +0 -343
  99. package/dist/tabs/Tabs.stories.js +0 -130
  100. package/dist/tabs/readme.md +0 -78
  101. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  102. package/dist/tabs-for-sections/readme.md +0 -78
  103. package/dist/tag/Tag.js +0 -282
  104. package/dist/text-input/TextInput.js +0 -971
  105. package/dist/text-input/index.d.ts +0 -135
  106. package/dist/textarea/Textarea.js +0 -369
  107. package/dist/textarea/index.d.ts +0 -117
  108. package/dist/toggle/Toggle.js +0 -220
  109. package/dist/toggle/Toggle.stories.js +0 -297
  110. package/dist/toggle/readme.md +0 -80
  111. package/dist/toggle-group/ToggleGroup.js +0 -327
  112. package/dist/upload/Upload.js +0 -205
  113. package/dist/upload/Upload.stories.js +0 -72
  114. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  115. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  116. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  117. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  118. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  119. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  120. package/dist/upload/file-upload/FileToUpload.js +0 -184
  121. package/dist/upload/file-upload/audio-icon.svg +0 -4
  122. package/dist/upload/file-upload/close.svg +0 -4
  123. package/dist/upload/file-upload/file-icon.svg +0 -4
  124. package/dist/upload/file-upload/video-icon.svg +0 -4
  125. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  126. package/dist/upload/readme.md +0 -37
  127. package/dist/upload/transaction/Transaction.js +0 -175
  128. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  129. package/dist/upload/transaction/audio-icon.svg +0 -4
  130. package/dist/upload/transaction/error-icon.svg +0 -4
  131. package/dist/upload/transaction/file-icon-err.svg +0 -4
  132. package/dist/upload/transaction/file-icon.svg +0 -4
  133. package/dist/upload/transaction/image-icon-err.svg +0 -4
  134. package/dist/upload/transaction/image-icon.svg +0 -4
  135. package/dist/upload/transaction/success-icon.svg +0 -4
  136. package/dist/upload/transaction/video-icon-err.svg +0 -4
  137. package/dist/upload/transaction/video-icon.svg +0 -4
  138. package/dist/upload/transactions/Transactions.js +0 -138
  139. package/dist/useTheme.js +0 -22
  140. package/dist/wizard/Wizard.js +0 -411
  141. package/dist/wizard/invalid_icon.svg +0 -5
  142. package/dist/wizard/valid_icon.svg +0 -5
  143. package/dist/wizard/validation-wrong.svg +0 -6
  144. package/test/Accordion.test.js +0 -33
  145. package/test/AccordionGroup.test.js +0 -125
  146. package/test/Alert.test.js +0 -53
  147. package/test/Box.test.js +0 -10
  148. package/test/Button.test.js +0 -18
  149. package/test/Card.test.js +0 -30
  150. package/test/Checkbox.test.js +0 -45
  151. package/test/Chip.test.js +0 -25
  152. package/test/Date.test.js +0 -397
  153. package/test/DateInput.test.js +0 -242
  154. package/test/Dialog.test.js +0 -23
  155. package/test/Dropdown.test.js +0 -145
  156. package/test/FileInput.test.js +0 -201
  157. package/test/Footer.test.js +0 -99
  158. package/test/Header.test.js +0 -34
  159. package/test/Heading.test.js +0 -35
  160. package/test/InputText.test.js +0 -248
  161. package/test/Link.test.js +0 -43
  162. package/test/NumberInput.test.js +0 -259
  163. package/test/Paginator.test.js +0 -177
  164. package/test/PasswordInput.test.js +0 -83
  165. package/test/ProgressBar.test.js +0 -35
  166. package/test/Radio.test.js +0 -37
  167. package/test/ResultsetTable.test.js +0 -329
  168. package/test/Select.test.js +0 -212
  169. package/test/Sidenav.test.js +0 -45
  170. package/test/Slider.test.js +0 -82
  171. package/test/Spinner.test.js +0 -32
  172. package/test/Switch.test.js +0 -45
  173. package/test/Table.test.js +0 -36
  174. package/test/Tabs.test.js +0 -109
  175. package/test/TabsForSections.test.js +0 -34
  176. package/test/Tag.test.js +0 -32
  177. package/test/TextInput.test.js +0 -732
  178. package/test/Textarea.test.js +0 -193
  179. package/test/ToggleGroup.test.js +0 -85
  180. package/test/Upload.test.js +0 -60
  181. package/test/V3TextArea.test.js +0 -51
  182. package/test/Wizard.test.js +0 -130
  183. package/test/mocks/pngMock.js +0 -1
  184. package/test/mocks/svgMock.js +0 -1
@@ -1,63 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
-
18
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
19
-
20
- function _templateObject() {
21
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n display: flex;\n padding-bottom: 1px;\n padding-right: 1px;\n flex-wrap: wrap;\n box-sizing: border-box;\n align-items: center;\n line-height: 1;\n align-content: center;\n flex-direction: row;\n justify-content: center;\n"]);
22
-
23
- _templateObject = function _templateObject() {
24
- return data;
25
- };
26
-
27
- return data;
28
- }
29
-
30
- var DxcBadge = function DxcBadge(_ref) {
31
- var notificationText = _ref.notificationText;
32
- var colorsTheme = (0, _useTheme["default"])();
33
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
34
- theme: colorsTheme.tabs
35
- }, _react["default"].createElement(StyledDxcBadge, {
36
- notificationText: notificationText
37
- }, _react["default"].createElement("span", null, notificationText)));
38
- };
39
-
40
- var StyledDxcBadge = _styledComponents["default"].div(_templateObject(), function (props) {
41
- return props.theme.badgeBackgroundColor;
42
- }, function (props) {
43
- return props.theme.badgeFontFamily;
44
- }, function (props) {
45
- return props.theme.badgeFontSize;
46
- }, function (props) {
47
- return props.theme.badgeFontStyle;
48
- }, function (props) {
49
- return props.theme.badgeFontWeight;
50
- }, function (props) {
51
- return props.theme.badgeFontColor;
52
- }, function (props) {
53
- return props.theme.badgeLetterSpacing;
54
- }, function (props) {
55
- return props.notificationText === true ? props.theme.badgeWidth : props.theme.badgeWidthWithNotificationNumber;
56
- }, function (props) {
57
- return props.notificationText === true ? props.theme.badgeHeight : props.theme.badgeHeightWithNotificationNumber;
58
- }, function (props) {
59
- return props.notificationText === true ? props.theme.badgeRadius : props.theme.badgeRadiusWithNotificationNumber;
60
- });
61
-
62
- var _default = DxcBadge;
63
- exports["default"] = _default;
package/dist/box/Box.js DELETED
@@ -1,156 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
- var _react = _interopRequireDefault(require("react"));
19
-
20
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _propTypes = _interopRequireDefault(require("prop-types"));
23
-
24
- var _variables = require("../common/variables.js");
25
-
26
- var _utils = require("../common/utils.js");
27
-
28
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
-
30
- var _BackgroundColorContext = require("../BackgroundColorContext.js");
31
-
32
- function _templateObject() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n letter-spacing: ", ";\n overflow: hidden;\n width: ", ";\n background-color: ", ";\n box-shadow: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"]);
34
-
35
- _templateObject = function _templateObject() {
36
- return data;
37
- };
38
-
39
- return data;
40
- }
41
-
42
- var DxcBox = function DxcBox(_ref) {
43
- var shadowDepth = _ref.shadowDepth,
44
- margin = _ref.margin,
45
- padding = _ref.padding,
46
- _ref$display = _ref.display,
47
- display = _ref$display === void 0 ? "inline-flex" : _ref$display,
48
- children = _ref.children,
49
- _ref$size = _ref.size,
50
- size = _ref$size === void 0 ? "fitContent" : _ref$size;
51
- var colorsTheme = (0, _useTheme["default"])();
52
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
53
- theme: colorsTheme.box
54
- }, _react["default"].createElement(StyledDxcBox, {
55
- shadowDepth: shadowDepth,
56
- display: display,
57
- margin: margin,
58
- padding: padding,
59
- size: size
60
- }, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
61
- color: colorsTheme.box.backgroundColor
62
- }, children)));
63
- };
64
-
65
- var sizes = {
66
- small: "48px",
67
- medium: "240px",
68
- large: "480px",
69
- fillParent: "100%",
70
- fitContent: "unset"
71
- };
72
-
73
- var calculateWidth = function calculateWidth(margin, size, padding) {
74
- if (size === "fillParent") {
75
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), " -\n ").concat((0, _utils.getMargin)(padding, "left"), " - ").concat((0, _utils.getMargin)(padding, "right"), ")");
76
- }
77
-
78
- return sizes[size];
79
- };
80
-
81
- var StyledDxcBox = _styledComponents["default"].div(_templateObject(), function (_ref2) {
82
- var display = _ref2.display;
83
- return display;
84
- }, function (props) {
85
- return props.theme.borderRadius;
86
- }, function (props) {
87
- return props.theme.borderThickness;
88
- }, function (props) {
89
- return props.theme.borderStyle;
90
- }, function (props) {
91
- return props.theme.borderColor;
92
- }, function (props) {
93
- return props.theme.letterSpacing;
94
- }, function (props) {
95
- return calculateWidth(props.margin, props.size, props.padding);
96
- }, function (props) {
97
- return props.theme.backgroundColor;
98
- }, function (props) {
99
- return props.shadowDepth === 1 ? "".concat(props.theme.oneShadowDepthShadowOffsetX, " ").concat(props.theme.oneShadowDepthShadowOffsetY, " ").concat(props.theme.oneShadowDepthShadowBlur, " ").concat(props.theme.oneShadowDepthShadowSpread, " ").concat(props.theme.oneShadowDepthShadowColor) : props.shadowDepth === 2 ? "".concat(props.theme.twoShadowDepthShadowOffsetX, " ").concat(props.theme.twoShadowDepthShadowOffsetY, " ").concat(props.theme.twoShadowDepthShadowBlur, " ").concat(props.theme.twoShadowDepthShadowSpread, " ").concat(props.theme.twoShadowDepthShadowColor) : "".concat(props.theme.noneShadowDepthShadowOffsetX, " ").concat(props.theme.noneShadowDepthShadowOffsetY, " ").concat(props.theme.noneShadowDepthShadowBlur, " ").concat(props.theme.noneShadowDepthShadowSpread, " ").concat(props.theme.noneShadowDepthShadowColor);
100
- }, function (_ref3) {
101
- var margin = _ref3.margin;
102
- return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
103
- }, function (_ref4) {
104
- var margin = _ref4.margin;
105
- return margin && margin.top ? _variables.spaces[margin.top] : "";
106
- }, function (_ref5) {
107
- var margin = _ref5.margin;
108
- return margin && margin.right ? _variables.spaces[margin.right] : "";
109
- }, function (_ref6) {
110
- var margin = _ref6.margin;
111
- return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
112
- }, function (_ref7) {
113
- var margin = _ref7.margin;
114
- return margin && margin.left ? _variables.spaces[margin.left] : "";
115
- }, function (_ref8) {
116
- var padding = _ref8.padding;
117
- return padding && (0, _typeof2["default"])(padding) !== "object" ? _variables.spaces[padding] : "0px";
118
- }, function (_ref9) {
119
- var padding = _ref9.padding;
120
- return padding && padding.top ? _variables.spaces[padding.top] : "";
121
- }, function (_ref10) {
122
- var padding = _ref10.padding;
123
- return padding && padding.right ? _variables.spaces[padding.right] : "";
124
- }, function (_ref11) {
125
- var padding = _ref11.padding;
126
- return padding && padding.bottom ? _variables.spaces[padding.bottom] : "";
127
- }, function (_ref12) {
128
- var padding = _ref12.padding;
129
- return padding && padding.left ? _variables.spaces[padding.left] : "";
130
- });
131
-
132
- DxcBox.propTypes = {
133
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
134
- display: _propTypes["default"].string,
135
- shadowDepth: _propTypes["default"].oneOf([0, 1, 2]),
136
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
137
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
138
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
139
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
140
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
141
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
142
- padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
143
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
144
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
145
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
146
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
147
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
148
- };
149
- DxcBox.defaultProps = {
150
- shadowDepth: 2,
151
- display: "inline-flex",
152
- margin: null,
153
- padding: null
154
- };
155
- var _default = DxcBox;
156
- exports["default"] = _default;
@@ -1,238 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
- var _react = _interopRequireWildcard(require("react"));
19
-
20
- var _core = require("@material-ui/core");
21
-
22
- var _propTypes = _interopRequireDefault(require("prop-types"));
23
-
24
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
-
26
- var _variables = require("../common/variables.js");
27
-
28
- var _utils = require("../common/utils.js");
29
-
30
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
-
32
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
33
-
34
- function _templateObject4() {
35
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n display: inline-block;\n width: ", ";\n cursor: ", ";\n\n .MuiButtonBase-root {\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n\n .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n min-width: ", ";\n width: 100%;\n height: 40px;\n transition: none !important;\n\n &:focus {\n border-color: transparent;\n box-shadow: 0 0 0 2px\n ", ";\n }\n\n ", "\n }\n"]);
36
-
37
- _templateObject4 = function _templateObject4() {
38
- return data;
39
- };
40
-
41
- return data;
42
- }
43
-
44
- function _templateObject3() {
45
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"]);
46
-
47
- _templateObject3 = function _templateObject3() {
48
- return data;
49
- };
50
-
51
- return data;
52
- }
53
-
54
- function _templateObject2() {
55
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
56
-
57
- _templateObject2 = function _templateObject2() {
58
- return data;
59
- };
60
-
61
- return data;
62
- }
63
-
64
- function _templateObject() {
65
- var data = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n text-transform: none;\n margin-right: ", ";\n margin-left: ", ";\n"]);
66
-
67
- _templateObject = function _templateObject() {
68
- return data;
69
- };
70
-
71
- return data;
72
- }
73
-
74
- var DxcButton = function DxcButton(_ref) {
75
- var _ref$label = _ref.label,
76
- label = _ref$label === void 0 ? "" : _ref$label,
77
- _ref$mode = _ref.mode,
78
- mode = _ref$mode === void 0 ? "primary" : _ref$mode,
79
- _ref$disabled = _ref.disabled,
80
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
81
- _ref$iconPosition = _ref.iconPosition,
82
- iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
83
- _ref$type = _ref.type,
84
- type = _ref$type === void 0 ? "button" : _ref$type,
85
- _ref$iconSrc = _ref.iconSrc,
86
- iconSrc = _ref$iconSrc === void 0 ? "" : _ref$iconSrc,
87
- icon = _ref.icon,
88
- _ref$onClick = _ref.onClick,
89
- _onClick = _ref$onClick === void 0 ? "" : _ref$onClick,
90
- margin = _ref.margin,
91
- size = _ref.size,
92
- _ref$tabIndex = _ref.tabIndex,
93
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
94
-
95
- var colorsTheme = (0, _useTheme["default"])();
96
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
97
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
98
- theme: colorsTheme.button
99
- }, _react["default"].createElement(DxCButton, {
100
- type: type,
101
- margin: margin,
102
- mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
103
- disabled: disabled,
104
- iconPosition: iconPosition,
105
- size: size,
106
- backgroundType: backgroundType,
107
- icon: icon
108
- }, _react["default"].createElement(_core.Button, {
109
- disabled: disabled,
110
- type: type,
111
- disableRipple: true,
112
- "aria-disabled": disabled ? true : false,
113
- tabIndex: disabled ? -1 : tabIndex,
114
- onClick: function onClick() {
115
- if (_onClick) {
116
- _onClick();
117
- }
118
- }
119
- }, label && _react["default"].createElement(LabelContainer, {
120
- icon: icon,
121
- iconPosition: iconPosition
122
- }, label), icon ? _react["default"].createElement(IconContainer, {
123
- label: label,
124
- iconPosition: iconPosition
125
- }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ButtonIcon, {
126
- label: label,
127
- iconPosition: iconPosition,
128
- src: iconSrc
129
- }))));
130
- };
131
-
132
- var sizes = {
133
- small: "42px",
134
- medium: "120px",
135
- large: "240px",
136
- fillParent: "100%",
137
- fitContent: "unset"
138
- };
139
-
140
- var calculateWidth = function calculateWidth(margin, size) {
141
- if (size === "fillParent") {
142
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
143
- }
144
-
145
- return sizes[size];
146
- };
147
-
148
- var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
149
- return props.theme.labelFontLineHeight;
150
- }, function (props) {
151
- return props.theme.fontSize;
152
- }, function (props) {
153
- return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
154
- }, function (props) {
155
- return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
156
- });
157
-
158
- var IconContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
159
- return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
160
- }, function (props) {
161
- return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
162
- });
163
-
164
- var ButtonIcon = _styledComponents["default"].img(_templateObject3(), function (props) {
165
- return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
166
- }, function (props) {
167
- return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
168
- });
169
-
170
- var DxCButton = _styledComponents["default"].div(_templateObject4(), function (props) {
171
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
172
- }, function (props) {
173
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
174
- }, function (props) {
175
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
176
- }, function (props) {
177
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
178
- }, function (props) {
179
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
180
- }, function (props) {
181
- return calculateWidth(props.margin, props.size);
182
- }, function (props) {
183
- return props.disabled && "not-allowed" || "pointer";
184
- }, function (props) {
185
- return props.theme.paddingLeft;
186
- }, function (props) {
187
- return props.theme.paddingRight;
188
- }, function (props) {
189
- return props.theme.paddingTop;
190
- }, function (props) {
191
- return props.theme.paddingBottom;
192
- }, function (props) {
193
- return props.iconPosition === "after" && "row" || "row-reverse";
194
- }, function (props) {
195
- return props.theme.fontFamily;
196
- }, function (props) {
197
- return props.theme.fontSize;
198
- }, function (props) {
199
- return props.theme.fontWeight;
200
- }, function (props) {
201
- return props.theme.labelLetterSpacing;
202
- }, function (props) {
203
- return props.size === "small" && "calc(100% - 22px)" || "unset";
204
- }, function (props) {
205
- return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
206
- }, function (props) {
207
- var mode = props.mode,
208
- backgroundType = props.backgroundType;
209
-
210
- if (mode === "primary") {
211
- return "\n border-radius: ".concat(props.theme.primaryBorderRadius, ";\n border-width: ").concat(props.theme.primaryBorderThickness, ";\n border-style: ").concat(props.theme.primaryBorderStyle, ";\n font-family: ").concat(props.theme.primaryFontFamily, ";\n font-size: ").concat(props.theme.primaryFontSize, ";\n font-weight: ").concat(props.theme.primaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor, ";\n color: ").concat(backgroundType && backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled { \n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledBackgroundColorOnDark : props.theme.primaryDisabledBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledFontColorOnDark : props.theme.primaryDisabledFontColor, "!important; \n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
212
- } else if (mode === "secondary") {
213
- return "\n border-radius: ".concat(props.theme.secondaryBorderRadius, ";\n border-width: ").concat(props.theme.secondaryBorderThickness, ";\n border-style: ").concat(props.theme.secondaryBorderStyle, ";\n font-family: ").concat(props.theme.secondaryFontFamily, ";\n font-size: ").concat(props.theme.secondaryFontSize, ";\n font-weight: ").concat(props.theme.secondaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBorderColorOnDark : props.theme.secondaryBorderColor, ";\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverBackgroundColorOnDark : props.theme.secondaryHoverBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryActiveBackgroundColorOnDark : props.theme.secondaryActiveBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBackgroundColorOnDark : props.theme.secondaryDisabledBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBorderColorOnDark : props.theme.secondaryDisabledBorderColor, ";\n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
214
- } else if (mode === "text") {
215
- return "\n border-radius: ".concat(props.theme.textBorderRadius, ";\n border-width: ").concat(props.theme.textBorderThickness, ";\n border-style: ").concat(props.theme.textBorderStyle, ";\n font-family: ").concat(props.theme.textFontFamily, ";\n font-size: ").concat(props.theme.textFontSize, ";\n font-weight: ").concat(props.theme.textFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.textBackgroundColorOnDark : props.theme.textBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.textFontColorOnDark : props.theme.textFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor:not-allowed;\n color: ").concat(backgroundType === "dark" ? props.theme.textDisabledFontColorOnDark : props.theme.textDisabledFontColor, " !important;\n background-color: ").concat(backgroundType === "dark" ? props.theme.textDisabledBackgroundColorOnDark : props.theme.textDisabledBackgroundColor, ";\n }\n ");
216
- }
217
- });
218
-
219
- DxcButton.propTypes = {
220
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
221
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
222
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
223
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
224
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
225
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
226
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
227
- label: _propTypes["default"].string,
228
- mode: _propTypes["default"].oneOf(["primary", "secondary", "text"]),
229
- disabled: _propTypes["default"].bool,
230
- iconPosition: _propTypes["default"].oneOf(["after", "before"]),
231
- onClick: _propTypes["default"].func,
232
- iconSrc: _propTypes["default"].string,
233
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
234
- type: _propTypes["default"].oneOf(["button", "reset", "submit"]),
235
- tabIndex: _propTypes["default"].number
236
- };
237
- var _default = DxcButton;
238
- exports["default"] = _default;