@dxc-technology/halstack-react 0.0.0-b2237e2 → 0.0.0-b230d97

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 (148) hide show
  1. package/HalstackContext.js +55 -50
  2. package/accordion/Accordion.js +117 -104
  3. package/accordion/Accordion.stories.tsx +103 -15
  4. package/accordion/Accordion.test.js +9 -10
  5. package/accordion/types.d.ts +5 -4
  6. package/accordion-group/AccordionGroup.js +1 -21
  7. package/accordion-group/AccordionGroup.stories.tsx +27 -1
  8. package/accordion-group/AccordionGroup.test.js +20 -45
  9. package/accordion-group/types.d.ts +10 -3
  10. package/alert/Alert.js +1 -1
  11. package/box/Box.js +1 -1
  12. package/box/types.d.ts +1 -0
  13. package/bulleted-list/types.d.ts +1 -1
  14. package/button/Button.js +50 -70
  15. package/button/Button.stories.tsx +159 -8
  16. package/button/types.d.ts +7 -7
  17. package/card/types.d.ts +1 -0
  18. package/checkbox/Checkbox.d.ts +2 -2
  19. package/checkbox/Checkbox.js +92 -99
  20. package/checkbox/Checkbox.stories.tsx +131 -59
  21. package/checkbox/Checkbox.test.js +93 -16
  22. package/checkbox/types.d.ts +6 -2
  23. package/chip/Chip.js +16 -22
  24. package/chip/Chip.stories.tsx +96 -9
  25. package/chip/types.d.ts +1 -1
  26. package/common/variables.js +281 -259
  27. package/date-input/Calendar.d.ts +4 -0
  28. package/date-input/Calendar.js +258 -0
  29. package/date-input/DateInput.js +134 -237
  30. package/date-input/DateInput.stories.tsx +137 -38
  31. package/date-input/DateInput.test.js +494 -138
  32. package/date-input/DatePicker.d.ts +4 -0
  33. package/date-input/DatePicker.js +146 -0
  34. package/date-input/Icons.d.ts +6 -0
  35. package/date-input/Icons.js +75 -0
  36. package/date-input/YearPicker.d.ts +4 -0
  37. package/date-input/YearPicker.js +126 -0
  38. package/date-input/types.d.ts +51 -0
  39. package/dialog/Dialog.js +52 -28
  40. package/dialog/Dialog.stories.tsx +57 -2
  41. package/dialog/Dialog.test.js +34 -4
  42. package/dialog/types.d.ts +3 -2
  43. package/dropdown/Dropdown.d.ts +1 -1
  44. package/dropdown/Dropdown.js +246 -249
  45. package/dropdown/Dropdown.stories.tsx +245 -56
  46. package/dropdown/Dropdown.test.js +504 -108
  47. package/dropdown/DropdownMenu.d.ts +4 -0
  48. package/dropdown/DropdownMenu.js +70 -0
  49. package/dropdown/DropdownMenuItem.d.ts +4 -0
  50. package/dropdown/DropdownMenuItem.js +81 -0
  51. package/dropdown/types.d.ts +25 -5
  52. package/file-input/FileInput.d.ts +2 -2
  53. package/file-input/FileInput.js +177 -219
  54. package/file-input/FileInput.stories.tsx +122 -11
  55. package/file-input/FileInput.test.js +53 -12
  56. package/file-input/FileItem.d.ts +4 -14
  57. package/file-input/FileItem.js +38 -63
  58. package/file-input/types.d.ts +17 -0
  59. package/flex/Flex.d.ts +1 -1
  60. package/flex/Flex.js +31 -19
  61. package/flex/types.d.ts +15 -4
  62. package/footer/Footer.stories.tsx +99 -1
  63. package/footer/types.d.ts +2 -1
  64. package/header/Header.js +87 -87
  65. package/header/Header.stories.tsx +127 -6
  66. package/header/Icons.js +2 -2
  67. package/header/types.d.ts +3 -2
  68. package/layout/ApplicationLayout.js +3 -3
  69. package/layout/ApplicationLayout.stories.tsx +1 -0
  70. package/link/Link.js +1 -1
  71. package/link/types.d.ts +1 -1
  72. package/number-input/NumberInput.test.js +43 -7
  73. package/package.json +16 -21
  74. package/paginator/Icons.d.ts +5 -0
  75. package/paginator/Icons.js +16 -28
  76. package/paginator/Paginator.js +6 -12
  77. package/paginator/Paginator.stories.tsx +24 -0
  78. package/paginator/Paginator.test.js +18 -11
  79. package/password-input/PasswordInput.test.js +13 -12
  80. package/progress-bar/ProgressBar.d.ts +2 -2
  81. package/progress-bar/ProgressBar.js +56 -50
  82. package/progress-bar/ProgressBar.stories.jsx +36 -3
  83. package/progress-bar/ProgressBar.test.js +67 -22
  84. package/progress-bar/types.d.ts +3 -4
  85. package/quick-nav/QuickNav.js +11 -12
  86. package/quick-nav/QuickNav.stories.tsx +111 -19
  87. package/radio-group/Radio.d.ts +1 -1
  88. package/radio-group/Radio.js +43 -28
  89. package/radio-group/RadioGroup.js +24 -24
  90. package/radio-group/RadioGroup.stories.tsx +132 -18
  91. package/radio-group/RadioGroup.test.js +123 -96
  92. package/radio-group/types.d.ts +2 -2
  93. package/resultsetTable/Icons.d.ts +7 -0
  94. package/resultsetTable/Icons.js +51 -0
  95. package/resultsetTable/ResultsetTable.js +48 -107
  96. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  97. package/resultsetTable/ResultsetTable.test.js +40 -63
  98. package/resultsetTable/types.d.ts +2 -2
  99. package/select/Listbox.js +4 -10
  100. package/select/Option.js +11 -24
  101. package/select/Select.js +54 -50
  102. package/select/Select.stories.tsx +494 -149
  103. package/select/Select.test.js +338 -272
  104. package/select/types.d.ts +3 -5
  105. package/sidenav/Sidenav.js +8 -10
  106. package/sidenav/Sidenav.stories.tsx +148 -46
  107. package/sidenav/types.d.ts +1 -1
  108. package/slider/Slider.d.ts +2 -2
  109. package/slider/Slider.js +120 -95
  110. package/slider/Slider.stories.tsx +64 -1
  111. package/slider/Slider.test.js +121 -21
  112. package/slider/types.d.ts +6 -2
  113. package/spinner/Spinner.js +2 -2
  114. package/spinner/Spinner.stories.jsx +27 -1
  115. package/switch/Switch.d.ts +2 -2
  116. package/switch/Switch.js +135 -68
  117. package/switch/Switch.stories.tsx +41 -30
  118. package/switch/Switch.test.js +144 -17
  119. package/switch/types.d.ts +6 -2
  120. package/table/Table.js +1 -1
  121. package/table/Table.stories.jsx +80 -1
  122. package/table/Table.test.js +1 -1
  123. package/tabs/Tab.d.ts +4 -0
  124. package/tabs/Tab.js +133 -0
  125. package/tabs/Tabs.js +360 -104
  126. package/tabs/Tabs.stories.tsx +119 -5
  127. package/tabs/Tabs.test.js +217 -6
  128. package/tabs/types.d.ts +15 -5
  129. package/tabs-nav/NavTabs.js +5 -5
  130. package/tabs-nav/NavTabs.stories.tsx +8 -6
  131. package/tabs-nav/Tab.js +8 -12
  132. package/tabs-nav/types.d.ts +1 -1
  133. package/tag/Tag.js +1 -1
  134. package/tag/types.d.ts +1 -1
  135. package/text-input/Icons.d.ts +8 -0
  136. package/text-input/Icons.js +60 -0
  137. package/text-input/Suggestion.js +38 -9
  138. package/text-input/Suggestions.d.ts +4 -0
  139. package/text-input/Suggestions.js +134 -0
  140. package/text-input/TextInput.js +195 -292
  141. package/text-input/TextInput.stories.tsx +280 -185
  142. package/text-input/TextInput.test.js +737 -725
  143. package/text-input/types.d.ts +22 -3
  144. package/toggle-group/ToggleGroup.stories.tsx +42 -0
  145. package/toggle-group/types.d.ts +1 -1
  146. package/wizard/Wizard.stories.tsx +20 -0
  147. package/wizard/types.d.ts +1 -1
  148. package/common/RequiredComponent.js +0 -32
