@dxc-technology/halstack-react 0.0.0-63ee6f9 → 0.0.0-64ec938

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 (163) hide show
  1. package/HalstackContext.d.ts +12 -0
  2. package/HalstackContext.js +295 -0
  3. package/accordion/Accordion.d.ts +1 -1
  4. package/accordion/Accordion.js +7 -28
  5. package/accordion/Accordion.stories.tsx +12 -12
  6. package/accordion/Accordion.test.js +19 -4
  7. package/accordion/types.d.ts +4 -0
  8. package/accordion-group/AccordionGroup.d.ts +1 -1
  9. package/accordion-group/AccordionGroup.js +14 -15
  10. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  11. package/accordion-group/AccordionGroup.test.js +24 -6
  12. package/accordion-group/types.d.ts +4 -0
  13. package/alert/Alert.js +4 -1
  14. package/badge/Badge.d.ts +1 -1
  15. package/badge/Badge.js +5 -3
  16. package/badge/types.d.ts +1 -0
  17. package/bleed/Bleed.js +1 -34
  18. package/bleed/Bleed.stories.tsx +94 -95
  19. package/bleed/types.d.ts +1 -1
  20. package/box/Box.js +22 -32
  21. package/bulleted-list/BulletedList.d.ts +7 -0
  22. package/bulleted-list/BulletedList.js +123 -0
  23. package/bulleted-list/BulletedList.stories.tsx +200 -0
  24. package/bulleted-list/types.d.ts +11 -0
  25. package/{list → bulleted-list}/types.js +0 -0
  26. package/button/Button.js +14 -11
  27. package/card/Card.js +24 -27
  28. package/checkbox/Checkbox.d.ts +1 -1
  29. package/checkbox/Checkbox.js +38 -28
  30. package/checkbox/Checkbox.stories.tsx +124 -128
  31. package/checkbox/types.d.ts +3 -3
  32. package/common/variables.js +197 -84
  33. package/date-input/DateInput.js +38 -20
  34. package/date-input/DateInput.test.js +9 -22
  35. package/date-input/types.d.ts +12 -9
  36. package/dialog/Dialog.js +4 -32
  37. package/dropdown/Dropdown.js +13 -17
  38. package/dropdown/Dropdown.stories.tsx +1 -1
  39. package/file-input/FileInput.js +9 -6
  40. package/file-input/FileItem.js +7 -5
  41. package/flex/Flex.d.ts +3 -0
  42. package/flex/Flex.js +74 -0
  43. package/flex/Flex.stories.tsx +103 -0
  44. package/flex/types.d.ts +21 -0
  45. package/{radio → flex}/types.js +0 -0
  46. package/footer/Footer.js +15 -88
  47. package/footer/Icons.js +1 -1
  48. package/header/Header.js +27 -48
  49. package/header/Header.stories.tsx +46 -36
  50. package/header/Header.test.js +18 -2
  51. package/inset/Inset.js +1 -34
  52. package/inset/Inset.stories.tsx +36 -36
  53. package/inset/types.d.ts +25 -1
  54. package/layout/ApplicationLayout.d.ts +4 -3
  55. package/layout/ApplicationLayout.js +68 -113
  56. package/layout/ApplicationLayout.stories.tsx +14 -59
  57. package/layout/Icons.d.ts +5 -0
  58. package/layout/Icons.js +13 -2
  59. package/layout/SidenavContext.d.ts +5 -0
  60. package/layout/SidenavContext.js +19 -0
  61. package/layout/types.d.ts +5 -10
  62. package/link/Link.d.ts +3 -2
  63. package/link/Link.js +57 -74
  64. package/link/Link.stories.tsx +88 -53
  65. package/link/Link.test.js +7 -15
  66. package/link/types.d.ts +7 -23
  67. package/main.d.ts +8 -5
  68. package/main.js +51 -21
  69. package/number-input/NumberInput.test.js +2 -4
  70. package/number-input/types.d.ts +13 -10
  71. package/package.json +7 -5
  72. package/paginator/Paginator.js +17 -38
  73. package/paginator/Paginator.test.js +42 -0
  74. package/paragraph/Paragraph.d.ts +6 -0
  75. package/paragraph/Paragraph.js +38 -0
  76. package/paragraph/Paragraph.stories.tsx +44 -0
  77. package/password-input/PasswordInput.js +7 -4
  78. package/password-input/PasswordInput.test.js +3 -6
  79. package/password-input/types.d.ts +14 -11
  80. package/progress-bar/ProgressBar.js +1 -1
  81. package/progress-bar/ProgressBar.stories.jsx +11 -11
  82. package/quick-nav/QuickNav.d.ts +4 -0
  83. package/quick-nav/QuickNav.js +118 -0
  84. package/quick-nav/QuickNav.stories.tsx +264 -0
  85. package/quick-nav/types.d.ts +21 -0
  86. package/quick-nav/types.js +5 -0
  87. package/radio-group/Radio.js +1 -1
  88. package/radio-group/RadioGroup.js +10 -7
  89. package/resultsetTable/ResultsetTable.test.js +42 -0
  90. package/select/Listbox.d.ts +4 -0
  91. package/select/Listbox.js +175 -0
  92. package/select/Option.js +1 -1
  93. package/select/Select.js +106 -186
  94. package/select/Select.stories.tsx +144 -100
  95. package/select/Select.test.js +377 -231
  96. package/select/types.d.ts +32 -11
  97. package/sidenav/Sidenav.d.ts +1 -1
  98. package/sidenav/Sidenav.js +20 -9
  99. package/slider/Slider.d.ts +1 -1
  100. package/slider/Slider.js +2 -1
  101. package/slider/Slider.stories.tsx +8 -8
  102. package/slider/Slider.test.js +31 -10
  103. package/slider/types.d.ts +4 -0
  104. package/spinner/Spinner.js +1 -1
  105. package/stack/Stack.d.ts +2 -1
  106. package/stack/Stack.js +29 -70
  107. package/stack/Stack.stories.tsx +189 -90
  108. package/stack/types.d.ts +15 -7
  109. package/switch/Switch.d.ts +1 -1
  110. package/switch/Switch.js +35 -19
  111. package/switch/Switch.stories.tsx +14 -14
  112. package/switch/Switch.test.js +25 -0
  113. package/switch/types.d.ts +6 -2
  114. package/tabs/Tabs.d.ts +1 -1
  115. package/tabs/Tabs.js +9 -11
  116. package/tabs/Tabs.stories.tsx +0 -8
  117. package/tabs/Tabs.test.js +26 -9
  118. package/tabs/types.d.ts +4 -0
  119. package/tabs-nav/NavTabs.d.ts +8 -0
  120. package/tabs-nav/NavTabs.js +125 -0
  121. package/tabs-nav/NavTabs.stories.tsx +170 -0
  122. package/tabs-nav/NavTabs.test.js +82 -0
  123. package/tabs-nav/Tab.d.ts +4 -0
  124. package/tabs-nav/Tab.js +132 -0
  125. package/tabs-nav/types.d.ts +53 -0
  126. package/tabs-nav/types.js +5 -0
  127. package/tag/Tag.js +5 -8
  128. package/text-input/Suggestion.d.ts +4 -0
  129. package/text-input/Suggestion.js +55 -0
  130. package/text-input/TextInput.js +48 -76
  131. package/text-input/TextInput.test.js +22 -35
  132. package/text-input/types.d.ts +27 -12
  133. package/textarea/Textarea.js +12 -23
  134. package/textarea/Textarea.test.js +10 -20
  135. package/textarea/types.d.ts +14 -11
  136. package/toggle-group/ToggleGroup.d.ts +1 -1
  137. package/toggle-group/ToggleGroup.js +5 -4
  138. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  139. package/toggle-group/ToggleGroup.test.js +35 -4
  140. package/toggle-group/types.d.ts +8 -0
  141. package/typography/Typography.d.ts +4 -0
  142. package/typography/Typography.js +131 -0
  143. package/typography/Typography.stories.tsx +198 -0
  144. package/typography/types.d.ts +18 -0
  145. package/typography/types.js +5 -0
  146. package/useTheme.js +2 -2
  147. package/useTranslatedLabels.d.ts +2 -0
  148. package/useTranslatedLabels.js +20 -0
  149. package/wizard/Wizard.js +35 -29
  150. package/ThemeContext.d.ts +0 -10
  151. package/ThemeContext.js +0 -243
  152. package/list/List.d.ts +0 -4
  153. package/list/List.js +0 -47
  154. package/list/List.stories.tsx +0 -95
  155. package/list/types.d.ts +0 -7
  156. package/radio/Radio.d.ts +0 -4
  157. package/radio/Radio.js +0 -174
  158. package/radio/Radio.stories.tsx +0 -192
  159. package/radio/Radio.test.js +0 -71
  160. package/radio/types.d.ts +0 -54
  161. package/text/Text.d.ts +0 -7
  162. package/text/Text.js +0 -30
  163. package/text/Text.stories.tsx +0 -19
