@dxc-technology/halstack-react 0.0.0-9179a3a → 0.0.0-918d2c8

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 (293) hide show
  1. package/BackgroundColorContext.js +0 -1
  2. package/HalstackContext.d.ts +12 -0
  3. package/HalstackContext.js +335 -0
  4. package/accordion/Accordion.d.ts +1 -1
  5. package/accordion/Accordion.js +117 -136
  6. package/accordion/Accordion.stories.tsx +114 -19
  7. package/accordion/Accordion.test.js +71 -0
  8. package/accordion/types.d.ts +11 -10
  9. package/accordion-group/AccordionGroup.d.ts +1 -1
  10. package/accordion-group/AccordionGroup.js +15 -36
  11. package/accordion-group/AccordionGroup.stories.tsx +28 -2
  12. package/accordion-group/AccordionGroup.test.js +126 -0
  13. package/accordion-group/types.d.ts +16 -9
  14. package/alert/Alert.js +5 -2
  15. package/alert/Alert.stories.tsx +28 -0
  16. package/alert/Alert.test.js +92 -0
  17. package/badge/Badge.d.ts +4 -0
  18. package/badge/Badge.js +5 -3
  19. package/badge/types.d.ts +5 -0
  20. package/{radio → badge}/types.js +0 -0
  21. package/bleed/Bleed.d.ts +3 -0
  22. package/bleed/Bleed.js +51 -0
  23. package/bleed/Bleed.stories.tsx +341 -0
  24. package/bleed/types.d.ts +37 -0
  25. package/bleed/types.js +5 -0
  26. package/box/Box.js +23 -33
  27. package/box/Box.stories.tsx +15 -0
  28. package/box/Box.test.js +18 -0
  29. package/box/types.d.ts +1 -0
  30. package/bulleted-list/BulletedList.d.ts +7 -0
  31. package/bulleted-list/BulletedList.js +123 -0
  32. package/bulleted-list/BulletedList.stories.tsx +200 -0
  33. package/bulleted-list/types.d.ts +11 -0
  34. package/bulleted-list/types.js +5 -0
  35. package/button/Button.d.ts +1 -1
  36. package/button/Button.js +54 -79
  37. package/button/Button.stories.tsx +163 -14
  38. package/button/Button.test.js +35 -0
  39. package/button/types.d.ts +8 -12
  40. package/card/Card.js +24 -27
  41. package/card/Card.stories.tsx +1 -1
  42. package/card/Card.test.js +50 -0
  43. package/card/types.d.ts +1 -0
  44. package/checkbox/Checkbox.d.ts +2 -2
  45. package/checkbox/Checkbox.js +106 -109
  46. package/checkbox/Checkbox.stories.tsx +198 -130
  47. package/checkbox/Checkbox.test.js +155 -0
  48. package/checkbox/types.d.ts +14 -6
  49. package/chip/Chip.d.ts +1 -1
  50. package/chip/Chip.js +20 -64
  51. package/chip/Chip.stories.tsx +98 -13
  52. package/chip/Chip.test.js +56 -0
  53. package/chip/types.d.ts +5 -13
  54. package/common/variables.js +499 -554
  55. package/date-input/Calendar.d.ts +4 -0
  56. package/date-input/Calendar.js +258 -0
  57. package/date-input/DateInput.js +171 -260
  58. package/date-input/DateInput.stories.tsx +199 -33
  59. package/date-input/DateInput.test.js +835 -0
  60. package/date-input/DatePicker.d.ts +4 -0
  61. package/date-input/DatePicker.js +146 -0
  62. package/date-input/Icons.d.ts +6 -0
  63. package/date-input/Icons.js +75 -0
  64. package/date-input/YearPicker.d.ts +4 -0
  65. package/date-input/YearPicker.js +126 -0
  66. package/date-input/types.d.ts +67 -9
  67. package/dialog/Dialog.js +47 -52
  68. package/dialog/Dialog.stories.tsx +99 -22
  69. package/dialog/Dialog.test.js +70 -0
  70. package/dialog/types.d.ts +3 -2
  71. package/dropdown/Dropdown.d.ts +1 -1
  72. package/dropdown/Dropdown.js +248 -277
  73. package/dropdown/Dropdown.stories.tsx +438 -0
  74. package/dropdown/Dropdown.test.js +585 -0
  75. package/dropdown/DropdownMenu.d.ts +4 -0
  76. package/dropdown/DropdownMenu.js +70 -0
  77. package/dropdown/DropdownMenuItem.d.ts +4 -0
  78. package/dropdown/DropdownMenuItem.js +81 -0
  79. package/dropdown/types.d.ts +29 -18
  80. package/file-input/FileInput.d.ts +2 -2
  81. package/file-input/FileInput.js +159 -129
  82. package/file-input/FileInput.stories.tsx +618 -0
  83. package/file-input/FileInput.test.js +498 -0
  84. package/file-input/FileItem.d.ts +4 -14
  85. package/file-input/FileItem.js +43 -66
  86. package/file-input/types.d.ts +17 -0
  87. package/flex/Flex.d.ts +4 -0
  88. package/flex/Flex.js +69 -0
  89. package/flex/Flex.stories.tsx +103 -0
  90. package/flex/types.d.ts +32 -0
  91. package/flex/types.js +5 -0
  92. package/footer/Footer.js +24 -99
  93. package/footer/Footer.stories.tsx +99 -1
  94. package/footer/Footer.test.js +109 -0
  95. package/footer/Icons.js +1 -1
  96. package/footer/types.d.ts +2 -1
  97. package/header/Header.js +107 -128
  98. package/header/Header.stories.tsx +189 -36
  99. package/header/Header.test.js +79 -0
  100. package/header/Icons.js +2 -2
  101. package/header/types.d.ts +3 -2
  102. package/heading/Heading.stories.tsx +3 -2
  103. package/heading/Heading.test.js +186 -0
  104. package/inset/Inset.d.ts +3 -0
  105. package/inset/Inset.js +51 -0
  106. package/inset/Inset.stories.tsx +229 -0
  107. package/inset/types.d.ts +37 -0
  108. package/inset/types.js +5 -0
  109. package/layout/ApplicationLayout.d.ts +16 -6
  110. package/layout/ApplicationLayout.js +71 -125
  111. package/layout/ApplicationLayout.stories.tsx +84 -93
  112. package/layout/Icons.d.ts +5 -0
  113. package/layout/Icons.js +13 -2
  114. package/layout/SidenavContext.d.ts +5 -0
  115. package/layout/SidenavContext.js +19 -0
  116. package/layout/types.d.ts +18 -33
  117. package/link/Link.d.ts +3 -2
  118. package/link/Link.js +61 -86
  119. package/link/Link.stories.tsx +159 -52
  120. package/link/Link.test.js +83 -0
  121. package/link/types.d.ts +9 -29
  122. package/main.d.ts +11 -15
  123. package/main.js +53 -79
  124. package/number-input/NumberInput.js +11 -18
  125. package/number-input/NumberInput.stories.tsx +5 -5
  126. package/number-input/NumberInput.test.js +542 -0
  127. package/number-input/types.d.ts +17 -10
  128. package/package.json +21 -22
  129. package/paginator/Icons.d.ts +5 -0
  130. package/paginator/Icons.js +16 -28
  131. package/paginator/Paginator.js +19 -46
  132. package/paginator/Paginator.stories.tsx +24 -0
  133. package/paginator/Paginator.test.js +315 -0
  134. package/paragraph/Paragraph.d.ts +6 -0
  135. package/paragraph/Paragraph.js +38 -0
  136. package/paragraph/Paragraph.stories.tsx +44 -0
  137. package/password-input/PasswordInput.js +7 -4
  138. package/password-input/PasswordInput.stories.tsx +3 -3
  139. package/password-input/PasswordInput.test.js +181 -0
  140. package/password-input/types.d.ts +14 -11
  141. package/progress-bar/ProgressBar.d.ts +2 -2
  142. package/progress-bar/ProgressBar.js +60 -54
  143. package/progress-bar/ProgressBar.stories.jsx +47 -12
  144. package/progress-bar/ProgressBar.test.js +110 -0
  145. package/progress-bar/types.d.ts +3 -4
  146. package/quick-nav/QuickNav.d.ts +4 -0
  147. package/quick-nav/QuickNav.js +117 -0
  148. package/quick-nav/QuickNav.stories.tsx +356 -0
  149. package/quick-nav/types.d.ts +21 -0
  150. package/quick-nav/types.js +5 -0
  151. package/radio-group/Radio.d.ts +4 -0
  152. package/radio-group/Radio.js +156 -0
  153. package/radio-group/RadioGroup.d.ts +4 -0
  154. package/radio-group/RadioGroup.js +283 -0
  155. package/radio-group/RadioGroup.stories.tsx +214 -0
  156. package/radio-group/RadioGroup.test.js +722 -0
  157. package/radio-group/types.d.ts +114 -0
  158. package/radio-group/types.js +5 -0
  159. package/resultsetTable/Icons.d.ts +7 -0
  160. package/resultsetTable/Icons.js +51 -0
  161. package/resultsetTable/ResultsetTable.js +49 -105
  162. package/resultsetTable/ResultsetTable.stories.tsx +56 -32
  163. package/resultsetTable/ResultsetTable.test.js +325 -0
  164. package/resultsetTable/types.d.ts +2 -2
  165. package/select/Icons.d.ts +10 -0
  166. package/select/Icons.js +93 -0
  167. package/select/Listbox.d.ts +4 -0
  168. package/select/Listbox.js +169 -0
  169. package/select/Option.d.ts +4 -0
  170. package/select/Option.js +97 -0
  171. package/select/Select.d.ts +4 -0
  172. package/select/Select.js +184 -383
  173. package/select/Select.stories.tsx +600 -201
  174. package/select/Select.test.js +2228 -0
  175. package/select/types.d.ts +210 -0
  176. package/select/types.js +5 -0
  177. package/sidenav/Sidenav.d.ts +6 -5
  178. package/sidenav/Sidenav.js +182 -52
  179. package/sidenav/Sidenav.stories.tsx +249 -132
  180. package/sidenav/Sidenav.test.js +44 -0
  181. package/sidenav/types.d.ts +50 -27
  182. package/slider/Slider.d.ts +2 -2
  183. package/slider/Slider.js +122 -96
  184. package/slider/Slider.stories.tsx +72 -9
  185. package/slider/Slider.test.js +250 -0
  186. package/slider/types.d.ts +10 -2
  187. package/spinner/Spinner.js +3 -3
  188. package/spinner/Spinner.stories.jsx +27 -0
  189. package/spinner/Spinner.test.js +64 -0
  190. package/switch/Switch.d.ts +2 -2
  191. package/switch/Switch.js +150 -67
  192. package/switch/Switch.stories.tsx +54 -43
  193. package/switch/Switch.test.js +225 -0
  194. package/switch/types.d.ts +12 -4
  195. package/table/Table.js +1 -1
  196. package/table/Table.stories.jsx +81 -1
  197. package/table/Table.test.js +26 -0
  198. package/tabs/Tab.d.ts +4 -0
  199. package/tabs/Tab.js +133 -0
  200. package/tabs/Tabs.d.ts +1 -1
  201. package/tabs/Tabs.js +364 -110
  202. package/tabs/Tabs.stories.tsx +122 -17
  203. package/tabs/Tabs.test.js +351 -0
  204. package/tabs/types.d.ts +39 -17
  205. package/tabs-nav/NavTabs.d.ts +8 -0
  206. package/tabs-nav/NavTabs.js +125 -0
  207. package/tabs-nav/NavTabs.stories.tsx +172 -0
  208. package/tabs-nav/NavTabs.test.js +82 -0
  209. package/tabs-nav/Tab.d.ts +4 -0
  210. package/tabs-nav/Tab.js +128 -0
  211. package/tabs-nav/types.d.ts +53 -0
  212. package/tabs-nav/types.js +5 -0
  213. package/tag/Tag.d.ts +1 -1
  214. package/tag/Tag.js +18 -28
  215. package/tag/Tag.stories.tsx +38 -28
  216. package/tag/Tag.test.js +60 -0
  217. package/tag/types.d.ts +23 -14
  218. package/text-input/Icons.d.ts +8 -0
  219. package/text-input/Icons.js +60 -0
  220. package/text-input/Suggestion.d.ts +4 -0
  221. package/text-input/Suggestion.js +84 -0
  222. package/text-input/Suggestions.d.ts +4 -0
  223. package/text-input/Suggestions.js +134 -0
  224. package/text-input/TextInput.js +219 -332
  225. package/text-input/TextInput.stories.tsx +309 -196
  226. package/text-input/TextInput.test.js +1724 -0
  227. package/text-input/types.d.ts +51 -13
  228. package/textarea/Textarea.js +20 -27
  229. package/textarea/Textarea.stories.jsx +96 -15
  230. package/textarea/Textarea.test.js +437 -0
  231. package/textarea/types.d.ts +18 -11
  232. package/toggle-group/ToggleGroup.d.ts +1 -1
  233. package/toggle-group/ToggleGroup.js +12 -14
  234. package/toggle-group/ToggleGroup.stories.tsx +69 -32
  235. package/toggle-group/ToggleGroup.test.js +156 -0
  236. package/toggle-group/types.d.ts +46 -25
  237. package/typography/Typography.d.ts +4 -0
  238. package/typography/Typography.js +131 -0
  239. package/typography/Typography.stories.tsx +198 -0
  240. package/typography/types.d.ts +18 -0
  241. package/typography/types.js +5 -0
  242. package/useTheme.js +2 -2
  243. package/useTranslatedLabels.d.ts +2 -0
  244. package/useTranslatedLabels.js +20 -0
  245. package/wizard/Wizard.d.ts +1 -1
  246. package/wizard/Wizard.js +111 -57
  247. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
  248. package/wizard/Wizard.test.js +141 -0
  249. package/wizard/types.d.ts +12 -11
  250. package/ThemeContext.d.ts +0 -15
  251. package/ThemeContext.js +0 -243
  252. package/V3Select/V3Select.js +0 -455
  253. package/V3Select/index.d.ts +0 -27
  254. package/V3Textarea/V3Textarea.js +0 -260
  255. package/V3Textarea/index.d.ts +0 -27
  256. package/common/RequiredComponent.js +0 -32
  257. package/date/Date.js +0 -373
  258. package/date/index.d.ts +0 -27
  259. package/input-text/Icons.js +0 -22
  260. package/input-text/InputText.js +0 -611
  261. package/input-text/index.d.ts +0 -36
  262. package/list/List.d.ts +0 -7
  263. package/list/List.js +0 -37
  264. package/list/List.stories.tsx +0 -70
  265. package/radio/Radio.d.ts +0 -4
  266. package/radio/Radio.js +0 -174
  267. package/radio/Radio.stories.tsx +0 -192
  268. package/radio/types.d.ts +0 -54
  269. package/row/Row.d.ts +0 -11
  270. package/row/Row.js +0 -124
  271. package/row/Row.stories.tsx +0 -223
  272. package/select/index.d.ts +0 -131
  273. package/stack/Stack.d.ts +0 -10
  274. package/stack/Stack.js +0 -94
  275. package/stack/Stack.stories.tsx +0 -150
  276. package/text/Text.d.ts +0 -7
  277. package/text/Text.js +0 -30
  278. package/text/Text.stories.tsx +0 -19
  279. package/toggle/Toggle.js +0 -186
  280. package/toggle/index.d.ts +0 -21
  281. package/upload/Upload.js +0 -201
  282. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  283. package/upload/buttons-upload/Icons.js +0 -40
  284. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  285. package/upload/dragAndDropArea/Icons.js +0 -39
  286. package/upload/file-upload/FileToUpload.js +0 -115
  287. package/upload/file-upload/Icons.js +0 -66
  288. package/upload/files-upload/FilesToUpload.js +0 -109
  289. package/upload/index.d.ts +0 -15
  290. package/upload/transaction/Icons.js +0 -160
  291. package/upload/transaction/Transaction.js +0 -104
  292. package/upload/transactions/Transactions.js +0 -94
  293. package/wizard/Icons.js +0 -65
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import BadgePropsType from "./types";
3
+ declare const DxcBadge: ({ notificationText, disabled }: BadgePropsType) => JSX.Element;
4
+ export default DxcBadge;
package/badge/Badge.js CHANGED
@@ -24,17 +24,19 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
24
24
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(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; }
25
25
 