@@ -9,10 +9,13 @@ var _react2 = require("@testing-library/react");
9
9
  var _Dialog = _interopRequireDefault(require("./Dialog"));
10
10
 
11
11
  describe("Dialog component tests", function () {
12
- test("Dialog renders with correct text", function () {
12
+ test("Dialog renders with correct text and accesibility attributes", function () {
13
13
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dialog["default"], null, "dialog-text")),
14
- getByText = _render.getByText;
14
+ getByText = _render.getByText,
15
+ getByRole = _render.getByRole;
15
16
 
17
+ expect(getByRole("dialog")).toBeTruthy();
18
+ expect(getByRole("dialog").getAttribute("aria-modal")).toBe("true");
16
19
  expect(getByText("dialog-text")).toBeTruthy();
17
20
  });
18
21
  test("Dialog renders without close button", function () {
@@ -23,18 +26,45 @@ describe("Dialog component tests", function () {
23
26
 
24
27
  expect(queryByRole("button")).toBeFalsy();
25
28
  });
29
+ test("Dialog renders with aria-modal false when overlay is not used", function () {
30
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
31
+ isCloseVisible: false,
32
+ overlay: false
33
+ }, "dialog-text")),
34
+ getByRole = _render3.getByRole;
35
+
36
+ expect(getByRole("dialog")).toBeTruthy();
37
+ expect(getByRole("dialog").getAttribute("aria-modal")).toBe("false");
38
+ });
26
39
  test("Calls correct function onCloseClick", function () {
27
40
  var onCloseClick = jest.fn();
28
41
 
29
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
42
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
30
43
  onCloseClick: onCloseClick
31
44
  }, "dialog-text")),