@@ -0,0 +1,200 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import Title from "../../.storybook/components/Title";
4
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import DxcBulletedList from "./BulletedList";
7
+
8
+ export default {
9
+ title: "BulletedList",
10
+ component: DxcBulletedList,
11
+ };
12
+
13
+ const icon = (
14
+ <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
15
+ <path d="M0 0h24v24H0V0z" fill="none" />
16
+ <path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" />
17
+ </svg>
18
+ );
19
+
20
+ export const Chromatic = () => (
21
+ <>
22
+ <ExampleContainer>
23
+ <Title title="Icon list" level={4} />
24
+ <DxcBulletedList type="icon" icon={icon}>
25
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
26
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
27
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
28
+ </DxcBulletedList>
29
+ <Title title="Number list" level={4} />
30
+ <DxcBulletedList type="number">
31
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
32
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
33
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
34
+ </DxcBulletedList>
35
+ <Title title="Square" level={4} />
36
+ <DxcBulletedList type="square">
37
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
38
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
39
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
40
+ </DxcBulletedList>
41
+ <Title title="Circle" level={4} />
42
+ <DxcBulletedList type="circle">
43
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
44
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
45
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
46
+ </DxcBulletedList>
47
+ <Title title="Disc" level={4} />
48
+ <DxcBulletedList>
49
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
50
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
51
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
52
+ </DxcBulletedList>
53
+ <Title title="Multiple lines" level={4} />
54
+ <Container>
55
+ <Title title="Number" level={4} />
56
+ <DxcBulletedList type="number">
57
+ <DxcBulletedList.Item>
58
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
59
+ dolore magna aliqua.
60
+ </DxcBulletedList.Item>
61
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
62
+ </DxcBulletedList>
63
+ </Container>
64
+ <Container>
65
+ <Title title="Square" level={4} />
66
+ <DxcBulletedList type="square">
67
+ <DxcBulletedList.Item>
68
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
69
+ dolore magna aliqua.
70
+ </DxcBulletedList.Item>
71
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
72
+ </DxcBulletedList>
73
+ </Container>
74
+ <Container>
75
+ <Title title="Circle" level={4} />
76
+ <DxcBulletedList type="circle">
77
+ <DxcBulletedList.Item>
78
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
79
+ dolore magna aliqua.
80
+ </DxcBulletedList.Item>
81
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
82
+ </DxcBulletedList>
83
+ </Container>
84
+ <Title title="Disc" level={4} />
85
+ <Container>
86
+ <DxcBulletedList>
87
+ <DxcBulletedList.Item>
88
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
89
+ dolore magna aliqua.
90
+ </DxcBulletedList.Item>
91
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
92
+ </DxcBulletedList>
93
+ </Container>
94
+ <Container>
95
+ <Title title="Icon" level={4} />
96
+ <DxcBulletedList type="icon" icon={icon}>
97
+ <DxcBulletedList.Item>
98
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
99
+ dolore magna aliqua.
100
+ </DxcBulletedList.Item>
101
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
102
+ </DxcBulletedList>
103
+ </Container>
104
+ </ExampleContainer>
105
+ <BackgroundColorProvider color="#333333">
106
+ <DarkContainerForBulletedList>
107
+ <Title title="Icon list" theme="dark" level={4} />
108
+ <DxcBulletedList type="icon" icon={icon}>
109
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
110
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
111
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
112
+ </DxcBulletedList>
113
+ <Title title="Number list" theme="dark" level={4} />
114
+ <DxcBulletedList type="number">
115
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
116
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
117
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
118
+ </DxcBulletedList>
119
+ <Title title="Square" theme="dark" level={4} />
120
+ <DxcBulletedList type="square">
121
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
122
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
123
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
124
+ </DxcBulletedList>
125
+ <Title title="Circle" theme="dark" level={4} />
126
+ <DxcBulletedList type="circle">
127
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
128
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
129
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
130
+ </DxcBulletedList>
131
+ <Title title="Disc" theme="dark" level={4} />
132
+ <DxcBulletedList>
133
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
134
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
135
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
136
+ </DxcBulletedList>
137
+ <Title title="Multiple lines" theme="dark" level={4} />
138
+ <Container>
139
+ <Title title="Number" theme="dark" level={4} />
140
+ <DxcBulletedList type="number">
141
+ <DxcBulletedList.Item>
142
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
143
+ dolore magna aliqua.
144
+ </DxcBulletedList.Item>
145
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
146
+ </DxcBulletedList>
147
+ </Container>
148
+ <Container>
149
+ <Title title="Square" theme="dark" level={4} />
150
+ <DxcBulletedList type="square">
151
+ <DxcBulletedList.Item>
152
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
153
+ dolore magna aliqua.
154
+ </DxcBulletedList.Item>
155
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
156
+ </DxcBulletedList>
157
+ </Container>
158
+ <Container>
159
+ <Title title="Circle" theme="dark" level={4} />
160
+ <DxcBulletedList type="circle">
161
+ <DxcBulletedList.Item>
162
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
163
+ dolore magna aliqua.
164
+ </DxcBulletedList.Item>
165
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
166
+ </DxcBulletedList>
167
+ </Container>
168
+ <Title title="Disc" theme="dark" level={4} />
169
+ <Container>
170
+ <DxcBulletedList>
171
+ <DxcBulletedList.Item>
172
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
173
+ dolore magna aliqua.
174
+ </DxcBulletedList.Item>
175
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
176
+ </DxcBulletedList>
177
+ </Container>
178
+ <Container>
179
+ <Title title="Icon" theme="dark" level={4} />
180
+ <DxcBulletedList type="icon" icon={icon}>
181
+ <DxcBulletedList.Item>
182
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
183
+ dolore magna aliqua.
184
+ </DxcBulletedList.Item>
185
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
186
+ </DxcBulletedList>
187
+ </Container>
188
+ </DarkContainerForBulletedList>
189
+ </BackgroundColorProvider>
190
+ </>
191
+ );
192
+
193
+ const Container = styled.div`
194
+ width: 400px;
195
+ `;
196
+
197
+ const DarkContainerForBulletedList = styled.div`
198
+ background-color: #333333;
199
+ padding: 5px;
200
+ `;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ declare type SVG = React.SVGProps<SVGSVGElement> | React.FunctionComponent<React.SVGProps<SVGSVGElement>>;
3
+ declare type Props = {
4
+ children: React.ReactNode;
5
+ type?: "disc" | "circle" | "square" | "number" | "icon";
6
+ icon?: string | SVG;
7
+ };
8
+ export default Props;
9
+ export declare type BulletedListItemPropsType = {
10
+ children?: React.ReactNode;
11
+ };
File without changes
package/button/Button.js CHANGED
@@ -45,14 +45,22 @@ var DxcButton = function DxcButton(_ref) {
45
45
  _ref$type = _ref.type,
46
46
  type = _ref$type === void 0 ? "button" : _ref$type,
47
47
  icon = _ref.icon,
48
- _onClick = _ref.onClick,
48
+ _ref$onClick = _ref.onClick,
49
+ _onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
49
50
  margin = _ref.margin,
50
51
  _ref$size = _ref.size,
51
52
  size = _ref$size === void 0 ? "fitContent" : _ref$size,
52
53
  _ref$tabIndex = _ref.tabIndex,
53
54
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
55
+
54
56
  var colorsTheme = (0, _useTheme["default"])();
55
57
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
58
+
59
+ var labelComponent = /*#__PURE__*/_react["default"].createElement(LabelContainer, {
60
+ icon: icon,
61
+ iconPosition: iconPosition
62
+ }, label);
63
+
56
64
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
57
65
  theme: colorsTheme.button
58
66
  }, /*#__PURE__*/_react["default"].createElement(DxCButton, {
@@ -73,15 +81,12 @@ var DxcButton = function DxcButton(_ref) {
73
81
  onClick: function onClick() {
74
82
  _onClick();
75
83
  }
76
- }, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
77
- icon: icon,
78
- iconPosition: iconPosition
79
- }, label), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
84
+ }, label && iconPosition === "after" && labelComponent, icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
80
85
  label: label,
