@dxc-technology/halstack-react 0.0.0-c18d61a → 0.0.0-c1a6e05

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 (201) 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 +13 -24
  6. package/accordion/Accordion.stories.tsx +102 -13
  7. package/accordion/Accordion.test.js +1 -1
  8. package/accordion/types.d.ts +3 -3
  9. package/accordion-group/AccordionGroup.d.ts +4 -3
  10. package/accordion-group/AccordionGroup.js +23 -44
  11. package/accordion-group/AccordionGroup.test.js +1 -1
  12. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  13. package/accordion-group/AccordionGroupAccordion.js +43 -0
  14. package/accordion-group/types.d.ts +2 -2
  15. package/alert/Alert.js +4 -8
  16. package/alert/Alert.stories.tsx +28 -0
  17. package/alert/Alert.test.js +1 -1
  18. package/bleed/Bleed.stories.tsx +1 -0
  19. package/box/Box.js +3 -5
  20. package/box/Box.stories.tsx +15 -0
  21. package/box/Box.test.js +1 -1
  22. package/bulleted-list/BulletedList.js +4 -2
  23. package/bulleted-list/BulletedList.stories.tsx +7 -1
  24. package/bulleted-list/types.d.ts +31 -4
  25. package/button/Button.js +13 -16
  26. package/button/Button.stories.tsx +151 -9
  27. package/button/Button.test.js +1 -1
  28. package/button/types.d.ts +3 -3
  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/checkbox/Checkbox.d.ts +2 -2
  33. package/checkbox/Checkbox.js +18 -17
  34. package/checkbox/Checkbox.stories.tsx +131 -59
  35. package/checkbox/Checkbox.test.js +1 -1
  36. package/checkbox/types.d.ts +6 -2
  37. package/chip/Chip.js +28 -49
  38. package/chip/Chip.stories.tsx +121 -26
  39. package/chip/Chip.test.js +3 -5
  40. package/common/OpenSans.css +68 -80
  41. package/common/coreTokens.d.ts +146 -0
  42. package/common/coreTokens.js +167 -0
  43. package/common/utils.d.ts +1 -0
  44. package/common/utils.js +4 -4
  45. package/common/variables.d.ts +1482 -0
  46. package/common/variables.js +981 -1129
  47. package/date-input/Calendar.d.ts +4 -0
  48. package/date-input/Calendar.js +258 -0
  49. package/date-input/DateInput.js +134 -237
  50. package/date-input/DateInput.stories.tsx +199 -33
  51. package/date-input/DateInput.test.js +494 -138
  52. package/date-input/DatePicker.d.ts +4 -0
  53. package/date-input/DatePicker.js +146 -0
  54. package/date-input/Icons.d.ts +6 -0
  55. package/date-input/Icons.js +75 -0
  56. package/date-input/YearPicker.d.ts +4 -0
  57. package/date-input/YearPicker.js +126 -0
  58. package/date-input/types.d.ts +51 -0
  59. package/dialog/Dialog.js +61 -74
  60. package/dialog/Dialog.stories.tsx +211 -159
  61. package/dialog/Dialog.test.js +302 -3
  62. package/dialog/types.d.ts +2 -2
  63. package/dropdown/Dropdown.js +37 -37
  64. package/dropdown/Dropdown.stories.tsx +210 -84
  65. package/dropdown/Dropdown.test.js +20 -24
  66. package/dropdown/DropdownMenu.js +12 -18
  67. package/dropdown/DropdownMenuItem.js +4 -17
  68. package/dropdown/types.d.ts +3 -3
  69. package/file-input/FileInput.d.ts +2 -2
  70. package/file-input/FileInput.js +28 -52
  71. package/file-input/FileInput.stories.tsx +96 -17
  72. package/file-input/FileInput.test.js +14 -55
  73. package/file-input/FileItem.d.ts +2 -12
  74. package/file-input/FileItem.js +29 -41
  75. package/file-input/types.d.ts +17 -0
  76. package/flex/Flex.js +4 -2
  77. package/flex/Flex.stories.tsx +35 -26
  78. package/flex/types.d.ts +70 -5
  79. package/footer/Footer.js +6 -8
  80. package/footer/Footer.stories.tsx +91 -0
  81. package/footer/Footer.test.js +14 -26
  82. package/grid/Grid.d.ts +7 -0
  83. package/grid/Grid.js +91 -0
  84. package/grid/Grid.stories.tsx +219 -0
  85. package/grid/types.d.ts +115 -0
  86. package/header/Header.d.ts +3 -2
  87. package/header/Header.js +21 -23
  88. package/header/Header.stories.tsx +149 -6
  89. package/header/Header.test.js +2 -2
  90. package/header/types.d.ts +2 -2
  91. package/heading/Heading.js +1 -1
  92. package/heading/Heading.test.js +1 -1
  93. package/inset/Inset.stories.tsx +2 -1
  94. package/layout/ApplicationLayout.d.ts +3 -3
  95. package/layout/ApplicationLayout.js +1 -1
  96. package/layout/types.d.ts +2 -3
  97. package/link/Link.js +4 -4
  98. package/link/Link.stories.tsx +60 -0
  99. package/link/Link.test.js +2 -4
  100. package/link/types.d.ts +2 -2
  101. package/main.d.ts +3 -2
  102. package/main.js +9 -1
  103. package/{tabs-nav → nav-tabs}/NavTabs.js +1 -1
  104. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +96 -6
  105. package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
  106. package/{tabs-nav → nav-tabs}/Tab.js +37 -17
  107. package/nav-tabs/types.js +5 -0
  108. package/number-input/NumberInput.test.js +6 -7
  109. package/package.json +8 -13
  110. package/paginator/Icons.d.ts +5 -0
  111. package/paginator/Icons.js +16 -28
  112. package/paginator/Paginator.js +6 -14
  113. package/paginator/Paginator.stories.tsx +24 -0
  114. package/paginator/Paginator.test.js +44 -47
  115. package/paragraph/Paragraph.d.ts +3 -4
  116. package/paragraph/Paragraph.js +5 -5
  117. package/password-input/PasswordInput.test.js +1 -1
  118. package/progress-bar/ProgressBar.d.ts +2 -2
  119. package/progress-bar/ProgressBar.js +5 -5
  120. package/progress-bar/ProgressBar.stories.jsx +35 -2
  121. package/progress-bar/ProgressBar.test.js +1 -1
  122. package/progress-bar/types.d.ts +4 -3
  123. package/quick-nav/QuickNav.stories.tsx +14 -0
  124. package/radio-group/Radio.js +10 -10
  125. package/radio-group/RadioGroup.js +8 -10
  126. package/radio-group/RadioGroup.stories.tsx +131 -18
  127. package/radio-group/RadioGroup.test.js +1 -1
  128. package/resultsetTable/Icons.d.ts +7 -0
  129. package/resultsetTable/Icons.js +51 -0
  130. package/resultsetTable/ResultsetTable.js +49 -106
  131. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  132. package/resultsetTable/ResultsetTable.test.js +41 -64
  133. package/resultsetTable/types.d.ts +1 -1
  134. package/select/Listbox.d.ts +1 -1
  135. package/select/Listbox.js +5 -34
  136. package/select/Option.js +11 -24
  137. package/select/Select.js +56 -35
  138. package/select/Select.stories.tsx +494 -150
  139. package/select/Select.test.js +76 -81
  140. package/select/types.d.ts +2 -2
  141. package/sidenav/Icons.d.ts +7 -0
  142. package/sidenav/Icons.js +51 -0
  143. package/sidenav/Sidenav.d.ts +2 -2
  144. package/sidenav/Sidenav.js +66 -96
  145. package/sidenav/Sidenav.stories.tsx +165 -63
  146. package/sidenav/types.d.ts +21 -18
  147. package/slider/Slider.d.ts +2 -2
  148. package/slider/Slider.js +11 -11
  149. package/slider/Slider.stories.tsx +57 -0
  150. package/slider/Slider.test.js +1 -1
  151. package/slider/types.d.ts +6 -2
  152. package/spinner/Spinner.js +17 -23
  153. package/spinner/Spinner.stories.jsx +53 -27
  154. package/spinner/Spinner.test.js +1 -1
  155. package/switch/Switch.d.ts +3 -3
  156. package/switch/Switch.js +7 -6
  157. package/switch/Switch.stories.tsx +33 -0
  158. package/switch/Switch.test.js +1 -1
  159. package/switch/types.d.ts +8 -3
  160. package/table/Table.js +2 -2
  161. package/table/Table.stories.jsx +80 -1
  162. package/table/Table.test.js +2 -2
  163. package/tabs/Tab.js +12 -15
  164. package/tabs/Tabs.js +11 -17
  165. package/tabs/Tabs.stories.tsx +45 -5
  166. package/tabs/Tabs.test.js +4 -5
  167. package/tabs/types.d.ts +2 -2
  168. package/tag/Tag.js +7 -9
  169. package/tag/Tag.stories.tsx +14 -1
  170. package/tag/Tag.test.js +1 -1
  171. package/text-input/Suggestion.js +34 -7
  172. package/text-input/TextInput.js +11 -15
  173. package/text-input/TextInput.stories.tsx +93 -5
  174. package/text-input/TextInput.test.js +587 -635
  175. package/textarea/Textarea.js +3 -4
  176. package/textarea/Textarea.stories.jsx +60 -1
  177. package/textarea/Textarea.test.js +2 -4
  178. package/toggle-group/ToggleGroup.d.ts +2 -2
  179. package/toggle-group/ToggleGroup.js +7 -4
  180. package/toggle-group/ToggleGroup.stories.tsx +42 -0
  181. package/toggle-group/ToggleGroup.test.js +1 -1
  182. package/toggle-group/types.d.ts +1 -1
  183. package/typography/Typography.d.ts +2 -2
  184. package/typography/Typography.js +14 -113
  185. package/typography/Typography.stories.tsx +1 -1
  186. package/useTheme.d.ts +1234 -1
  187. package/useTheme.js +1 -1
  188. package/useTranslatedLabels.d.ts +84 -1
  189. package/utils/BaseTypography.d.ts +21 -0
  190. package/utils/BaseTypography.js +108 -0
  191. package/utils/FocusLock.d.ts +13 -0
  192. package/utils/FocusLock.js +138 -0
  193. package/wizard/Wizard.js +2 -2
  194. package/wizard/Wizard.stories.tsx +20 -0
  195. package/wizard/Wizard.test.js +1 -1
  196. package/wizard/types.d.ts +5 -6
  197. package/common/RequiredComponent.js +0 -32
  198. /package/{tabs-nav → grid}/types.js +0 -0
  199. /package/{tabs-nav → nav-tabs}/NavTabs.d.ts +0 -0
  200. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
  201. /package/{tabs-nav → nav-tabs}/types.d.ts +0 -0
