@dxc-technology/halstack-react 0.0.0-faa7105 → 0.0.0-fb9047c

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 (288) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +260 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.js +289 -0
  8. package/accordion/index.d.ts +28 -0
  9. package/accordion-group/AccordionGroup.js +184 -0
  10. package/accordion-group/index.d.ts +16 -0
  11. package/alert/Alert.js +309 -0
  12. package/alert/index.d.ts +51 -0
  13. package/badge/Badge.js +59 -0
  14. package/{dist/box → box}/Box.js +38 -34
  15. package/box/index.d.ts +25 -0
  16. package/button/Button.d.ts +4 -0
  17. package/button/Button.js +182 -0
  18. package/button/Button.stories.tsx +306 -0
  19. package/button/types.d.ts +57 -0
  20. package/button/types.js +5 -0
  21. package/card/Card.js +200 -0
  22. package/card/index.d.ts +22 -0
  23. package/checkbox/Checkbox.d.ts +4 -0
  24. package/checkbox/Checkbox.js +253 -0
  25. package/checkbox/types.d.ts +61 -0
  26. package/checkbox/types.js +5 -0
  27. package/chip/Chip.js +221 -0
  28. package/chip/index.d.ts +22 -0
  29. package/{dist/common → common}/OpenSans.css +0 -0
  30. package/{dist/common → common}/RequiredComponent.js +5 -19
  31. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  32. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  33. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  34. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  35. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  36. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  37. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  38. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  39. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  40. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  41. package/common/utils.js +22 -0
  42. package/common/variables.js +1569 -0
  43. package/{dist/date → date}/Date.js +87 -71
  44. package/date/index.d.ts +27 -0
  45. package/date-input/DateInput.js +396 -0
  46. package/date-input/index.d.ts +95 -0
  47. package/dialog/Dialog.js +184 -0
  48. package/dialog/index.d.ts +18 -0
  49. package/dropdown/Dropdown.js +450 -0
  50. package/dropdown/index.d.ts +26 -0
  51. package/file-input/FileInput.js +532 -0
  52. package/file-input/FileItem.js +193 -0
  53. package/file-input/index.d.ts +81 -0
  54. package/footer/Footer.js +297 -0
  55. package/footer/Icons.js +77 -0
  56. package/footer/index.d.ts +25 -0
  57. package/header/Header.js +326 -0
  58. package/header/Icons.js +59 -0
  59. package/header/index.d.ts +25 -0
  60. package/heading/Heading.js +176 -0
  61. package/heading/index.d.ts +17 -0
  62. package/input-text/Icons.js +22 -0
  63. package/input-text/InputText.js +611 -0
  64. package/input-text/index.d.ts +36 -0
  65. package/layout/ApplicationLayout.js +235 -0
  66. package/layout/Icons.js +55 -0
  67. package/link/Link.js +183 -0
  68. package/link/index.d.ts +23 -0
  69. package/main.d.ts +44 -0
  70. package/{dist/main.js → main.js} +143 -43
  71. package/number-input/NumberInput.js +128 -0
  72. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +3 -2
  73. package/number-input/index.d.ts +113 -0
  74. package/package.json +39 -24
  75. package/paginator/Icons.js +66 -0
  76. package/paginator/Paginator.d.ts +4 -0
  77. package/paginator/Paginator.js +198 -0
  78. package/paginator/types.d.ts +38 -0
  79. package/paginator/types.js +5 -0
  80. package/password-input/PasswordInput.js +199 -0
  81. package/password-input/index.d.ts +94 -0
  82. package/progress-bar/ProgressBar.js +188 -0
  83. package/progress-bar/index.d.ts +18 -0
  84. package/{dist/radio → radio}/Radio.js +48 -40
  85. package/radio/index.d.ts +23 -0
  86. package/resultsetTable/ResultsetTable.js +274 -0
  87. package/resultsetTable/index.d.ts +19 -0
  88. package/select/Select.js +865 -0
  89. package/select/index.d.ts +131 -0
  90. package/sidenav/Sidenav.js +145 -0
  91. package/sidenav/index.d.ts +13 -0
  92. package/slider/Slider.js +340 -0
  93. package/slider/index.d.ts +29 -0
  94. package/spinner/Spinner.js +267 -0
  95. package/spinner/index.d.ts +17 -0
  96. package/switch/Switch.js +208 -0
  97. package/switch/index.d.ts +24 -0
  98. package/table/Table.js +118 -0
  99. package/table/index.d.ts +13 -0
  100. package/tabs/Tabs.js +259 -0
  101. package/tabs/index.d.ts +19 -0
  102. package/tag/Tag.js +208 -0
  103. package/tag/index.d.ts +24 -0
  104. package/text-input/TextInput.js +825 -0
  105. package/text-input/index.d.ts +135 -0
  106. package/textarea/Textarea.js +317 -0
  107. package/textarea/index.d.ts +117 -0
  108. package/{dist/toggle → toggle}/Toggle.js +30 -67
  109. package/toggle/index.d.ts +21 -0
  110. package/toggle-group/ToggleGroup.js +243 -0
  111. package/toggle-group/index.d.ts +21 -0
  112. package/{dist/upload → upload}/Upload.js +23 -22
  113. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  114. package/upload/buttons-upload/Icons.js +40 -0
  115. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  116. package/upload/dragAndDropArea/Icons.js +39 -0
  117. package/upload/file-upload/FileToUpload.js +115 -0
  118. package/upload/file-upload/Icons.js +66 -0
  119. package/upload/files-upload/FilesToUpload.js +109 -0
  120. package/upload/index.d.ts +15 -0
  121. package/upload/transaction/Icons.js +160 -0
  122. package/upload/transaction/Transaction.js +104 -0
  123. package/upload/transactions/Transactions.js +94 -0
  124. package/useTheme.js +22 -0
  125. package/wizard/Icons.js +65 -0
  126. package/wizard/Wizard.js +271 -0
  127. package/wizard/index.d.ts +18 -0
  128. package/README.md +0 -66
  129. package/babel.config.js +0 -4
  130. package/dist/accordion/Accordion.js +0 -242
  131. package/dist/accordion/Accordion.stories.js +0 -207
  132. package/dist/accordion/readme.md +0 -96
  133. package/dist/alert/Alert.js +0 -304
  134. package/dist/alert/Alert.stories.js +0 -158
  135. package/dist/alert/close.svg +0 -4
  136. package/dist/alert/error.svg +0 -4
  137. package/dist/alert/info.svg +0 -4
  138. package/dist/alert/readme.md +0 -43
  139. package/dist/alert/success.svg +0 -4
  140. package/dist/alert/warning.svg +0 -4
  141. package/dist/button/Button.js +0 -181
  142. package/dist/button/Button.stories.js +0 -224
  143. package/dist/button/readme.md +0 -93
  144. package/dist/card/Card.js +0 -217
  145. package/dist/checkbox/Checkbox.js +0 -224
  146. package/dist/checkbox/Checkbox.stories.js +0 -144
  147. package/dist/checkbox/readme.md +0 -116
  148. package/dist/chip/Chip.js +0 -173
  149. package/dist/common/services/example-service.js +0 -10
  150. package/dist/common/services/example-service.test.js +0 -12
  151. package/dist/common/utils.js +0 -42
  152. package/dist/common/variables.js +0 -400
  153. package/dist/date/Date.stories.js +0 -205
  154. package/dist/date/calendar.svg +0 -1
  155. package/dist/date/calendar_dark.svg +0 -1
  156. package/dist/date/readme.md +0 -73
  157. package/dist/dialog/Dialog.js +0 -197
  158. package/dist/dialog/Dialog.stories.js +0 -217
  159. package/dist/dialog/readme.md +0 -32
  160. package/dist/dropdown/Dropdown.js +0 -424
  161. package/dist/dropdown/Dropdown.stories.js +0 -249
  162. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  163. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  164. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  165. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  166. package/dist/dropdown/readme.md +0 -69
  167. package/dist/footer/Footer.js +0 -346
  168. package/dist/footer/Footer.stories.js +0 -94
  169. package/dist/footer/dxc_logo_wht.png +0 -0
  170. package/dist/footer/readme.md +0 -41
  171. package/dist/header/Header.js +0 -372
  172. package/dist/header/Header.stories.js +0 -176
  173. package/dist/header/close_icon.svg +0 -1
  174. package/dist/header/dxc_logo_black.png +0 -0
  175. package/dist/header/dxc_logo_white.png +0 -0
  176. package/dist/header/hamb_menu_black.svg +0 -1
  177. package/dist/header/hamb_menu_white.svg +0 -1
  178. package/dist/header/readme.md +0 -33
  179. package/dist/heading/Heading.js +0 -153
  180. package/dist/input-text/InputText.js +0 -519
  181. package/dist/input-text/InputText.stories.js +0 -209
  182. package/dist/input-text/error.svg +0 -1
  183. package/dist/input-text/readme.md +0 -91
  184. package/dist/link/Link.js +0 -136
  185. package/dist/link/readme.md +0 -51
  186. package/dist/paginator/Paginator.js +0 -196
  187. package/dist/paginator/images/next.svg +0 -3
  188. package/dist/paginator/images/nextPage.svg +0 -3
  189. package/dist/paginator/images/previous.svg +0 -3
  190. package/dist/paginator/images/previousPage.svg +0 -3
  191. package/dist/paginator/readme.md +0 -50
  192. package/dist/progress-bar/ProgressBar.js +0 -185
  193. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  194. package/dist/progress-bar/readme.md +0 -63
  195. package/dist/radio/Radio.stories.js +0 -166
  196. package/dist/radio/readme.md +0 -70
  197. package/dist/resultsetTable/ResultsetTable.js +0 -333
  198. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  199. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  200. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  201. package/dist/select/Select.js +0 -445
  202. package/dist/select/Select.stories.js +0 -235
  203. package/dist/select/readme.md +0 -72
  204. package/dist/sidenav/Sidenav.js +0 -236
  205. package/dist/sidenav/arrow_icon.svg +0 -3
  206. package/dist/slider/Slider.js +0 -258
  207. package/dist/slider/Slider.stories.js +0 -241
  208. package/dist/slider/readme.md +0 -64
  209. package/dist/spinner/Spinner.js +0 -193
  210. package/dist/spinner/Spinner.stories.js +0 -183
  211. package/dist/spinner/readme.md +0 -65
  212. package/dist/switch/Switch.js +0 -199
  213. package/dist/switch/Switch.stories.js +0 -134
  214. package/dist/switch/readme.md +0 -133
  215. package/dist/table/Table.js +0 -87
  216. package/dist/tabs/Tabs.js +0 -172
  217. package/dist/tabs/Tabs.stories.js +0 -130
  218. package/dist/tabs/readme.md +0 -78
  219. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  220. package/dist/tabs-for-sections/readme.md +0 -78
  221. package/dist/tag/Tag.js +0 -217
  222. package/dist/textarea/Textarea.js +0 -227
  223. package/dist/toggle/Toggle.stories.js +0 -297
  224. package/dist/toggle/readme.md +0 -80
  225. package/dist/upload/Upload.stories.js +0 -72
  226. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  227. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  228. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  229. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  230. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  231. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  232. package/dist/upload/file-upload/FileToUpload.js +0 -158
  233. package/dist/upload/file-upload/audio-icon.svg +0 -4
  234. package/dist/upload/file-upload/close.svg +0 -4
  235. package/dist/upload/file-upload/file-icon.svg +0 -4
  236. package/dist/upload/file-upload/video-icon.svg +0 -4
  237. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  238. package/dist/upload/readme.md +0 -37
  239. package/dist/upload/transaction/Transaction.js +0 -155
  240. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  241. package/dist/upload/transaction/audio-icon.svg +0 -4
  242. package/dist/upload/transaction/error-icon.svg +0 -4
  243. package/dist/upload/transaction/file-icon-err.svg +0 -4
  244. package/dist/upload/transaction/file-icon.svg +0 -4
  245. package/dist/upload/transaction/image-icon-err.svg +0 -4
  246. package/dist/upload/transaction/image-icon.svg +0 -4
  247. package/dist/upload/transaction/success-icon.svg +0 -4
  248. package/dist/upload/transaction/video-icon-err.svg +0 -4
  249. package/dist/upload/transaction/video-icon.svg +0 -4
  250. package/dist/upload/transactions/Transactions.js +0 -120
  251. package/dist/wizard/Wizard.js +0 -327
  252. package/dist/wizard/invalid_icon.svg +0 -6
  253. package/dist/wizard/valid_icon.svg +0 -6
  254. package/dist/wizard/validation-wrong.svg +0 -6
  255. package/test/Accordion.test.js +0 -33
  256. package/test/Alert.test.js +0 -53
  257. package/test/Box.test.js +0 -10
  258. package/test/Button.test.js +0 -18
  259. package/test/Card.test.js +0 -30
  260. package/test/Checkbox.test.js +0 -45
  261. package/test/Chip.test.js +0 -25
  262. package/test/Date.test.js +0 -393
  263. package/test/Dialog.test.js +0 -23
  264. package/test/Dropdown.test.js +0 -130
  265. package/test/Footer.test.js +0 -99
  266. package/test/Header.test.js +0 -39
  267. package/test/Heading.test.js +0 -35
  268. package/test/InputText.test.js +0 -236
  269. package/test/Link.test.js +0 -25
  270. package/test/Paginator.test.js +0 -165
  271. package/test/ProgressBar.test.js +0 -35
  272. package/test/Radio.test.js +0 -37
  273. package/test/ResultsetTable.test.js +0 -282
  274. package/test/Select.test.js +0 -191
  275. package/test/Sidenav.test.js +0 -87
  276. package/test/Slider.test.js +0 -65
  277. package/test/Spinner.test.js +0 -27
  278. package/test/Switch.test.js +0 -45
  279. package/test/Table.test.js +0 -36
  280. package/test/Tabs.test.js +0 -88
  281. package/test/TabsForSections.test.js +0 -34
  282. package/test/Tag.test.js +0 -32
  283. package/test/TextArea.test.js +0 -52
  284. package/test/Toggle.test.js +0 -43
  285. package/test/Upload.test.js +0 -60
  286. package/test/Wizard.test.js +0 -130
  287. package/test/mocks/pngMock.js +0 -1
  288. package/test/mocks/svgMock.js +0 -1
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
@@ -15,7 +15,7 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
15
 