32
- getByRole = _render3.getByRole;
45
+ getByRole = _render4.getByRole;
33
46
 
34
47
  var closeButton = getByRole("button");
35
48
 
36
49
  _react2.fireEvent.click(closeButton);
37
50
 
51
+ expect(onCloseClick).toHaveBeenCalled();
52
+ });
53
+ test("Calls correct function onCloseClick when 'escape' key is pressed", function () {
54
+ var onCloseClick = jest.fn();
55
+
56
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
57
+ onCloseClick: onCloseClick
58
+ }, "dialog-text")),
59
+ getByRole = _render5.getByRole;
60
+
61
+ _react2.fireEvent.keyDown(getByRole("button"), {
62
+ key: "Escape",
63
+ code: "Escape",
64
+ keyCode: 27,
65
+ charCode: 27
66
+ });
67
+
38
68
  expect(onCloseClick).toHaveBeenCalled();
39
69
  });
40
70
  });
package/dialog/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Padding = {
2
+ export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ export declare type Padding = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
@@ -26,6 +26,7 @@ declare type Props = {
26
26
  */
27
27
  onBackgroundClick?: () => void;
28
28
  /**
29
+ * @deprecated This prop will be removed shortly, consider using the Inset component for this purpose.
29
30
  * Size of the padding to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
30
31
  * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
31
32
  */
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import DropdownPropsType from "./types";
3
- declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, onSelectOption, expandOnHover, margin, size, tabIndex, disabled, }: DropdownPropsType) => JSX.Element;
3
+ declare const DxcDropdown: ({ options, optionsIconPosition, icon, iconPosition, label, caretHidden, disabled, expandOnHover, onSelectOption, margin, size, tabIndex, }: DropdownPropsType) => JSX.Element;
4
4
  export default DxcDropdown;