26
26
  var DxcBadge = function DxcBadge(_ref) {
27
- var notificationText = _ref.notificationText;
27
+ var notificationText = _ref.notificationText,
28
+ disabled = _ref.disabled;
28
29
  var colorsTheme = (0, _useTheme["default"])();
29
30
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
30
31
  theme: colorsTheme.tabs
31
32
  }, /*#__PURE__*/_react["default"].createElement(StyledDxcBadge, {
32
- notificationText: notificationText
33
+ notificationText: notificationText,
34
+ disabled: disabled
33
35
  }, /*#__PURE__*/_react["default"].createElement("span", null, notificationText)));
34
36
  };
35
37
 
36
38
  var StyledDxcBadge = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n display: flex;\n padding-bottom: 1px;\n padding-right: 1px;\n flex-wrap: wrap;\n box-sizing: border-box;\n align-items: center;\n line-height: 1;\n align-content: center;\n flex-direction: row;\n justify-content: center;\n"])), function (props) {
37
- return props.theme.badgeBackgroundColor;
39
+ return props.disabled ? props.theme.disabledBadgeBackgroundColor : props.theme.badgeBackgroundColor;
38
40
  }, function (props) {
39
41
  return props.theme.badgeFontFamily;
40
42
  }, function (props) {
@@ -0,0 +1,5 @@
1
+ declare type Props = {
2
+ notificationText: boolean | number | string;
3
+ disabled?: boolean;
4
+ };
5
+ export default Props;
File without changes
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import BleedPropsType from "./types";
3
+ export default function Bleed({ space, horizontal, vertical, top, right, bottom, left, children, }: BleedPropsType): JSX.Element;
package/bleed/Bleed.js ADDED
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = Bleed;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _templateObject;
17
+
18
+ function Bleed(_ref) {
19
+ var space = _ref.space,
20
+ horizontal = _ref.horizontal,
21
+ vertical = _ref.vertical,
22
+ top = _ref.top,
23
+ right = _ref.right,
24
+ bottom = _ref.bottom,
25
+ left = _ref.left,
26
+ children = _ref.children;
27
+ return /*#__PURE__*/_react["default"].createElement(StyledBleed, {
28
+ space: space,
29
+ horizontal: horizontal,
30
+ vertical: vertical,
31
+ top: top,
32
+ right: right,
33
+ bottom: bottom,
34
+ left: left
35
+ }, children);
36
+ }
37
+
38
+ function getSpacingValue(spacingName) {
39
+ return spacingName ? spacingName : "0rem";
40
+ }
41
+
42
+ var StyledBleed = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (_ref2) {
43
+ var space = _ref2.space,
44
+ horizontal = _ref2.horizontal,
45
+ vertical = _ref2.vertical,
46
+ top = _ref2.top,
47
+ right = _ref2.right,
48
+ bottom = _ref2.bottom,
49
+ left = _ref2.left;
50
+ return "\n margin: -".concat(getSpacingValue(top || vertical || space), " -").concat(getSpacingValue(right || horizontal || space), " -").concat(getSpacingValue(bottom || vertical || space), " -").concat(getSpacingValue(left || horizontal || space), ";\n");
51
+ });
@@ -0,0 +1,341 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import Title from "../../.storybook/components/Title";
4
+ import DxcBleed from "./Bleed";
5
+ import DxcFlex from "../flex/Flex";
6
+
7
+ export default {
8
+ title: "Bleed",
9
+ component: DxcBleed,
10
+ };
11
+
12
+ export const Chromatic = () => (
13
+ <>
14
+ <Title title="Space = none" theme="light" level={4} />
15
+ <Container>
16
+ <DxcFlex direction="column" gap="1.5rem">
17
+ <Placeholder></Placeholder>
18
+ <DxcBleed space="0rem">
19
+ <Placeholder></Placeholder>
20
+ </DxcBleed>
21
+ <Placeholder></Placeholder>
22
+ </DxcFlex>
23
+ </Container>
24
+ <Title title="Space = xxxsmall" theme="light" level={4} />
25
+ <Container>
26
+ <DxcFlex direction="column" gap="1.5rem">
27
+ <Placeholder></Placeholder>
28
+ <DxcBleed space="0.125rem">
29
+ <Placeholder></Placeholder>
30
+ </DxcBleed>
31
+ <Placeholder></Placeholder>
32
+ </DxcFlex>
33
+ </Container>
34
+ <Title title="Space = xxsmall" theme="light" level={4} />
35
+ <Container>
36
+ <DxcFlex direction="column" gap="1.5rem">
37
+ <Placeholder></Placeholder>
38
+ <DxcBleed space="0.25rem">
39
+ <Placeholder></Placeholder>
40
+ </DxcBleed>
41
+ <Placeholder></Placeholder>
42
+ </DxcFlex>
43
+ </Container>
44
+ <Title title="Space = xsmall" theme="light" level={4} />
45
+ <Container>
46
+ <DxcFlex direction="column" gap="1.5rem">
47
+ <Placeholder></Placeholder>
48
+ <DxcBleed space="0.5rem">
49
+ <Placeholder></Placeholder>
50
+ </DxcBleed>
51
+ <Placeholder></Placeholder>
52
+ </DxcFlex>
53
+ </Container>
54
+ <Title title="Space = small" theme="light" level={4} />
55
+ <Container>
56
+ <DxcFlex direction="column" gap="1.5rem">
57
+ <Placeholder></Placeholder>
58
+ <DxcBleed space="1rem">
59
+ <Placeholder></Placeholder>
60
+ </DxcBleed>
61
+ <Placeholder></Placeholder>
62
+ </DxcFlex>
63
+ </Container>
64
+ <Title title="Space = medium" theme="light" level={4} />
65
+ <Container>
66
+ <DxcFlex direction="column" gap="1.5rem">
67
+ <Placeholder></Placeholder>
68
+ <DxcBleed space="1.5rem">
69
+ <Placeholder></Placeholder>
70
+ </DxcBleed>
71
+ <Placeholder></Placeholder>
72
+ </DxcFlex>
73
+ </Container>
74
+ <Title title="Space = large" theme="light" level={4} />
75
+ <Container>
76
+ <DxcFlex direction="column" gap="1.5rem">
77
+ <Placeholder></Placeholder>
78
+ <DxcBleed space="2rem">
79
+ <Placeholder></Placeholder>
80
+ </DxcBleed>
81
+ <Placeholder></Placeholder>
82
+ </DxcFlex>
83
+ </Container>
84
+ <Title title="Space = xlarge" theme="light" level={4} />
85
+ <Container>
86
+ <DxcFlex direction="column" gap="1.5rem">
87
+ <Placeholder></Placeholder>
88
+ <DxcBleed space="3rem">
89
+ <Placeholder></Placeholder>
90
+ </DxcBleed>
91
+ <Placeholder></Placeholder>
92
+ </DxcFlex>
93
+ </Container>
94
+ <Title title="Space = xxlarge" theme="light" level={4} />
95
+ <Container>
96
+ <DxcFlex direction="column" gap="1.5rem">
97
+ <Placeholder></Placeholder>
98
+ <DxcBleed space="4rem">
99
+ <Placeholder></Placeholder>
100
+ </DxcBleed>
101
+ <Placeholder></Placeholder>
102
+ </DxcFlex>
103
+ </Container>
104
+ <Title title="Space = xxxlarge" theme="light" level={4} />
105
+ <Container>
106
+ <DxcFlex direction="column" gap="1.5rem">
107
+ <Placeholder></Placeholder>
108
+ <DxcBleed space="5rem">
109
+ <Placeholder></Placeholder>
110
+ </DxcBleed>
111
+ <Placeholder></Placeholder>
112
+ </DxcFlex>
113
+ </Container>
114
+
115
+ <Title title="Horizontal = none" theme="light" level={4} />
116
+ <Container>
117
+ <DxcFlex direction="column" gap="1.5rem">
118
+ <Placeholder></Placeholder>
119
+ <DxcBleed horizontal="0rem">
120
+ <Placeholder></Placeholder>
121
+ </DxcBleed>
122
+ <Placeholder></Placeholder>
123
+ </DxcFlex>
124
+ </Container>
125
+ <Title title="Horizontal = xxxsmall" theme="light" level={4} />
126
+ <Container>
127
+ <DxcFlex direction="column" gap="1.5rem">
128
+ <Placeholder></Placeholder>
129
+ <DxcBleed horizontal="0.125rem">
130
+ <Placeholder></Placeholder>
131
+ </DxcBleed>
132
+ <Placeholder></Placeholder>
133
+ </DxcFlex>
134
+ </Container>
135
+ <Title title="Horizontal = xxsmall" theme="light" level={4} />
136
+ <Container>
137
+ <DxcFlex direction="column" gap="1.5rem">
138
+ <Placeholder></Placeholder>
139
+ <DxcBleed horizontal="0.25rem">
140
+ <Placeholder></Placeholder>
141
+ </DxcBleed>
142
+ <Placeholder></Placeholder>
143
+ </DxcFlex>
144
+ </Container>
145
+ <Title title="Horizontal = xsmall" theme="light" level={4} />
146
+ <Container>
147
+ <DxcFlex direction="column" gap="1.5rem">
148
+ <Placeholder></Placeholder>
149
+ <DxcBleed horizontal="0.5rem">
150
+ <Placeholder></Placeholder>
151
+ </DxcBleed>
152
+ <Placeholder></Placeholder>
153
+ </DxcFlex>
154
+ </Container>
155
+ <Title title="Horizontal = small" theme="light" level={4} />
156
+ <Container>
157
+ <DxcFlex direction="column" gap="1.5rem">
158
+ <Placeholder></Placeholder>
159
+ <DxcBleed horizontal="1rem">
160
+ <Placeholder></Placeholder>
161
+ </DxcBleed>
162
+ <Placeholder></Placeholder>
163
+ </DxcFlex>
164
+ </Container>
165
+ <Title title="Horizontal = medium" theme="light" level={4} />
166
+ <Container>
167
+ <DxcFlex direction="column" gap="1.5rem">
168
+ <Placeholder></Placeholder>
169
+ <DxcBleed horizontal="1.5rem">
170
+ <Placeholder></Placeholder>
171
+ </DxcBleed>
172
+ <Placeholder></Placeholder>
173
+ </DxcFlex>
174
+ </Container>
175
+ <Title title="Horizontal = large" theme="light" level={4} />
176
+ <Container>
177
+ <DxcFlex direction="column" gap="1.5rem">
178
+ <Placeholder></Placeholder>
179
+ <DxcBleed horizontal="2rem">
180
+ <Placeholder></Placeholder>
181
+ </DxcBleed>
182
+ <Placeholder></Placeholder>
183
+ </DxcFlex>
184
+ </Container>
185
+ <Title title="Horizontal = xlarge" theme="light" level={4} />
186
+ <Container>
187
+ <DxcFlex direction="column" gap="1.5rem">
188
+ <Placeholder></Placeholder>
189
+ <DxcBleed horizontal="3rem">
190
+ <Placeholder></Placeholder>
191
+ </DxcBleed>
192
+ <Placeholder></Placeholder>
193
+ </DxcFlex>
194
+ </Container>
195
+ <Title title="Horizontal = xxlarge" theme="light" level={4} />
196
+ <Container>
197
+ <DxcFlex direction="column" gap="1.5rem">
198
+ <Placeholder></Placeholder>
199
+ <DxcBleed horizontal="4rem">
200
+ <Placeholder></Placeholder>
201
+ </DxcBleed>
202
+ <Placeholder></Placeholder>
203
+ </DxcFlex>
204
+ </Container>
205
+ <Title title="Horizontal = xxxlarge" theme="light" level={4} />
206
+ <Container>
207
+ <DxcFlex direction="column" gap="1.5rem">
208
+ <Placeholder></Placeholder>
209
+ <DxcBleed horizontal="5rem">
210
+ <Placeholder></Placeholder>
211
+ </DxcBleed>
212
+ <Placeholder></Placeholder>
213
+ </DxcFlex>
214
+ </Container>
215
+
216
+ <Title title="Vertical = none" theme="light" level={4} />
217
+ <Container>
218
+ <DxcFlex direction="column" gap="1.5rem">
219
+ <Placeholder></Placeholder>
220
+ <DxcBleed vertical="0rem">
221
+ <Placeholder></Placeholder>
222
+ </DxcBleed>
223
+ <Placeholder></Placeholder>
224
+ </DxcFlex>
225
+ </Container>
226
+ <Title title="Vertical = xxxsmall" theme="light" level={4} />
227
+ <Container>
228
+ <DxcFlex direction="column" gap="1.5rem">
229
+ <Placeholder></Placeholder>
230
+ <DxcBleed vertical="0.125rem">
231
+ <Placeholder></Placeholder>
232
+ </DxcBleed>
233
+ <Placeholder></Placeholder>
234
+ </DxcFlex>
235
+ </Container>
236
+ <Title title="Vertical = xxsmall" theme="light" level={4} />
237
+ <Container>
238
+ <DxcFlex direction="column" gap="1.5rem">
239
+ <Placeholder></Placeholder>
240
+ <DxcBleed vertical="0.25rem">
241
+ <Placeholder></Placeholder>
242
+ </DxcBleed>
243
+ <Placeholder></Placeholder>
244
+ </DxcFlex>
245
+ </Container>
246
+ <Title title="Vertical = xsmall" theme="light" level={4} />
247
+ <Container>
248
+ <DxcFlex direction="column" gap="1.5rem">
249
+ <Placeholder></Placeholder>
250
+ <DxcBleed vertical="0.5rem">
251
+ <Placeholder></Placeholder>
252
+ </DxcBleed>
253
+ <Placeholder></Placeholder>
254
+ </DxcFlex>
255
+ </Container>
256
+ <Title title="Vertical = small" theme="light" level={4} />
257
+ <Container>
258
+ <DxcFlex direction="column" gap="1.5rem">
259
+ <Placeholder></Placeholder>
260
+ <DxcBleed vertical="1rem">
261
+ <Placeholder></Placeholder>
262
+ </DxcBleed>
263
+ <Placeholder></Placeholder>
264
+ </DxcFlex>
265
+ </Container>
266
+ <Title title="Vertical = medium" theme="light" level={4} />
267
+ <Container>
268
+ <DxcFlex direction="column" gap="1.5rem">
269
+ <Placeholder></Placeholder>
270
+ <DxcBleed vertical="1.5rem">
271
+ <Placeholder></Placeholder>
272
+ </DxcBleed>
273
+ <Placeholder></Placeholder>
274
+ </DxcFlex>
275
+ </Container>
276
+ <Title title="Vertical = large" theme="light" level={4} />
277
+ <Container>
278
+ <DxcFlex direction="column" gap="1.5rem">
279
+ <Placeholder></Placeholder>
280
+ <DxcBleed vertical="2rem">
281
+ <Placeholder></Placeholder>
282
+ </DxcBleed>
283
+ <Placeholder></Placeholder>
284
+ </DxcFlex>
285
+ </Container>
286
+ <Title title="Vertical = xlarge" theme="light" level={4} />
287
+ <Container>
288
+ <DxcFlex direction="column" gap="1.5rem">
289
+ <Placeholder></Placeholder>
290
+ <DxcBleed vertical="3rem">
291
+ <Placeholder></Placeholder>
292
+ </DxcBleed>
293
+ <Placeholder></Placeholder>
294
+ </DxcFlex>
295
+ </Container>
296
+ <Title title="Vertical = xxlarge" theme="light" level={4} />
297
+ <Container>
298
+ <DxcFlex direction="column" gap="1.5rem">
299
+ <Placeholder></Placeholder>
300
+ <DxcBleed vertical="4rem">
301
+ <Placeholder></Placeholder>
302
+ </DxcBleed>
303
+ <Placeholder></Placeholder>
304
+ </DxcFlex>
305
+ </Container>
306
+ <Title title="Vertical = xxxlarge" theme="light" level={4} />
307
+ <Container>
308
+ <DxcFlex direction="column" gap="1.5rem">
309
+ <Placeholder></Placeholder>
310
+ <DxcBleed vertical="5rem">
311
+ <Placeholder></Placeholder>
312
+ </DxcBleed>
313
+ <Placeholder></Placeholder>
314
+ </DxcFlex>
315
+ </Container>
316
+
317
+ <Title title="Top = xsmall, right = small, bottom = medium and left = large" theme="light" level={4} />
318
+ <Container>
319
+ <DxcFlex direction="column" gap="1.5rem">
320
+ <Placeholder></Placeholder>
321
+ <DxcBleed top="0.5rem" right="1rem" bottom="1.5rem" left="2rem">
322
+ <Placeholder></Placeholder>
323
+ </DxcBleed>
324
+ <Placeholder></Placeholder>
325
+ </DxcFlex>
326
+ </Container>
327
+ </>
328
+ );
329
+
330
+ const Container = styled.div`
331
+ background: #f2eafa;
332
+ padding: 5rem;
333
+ margin: 2.5rem;
334
+ `;
335
+
336
+ const Placeholder = styled.div`
337
+ min-height: 40px;
338
+ min-width: 120px;
339
+ border: 1px solid #a46ede;
340
+ background-color: #e5d5f6;
341
+ `;
@@ -0,0 +1,37 @@
1
+ /// <reference types="react" />
2
+ declare type Spacing = "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
3
+ declare type Props = {
4
+ /**
5
+ * Applies the spacing scale to all sides.
6
+ */
7
+ space?: Spacing;
8
+ /**
9
+ * Applies the spacing scale to the left and right sides.
10
+ */
11
+ horizontal?: Spacing;
12
+ /**
13
+ * Applies the spacing scale to the top and bottom sides.
14
+ */
15
+ vertical?: Spacing;
16
+ /**
17
+ * Applies the spacing scale to the top side.
18
+ */
19
+ top?: Spacing;
20
+ /**
21
+ * Applies the spacing scale to the right side.
22
+ */
23
+ right?: Spacing;
24
+ /**
25
+ * Applies the spacing scale to the bottom side.
26
+ */
27
+ bottom?: Spacing;
28
+ /**
29
+ * Applies the spacing scale to the left side.
30
+ */
31
+ left?: Spacing;
32
+ /**
33
+ * Custom content inside the bleed.
34
+ */
35
+ children: React.ReactNode;
36
+ };
37
+ export default Props;
package/bleed/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/box/Box.js CHANGED
@@ -60,7 +60,7 @@ var sizes = {
60
60
  medium: "240px",
61
61
  large: "480px",
62
62
  fillParent: "100%",
63
- fitContent: "unset"
63
+ fitContent: "fit-content"
64
64
  };