81
86
  iconPosition: iconPosition
82
87
  }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
83
88
  src: icon
84
- }) : icon))));
89
+ }) : icon), label && iconPosition === "before" && labelComponent)));
85
90
  };
86
91
 
87
92
  var sizes = {
@@ -118,7 +123,7 @@ var IconContainer = _styledComponents["default"].div(_templateObject2 || (_templ
118
123
 
119
124
  var ButtonIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
120
125
 
121
- 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) {
126
+ 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 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) {
122
127
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
123
128
  }, function (props) {
124
129
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -140,8 +145,6 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
140
145
  return props.theme.paddingTop;
141
146
  }, function (props) {
142
147
  return props.theme.paddingBottom;
143
- }, function (props) {
144
- return props.iconPosition === "after" && "row" || "row-reverse";
145
148
  }, function (props) {
146
149
  return props.theme.fontFamily;
147
150
  }, function (props) {
@@ -159,9 +162,9 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
159
162
  backgroundType = props.backgroundType;
160
163
 
161
164
  if (mode === "primary") {
162
- 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 ");
165
+ 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 ");
163
166
  } else if (mode === "secondary") {
164
- 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 ");
167
+ 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 ");
165
168
  } else if (mode === "text") {
166
169
  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 ");
167
170
  }
package/card/Card.js CHANGED
@@ -25,7 +25,7 @@ var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
26
26
  var _Box = _interopRequireDefault(require("../box/Box"));
27
27
 
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
28
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
29
29
 
30
30
  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); }
31
31
 
@@ -56,22 +56,13 @@ var DxcCard = function DxcCard(_ref) {
56
56
  isHovered = _useState2[0],
57
57
  changeIsHovered = _useState2[1];
58
58
 
59
- var tagContent = /*#__PURE__*/_react["default"].createElement(_Box["default"], {
60
- shadowDepth: !outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
61
- }, /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
62
- theme: colorsTheme.card
63
- }, /*#__PURE__*/_react["default"].createElement(CardContainer, {
64
- hasAction: onClick || linkHref,
65
- imagePosition: imagePosition
66
- }, imageSrc && /*#__PURE__*/_react["default"].createElement(ImageContainer, {
59
+ var imageComponent = /*#__PURE__*/_react["default"].createElement(ImageContainer, {
67
60
  imageBgColor: imageBgColor
68
61
  }, /*#__PURE__*/_react["default"].createElement(TagImage, {
69
62
  imagePadding: imagePadding,
70
63
  cover: imageCover,
71
64
  src: imageSrc
72
- })), /*#__PURE__*/_react["default"].createElement(CardContent, {
73
- contentPadding: contentPadding
74
- }, children))));
65
+ }));
75
66
 
