@dxc-technology/halstack-react 9.1.0 → 10.1.0

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 (109) hide show
  1. package/HalstackContext.d.ts +11 -6
  2. package/HalstackContext.js +1 -1
  3. package/README.md +47 -0
  4. package/accordion/Accordion.d.ts +1 -1
  5. package/accordion/Accordion.js +2 -14
  6. package/accordion/Accordion.stories.tsx +2 -100
  7. package/accordion/types.d.ts +0 -12
  8. package/accordion-group/AccordionGroup.d.ts +4 -3
  9. package/accordion-group/AccordionGroup.js +21 -42
  10. package/accordion-group/AccordionGroup.stories.tsx +77 -76
  11. package/accordion-group/AccordionGroup.test.js +6 -16
  12. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  13. package/accordion-group/AccordionGroupAccordion.js +43 -0
  14. package/accordion-group/types.d.ts +0 -12
  15. package/alert/Alert.js +1 -3
  16. package/box/Box.d.ts +1 -1
  17. package/box/Box.js +5 -22
  18. package/box/Box.stories.tsx +25 -53
  19. package/box/types.d.ts +0 -12
  20. package/bulleted-list/BulletedList.js +4 -2
  21. package/bulleted-list/BulletedList.stories.tsx +7 -1
  22. package/bulleted-list/types.d.ts +31 -4
  23. package/button/Button.d.ts +1 -1
  24. package/button/Button.js +45 -54
  25. package/button/Button.stories.tsx +3 -3
  26. package/button/Button.test.js +11 -0
  27. package/button/types.d.ts +4 -0
  28. package/card/Card.d.ts +1 -1
  29. package/card/Card.js +18 -35
  30. package/card/Card.stories.tsx +0 -29
  31. package/card/types.d.ts +1 -7
  32. package/chip/Chip.js +23 -36
  33. package/chip/Chip.stories.tsx +25 -17
  34. package/common/OpenSans.css +68 -80
  35. package/common/coreTokens.d.ts +146 -0
  36. package/common/coreTokens.js +167 -0
  37. package/common/variables.d.ts +9 -144
  38. package/common/variables.js +960 -1095
  39. package/date-input/Calendar.js +2 -2
  40. package/dialog/Dialog.d.ts +1 -1
  41. package/dialog/Dialog.js +4 -22
  42. package/dialog/Dialog.stories.tsx +52 -176
  43. package/dialog/types.d.ts +0 -13
  44. package/dropdown/DropdownMenu.js +5 -1
  45. package/file-input/FileItem.js +2 -2
  46. package/file-input/types.d.ts +1 -1
  47. package/flex/Flex.js +4 -2
  48. package/flex/Flex.stories.tsx +24 -10
  49. package/flex/types.d.ts +70 -5
  50. package/footer/Footer.d.ts +1 -1
  51. package/footer/Footer.js +43 -61
  52. package/footer/Footer.stories.tsx +19 -95
  53. package/footer/Footer.test.js +3 -1
  54. package/footer/types.d.ts +10 -12
  55. package/grid/Grid.d.ts +1 -1
  56. package/grid/Grid.js +1 -1
  57. package/grid/Grid.stories.tsx +38 -38
  58. package/header/Header.d.ts +1 -1
  59. package/header/Header.js +3 -30
  60. package/header/Header.stories.tsx +7 -71
  61. package/header/types.d.ts +0 -14
  62. package/image/Image.d.ts +4 -0
  63. package/image/Image.js +85 -0
  64. package/image/Image.stories.tsx +127 -0
  65. package/image/types.d.ts +72 -0
  66. package/inset/Inset.stories.tsx +1 -1
  67. package/layout/ApplicationLayout.d.ts +2 -2
  68. package/layout/ApplicationLayout.js +14 -11
  69. package/layout/ApplicationLayout.stories.tsx +1 -1
  70. package/layout/Icons.d.ts +7 -4
  71. package/layout/Icons.js +52 -56
  72. package/link/Link.js +1 -1
  73. package/main.d.ts +2 -1
  74. package/main.js +8 -0
  75. package/nav-tabs/NavTabs.d.ts +2 -2
  76. package/nav-tabs/NavTabs.js +7 -10
  77. package/nav-tabs/NavTabs.stories.tsx +14 -0
  78. package/nav-tabs/Tab.js +22 -26
  79. package/nav-tabs/types.d.ts +8 -9
  80. package/number-input/NumberInput.d.ts +7 -0
  81. package/number-input/NumberInput.js +6 -4
  82. package/number-input/NumberInput.test.js +278 -95
  83. package/package.json +2 -2
  84. package/paginator/Paginator.js +1 -1
  85. package/paginator/Paginator.test.js +13 -0
  86. package/password-input/Icons.d.ts +6 -0
  87. package/password-input/Icons.js +39 -0
  88. package/password-input/PasswordInput.js +35 -82
  89. package/password-input/PasswordInput.stories.tsx +1 -0
  90. package/password-input/PasswordInput.test.js +27 -34
  91. package/radio-group/Radio.js +10 -10
  92. package/radio-group/RadioGroup.js +8 -10
  93. package/select/Select.stories.tsx +3 -3
  94. package/select/Select.test.js +4 -4
  95. package/sidenav/Sidenav.js +21 -23
  96. package/text-input/TextInput.js +62 -78
  97. package/text-input/TextInput.stories.tsx +1 -1
  98. package/toggle-group/ToggleGroup.d.ts +2 -2
  99. package/toggle-group/ToggleGroup.js +79 -56
  100. package/toggle-group/ToggleGroup.stories.tsx +6 -3
  101. package/toggle-group/ToggleGroup.test.js +37 -23
  102. package/toggle-group/types.d.ts +22 -13
  103. package/useTheme.d.ts +9 -1
  104. package/utils/FocusLock.js +2 -3
  105. package/card/ice-cream.jpg +0 -0
  106. package/number-input/NumberInputContext.d.ts +0 -4
  107. package/number-input/NumberInputContext.js +0 -19
  108. package/number-input/numberInputContextTypes.d.ts +0 -19
  109. /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