65
65
 
66
66
  var calculateWidth = function calculateWidth(margin, size, padding) {
@@ -71,9 +71,8 @@ var calculateWidth = function calculateWidth(margin, size, padding) {
71
71
  return sizes[size];
72
72
  };
73
73
 
74
- 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) {
75
- var display = _ref2.display;
76
- return display;
74
+ 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 (props) {
75
+ return props.display;
77
76
  }, function (props) {
78
77
  return props.theme.borderRadius;
79
78
  }, function (props) {
@@ -90,36 +89,27 @@ var StyledDxcBox = _styledComponents["default"].div(_templateObject || (_templat
90
89
  return props.theme.backgroundColor;
91
90
  }, function (props) {
92
91
  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);
93
- }, function (_ref3) {
94
- var margin = _ref3.margin;
95
- return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
96
- }, function (_ref4) {
97
- var margin = _ref4.margin;
98
- return margin && margin.top ? _variables.spaces[margin.top] : "";
99
- }, function (_ref5) {
100
- var margin = _ref5.margin;
101
- return margin && margin.right ? _variables.spaces[margin.right] : "";
102
- }, function (_ref6) {
103
- var margin = _ref6.margin;
104
- return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
105
- }, function (_ref7) {
106
- var margin = _ref7.margin;
107
- return margin && margin.left ? _variables.spaces[margin.left] : "";
108
- }, function (_ref8) {
109
- var padding = _ref8.padding;
92
+ }, function (props) {
93
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
94
+ }, function (props) {
95
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
96
+ }, function (props) {
97
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
98
+ }, function (props) {
99
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
100
+ }, function (props) {
101
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
102
+ }, function (_ref2) {
103
+ var padding = _ref2.padding;
110
104
  return padding && (0, _typeof2["default"])(padding) !== "object" ? _variables.spaces[padding] : "0px";
111
- }, function (_ref9) {
112
- var padding = _ref9.padding;
113
- return padding && padding.top ? _variables.spaces[padding.top] : "";
114
- }, function (_ref10) {
115
- var padding = _ref10.padding;
116
- return padding && padding.right ? _variables.spaces[padding.right] : "";
117
- }, function (_ref11) {
118
- var padding = _ref11.padding;
119
- return padding && padding.bottom ? _variables.spaces[padding.bottom] : "";
120
- }, function (_ref12) {
121
- var padding = _ref12.padding;
122
- return padding && padding.left ? _variables.spaces[padding.left] : "";
105
+ }, function (props) {
106
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
107
+ }, function (props) {
108
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
109
+ }, function (props) {
110
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
111
+ }, function (props) {
112
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
123
113
  });
124
114
 
125
115
  var _default = DxcBox;
@@ -2,12 +2,19 @@ import React from "react";
2
2
  import Title from "../../.storybook/components/Title";
3
3
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
4
4
  import DxcBox from "./Box";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  export default {
7
8
  title: "Box ",
8
9
  component: DxcBox,
9
10
  };
10
11
 
12
+ const opinionatedTheme = {
13
+ box: {
14
+ baseColor: "#ffffff",
15
+ },
16
+ };
17
+
11
18
  export const Chromatic = () => (
12
19
  <>
13
20
  <Title title="Display flex" theme="light" level={2} />
@@ -128,5 +135,13 @@ export const Chromatic = () => (
128
135
  <Title title="FitContent" theme="light" level={4} />
129
136
  <DxcBox size="fitContent">Box</DxcBox>
130
137
  </ExampleContainer>
138
+ <Title title="Opinionated theme" theme="light" level={2} />
139
+ <ExampleContainer>
140
+ <HalstackProvider theme={opinionatedTheme}>
141
+ <DxcBox display="flex" padding="medium">
142
+ Box
143
+ </DxcBox>
144
+ </HalstackProvider>
145
+ </ExampleContainer>
131
146
  </>
132
147
  );
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ var _Card = _interopRequireDefault(require("../card/Card"));
10
+
11
+ describe("Box component tests", function () {
12
+ test("Box renders with correct text", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], null, "test-box")),
14
+ getByText = _render.getByText;
15
+
16
+ expect(getByText("test-box")).toBeTruthy();
17
+ });
18
+ });
package/box/types.d.ts CHANGED
@@ -31,6 +31,7 @@ declare type Props = {
31
31
  */
32
32
  margin?: Space | Margin;
33
33
  /**
34
+ * @deprecated This prop will be removed shortly, consider using the Inset component for this purpose.
34
35
  * Size of the padding to be applied to the custom area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
35
36
  * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
36
37
  */
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import BulletedListPropsType, { BulletedListItemPropsType } from "./types";
3
+ declare const DxcBulletedList: {
4
+ ({ children, type, icon }: BulletedListPropsType): JSX.Element;
5
+ Item: ({ children }: BulletedListItemPropsType) => JSX.Element;
6
+ };
7
+ export default DxcBulletedList;