@@ -108,5 +108,22 @@ declare type FileModeProps = CommonProps & {
108
108
  */
109
109
  dropAreaLabel?: never;
110
110
  };
111
+ /**
112
+ * Reference to the component.
113
+ */
114
+ export declare type RefType = HTMLDivElement;
111
115
  declare type Props = DropModeProps | FileModeProps;
116
+ /**
117
+ * Single file item preview.
118
+ */
119
+ export declare type FileItemProps = {
120
+ fileName?: string;
121
+ error?: string;
122
+ showPreview: boolean;
123
+ singleFileMode: boolean;
124
+ preview: string;
125
+ type: string;
126
+ onDelete: (fileName: string) => void;
127
+ tabIndex: number;
128
+ };
112
129
  export default Props;
package/flex/Flex.js CHANGED
@@ -30,7 +30,7 @@ var DxcFlex = function DxcFlex(_ref) {
30
30
  _ref$wrap = _ref.wrap,
31
31
  wrap = _ref$wrap === void 0 ? "nowrap" : _ref$wrap,
32
32
  _ref$gap = _ref.gap,
33
- gap = _ref$gap === void 0 ? "0" : _ref$gap,
33
+ gap = _ref$gap === void 0 ? "0rem" : _ref$gap,
34
34
  _ref$order = _ref.order,
35
35
  order = _ref$order === void 0 ? 0 : _ref$order,
36
36
  _ref$grow = _ref.grow,
@@ -53,6 +53,8 @@ var DxcFlex = function DxcFlex(_ref) {
53
53
  };
54
54
 
55
55
  var Flex = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n ", "\n"])), function (_ref2) {
56
+ var _props$$gap, _props$$gap$rowGap, _props$$gap$columnGap;
57
+
56
58
  var _ref2$justifyContent = _ref2.justifyContent,
57
59
  justifyContent = _ref2$justifyContent === void 0 ? "flex-start" : _ref2$justifyContent,
58
60
  _ref2$alignItems = _ref2.alignItems,
@@ -62,7 +64,7 @@ var Flex = _styledComponents["default"].div(_templateObject || (_templateObject
62
64
  _ref2$alignSelf = _ref2.alignSelf,
63
65
  alignSelf = _ref2$alignSelf === void 0 ? "auto" : _ref2$alignSelf,
64
66
  props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded2);
65
- return "\n flex-direction: ".concat(props.$direction, "; \n flex-wrap: ").concat(props.$wrap, "; \n justify-content: ").concat(justifyContent, "; \n align-items: ").concat(alignItems, ";\n align-content: ").concat(alignContent, ";\n align-self: ").concat(alignSelf, ";\n gap: ").concat((0, _typeof2["default"])(props.$gap) === "object" ? "".concat(props.$gap.rowGap, " ").concat(props.$gap.columnGap) : props.$gap, ";\n order: ").concat(props.$order, ";\n flex-grow: ").concat(props.$grow, ";\n flex-shrink: ").concat(props.$shrink, ";\n flex-basis: ").concat(props.$basis, ";\n ");
67
+ return "\n flex-direction: ".concat(props.$direction, "; \n flex-wrap: ").concat(props.$wrap, "; \n justify-content: ").concat(justifyContent, "; \n align-items: ").concat(alignItems, ";\n align-content: ").concat(alignContent, ";\n align-self: ").concat(alignSelf, ";\n gap: ").concat(props.$gap != null && typeof props.$gap === "string" ? (_props$$gap = props.$gap) !== null && _props$$gap !== void 0 ? _props$$gap : "" : "", "}\n row-gap: ").concat(props.$gap != null && (0, _typeof2["default"])(props.$gap) === "object" ? (_props$$gap$rowGap = props.$gap.rowGap) !== null && _props$$gap$rowGap !== void 0 ? _props$$gap$rowGap : "" : "", "}\n column-gap: ").concat(props.$gap != null && (0, _typeof2["default"])(props.$gap) === "object" ? (_props$$gap$columnGap = props.$gap.columnGap) !== null && _props$$gap$columnGap !== void 0 ? _props$$gap$columnGap : "" : "", "}\n order: ").concat(props.$order, ";\n flex-grow: ").concat(props.$grow, ";\n flex-shrink: ").concat(props.$shrink, ";\n flex-basis: ").concat(props.$basis, ";\n ");
66
68
  });
