@dxc-technology/halstack-react 0.0.0-bd364ae → 0.0.0-bf1a0c9

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 (239) hide show
  1. package/BackgroundColorContext.d.ts +2 -2
  2. package/BackgroundColorContext.js +1 -1
  3. package/HalstackContext.d.ts +1329 -5
  4. package/HalstackContext.js +117 -77
  5. package/accordion/Accordion.js +118 -110
  6. package/accordion/Accordion.stories.tsx +104 -16
  7. package/accordion/Accordion.test.js +10 -11
  8. package/accordion/types.d.ts +2 -1
  9. package/accordion-group/AccordionGroup.js +4 -23
  10. package/accordion-group/AccordionGroup.stories.tsx +27 -1
  11. package/accordion-group/AccordionGroup.test.js +21 -46
  12. package/accordion-group/types.d.ts +8 -1
  13. package/alert/Alert.js +4 -6
  14. package/alert/Alert.stories.tsx +28 -0
  15. package/alert/Alert.test.js +1 -1
  16. package/bleed/Bleed.stories.tsx +64 -63
  17. package/box/Box.js +4 -6
  18. package/box/Box.stories.tsx +15 -0
  19. package/box/Box.test.js +1 -1
  20. package/box/types.d.ts +1 -0
  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/button/Button.js +52 -73
  26. package/button/Button.stories.tsx +159 -8
  27. package/button/Button.test.js +1 -1
  28. package/button/types.d.ts +5 -5
  29. package/card/Card.js +12 -13
  30. package/card/Card.stories.tsx +12 -13
  31. package/card/Card.test.js +1 -1
  32. package/card/types.d.ts +1 -0
  33. package/checkbox/Checkbox.d.ts +2 -2
  34. package/checkbox/Checkbox.js +94 -101
  35. package/checkbox/Checkbox.stories.tsx +131 -59
  36. package/checkbox/Checkbox.test.js +94 -17
  37. package/checkbox/types.d.ts +4 -0
  38. package/chip/Chip.js +18 -26
  39. package/chip/Chip.stories.tsx +96 -9
  40. package/chip/Chip.test.js +3 -5
  41. package/chip/types.d.ts +1 -1
  42. package/common/OpenSans.css +68 -80
  43. package/common/coreTokens.d.ts +146 -0
  44. package/common/coreTokens.js +167 -0
  45. package/common/utils.d.ts +1 -0
  46. package/common/utils.js +4 -4
  47. package/common/variables.d.ts +1482 -0
  48. package/common/variables.js +1009 -1118
  49. package/date-input/Calendar.d.ts +4 -0
  50. package/date-input/Calendar.js +258 -0
  51. package/date-input/DateInput.js +134 -237
  52. package/date-input/DateInput.stories.tsx +199 -33
  53. package/date-input/DateInput.test.js +494 -138
  54. package/date-input/DatePicker.d.ts +4 -0
  55. package/date-input/DatePicker.js +146 -0
  56. package/date-input/Icons.d.ts +6 -0
  57. package/date-input/Icons.js +75 -0
  58. package/date-input/YearPicker.d.ts +4 -0
  59. package/date-input/YearPicker.js +126 -0
  60. package/date-input/types.d.ts +51 -0
  61. package/dialog/Dialog.js +80 -69
  62. package/dialog/Dialog.stories.tsx +230 -123
  63. package/dialog/Dialog.test.js +334 -5
  64. package/dialog/types.d.ts +1 -0
  65. package/dropdown/Dropdown.d.ts +1 -1
  66. package/dropdown/Dropdown.js +246 -249
  67. package/dropdown/Dropdown.stories.tsx +245 -56
  68. package/dropdown/Dropdown.test.js +507 -110
  69. package/dropdown/DropdownMenu.d.ts +4 -0
  70. package/dropdown/DropdownMenu.js +74 -0
  71. package/dropdown/DropdownMenuItem.d.ts +4 -0
  72. package/dropdown/DropdownMenuItem.js +79 -0
  73. package/dropdown/types.d.ts +23 -3
  74. package/file-input/FileInput.d.ts +2 -2
  75. package/file-input/FileInput.js +174 -220
  76. package/file-input/FileInput.stories.tsx +122 -11
  77. package/file-input/FileInput.test.js +14 -14
  78. package/file-input/FileItem.d.ts +4 -14
  79. package/file-input/FileItem.js +39 -63
  80. package/file-input/types.d.ts +17 -0
  81. package/flex/Flex.d.ts +4 -0
  82. package/flex/Flex.js +71 -0
  83. package/flex/Flex.stories.tsx +112 -0
  84. package/flex/types.d.ts +97 -0
  85. package/footer/Footer.js +6 -8
  86. package/footer/Footer.stories.tsx +99 -1
  87. package/footer/Footer.test.js +14 -26
  88. package/footer/Icons.js +1 -1
  89. package/footer/types.d.ts +2 -1
  90. package/grid/Grid.d.ts +7 -0
  91. package/grid/Grid.js +91 -0
  92. package/grid/Grid.stories.tsx +219 -0
  93. package/grid/types.d.ts +115 -0
  94. package/header/Header.d.ts +3 -2
  95. package/header/Header.js +89 -89
  96. package/header/Header.stories.tsx +152 -9
  97. package/header/Header.test.js +2 -2
  98. package/header/Icons.js +2 -2
  99. package/header/types.d.ts +1 -0
  100. package/heading/Heading.js +1 -1
  101. package/heading/Heading.test.js +1 -1
  102. package/inset/Inset.stories.tsx +5 -4
  103. package/layout/ApplicationLayout.d.ts +15 -6
  104. package/layout/ApplicationLayout.js +38 -66
  105. package/layout/ApplicationLayout.stories.tsx +80 -44
  106. package/layout/types.d.ts +18 -29
  107. package/link/Link.js +4 -4
  108. package/link/Link.stories.tsx +73 -6
  109. package/link/Link.test.js +2 -4
  110. package/link/types.d.ts +3 -3
  111. package/main.d.ts +7 -9
  112. package/main.js +33 -49
  113. package/{tabs-nav → nav-tabs}/NavTabs.js +6 -6
  114. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +96 -6
  115. package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
  116. package/{tabs-nav → nav-tabs}/Tab.js +40 -22
  117. package/{tabs-nav → nav-tabs}/types.d.ts +1 -1
  118. package/number-input/NumberInput.test.js +44 -8
  119. package/package.json +17 -21
  120. package/paginator/Icons.d.ts +5 -0
  121. package/paginator/Icons.js +16 -28
  122. package/paginator/Paginator.js +7 -15
  123. package/paginator/Paginator.stories.tsx +24 -0
  124. package/paginator/Paginator.test.js +78 -39
  125. package/paragraph/Paragraph.d.ts +5 -0
  126. package/paragraph/Paragraph.js +38 -0
  127. package/paragraph/Paragraph.stories.tsx +44 -0
  128. package/password-input/PasswordInput.test.js +14 -13
  129. package/progress-bar/ProgressBar.js +60 -54
  130. package/progress-bar/ProgressBar.stories.jsx +38 -3
  131. package/progress-bar/ProgressBar.test.js +68 -23
  132. package/quick-nav/QuickNav.js +23 -18
  133. package/quick-nav/QuickNav.stories.tsx +145 -26
  134. package/radio-group/Radio.d.ts +1 -1
  135. package/radio-group/Radio.js +43 -28
  136. package/radio-group/RadioGroup.js +23 -22
  137. package/radio-group/RadioGroup.stories.tsx +132 -18
  138. package/radio-group/RadioGroup.test.js +124 -97
  139. package/radio-group/types.d.ts +2 -2
  140. package/resultsetTable/Icons.d.ts +7 -0
  141. package/resultsetTable/Icons.js +51 -0
  142. package/resultsetTable/ResultsetTable.js +49 -108
  143. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  144. package/resultsetTable/ResultsetTable.test.js +61 -42
  145. package/resultsetTable/types.d.ts +1 -1
  146. package/select/Listbox.d.ts +1 -1
  147. package/select/Listbox.js +33 -16
  148. package/select/Option.js +11 -24
  149. package/select/Select.js +92 -71
  150. package/select/Select.stories.tsx +513 -136
  151. package/select/Select.test.js +413 -305
  152. package/select/types.d.ts +3 -6
  153. package/sidenav/Icons.d.ts +7 -0
  154. package/sidenav/Icons.js +51 -0
  155. package/sidenav/Sidenav.d.ts +6 -5
  156. package/sidenav/Sidenav.js +147 -54
  157. package/sidenav/Sidenav.stories.tsx +251 -151
  158. package/sidenav/Sidenav.test.js +25 -37
  159. package/sidenav/types.d.ts +52 -26
  160. package/slider/Slider.d.ts +2 -2
  161. package/slider/Slider.js +121 -97
  162. package/slider/Slider.stories.tsx +64 -1
  163. package/slider/Slider.test.js +122 -22
  164. package/slider/types.d.ts +4 -0
  165. package/spinner/Spinner.js +17 -23
  166. package/spinner/Spinner.stories.jsx +53 -27
  167. package/spinner/Spinner.test.js +1 -1
  168. package/switch/Switch.d.ts +2 -2
  169. package/switch/Switch.js +137 -70
  170. package/switch/Switch.stories.tsx +41 -30
  171. package/switch/Switch.test.js +145 -18
  172. package/switch/types.d.ts +4 -0
  173. package/table/Table.js +3 -3
  174. package/table/Table.stories.jsx +80 -1
  175. package/table/Table.test.js +2 -2
  176. package/tabs/Tab.d.ts +4 -0
  177. package/tabs/Tab.js +132 -0
  178. package/tabs/Tabs.js +358 -108
  179. package/tabs/Tabs.stories.tsx +119 -5
  180. package/tabs/Tabs.test.js +220 -10
  181. package/tabs/types.d.ts +13 -3
  182. package/tag/Tag.js +8 -10
  183. package/tag/Tag.stories.tsx +14 -1
  184. package/tag/Tag.test.js +1 -1
  185. package/tag/types.d.ts +1 -1
  186. package/text-input/Icons.d.ts +8 -0
  187. package/text-input/Icons.js +60 -0
  188. package/text-input/Suggestion.js +40 -11
  189. package/text-input/Suggestions.d.ts +4 -0
  190. package/text-input/Suggestions.js +134 -0
  191. package/text-input/TextInput.js +198 -295
  192. package/text-input/TextInput.stories.tsx +280 -185
  193. package/text-input/TextInput.test.js +736 -725
  194. package/text-input/types.d.ts +22 -3
  195. package/textarea/Textarea.js +3 -4
  196. package/textarea/Textarea.stories.jsx +60 -1
  197. package/textarea/Textarea.test.js +2 -4
  198. package/toggle-group/ToggleGroup.js +7 -4
  199. package/toggle-group/ToggleGroup.stories.tsx +42 -0
  200. package/toggle-group/ToggleGroup.test.js +1 -1
  201. package/toggle-group/types.d.ts +2 -2
  202. package/typography/Typography.d.ts +4 -0
  203. package/typography/Typography.js +32 -0
  204. package/typography/Typography.stories.tsx +198 -0
  205. package/typography/types.d.ts +18 -0
  206. package/typography/types.js +5 -0
  207. package/useTheme.d.ts +1234 -1
  208. package/useTheme.js +1 -1
  209. package/useTranslatedLabels.d.ts +84 -1
  210. package/utils/BaseTypography.d.ts +21 -0
  211. package/utils/BaseTypography.js +108 -0
  212. package/utils/FocusLock.d.ts +13 -0
  213. package/utils/FocusLock.js +139 -0
  214. package/wizard/Wizard.js +10 -17
  215. package/wizard/Wizard.stories.tsx +40 -1
  216. package/wizard/Wizard.test.js +1 -1
  217. package/wizard/types.d.ts +3 -3
  218. package/common/RequiredComponent.js +0 -32
  219. package/list/List.d.ts +0 -4
  220. package/list/List.js +0 -47
  221. package/list/List.stories.tsx +0 -95
  222. package/list/types.d.ts +0 -7
  223. package/row/Row.d.ts +0 -3
  224. package/row/Row.js +0 -127
  225. package/row/Row.stories.tsx +0 -237
  226. package/row/types.d.ts +0 -28
  227. package/stack/Stack.d.ts +0 -3
  228. package/stack/Stack.js +0 -97
  229. package/stack/Stack.stories.tsx +0 -164
  230. package/stack/types.d.ts +0 -24
  231. package/text/Text.d.ts +0 -7
  232. package/text/Text.js +0 -30
  233. package/text/Text.stories.tsx +0 -19
  234. /package/{list → bulleted-list}/types.js +0 -0
  235. /package/{row → flex}/types.js +0 -0
  236. /package/{stack → grid}/types.js +0 -0
  237. /package/{tabs-nav → nav-tabs}/NavTabs.d.ts +0 -0
  238. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
  239. /package/{tabs-nav → nav-tabs}/types.js +0 -0
