@dxc-technology/halstack-react 0.0.0-2eb3d87 → 0.0.0-2f08981

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 (229) hide show
  1. package/README.md +66 -0
  2. package/babel.config.js +6 -2
  3. package/dist/BackgroundColorContext.js +46 -0
  4. package/dist/ThemeContext.js +237 -2
  5. package/dist/V3Select/V3Select.js +549 -0
  6. package/dist/V3Select/index.d.ts +27 -0
  7. package/dist/V3Textarea/V3Textarea.js +264 -0
  8. package/dist/V3Textarea/index.d.ts +27 -0
  9. package/dist/accordion/Accordion.js +170 -81
  10. package/dist/accordion/index.d.ts +28 -0
  11. package/dist/accordion-group/AccordionGroup.js +186 -0
  12. package/dist/accordion-group/index.d.ts +16 -0
  13. package/dist/alert/Alert.js +184 -83
  14. package/dist/alert/index.d.ts +51 -0
  15. package/dist/badge/Badge.js +63 -0
  16. package/dist/box/Box.js +39 -19
  17. package/dist/box/index.d.ts +25 -0
  18. package/dist/button/Button.js +93 -42
  19. package/dist/button/index.d.ts +24 -0
  20. package/dist/card/Card.js +64 -56
  21. package/dist/card/index.d.ts +22 -0
  22. package/dist/checkbox/Checkbox.js +117 -39
  23. package/dist/checkbox/index.d.ts +24 -0
  24. package/dist/chip/Chip.js +265 -0
  25. package/dist/chip/index.d.ts +22 -0
  26. package/dist/common/RequiredComponent.js +5 -15
  27. package/dist/common/variables.js +1507 -10
  28. package/dist/date/Date.js +110 -76
  29. package/dist/date/index.d.ts +27 -0
  30. package/dist/date-input/DateInput.js +400 -0
  31. package/dist/date-input/index.d.ts +95 -0
  32. package/dist/dialog/Dialog.js +87 -33
  33. package/dist/dialog/index.d.ts +18 -0
  34. package/dist/dropdown/Dropdown.js +226 -94
  35. package/dist/dropdown/index.d.ts +26 -0
  36. package/dist/file-input/FileInput.js +644 -0
  37. package/dist/file-input/FileItem.js +287 -0
  38. package/dist/file-input/index.d.ts +81 -0
  39. package/dist/footer/Footer.js +125 -45
  40. package/dist/footer/Icons.js +77 -0
  41. package/dist/footer/index.d.ts +25 -0
  42. package/dist/header/Header.js +215 -85
  43. package/dist/header/Icons.js +59 -0
  44. package/dist/header/index.d.ts +25 -0
  45. package/dist/heading/Heading.js +93 -22
  46. package/dist/heading/index.d.ts +17 -0
  47. package/dist/input-text/Icons.js +22 -0
  48. package/dist/input-text/InputText.js +300 -104
  49. package/dist/input-text/index.d.ts +36 -0
  50. package/dist/layout/ApplicationLayout.js +327 -0
  51. package/dist/layout/Icons.js +55 -0
  52. package/dist/link/Link.js +142 -34
  53. package/dist/link/index.d.ts +23 -0
  54. package/dist/main.d.ts +40 -0
  55. package/dist/main.js +120 -24
  56. package/dist/number-input/NumberInput.js +136 -0
  57. package/dist/number-input/NumberInputContext.js +16 -0
  58. package/dist/number-input/index.d.ts +113 -0
  59. package/dist/paginator/Icons.js +66 -0
  60. package/dist/paginator/Paginator.js +187 -60
  61. package/dist/paginator/index.d.ts +20 -0
  62. package/dist/password-input/PasswordInput.js +203 -0
  63. package/dist/password-input/index.d.ts +94 -0
  64. package/dist/progress-bar/ProgressBar.js +97 -44
  65. package/dist/progress-bar/index.d.ts +18 -0
  66. package/dist/radio/Radio.js +39 -34
  67. package/dist/radio/index.d.ts +23 -0
  68. package/dist/resultsetTable/ResultsetTable.js +99 -71
  69. package/dist/resultsetTable/index.d.ts +19 -0
  70. package/dist/select/Select.js +920 -249
  71. package/dist/select/index.d.ts +53 -0
  72. package/dist/sidenav/Sidenav.js +87 -125
  73. package/dist/sidenav/index.d.ts +13 -0
  74. package/dist/slider/Slider.js +219 -83
  75. package/dist/slider/index.d.ts +29 -0
  76. package/dist/spinner/Spinner.js +249 -64
  77. package/dist/spinner/index.d.ts +17 -0
  78. package/dist/switch/Switch.js +54 -51
  79. package/dist/switch/index.d.ts +24 -0
  80. package/dist/table/Table.js +63 -15
  81. package/dist/table/index.d.ts +13 -0
  82. package/dist/tabs/Tabs.js +210 -50
  83. package/dist/tabs/index.d.ts +19 -0
  84. package/dist/tag/Tag.js +100 -35
  85. package/dist/tag/index.d.ts +24 -0
  86. package/dist/text-input/TextInput.js +974 -0
  87. package/dist/text-input/index.d.ts +135 -0
  88. package/dist/textarea/Textarea.js +250 -107
  89. package/dist/textarea/index.d.ts +117 -0
  90. package/dist/toggle/Toggle.js +16 -19
  91. package/dist/toggle/index.d.ts +21 -0
  92. package/dist/toggle-group/ToggleGroup.js +327 -0
  93. package/dist/toggle-group/index.d.ts +21 -0
  94. package/dist/upload/Upload.js +13 -8
  95. package/dist/upload/buttons-upload/ButtonsUpload.js +35 -25
  96. package/dist/upload/buttons-upload/Icons.js +40 -0
  97. package/dist/upload/dragAndDropArea/DragAndDropArea.js +84 -37
  98. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  99. package/dist/upload/file-upload/FileToUpload.js +64 -33
  100. package/dist/upload/file-upload/Icons.js +66 -0
  101. package/dist/upload/files-upload/FilesToUpload.js +16 -16
  102. package/dist/upload/index.d.ts +15 -0
  103. package/dist/upload/transaction/Icons.js +160 -0
  104. package/dist/upload/transaction/Transaction.js +42 -49
  105. package/dist/upload/transactions/Transactions.js +38 -20
  106. package/dist/useTheme.js +22 -0
  107. package/dist/wizard/Icons.js +65 -0
  108. package/dist/wizard/Wizard.js +156 -61
  109. package/dist/wizard/index.d.ts +18 -0
  110. package/package.json +23 -16
  111. package/test/AccordionGroup.test.js +125 -0
  112. package/test/Chip.test.js +25 -0
  113. package/test/Date.test.js +15 -13
  114. package/test/DateInput.test.js +242 -0
  115. package/test/Dropdown.test.js +19 -4
  116. package/test/FileInput.test.js +201 -0
  117. package/test/Footer.test.js +2 -7
  118. package/test/Header.test.js +7 -20
  119. package/test/Heading.test.js +60 -12
  120. package/test/InputText.test.js +30 -26
  121. package/test/Link.test.js +25 -7
  122. package/test/NumberInput.test.js +259 -0
  123. package/test/Paginator.test.js +76 -60
  124. package/test/PasswordInput.test.js +83 -0
  125. package/test/ResultsetTable.test.js +65 -17
  126. package/test/Select.test.js +371 -147
  127. package/test/Sidenav.test.js +22 -64
  128. package/test/Slider.test.js +24 -15
  129. package/test/Spinner.test.js +5 -0
  130. package/test/Tabs.test.js +21 -0
  131. package/test/TextInput.test.js +732 -0
  132. package/test/Textarea.test.js +193 -0
  133. package/test/ToggleGroup.test.js +85 -0
  134. package/test/Upload.test.js +1 -1
  135. package/test/V3Select.test.js +212 -0
  136. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  137. package/dist/accordion/Accordion.stories.js +0 -207
  138. package/dist/accordion/readme.md +0 -96
  139. package/dist/alert/Alert.stories.js +0 -158
  140. package/dist/alert/close.svg +0 -4
  141. package/dist/alert/error.svg +0 -4
  142. package/dist/alert/info.svg +0 -4
  143. package/dist/alert/readme.md +0 -43
  144. package/dist/alert/success.svg +0 -4
  145. package/dist/alert/warning.svg +0 -4
  146. package/dist/button/Button.stories.js +0 -224
  147. package/dist/button/readme.md +0 -93
  148. package/dist/checkbox/Checkbox.stories.js +0 -144
  149. package/dist/checkbox/readme.md +0 -116
  150. package/dist/common/services/example-service.js +0 -10
  151. package/dist/common/services/example-service.test.js +0 -12
  152. package/dist/date/Date.stories.js +0 -205
  153. package/dist/date/calendar.svg +0 -1
  154. package/dist/date/calendar_dark.svg +0 -1
  155. package/dist/date/readme.md +0 -73
  156. package/dist/dialog/Dialog.stories.js +0 -217
  157. package/dist/dialog/readme.md +0 -32
  158. package/dist/dropdown/Dropdown.stories.js +0 -249
  159. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  160. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  161. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  162. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  163. package/dist/dropdown/readme.md +0 -69
  164. package/dist/footer/Footer.stories.js +0 -94
  165. package/dist/footer/dxc_logo_wht.png +0 -0
  166. package/dist/footer/readme.md +0 -41
  167. package/dist/header/Header.stories.js +0 -176
  168. package/dist/header/close_icon.svg +0 -1
  169. package/dist/header/dxc_logo_black.png +0 -0
  170. package/dist/header/dxc_logo_white.png +0 -0
  171. package/dist/header/hamb_menu_black.svg +0 -1
  172. package/dist/header/hamb_menu_white.svg +0 -1
  173. package/dist/header/readme.md +0 -33
  174. package/dist/input-text/InputText.stories.js +0 -209
  175. package/dist/input-text/error.svg +0 -1
  176. package/dist/input-text/readme.md +0 -91
  177. package/dist/link/readme.md +0 -51
  178. package/dist/paginator/images/next.svg +0 -3
  179. package/dist/paginator/images/nextPage.svg +0 -3
  180. package/dist/paginator/images/previous.svg +0 -3
  181. package/dist/paginator/images/previousPage.svg +0 -3
  182. package/dist/paginator/readme.md +0 -50
  183. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  184. package/dist/progress-bar/readme.md +0 -63
  185. package/dist/radio/Radio.stories.js +0 -166
  186. package/dist/radio/readme.md +0 -70
  187. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  188. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  189. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  190. package/dist/select/Select.stories.js +0 -235
  191. package/dist/select/readme.md +0 -72
  192. package/dist/sidenav/arrow_icon.svg +0 -3
  193. package/dist/slider/Slider.stories.js +0 -241
  194. package/dist/slider/readme.md +0 -64
  195. package/dist/spinner/Spinner.stories.js +0 -183
  196. package/dist/spinner/readme.md +0 -65
  197. package/dist/switch/Switch.stories.js +0 -134
  198. package/dist/switch/readme.md +0 -133
  199. package/dist/tabs/Tabs.stories.js +0 -130
  200. package/dist/tabs/readme.md +0 -78
  201. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  202. package/dist/tabs-for-sections/readme.md +0 -78
  203. package/dist/toggle/Toggle.stories.js +0 -297
  204. package/dist/toggle/readme.md +0 -80
  205. package/dist/upload/Upload.stories.js +0 -72
  206. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  207. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  208. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  209. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  210. package/dist/upload/file-upload/audio-icon.svg +0 -4
  211. package/dist/upload/file-upload/close.svg +0 -4
  212. package/dist/upload/file-upload/file-icon.svg +0 -4
  213. package/dist/upload/file-upload/video-icon.svg +0 -4
  214. package/dist/upload/readme.md +0 -37
  215. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  216. package/dist/upload/transaction/audio-icon.svg +0 -4
  217. package/dist/upload/transaction/error-icon.svg +0 -4
  218. package/dist/upload/transaction/file-icon-err.svg +0 -4
  219. package/dist/upload/transaction/file-icon.svg +0 -4
  220. package/dist/upload/transaction/image-icon-err.svg +0 -4
  221. package/dist/upload/transaction/image-icon.svg +0 -4
  222. package/dist/upload/transaction/success-icon.svg +0 -4
  223. package/dist/upload/transaction/video-icon-err.svg +0 -4
  224. package/dist/upload/transaction/video-icon.svg +0 -4
  225. package/dist/wizard/invalid_icon.svg +0 -6
  226. package/dist/wizard/valid_icon.svg +0 -6
  227. package/dist/wizard/validation-wrong.svg +0 -6
  228. package/test/TabsForSections.test.js +0 -34
  229. package/test/Toggle.test.js +0 -43