16
16
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
17
 
18
- var _react = _interopRequireWildcard(require("react"));
18
+ var _react = _interopRequireDefault(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
@@ -25,19 +25,15 @@ var _variables = require("../common/variables.js");
25
25
 
26
26
  var _utils = require("../common/utils.js");
27
27
 
28
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
28
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
29
 
30
- require("../common/OpenSans.css");
30
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
31
31
 
32
- function _templateObject() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n border-radius: 4px;\n overflow: hidden;\n font-family: \"Open Sans\", sans-serif;\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"]);
32
+ var _templateObject;
34
33
 
35
- _templateObject = function _templateObject() {
36
- return data;
37
- };
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
38
35
 
39
- return data;
40
- }
36
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
41
37
 
42
38
  var DxcBox = function DxcBox(_ref) {
43
39
  var shadowDepth = _ref.shadowDepth,
@@ -48,19 +44,18 @@ var DxcBox = function DxcBox(_ref) {
48
44
  children = _ref.children,
49
45
  _ref$size = _ref.size,
50
46
  size = _ref$size === void 0 ? "fitContent" : _ref$size;
51
- var customTheme = (0, _react.useContext)(_ThemeContext["default"]);
52
- var colorsTheme = (0, _react.useMemo)(function () {
53
- return (0, _utils.getCustomTheme)(_variables.theme, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
54
- }, [customTheme]);
55
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
47
+ var colorsTheme = (0, _useTheme["default"])();
48
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
56
49
  theme: colorsTheme.box
57
- }, _react["default"].createElement(StyledDxcBox, {
50
+ }, /*#__PURE__*/_react["default"].createElement(StyledDxcBox, {
58
51
  shadowDepth: shadowDepth,
59
52
  display: display,
60
53
  margin: margin,
61
54
  padding: padding,
62
55
  size: size
63
- }, children));
56
+ }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
57
+ color: colorsTheme.box.backgroundColor
58
+ }, children)));
64
59
  };
