@dxc-technology/halstack-react 0.0.0-fb21419 → 0.0.0-fb5dc94

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 (196) hide show
  1. package/README.md +27 -47
  2. package/dist/index.d.mts +6589 -0
  3. package/dist/index.d.ts +6589 -0
  4. package/dist/index.js +13742 -0
  5. package/dist/index.mjs +13684 -0
  6. package/package.json +76 -66
  7. package/babel.config.js +0 -8
  8. package/dist/BackgroundColorContext.js +0 -46
  9. package/dist/ThemeContext.js +0 -216
  10. package/dist/accordion/Accordion.js +0 -340
  11. package/dist/accordion/Accordion.stories.js +0 -207
  12. package/dist/accordion/readme.md +0 -96
  13. package/dist/accordion-group/AccordionGroup.js +0 -188
  14. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  15. package/dist/accordion-group/readme.md +0 -70
  16. package/dist/alert/Alert.js +0 -388
  17. package/dist/alert/Alert.stories.js +0 -158
  18. package/dist/alert/close.svg +0 -4
  19. package/dist/alert/error.svg +0 -4
  20. package/dist/alert/info.svg +0 -4
  21. package/dist/alert/readme.md +0 -43
  22. package/dist/alert/success.svg +0 -4
  23. package/dist/alert/warning.svg +0 -4
  24. package/dist/badge/Badge.js +0 -63
  25. package/dist/box/Box.js +0 -164
  26. package/dist/button/Button.js +0 -228
  27. package/dist/button/Button.stories.js +0 -224
  28. package/dist/button/readme.md +0 -93
  29. package/dist/card/Card.js +0 -256
  30. package/dist/checkbox/Checkbox.js +0 -291
  31. package/dist/checkbox/Checkbox.stories.js +0 -144
  32. package/dist/checkbox/readme.md +0 -116
  33. package/dist/chip/Chip.js +0 -263
  34. package/dist/common/OpenSans.css +0 -81
  35. package/dist/common/RequiredComponent.js +0 -40
  36. package/dist/common/fonts/OpenSans-Bold.ttf +0 -0
  37. package/dist/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  38. package/dist/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  39. package/dist/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  40. package/dist/common/fonts/OpenSans-Italic.ttf +0 -0
  41. package/dist/common/fonts/OpenSans-Light.ttf +0 -0
  42. package/dist/common/fonts/OpenSans-LightItalic.ttf +0 -0
  43. package/dist/common/fonts/OpenSans-Regular.ttf +0 -0
  44. package/dist/common/fonts/OpenSans-SemiBold.ttf +0 -0
  45. package/dist/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  46. package/dist/common/utils.js +0 -22
  47. package/dist/common/variables.js +0 -1160
  48. package/dist/date/Date.js +0 -391
  49. package/dist/date/Date.stories.js +0 -205
  50. package/dist/date/calendar.svg +0 -1
  51. package/dist/date/calendar_dark.svg +0 -1
  52. package/dist/date/readme.md +0 -73
  53. package/dist/dialog/Dialog.js +0 -236
  54. package/dist/dialog/Dialog.stories.js +0 -217
  55. package/dist/dialog/readme.md +0 -32
  56. package/dist/dropdown/Dropdown.js +0 -492
  57. package/dist/dropdown/Dropdown.stories.js +0 -249
  58. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  59. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  60. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  61. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  62. package/dist/dropdown/readme.md +0 -69
  63. package/dist/footer/Footer.js +0 -405
  64. package/dist/footer/Footer.stories.js +0 -94
  65. package/dist/footer/dxc_logo_wht.png +0 -0
  66. package/dist/footer/readme.md +0 -41
  67. package/dist/header/Header.js +0 -431
  68. package/dist/header/Header.stories.js +0 -176
  69. package/dist/header/close_icon.svg +0 -1
  70. package/dist/header/dxc_logo_black.png +0 -0
  71. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  72. package/dist/header/dxc_logo_white.png +0 -0
  73. package/dist/header/hamb_menu_black.svg +0 -1
  74. package/dist/header/hamb_menu_white.svg +0 -1
  75. package/dist/header/readme.md +0 -33
  76. package/dist/heading/Heading.js +0 -222
  77. package/dist/input-text/InputText.js +0 -669
  78. package/dist/input-text/InputText.stories.js +0 -209
  79. package/dist/input-text/error.svg +0 -1
  80. package/dist/input-text/readme.md +0 -91
  81. package/dist/layout/ApplicationLayout.js +0 -331
  82. package/dist/layout/facebook.svg +0 -45
  83. package/dist/layout/linkedin.svg +0 -50
  84. package/dist/layout/twitter.svg +0 -53
  85. package/dist/link/Link.js +0 -240
  86. package/dist/link/readme.md +0 -51
  87. package/dist/main.js +0 -311
  88. package/dist/paginator/Paginator.js +0 -283
  89. package/dist/paginator/images/next.svg +0 -3
  90. package/dist/paginator/images/nextPage.svg +0 -3
  91. package/dist/paginator/images/previous.svg +0 -3
  92. package/dist/paginator/images/previousPage.svg +0 -3
  93. package/dist/paginator/readme.md +0 -50
  94. package/dist/progress-bar/ProgressBar.js +0 -206
  95. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  96. package/dist/progress-bar/readme.md +0 -63
  97. package/dist/radio/Radio.js +0 -209
  98. package/dist/radio/Radio.stories.js +0 -166
  99. package/dist/radio/readme.md +0 -70
  100. package/dist/resultsetTable/ResultsetTable.js +0 -375
  101. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  102. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  103. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  104. package/dist/select/Select.js +0 -545
  105. package/dist/select/Select.stories.js +0 -235
  106. package/dist/select/readme.md +0 -72
  107. package/dist/sidenav/Sidenav.js +0 -183
  108. package/dist/slider/Slider.js +0 -315
  109. package/dist/slider/Slider.stories.js +0 -241
  110. package/dist/slider/readme.md +0 -64
  111. package/dist/spinner/Spinner.js +0 -214
  112. package/dist/spinner/Spinner.stories.js +0 -183
  113. package/dist/spinner/readme.md +0 -65
  114. package/dist/switch/Switch.js +0 -222
  115. package/dist/switch/Switch.stories.js +0 -134
  116. package/dist/switch/readme.md +0 -133
  117. package/dist/table/Table.js +0 -128
  118. package/dist/tabs/Tabs.js +0 -343
  119. package/dist/tabs/Tabs.stories.js +0 -130
  120. package/dist/tabs/readme.md +0 -78
  121. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  122. package/dist/tabs-for-sections/readme.md +0 -78
  123. package/dist/tag/Tag.js +0 -280
  124. package/dist/textarea/Textarea.js +0 -260
  125. package/dist/toggle/Toggle.js +0 -220
  126. package/dist/toggle/Toggle.stories.js +0 -297
  127. package/dist/toggle/readme.md +0 -80
  128. package/dist/toggle-group/ToggleGroup.js +0 -241
  129. package/dist/toggle-group/readme.md +0 -82
  130. package/dist/upload/Upload.js +0 -205
  131. package/dist/upload/Upload.stories.js +0 -72
  132. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  133. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  134. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  135. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -325
  136. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  137. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  138. package/dist/upload/file-upload/FileToUpload.js +0 -184
  139. package/dist/upload/file-upload/audio-icon.svg +0 -4
  140. package/dist/upload/file-upload/close.svg +0 -4
  141. package/dist/upload/file-upload/file-icon.svg +0 -4
  142. package/dist/upload/file-upload/video-icon.svg +0 -4
  143. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  144. package/dist/upload/readme.md +0 -37
  145. package/dist/upload/transaction/Transaction.js +0 -171
  146. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  147. package/dist/upload/transaction/audio-icon.svg +0 -4
  148. package/dist/upload/transaction/error-icon.svg +0 -4
  149. package/dist/upload/transaction/file-icon-err.svg +0 -4
  150. package/dist/upload/transaction/file-icon.svg +0 -4
  151. package/dist/upload/transaction/image-icon-err.svg +0 -4
  152. package/dist/upload/transaction/image-icon.svg +0 -4
  153. package/dist/upload/transaction/success-icon.svg +0 -4
  154. package/dist/upload/transaction/video-icon-err.svg +0 -4
  155. package/dist/upload/transaction/video-icon.svg +0 -4
  156. package/dist/upload/transactions/Transactions.js +0 -138
  157. package/dist/useTheme.js +0 -22
  158. package/dist/wizard/Wizard.js +0 -383
  159. package/dist/wizard/invalid_icon.svg +0 -6
  160. package/dist/wizard/valid_icon.svg +0 -6
  161. package/dist/wizard/validation-wrong.svg +0 -6
  162. package/test/Accordion.test.js +0 -33
  163. package/test/AccordionGroup.test.js +0 -125
  164. package/test/Alert.test.js +0 -53
  165. package/test/Box.test.js +0 -10
  166. package/test/Button.test.js +0 -18
  167. package/test/Card.test.js +0 -30
  168. package/test/Checkbox.test.js +0 -45
  169. package/test/Chip.test.js +0 -25
  170. package/test/Date.test.js +0 -393
  171. package/test/Dialog.test.js +0 -23
  172. package/test/Dropdown.test.js +0 -130
  173. package/test/Footer.test.js +0 -99
  174. package/test/Header.test.js +0 -39
  175. package/test/Heading.test.js +0 -35
  176. package/test/InputText.test.js +0 -240
  177. package/test/Link.test.js +0 -43
  178. package/test/Paginator.test.js +0 -177
  179. package/test/ProgressBar.test.js +0 -35
  180. package/test/Radio.test.js +0 -37
  181. package/test/ResultsetTable.test.js +0 -330
  182. package/test/Select.test.js +0 -192
  183. package/test/Sidenav.test.js +0 -45
  184. package/test/Slider.test.js +0 -82
  185. package/test/Spinner.test.js +0 -27
  186. package/test/Switch.test.js +0 -45
  187. package/test/Table.test.js +0 -36
  188. package/test/Tabs.test.js +0 -109
  189. package/test/TabsForSections.test.js +0 -34
  190. package/test/Tag.test.js +0 -32
  191. package/test/TextArea.test.js +0 -52
  192. package/test/ToggleGroup.test.js +0 -81
  193. package/test/Upload.test.js +0 -60
  194. package/test/Wizard.test.js +0 -130
  195. package/test/mocks/pngMock.js +0 -1
  196. 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,164 +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 font-size: ", ";\n font-family: ", ";\n font-weight: ", ";\n color: ", ";\n width: ", ";\n background-color: ", ";\n\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 props.theme.fontSize;