76
67
  return /*#__PURE__*/_react["default"].createElement(StyledDxcCard, {
77
68
  margin: margin,
@@ -82,15 +73,23 @@ var DxcCard = function DxcCard(_ref) {
82
73
  return changeIsHovered(false);
83
74
  },
84
75
  onClick: onClick,
85
- hasAction: onClick,
86
- tabIndex: typeof onClick === "function" && !linkHref ? tabIndex : -1
87
- }, linkHref && /*#__PURE__*/_react["default"].createElement(StyledLink, {
88
- tabIndex: tabIndex,
76
+ hasAction: onClick || linkHref,
77
+ tabIndex: onClick || linkHref ? tabIndex : -1,
78
+ as: linkHref && "a",
89
79
  href: linkHref
90
- }, tagContent) || tagContent);
80
+ }, /*#__PURE__*/_react["default"].createElement(_Box["default"], {
81
+ shadowDepth: !outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
82
+ }, /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
83
+ theme: colorsTheme.card
84
+ }, /*#__PURE__*/_react["default"].createElement(CardContainer, {
85
+ hasAction: onClick || linkHref,
86
+ imagePosition: imagePosition
87
+ }, imageSrc && imagePosition === "before" && imageComponent, /*#__PURE__*/_react["default"].createElement(CardContent, {
88
+ contentPadding: contentPadding
89
+ }, children), imageSrc && imagePosition === "after" && imageComponent))));
91
90
  };