@@ -27,16 +27,16 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
27
27
 
28
28
  var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
29
29
 
30
- require("../common/OpenSans.css");
31
-
32
30
  var _variables = require("../common/variables.js");
33
31
 
34
32
  var _utils = require("../common/utils.js");
35
33
 
36
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
34
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
35
+
36
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
37
37
 
38
38
  function _templateObject3() {
39
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: 17px;\n height: 17px;\n position: absolute;\n left: ", ";\n right: ", ";\n z-index: 0;\n"]);
39
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: 16px;\n height: 16px;\n position: absolute;\n left: ", ";\n right: ", ";\n z-index: 0;\n margin-left: ", ";\n margin-right: ", ";\n"]);
40
40
 
41
41
  _templateObject3 = function _templateObject3() {
42
42
  return data;
@@ -46,7 +46,7 @@ function _templateObject3() {
46
46
  }
47
47
 
48
48
  function _templateObject2() {
49
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n width: ", ";\n\n display: inline-flex;\n align-items: center;\n cursor: ", ";\n position: relative;\n flex-direction: ", ";\n .MuiButtonBase-root {\n padding: 10px 10px;\n margin: 0px 2px;\n color: ", ";\n\n :hover {\n background-color: transparent;\n }\n &.Mui-checked {\n color: ", ";\n &:hover {\n background-color: transparent;\n }\n }\n &.Mui-disabled {\n color: ", ";\n }\n .MuiTouchRipple-child {\n background-color: ", ";\n }\n .MuiSvgIcon-root {\n width: 26.6px;\n height: 26.6px;\n }\n .MuiIconButton-label {\n z-index: 1;\n }\n }\n"]);
49
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n display: inline-flex;\n align-items: center;\n cursor: ", ";\n position: relative;\n flex-direction: ", ";\n .MuiCheckbox-colorSecondary {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n &.Mui-disabled {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n opacity: 0.34;\n }\n }\n }\n &.Mui-checked {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n\n &:hover {\n background-color: transparent;\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n background-color: transparent;\n color: ", ";\n }\n }\n }\n }\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .MuiIconButton-colorSecondary {\n &:hover {\n background-color: transparent;\n }\n }\n .MuiButtonBase-root {\n &:hover {\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n }\n\n &.Mui-focusVisible {\n .MuiIconButton-label {\n box-shadow: 0 0 0 2px\n ", ";\n }\n }\n z-index: 1;\n margin-left: ", ";\n margin-right: ", ";\n padding: 0px;\n left: ", ";\n right: ", ";\n }\n"]);
50
50
 