package/box/Box.js CHANGED
@@ -17,9 +17,9 @@ var _react = _interopRequireDefault(require("react"));
17
17
 
18
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
19
 
20
- var _variables = require("../common/variables.js");
20
+ var _variables = require("../common/variables");
21
21
 
22
- var _utils = require("../common/utils.js");
22
+ var _utils = require("../common/utils");
23
23
 
24
24
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
@@ -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,7 +71,7 @@ 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 (props) {
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 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
75
  return props.display;
76
76
  }, function (props) {
77
77
  return props.theme.borderRadius;
@@ -81,8 +81,6 @@ var StyledDxcBox = _styledComponents["default"].div(_templateObject || (_templat
81
81
  return props.theme.borderStyle;
82
82
  }, function (props) {
83
83
  return props.theme.borderColor;
84
- }, function (props) {
85
- return props.theme.letterSpacing;
86
84
  }, function (props) {
87
85
  return calculateWidth(props.margin, props.size, props.padding);
88
86
  }, function (props) {
@@ -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
  );
package/box/Box.test.js CHANGED
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _Card = _interopRequireDefault(require("../card/Card"));
9
+ var _Card = _interopRequireDefault(require("../card/Card.tsx"));
10
10
 
11
11
  describe("Box component tests", function () {
12
12
  test("Box renders with correct text", function () {
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;
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
+
18
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
19
+
20
+ var _Typography = _interopRequireDefault(require("../typography/Typography"));
21
+
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
+
24
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
25
+
26
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
27
+
28
+ 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); }
29
+
30
+ 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; }
31
+
32
+ var BulletedListItem = function BulletedListItem(_ref) {
33
+ var children = _ref.children;
34
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, children);
35
+ };
36
+
37
+ var DxcBulletedList = function DxcBulletedList(_ref2) {
38
+ var children = _ref2.children,
39
+ _ref2$type = _ref2.type,
40
+ type = _ref2$type === void 0 ? "disc" : _ref2$type,
41
+ _ref2$icon = _ref2.icon,
42
+ icon = _ref2$icon === void 0 ? "" : _ref2$icon;
43
+ var colorsTheme = (0, _useTheme["default"])();
44
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
45
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
46
+ theme: colorsTheme.bulletedList
47
+ }, /*#__PURE__*/_react["default"].createElement(ListContainer, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
48
+ direction: "column",
49
+ as: type === "number" ? "ol" : "ul",
50
+ gap: "0.125rem"
51
+ }, _react["default"].Children.map(children, function (child, index) {
52
+ return /*#__PURE__*/_react["default"].createElement(ListItem, null, /*#__PURE__*/_react["default"].createElement(GeneralContent, null, type === "number" ? /*#__PURE__*/_react["default"].createElement(Number, null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
53
+ color: backgroundType && backgroundType === "dark" ? colorsTheme.bulletedList.fontColorOnDark : colorsTheme.bulletedList.fontColor
54
+ }, index + 1, ".")) : type === "square" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Square, {
55
+ backgroundType: backgroundType
56
+ })) : type === "circle" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Circle, {
57
+ backgroundType: backgroundType
58
+ })) : type === "icon" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Icon, {
59
+ backgroundType: backgroundType
60
+ }, icon)) : /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Disc, {
61
+ backgroundType: backgroundType
62
+ })), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
63
+ color: backgroundType && backgroundType === "dark" ? colorsTheme.bulletedList.fontColorOnDark : colorsTheme.bulletedList.fontColor
64
+ }, child)));
65
+ }))));
66
+ };
67
+
68
+ DxcBulletedList.Item = BulletedListItem;
69
+
70
+ var ListContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ul,\n ol {\n padding: 0;\n margin: 0;\n }\n"])));
71
+
72
+ var Bullet = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-self: flex-start;\n align-items: center;\n height: 1.5rem;\n"])));
73
+
74
+ var GeneralContent = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n grid-template-columns: auto 1fr;\n align-items: center;\n"])));
75
+
76
+ var Icon = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n width: auto;\n margin-right: ", ";\n align-content: center;\n color: ", ";\n & > svg {\n height: ", ";\n width: ", ";\n }\n"])), function (props) {
77
+ return props.theme.bulletMarginRight;
78
+ }, function (props) {
79
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
80
+ }, function (props) {
81
+ return props.theme.bulletIconHeight;
82
+ }, function (props) {
83
+ return props.theme.bulletIconWidth;
84
+ });
85
+
86
+ var Number = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n user-select: none;\n margin-right: ", ";\n display: flex;\n box-sizing: border-box;\n align-self: flex-start;\n min-width: 0;\n"])), function (props) {
87
+ return props.theme.bulletMarginRight;
88
+ });
89
+
90
+ var Square = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n height: ", ";\n width: ", ";\n margin-right: ", ";\n"])), function (props) {
91
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
92
+ }, function (props) {
93
+ return props.theme.bulletHeight;
94
+ }, function (props) {
95
+ return props.theme.bulletWidth;
96
+ }, function (props) {
97
+ return props.theme.bulletMarginRight;
98
+ });
99
+
100
+ var Circle = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n border-radius: 50%;\n border: 1px solid;\n border-color: ", ";\n margin-right: ", ";\n"])), function (props) {
101
+ return props.theme.bulletHeight;
102
+ }, function (props) {
103
+ return props.theme.bulletWidth;
104
+ }, function (props) {
105
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
106
+ }, function (props) {
107
+ return props.theme.bulletMarginRight;
108
+ });
109
+
110
+ var Disc = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n height: ", ";\n width: ", ";\n border-radius: 50%;\n margin-right: ", ";\n"])), function (props) {
111
+ return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
112
+ }, function (props) {
113
+ return props.theme.bulletHeight;
114
+ }, function (props) {
115
+ return props.theme.bulletWidth;
116
+ }, function (props) {
117
+ return props.theme.bulletMarginRight;
118
+ });
119
+
120
+ var ListItem = _styledComponents["default"].li(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0px;\n padding: 0px;\n list-style: none;\n display: flex;\n font-size: 1em;\n"])));
121
+
122
+ var _default = DxcBulletedList;
123
+ exports["default"] = _default;
@@ -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.ReactNode & (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
+ };