92
91
 
93
- var StyledDxcCard = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n outline: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n :focus {\n outline: #0095ff auto 1px;\n }\n"])), function (_ref2) {
92
+ var StyledDxcCard = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n outline: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n text-decoration: none;\n\n ", "\n"])), function (_ref2) {
94
93
  var hasAction = _ref2.hasAction;
95
94
  return hasAction && "pointer" || "unset";
96
95
  }, function (_ref3) {
@@ -111,12 +110,12 @@ var StyledDxcCard = _styledComponents["default"].div(_templateObject || (_templa
111
110
  }, function (_ref8) {
112
111
  var margin = _ref8.margin;
113
112
  return margin && margin.left ? _variables.spaces[margin.left] : "";
113
+ }, function (_ref9) {
114
+ var hasAction = _ref9.hasAction;
115
+ return hasAction && ":focus {\n outline: #0095ff auto 1px;\n }";
114
116
  });
115
117
 
116
- var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"])), function (_ref9) {
117
- var imagePosition = _ref9.imagePosition;
118
- return imagePosition === "before" && "row" || "row-reverse";
119
- }, function (props) {
118
+ var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"])), function (props) {
120
119
  return props.theme.height;
121
120
  }, function (props) {
122
121
  return props.theme.width;
@@ -125,9 +124,7 @@ var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templ
125
124
  return hasAction ? "" : "unset";
126
125
  });