51
51
  _templateObject2 = function _templateObject2() {
52
52
  return data;
@@ -56,7 +56,7 @@ function _templateObject2() {
56
56
  }
57
57
 
58
58
  function _templateObject() {
59
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n cursor: ", ";\n font-family: \"Open Sans\", sans-serif;\n"]);
59
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n cursor: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"]);
60
60
 
61
61
  _templateObject = function _templateObject() {
62
62
  return data;
@@ -72,27 +72,31 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
72
72
  label = _ref$label === void 0 ? "" : _ref$label,
73
73
  _ref$labelPosition = _ref.labelPosition,
74
74
  labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
75
- _ref$theme = _ref.theme,
76
- theme = _ref$theme === void 0 ? "light" : _ref$theme,
77
75
  _ref$name = _ref.name,
78
76
  name = _ref$name === void 0 ? "" : _ref$name,
79
77
  _ref$disabled = _ref.disabled,
80
78
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
81
- _ref$disableRipple = _ref.disableRipple,
82
- disableRipple = _ref$disableRipple === void 0 ? false : _ref$disableRipple,
83
79
  onChange = _ref.onChange,
84
80
  _ref$required = _ref.required,
85
81
  required = _ref$required === void 0 ? false : _ref$required,
86
82
  margin = _ref.margin,
87
83
  _ref$size = _ref.size,
88
- size = _ref$size === void 0 ? "fitContent" : _ref$size;
84
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
85
+ _ref$tabIndex = _ref.tabIndex,
86
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
89
87
 
90
88
  var _useState = (0, _react.useState)(false),
91
89
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
92
90
  innerChecked = _useState2[0],
93
91
  setInnerChecked = _useState2[1];
94
92
 
95
- var colorsTheme = (0, _react.useContext)(_ThemeContext["default"]) || _variables.colors;
93
+ var _useState3 = (0, _react.useState)(false),
94
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
95
+ isLabelHovered = _useState4[0],
96
+ setIsLabelHovered = _useState4[1];
97
+
98
+ var colorsTheme = (0, _useTheme["default"])();
99
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
96
100
 
97
101
  var handlerCheckboxChange = function handlerCheckboxChange(checkboxValue) {
98
102
  if (checked === undefined) {
@@ -109,37 +113,50 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
109
113
  }
110
114
  };
111
115
 
116
+ var handleLabelHover = function handleLabelHover() {
117
+ setIsLabelHovered(!isLabelHovered);
118
+ };
119
+
112
120
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
113
- theme: colorsTheme
121
+ theme: colorsTheme.checkbox
114
122
  }, _react["default"].createElement(CheckboxContainer, {
115
123
  id: name,
116
- brightness: theme,
124
+ brightness: _variables.componentTokens,
125
+ label: label,
117
126
  labelPosition: labelPosition,
118
127
  disabled: disabled,
119
128
  margin: margin,
120
- size: size
129
+ size: size,
130
+ backgroundType: backgroundType,
131
+ isLabelHovered: isLabelHovered
121
132
  }, _react["default"].createElement(_Checkbox["default"], {
122
133
  checked: checked != undefined ? checked : innerChecked,
123
- inputProps: name = {
124
- name: name
134
+ inputProps: {
135
+ name: name,
136
+ "aria-label": label,
137
+ role: "checkbox",
138
+ "aria-checked": checked != undefined ? checked : innerChecked
125
139
  },
126
140
  onChange: handlerCheckboxChange,
127
141
  value: value,
128
142
  disabled: disabled,
129
- disableRipple: disableRipple
130
- }), required && _react["default"].createElement(_RequiredComponent["default"], {
131
- brightness: theme
132
- }), label && _react["default"].createElement(LabelContainer, {
133
- labelPosition: labelPosition,
134
- brightness: theme,
135
- onClick: disabled === true ? function (e) {} : handlerCheckboxChange,
136
- disabled: disabled
137
- }, label), _react["default"].createElement(CheckboxBlackBack, {
143
+ disableRipple: true,
144
+ className: "test",
145
+ tabIndex: tabIndex
146
+ }), _react["default"].createElement(CheckboxBlackBack, {
138
147
  labelPosition: labelPosition,
139
148
  disabled: disabled,
140
149
  checked: checked != undefined ? checked : innerChecked,
141
- brightness: theme
142
- })));
150
+ backgroundType: backgroundType
151
+ }), required && _react["default"].createElement(_RequiredComponent["default"], null), label && _react["default"].createElement(LabelContainer, {
152
+ labelPosition: labelPosition,
153
+ onClick: disabled === true ? function (e) {} : handlerCheckboxChange,
154
+ disabled: disabled,
155
+ className: "labelContainer",
156
+ backgroundType: backgroundType,
157
+ onMouseOver: handleLabelHover,
158
+ onMouseOut: handleLabelHover
159
+ }, label)));
143
160
  };
