@patternfly/react-core 4.249.0 → 4.250.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 (190) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/esm/next/components/Select/Select.d.ts +28 -0
  3. package/dist/esm/next/components/Select/Select.d.ts.map +1 -0
  4. package/dist/esm/next/components/Select/Select.js +62 -0
  5. package/dist/esm/next/components/Select/Select.js.map +1 -0
  6. package/dist/esm/next/components/Select/SelectGroup.d.ts +12 -0
  7. package/dist/esm/next/components/Select/SelectGroup.d.ts.map +1 -0
  8. package/dist/esm/next/components/Select/SelectGroup.js +10 -0
  9. package/dist/esm/next/components/Select/SelectGroup.js.map +1 -0
  10. package/dist/esm/next/components/Select/SelectList.d.ts +10 -0
  11. package/dist/esm/next/components/Select/SelectList.d.ts.map +1 -0
  12. package/dist/esm/next/components/Select/SelectList.js +10 -0
  13. package/dist/esm/next/components/Select/SelectList.js.map +1 -0
  14. package/dist/esm/next/components/Select/SelectOption.d.ts +20 -0
  15. package/dist/esm/next/components/Select/SelectOption.d.ts.map +1 -0
  16. package/dist/esm/next/components/Select/SelectOption.js +10 -0
  17. package/dist/esm/next/components/Select/SelectOption.js.map +1 -0
  18. package/dist/esm/next/components/Select/index.d.ts +5 -0
  19. package/dist/esm/next/components/Select/index.d.ts.map +1 -0
  20. package/dist/esm/next/components/Select/index.js +5 -0
  21. package/dist/esm/next/components/Select/index.js.map +1 -0
  22. package/dist/esm/next/components/Wizard/Wizard.d.ts +9 -7
  23. package/dist/esm/next/components/Wizard/Wizard.d.ts.map +1 -1
  24. package/dist/esm/next/components/Wizard/Wizard.js +62 -48
  25. package/dist/esm/next/components/Wizard/Wizard.js.map +1 -1
  26. package/dist/esm/next/components/Wizard/WizardBody.d.ts +2 -2
  27. package/dist/esm/next/components/Wizard/WizardBody.d.ts.map +1 -1
  28. package/dist/esm/next/components/Wizard/WizardBody.js +1 -1
  29. package/dist/esm/next/components/Wizard/WizardBody.js.map +1 -1
  30. package/dist/esm/next/components/Wizard/WizardContext.d.ts +21 -20
  31. package/dist/esm/next/components/Wizard/WizardContext.d.ts.map +1 -1
  32. package/dist/esm/next/components/Wizard/WizardContext.js +63 -32
  33. package/dist/esm/next/components/Wizard/WizardContext.js.map +1 -1
  34. package/dist/esm/next/components/Wizard/WizardFooter.d.ts +20 -6
  35. package/dist/esm/next/components/Wizard/WizardFooter.d.ts.map +1 -1
  36. package/dist/esm/next/components/Wizard/WizardFooter.js +13 -4
  37. package/dist/esm/next/components/Wizard/WizardFooter.js.map +1 -1
  38. package/dist/esm/next/components/Wizard/WizardHeader.d.ts +1 -1
  39. package/dist/esm/next/components/Wizard/WizardHeader.d.ts.map +1 -1
  40. package/dist/esm/next/components/Wizard/WizardHeader.js +2 -2
  41. package/dist/esm/next/components/Wizard/WizardHeader.js.map +1 -1
  42. package/dist/esm/next/components/Wizard/WizardNav.d.ts +5 -5
  43. package/dist/esm/next/components/Wizard/WizardNav.d.ts.map +1 -1
  44. package/dist/esm/next/components/Wizard/WizardNav.js +3 -4
  45. package/dist/esm/next/components/Wizard/WizardNav.js.map +1 -1
  46. package/dist/esm/next/components/Wizard/WizardNavInternal.d.ts +14 -0
  47. package/dist/esm/next/components/Wizard/WizardNavInternal.d.ts.map +1 -0
  48. package/dist/esm/next/components/Wizard/WizardNavInternal.js +49 -0
  49. package/dist/esm/next/components/Wizard/WizardNavInternal.js.map +1 -0
  50. package/dist/esm/next/components/Wizard/WizardNavItem.d.ts +12 -8
  51. package/dist/esm/next/components/Wizard/WizardNavItem.d.ts.map +1 -1
  52. package/dist/esm/next/components/Wizard/WizardNavItem.js +23 -12
  53. package/dist/esm/next/components/Wizard/WizardNavItem.js.map +1 -1
  54. package/dist/esm/next/components/Wizard/WizardStep.d.ts +22 -6
  55. package/dist/esm/next/components/Wizard/WizardStep.d.ts.map +1 -1
  56. package/dist/esm/next/components/Wizard/WizardStep.js +20 -1
  57. package/dist/esm/next/components/Wizard/WizardStep.js.map +1 -1
  58. package/dist/esm/next/components/Wizard/WizardToggle.d.ts +9 -15
  59. package/dist/esm/next/components/Wizard/WizardToggle.d.ts.map +1 -1
  60. package/dist/esm/next/components/Wizard/WizardToggle.js +15 -50
  61. package/dist/esm/next/components/Wizard/WizardToggle.js.map +1 -1
  62. package/dist/esm/next/components/Wizard/hooks/useWizardFooter.d.ts +2 -2
  63. package/dist/esm/next/components/Wizard/hooks/useWizardFooter.d.ts.map +1 -1
  64. package/dist/esm/next/components/Wizard/hooks/useWizardFooter.js +3 -3
  65. package/dist/esm/next/components/Wizard/hooks/useWizardFooter.js.map +1 -1
  66. package/dist/esm/next/components/Wizard/types.d.ts +37 -46
  67. package/dist/esm/next/components/Wizard/types.d.ts.map +1 -1
  68. package/dist/esm/next/components/Wizard/types.js +10 -2
  69. package/dist/esm/next/components/Wizard/types.js.map +1 -1
  70. package/dist/esm/next/components/Wizard/utils.d.ts +4 -5
  71. package/dist/esm/next/components/Wizard/utils.d.ts.map +1 -1
  72. package/dist/esm/next/components/Wizard/utils.js +20 -13
  73. package/dist/esm/next/components/Wizard/utils.js.map +1 -1
  74. package/dist/esm/next/components/index.d.ts +2 -1
  75. package/dist/esm/next/components/index.d.ts.map +1 -1
  76. package/dist/esm/next/components/index.js +2 -1
  77. package/dist/esm/next/components/index.js.map +1 -1
  78. package/dist/js/next/components/Select/Select.d.ts +28 -0
  79. package/dist/js/next/components/Select/Select.d.ts.map +1 -0
  80. package/dist/js/next/components/Select/Select.js +65 -0
  81. package/dist/js/next/components/Select/Select.js.map +1 -0
  82. package/dist/js/next/components/Select/SelectGroup.d.ts +12 -0
  83. package/dist/js/next/components/Select/SelectGroup.d.ts.map +1 -0
  84. package/dist/js/next/components/Select/SelectGroup.js +14 -0
  85. package/dist/js/next/components/Select/SelectGroup.js.map +1 -0
  86. package/dist/js/next/components/Select/SelectList.d.ts +10 -0
  87. package/dist/js/next/components/Select/SelectList.d.ts.map +1 -0
  88. package/dist/js/next/components/Select/SelectList.js +14 -0
  89. package/dist/js/next/components/Select/SelectList.js.map +1 -0
  90. package/dist/js/next/components/Select/SelectOption.d.ts +20 -0
  91. package/dist/js/next/components/Select/SelectOption.d.ts.map +1 -0
  92. package/dist/js/next/components/Select/SelectOption.js +14 -0
  93. package/dist/js/next/components/Select/SelectOption.js.map +1 -0
  94. package/dist/js/next/components/Select/index.d.ts +5 -0
  95. package/dist/js/next/components/Select/index.d.ts.map +1 -0
  96. package/dist/js/next/components/Select/index.js +8 -0
  97. package/dist/js/next/components/Select/index.js.map +1 -0
  98. package/dist/js/next/components/Wizard/Wizard.d.ts +9 -7
  99. package/dist/js/next/components/Wizard/Wizard.d.ts.map +1 -1
  100. package/dist/js/next/components/Wizard/Wizard.js +59 -45
  101. package/dist/js/next/components/Wizard/Wizard.js.map +1 -1
  102. package/dist/js/next/components/Wizard/WizardBody.d.ts +2 -2
  103. package/dist/js/next/components/Wizard/WizardBody.d.ts.map +1 -1
  104. package/dist/js/next/components/Wizard/WizardBody.js +1 -1
  105. package/dist/js/next/components/Wizard/WizardBody.js.map +1 -1
  106. package/dist/js/next/components/Wizard/WizardContext.d.ts +21 -20
  107. package/dist/js/next/components/Wizard/WizardContext.d.ts.map +1 -1
  108. package/dist/js/next/components/Wizard/WizardContext.js +61 -30
  109. package/dist/js/next/components/Wizard/WizardContext.js.map +1 -1
  110. package/dist/js/next/components/Wizard/WizardFooter.d.ts +20 -6
  111. package/dist/js/next/components/Wizard/WizardFooter.d.ts.map +1 -1
  112. package/dist/js/next/components/Wizard/WizardFooter.js +15 -6
  113. package/dist/js/next/components/Wizard/WizardFooter.js.map +1 -1
  114. package/dist/js/next/components/Wizard/WizardHeader.d.ts +1 -1
  115. package/dist/js/next/components/Wizard/WizardHeader.d.ts.map +1 -1
  116. package/dist/js/next/components/Wizard/WizardHeader.js +2 -2
  117. package/dist/js/next/components/Wizard/WizardHeader.js.map +1 -1
  118. package/dist/js/next/components/Wizard/WizardNav.d.ts +5 -5
  119. package/dist/js/next/components/Wizard/WizardNav.d.ts.map +1 -1
  120. package/dist/js/next/components/Wizard/WizardNav.js +3 -4
  121. package/dist/js/next/components/Wizard/WizardNav.js.map +1 -1
  122. package/dist/js/next/components/Wizard/WizardNavInternal.d.ts +14 -0
  123. package/dist/js/next/components/Wizard/WizardNavInternal.d.ts.map +1 -0
  124. package/dist/js/next/components/Wizard/WizardNavInternal.js +54 -0
  125. package/dist/js/next/components/Wizard/WizardNavInternal.js.map +1 -0
  126. package/dist/js/next/components/Wizard/WizardNavItem.d.ts +12 -8
  127. package/dist/js/next/components/Wizard/WizardNavItem.d.ts.map +1 -1
  128. package/dist/js/next/components/Wizard/WizardNavItem.js +23 -12
  129. package/dist/js/next/components/Wizard/WizardNavItem.js.map +1 -1
  130. package/dist/js/next/components/Wizard/WizardStep.d.ts +22 -6
  131. package/dist/js/next/components/Wizard/WizardStep.d.ts.map +1 -1
  132. package/dist/js/next/components/Wizard/WizardStep.js +20 -1
  133. package/dist/js/next/components/Wizard/WizardStep.js.map +1 -1
  134. package/dist/js/next/components/Wizard/WizardToggle.d.ts +9 -15
  135. package/dist/js/next/components/Wizard/WizardToggle.d.ts.map +1 -1
  136. package/dist/js/next/components/Wizard/WizardToggle.js +15 -51
  137. package/dist/js/next/components/Wizard/WizardToggle.js.map +1 -1
  138. package/dist/js/next/components/Wizard/hooks/useWizardFooter.d.ts +2 -2
  139. package/dist/js/next/components/Wizard/hooks/useWizardFooter.d.ts.map +1 -1
  140. package/dist/js/next/components/Wizard/hooks/useWizardFooter.js +3 -3
  141. package/dist/js/next/components/Wizard/hooks/useWizardFooter.js.map +1 -1
  142. package/dist/js/next/components/Wizard/types.d.ts +37 -46
  143. package/dist/js/next/components/Wizard/types.d.ts.map +1 -1
  144. package/dist/js/next/components/Wizard/types.js +12 -3
  145. package/dist/js/next/components/Wizard/types.js.map +1 -1
  146. package/dist/js/next/components/Wizard/utils.d.ts +4 -5
  147. package/dist/js/next/components/Wizard/utils.d.ts.map +1 -1
  148. package/dist/js/next/components/Wizard/utils.js +24 -15
  149. package/dist/js/next/components/Wizard/utils.js.map +1 -1
  150. package/dist/js/next/components/index.d.ts +2 -1
  151. package/dist/js/next/components/index.d.ts.map +1 -1
  152. package/dist/js/next/components/index.js +2 -1
  153. package/dist/js/next/components/index.js.map +1 -1
  154. package/dist/umd/react-core.min.css +940 -940
  155. package/package.json +2 -2
  156. package/src/next/components/Select/Select.tsx +129 -0
  157. package/src/next/components/Select/SelectGroup.tsx +24 -0
  158. package/src/next/components/Select/SelectList.tsx +21 -0
  159. package/src/next/components/Select/SelectOption.tsx +31 -0
  160. package/src/next/components/Select/examples/Select.md +37 -0
  161. package/src/next/components/Select/examples/SelectBasic.tsx +54 -0
  162. package/src/next/components/Select/examples/SelectCheckbox.tsx +67 -0
  163. package/src/next/components/Select/examples/SelectGrouped.tsx +63 -0
  164. package/src/next/components/Select/examples/SelectMultiTypeahead.tsx +195 -0
  165. package/src/next/components/Select/examples/SelectTypeahead.tsx +191 -0
  166. package/src/next/components/Select/index.ts +4 -0
  167. package/src/next/components/Wizard/Wizard.tsx +107 -64
  168. package/src/next/components/Wizard/WizardBody.tsx +4 -4
  169. package/src/next/components/Wizard/WizardContext.tsx +117 -65
  170. package/src/next/components/Wizard/WizardFooter.tsx +39 -17
  171. package/src/next/components/Wizard/WizardHeader.tsx +6 -3
  172. package/src/next/components/Wizard/WizardNav.tsx +9 -10
  173. package/src/next/components/Wizard/WizardNavInternal.tsx +137 -0
  174. package/src/next/components/Wizard/WizardNavItem.tsx +47 -20
  175. package/src/next/components/Wizard/WizardStep.tsx +52 -7
  176. package/src/next/components/Wizard/WizardToggle.tsx +24 -142
  177. package/src/next/components/Wizard/__tests__/Wizard.test.tsx +10 -13
  178. package/src/next/components/Wizard/__tests__/WizardBody.test.tsx +3 -3
  179. package/src/next/components/Wizard/__tests__/WizardFooter.test.tsx +11 -14
  180. package/src/next/components/Wizard/__tests__/WizardStep.test.tsx +100 -0
  181. package/src/next/components/Wizard/__tests__/WizardToggle.test.tsx +4 -4
  182. package/src/next/components/Wizard/examples/Wizard.md +40 -15
  183. package/src/next/components/Wizard/examples/WizardBasic.tsx +2 -2
  184. package/src/next/components/Wizard/examples/WizardCustomNav.tsx +4 -4
  185. package/src/next/components/Wizard/examples/WizardKitchenSink.tsx +126 -60
  186. package/src/next/components/Wizard/hooks/__tests__/useWizardFooter.test.tsx +23 -34
  187. package/src/next/components/Wizard/hooks/useWizardFooter.tsx +5 -5
  188. package/src/next/components/Wizard/types.tsx +59 -53
  189. package/src/next/components/Wizard/utils.ts +25 -16
  190. package/src/next/components/index.ts +2 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,23 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 4.250.0 (2022-10-05)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **WizardFooterWrapper - next:** Add explicit props due to upgrade of react version ([#8171](https://github.com/patternfly/patternfly-react/issues/8171)) ([ae16b1a](https://github.com/patternfly/patternfly-react/commit/ae16b1ab57a50bd973905fe8a187341e2899d6fb))
12
+
13
+
14
+ ### Features
15
+
16
+ * **Select:** add next version using menu components ([#8115](https://github.com/patternfly/patternfly-react/issues/8115)) ([a2e72a1](https://github.com/patternfly/patternfly-react/commit/a2e72a13f0670eddb7bdd91bc37414b938ffedc8))
17
+ * **Wizard - next:** Enhancements & updated types ([#7915](https://github.com/patternfly/patternfly-react/issues/7915)) ([04f5004](https://github.com/patternfly/patternfly-react/commit/04f5004f3a6b4697ce75d0dc7ca4824e0ba579fd))
18
+
19
+
20
+
21
+
22
+
6
23
  # [4.249.0](https://github.com/patternfly/patternfly-react/compare/@patternfly/react-core@4.248.0...@patternfly/react-core@4.249.0) (2022-10-04)
7
24
 
8
25
 
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { MenuProps } from '../../../components/Menu';
3
+ import { OUIAProps } from '../../../helpers';
4
+ export interface SelectProps extends MenuProps, OUIAProps {
5
+ /** Anything which can be rendered in a select */
6
+ children?: React.ReactNode;
7
+ /** Classes applied to root element of select */
8
+ className?: string;
9
+ /** Flag to indicate if select is open */
10
+ isOpen?: boolean;
11
+ /** Single itemId for single select menus, or array of itemIds for multi select. You can also specify isSelected on the SelectOption. */
12
+ selected?: any | any[];
13
+ /** Renderer for a custom select toggle. Forwards a ref to the toggle. */
14
+ toggle: (toggleRef: React.RefObject<any>) => React.ReactNode;
15
+ /** Function callback when user selects an option. */
16
+ onSelect?: (event?: React.MouseEvent<Element, MouseEvent>, itemId?: string | number) => void;
17
+ /** Callback to allow the select component to change the open state of the menu.
18
+ * Triggered by clicking outside of the menu, or by pressing either tab or escape. */
19
+ onOpenChange?: (isOpen: boolean) => void;
20
+ /** Indicates if the select should be without the outer box-shadow */
21
+ isPlain?: boolean;
22
+ /** Minimum width of the select menu */
23
+ minWidth?: string;
24
+ /** @hide Forwarded ref */
25
+ innerRef?: React.Ref<HTMLDivElement>;
26
+ }
27
+ export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<any>>;
28
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAqB,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAExE,OAAO,EAAgB,SAAS,EAAoB,MAAM,kBAAkB,CAAC;AAE7E,MAAM,WAAW,WAAY,SAAQ,SAAS,EAAE,SAAS;IACvD,iDAAiD;IACjD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,wIAAwI;IACxI,QAAQ,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC;IACvB,yEAAyE;IACzE,MAAM,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IAC7D,qDAAqD;IACrD,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC7F;yFACqF;IACrF,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;CACtC;AAgGD,eAAO,MAAM,MAAM,yEAEjB,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { __rest } from "tslib";
2
+ import React from 'react';
3
+ import { css } from '@patternfly/react-styles';
4
+ import { Menu, MenuContent } from '../../../components/Menu';
5
+ import { Popper } from '../../../helpers/Popper/Popper';
6
+ import { getOUIAProps, getDefaultOUIAId } from '../../../helpers';
7
+ const SelectBase = (_a) => {
8
+ var { children, className, onSelect, isOpen, selected, toggle, onOpenChange, isPlain, minWidth, innerRef } = _a, props = __rest(_a, ["children", "className", "onSelect", "isOpen", "selected", "toggle", "onOpenChange", "isPlain", "minWidth", "innerRef"]);
9
+ const localMenuRef = React.useRef();
10
+ const toggleRef = React.useRef();
11
+ const containerRef = React.useRef();
12
+ const menuRef = innerRef || localMenuRef;
13
+ React.useEffect(() => {
14
+ const handleMenuKeys = (event) => {
15
+ var _a, _b, _c, _d;
16
+ if (!isOpen && ((_a = toggleRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target))) {
17
+ // toggle was clicked open, focus on first menu item
18
+ if (event.key === 'Enter' || event.key === 'Space') {
19
+ setTimeout(() => {
20
+ var _a;
21
+ const firstElement = (_a = menuRef === null || menuRef === void 0 ? void 0 : menuRef.current) === null || _a === void 0 ? void 0 : _a.querySelector('li button:not(:disabled),li input:not(:disabled)');
22
+ firstElement && firstElement.focus();
23
+ }, 0);
24
+ }
25
+ }
26
+ // Close the menu on tab or escape if onOpenChange is provided
27
+ if ((isOpen && onOpenChange && ((_b = menuRef.current) === null || _b === void 0 ? void 0 : _b.contains(event.target))) ||
28
+ ((_c = toggleRef.current) === null || _c === void 0 ? void 0 : _c.contains(event.target))) {
29
+ if (event.key === 'Escape' || event.key === 'Tab') {
30
+ onOpenChange(!isOpen);
31
+ (_d = toggleRef.current) === null || _d === void 0 ? void 0 : _d.focus();
32
+ }
33
+ }
34
+ };
35
+ const handleClickOutside = (event) => {
36
+ var _a, _b;
37
+ // If the event is not on the toggle and onOpenChange callback is provided, close the menu
38
+ if (isOpen && onOpenChange && !((_a = toggleRef === null || toggleRef === void 0 ? void 0 : toggleRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target))) {
39
+ if (isOpen && !((_b = menuRef.current) === null || _b === void 0 ? void 0 : _b.contains(event.target))) {
40
+ onOpenChange(false);
41
+ }
42
+ }
43
+ };
44
+ window.addEventListener('keydown', handleMenuKeys);
45
+ window.addEventListener('click', handleClickOutside);
46
+ return () => {
47
+ window.removeEventListener('keydown', handleMenuKeys);
48
+ window.removeEventListener('click', handleClickOutside);
49
+ };
50
+ }, [isOpen, menuRef, onOpenChange]);
51
+ const menu = (React.createElement(Menu, Object.assign({ className: css(className), ref: menuRef, onSelect: (event, itemId) => onSelect(event, itemId), isPlain: isPlain, selected: selected }, (minWidth && {
52
+ style: {
53
+ '--pf-c-menu--MinWidth': minWidth
54
+ }
55
+ }), getOUIAProps(Select.displayName, props.ouiaId !== undefined ? props.ouiaId : getDefaultOUIAId(Select.displayName), props.ouiaSafe !== undefined ? props.ouiaSafe : true), props),
56
+ React.createElement(MenuContent, null, children)));
57
+ return (React.createElement("div", { ref: containerRef },
58
+ React.createElement(Popper, { trigger: toggle(toggleRef), removeFindDomNode: true, popper: menu, appendTo: containerRef.current || undefined, isVisible: isOpen })));
59
+ };
60
+ export const Select = React.forwardRef((props, ref) => (React.createElement(SelectBase, Object.assign({ innerRef: ref }, props))));
61
+ Select.displayName = 'Select';
62
+ //# sourceMappingURL=Select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../../../src/next/components/Select/Select.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { MenuGroupProps } from '../../../components/Menu';
3
+ export interface SelectGroupProps extends Omit<MenuGroupProps, 'ref'> {
4
+ /** Anything which can be rendered in a select group */
5
+ children: React.ReactNode;
6
+ /** Classes applied to root element of select group */
7
+ className?: string;
8
+ /** Label of the select group */
9
+ label?: string;
10
+ }
11
+ export declare const SelectGroup: React.FunctionComponent<SelectGroupProps>;
12
+ //# sourceMappingURL=SelectGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectGroup.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Select/SelectGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAa,MAAM,0BAA0B,CAAC;AAErE,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC;IACnE,uDAAuD;IACvD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CASjE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { __rest } from "tslib";
2
+ import React from 'react';
3
+ import { css } from '@patternfly/react-styles';
4
+ import { MenuGroup } from '../../../components/Menu';
5
+ export const SelectGroup = (_a) => {
6
+ var { children, className, label } = _a, props = __rest(_a, ["children", "className", "label"]);
7
+ return (React.createElement(MenuGroup, Object.assign({ className: css(className), label: label }, props), children));
8
+ };
9
+ SelectGroup.displayName = 'SelectGroup';
10
+ //# sourceMappingURL=SelectGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectGroup.js","sourceRoot":"","sources":["../../../../../src/next/components/Select/SelectGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAkB,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAWrE,MAAM,CAAC,MAAM,WAAW,GAA8C,CAAC,EAKpD,EAAE,EAAE;QALgD,EACrE,QAAQ,EACR,SAAS,EACT,KAAK,OAEY,EADd,KAAK,cAJ6D,kCAKtE,CADS;IACc,OAAA,CACtB,oBAAC,SAAS,kBAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,IAAM,KAAK,GAC1D,QAAQ,CACC,CACb,CAAA;CAAA,CAAC;AACF,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { MenuListProps } from '../../../components/Menu';
3
+ export interface SelectListProps extends MenuListProps {
4
+ /** Anything which can be rendered in a select list */
5
+ children: React.ReactNode;
6
+ /** Classes applied to root element of select list */
7
+ className?: string;
8
+ }
9
+ export declare const SelectList: React.FunctionComponent<MenuListProps>;
10
+ //# sourceMappingURL=SelectList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectList.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Select/SelectList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAY,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,sDAAsD;IACtD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,iBAAiB,CAAC,aAAa,CAQ7D,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { __rest } from "tslib";
2
+ import React from 'react';
3
+ import { css } from '@patternfly/react-styles';
4
+ import { MenuList } from '../../../components/Menu';
5
+ export const SelectList = (_a) => {
6
+ var { children, className } = _a, props = __rest(_a, ["children", "className"]);
7
+ return (React.createElement(MenuList, Object.assign({ className: css(className) }, props), children));
8
+ };
9
+ SelectList.displayName = 'SelectList';
10
+ //# sourceMappingURL=SelectList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectList.js","sourceRoot":"","sources":["../../../../../src/next/components/Select/SelectList.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAiB,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AASnE,MAAM,CAAC,MAAM,UAAU,GAA2C,CAAC,EAIjD,EAAE,EAAE;QAJ6C,EACjE,QAAQ,EACR,SAAS,OAEO,EADb,KAAK,cAHyD,yBAIlE,CADS;IACa,OAAA,CACrB,oBAAC,QAAQ,kBAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,IAAM,KAAK,GAC3C,QAAQ,CACA,CACZ,CAAA;CAAA,CAAC;AACF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { MenuItemProps } from '../../../components/Menu';
3
+ export interface SelectOptionProps extends Omit<MenuItemProps, 'ref'> {
4
+ /** Anything which can be rendered in a select option */
5
+ children?: React.ReactNode;
6
+ /** Classes applied to root element of select option */
7
+ className?: string;
8
+ /** Identifies the component in the Select onSelect callback */
9
+ itemId?: any;
10
+ /** Indicates the option has a checkbox */
11
+ hasCheck?: boolean;
12
+ /** Indicates the option is disabled */
13
+ isDisabled?: boolean;
14
+ /** Indicates the option is selected */
15
+ isSelected?: boolean;
16
+ /** Indicates the option is focused */
17
+ isFocused?: boolean;
18
+ }
19
+ export declare const SelectOption: React.FunctionComponent<MenuItemProps>;
20
+ //# sourceMappingURL=SelectOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectOption.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Select/SelectOption.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAY,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC;IACnE,wDAAwD;IACxD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uCAAuC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uCAAuC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC,aAAa,CAQ/D,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { __rest } from "tslib";
2
+ import React from 'react';
3
+ import { css } from '@patternfly/react-styles';
4
+ import { MenuItem } from '../../../components/Menu';
5
+ export const SelectOption = (_a) => {
6
+ var { children, className } = _a, props = __rest(_a, ["children", "className"]);
7
+ return (React.createElement(MenuItem, Object.assign({ className: css(className) }, props), children));
8
+ };
9
+ SelectOption.displayName = 'SelectOption';
10
+ //# sourceMappingURL=SelectOption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectOption.js","sourceRoot":"","sources":["../../../../../src/next/components/Select/SelectOption.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAiB,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAmBnE,MAAM,CAAC,MAAM,YAAY,GAA2C,CAAC,EAIjD,EAAE,EAAE;QAJ6C,EACnE,QAAQ,EACR,SAAS,OAES,EADf,KAAK,cAH2D,yBAIpE,CADS;IACe,OAAA,CACvB,oBAAC,QAAQ,kBAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,IAAM,KAAK,GAC3C,QAAQ,CACA,CACZ,CAAA;CAAA,CAAC;AACF,YAAY,CAAC,WAAW,GAAG,cAAc,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from './Select';
2
+ export * from './SelectGroup';
3
+ export * from './SelectList';
4
+ export * from './SelectOption';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Select/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from './Select';
2
+ export * from './SelectGroup';
3
+ export * from './SelectList';
4
+ export * from './SelectOption';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/next/components/Select/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { DefaultWizardFooterProps, DefaultWizardNavProps, WizardNavStepFunction, CustomWizardNavFunction } from './types';
2
+ import { WizardNavStepFunction, WizardFooterType, WizardNavType } from './types';
3
3
  import { WizardStepProps } from './WizardStep';
4
4
  /**
5
5
  * Wrapper for all steps and hosts state, including navigation helpers, within context.
@@ -11,9 +11,9 @@ export interface WizardProps extends React.HTMLProps<HTMLDivElement> {
11
11
  /** Wizard header */
12
12
  header?: React.ReactNode;
13
13
  /** Wizard footer */
14
- footer?: DefaultWizardFooterProps | React.ReactElement;
15
- /** Wizard nav */
16
- nav?: DefaultWizardNavProps | CustomWizardNavFunction;
14
+ footer?: WizardFooterType;
15
+ /** Wizard navigation */
16
+ nav?: WizardNavType;
17
17
  /** The initial index the wizard is to start on (1 or higher). Defaults to 1. */
18
18
  startIndex?: number;
19
19
  /** Additional classes spread to the wizard */
@@ -22,9 +22,11 @@ export interface WizardProps extends React.HTMLProps<HTMLDivElement> {
22
22
  width?: number | string;
23
23
  /** Custom height of the wizard */
24
24
  height?: number | string;
25
+ /** Disables navigation items that haven't been visited. Defaults to false */
26
+ isStepVisitRequired?: boolean;
25
27
  /** Flag to unmount inactive steps instead of hiding. Defaults to true */
26
- unmountInactiveSteps?: boolean;
27
- /** Callback function when a step in the nav is clicked */
28
+ hasUnmountedSteps?: boolean;
29
+ /** Callback function when a step in the navigation is clicked */
28
30
  onNavByIndex?: WizardNavStepFunction;
29
31
  /** Callback function after next button is clicked */
30
32
  onNext?: WizardNavStepFunction;
@@ -36,7 +38,7 @@ export interface WizardProps extends React.HTMLProps<HTMLDivElement> {
36
38
  onClose?: () => void;
37
39
  }
38
40
  export declare const Wizard: {
39
- ({ startIndex, children, footer, height, width, className, header, nav, unmountInactiveSteps, onNavByIndex, onNext, onBack, onSave, onClose, ...wrapperProps }: WizardProps): JSX.Element;
41
+ ({ children, footer, height, width, className, header, nav, startIndex, isStepVisitRequired, hasUnmountedSteps, onNavByIndex, onNext, onBack, onSave, onClose, ...wrapperProps }: WizardProps): JSX.Element;
40
42
  displayName: string;
41
43
  };
42
44
  //# sourceMappingURL=Wizard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Wizard.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/Wizard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EAErB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C;;;GAGG;AAEH,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IAClE,sBAAsB;IACtB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC;IACtF,oBAAoB;IACpB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,oBAAoB;IACpB,MAAM,CAAC,EAAE,wBAAwB,GAAG,KAAK,CAAC,YAAY,CAAC;IACvD,iBAAiB;IACjB,GAAG,CAAC,EAAE,qBAAqB,GAAG,uBAAuB,CAAC;IACtD,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,yEAAyE;IACzE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,0DAA0D;IAC1D,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,qDAAqD;IACrD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,qDAAqD;IACrD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,MAAM;oKAgBhB,WAAW;;CAmGb,CAAC"}
1
+ {"version":3,"file":"Wizard.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/Wizard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAEL,qBAAqB,EAGrB,gBAAgB,EAChB,aAAa,EACd,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/C;;;GAGG;AAEH,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IAClE,sBAAsB;IACtB,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC;IACtF,oBAAoB;IACpB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,oBAAoB;IACpB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,wBAAwB;IACxB,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,6EAA6E;IAC7E,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iEAAiE;IACjE,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,qDAAqD;IACrD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,qDAAqD;IACrD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,wFAAwF;IACxF,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,MAAM;sLAiBhB,WAAW;;CA2Gb,CAAC"}
@@ -1,77 +1,91 @@
1
1
  import { __rest } from "tslib";
2
2
  import React from 'react';
3
+ import findLastIndex from 'lodash/findLastIndex';
3
4
  import { css } from '@patternfly/react-styles';
4
5
  import styles from '@patternfly/react-styles/css/components/Wizard/wizard';
5
- import { isWizardParentStep } from './types';
6
+ import { isWizardParentStep, isCustomWizardNav } from './types';
6
7
  import { buildSteps, normalizeNavStep } from './utils';
7
- import { WizardContextProvider } from './WizardContext';
8
- import { WizardToggleInternal } from './WizardToggle';
8
+ import { useWizardContext, WizardContextProvider } from './WizardContext';
9
+ import { WizardToggle } from './WizardToggle';
10
+ import { WizardNavInternal } from './WizardNavInternal';
9
11
  export const Wizard = (_a) => {
10
- var { startIndex = 1, children, footer, height, width, className, header, nav, unmountInactiveSteps, onNavByIndex, onNext, onBack, onSave, onClose } = _a, wrapperProps = __rest(_a, ["startIndex", "children", "footer", "height", "width", "className", "header", "nav", "unmountInactiveSteps", "onNavByIndex", "onNext", "onBack", "onSave", "onClose"]);
12
+ var { children, footer, height, width, className, header, nav, startIndex = 1, isStepVisitRequired = false, hasUnmountedSteps = true, onNavByIndex, onNext, onBack, onSave, onClose } = _a, wrapperProps = __rest(_a, ["children", "footer", "height", "width", "className", "header", "nav", "startIndex", "isStepVisitRequired", "hasUnmountedSteps", "onNavByIndex", "onNext", "onBack", "onSave", "onClose"]);
11
13
  const [currentStepIndex, setCurrentStepIndex] = React.useState(startIndex);
12
- const steps = buildSteps(children);
13
- const goToStepByIndex = (index) => {
14
- const lastStepIndex = steps.length;
14
+ const initialSteps = buildSteps(children);
15
+ const goToNextStep = (steps = initialSteps) => {
16
+ const newStepIndex = steps.findIndex((step, index) => index + 1 > currentStepIndex && !step.isHidden && !isWizardParentStep(step)) + 1;
17
+ if (currentStepIndex >= steps.length || !newStepIndex) {
18
+ return onSave ? onSave() : onClose === null || onClose === void 0 ? void 0 : onClose();
19
+ }
20
+ const currStep = isWizardParentStep(steps[currentStepIndex])
21
+ ? steps[currentStepIndex + 1]
22
+ : steps[currentStepIndex];
23
+ const prevStep = steps[currentStepIndex - 1];
24
+ setCurrentStepIndex(newStepIndex);
25
+ return onNext === null || onNext === void 0 ? void 0 : onNext(normalizeNavStep(currStep, steps), normalizeNavStep(prevStep, steps));
26
+ };
27
+ const goToPrevStep = (steps = initialSteps) => {
28
+ const newStepIndex = findLastIndex(steps, (step, index) => index + 1 < currentStepIndex && !step.isHidden && !isWizardParentStep(step)) + 1;
29
+ const currStep = isWizardParentStep(steps[currentStepIndex - 2])
30
+ ? steps[currentStepIndex - 3]
31
+ : steps[currentStepIndex - 2];
32
+ const prevStep = steps[currentStepIndex - 1];
33
+ setCurrentStepIndex(newStepIndex);
34
+ return onBack === null || onBack === void 0 ? void 0 : onBack(normalizeNavStep(currStep, steps), normalizeNavStep(prevStep, steps));
35
+ };
36
+ const goToStepByIndex = (steps = initialSteps, index) => {
37
+ const lastStepIndex = steps.length + 1;
38
+ // Handle index when out of bounds or hidden
15
39
  if (index < 1) {
16
40
  index = 1;
17
41
  }
18
42
  else if (index > lastStepIndex) {
19
43
  index = lastStepIndex;
20
44
  }
45
+ else if (steps[index - 1].isHidden) {
46
+ // eslint-disable-next-line no-console
47
+ console.error('Wizard: Unable to navigate to hidden step.');
48
+ }
21
49
  const currStep = steps[index - 1];
22
50
  const prevStep = steps[currentStepIndex - 1];
23
51
  setCurrentStepIndex(index);
24
- return onNavByIndex === null || onNavByIndex === void 0 ? void 0 : onNavByIndex(normalizeNavStep(currStep), normalizeNavStep(prevStep));
52
+ return onNavByIndex === null || onNavByIndex === void 0 ? void 0 : onNavByIndex(normalizeNavStep(currStep, steps), normalizeNavStep(prevStep, steps));
25
53
  };
26
- const goToNextStep = () => {
27
- // Save when on the last step, otherwise close
28
- if (currentStepIndex >= steps.length) {
29
- if (onSave) {
30
- return onSave();
31
- }
32
- return onClose === null || onClose === void 0 ? void 0 : onClose();
54
+ const goToStepById = (steps = initialSteps, id) => {
55
+ const stepIndex = steps.findIndex(step => step.id === id) + 1;
56
+ if (stepIndex > 0 && stepIndex < steps.length + 1 && !steps[stepIndex].isHidden) {
57
+ setCurrentStepIndex(stepIndex);
33
58
  }
34
- let currStep = steps[currentStepIndex];
35
- let newStepIndex = currentStepIndex + 1;
36
- const prevStep = steps[currentStepIndex - 1];
37
- // Skip parent step and focus on the first sub-step if they exist
38
- if (isWizardParentStep(currStep)) {
39
- newStepIndex += 1;
40
- currStep = steps[currentStepIndex + 1];
59
+ else {
60
+ // eslint-disable-next-line no-console
61
+ console.error(`Wizard: Unable to navigate to step with id: ${id}.`);
41
62
  }
42
- setCurrentStepIndex(newStepIndex);
43
- return onNext === null || onNext === void 0 ? void 0 : onNext(normalizeNavStep(currStep), normalizeNavStep(prevStep));
44
63
  };
45
- const goToPrevStep = () => {
46
- if (steps.length < currentStepIndex) {
47
- // Previous step was removed, just update the currentStep state
48
- setCurrentStepIndex(steps.length);
64
+ const goToStepByName = (steps = initialSteps, name) => {
65
+ const stepIndex = initialSteps.findIndex(step => step.name === name) + 1;
66
+ if (stepIndex > 0 && stepIndex < steps.length + 1 && !steps[stepIndex].isHidden) {
67
+ setCurrentStepIndex(stepIndex);
49
68
  }
50
69
  else {
51
- let currStep = steps[currentStepIndex - 2];
52
- let newStepIndex = currentStepIndex - 1;
53
- const prevStep = steps[currentStepIndex - 1];
54
- // // Skip parent step and focus on the step prior
55
- if (isWizardParentStep(currStep)) {
56
- newStepIndex -= 1;
57
- currStep = steps[currentStepIndex - 3];
58
- }
59
- setCurrentStepIndex(newStepIndex);
60
- return onBack === null || onBack === void 0 ? void 0 : onBack(normalizeNavStep(currStep), normalizeNavStep(prevStep));
70
+ // eslint-disable-next-line no-console
71
+ console.error(`Wizard: Unable to navigate to step with name: ${name}.`);
61
72
  }
62
73
  };
63
- const goToStepById = (id) => {
64
- const stepIndex = steps.findIndex(step => step.id === id) + 1;
65
- stepIndex > 0 && setCurrentStepIndex(stepIndex);
66
- };
67
- const goToStepByName = (name) => {
68
- const stepIndex = steps.findIndex(step => step.name === name) + 1;
69
- stepIndex > 0 && setCurrentStepIndex(stepIndex);
70
- };
71
- return (React.createElement(WizardContextProvider, { steps: steps, currentStepIndex: currentStepIndex, footer: footer, onNext: goToNextStep, onBack: goToPrevStep, onClose: onClose, goToStepById: goToStepById, goToStepByName: goToStepByName, goToStepByIndex: goToStepByIndex },
74
+ return (React.createElement(WizardContextProvider, { steps: initialSteps, currentStepIndex: currentStepIndex, footer: footer, isStepVisitRequired: isStepVisitRequired, onNext: goToNextStep, onBack: goToPrevStep, onClose: onClose, goToStepById: goToStepById, goToStepByName: goToStepByName, goToStepByIndex: goToStepByIndex },
72
75
  React.createElement("div", Object.assign({ className: css(styles.wizard, className), style: Object.assign(Object.assign({}, (height ? { height } : {})), (width ? { width } : {})) }, wrapperProps),
73
76
  header,
74
- React.createElement(WizardToggleInternal, { nav: nav, unmountInactiveSteps: unmountInactiveSteps }))));
77
+ React.createElement(WizardInternal, { nav: nav, hasUnmountedSteps: hasUnmountedSteps, isStepVisitRequired: isStepVisitRequired }))));
78
+ };
79
+ const WizardInternal = ({ nav, hasUnmountedSteps, isStepVisitRequired }) => {
80
+ const { currentStep, steps, footer, goToStepByIndex } = useWizardContext();
81
+ const [isNavExpanded, setIsNavExpanded] = React.useState(false);
82
+ const wizardNav = React.useMemo(() => {
83
+ if (isCustomWizardNav(nav)) {
84
+ return typeof nav === 'function' ? nav(isNavExpanded, steps, currentStep, goToStepByIndex) : nav;
85
+ }
86
+ return React.createElement(WizardNavInternal, { nav: nav, isNavExpanded: isNavExpanded, isStepVisitRequired: isStepVisitRequired });
87
+ }, [currentStep, isStepVisitRequired, goToStepByIndex, isNavExpanded, nav, steps]);
88
+ return (React.createElement(WizardToggle, { nav: wizardNav, footer: footer, steps: steps, currentStep: currentStep, isNavExpanded: isNavExpanded, toggleNavExpanded: () => setIsNavExpanded(prevIsExpanded => !prevIsExpanded), hasUnmountedSteps: hasUnmountedSteps }));
75
89
  };
76
90
  Wizard.displayName = 'Wizard';
77
91
  //# sourceMappingURL=Wizard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Wizard.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/Wizard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Wizard.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/Wizard.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,MAAM,MAAM,uDAAuD,CAAC;AAE3E,OAAO,EACL,kBAAkB,EAGlB,iBAAiB,EAGlB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAwCxD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAiBT,EAAE,EAAE;QAjBK,EACrB,QAAQ,EACR,MAAM,EACN,MAAM,EACN,KAAK,EACL,SAAS,EACT,MAAM,EACN,GAAG,EACH,UAAU,GAAG,CAAC,EACd,mBAAmB,GAAG,KAAK,EAC3B,iBAAiB,GAAG,IAAI,EACxB,YAAY,EACZ,MAAM,EACN,MAAM,EACN,MAAM,EACN,OAAO,OAEK,EADT,YAAY,cAhBM,0LAiBtB,CADgB;IAEf,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3E,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE1C,MAAM,YAAY,GAAG,CAAC,QAA6B,YAAY,EAAE,EAAE;QACjE,MAAM,YAAY,GAChB,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,gBAAgB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAEpH,IAAI,gBAAgB,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE;YACrD,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;SACxC;QAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAC1D,CAAC,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC;YAC7B,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAE7C,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAElC,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IACxF,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,QAA6B,YAAY,EAAE,EAAE;QACjE,MAAM,YAAY,GAChB,aAAa,CACX,KAAK,EACL,CAAC,IAAuB,EAAE,KAAa,EAAE,EAAE,CACzC,KAAK,GAAG,CAAC,GAAG,gBAAgB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAC9E,GAAG,CAAC,CAAC;QACR,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;YAC9D,CAAC,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC;YAC7B,CAAC,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAE7C,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAElC,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IACxF,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,QAA6B,YAAY,EAAE,KAAa,EAAE,EAAE;QACnF,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAEvC,4CAA4C;QAC5C,IAAI,KAAK,GAAG,CAAC,EAAE;YACb,KAAK,GAAG,CAAC,CAAC;SACX;aAAM,IAAI,KAAK,GAAG,aAAa,EAAE;YAChC,KAAK,GAAG,aAAa,CAAC;SACvB;aAAM,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE;YACpC,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC7D;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAC7C,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAE3B,OAAO,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9F,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,QAA6B,YAAY,EAAE,EAAmB,EAAE,EAAE;QACtF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;QAE9D,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;YAC/E,mBAAmB,CAAC,SAAS,CAAC,CAAC;SAChC;aAAM;YACL,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,GAAG,CAAC,CAAC;SACrE;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,QAA6B,YAAY,EAAE,IAAY,EAAE,EAAE;QACjF,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC;QAEzE,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;YAC/E,mBAAmB,CAAC,SAAS,CAAC,CAAC;SAChC;aAAM;YACL,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,iDAAiD,IAAI,GAAG,CAAC,CAAC;SACzE;IACH,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,qBAAqB,IACpB,KAAK,EAAE,YAAY,EACnB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,mBAAmB,EACxC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe;QAEhC,2CACE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACxC,KAAK,kCACA,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAC1B,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAEzB,YAAY;YAEf,MAAM;YACP,oBAAC,cAAc,IAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,GAAI,CACxG,CACgB,CACzB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,EACtB,GAAG,EACH,iBAAiB,EACjB,mBAAmB,EACoD,EAAE,EAAE;IAC3E,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAC3E,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhE,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE;YAC1B,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;SAClG;QAED,OAAO,oBAAC,iBAAiB,IAAC,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,GAAI,CAAC;IACjH,CAAC,EAAE,CAAC,WAAW,EAAE,mBAAmB,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnF,OAAO,CACL,oBAAC,YAAY,IACX,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,EAC5E,iBAAiB,EAAE,iBAAiB,GACpC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC"}
@@ -11,10 +11,10 @@ export interface WizardBodyProps {
11
11
  /** Sets the aria-labelledby attribute for the wrapper element */
12
12
  'aria-labelledby'?: string;
13
13
  /** Component used as the wrapping content container */
14
- wrapperElement?: React.ElementType;
14
+ component?: React.ElementType;
15
15
  }
16
16
  export declare const WizardBody: {
17
- ({ children, hasNoBodyPadding, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, wrapperElement: Wrapper }: WizardBodyProps): JSX.Element;
17
+ ({ children, hasNoBodyPadding, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, component: WrapperComponent }: WizardBodyProps): JSX.Element;
18
18
  displayName: string;
19
19
  };
20
20
  //# sourceMappingURL=WizardBody.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WizardBody.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardBody.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B;;GAEG;AAEH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;IAC9C,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,cAAc,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;CACpC;AAED,eAAO,MAAM,UAAU;0HAMpB,eAAe;;CAIjB,CAAC"}
1
+ {"version":3,"file":"WizardBody.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardBody.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B;;GAEG;AAEH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;IAC9C,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,SAAS,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;CAC/B;AAED,eAAO,MAAM,UAAU;8HAMpB,eAAe;;CAIjB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import styles from '@patternfly/react-styles/css/components/Wizard/wizard';
3
3
  import { css } from '@patternfly/react-styles';
4
- export const WizardBody = ({ children, hasNoBodyPadding = false, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, wrapperElement: Wrapper = 'div' }) => (React.createElement(Wrapper, { "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, className: css(styles.wizardMain) },
4
+ export const WizardBody = ({ children, hasNoBodyPadding = false, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, component: WrapperComponent = 'div' }) => (React.createElement(WrapperComponent, { "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, className: css(styles.wizardMain) },
5
5
  React.createElement("div", { className: css(styles.wizardMainBody, hasNoBodyPadding && styles.modifiers.noPadding) }, children)));
6
6
  WizardBody.displayName = 'WizardBody';
7
7
  //# sourceMappingURL=WizardBody.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WizardBody.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardBody.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,uDAAuD,CAAC;AAC3E,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAkB/C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,QAAQ,EACR,gBAAgB,GAAG,KAAK,EACxB,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,cAAc,EAAE,OAAO,GAAG,KAAK,EACf,EAAE,EAAE,CAAC,CACrB,oBAAC,OAAO,kBAAa,SAAS,qBAAmB,cAAc,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;IAChG,6BAAK,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,gBAAgB,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAG,QAAQ,CAAO,CACpG,CACX,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
1
+ {"version":3,"file":"WizardBody.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardBody.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,uDAAuD,CAAC;AAC3E,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAkB/C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EACzB,QAAQ,EACR,gBAAgB,GAAG,KAAK,EACxB,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,SAAS,EAAE,gBAAgB,GAAG,KAAK,EACnB,EAAE,EAAE,CAAC,CACrB,oBAAC,gBAAgB,kBAAa,SAAS,qBAAmB,cAAc,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;IACzG,6BAAK,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,gBAAgB,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAG,QAAQ,CAAO,CAC3F,CACpB,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
@@ -1,10 +1,13 @@
1
1
  import React from 'react';
2
- import { DefaultWizardFooterProps, WizardControlStep } from './types';
2
+ import { WizardControlStep, WizardFooterType } from './types';
3
+ import { WizardFooterProps } from './WizardFooter';
3
4
  export interface WizardContextProps {
4
5
  /** List of steps */
5
6
  steps: WizardControlStep[];
6
- /** Active step */
7
- activeStep: WizardControlStep;
7
+ /** Current step */
8
+ currentStep: WizardControlStep;
9
+ /** Current step index */
10
+ currentStepIndex: number;
8
11
  /** Footer element */
9
12
  footer: React.ReactElement;
10
13
  /** Navigate to the next step */
@@ -20,30 +23,28 @@ export interface WizardContextProps {
20
23
  /** Navigate to step by index */
21
24
  goToStepByIndex: (index: number) => void;
22
25
  /** Update the footer with any react element */
23
- setFooter: (footer: DefaultWizardFooterProps | React.ReactElement) => void;
26
+ setFooter: (footer: React.ReactElement | Partial<WizardFooterProps>) => void;
27
+ /** Get step by ID */
28
+ getStep: (stepId: number | string) => WizardControlStep;
29
+ /** Set step by ID */
30
+ setStep: (step: Pick<WizardControlStep, 'id'> & Partial<WizardControlStep>) => void;
31
+ /** Toggle step visibility by ID */
32
+ toggleStep: (stepId: number | string, isHidden: boolean) => void;
24
33
  }
25
34
  export declare const WizardContext: React.Context<WizardContextProps>;
26
- interface WizardContextRenderProps {
27
- steps: WizardControlStep[];
28
- activeStep: WizardControlStep;
29
- footer: React.ReactElement;
30
- onNext(): void;
31
- onBack(): void;
32
- onClose(): void;
33
- }
34
35
  export interface WizardContextProviderProps {
35
36
  steps: WizardControlStep[];
36
37
  currentStepIndex: number;
37
- footer: DefaultWizardFooterProps | React.ReactElement;
38
- children: React.ReactElement | ((props: WizardContextRenderProps) => React.ReactElement);
39
- onNext(): void;
40
- onBack(): void;
38
+ footer: WizardFooterType;
39
+ isStepVisitRequired: boolean;
40
+ children: React.ReactElement;
41
+ onNext(steps: WizardControlStep[]): void;
42
+ onBack(steps: WizardControlStep[]): void;
41
43
  onClose(): void;
42
- goToStepById(id: number | string): void;
43
- goToStepByName(name: string): void;
44
- goToStepByIndex(index: number): void;
44
+ goToStepById(steps: WizardControlStep[], id: number | string): void;
45
+ goToStepByName(steps: WizardControlStep[], name: string): void;
46
+ goToStepByIndex(steps: WizardControlStep[], index: number): void;
45
47
  }
46
48
  export declare const WizardContextProvider: React.FunctionComponent<WizardContextProviderProps>;
47
49
  export declare const useWizardContext: () => WizardContextProps;
48
- export {};
49
50
  //# sourceMappingURL=WizardContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WizardContext.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,wBAAwB,EAAwB,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAI5F,MAAM,WAAW,kBAAkB;IACjC,oBAAoB;IACpB,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,kBAAkB;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,qBAAqB;IACrB,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC;IAC3B,gCAAgC;IAChC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,oCAAoC;IACpC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,uBAAuB;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,6BAA6B;IAC7B,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC5C,+BAA+B;IAC/B,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,gCAAgC;IAChC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,+CAA+C;IAC/C,SAAS,EAAE,CAAC,MAAM,EAAE,wBAAwB,GAAG,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;CAC5E;AAED,eAAO,MAAM,aAAa,mCAAgD,CAAC;AAE3E,UAAU,wBAAwB;IAChC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC;IAC3B,MAAM,IAAI,IAAI,CAAC;IACf,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,wBAAwB,GAAG,KAAK,CAAC,YAAY,CAAC;IACtD,QAAQ,EAAE,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,EAAE,wBAAwB,KAAK,KAAK,CAAC,YAAY,CAAC,CAAC;IACzF,MAAM,IAAI,IAAI,CAAC;IACf,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;IAChB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACxC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAGD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,iBAAiB,CAAC,0BAA0B,CAoErF,CAAC;AAEF,eAAO,MAAM,gBAAgB,0BAAwC,CAAC"}
1
+ {"version":3,"file":"WizardContext.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAA4C,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAExG,OAAO,EAAgB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEjE,MAAM,WAAW,kBAAkB;IACjC,oBAAoB;IACpB,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,mBAAmB;IACnB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,yBAAyB;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB;IACrB,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC;IAC3B,gCAAgC;IAChC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,oCAAoC;IACpC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,uBAAuB;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,6BAA6B;IAC7B,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC5C,+BAA+B;IAC/B,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,gCAAgC;IAChC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,+CAA+C;IAC/C,SAAS,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC7E,qBAAqB;IACrB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,KAAK,iBAAiB,CAAC;IACxD,qBAAqB;IACrB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACpF,mCAAmC;IACnC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CAClE;AAED,eAAO,MAAM,aAAa,mCAAgD,CAAC;AAE3E,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,gBAAgB,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;IAC7B,MAAM,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;IACzC,MAAM,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC;IACzC,OAAO,IAAI,IAAI,CAAC;IAChB,YAAY,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpE,cAAc,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/D,eAAe,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAClE;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,iBAAiB,CAAC,0BAA0B,CA0HrF,CAAC;AAIF,eAAO,MAAM,gBAAgB,0BAAwC,CAAC"}