127
126
 
128
- var StyledLink = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n text-decoration: none;\n\n :focus {\n outline-color: #0095ff;\n }\n"])));
129
-
130
- var TagImage = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n object-fit: ", ";\n"])), function (_ref11) {
127
+ var TagImage = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n object-fit: ", ";\n"])), function (_ref11) {
131
128
  var imagePadding = _ref11.imagePadding;
132
129
  return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
133
130
  }, function (_ref12) {
@@ -138,12 +135,12 @@ var TagImage = _styledComponents["default"].img(_templateObject4 || (_templateOb
138
135
  return cover ? "cover" : "contain";
139
136
  });
140
137
 
141
- var ImageContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: 35%;\n height: 100%;\n flex-shrink: 0;\n background: ", ";\n justify-content: center;\n align-items: center;\n display: inline-flex;\n"])), function (_ref14) {
138
+ var ImageContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 35%;\n height: 100%;\n flex-shrink: 0;\n background: ", ";\n justify-content: center;\n align-items: center;\n display: inline-flex;\n"])), function (_ref14) {
142
139
  var imageBgColor = _ref14.imageBgColor;
143
140
  return imageBgColor;
144
141
  });
145
142
 
146
- var CardContent = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n overflow: hidden;\n"])), function (_ref15) {
143
+ var CardContent = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n overflow: hidden;\n"])), function (_ref15) {
147
144
  var contentPadding = _ref15.contentPadding;