144
161
 
145
162
  var sizes = {
@@ -158,10 +175,56 @@ var calculateWidth = function calculateWidth(margin, size) {
158
175
  return sizes[size];
159
176
  };
160
177
 
178
+ var getDisabledColor = function getDisabledColor(props, element) {
179
+ switch (element) {
180
+ case "check":
181
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledCheckColorOnDark : props.theme.disabledCheckColor;
182
+ break;
183
+
184
+ case "background":
185
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledBackgroundColorCheckedOnDark : props.theme.disabledBackgroundColorChecked;
186
+ break;
187
+
188
+ case "border":
189
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;
190
+ break;
191
+
192
+ case "label":
193
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.disabledFontColorOnDark : props.theme.disabledFontColor;
194
+ break;
195
+ }
196
+ };
197
+
198
+ var getNotDisabledColor = function getNotDisabledColor(props, element) {
199
+ switch (element) {
200
+ case "check":
201
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.checkColorOnDark : props.theme.checkColor;
202
+ break;
203
+
204
+ case "background":
205
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.backgroundColorCheckedOnDark : props.theme.backgroundColorChecked;
206
+ break;
207
+
208
+ case "border":
209
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.borderColorOnDark : props.theme.borderColor;
210
+ break;
211
+
212
+ case "label":
213
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
214
+ break;
215
+ }
216
+ };
217
+
161
218
  var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
162
- return props.disabled ? props.brightness === "dark" ? props.theme.darkGrey : props.theme.lightGrey : props.brightness === "dark" ? props.theme.white : props.theme.black;
219
+ return props.disabled ? getDisabledColor(props, "label") : getNotDisabledColor(props, "label");
163
220
  }, function (props) {
164
221
  return props.disabled ? "not-allowed" : "pointer";
222
+ }, function (props) {
223
+ return props.theme.fontFamily;
224
+ }, function (props) {
225
+ return props.theme.fontSize;
226
+ }, function (props) {
227
+ return props.theme.fontWeight;
165
228
  });