96
- }, function (props) {
97
- return props.theme.fontFamily;
98
- }, function (props) {
99
- return props.theme.fontWeight;
100
- }, function (props) {
101
- return props.theme.fontColor;
102
- }, function (props) {
103
- return calculateWidth(props.margin, props.size, props.padding);
104
- }, function (props) {
105
- return props.theme.backgroundColor;
106
- }, function (props) {
107
- 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);
108
- }, function (_ref3) {
109
- var margin = _ref3.margin;
110
- return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
111
- }, function (_ref4) {
112
- var margin = _ref4.margin;
113
- return margin && margin.top ? _variables.spaces[margin.top] : "";
114
- }, function (_ref5) {
115
- var margin = _ref5.margin;
116
- return margin && margin.right ? _variables.spaces[margin.right] : "";
117
- }, function (_ref6) {
118
- var margin = _ref6.margin;
119
- return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
120
- }, function (_ref7) {
121
- var margin = _ref7.margin;
122
- return margin && margin.left ? _variables.spaces[margin.left] : "";
123
- }, function (_ref8) {
124
- var padding = _ref8.padding;
125
- return padding && (0, _typeof2["default"])(padding) !== "object" ? _variables.spaces[padding] : "0px";
126
- }, function (_ref9) {
127
- var padding = _ref9.padding;
128
- return padding && padding.top ? _variables.spaces[padding.top] : "";
129
- }, function (_ref10) {
130
- var padding = _ref10.padding;
131
- return padding && padding.right ? _variables.spaces[padding.right] : "";
132
- }, function (_ref11) {
133
- var padding = _ref11.padding;
134
- return padding && padding.bottom ? _variables.spaces[padding.bottom] : "";
135
- }, function (_ref12) {
136
- var padding = _ref12.padding;
137
- return padding && padding.left ? _variables.spaces[padding.left] : "";
138
- });
139
-
140
- DxcBox.propTypes = {
141
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
142
- display: _propTypes["default"].string,
143
- shadowDepth: _propTypes["default"].oneOf([0, 1, 2]),
144
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
145
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
146
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
147
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
148
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
149
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
150
- padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
151
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
152
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
153
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
154
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
155
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
156
- };
157
- DxcBox.defaultProps = {
158
- shadowDepth: 2,
159
- display: "inline-flex",
160
- margin: null,
161
- padding: null
162
- };
163
- var _default = DxcBox;
164
- exports["default"] = _default;
@@ -1,228 +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 font-size: ", ";\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 .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n letter-spacing: ", ";\n \n box-shadow: none;\n font-size: ", ";\n font-weight: ", ";\n min-width: ", ";\n\n width: 100%;\n min-height: ", ";\n font-family: ", ";\n &:focus {\n outline: ", " auto 1px;\n }\n transition: color 0.16s ease-in-out, background-color 0.16s ease-in-out;\n transition: color 0.16s ease-in-out, border-color 0.16s ease-in-out;\n &:hover {\n transition: color 0.16s ease-in-out, background-color 0.16s ease-in-out;\n transition: color 0.16s ease-in-out, border-color 0.16s ease-in-out;\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: 20px;\n max-width: 20px;\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: 20px;\n max-width: 20px;\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: ", ";\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
- }, _react["default"].createElement(_core.Button, {
108
- disabled: disabled,
109
- type: type,
110
- disableRipple: true,
111
- "aria-disabled": disabled ? true : false,
112
- tabIndex: disabled ? -1 : tabIndex,
113
- onClick: function onClick() {
114
- if (_onClick) {
115
- _onClick();
116
- }
117
- }
118
- }, _react["default"].createElement(LabelContainer, null, label), icon ? _react["default"].createElement(IconContainer, {
119
- label: label,
120
- iconPosition: iconPosition
121
- }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ButtonIcon, {
122
- label: label,
123
- iconPosition: iconPosition,
124
- src: iconSrc
125
- }))));
126
- };
127
-
128
- var sizes = {
129
- small: "42px",
130
- medium: "120px",
131
- large: "240px",
132
- fillParent: "100%",
133
- fitContent: "unset"
134
- };
135
-
136
- var calculateWidth = function calculateWidth(margin, size) {
137
- if (size === "fillParent") {
138
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
139
- }
140
-
141
- return sizes[size];
142
- };
143
-
144
- var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
145
- return props.theme.labelFontLineHeight;
146
- }, function (props) {
147
- return props.theme.fontSize;
148
- }, function (props) {
149
- return props.theme.labelTextTranform;
150
- });
151
-
152
- var IconContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
153
- return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
154
- }, function (props) {
155
- return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
156
- });
157
-
158
- var ButtonIcon = _styledComponents["default"].img(_templateObject3(), function (props) {
159
- return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
160
- }, function (props) {
161
- return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
162
- });
163
-
164
- var DxCButton = _styledComponents["default"].div(_templateObject4(), function (props) {
165
- return props.theme.fontSizeBase;
166
- }, function (props) {
167
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
168
- }, function (props) {
169
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
170
- }, function (props) {
171
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
172
- }, function (props) {
173
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
174
- }, function (props) {
175
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
176
- }, function (props) {
177
- return calculateWidth(props.margin, props.size);
178
- }, function (props) {
179
- return props.disabled && "not-allowed" || "pointer";
180
- }, function (props) {
181
- return props.iconPosition === "after" && "row" || "row-reverse";
182
- }, function (props) {
183
- return props.theme.labelLetterSpacing;
184
- }, function (props) {
185
- return props.theme.fontSize;
186
- }, function (props) {
187
- return props.theme.fontWeight;
188
- }, function (props) {
189
- return props.size === "small" && "calc(100% - 22px)" || "unset";
190
- }, function (props) {
191
- return props.theme.minHeight;
192
- }, function (props) {
193
- return props.theme.fontFamily;
194
- }, function (props) {
195
- return props.theme.focusColor;
196
- }, function (props) {
197
- var mode = props.mode,
198
- backgroundType = props.backgroundType;
199
-
200
- if (mode === "primary") {
201
- return "\n border-radius: ".concat(props.theme.primaryBorderRadius, ";\n border-width: ").concat(props.theme.primaryBorderThickness, ";\n border-style: ").concat(props.theme.primaryBorderStyle, ";\n border-color: ").concat(backgroundType === "dark" ? props.theme.primaryBorderColorOnDark : props.theme.primaryBorderColor, ";\n font-family: ").concat(props.theme.primaryFontFamily, ";\n font-size: ").concat(props.theme.primaryFontSize, ";\n font-weight: ").concat(props.theme.primaryFontWeight, ";\n\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor, " !important;\n padding-right:").concat(props.size === "small" && "11px" || "30px", ";\n padding-left:").concat(props.size === "small" && "11px" || "30px", ";\n padding-top:").concat(props.theme.primaryPaddingTop, ";\n padding-bottom:").concat(props.theme.primaryPaddingBottom, ";\n &:hover{\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverFontColorOnDark : props.theme.primaryHoverFontColor, " !important; \n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor, " !important;\n \n }\n &:focus {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverFontColorOnDark : props.theme.primaryHoverFontColor, " !important;\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 ");
202
- } else if (mode === "secondary") {
203
- 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 padding-right:").concat(props.size === "small" && "9px" || "28px", ";\n padding-left:").concat(props.size === "small" && "9px" || "28px", ";\n padding-top:").concat(props.theme.secondaryPaddingTop, ";\n padding-bottom:").concat(props.theme.secondaryPaddingBottom, ";\n \n color: ").concat(backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor, " !important;\n \n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryOutlinedColorOnDark : props.theme.secondaryOutlinedColor, ";\n &:hover{\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverOutlinedColorOnDark : props.theme.secondaryHoverOutlinedColor, ";\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 }\n &:focus {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important; \n }\n &:disabled{\n cursor: not-allowed;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledOutlinedColorOnDark : props.theme.secondaryDisabledOutlinedColor, ";\n }\n .MuiButton-label {\n z-index: 5\n }\n\n ");
204
- } else if (mode === "text") {
205
- return "\n border-radius: ".concat(props.theme.textBorderRadius, ";\n border-width:").concat(props.theme.textBorderThickness, ";\n border-style:").concat(props.theme.textBorderStyle, ";\n border-color:").concat(backgroundType === "dark" ? props.theme.textBorderColorOnDark : props.theme.textBorderColor, ";\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 padding-right:").concat(props.size === "small" && "11px" || "30px", ";\n padding-left:").concat(props.size === "small" && "11px" || "30px", ";\n padding-top:").concat(props.theme.textPaddingTop, ";\n padding-bottom:").concat(props.theme.textPaddingBottom, ";\n\n &:hover{\n background-color: ").concat(backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.textHoverFontColorOnDark : props.theme.textHoverFontColor, " !important;\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.textHoverFontColorOnDark : props.theme.textHoverFontColor, " !important;\n }\n &:focus {\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 &: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 }\n ");
206
- }
207
- });
208
-
209
- DxcButton.propTypes = {
210
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
211
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
212
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
213
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
214
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
215
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
216
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
217
- label: _propTypes["default"].string,
218
- mode: _propTypes["default"].oneOf(["primary", "secondary", "text"]),
219
- disabled: _propTypes["default"].bool,
220
- iconPosition: _propTypes["default"].oneOf(["after", "before"]),
221
- onClick: _propTypes["default"].func,
222
- iconSrc: _propTypes["default"].string,
223
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
224
- type: _propTypes["default"].oneOf(["button", "reset", "submit"]),
225
- tabIndex: _propTypes["default"].number
226
- };
227
- var _default = DxcButton;
228
- exports["default"] = _default;