148
145
  return contentPadding && (0, _typeof2["default"])(contentPadding) !== "object" ? _variables.spaces[contentPadding] : "0px";
149
146
  }, function (_ref16) {
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import CheckboxPropsType from "./types";
3
- declare const DxcCheckbox: ({ checked, defaultChecked, value, label, labelPosition, name, disabled, onChange, required, margin, size, tabIndex, }: CheckboxPropsType) => JSX.Element;
3
+ declare const DxcCheckbox: ({ checked, defaultChecked, value, label, labelPosition, name, disabled, optional, onChange, margin, size, tabIndex, }: CheckboxPropsType) => JSX.Element;
4
4
  export default DxcCheckbox;
@@ -21,14 +21,16 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
22
  var _Checkbox = _interopRequireDefault(require("@material-ui/core/Checkbox"));
23
23
 
24
- var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
25
-
26
24
  var _variables = require("../common/variables.js");
27
25
 
28
26
  var _utils = require("../common/utils.js");
29
27
 
28
+ var _uuid = require("uuid");
29
+
30
30
  var _useTheme = _interopRequireDefault(require("../useTheme"));
31
31
 
32
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
33
+
32
34
  var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
33
35
 
34
36
  var _templateObject, _templateObject2, _templateObject3;
@@ -50,27 +52,34 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
50
52
  name = _ref$name === void 0 ? "" : _ref$name,
51
53
  _ref$disabled = _ref.disabled,
52
54
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
55
+ _ref$optional = _ref.optional,
56
+ optional = _ref$optional === void 0 ? false : _ref$optional,
53
57
  onChange = _ref.onChange,
54
- _ref$required = _ref.required,
55
- required = _ref$required === void 0 ? false : _ref$required,
56
58
  margin = _ref.margin,
57
59
  _ref$size = _ref.size,
58
60
  size = _ref$size === void 0 ? "fitContent" : _ref$size,
59
61
  _ref$tabIndex = _ref.tabIndex,
60
62
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
61
63
 
62
- var _useState = (0, _react.useState)(defaultChecked),
63
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
64
- innerChecked = _useState2[0],
65
- setInnerChecked = _useState2[1];
64
+ var _useState = (0, _react.useState)("checkbox-".concat((0, _uuid.v4)())),
65
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
66
+ switchId = _useState2[0];
66
67
 
67
- var _useState3 = (0, _react.useState)(false),
68
+ var labelId = "label-".concat(switchId);
69
+
70
+ var _useState3 = (0, _react.useState)(defaultChecked),
68
71
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
69
- isLabelHovered = _useState4[0],
70
- setIsLabelHovered = _useState4[1];
72
+ innerChecked = _useState4[0],
73
+ setInnerChecked = _useState4[1];
74
+
75
+ var _useState5 = (0, _react.useState)(false),
76
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
77
+ isLabelHovered = _useState6[0],
78
+ setIsLabelHovered = _useState6[1];
71
79
 
72
80
  var colorsTheme = (0, _useTheme["default"])();
73
81
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
82
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
74
83
 
75
84
  var handlerCheckboxChange = function handlerCheckboxChange(checkboxValue) {
76
85
  if (checked === undefined) {
@@ -91,6 +100,17 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
91
100
  setIsLabelHovered(!isLabelHovered);
92
101
  };
93
102
 
103
+ var labelComponent = /*#__PURE__*/_react["default"].createElement(LabelContainer, {
104
+ id: labelId,
105
+ labelPosition: labelPosition,
106
+ onClick: disabled === true ? function () {} : handlerCheckboxChange,
107
+ disabled: disabled,
108
+ className: "labelContainer",
109
+ backgroundType: backgroundType,
110
+ onMouseOver: handleLabelHover,
111
+ onMouseOut: handleLabelHover
112
+ }, labelPosition === "before" ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, label, " ", optional && /*#__PURE__*/_react["default"].createElement("span", null, translatedLabels.formFields.optionalLabel)) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, optional && /*#__PURE__*/_react["default"].createElement("span", null, "(Optional)"), " ", label));
113
+
94
114
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
95
115
  theme: colorsTheme.checkbox