166
229
 
167
230
  var CheckboxContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
@@ -181,21 +244,37 @@ var CheckboxContainer = _styledComponents["default"].span(_templateObject2(), fu
181
244
  }, function (props) {
182
245
  return props.labelPosition === "before" ? "row-reverse" : "row";
183
246
  }, function (props) {
184
- return props.brightness === "dark" ? props.theme.white : props.theme.darkGrey;
247
+ return props.isLabelHovered ? props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor : getNotDisabledColor(props, "border");
185
248
  }, function (props) {
186
- return props.theme.yellow;
249
+ return getDisabledColor(props, "border");
187
250
  }, function (props) {
188
- return props.brightness === "dark" ? props.theme.darkGrey : props.theme.lightGrey;
251
+ return props.disabled ? getDisabledColor(props, "background") : getNotDisabledColor(props, "background");
189
252
  }, function (props) {
190
- return props.brightness === "dark" ? props.theme.white : props.theme.darkGrey;
253
+ return props.backgroundType === "dark" ? props.theme.hoverBackgroundColorCheckedOnDark : props.theme.hoverBackgroundColorChecked;
254
+ }, function (props) {
255
+ return props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor;
256
+ }, function (props) {
257
+ return props.backgroundType === "dark" ? props.theme.focusColorOnDark : props.theme.focusColor;
258
+ }, function (props) {
259
+ return props.labelPosition === "before" && props.label ? props.theme.checkLabelSpacing : "0";
260
+ }, function (props) {
261
+ return props.labelPosition === "after" && props.label ? props.theme.checkLabelSpacing : "0";
262
+ }, function (props) {
263
+ return props.labelPosition === "before" ? "unset" : "1px";
264
+ }, function (props) {
265
+ return props.labelPosition === "before" ? "1px" : "unset";
191
266
  });
192
267
 