@@ -19,7 +19,7 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
19
19
 
20
20
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
21
21
 
22
- var _main = require("../main");
22
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
23
23
 
24
24
  var _templateObject, _templateObject2, _templateObject3, _templateObject4;
25
25
 
@@ -183,7 +183,7 @@ var Calendar = function Calendar(_ref) {
183
183
  }
184
184
  };
185
185
 
186
- return /*#__PURE__*/_react["default"].createElement(CalendarContainer, null, /*#__PURE__*/_react["default"].createElement(_main.DxcFlex, {
186
+ return /*#__PURE__*/_react["default"].createElement(CalendarContainer, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
187
187
  alignItems: "center",
188
188
  justifyContent: "space-between"
189
189
  }, weekDays.map(function (weekDay) {
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import DialogPropsType from "./types";
3
- declare const DxcDialog: ({ isCloseVisible, onCloseClick, children, overlay, onBackgroundClick, padding, tabIndex, }: DialogPropsType) => JSX.Element;
3
+ declare const DxcDialog: ({ isCloseVisible, onCloseClick, children, overlay, onBackgroundClick, tabIndex, }: DialogPropsType) => JSX.Element;
4
4
  export default DxcDialog;
package/dialog/Dialog.js CHANGED
@@ -2,15 +2,13 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof3 = require("@babel/runtime/helpers/typeof");
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
6
 
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
13
 
16
14
  var _react = _interopRequireWildcard(require("react"));
@@ -29,11 +27,11 @@ var _reactDom = require("react-dom");
29
27
 
30
28
  var _FocusLock = _interopRequireDefault(require("../utils/FocusLock"));
31
29
 
32
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
33
31
 
34
32
  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); }
35
33
 
36
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
34
+ 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; }
37
35
 
38
36
  var closeIcon = /*#__PURE__*/_react["default"].createElement("svg", {
39
37
  role: "img",
@@ -57,8 +55,6 @@ var DxcDialog = function DxcDialog(_ref) {
57
55
  _ref$overlay = _ref.overlay,
58
56
  overlay = _ref$overlay === void 0 ? true : _ref$overlay,
59
57
  onBackgroundClick = _ref.onBackgroundClick,
60
- _ref$padding = _ref.padding,
61
- padding = _ref$padding === void 0 ? "small" : _ref$padding,
62
58
  _ref$tabIndex = _ref.tabIndex,
63
59
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
64
60
  var colorsTheme = (0, _useTheme["default"])();
@@ -86,11 +82,9 @@ var DxcDialog = function DxcDialog(_ref) {
86
82
  role: "dialog",
87
83
  "aria-modal": overlay,
88
84
  isCloseVisible: isCloseVisible
89
- }, /*#__PURE__*/_react["default"].createElement(Children, {
90
- padding: padding
91
85
  }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
92
86
  color: colorsTheme.dialog.backgroundColor
93
- }, children)), isCloseVisible && /*#__PURE__*/_react["default"].createElement(CloseIconAction, {
87
+ }, children), isCloseVisible && /*#__PURE__*/_react["default"].createElement(CloseIconAction, {
94
88
  onClick: function onClick() {
95
89
  onCloseClick === null || onCloseClick === void 0 ? void 0 : onCloseClick();
96
90
  },
@@ -133,17 +127,5 @@ var CloseIconAction = _styledComponents["default"].button(_templateObject5 || (_
133
127
  return props.theme.closeIconHeight;
134
128
  });
135
129
 
136
- var Children = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
137
- return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : _variables.spaces["small"];
138
- }, function (props) {
139
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
140
- }, function (props) {
141
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
142
- }, function (props) {
143
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
144
- }, function (props) {
145
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
146
- });
147
-
148
130
  var _default = DxcDialog;
149
131
  exports["default"] = _default;
@@ -12,7 +12,7 @@ import DxcParagraph from "../paragraph/Paragraph";
12
12
  import DxcAlert from "../alert/Alert";
13
13
 
14
14
  export default {
15
- title: "Dialog ",
15
+ title: "Dialog",
16
16
  component: DxcDialog,
17
17
  };
18
18
 
@@ -28,29 +28,7 @@ export const DefaultDialog = () => (
28
28
  <ExampleContainer expanded={true}>
29
29
  <Title title="Default dialog" theme="light" level={4} />
30
30
  <DxcDialog>
31
- <DxcFlex direction="column" gap="1rem">
32
- <DxcHeading level={4} text="Example title" />
33
- <DxcParagraph>
34
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
35
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
36
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
37
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
38
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
39
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
40
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
41
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
42
- dignissim, pharetra neque molestie, molestie lectus.
43
- </DxcParagraph>
44
- </DxcFlex>
45
- </DxcDialog>
46
- </ExampleContainer>
47
- );
48
-
49
- export const DefaultDialogOpinionated = () => (
50
- <ExampleContainer expanded={true}>
51
- <Title title="Default dialog" theme="light" level={4} />
52
- <HalstackProvider theme={opinionatedTheme}>
53
- <DxcDialog>
31
+ <DxcInset space="1.5rem">
54
32
  <DxcFlex direction="column" gap="1rem">
55
33
  <DxcHeading level={4} text="Example title" />
56
34
  <DxcParagraph>
@@ -65,6 +43,32 @@ export const DefaultDialogOpinionated = () => (
65
43
  Praesent quis nunc dignissim, pharetra neque molestie, molestie lectus.
66
44
  </DxcParagraph>
67
45
  </DxcFlex>
46
+ </DxcInset>
47
+ </DxcDialog>
48
+ </ExampleContainer>
49
+ );
50
+
51
+ export const DefaultDialogOpinionated = () => (
52
+ <ExampleContainer expanded={true}>
53
+ <Title title="Default dialog" theme="light" level={4} />
54
+ <HalstackProvider theme={opinionatedTheme}>
55
+ <DxcDialog>
56
+ <DxcInset space="1.5rem">
57
+ <DxcFlex direction="column" gap="1rem">
58
+ <DxcHeading level={4} text="Example title" />
59
+ <DxcParagraph>
60
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa
61
+ magna, placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur
62
+ adipiscing elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo
63
+ sed dapibus tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis
64
+ Jia Le, risus eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor
65
+ ut, congue gravida enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit
66
+ ornare, malesuada urna eu, fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit
67
+ amet. Etiam sit amet maximus augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum
68
+ blandit justo. Praesent quis nunc dignissim, pharetra neque molestie, molestie lectus.
69
+ </DxcParagraph>
70
+ </DxcFlex>
71
+ </DxcInset>
68
72
  </DxcDialog>
69
73
  </HalstackProvider>
70
74
  </ExampleContainer>
@@ -74,7 +78,7 @@ export const DialogWithInputs = () => (
74
78
  <ExampleContainer expanded={true}>
75
79
  <Title title="Dialog with inputs" theme="light" level={4} />
76
80
  <DxcDialog>
77
- <DxcInset bottom="1rem">
81
+ <DxcInset space="1.5rem">
78
82
  <DxcFlex gap="2rem" direction="column">
79
83
  <DxcHeading level={4} text="Example form" />
80
84
  <DxcFlex gap="1rem" direction="column">
@@ -101,7 +105,7 @@ const RespDialog = () => (
101
105
  <ExampleContainer expanded={true}>
102
106
  <Title title="Responsive dialog" theme="light" level={4} />
103
107
  <DxcDialog>
104
- <DxcInset bottom="1rem">
108
+ <DxcInset space="1.5rem">
105
109
  <DxcFlex gap="2rem" direction="column">
106
110
  <DxcHeading level={4} text="Example form" />
107
111
  <DxcFlex gap="1rem" direction="column">
@@ -122,20 +126,22 @@ export const DialogWithoutOverlay = () => (
122
126
  <ExampleContainer expanded={true}>
123
127
  <Title title="Dialog Without Overlay" theme="light" level={4} />
124
128
  <DxcDialog overlay={false}>
125
- <DxcFlex direction="column" gap="1rem">
126
- <DxcHeading level={4} text="Example title" />
127
- <DxcParagraph>
128
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
129
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
130
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
131
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
132
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
133
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
134
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
135
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
136
- dignissim, pharetra neque molestie, molestie lectus.
137
- </DxcParagraph>
138
- </DxcFlex>
129
+ <DxcInset space="1.5rem">
130
+ <DxcFlex direction="column" gap="1rem">
131
+ <DxcHeading level={4} text="Example title" />
132
+ <DxcParagraph>
133
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
134
+ placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
135
+ elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
136
+ tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
137
+ eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue
138
+ gravida enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare,
139
+ malesuada urna eu, fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam
140
+ sit amet maximus augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo.
141
+ Praesent quis nunc dignissim, pharetra neque molestie, molestie lectus.
142
+ </DxcParagraph>
143
+ </DxcFlex>
144
+ </DxcInset>
139
145
  </DxcDialog>
140
146
  </ExampleContainer>
141
147
  );
@@ -144,115 +150,7 @@ export const DialogCloseVisibleFalse = () => (
144
150
  <ExampleContainer expanded={true}>
145
151
  <Title title="Dialog Close Visible" theme="dark" level={4} />
146
152
  <DxcDialog isCloseVisible={false}>
147
- <DxcParagraph>
148
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
149
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
150
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
151
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
152
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
153
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
154
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
155
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
156
- dignissim, pharetra neque molestie, molestie lectus.
157
- </DxcParagraph>
158
- </DxcDialog>
159
- </ExampleContainer>
160
- );
161
-
162
- export const DialogWithXxsmallPadding = () => (
163
- <ExampleContainer expanded={true}>
164
- <Title title="Dialog With Xxsmall Padding" theme="light" level={4} />
165
- <DxcDialog padding="xxsmall">
166
- <DxcFlex direction="column" gap="0.25rem">
167
- <DxcHeading level={4} text="Example title" />
168
- <DxcParagraph>
169
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
170
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
171
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
172
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
173
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
174
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
175
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
176
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
177
- dignissim, pharetra neque molestie, molestie lectus.
178
- </DxcParagraph>
179
- </DxcFlex>
180
- </DxcDialog>
181
- </ExampleContainer>
182
- );
183
-
184
- export const DialogWithXsmallPadding = () => (
185
- <ExampleContainer expanded={true}>
186
- <Title title="Dialog With Xsmall Padding" theme="light" level={4} />
187
- <DxcDialog padding={"xsmall"}>
188
- <DxcFlex direction="column" gap="1rem">
189
- <DxcHeading level={4} text="Example title" />
190
- <DxcParagraph>
191
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
192
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
193
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
194
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
195
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
196
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
197
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
198
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
199
- dignissim, pharetra neque molestie, molestie lectus.
200
- </DxcParagraph>
201
- </DxcFlex>
202
- </DxcDialog>
203
- </ExampleContainer>
204
- );
205
-
206
- export const DialogWithMediumPadding = () => (
207
- <ExampleContainer expanded={true}>
208
- <Title title="Dialog With Medium Padding" theme="light" level={4} />
209
- <DxcDialog padding="medium">
210
- <DxcFlex direction="column" gap="1rem">
211
- <DxcHeading level={4} text="Example title" />
212
- <DxcParagraph>
213
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
214
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
215
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
216
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
217
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
218
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
219
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
220
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
221
- dignissim, pharetra neque molestie, molestie lectus.
222
- </DxcParagraph>
223
- </DxcFlex>
224
- </DxcDialog>
225
- </ExampleContainer>
226
- );
227
-
228
- export const DialogWithLargePadding = () => (
229
- <ExampleContainer expanded={true}>
230
- <Title title="Dialog With Large Padding" theme="light" level={4} />
231
- <DxcDialog padding="large">
232
- <DxcFlex direction="column" gap="1rem">
233
- <DxcHeading level={4} text="Example title" />
234
- <DxcParagraph>
235
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
236
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
237
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
238
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
239
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
240
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
241
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
242
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
243
- dignissim, pharetra neque molestie, molestie lectus.
244
- </DxcParagraph>
245
- </DxcFlex>
246
- </DxcDialog>
247
- </ExampleContainer>
248
- );
249
-
250
- export const DialogWithXlargePadding = () => (
251
- <ExampleContainer expanded={true}>
252
- <Title title="Dialog With Xlarge Padding" theme="light" level={4} />
253
- <DxcDialog padding="xlarge">
254
- <DxcFlex direction="column" gap="1rem">
255
- <DxcHeading level={4} text="Example title" />
153
+ <DxcInset space="1.5rem">
256
154
  <DxcParagraph>
257
155
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
258
156
  placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
@@ -264,39 +162,17 @@ export const DialogWithXlargePadding = () => (
264
162
  augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
265
163
  dignissim, pharetra neque molestie, molestie lectus.
266
164
  </DxcParagraph>
267
- </DxcFlex>
268
- </DxcDialog>
269
- </ExampleContainer>
270
- );
271
-
272
- export const DialogWithXxlargePadding = () => (
273
- <ExampleContainer expanded={true}>
274
- <Title title="Dialog With Xxlarge Padding" theme="light" level={4} />
275
- <DxcDialog padding="xxlarge">
276
- <DxcFlex direction="column" gap="1rem">
277
- <DxcHeading level={4} text="Example title" />
278
- <DxcParagraph>
279
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi egestas luctus porttitor. Donec massa magna,
280
- placerat sit amet felis eget, venenatis fringilla ipsum. Lorem ipsum dolor sit amet, consectetur adipiscing
281
- elit. Donec congue laoreet orci, nec elementum dolor consequat quis. Curabitur rhoncus justo sed dapibus
282
- tincidunt. Vestibulum cursus ut risus sit amet congue. Nunc luctus, urna ullamcorper facilisis Jia Le, risus
283
- eros aliquam erat, ut efficitur ante neque id odio. Nam orci leo, dignissim sit amet dolor ut, congue gravida
284
- enim. Donec rhoncus aliquam nisl, ac cursus enim bibendum vitae. Nunc sit amet elit ornare, malesuada urna eu,
285
- fringilla mauris. Vivamus bibendum turpis est, id elementum purus euismod sit amet. Etiam sit amet maximus
286
- augue. Vivamus erat sapien, ultricies fringilla tellus id, condimentum blandit justo. Praesent quis nunc
287
- dignissim, pharetra neque molestie, molestie lectus.
288
- </DxcParagraph>
289
- </DxcFlex>
165
+ </DxcInset>
290
166
  </DxcDialog>
291
167
  </ExampleContainer>
292
168
  );
293
169
 
294
170
  const customViewports = {
295
171
  resizedScreen: {
296
- name: 'Custom viewport',
172
+ name: "Custom viewport",
297
173
  styles: {
298
- width: '720px',
299
- height: '900px',
174
+ width: "720px",
175
+ height: "900px",
300
176
  },
301
177
  },
302
178
  };
@@ -316,4 +192,4 @@ MobileResponsiveDialog.parameters = {
316
192
  defaultViewport: "iphonex",
317
193
  },
318
194
  chromatic: { viewports: [375] },
319
- };
195
+ };
package/dialog/types.d.ts CHANGED
@@ -1,11 +1,4 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Padding = {
4
- top?: Space;
5
- bottom?: Space;
6
- left?: Space;
7
- right?: Space;
8
- };
9
2
  declare type Props = {
10
3
  /**
11
4
  * If true, the close 'x' button will be visible.
@@ -25,12 +18,6 @@ declare type Props = {
25
18
  * The responsibility of hiding the modal lies with the user.
26
19
  */
27
20
  onBackgroundClick?: () => void;
28
- /**
29
- * @deprecated This prop will be removed shortly, consider using the Inset component for this purpose.
30
- * Size of the padding to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
31
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
32
- */
33
- padding?: Padding | Space;
34
21
  /**
35
22
  * Value of the tabindex given to the close 'x' button.
36
23
  */
@@ -53,7 +53,7 @@ var DropdownMenu = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
53
53
  }));
54
54
  });
55
55
 
56
- var DropdownMenuContainer = _styledComponents["default"].ul(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n max-height: 230px;\n min-width: min-content;\n overflow-y: auto;\n padding: 0;\n margin: 0;\n background-color: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n border-radius: ", ";\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n outline: none;\n"])), function (props) {
56
+ var DropdownMenuContainer = _styledComponents["default"].ul(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n max-height: 230px;\n min-width: min-content;\n padding: 0;\n margin: 0;\n background-color: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n border-radius: ", ";\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n outline: none;\n\n overflow-y: auto;\n &::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n }\n &::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 6px;\n }\n &::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 6px;\n }\n"])), function (props) {
57
57
  return props.theme.optionBackgroundColor;
58
58
  }, function (props) {
59
59
  return props.theme.borderThickness;
@@ -63,6 +63,10 @@ var DropdownMenuContainer = _styledComponents["default"].ul(_templateObject || (
63
63
  return props.theme.borderColor;
64
64
  }, function (props) {
65
65
  return props.theme.borderRadius;
66
+ }, function (props) {
67
+ return props.theme.scrollBarThumbColor;
68
+ }, function (props) {
69
+ return props.theme.scrollBarTrackColor;
66
70
  });
67
71
 
68
72
  var _default = /*#__PURE__*/_react["default"].memo(DropdownMenu);
@@ -15,7 +15,7 @@ var _react = _interopRequireDefault(require("react"));
15
15
 
16
16
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
17
17
 
18
- var _main = require("../main");
18
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
19
19
 
20
20
  var _useTheme = _interopRequireDefault(require("../useTheme"));
21
21
 
@@ -80,7 +80,7 @@ var FileItem = function FileItem(_ref) {
80
80
  }) : /*#__PURE__*/_react["default"].createElement(IconPreview, {
81
81
  error: error,
82
82
  "aria-label": getIconAriaLabel()
83
- }, preview)), /*#__PURE__*/_react["default"].createElement(FileItemContent, null, /*#__PURE__*/_react["default"].createElement(FileName, null, fileName), /*#__PURE__*/_react["default"].createElement(_main.DxcFlex, {
83
+ }, preview)), /*#__PURE__*/_react["default"].createElement(FileItemContent, null, /*#__PURE__*/_react["default"].createElement(FileName, null, fileName), /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
84
84
  gap: "0.25rem"
85
85
  }, error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null, errorIcon), /*#__PURE__*/_react["default"].createElement(DeleteFileAction, {
86
86
  onClick: function onClick() {
@@ -21,7 +21,7 @@ declare type FileData = {
21
21
  };
22
22
  declare type CommonProps = {
23
23
  /**
24
- * Name attribute.
24
+ * @deprecated Name attribute.
25
25
  */
26
26
  name?: string;
27
27
  /**
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;
@@ -22,7 +22,7 @@ export const Chromatic = () => (
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
27
  <Placeholder minWidth="100px" />
28
28
  <Placeholder />
@@ -32,7 +32,7 @@ export const Chromatic = () => (
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 />
@@ -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
- <Placeholder width="100%" minWidth="0">order 3, grow 1, align self end</Placeholder>
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
- <Placeholder width="100%" minWidth="0">order -1, grow 4</Placeholder>
59
+ <Placeholder width="100%" minWidth="0">
60
+ order -1, grow 4
61
+ </Placeholder>
58
62
  </DxcFlex>
59
63
  <DxcFlex order={5} grow={1}>
60
- <Placeholder width="100%" minWidth="0">order 5, grow 1</Placeholder>
64
+ <Placeholder width="100%" minWidth="0">
65
+ order 5, grow 1
66
+ </Placeholder>
61
67
  </DxcFlex>
62
68
  <DxcFlex order={2} grow={2}>
63
- <Placeholder width="100%" minWidth="0">order 2. grow 2</Placeholder>
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
- <Placeholder width="100%" minWidth="0">shrink 4</Placeholder>
79
+ <Placeholder width="100%" minWidth="0">
80
+ shrink 4
81
+ </Placeholder>
72
82
  </DxcFlex>
73
83
  <DxcFlex shrink={2} basis="400px">
74
- <Placeholder width="100%" minWidth="0">shrink 2</Placeholder>
84
+ <Placeholder width="100%" minWidth="0">
85
+ shrink 2
86
+ </Placeholder>
75
87
  </DxcFlex>
76
88
  <DxcFlex shrink={1} basis="400px">
77
- <Placeholder width="100%" minWidth="0">shrink 1</Placeholder>
89
+ <Placeholder width="100%" minWidth="0">
90
+ shrink 1
91
+ </Placeholder>
78
92
  </DxcFlex>
79
93
  </DxcFlex>
80
94
  </Container>
@@ -88,7 +102,7 @@ const Container = styled.div<{ height?: string }>`
88
102
  ${({ height }) => (height ? `height: ${height}` : "max-height: 150px")};
89
103
  `;
90
104
 
91
- const Placeholder = styled.div<{ minWidth?: string, width?: string }>`
105
+ const Placeholder = styled.div<{ minWidth?: string; width?: string }>`
92
106
  height: 40px;
93
107
  min-width: ${({ minWidth }) => minWidth ?? "200px"};
94
108
  width: ${({ width }) => width};