96
116
  }, /*#__PURE__*/_react["default"].createElement(CheckboxContainer, {
@@ -103,11 +123,11 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
103
123
  size: size,
104
124
  backgroundType: backgroundType,
105
125
  isLabelHovered: isLabelHovered
106
- }, /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
126
+ }, label && labelPosition === "before" && labelComponent, /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
107
127
  checked: checked !== null && checked !== void 0 ? checked : innerChecked,
108
128
  inputProps: {
109
129
  name: name,
110
- "aria-label": label,
130
+ "aria-labelledby": labelId,
111
131
  role: "checkbox",
112
132
  "aria-checked": checked !== null && checked !== void 0 ? checked : innerChecked
113
133
  },
@@ -122,15 +142,7 @@ var DxcCheckbox = function DxcCheckbox(_ref) {
122
142
  disabled: disabled,
123
143
  checked: checked !== null && checked !== void 0 ? checked : innerChecked,
124
144
  backgroundType: backgroundType
125
- }), required && /*#__PURE__*/_react["default"].createElement(_RequiredComponent["default"], null), label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
126
- labelPosition: labelPosition,
127
- onClick: disabled === true ? function (e) {} : handlerCheckboxChange,
128
- disabled: disabled,
129
- className: "labelContainer",
130
- backgroundType: backgroundType,
131
- onMouseOver: handleLabelHover,
132
- onMouseOut: handleLabelHover
133
- }, label)));
145
+ }), label && labelPosition === "after" && labelComponent));
134
146
  };
135
147
 
136
148
  var sizes = {
@@ -181,19 +193,19 @@ var getNotDisabledColor = function getNotDisabledColor(props, element) {
181
193
  }
182
194
  };
183
195
 
184
- var LabelContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n cursor: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
196
+ var LabelContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n cursor: ", ";\n"])), function (props) {
185
197
  return props.disabled ? getDisabledColor(props, "label") : getNotDisabledColor(props, "label");
186
- }, function (props) {
187
- return props.disabled ? "not-allowed" : "pointer";
188
198
  }, function (props) {
189
199
  return props.theme.fontFamily;
190
200
  }, function (props) {
191
201
  return props.theme.fontSize;
192
202
  }, function (props) {
193
203
  return props.theme.fontWeight;
204
+ }, function (props) {
205
+ return props.disabled ? "not-allowed" : "pointer";
194
206
  });
195
207
 
196
- var CheckboxContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (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 border-radius: 2px;\n outline: 2px solid\n ", ";\n outline-offset: -1px;\n }\n }\n z-index: 1;\n margin-left: ", ";\n margin-right: ", ";\n padding: 0px;\n left: ", ";\n right: ", ";\n }\n"])), function (props) {
208
+ var CheckboxContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (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 .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 border-radius: 2px;\n outline: 2px solid\n ", ";\n outline-offset: -1px;\n }\n }\n z-index: 1;\n margin-left: ", ";\n margin-right: ", ";\n padding: 0px;\n left: ", ";\n right: ", ";\n }\n"])), function (props) {
197
209
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
198
210
  }, function (props) {
199
211
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -207,8 +219,6 @@ var CheckboxContainer = _styledComponents["default"].span(_templateObject2 || (_
207
219
  return calculateWidth(props.margin, props.size);
208
220
  }, function (props) {
209
221
  return props.disabled ? "not-allowed" : "pointer";
210
- }, function (props) {
211
- return props.labelPosition === "before" ? "row-reverse" : "row";
212
222
  }, function (props) {
213
223
  return props.isLabelHovered ? props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor : getNotDisabledColor(props, "border");
214
224
  }, function (props) {