193
268
  var CheckboxBlackBack = _styledComponents["default"].span(_templateObject3(), function (props) {
194
- return props.checked !== true ? "transparent" : props.brightness === "light" && props.disabled === true ? props.theme.white : props.theme.black;
269
+ return !props.checked ? "transparent" : props.disabled ? getDisabledColor(props, "check") : getNotDisabledColor(props, "check");
270
+ }, function (props) {
271
+ return props.labelPosition === "before" ? "unset" : "5px";
272
+ }, function (props) {
273
+ return props.labelPosition === "before" ? "5px" : "unset";
195
274
  }, function (props) {
196
- return props.labelPosition === "before" ? "unset" : "17px";
275
+ return props.labelPosition === "after" ? "0px" : "";
197
276
  }, function (props) {
198
- return props.labelPosition === "before" ? "17px" : "unset";
277
+ return props.labelPosition === "before" ? "0px" : "";
199
278
  });
200
279
 
201
280
  DxcCheckbox.propTypes = {
@@ -203,10 +282,8 @@ DxcCheckbox.propTypes = {
203
282
  value: _propTypes["default"].any,
204
283
  label: _propTypes["default"].string,
205
284
  labelPosition: _propTypes["default"].oneOf(["after", "before", ""]),
206
- theme: _propTypes["default"].oneOf(["light", "dark", ""]),
207
285
  name: _propTypes["default"].string,
208
286
  disabled: _propTypes["default"].bool,
209
- disableRipple: _propTypes["default"].bool,
210
287
  onChange: _propTypes["default"].func,
211
288
  required: _propTypes["default"].bool,
212
289
  size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
@@ -215,7 +292,8 @@ DxcCheckbox.propTypes = {
215
292
  bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
216
293
  left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
217
294
  right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
218
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
295
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
296
+ tabIndex: _propTypes["default"].number
219
297
  };
220
298
  var _default = DxcCheckbox;
221
299
  exports["default"] = _default;
@@ -0,0 +1,24 @@
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
+
10
+ type Props = {
11
+ checked?: boolean;
12
+ value?: any;
13
+ label?: string;
14
+ labelPosition?: "before" | "after";
15
+ name?: string,
16
+ disabled?: boolean;
17
+ onChange?: void;
18
+ required?: boolean;
19
+ margin?: Space | Margin;
20
+ size?: Size;
21
+ tabIndex?: number;
22
+ };
23
+
24
+ export default function DxcCheckbox(props: Props): JSX.Element;
@@ -0,0 +1,265 @@
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 = _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
+ function _templateObject5() {
31
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n ", "\n width: ", ";\n height: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n ", "\n }\n"]);
32
+
33
+ _templateObject5 = function _templateObject5() {
34
+ return data;
35
+ };
36
+
37
+ return data;
38
+ }
39
+
40
+ function _templateObject4() {
41
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-right: ", ";\n width: ", ";\n height: ", ";\n"]);
42
+
43
+ _templateObject4 = function _templateObject4() {
44
+ return data;
45
+ };
46
+
47
+ return data;
48
+ }
49
+
50
+ function _templateObject3() {
51
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-left: ", ";\n width: ", ";\n height: ", ";\n"]);
52
+
53
+ _templateObject3 = function _templateObject3() {
54
+ return data;
55
+ };
56
+
57
+ return data;
58
+ }
59
+
60
+ function _templateObject2() {
61
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-family: ", ";\n font-weight: ", ";\n font-style: ", ";\n color: ", ";\n cursor: ", ";\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n"]);
62
+
63
+ _templateObject2 = function _templateObject2() {
64
+ return data;
65
+ };
66
+
67
+ return data;
68
+ }
69
+
70
+ function _templateObject() {
71
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n min-height: 40px;\n max-width: ", ";\n background-color: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n"]);
72
+
73
+ _templateObject = function _templateObject() {
74
+ return data;
75
+ };
76
+
77
+ return data;
78
+ }
79
+
80
+ var DxcChip = function DxcChip(_ref) {
81
+ var label = _ref.label,
82
+ suffixIcon = _ref.suffixIcon,
83
+ prefixIcon = _ref.prefixIcon,
84
+ suffixIconSrc = _ref.suffixIconSrc,
85
+ onClickSuffix = _ref.onClickSuffix,
86
+ prefixIconSrc = _ref.prefixIconSrc,
87
+ onClickPrefix = _ref.onClickPrefix,
88
+ disabled = _ref.disabled,
89
+ margin = _ref.margin,
90
+ _ref$tabIndex = _ref.tabIndex,
91
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
92
+ var colorsTheme = (0, _useTheme["default"])();
93
+ return _react["default"].createElement(_styledComponents.ThemeProvider, {
94
+ theme: colorsTheme.chip
95
+ }, _react["default"].createElement(StyledDxcChip, {
96
+ disabled: disabled,
97
+ margin: margin
98
+ }, prefixIcon ? _react["default"].createElement(IconContainer, {
99
+ disabled: disabled,
100
+ prefixIcon: true,
101
+ label: label,
102
+ mode: "prefix",
103
+ tabIndex: typeof onClickPrefix === "function" && !disabled ? tabIndex : -1,
104
+ onClick: function onClick() {
105
+ return onClickPrefix && !disabled && onClickPrefix(label);
106
+ },
107
+ interactuable: typeof onClickPrefix === "function" && !disabled
108
+ }, (0, _typeof2["default"])(prefixIcon) === "object" ? prefixIcon : _react["default"].createElement(prefixIcon)) : prefixIconSrc && _react["default"].createElement(PrefixIconContainer, {
109
+ disabled: disabled,
110
+ src: prefixIconSrc,
111
+ label: label,
112
+ tabIndex: typeof onClickPrefix === "function" && !disabled ? tabIndex : -1,
113
+ onClick: function onClick() {
114
+ return onClickPrefix && !disabled && onClickPrefix(label);
115
+ },
116
+ interactuable: typeof onClickPrefix === "function" && !disabled
117
+ }), label && _react["default"].createElement(ChipTextContainer, {
118
+ disabled: disabled,
119
+ prefixIconSrc: prefixIconSrc,
120
+ suffixIconSrc: suffixIconSrc
121
+ }, label), suffixIcon ? _react["default"].createElement(IconContainer, {
122
+ disabled: disabled,
123
+ suffixIcon: true,
124
+ mode: "suffix",
125
+ label: label,
126
+ tabIndex: typeof onClickSuffix === "function" && !disabled ? tabIndex : -1,
127
+ onClick: function onClick() {
128
+ return onClickSuffix && !disabled && onClickSuffix(label);
129
+ },
130
+ interactuable: typeof onClickSuffix === "function" && !disabled
131
+ }, (0, _typeof2["default"])(suffixIcon) === "object" ? suffixIcon : _react["default"].createElement(suffixIcon)) : suffixIconSrc && _react["default"].createElement(SuffixIconContainer, {
132
+ disabled: disabled,
133
+ src: suffixIconSrc,
134
+ label: label,
135
+ tabIndex: typeof onClickSuffix === "function" && !disabled ? tabIndex : -1,
136
+ onClick: function onClick() {
137
+ return onClickSuffix && !disabled && onClickSuffix(label);
138
+ },
139
+ interactuable: typeof onClickSuffix === "function" && !disabled
140
+ })));
141
+ };
142
+
143
+ var getCursor = function getCursor(interactuable, disabled) {
144
+ if (disabled) {
145
+ return "cursor:not-allowed;";
146
+ }
147
+
148
+ if (interactuable) {
149
+ return "cursor:pointer;";
150
+ }
151
+
152
+ return "cursor:default; outline:none;";
153
+ };
154
+
155
+ var StyledDxcChip = _styledComponents["default"].div(_templateObject(), function (_ref2) {
156
+ var margin = _ref2.margin;
157
+ return "calc(100% - 40px - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
158
+ }, function (props) {
159
+ return props.disabled && props.theme.disabledBackgroundColor || props.theme.backgroundColor;
160
+ }, function (props) {
161
+ return props.theme.borderRadius;
162
+ }, function (props) {
163
+ return props.theme.borderThickness;
164
+ }, function (props) {
165
+ return props.theme.borderStyle;
166
+ }, function (props) {
167
+ return props.theme.borderColor;
168
+ }, function (props) {
169
+ return props.theme.contentPaddingTop;
170
+ }, function (props) {
171
+ return props.theme.contentPaddingBottom;
172
+ }, function (props) {
173
+ return props.theme.contentPaddingLeft;
174
+ }, function (props) {
175
+ return props.theme.contentPaddingRight;
176
+ }, function (props) {
177
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
178
+ }, function (props) {
179
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
180
+ }, function (props) {
181
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
182
+ }, function (props) {
183
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
184
+ }, function (props) {
185
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
186
+ }, function (_ref3) {
187
+ var disabled = _ref3.disabled;
188
+ return disabled && "not-allowed";
189
+ });
190
+
191
+ var ChipTextContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
192
+ return props.theme.fontSize;
193
+ }, function (props) {
194
+ return props.theme.fontFamily;
195
+ }, function (props) {
196
+ return props.theme.fontWeight;
197
+ }, function (props) {
198
+ return props.theme.fontStyle;
199
+ }, function (props) {
200
+ return props.disabled ? props.theme.disabledFontColor : props.theme.fontColor;
201
+ }, function (_ref4) {
202
+ var disabled = _ref4.disabled;
203
+ return disabled && "not-allowed" || "default";
204
+ });
205
+
206
+ var SuffixIconContainer = _styledComponents["default"].img(_templateObject3(), function (props) {
207
+ return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
208
+ }, function (props) {
209
+ return getCursor(props.interactuable, props.disabled);
210
+ }, function (props) {
211
+ return (props.label || props.suffixIconSrc) && props.theme.iconSpacing || props.prefixIconSrc && "5px";
212
+ }, function (props) {
213
+ return props.theme.iconSize;
214
+ }, function (props) {
215
+ return props.theme.iconSize;
216
+ });
217
+
218
+ var PrefixIconContainer = _styledComponents["default"].img(_templateObject4(), function (props) {
219
+ return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
220
+ }, function (props) {
221
+ return getCursor(props.interactuable, props.disabled);
222
+ }, function (props) {
223
+ return (props.label || props.suffixIconSrc) && props.theme.iconSpacing || props.prefixIconSrc && "5px";
224
+ }, function (props) {
225
+ return props.theme.iconSize;
226
+ }, function (props) {
227
+ return props.theme.iconSize;
228
+ });
229
+
230
+ var IconContainer = _styledComponents["default"].div(_templateObject5(), function (props) {
231
+ return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
232
+ }, function (props) {
233
+ return props.prefixIcon ? "margin-right: ".concat((props.label || props.suffixIcon || props.suffixIconSrc) && props.theme.iconSpacing || (props.prefixIcon || props.prefixIconSrc) && "0", ";") : "margin-left: ".concat((props.label || props.prefixIcon || props.prefixIconSrc) && props.theme.iconSpacing || (props.prefixIcon || props.prefixIconSrc) && "0", ";");
234
+ }, function (props) {
235
+ return getCursor(props.interactuable, props.disabled);
236
+ }, function (props) {
237
+ return props.theme.iconSize;
238
+ }, function (props) {
239
+ return props.theme.iconSize;
240
+ }, function (props) {
241
+ return props.theme.focusColor;
242
+ }, function (props) {
243
+ return props.disabled && "outline: none;";
244
+ });
245
+
246
+ DxcChip.propTypes = {
247
+ label: _propTypes["default"].string,
248
+ disabled: _propTypes["default"].bool,
249
+ theme: _propTypes["default"].oneOf(["dark", "light"]),
250
+ suffixIcon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
251
+ prefixIcon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
252
+ suffixIconSrc: _propTypes["default"].string,
253
+ prefixIconSrc: _propTypes["default"].string,
254
+ onClickSuffix: _propTypes["default"].func,
255
+ onClickPrefix: _propTypes["default"].func,
256
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
257
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
258
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
259
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
260
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
261
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
262
+ tabIndex: _propTypes["default"].number
263
+ };
264
+ var _default = DxcChip;
265
+ exports["default"] = _default;
@@ -0,0 +1,22 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+
9
+ type Props = {
10
+ label?: string;
11
+ suffixIcon?: any;
12
+ preffixIcon?: any;
13
+ suffixIconSrc?: string;
14
+ onClickSuffix?: void;
15
+ prefixIconSrc?: string;
16
+ onClickPrefix?: void;
17
+ disabled?: boolean;
18
+ margin?: Space | Margin;
19
+ tabIndex?: number;
20
+ };
21
+
22
+ export default function DxcChip(props: Props): JSX.Element;
@@ -1,7 +1,5 @@
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
 