67
69
 
68
70
  var _default = DxcFlex;
@@ -14,36 +14,36 @@ export const Chromatic = () => (
14
14
  <Container>
15
15
  <DxcFlex>
16
16
  <Placeholder />
17
- <Placeholder width="50px" />
17
+ <Placeholder minWidth="50px" />
18
18
  <Placeholder />
19
- <Placeholder width="50px" />
20
- <Placeholder width="50px" />
19
+ <Placeholder minWidth="50px" />
20
+ <Placeholder minWidth="50px" />
21
21
  </DxcFlex>
22
22
  </Container>
23
23
  <Title title="Direction column, wrap, justify content end, align items center and gap" level={4} />
24
24
  <Container>
25
- <DxcFlex direction="column" wrap="wrap" justifyContent="end" alignItems="center" gap="20px">
25
+ <DxcFlex direction="column" wrap="wrap" justifyContent="end" alignItems="center" gap="1.5rem">
26
26
  <Placeholder />
27
- <Placeholder width="100px" />
27
+ <Placeholder minWidth="100px" />
28
28
  <Placeholder />
29
- <Placeholder width="100px" />
29
+ <Placeholder minWidth="100px" />
30
30
  <Placeholder />
31
31
  </DxcFlex>
32
32
  </Container>
33
33
  <Title title="Wrap with align content space between, row and column gaps, and as a span" level={4} />
34
34
  <Container height="250px">
35
- <DxcFlex wrap="wrap" alignContent="space-between" as="span" gap={{ rowGap: "10px", columnGap: "20px" }}>
35
+ <DxcFlex wrap="wrap" alignContent="space-between" as="span" gap={{ rowGap: "0.5rem", columnGap: "1.5rem" }}>
36
36
  <Placeholder />
37
37
  <Placeholder />
38
38
  <Placeholder />
39
39
  <Placeholder />
40
- <Placeholder width="100px" />
40
+ <Placeholder minWidth="100px" />
41
41
  <Placeholder />
42
42
  <Placeholder />
43
- <Placeholder width="100px" />
43
+ <Placeholder minWidth="100px" />
44
44
  <Placeholder />
45
45
  <Placeholder />
46
- <Placeholder width="100px" />
46
+ <Placeholder minWidth="100px" />
47
47
  <Placeholder />
48
48
  </DxcFlex>
49
49
  </Container>
@@ -51,16 +51,24 @@ export const Chromatic = () => (
51
51
  <Container height="75px">
52
52
  <DxcFlex basis="100%">
53
53
  <DxcFlex order={3} grow={1} alignSelf="flex-end">
54
- <PlaceholderGrowAndShrink>order 3, grow 1, align self end</PlaceholderGrowAndShrink>
54
+ <Placeholder width="100%" minWidth="0">
55
+ order 3, grow 1, align self end
56
+ </Placeholder>
55
57
  </DxcFlex>
56
58
  <DxcFlex order={-1} grow={4}>
57
- <PlaceholderGrowAndShrink>order -1, grow 4</PlaceholderGrowAndShrink>
59
+ <Placeholder width="100%" minWidth="0">
60
+ order -1, grow 4
61
+ </Placeholder>
58
62
  </DxcFlex>
59
63
  <DxcFlex order={5} grow={1}>
60
- <PlaceholderGrowAndShrink>order 5, grow 1</PlaceholderGrowAndShrink>
64
+ <Placeholder width="100%" minWidth="0">
65
+ order 5, grow 1
66
+ </Placeholder>
61
67
  </DxcFlex>
62
68
  <DxcFlex order={2} grow={2}>
63
- <PlaceholderGrowAndShrink>order 2. grow 2</PlaceholderGrowAndShrink>
69
+ <Placeholder width="100%" minWidth="0">
70
+ order 2. grow 2
71
+ </Placeholder>
64
72
  </DxcFlex>
65
73
  </DxcFlex>
66
74
  </Container>
@@ -68,13 +76,19 @@ export const Chromatic = () => (
68
76
  <Container>
69
77
  <DxcFlex basis="600px">
70
78
  <DxcFlex shrink={4} basis="400px">
71
- <PlaceholderGrowAndShrink>shrink 4</PlaceholderGrowAndShrink>
79
+ <Placeholder width="100%" minWidth="0">
80
+ shrink 4
81
+ </Placeholder>
72
82
  </DxcFlex>
73
83
  <DxcFlex shrink={2} basis="400px">
74
- <PlaceholderGrowAndShrink>shrink 2</PlaceholderGrowAndShrink>
84
+ <Placeholder width="100%" minWidth="0">
85
+ shrink 2
86
+ </Placeholder>
75
87
  </DxcFlex>
76
88
  <DxcFlex shrink={1} basis="400px">
77
- <PlaceholderGrowAndShrink>shrink 1</PlaceholderGrowAndShrink>
89
+ <Placeholder width="100%" minWidth="0">
90
+ shrink 1
91
+ </Placeholder>
78
92
  </DxcFlex>
79
93
  </DxcFlex>
80
94
  </Container>
@@ -88,16 +102,11 @@ const Container = styled.div<{ height?: string }>`
88
102
  ${({ height }) => (height ? `height: ${height}` : "max-height: 150px")};
89
103
  `;
90
104
 
91
- const Placeholder = styled.div<{ width?: string }>`
105
+ const Placeholder = styled.div<{ minWidth?: string; width?: string }>`
92
106
  height: 40px;
93
- min-width: ${({ width }) => width || "200px"};
94
- border: 1px solid #a46ede;
95
- background-color: #e5d5f6;
96
- `;
97
-
98
- const PlaceholderGrowAndShrink = styled.div`
99
- height: 40px;
100
- width: 100%;
107
+ min-width: ${({ minWidth }) => minWidth ?? "200px"};
108
+ width: ${({ width }) => width};
101
109
  border: 1px solid #a46ede;
110
+ border-radius: 0.5rem;
102
111
  background-color: #e5d5f6;
103
112
  `;
package/flex/types.d.ts CHANGED
@@ -1,29 +1,94 @@
1
1
  /// <reference types="react" />
2
+ declare type Spaces = "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
2
3
  declare type Gap = {
3
- rowGap: string;
4
- columnGap: string;
5
- };
4
+ rowGap: Spaces;
5
+ columnGap?: Spaces;
6
+ } | {
7
+ rowGap?: Spaces;
8
+ columnGap?: Spaces;
9
+ } | Spaces;
6
10
  declare type CommonProps = {
11
+ /**
12
+ * Sets the justify-content CSS property.
13
+ *
14
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content
15
+ */
7
16
  justifyContent?: "flex-start" | "flex-end" | "start" | "end" | "left" | "right" | "center" | "space-between" | "space-around" | "space-evenly";
17
+ /**
18
+ * Sets the align-items CSS property.
19
+ *
20
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/align-items
21
+ */
8
22
  alignItems?: "stretch" | "flex-start" | "flex-end" | "start" | "end" | "self-start" | "self-end" | "center" | "baseline";
23
+ /**
24
+ * Sets the align-content CSS property.
25
+ *
26
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/align-content
27
+ */
9
28
  alignContent?: "normal" | "flex-start" | "flex-end" | "start" | "end" | "center" | "space-between" | "space-around" | "space-evenly" | "stretch";
29
+ /**
30
+ * Sets the align-self CSS property.
31
+ *
32
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/align-self
33
+ */
10
34
  alignSelf?: "auto" | "flex-start" | "flex-end" | "center" | "baseline" | "stretch";
11
35
  };
12
36
  declare type Props = CommonProps & {
37
+ /**
38
+ * Sets the flex-direction CSS property.
39
+ *
40
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/flex-direction
41
+ */
13
42
  direction?: "row" | "row-reverse" | "column" | "column-reverse";
43
+ /**
44
+ * Sets the flex-wrap CSS property.
45
+ *
46
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/flex-wrap
47
+ */
14
48
  wrap?: "nowrap" | "wrap" | "wrap-reverse";
15
- gap?: string | Gap;
49
+ /**
50
+ * Sets the gap CSS property.
51
+ *
52
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/gap
53
+ */
54
+ gap?: Gap;
55
+ /**
56
+ * Sets the order CSS property.
57
+ *
58
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/order
59
+ */
16
60
  order?: number;
61
+ /**
62
+ * Sets the flex-grow CSS property.
63
+ *
64
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/flex-grow
65
+ */
17
66
  grow?: number;
67
+ /**
68
+ * Sets the flex-shrink CSS property.
69
+ *
70
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/flex-shrink
71
+ */
18
72
  shrink?: number;
73
+ /**
74
+ * Sets the flex-basis CSS property.
75
+ *
76
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/flex-basis
77
+ */
19
78
  basis?: string;
79
+ /**
80
+ * Sets a custom HTML tag.
81
+ */
20
82
  as?: keyof HTMLElementTagNameMap;
83
+ /**
84
+ * Custom content inside the flex container.
85
+ */
21
86
  children: React.ReactNode;
22
87
  };
23
88
  export declare type StyledProps = CommonProps & {
24
89
  $direction?: "row" | "row-reverse" | "column" | "column-reverse";
25
90
  $wrap?: "nowrap" | "wrap" | "wrap-reverse";
26
- $gap?: string | Gap;
91
+ $gap?: Spaces | Gap;
27
92
  $order?: number;
28
93
  $grow?: number;
29
94
  $shrink?: number;
package/footer/Footer.js CHANGED
@@ -17,7 +17,7 @@ var _react = _interopRequireWildcard(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
22
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
@@ -74,9 +74,7 @@ var DxcFooter = function DxcFooter(_ref) {
74
74
  }, /*#__PURE__*/_react["default"].createElement(BottomLink, {
75
75
  tabIndex: tabIndex,
76
76
  href: link && link.href ? link.href : ""
77
- }, link && link.text ? link.text : ""), /*#__PURE__*/_react["default"].createElement(Point, {
78
- index: index
79
- }, "\xB7"));
77
+ }, link && link.text ? link.text : ""), /*#__PURE__*/_react["default"].createElement(Point, null, "\xB7"));
80
78
  });
81
79
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
82
80
  theme: colorsTheme.footer
@@ -91,7 +89,7 @@ var DxcFooter = function DxcFooter(_ref) {
91
89
  }, /*#__PURE__*/_react["default"].createElement(BottomLinks, null, bottomLink), /*#__PURE__*/_react["default"].createElement(Copyright, null, copyright || translatedLabels.footer.copyrightText(new Date().getFullYear()))))));
92
90
  };
93
91
 
94
- var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n padding: 20px;\n }\n\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
92
+ var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n\n @media (max-width: ", "rem) {\n padding: 20px;\n }\n\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
95
93
  return props.theme.backgroundColor;
96
94
  }, function (props) {
97
95
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -101,11 +99,11 @@ var FooterContainer = _styledComponents["default"].footer(_templateObject || (_t
101
99
 
102
100
  var FooterHeader = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap;\n row-gap: 24px;\n"])));
103
101
 
104
- var FooterFooter = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n\n @media (min-width: ", "rem) {\n flex-direction: row;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n flex-direction: column;\n align-items: center;\n }\n\n border-top: ", ";\n margin-top: 16px;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
102
+ var FooterFooter = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n\n @media (min-width: ", "rem) {\n flex-direction: row;\n }\n\n @media (max-width: ", "rem) {\n flex-direction: column;\n align-items: center;\n }\n\n border-top: ", ";\n margin-top: 16px;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
105
103
  return "".concat(props.theme.bottomLinksDividerThickness, " ").concat(props.theme.bottomLinksDividerStyle, " ").concat(props.theme.bottomLinksDividerColor);
106
104
  });
107
105
 
108
- var BottomLinks = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n display: inline-flex;\n flex-wrap: wrap;\n\n @media (min-width: ", "rem) {\n max-width: 60%;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n }\n\n & > span:last-child span {\n display: none;\n }\n align-self: center;\n"])), function (props) {
106
+ var BottomLinks = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n display: inline-flex;\n flex-wrap: wrap;\n\n @media (min-width: ", "rem) {\n max-width: 60%;\n }\n\n @media (max-width: ", "rem) {\n max-width: 100%;\n width: 100%;\n }\n\n & > span:last-child span {\n display: none;\n }\n align-self: center;\n"])), function (props) {
109
107
  return props.theme.bottomLinksDividerSpacing;
110
108
  }, _variables.responsiveSizes.small, _variables.responsiveSizes.small);
111
109
 
@@ -121,7 +119,7 @@ var ChildComponents = _styledComponents["default"].div(_templateObject5 || (_tem
121
119
  return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
122
120
  });
123
121
 
124
- var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n\n padding-top: ", ";\n"])), function (props) {
122
+ var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n\n padding-top: ", ";\n"])), function (props) {
125
123
  return props.theme.copyrightFontFamily;
126
124
  }, function (props) {
127
125
  return props.theme.copyrightFontSize;
@@ -2,6 +2,7 @@ import React from "react";
2
2
  import DxcFooter from "./Footer";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  const social = [
7
8
  {
@@ -85,6 +86,86 @@ export default {
85
86
  component: DxcFooter,
86
87
  };
87
88
 
89
+ const opinionatedTheme = {
90
+ footer: {
91
+ baseColor: "#000000",
92
+ fontColor: "#ffffff",
93
+ accentColor: "#0095ff",
94
+ logo: (
95
+ <svg id="g10" xmlns="http://www.w3.org/2000/svg" width="280.781" height="32" viewBox="0 0 280.781 32">
96
+ <g id="g12">
97
+ <path
98
+ id="path14"
99
+ d="M171.5-54.124v12.539h-3.6V-54.124h-4.973v-3.191h13.54v3.191H171.5"
100
+ transform="translate(-68.528 65.45)"
101
+ fill="#fff"
102
+ />
103
+ <path
104
+ id="path16"
105
+ d="M189.96-41.585V-57.315h12.326v3.079h-8.753v3.191h7.7v3.078h-7.7v3.3h8.87v3.078H189.96"
106
+ transform="translate(-77.56 65.45)"
107
+ fill="#fff"
108
+ />
109
+ <path
110
+ id="path18"
111
+ d="M223.558-41.438a8.1,8.1,0,0,1-8.382-8.1v-.045a8.161,8.161,0,0,1,8.522-8.146,8.6,8.6,0,0,1,6.444,2.431l-2.289,2.543a6.133,6.133,0,0,0-4.178-1.778,4.743,4.743,0,0,0-4.738,4.905v.045a4.752,4.752,0,0,0,4.738,4.95,6,6,0,0,0,4.295-1.845l2.288,2.228a8.491,8.491,0,0,1-6.7,2.813"
112
+ transform="translate(-86.019 65.583)"
113
+ fill="#fff"
114
+ />
115
+ <path
116
+ id="path20"
117
+ d="M254.988-41.585V-47.9h-6.63v6.315h-3.6V-57.315h3.6v6.225h6.63v-6.225h3.594v15.731h-3.594"
118
+ transform="translate(-95.903 65.45)"
119
+ fill="#fff"
120
+ />
121
+ <path
122
+ id="path22"
123
+ d="M285.991-41.585l-7.914-10v10h-3.549V-57.315h3.316l7.657,9.685v-9.685h3.549v15.731h-3.058"
124
+ transform="translate(-105.869 65.45)"
125
+ fill="#fff"
126
+ />
127
+ <path
128
+ id="path24"
129
+ d="M317.2-49.583a4.869,4.869,0,0,0-4.949-4.95,4.793,4.793,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.793,4.793,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.661-3.623-8.661-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.66,3.623,8.66,8.1v.045c0,4.477-3.664,8.145-8.708,8.145"
130
+ transform="translate(-115.631 65.583)"
131
+ fill="#fff"
132
+ />
133
+ <path
134
+ id="path26"
135
+ d="M336.786-41.585V-57.315h3.6v12.584h8.148v3.146H336.786"
136
+ transform="translate(-126.654 65.45)"
137
+ fill="#fff"
138
+ />
139
+ <path
140
+ id="path28"
141
+ d="M372.78-49.583a4.87,4.87,0,0,0-4.949-4.95,4.794,4.794,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.794,4.794,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.662-3.623-8.662-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.661,3.623,8.661,8.1v.045c0,4.477-3.666,8.145-8.708,8.145"
142
+ transform="translate(-135.016 65.583)"
143
+ fill="#fff"
144
+ />
145
+ <path
146
+ id="path30"
147
+ d="M399.735-41.438c-5.09,0-8.592-3.443-8.592-8.1v-.045a8.243,8.243,0,0,1,8.568-8.146,9.18,9.18,0,0,1,6.42,2.16l-2.265,2.634a6.141,6.141,0,0,0-4.272-1.6,4.807,4.807,0,0,0-4.692,4.905v.045a4.8,4.8,0,0,0,4.949,4.995,5.89,5.89,0,0,0,3.384-.945v-2.25h-3.618v-2.992h7.1v6.841a10.837,10.837,0,0,1-6.98,2.5"
148
+ transform="translate(-145.284 65.583)"
149
+ fill="#fff"
150
+ />
151
+ <path
152
+ id="path32"
153
+ d="M428.664-47.855v6.27h-3.6v-6.2l-6.28-9.528h4.2L426.89-51l3.968-6.315h4.085l-6.28,9.46"
154
+ transform="translate(-154.162 65.45)"
155
+ fill="#fff"
156
+ />
157
+ <path
158
+ id="path34"
159
+ d="M84.218-55.737a10.063,10.063,0,0,1,2.589-4.4,9.792,9.792,0,0,1,6.985-2.77h11.328V-69.3H93.792a17.041,17.041,0,0,0-11.8,4.759,16.344,16.344,0,0,0-3.547,5.115,13.247,13.247,0,0,0-1.122,3.688Zm0,4.877a10.065,10.065,0,0,0,2.589,4.4,9.793,9.793,0,0,0,6.985,2.77h11.328V-37.3H93.792a17.042,17.042,0,0,1-11.8-4.759,16.339,16.339,0,0,1-3.547-5.114,13.251,13.251,0,0,1-1.122-3.688ZM63.1-47.98,54.45-37.3H45.873l12.957-16-12.957-16H54.45L63.1-58.619l8.65-10.68h8.578l-12.957,16,12.957,16H71.749ZM48.875-55.737a13.212,13.212,0,0,0-1.122-3.688,16.359,16.359,0,0,0-3.546-5.115,17.043,17.043,0,0,0-11.8-4.759H21.08v6.393H32.408a9.79,9.79,0,0,1,6.985,2.77,10.072,10.072,0,0,1,2.59,4.4Zm0,4.877a13.215,13.215,0,0,1-1.122,3.688,16.353,16.353,0,0,1-3.546,5.114,17.044,17.044,0,0,1-11.8,4.759H21.08v-6.393H32.408a9.791,9.791,0,0,0,6.985-2.77,10.074,10.074,0,0,0,2.59-4.4h6.892"
160
+ transform="translate(-21.08 69.298)"
161
+ fill="#fff"
162
+ />
163
+ </g>
164
+ </svg>
165
+ ),
166
+ },
167
+ };
168
+
88
169
  export const Chromatic = () => (
89
170
  <>
90
171
  <ExampleContainer>
@@ -133,5 +214,15 @@ export const Chromatic = () => (
133
214
  <Title title="Xxlarge padding" theme="light" level={4} />
134
215
  <DxcFooter padding="xxlarge"></DxcFooter>
135
216
  </ExampleContainer>
217
+ <Title title="Opinionated theme" theme="light" level={2} />
218
+ <ExampleContainer>
219
+ <HalstackProvider theme={opinionatedTheme}>
220
+ <DxcFooter copyright="Copyright" socialLinks={social} bottomLinks={bottom}>
221
+ <div>
222
+ <a href="https://www.linkedin.com/company/dxctechnology">Linkedin</a>
223
+ </div>
224
+ </DxcFooter>
225
+ </HalstackProvider>
226
+ </ExampleContainer>
136
227
  </>
137
228
  );
@@ -6,10 +6,16 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _linkedin = _interopRequireDefault(require("../../app/src/images/linkedin.svg"));
10
-
11
- var _Footer = _interopRequireDefault(require("./Footer"));
12
-
9
+ var _Footer = _interopRequireDefault(require("./Footer.tsx"));
10
+
11
+ var social = [{
12
+ href: "https://www.test.com/social",
13
+ logo: "https://developer.apple.com/design/human-interface-guidelines/foundations/app-icons/images/icon-and-image-large-icon-settings_2x.png"
14
+ }];
15
+ var bottom = [{
16
+ href: "https://www.test.com/bottom",
17
+ text: "bottom-link-text"
18
+ }];
13
19
  describe("Footer component tests", function () {
14
20
  test("Footer renders with default logo", function () {
15
21
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], null)),
@@ -18,32 +24,22 @@ describe("Footer component tests", function () {
18
24
  expect(getByTitle("DXC Logo")).toBeTruthy();
19
25
  });
20
26
  test("Footer renders with social links", function () {
21
- var social = [{
22
- href: "https://www.test.com/test",
23
- logo: _linkedin["default"]
24
- }];
25
-
26
27
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
27
28
  socialLinks: social
28
29
  })),
29
30
  getByRole = _render2.getByRole;
30
31
 
31
32
  var socialIcon = getByRole("link");
32
- expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/test");
33
+ expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/social");
33
34
  });
34
35
  test("Footer renders with bottom links", function () {
35
- var bottom = [{
36
- href: "https://www.test.com/test",
37
- text: "bottom-link-text"
38
- }];
39
-
40
36
  var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
41
37
  bottomLinks: bottom
42
38
  })),
43
39
  getByText = _render3.getByText;
44
40
 
45
41
  var link = getByText("bottom-link-text");
46
- expect(link.getAttribute("href")).toBe("https://www.test.com/test");
42
+ expect(link.getAttribute("href")).toBe("https://www.test.com/bottom");
47
43
  });
48
44
  test("Footer renders with copyright text", function () {
49
45
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
@@ -54,7 +50,7 @@ describe("Footer component tests", function () {
54
50
  expect(getByText("test-copyright")).toBeTruthy();
55
51
  });
56
52
  test("Footer renders with correct children", function () {
57
- //We need to force the offsetWidth value
53
+ // We need to force the offsetWidth value
58
54
  Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
59
55
  configurable: true,
60
56
  value: 1024
@@ -66,7 +62,7 @@ describe("Footer component tests", function () {
66
62
  expect(getByText("footer-child-text")).toBeTruthy();
67
63
  });
68
64
  test("Footer renders with children in mobile", function () {
69
- //425 is mobile width
65
+ // 425 is mobile width
70
66
  Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
71
67
  configurable: true,
72
68
  value: 425
@@ -82,14 +78,6 @@ describe("Footer component tests", function () {
82
78
  configurable: true,
83
79
  value: 1024
84
80
  });
85
- var social = [{
86
- href: "https://www.test.com/social",
87
- logo: _linkedin["default"]
88
- }];
89
- var bottom = [{
90
- href: "https://www.test.com/bottom",
91
- text: "bottom-link-text"
92
- }];
93
81
 
94
82
  var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
95
83
  socialLinks: social,
package/grid/Grid.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import GridPropsType, { GridItemProps } from "./types";
3
+ declare const DxcGrid: {
4
+ (props: GridPropsType): JSX.Element;
5
+ GridItem: import("styled-components").StyledComponent<"div", any, GridItemProps, never>;
6
+ };
7
+ export default DxcGrid;
package/grid/Grid.js ADDED
@@ -0,0 +1,91 @@
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"] = void 0;
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, _templateObject2;
17
+
18
+ var DxcGrid = function DxcGrid(props) {
19
+ return /*#__PURE__*/_react["default"].createElement(Grid, props);
20
+ };
21
+
22
+ var Grid = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n ", "\n ", "\n ", "\n ", "\n"])), function (_ref) {
23
+ var templateColumns = _ref.templateColumns;
24
+ return templateColumns && "grid-template-columns: ".concat(templateColumns.join(" "), ";");
25
+ }, function (_ref2) {
26
+ var templateRows = _ref2.templateRows;
27
+ return templateRows && "grid-template-rows: ".concat(templateRows.join(" "), ";");
28
+ }, function (_ref3) {
29
+ var templateAreas = _ref3.templateAreas;
30
+ return templateAreas && "grid-template-areas: ".concat(templateAreas.map(function (row) {
31
+ return "\"".concat(row, "\"");
32
+ }).join(" "), ";");
33
+ }, function (_ref4) {
34
+ var autoColumns = _ref4.autoColumns;
35
+ return autoColumns && "grid-auto-columns: ".concat(autoColumns, ";");
36
+ }, function (_ref5) {
37
+ var autoRows = _ref5.autoRows;
38
+ return autoRows && "grid-auto-rows: ".concat(autoRows, ";");
39
+ }, function (_ref6) {
40
+ var autoFlow = _ref6.autoFlow;
41
+ return autoFlow && "grid-auto-flow: ".concat(autoFlow, ";");
42
+ }, function (_ref7) {
43
+ var _gap$rowGap, _gap$columnGap;
44
+
45
+ var gap = _ref7.gap;
46
+ return gap != null && (typeof gap === "string" ? "gap: ".concat(gap, ";") : "row-gap: ".concat((_gap$rowGap = gap.rowGap) !== null && _gap$rowGap !== void 0 ? _gap$rowGap : "", "; column-gap: ").concat((_gap$columnGap = gap.columnGap) !== null && _gap$columnGap !== void 0 ? _gap$columnGap : "", ";"));
47
+ }, function (_ref8) {
48
+ var _placeItems$alignItem, _placeItems$justifyIt;
49
+
50
+ var placeItems = _ref8.placeItems;
51
+ return placeItems && (typeof placeItems === "string" ? "place-items: ".concat(placeItems) : "align-items: ".concat((_placeItems$alignItem = placeItems.alignItems) !== null && _placeItems$alignItem !== void 0 ? _placeItems$alignItem : "", "; justify-items: ").concat((_placeItems$justifyIt = placeItems.justifyItems) !== null && _placeItems$justifyIt !== void 0 ? _placeItems$justifyIt : "", ";"));
52
+ }, function (_ref9) {
53
+ var _placeContent$alignCo, _placeContent$justify;
54
+
55
+ var placeContent = _ref9.placeContent;
56
+ return placeContent && (typeof placeContent === "string" ? "place-content: ".concat(placeContent) : "align-content: ".concat((_placeContent$alignCo = placeContent.alignContent) !== null && _placeContent$alignCo !== void 0 ? _placeContent$alignCo : "", "; justify-content: ").concat((_placeContent$justify = placeContent.justifyContent) !== null && _placeContent$justify !== void 0 ? _placeContent$justify : "", ";"));
57
+ }, function (_ref10) {
58
+ var areaName = _ref10.areaName;
59
+ return areaName && "grid-area: ".concat(areaName, ";");
60
+ }, function (_ref11) {
61
+ var column = _ref11.column;
62
+ return column && "grid-column: ".concat(typeof column === "string" || typeof column === "number" ? column : "".concat(column.start, " / ").concat(column.end, ";"), ";");
63
+ }, function (_ref12) {
64
+ var row = _ref12.row;
65
+ return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
66
+ }, function (_ref13) {
67
+ var _placeSelf$alignSelf, _placeSelf$justifySel;
68
+
69
+ var placeSelf = _ref13.placeSelf;
70
+ return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf = placeSelf.alignSelf) !== null && _placeSelf$alignSelf !== void 0 ? _placeSelf$alignSelf : "", "; justify-self: ").concat((_placeSelf$justifySel = placeSelf.justifySelf) !== null && _placeSelf$justifySel !== void 0 ? _placeSelf$justifySel : "", ";"));
71
+ });
72
+
73
+ var GridItem = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n ", "\n ", "\n ", "\n"])), function (_ref14) {
74
+ var areaName = _ref14.areaName;
75
+ return areaName && "grid-area: ".concat(areaName, ";");
76
+ }, function (_ref15) {
77
+ var column = _ref15.column;
78
+ return column && "grid-column: ".concat(typeof column === "string" || typeof column === "number" ? column : "".concat(column.start, " / ").concat(column.end, ";"), ";");
79
+ }, function (_ref16) {
80
+ var row = _ref16.row;
81
+ return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
82
+ }, function (_ref17) {
83
+ var _placeSelf$alignSelf2, _placeSelf$justifySel2;
84
+
85
+ var placeSelf = _ref17.placeSelf;
86
+ return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf2 = placeSelf.alignSelf) !== null && _placeSelf$alignSelf2 !== void 0 ? _placeSelf$alignSelf2 : "", "; justify-self: ").concat((_placeSelf$justifySel2 = placeSelf.justifySelf) !== null && _placeSelf$justifySel2 !== void 0 ? _placeSelf$justifySel2 : "", ";"));
87
+ });
88
+
89
+ DxcGrid.GridItem = GridItem;
90
+ var _default = DxcGrid;
91
+ exports["default"] = _default;