65
60
 
66
61
  var sizes = {
@@ -79,45 +74,54 @@ var calculateWidth = function calculateWidth(margin, size, padding) {
79
74
  return sizes[size];
80
75
  };
81
76
 
82
- var StyledDxcBox = _styledComponents["default"].div(_templateObject(), function (_ref2) {
77
+ var StyledDxcBox = _styledComponents["default"].div(_templateObject || (_templateObject = (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"])), function (_ref2) {
83
78
  var display = _ref2.display;
84
79
  return display;
80
+ }, function (props) {
81
+ return props.theme.borderRadius;
82
+ }, function (props) {
83
+ return props.theme.borderThickness;
84
+ }, function (props) {
85
+ return props.theme.borderStyle;
86
+ }, function (props) {
87
+ return props.theme.borderColor;
88
+ }, function (props) {
89
+ return props.theme.letterSpacing;
85
90
  }, function (props) {
86
91
  return calculateWidth(props.margin, props.size, props.padding);
87
92
  }, function (props) {
88
93
  return props.theme.backgroundColor;
94
+ }, function (props) {
95
+ 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);
89
96
  }, function (_ref3) {
90
- var shadowDepth = _ref3.shadowDepth;
91
- return shadowDepth === 1 ? "0px 2px 1px -1px rgba(0,0,0,0.2), 0px 1px 1px 0px rgba(0,0,0,0.14), 0px 1px 3px 0px rgba(0,0,0,0.12)" : shadowDepth === 2 ? "0px 3px 3px -2px rgba(0,0,0,0.2), 0px 3px 4px 0px rgba(0,0,0,0.14), 0px 1px 8px 0px rgba(0,0,0,0.12)" : "none";
97
+ var margin = _ref3.margin;
98
+ return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
92
99
  }, function (_ref4) {
93
100
  var margin = _ref4.margin;
94
- return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
101
+ return margin && margin.top ? _variables.spaces[margin.top] : "";
95
102
  }, function (_ref5) {
96
103
  var margin = _ref5.margin;
97
- return margin && margin.top ? _variables.spaces[margin.top] : "";
104
+ return margin && margin.right ? _variables.spaces[margin.right] : "";
98
105
  }, function (_ref6) {
99
106
  var margin = _ref6.margin;
100
- return margin && margin.right ? _variables.spaces[margin.right] : "";
107
+ return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
101
108
  }, function (_ref7) {
102
109
  var margin = _ref7.margin;
103
- return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
104
- }, function (_ref8) {
105
- var margin = _ref8.margin;
106
110
  return margin && margin.left ? _variables.spaces[margin.left] : "";
111
+ }, function (_ref8) {
112
+ var padding = _ref8.padding;
113
+ return padding && (0, _typeof2["default"])(padding) !== "object" ? _variables.spaces[padding] : "0px";
107
114
  }, function (_ref9) {
108
115
  var padding = _ref9.padding;
109
- return padding && (0, _typeof2["default"])(padding) !== "object" ? _variables.spaces[padding] : "0px";
116
+ return padding && padding.top ? _variables.spaces[padding.top] : "";
110
117
  }, function (_ref10) {
111
118
  var padding = _ref10.padding;
112
- return padding && padding.top ? _variables.spaces[padding.top] : "";
119
+ return padding && padding.right ? _variables.spaces[padding.right] : "";
113
120
  }, function (_ref11) {
114
121
  var padding = _ref11.padding;
115
- return padding && padding.right ? _variables.spaces[padding.right] : "";
122
+ return padding && padding.bottom ? _variables.spaces[padding.bottom] : "";
116
123
  }, function (_ref12) {
117
124
  var padding = _ref12.padding;
118
- return padding && padding.bottom ? _variables.spaces[padding.bottom] : "";
119
- }, function (_ref13) {
120
- var padding = _ref13.padding;
121
125
  return padding && padding.left ? _variables.spaces[padding.left] : "";
122
126
  });
123
127
 
package/box/index.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ type Size = "small" | "medium" | "large" | "fillParent" | "fitContent";
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ type Padding = {
10
+ top?: Space;
11
+ bottom?: Space;
12
+ left?: Space;
13
+ right?: Space;
14
+ };
15
+
16
+
17
+ type Props = {
18
+ shadowDepth?: 0 | 1 | 2;
19
+ margin?: Space | Margin;
20
+ padging?: Space | Padding;
21
+ display: string;
22
+ size: Size;
23
+ };
24
+
25
+ export default function DxcBox(props: Props): JSX.Element;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import ButtonPropsType from "./types";
3
+ declare const DxcButton: ({ label, mode, disabled, iconPosition, type, iconSrc, icon, onClick, margin, size, tabIndex, }: ButtonPropsType) => JSX.Element;
4
+ export default DxcButton;
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
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 _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _variables = require("../common/variables.js");
23
+
24
+ var _utils = require("../common/utils.js");
25
+
26
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
+
28
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
29
+
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
31
+
32
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
+
34
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
+
36
+ var DxcButton = function DxcButton(_ref) {
37
+ var _ref$label = _ref.label,
38
+ label = _ref$label === void 0 ? "" : _ref$label,
39
+ _ref$mode = _ref.mode,
40
+ mode = _ref$mode === void 0 ? "primary" : _ref$mode,
41
+ _ref$disabled = _ref.disabled,
42
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
43
+ _ref$iconPosition = _ref.iconPosition,
44
+ iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
45
+ _ref$type = _ref.type,
46
+ type = _ref$type === void 0 ? "button" : _ref$type,
47
+ _ref$iconSrc = _ref.iconSrc,
48
+ iconSrc = _ref$iconSrc === void 0 ? "" : _ref$iconSrc,
49
+ icon = _ref.icon,
50
+ _ref$onClick = _ref.onClick,
51
+ _onClick = _ref$onClick === void 0 ? "" : _ref$onClick,
52
+ margin = _ref.margin,
53
+ size = _ref.size,
54
+ _ref$tabIndex = _ref.tabIndex,
55
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
56
+
57
+ var colorsTheme = (0, _useTheme["default"])();
58
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
59
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
60
+ theme: colorsTheme.button
61
+ }, /*#__PURE__*/_react["default"].createElement(DxCButton, {
62
+ type: type,
63
+ margin: margin,
64
+ mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
65
+ disabled: disabled,
66
+ iconPosition: iconPosition,
67
+ size: size,
68
+ backgroundType: backgroundType,
69
+ icon: icon
70
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
71
+ disabled: disabled,
72
+ type: type,
73
+ disableRipple: true,
74
+ "aria-disabled": disabled ? true : false,
75
+ tabIndex: disabled ? -1 : tabIndex,
76
+ onClick: function onClick() {
77
+ if (_onClick) {
78
+ _onClick();
79
+ }
80
+ }
81
+ }, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
82
+ icon: icon,
83
+ iconPosition: iconPosition
84
+ }, label), icon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
85
+ label: label,
86
+ iconPosition: iconPosition
87
+ }, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : iconSrc && /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
88
+ label: label,
89
+ iconPosition: iconPosition,
90
+ src: iconSrc
91
+ }))));
92
+ };
93
+
94
+ var sizes = {
95
+ small: "42px",
96
+ medium: "120px",
97
+ large: "240px",
98
+ fillParent: "100%",
99
+ fitContent: "unset"
100
+ };
101
+
102
+ var calculateWidth = function calculateWidth(margin, size) {
103
+ if (size === "fillParent") {
104
+ return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
105
+ }
106
+
107
+ return sizes[size];
108
+ };
109
+
110
+ var LabelContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n text-transform: none;\n white-space: nowrap;\n margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
111
+ return props.theme.labelFontLineHeight;
112
+ }, function (props) {
113
+ return props.theme.fontSize;
114
+ }, function (props) {
115
+ return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
116
+ }, function (props) {
117
+ return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
118
+ });
119
+
120
+ var IconContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
121
+ return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
122
+ }, function (props) {
123
+ return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
124
+ });
125
+
126
+ var ButtonIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"])), function (props) {
127
+ return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
128
+ }, function (props) {
129
+ return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
130
+ });
131
+
132
+ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (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"])), function (props) {
133
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
134
+ }, function (props) {
135
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
136
+ }, function (props) {
137
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
138
+ }, function (props) {
139
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
140
+ }, function (props) {
141
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
142
+ }, function (props) {
143
+ return calculateWidth(props.margin, props.size);
144
+ }, function (props) {
145
+ return props.disabled && "not-allowed" || "pointer";
146
+ }, function (props) {
147
+ return props.theme.paddingLeft;
148
+ }, function (props) {
149
+ return props.theme.paddingRight;
150
+ }, function (props) {
151
+ return props.theme.paddingTop;
152
+ }, function (props) {
153
+ return props.theme.paddingBottom;
154
+ }, function (props) {
155
+ return props.iconPosition === "after" && "row" || "row-reverse";
156
+ }, function (props) {
157
+ return props.theme.fontFamily;
158
+ }, function (props) {
159
+ return props.theme.fontSize;
160
+ }, function (props) {
161
+ return props.theme.fontWeight;
162
+ }, function (props) {
163
+ return props.theme.labelLetterSpacing;
164
+ }, function (props) {
165
+ return props.size === "small" && "calc(100% - 22px)" || "unset";
166
+ }, function (props) {
167
+ return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
168
+ }, function (props) {
169
+ var mode = props.mode,
170
+ backgroundType = props.backgroundType;
171
+
172
+ if (mode === "primary") {
173
+ 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 ");
174
+ } else if (mode === "secondary") {
175
+ 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 ");
176
+ } else if (mode === "text") {
177
+ 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 ");
178
+ }
179
+ });
180
+
181
+ var _default = DxcButton;
182
+ exports["default"] = _default;