7
5
  Object.defineProperty(exports, "__esModule", {
@@ -11,18 +9,14 @@ exports["default"] = void 0;
11
9
 
12
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
11
 
14
- var _react = _interopRequireWildcard(require("react"));
12
+ var _react = _interopRequireDefault(require("react"));
15
13
 
16
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
17
15
 
18
16
  var _propTypes = _interopRequireDefault(require("prop-types"));
19
17
 
20
- var _variables = require("./variables.js");
21
-
22
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
23
-
24
18
  function _templateObject() {
25
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n margin-right: 1px;\n cursor: default;\n"]);
19
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: #d0011b;\n margin-right: 1px;\n cursor: default;\n"]);
26
20
 
27
21
  _templateObject = function _templateObject() {
28
22
  return data;
@@ -34,14 +28,10 @@ function _templateObject() {
34
28
  var DxcRequired = function DxcRequired(_ref) {
35
29
  var _ref$theme = _ref.theme,
36
30
  theme = _ref$theme === void 0 ? "light" : _ref$theme;
37
- return _react["default"].createElement(RequiredSpan, {
38
- brightness: theme
39
- }, "*");
31
+ return _react["default"].createElement(RequiredSpan, null, "*");
40
32
  };
41
33
 
42
- var RequiredSpan = _styledComponents["default"].span(_templateObject(), function (props) {
43
- return props.brightness === "dark" ? props.theme.lightRed : props.theme.darkRed;
44
- });
34
+ var RequiredSpan = _styledComponents["default"].span(_templateObject());
45
35
 
46
36
  DxcRequired.propTypes = {
47
37
  theme: _propTypes["default"].oneOf(["dark", "light"])