@patternfly/react-core 4.234.3 → 4.235.1
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.
- package/CHANGELOG.md +27 -0
- package/dist/esm/next/components/Wizard/Wizard.d.ts +40 -0
- package/dist/esm/next/components/Wizard/Wizard.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/Wizard.js +86 -0
- package/dist/esm/next/components/Wizard/Wizard.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardBody.d.ts +20 -0
- package/dist/esm/next/components/Wizard/WizardBody.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardBody.js +7 -0
- package/dist/esm/next/components/Wizard/WizardBody.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardContext.d.ts +49 -0
- package/dist/esm/next/components/Wizard/WizardContext.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardContext.js +34 -0
- package/dist/esm/next/components/Wizard/WizardContext.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardFooter.d.ts +28 -0
- package/dist/esm/next/components/Wizard/WizardFooter.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardFooter.js +11 -0
- package/dist/esm/next/components/Wizard/WizardFooter.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardHeader.d.ts +21 -0
- package/dist/esm/next/components/Wizard/WizardHeader.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardHeader.js +13 -0
- package/dist/esm/next/components/Wizard/WizardHeader.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardNav.d.ts +15 -0
- package/dist/esm/next/components/Wizard/WizardNav.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardNav.js +13 -0
- package/dist/esm/next/components/Wizard/WizardNav.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardNavItem.d.ts +25 -0
- package/dist/esm/next/components/Wizard/WizardNavItem.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardNavItem.js +33 -0
- package/dist/esm/next/components/Wizard/WizardNavItem.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardStep.d.ts +20 -0
- package/dist/esm/next/components/Wizard/WizardStep.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardStep.js +5 -0
- package/dist/esm/next/components/Wizard/WizardStep.js.map +1 -0
- package/dist/esm/next/components/Wizard/WizardToggle.d.ts +26 -0
- package/dist/esm/next/components/Wizard/WizardToggle.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/WizardToggle.js +81 -0
- package/dist/esm/next/components/Wizard/WizardToggle.js.map +1 -0
- package/dist/esm/next/components/Wizard/hooks/index.d.ts +2 -0
- package/dist/esm/next/components/Wizard/hooks/index.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/hooks/index.js +2 -0
- package/dist/esm/next/components/Wizard/hooks/index.js.map +1 -0
- package/dist/esm/next/components/Wizard/hooks/useWizardFooter.d.ts +8 -0
- package/dist/esm/next/components/Wizard/hooks/useWizardFooter.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/hooks/useWizardFooter.js +20 -0
- package/dist/esm/next/components/Wizard/hooks/useWizardFooter.js.map +1 -0
- package/dist/esm/next/components/Wizard/index.d.ts +12 -0
- package/dist/esm/next/components/Wizard/index.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/index.js +12 -0
- package/dist/esm/next/components/Wizard/index.js.map +1 -0
- package/dist/esm/next/components/Wizard/types.d.ts +69 -0
- package/dist/esm/next/components/Wizard/types.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/types.js +20 -0
- package/dist/esm/next/components/Wizard/types.js.map +1 -0
- package/dist/esm/next/components/Wizard/utils.d.ts +15 -0
- package/dist/esm/next/components/Wizard/utils.d.ts.map +1 -0
- package/dist/esm/next/components/Wizard/utils.js +35 -0
- package/dist/esm/next/components/Wizard/utils.js.map +1 -0
- package/dist/esm/next/components/index.d.ts +1 -1
- package/dist/esm/next/components/index.d.ts.map +1 -1
- package/dist/esm/next/components/index.js +1 -1
- package/dist/esm/next/components/index.js.map +1 -1
- package/dist/js/next/components/Wizard/Wizard.d.ts +40 -0
- package/dist/js/next/components/Wizard/Wizard.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/Wizard.js +90 -0
- package/dist/js/next/components/Wizard/Wizard.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardBody.d.ts +20 -0
- package/dist/js/next/components/Wizard/WizardBody.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardBody.js +12 -0
- package/dist/js/next/components/Wizard/WizardBody.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardContext.d.ts +49 -0
- package/dist/js/next/components/Wizard/WizardContext.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardContext.js +40 -0
- package/dist/js/next/components/Wizard/WizardContext.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardFooter.d.ts +28 -0
- package/dist/js/next/components/Wizard/WizardFooter.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardFooter.js +16 -0
- package/dist/js/next/components/Wizard/WizardFooter.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardHeader.d.ts +21 -0
- package/dist/js/next/components/Wizard/WizardHeader.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardHeader.js +18 -0
- package/dist/js/next/components/Wizard/WizardHeader.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardNav.d.ts +15 -0
- package/dist/js/next/components/Wizard/WizardNav.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardNav.js +18 -0
- package/dist/js/next/components/Wizard/WizardNav.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardNavItem.d.ts +25 -0
- package/dist/js/next/components/Wizard/WizardNavItem.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardNavItem.js +37 -0
- package/dist/js/next/components/Wizard/WizardNavItem.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardStep.d.ts +20 -0
- package/dist/js/next/components/Wizard/WizardStep.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardStep.js +10 -0
- package/dist/js/next/components/Wizard/WizardStep.js.map +1 -0
- package/dist/js/next/components/Wizard/WizardToggle.d.ts +26 -0
- package/dist/js/next/components/Wizard/WizardToggle.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/WizardToggle.js +86 -0
- package/dist/js/next/components/Wizard/WizardToggle.js.map +1 -0
- package/dist/js/next/components/Wizard/hooks/index.d.ts +2 -0
- package/dist/js/next/components/Wizard/hooks/index.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/hooks/index.js +6 -0
- package/dist/js/next/components/Wizard/hooks/index.js.map +1 -0
- package/dist/js/next/components/Wizard/hooks/useWizardFooter.d.ts +8 -0
- package/dist/js/next/components/Wizard/hooks/useWizardFooter.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/hooks/useWizardFooter.js +25 -0
- package/dist/js/next/components/Wizard/hooks/useWizardFooter.js.map +1 -0
- package/dist/js/next/components/Wizard/index.d.ts +12 -0
- package/dist/js/next/components/Wizard/index.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/index.js +17 -0
- package/dist/js/next/components/Wizard/index.js.map +1 -0
- package/dist/js/next/components/Wizard/types.d.ts +69 -0
- package/dist/js/next/components/Wizard/types.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/types.js +29 -0
- package/dist/js/next/components/Wizard/types.js.map +1 -0
- package/dist/js/next/components/Wizard/utils.d.ts +15 -0
- package/dist/js/next/components/Wizard/utils.d.ts.map +1 -0
- package/dist/js/next/components/Wizard/utils.js +41 -0
- package/dist/js/next/components/Wizard/utils.js.map +1 -0
- package/dist/js/next/components/index.d.ts +1 -1
- package/dist/js/next/components/index.d.ts.map +1 -1
- package/dist/js/next/components/index.js +1 -1
- package/dist/js/next/components/index.js.map +1 -1
- package/dist/umd/react-core.css +230 -230
- package/dist/umd/react-core.min.css +734 -734
- package/package.json +5 -5
- package/src/components/Card/examples/Card.md +67 -38
- package/src/components/Wizard/examples/Wizard.md +21 -4
- package/src/demos/CardDemos.md +4 -0
- package/src/next/components/Wizard/Wizard.tsx +184 -0
- package/src/next/components/Wizard/WizardBody.tsx +34 -0
- package/src/next/components/Wizard/WizardContext.tsx +104 -0
- package/src/next/components/Wizard/WizardFooter.tsx +63 -0
- package/src/next/components/Wizard/WizardHeader.tsx +53 -0
- package/src/next/components/Wizard/WizardNav.tsx +41 -0
- package/src/next/components/Wizard/WizardNavItem.tsx +103 -0
- package/src/next/components/Wizard/WizardStep.tsx +23 -0
- package/src/next/components/Wizard/WizardToggle.tsx +209 -0
- package/src/next/components/Wizard/__tests__/Wizard.test.tsx +298 -0
- package/src/next/components/Wizard/examples/Wizard.md +125 -0
- package/src/next/components/Wizard/examples/WizardBasic.tsx +22 -0
- package/src/next/components/Wizard/examples/WizardCustomNav.tsx +46 -0
- package/src/next/components/Wizard/examples/WizardKitchenSink.tsx +170 -0
- package/src/next/components/Wizard/hooks/index.ts +1 -0
- package/src/next/components/Wizard/hooks/useWizardFooter.tsx +22 -0
- package/src/next/components/Wizard/index.ts +11 -0
- package/src/next/components/Wizard/types.tsx +101 -0
- package/src/next/components/Wizard/utils.ts +47 -0
- package/src/next/components/index.ts +1 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { css } from '@patternfly/react-styles';
|
|
3
|
+
import styles from '@patternfly/react-styles/css/components/Wizard/wizard';
|
|
4
|
+
import AngleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-right-icon';
|
|
5
|
+
import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
|
|
6
|
+
import { KeyTypes } from '../../../helpers/constants';
|
|
7
|
+
import { WizardNav, WizardNavItem } from '../Wizard';
|
|
8
|
+
import { isWizardBasicStep, isWizardParentStep, isWizardSubStep, isCustomWizardNav } from './types';
|
|
9
|
+
export const WizardToggle = ({ steps, activeStep, footer, nav, goToStepByIndex, unmountInactiveSteps = true, 'aria-label': ariaLabel = 'Wizard toggle' }) => {
|
|
10
|
+
const [isNavOpen, setIsNavOpen] = React.useState(false);
|
|
11
|
+
const isActiveSubStep = isWizardSubStep(activeStep);
|
|
12
|
+
const handleKeyClicks = React.useCallback((event) => {
|
|
13
|
+
if (isNavOpen && event.key === KeyTypes.Escape) {
|
|
14
|
+
setIsNavOpen(!isNavOpen);
|
|
15
|
+
}
|
|
16
|
+
}, [isNavOpen]);
|
|
17
|
+
// Open/close collapsable nav on keydown event
|
|
18
|
+
React.useEffect(() => {
|
|
19
|
+
const target = typeof document !== 'undefined' ? document.body : null;
|
|
20
|
+
target === null || target === void 0 ? void 0 : target.addEventListener('keydown', handleKeyClicks, false);
|
|
21
|
+
return () => {
|
|
22
|
+
target === null || target === void 0 ? void 0 : target.removeEventListener('keydown', handleKeyClicks, false);
|
|
23
|
+
};
|
|
24
|
+
}, [handleKeyClicks]);
|
|
25
|
+
// Only render the active step when unmountInactiveSteps is true
|
|
26
|
+
const bodyContent = unmountInactiveSteps
|
|
27
|
+
? activeStep === null || activeStep === void 0 ? void 0 : activeStep.component
|
|
28
|
+
: steps.map(step => {
|
|
29
|
+
if ((activeStep === null || activeStep === void 0 ? void 0 : activeStep.name) === step.name) {
|
|
30
|
+
return step.component;
|
|
31
|
+
}
|
|
32
|
+
return (React.createElement("div", { key: step.id, style: { display: 'none' } }, step.component));
|
|
33
|
+
});
|
|
34
|
+
const wizardNav = isCustomWizardNav(nav)
|
|
35
|
+
? nav(isNavOpen, steps, activeStep, goToStepByIndex)
|
|
36
|
+
: React.useMemo(() => {
|
|
37
|
+
const props = Object.assign({ isOpen: isNavOpen, 'aria-label': (nav === null || nav === void 0 ? void 0 : nav.ariaLabel) || 'Wizard nav' }, ((nav === null || nav === void 0 ? void 0 : nav.ariaLabelledBy) && { 'aria-labelledby': nav === null || nav === void 0 ? void 0 : nav.ariaLabelledBy }));
|
|
38
|
+
return (React.createElement(WizardNav, Object.assign({}, props), steps.map((step, index) => {
|
|
39
|
+
var _a;
|
|
40
|
+
const stepIndex = index + 1;
|
|
41
|
+
const stepNavItem = step.navItem && React.createElement(React.Fragment, { key: step.id }, step.navItem);
|
|
42
|
+
if (isWizardParentStep(step)) {
|
|
43
|
+
let firstSubStepIndex;
|
|
44
|
+
let hasActiveChild = false;
|
|
45
|
+
const subNavItems = (_a = step.subStepIds) === null || _a === void 0 ? void 0 : _a.map((subStepId, index) => {
|
|
46
|
+
const subStep = steps.find(step => step.id === subStepId);
|
|
47
|
+
const subStepIndex = steps.indexOf(subStep) + 1;
|
|
48
|
+
if (index === 0) {
|
|
49
|
+
firstSubStepIndex = subStepIndex;
|
|
50
|
+
}
|
|
51
|
+
if ((activeStep === null || activeStep === void 0 ? void 0 : activeStep.id) === subStep.id) {
|
|
52
|
+
hasActiveChild = true;
|
|
53
|
+
}
|
|
54
|
+
return subStep.navItem ? (React.createElement(React.Fragment, { key: subStep.id }, subStep.navItem)) : (React.createElement(WizardNavItem, { key: subStep.id, id: subStep.id, content: subStep.name, isCurrent: (activeStep === null || activeStep === void 0 ? void 0 : activeStep.id) === subStep.id, isDisabled: subStep.isDisabled || ((nav === null || nav === void 0 ? void 0 : nav.forceStepVisit) && !subStep.visited), step: subStepIndex, onNavItemClick: goToStepByIndex }));
|
|
55
|
+
});
|
|
56
|
+
const hasEnabledChildren = React.Children.toArray(subNavItems).some(child => React.isValidElement(child) && !child.props.isDisabled);
|
|
57
|
+
return (stepNavItem || (React.createElement(WizardNavItem, { key: step.id, id: step.id, content: step.name, isExpandable: nav === null || nav === void 0 ? void 0 : nav.isExpandable, isCurrent: hasActiveChild, isDisabled: !hasEnabledChildren, step: firstSubStepIndex, onNavItemClick: goToStepByIndex },
|
|
58
|
+
React.createElement(WizardNav, Object.assign({}, props, { returnList: true }), subNavItems))));
|
|
59
|
+
}
|
|
60
|
+
if (isWizardBasicStep(step)) {
|
|
61
|
+
return (stepNavItem || (React.createElement(WizardNavItem, { key: step.id, id: step.id, content: step.name, isCurrent: (activeStep === null || activeStep === void 0 ? void 0 : activeStep.id) === step.id, isDisabled: step.isDisabled || ((nav === null || nav === void 0 ? void 0 : nav.forceStepVisit) && !step.visited), step: stepIndex, onNavItemClick: goToStepByIndex })));
|
|
62
|
+
}
|
|
63
|
+
})));
|
|
64
|
+
}, [activeStep === null || activeStep === void 0 ? void 0 : activeStep.id, goToStepByIndex, isNavOpen, nav, steps]);
|
|
65
|
+
return (React.createElement(React.Fragment, null,
|
|
66
|
+
React.createElement("button", { onClick: () => setIsNavOpen(prevIsOpen => !prevIsOpen), className: css(styles.wizardToggle, isNavOpen && 'pf-m-expanded'), "aria-label": ariaLabel, "aria-expanded": isNavOpen },
|
|
67
|
+
React.createElement("span", { className: css(styles.wizardToggleList) },
|
|
68
|
+
React.createElement("span", { className: css(styles.wizardToggleListItem) }, activeStep === null || activeStep === void 0 ? void 0 :
|
|
69
|
+
activeStep.name,
|
|
70
|
+
isActiveSubStep && React.createElement(AngleRightIcon, { className: css(styles.wizardToggleSeparator), "aria-hidden": "true" })),
|
|
71
|
+
isActiveSubStep && React.createElement("span", { className: css(styles.wizardToggleListItem) }, activeStep === null || activeStep === void 0 ? void 0 : activeStep.name)),
|
|
72
|
+
React.createElement("span", { className: css(styles.wizardToggleIcon) },
|
|
73
|
+
React.createElement(CaretDownIcon, { "aria-hidden": "true" }))),
|
|
74
|
+
React.createElement("div", { className: css(styles.wizardOuterWrap) },
|
|
75
|
+
React.createElement("div", { className: css(styles.wizardInnerWrap) },
|
|
76
|
+
wizardNav,
|
|
77
|
+
bodyContent),
|
|
78
|
+
footer)));
|
|
79
|
+
};
|
|
80
|
+
WizardToggle.displayName = 'WizardToggle';
|
|
81
|
+
//# sourceMappingURL=WizardToggle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WizardToggle.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardToggle.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/next/components/Wizard/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/next/components/Wizard/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Set a unique footer for the wizard. stepId is only required if inactive steps are hidden instead of unmounted.
|
|
4
|
+
* @param footer
|
|
5
|
+
* @param stepId
|
|
6
|
+
*/
|
|
7
|
+
export declare const useWizardFooter: (footer: React.ReactElement, stepId?: string | number) => void;
|
|
8
|
+
//# sourceMappingURL=useWizardFooter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useWizardFooter.d.ts","sourceRoot":"","sources":["../../../../../../src/next/components/Wizard/hooks/useWizardFooter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;GAIG;AACH,eAAO,MAAM,eAAe,WAAY,MAAM,YAAY,WAAW,MAAM,GAAG,MAAM,SAanF,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useWizardContext } from '../WizardContext';
|
|
3
|
+
/**
|
|
4
|
+
* Set a unique footer for the wizard. stepId is only required if inactive steps are hidden instead of unmounted.
|
|
5
|
+
* @param footer
|
|
6
|
+
* @param stepId
|
|
7
|
+
*/
|
|
8
|
+
export const useWizardFooter = (footer, stepId) => {
|
|
9
|
+
const { activeStep, setFooter } = useWizardContext();
|
|
10
|
+
React.useEffect(() => {
|
|
11
|
+
if (!stepId || activeStep.id === stepId) {
|
|
12
|
+
setFooter(footer);
|
|
13
|
+
// Reset the footer on unmount.
|
|
14
|
+
return () => {
|
|
15
|
+
setFooter(null);
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
}, [activeStep, footer, setFooter, stepId]);
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=useWizardFooter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useWizardFooter.js","sourceRoot":"","sources":["../../../../../../src/next/components/Wizard/hooks/useWizardFooter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAA0B,EAAE,MAAwB,EAAE,EAAE;IACtF,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAErD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE;YACvC,SAAS,CAAC,MAAM,CAAC,CAAC;YAElB,+BAA+B;YAC/B,OAAO,GAAG,EAAE;gBACV,SAAS,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC,CAAC;SACH;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from './Wizard';
|
|
2
|
+
export * from './WizardBody';
|
|
3
|
+
export * from './WizardFooter';
|
|
4
|
+
export * from './WizardToggle';
|
|
5
|
+
export * from './WizardStep';
|
|
6
|
+
export * from './WizardNav';
|
|
7
|
+
export * from './WizardNavItem';
|
|
8
|
+
export * from './WizardHeader';
|
|
9
|
+
export * from './hooks';
|
|
10
|
+
export * from './types';
|
|
11
|
+
export { useWizardContext } from './WizardContext';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from './Wizard';
|
|
2
|
+
export * from './WizardBody';
|
|
3
|
+
export * from './WizardFooter';
|
|
4
|
+
export * from './WizardToggle';
|
|
5
|
+
export * from './WizardStep';
|
|
6
|
+
export * from './WizardNav';
|
|
7
|
+
export * from './WizardNavItem';
|
|
8
|
+
export * from './WizardHeader';
|
|
9
|
+
export * from './hooks';
|
|
10
|
+
export * from './types';
|
|
11
|
+
export { useWizardContext } from './WizardContext';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { WizardNavProps, WizardNavItemProps } from '../Wizard';
|
|
3
|
+
/** Type used to define 'basic' steps, or in other words, steps that are neither parents or children of parents. */
|
|
4
|
+
export interface WizardBasicStep {
|
|
5
|
+
/** Name of the step's nav item */
|
|
6
|
+
name: React.ReactNode;
|
|
7
|
+
/** Unique identifier */
|
|
8
|
+
id: string | number;
|
|
9
|
+
/** Flag to disable the step's nav item */
|
|
10
|
+
isDisabled?: boolean;
|
|
11
|
+
/** Flag to represent whether the step has been visited (navigated to) */
|
|
12
|
+
visited?: boolean;
|
|
13
|
+
/** Content shown when the step's nav item is selected. When treated as a parent step, only sub-step content will be shown. */
|
|
14
|
+
component?: React.ReactElement;
|
|
15
|
+
/** (Unused if nav is controlled) Custom WizardNavItem */
|
|
16
|
+
navItem?: React.ReactElement<WizardNavItemProps>;
|
|
17
|
+
/** (Unused if footer is controlled) Can change the Next button text. If nextButtonText is also set for the Wizard, this step specific one overrides it. */
|
|
18
|
+
nextButtonText?: React.ReactNode;
|
|
19
|
+
/** (Unused if footer is controlled) The condition needed to disable the Next button */
|
|
20
|
+
disableNext?: boolean;
|
|
21
|
+
/** (Unused if footer is controlled) True to hide the Cancel button */
|
|
22
|
+
hideCancelButton?: boolean;
|
|
23
|
+
/** (Unused if footer is controlled) True to hide the Back button */
|
|
24
|
+
hideBackButton?: boolean;
|
|
25
|
+
}
|
|
26
|
+
/** Type used to define parent steps. */
|
|
27
|
+
export interface WizardParentStep extends WizardBasicStep {
|
|
28
|
+
/** Nested step IDs */
|
|
29
|
+
subStepIds: string[];
|
|
30
|
+
}
|
|
31
|
+
/** Type used to define sub-steps. */
|
|
32
|
+
export interface WizardSubStep extends WizardBasicStep {
|
|
33
|
+
/** Unique identifier of the parent step */
|
|
34
|
+
parentId: string | number;
|
|
35
|
+
}
|
|
36
|
+
/** Used to customize aspects of the Wizard's default navigation. */
|
|
37
|
+
export interface DefaultWizardNavProps {
|
|
38
|
+
/** Flag indicating nav items with sub steps are expandable */
|
|
39
|
+
isExpandable?: boolean;
|
|
40
|
+
/** Aria-label for the Nav */
|
|
41
|
+
ariaLabel?: string;
|
|
42
|
+
/** Sets aria-labelledby on nav element */
|
|
43
|
+
ariaLabelledBy?: string;
|
|
44
|
+
/** Disable step nav items until they are visited */
|
|
45
|
+
forceStepVisit?: boolean;
|
|
46
|
+
}
|
|
47
|
+
/** Used to customize aspects of the Wizard's default footer. */
|
|
48
|
+
export interface DefaultWizardFooterProps {
|
|
49
|
+
/** The Next button text */
|
|
50
|
+
nextButtonText?: React.ReactNode;
|
|
51
|
+
/** The Back button text */
|
|
52
|
+
backButtonText?: React.ReactNode;
|
|
53
|
+
/** The Cancel button text */
|
|
54
|
+
cancelButtonText?: React.ReactNode;
|
|
55
|
+
}
|
|
56
|
+
/** Encompasses all step type variants that are internally controlled by the Wizard. */
|
|
57
|
+
export declare type WizardControlStep = WizardBasicStep | WizardParentStep | WizardSubStep;
|
|
58
|
+
/** Callback for the Wizard's 'onNext', 'onBack', and 'onNavByIndex' properties. */
|
|
59
|
+
export declare type WizardNavStepFunction = (currentStep: WizardNavStepData, previousStep: WizardNavStepData) => void;
|
|
60
|
+
/** Data returned for either parameter of WizardNavStepFunction. */
|
|
61
|
+
export declare type WizardNavStepData = Pick<WizardControlStep, 'id' | 'name'>;
|
|
62
|
+
/** Callback for the Wizard's 'nav' property. Returns element which replaces the Wizard's default navigation. */
|
|
63
|
+
export declare type CustomWizardNavFunction = (isOpen: boolean, steps: WizardControlStep[], activeStep: WizardControlStep, goToStepByIndex: (index: number) => void) => React.ReactElement<WizardNavProps>;
|
|
64
|
+
export declare function isCustomWizardNav(nav: DefaultWizardNavProps | CustomWizardNavFunction): nav is CustomWizardNavFunction;
|
|
65
|
+
export declare function isCustomWizardFooter(footer: DefaultWizardFooterProps | React.ReactElement): footer is React.ReactElement;
|
|
66
|
+
export declare function isWizardBasicStep(step: WizardControlStep): step is WizardBasicStep;
|
|
67
|
+
export declare function isWizardSubStep(step: WizardControlStep): step is WizardSubStep;
|
|
68
|
+
export declare function isWizardParentStep(step: WizardControlStep): step is WizardParentStep;
|
|
69
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/types.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export function isCustomWizardNav(nav) {
|
|
3
|
+
return typeof nav === 'function';
|
|
4
|
+
}
|
|
5
|
+
export function isCustomWizardFooter(footer) {
|
|
6
|
+
return React.isValidElement(footer);
|
|
7
|
+
}
|
|
8
|
+
export function isWizardBasicStep(step) {
|
|
9
|
+
var _a;
|
|
10
|
+
return ((_a = step) === null || _a === void 0 ? void 0 : _a.subStepIds) === undefined && !isWizardSubStep(step);
|
|
11
|
+
}
|
|
12
|
+
export function isWizardSubStep(step) {
|
|
13
|
+
var _a;
|
|
14
|
+
return ((_a = step) === null || _a === void 0 ? void 0 : _a.parentId) !== undefined;
|
|
15
|
+
}
|
|
16
|
+
export function isWizardParentStep(step) {
|
|
17
|
+
var _a;
|
|
18
|
+
return ((_a = step) === null || _a === void 0 ? void 0 : _a.subStepIds) !== undefined;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/types.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AA8E1B,MAAM,UAAU,iBAAiB,CAC/B,GAAoD;IAEpD,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAAqD;IAErD,OAAO,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAuB;;IACvD,OAAO,CAAA,MAAC,IAAyB,0CAAE,UAAU,MAAK,SAAS,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AACxF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAuB;;IACrD,OAAO,CAAA,MAAC,IAAsB,0CAAE,QAAQ,MAAK,SAAS,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAuB;;IACxD,OAAO,CAAA,MAAC,IAAyB,0CAAE,UAAU,MAAK,SAAS,CAAC;AAC9D,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { WizardControlStep, WizardNavStepData } from './types';
|
|
3
|
+
import { WizardStepProps } from './WizardStep';
|
|
4
|
+
/**
|
|
5
|
+
* Accumulate list of step & sub-step props pulled from child components
|
|
6
|
+
* @param children
|
|
7
|
+
* @returns WizardControlStep[]
|
|
8
|
+
*/
|
|
9
|
+
export declare const buildSteps: (children: React.ReactElement<WizardStepProps> | React.ReactElement<WizardStepProps>[]) => WizardControlStep[];
|
|
10
|
+
export declare const normalizeNavStep: ({ id, name }: WizardNavStepData) => {
|
|
11
|
+
id: string | number;
|
|
12
|
+
name: React.ReactNode;
|
|
13
|
+
};
|
|
14
|
+
export declare const getActiveStep: (steps: WizardControlStep[], currentStepIndex: number) => WizardControlStep;
|
|
15
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAc,eAAe,EAAE,MAAM,cAAc,CAAC;AAM3D;;;;GAIG;AACH,eAAO,MAAM,UAAU,aAAc,MAAM,YAAY,CAAC,eAAe,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC,EAAE,wBA4BxG,CAAC;AAET,eAAO,MAAM,gBAAgB,iBAAkB,iBAAiB;;;CAAmB,CAAC;AACpF,eAAO,MAAM,aAAa,UAAW,iBAAiB,EAAE,oBAAoB,MAAM,sBACxB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { __rest } from "tslib";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { WizardStep } from './WizardStep';
|
|
4
|
+
function hasWizardStepProps(props) {
|
|
5
|
+
return props.name !== undefined && props.id !== undefined && props.children !== undefined;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Accumulate list of step & sub-step props pulled from child components
|
|
9
|
+
* @param children
|
|
10
|
+
* @returns WizardControlStep[]
|
|
11
|
+
*/
|
|
12
|
+
export const buildSteps = (children) => React.Children.toArray(children).reduce((acc, child) => {
|
|
13
|
+
if (React.isValidElement(child)) {
|
|
14
|
+
if (child.type === WizardStep || hasWizardStepProps(child.props)) {
|
|
15
|
+
// Omit "children" and use the whole "child" (WizardStep) for the component prop. Sub-steps will do the same.
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
17
|
+
const _a = child.props, { steps: subSteps, id, children } = _a, stepProps = __rest(_a, ["steps", "id", "children"]);
|
|
18
|
+
acc.push(Object.assign(Object.assign({ id, component: child }, stepProps), (subSteps && {
|
|
19
|
+
subStepIds: subSteps === null || subSteps === void 0 ? void 0 : subSteps.map(subStep => {
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
21
|
+
const _a = subStep.props, { children } = _a, subStepProps = __rest(_a, ["children"]);
|
|
22
|
+
acc.push(Object.assign(Object.assign({}, subStepProps), { component: subStep, parentId: id }));
|
|
23
|
+
return subStep.props.id;
|
|
24
|
+
})
|
|
25
|
+
})));
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
throw new Error('Wizard only accepts children of type WizardStep');
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return acc;
|
|
32
|
+
}, []);
|
|
33
|
+
export const normalizeNavStep = ({ id, name }) => ({ id, name });
|
|
34
|
+
export const getActiveStep = (steps, currentStepIndex) => steps.find((_, index) => index + 1 === currentStepIndex);
|
|
35
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/utils.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAE3D,SAAS,kBAAkB,CAAC,KAA4B;IACtD,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC;AAC5F,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAqF,EAAE,EAAE,CAClH,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAwB,EAAE,KAAK,EAAE,EAAE;IAC1E,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;QAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAChE,6GAA6G;YAC7G,6DAA6D;YAC7D,MAAM,KAAkD,KAAK,CAAC,KAAwB,EAAhF,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,OAAiD,EAA5C,SAAS,cAA7C,2BAA+C,CAAiC,CAAC;YAEvF,GAAG,CAAC,IAAI,+BACN,EAAE,EACF,SAAS,EAAE,KAAK,IACb,SAAS,GACT,CAAC,QAAQ,IAAI;gBACd,UAAU,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,OAAO,CAAC,EAAE;oBAClC,6DAA6D;oBAC7D,MAAM,KAAgC,OAAO,CAAC,KAAK,EAA7C,EAAE,QAAQ,OAAmC,EAA9B,YAAY,cAA3B,YAA6B,CAAgB,CAAC;oBACpD,GAAG,CAAC,IAAI,iCAAM,YAAY,KAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAG,CAAC;oBAEhE,OAAO,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,CAAC,CAAC;aACH,CAAC,EACF,CAAC;SACJ;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACpE;KACF;IAED,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,EAAE,CAAC,CAAC;AAET,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAqB,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAA0B,EAAE,gBAAwB,EAAE,EAAE,CACpF,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,KAAK,gBAAgB,CAAC,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './';
|
|
1
|
+
export * from './Wizard';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/next/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/next/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './';
|
|
1
|
+
export * from './Wizard';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/next/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/next/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { DefaultWizardFooterProps, DefaultWizardNavProps, WizardNavStepFunction, CustomWizardNavFunction } from './types';
|
|
3
|
+
import { WizardStepProps } from './WizardStep';
|
|
4
|
+
/**
|
|
5
|
+
* Wrapper for all steps and hosts state, including navigation helpers, within context.
|
|
6
|
+
* The WizardContext provided by default gives any child of wizard access to those resources.
|
|
7
|
+
*/
|
|
8
|
+
export interface WizardProps extends React.HTMLProps<HTMLDivElement> {
|
|
9
|
+
/** Step components */
|
|
10
|
+
children: React.ReactElement<WizardStepProps> | React.ReactElement<WizardStepProps>[];
|
|
11
|
+
/** Wizard header */
|
|
12
|
+
header?: React.ReactNode;
|
|
13
|
+
/** Wizard footer */
|
|
14
|
+
footer?: DefaultWizardFooterProps | React.ReactElement;
|
|
15
|
+
/** Default wizard nav props or a custom WizardNav (with callback) */
|
|
16
|
+
nav?: DefaultWizardNavProps | CustomWizardNavFunction;
|
|
17
|
+
/** The initial index the wizard is to start on (1 or higher). Defaults to 1. */
|
|
18
|
+
startIndex?: number;
|
|
19
|
+
/** Additional classes spread to the wizard */
|
|
20
|
+
className?: string;
|
|
21
|
+
/** Custom width of the wizard */
|
|
22
|
+
width?: number | string;
|
|
23
|
+
/** Custom height of the wizard */
|
|
24
|
+
height?: number | string;
|
|
25
|
+
/** Callback function when a step in the nav is clicked */
|
|
26
|
+
onNavByIndex?: WizardNavStepFunction;
|
|
27
|
+
/** Callback function after next button is clicked */
|
|
28
|
+
onNext?: WizardNavStepFunction;
|
|
29
|
+
/** Callback function after back button is clicked */
|
|
30
|
+
onBack?: WizardNavStepFunction;
|
|
31
|
+
/** Callback function to save at the end of the wizard, if not specified uses onClose */
|
|
32
|
+
onSave?: () => void;
|
|
33
|
+
/** Callback function to close the wizard */
|
|
34
|
+
onClose?: () => void;
|
|
35
|
+
}
|
|
36
|
+
export declare const Wizard: {
|
|
37
|
+
(props: WizardProps): JSX.Element;
|
|
38
|
+
displayName: string;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=Wizard.d.ts.map
|
|
@@ -0,0 +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,EAGrB,qBAAqB,EACrB,uBAAuB,EACxB,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,wBAAwB,GAAG,KAAK,CAAC,YAAY,CAAC;IACvD,qEAAqE;IACrE,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,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;YAAW,WAAW;;CA4FxC,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Wizard = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const react_styles_1 = require("@patternfly/react-styles");
|
|
7
|
+
const wizard_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/Wizard/wizard"));
|
|
8
|
+
const types_1 = require("./types");
|
|
9
|
+
const utils_1 = require("./utils");
|
|
10
|
+
const WizardContext_1 = require("./WizardContext");
|
|
11
|
+
const WizardFooter_1 = require("./WizardFooter");
|
|
12
|
+
const WizardToggle_1 = require("./WizardToggle");
|
|
13
|
+
const Wizard = (props) => {
|
|
14
|
+
const { startIndex = 1, children, footer, onNavByIndex, onNext, onBack, onSave, onClose } = props, internalProps = tslib_1.__rest(props, ["startIndex", "children", "footer", "onNavByIndex", "onNext", "onBack", "onSave", "onClose"]);
|
|
15
|
+
const [currentStepIndex, setCurrentStepIndex] = react_1.default.useState(startIndex);
|
|
16
|
+
const steps = utils_1.buildSteps(children);
|
|
17
|
+
const goToStepByIndex = (index) => {
|
|
18
|
+
const lastStepIndex = steps.length;
|
|
19
|
+
if (index < 1) {
|
|
20
|
+
index = 1;
|
|
21
|
+
}
|
|
22
|
+
else if (index > lastStepIndex) {
|
|
23
|
+
index = lastStepIndex;
|
|
24
|
+
}
|
|
25
|
+
const currStep = steps[index - 1];
|
|
26
|
+
const prevStep = steps[currentStepIndex - 1];
|
|
27
|
+
setCurrentStepIndex(index);
|
|
28
|
+
return onNavByIndex === null || onNavByIndex === void 0 ? void 0 : onNavByIndex(utils_1.normalizeNavStep(currStep), utils_1.normalizeNavStep(prevStep));
|
|
29
|
+
};
|
|
30
|
+
const goToNextStep = () => {
|
|
31
|
+
// Save when on the last step, otherwise close
|
|
32
|
+
if (currentStepIndex >= steps.length) {
|
|
33
|
+
if (onSave) {
|
|
34
|
+
return onSave();
|
|
35
|
+
}
|
|
36
|
+
return onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
37
|
+
}
|
|
38
|
+
let currStep = steps[currentStepIndex];
|
|
39
|
+
let newStepIndex = currentStepIndex + 1;
|
|
40
|
+
const prevStep = steps[currentStepIndex - 1];
|
|
41
|
+
// Skip parent step and focus on the first sub-step if they exist
|
|
42
|
+
if (types_1.isWizardParentStep(currStep)) {
|
|
43
|
+
newStepIndex += 1;
|
|
44
|
+
currStep = steps[currentStepIndex + 1];
|
|
45
|
+
}
|
|
46
|
+
setCurrentStepIndex(newStepIndex);
|
|
47
|
+
return onNext === null || onNext === void 0 ? void 0 : onNext(utils_1.normalizeNavStep(currStep), utils_1.normalizeNavStep(prevStep));
|
|
48
|
+
};
|
|
49
|
+
const goToPrevStep = () => {
|
|
50
|
+
if (steps.length < currentStepIndex) {
|
|
51
|
+
// Previous step was removed, just update the currentStep state
|
|
52
|
+
setCurrentStepIndex(steps.length);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
let currStep = steps[currentStepIndex - 2];
|
|
56
|
+
let newStepIndex = currentStepIndex - 1;
|
|
57
|
+
const prevStep = steps[currentStepIndex - 1];
|
|
58
|
+
// // Skip parent step and focus on the step prior
|
|
59
|
+
if (types_1.isWizardParentStep(currStep)) {
|
|
60
|
+
newStepIndex -= 1;
|
|
61
|
+
currStep = steps[currentStepIndex - 3];
|
|
62
|
+
}
|
|
63
|
+
setCurrentStepIndex(newStepIndex);
|
|
64
|
+
return onBack === null || onBack === void 0 ? void 0 : onBack(utils_1.normalizeNavStep(currStep), utils_1.normalizeNavStep(prevStep));
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
const goToStepById = (id) => {
|
|
68
|
+
const stepIndex = steps.findIndex(step => step.id === id) + 1;
|
|
69
|
+
stepIndex > 0 && setCurrentStepIndex(stepIndex);
|
|
70
|
+
};
|
|
71
|
+
const goToStepByName = (name) => {
|
|
72
|
+
const stepIndex = steps.findIndex(step => step.name === name) + 1;
|
|
73
|
+
stepIndex > 0 && setCurrentStepIndex(stepIndex);
|
|
74
|
+
};
|
|
75
|
+
return (react_1.default.createElement(WizardContext_1.WizardContextProvider, { steps: steps, currentStepIndex: currentStepIndex, footer: types_1.isCustomWizardFooter(footer) && footer, onNext: goToNextStep, onBack: goToPrevStep, onClose: onClose, goToStepById: goToStepById, goToStepByName: goToStepByName, goToStepByIndex: goToStepByIndex },
|
|
76
|
+
react_1.default.createElement(WizardInternal, Object.assign({}, internalProps, { footer: footer }), children)));
|
|
77
|
+
};
|
|
78
|
+
exports.Wizard = Wizard;
|
|
79
|
+
// eslint-disable-next-line patternfly-react/no-anonymous-functions
|
|
80
|
+
const WizardInternal = (_a) => {
|
|
81
|
+
var _b;
|
|
82
|
+
var { height, width, className, header, footer, nav } = _a, divProps = tslib_1.__rest(_a, ["height", "width", "className", "header", "footer", "nav"]);
|
|
83
|
+
const { activeStep, steps, footer: customFooter, onNext, onBack, onClose, goToStepByIndex } = WizardContext_1.useWizardContext();
|
|
84
|
+
const wizardFooter = customFooter || (react_1.default.createElement(WizardFooter_1.WizardFooter, Object.assign({ activeStep: activeStep, onNext: onNext, onBack: onBack, onClose: onClose, disableBackButton: (activeStep === null || activeStep === void 0 ? void 0 : activeStep.id) === ((_b = steps[0]) === null || _b === void 0 ? void 0 : _b.id) }, footer)));
|
|
85
|
+
return (react_1.default.createElement("div", Object.assign({ className: react_styles_1.css(wizard_1.default.wizard, className), style: Object.assign(Object.assign({}, (height ? { height } : {})), (width ? { width } : {})) }, divProps),
|
|
86
|
+
header,
|
|
87
|
+
react_1.default.createElement(WizardToggle_1.WizardToggle, { steps: steps, activeStep: activeStep, footer: wizardFooter, nav: nav, goToStepByIndex: goToStepByIndex })));
|
|
88
|
+
};
|
|
89
|
+
exports.Wizard.displayName = 'Wizard';
|
|
90
|
+
//# sourceMappingURL=Wizard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Wizard.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/Wizard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Used as a wrapper for WizardStep content, where the wrapping element is customizable.
|
|
4
|
+
*/
|
|
5
|
+
export interface WizardBodyProps {
|
|
6
|
+
children?: React.ReactNode | React.ReactNode[];
|
|
7
|
+
/** Set to true to remove the default body padding */
|
|
8
|
+
hasNoBodyPadding?: boolean;
|
|
9
|
+
/** An aria-label to use for the wrapper element */
|
|
10
|
+
'aria-label'?: string;
|
|
11
|
+
/** Sets the aria-labelledby attribute for the wrapper element */
|
|
12
|
+
'aria-labelledby'?: string;
|
|
13
|
+
/** Component used as the wrapping content container */
|
|
14
|
+
wrapperElement?: React.ElementType;
|
|
15
|
+
}
|
|
16
|
+
export declare const WizardBody: {
|
|
17
|
+
({ children, hasNoBodyPadding, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, wrapperElement: Wrapper }: WizardBodyProps): JSX.Element;
|
|
18
|
+
displayName: string;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=WizardBody.d.ts.map
|
|
@@ -0,0 +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,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;IAC/C,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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WizardBody = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const wizard_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/Wizard/wizard"));
|
|
7
|
+
const react_styles_1 = require("@patternfly/react-styles");
|
|
8
|
+
const WizardBody = ({ children, hasNoBodyPadding = false, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, wrapperElement: Wrapper = 'div' }) => (react_1.default.createElement(Wrapper, { "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, className: react_styles_1.css(wizard_1.default.wizardMain) },
|
|
9
|
+
react_1.default.createElement("div", { className: react_styles_1.css(wizard_1.default.wizardMainBody, hasNoBodyPadding && wizard_1.default.modifiers.noPadding) }, children)));
|
|
10
|
+
exports.WizardBody = WizardBody;
|
|
11
|
+
exports.WizardBody.displayName = 'WizardBody';
|
|
12
|
+
//# sourceMappingURL=WizardBody.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WizardBody.js","sourceRoot":"","sources":["../../../../../src/next/components/Wizard/WizardBody.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,2GAA2E;AAC3E,2DAA+C;AAkBxC,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,8BAAC,OAAO,kBAAa,SAAS,qBAAmB,cAAc,EAAE,SAAS,EAAE,kBAAG,CAAC,gBAAM,CAAC,UAAU,CAAC;IAChG,uCAAK,SAAS,EAAE,kBAAG,CAAC,gBAAM,CAAC,cAAc,EAAE,gBAAgB,IAAI,gBAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAG,QAAQ,CAAO,CACpG,CACX,CAAC;AAVW,QAAA,UAAU,cAUrB;AAEF,kBAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { WizardControlStep } from './types';
|
|
3
|
+
export interface WizardContextProps {
|
|
4
|
+
/** List of steps */
|
|
5
|
+
steps: WizardControlStep[];
|
|
6
|
+
/** Active step */
|
|
7
|
+
activeStep: WizardControlStep;
|
|
8
|
+
/** Footer element */
|
|
9
|
+
footer: React.ReactElement;
|
|
10
|
+
/** Navigate to the next step */
|
|
11
|
+
onNext: () => void;
|
|
12
|
+
/** Navigate to the previous step */
|
|
13
|
+
onBack: () => void;
|
|
14
|
+
/** Close the wizard */
|
|
15
|
+
onClose: () => void;
|
|
16
|
+
/** Navigate to step by ID */
|
|
17
|
+
goToStepById: (id: number | string) => void;
|
|
18
|
+
/** Navigate to step by name */
|
|
19
|
+
goToStepByName: (name: string) => void;
|
|
20
|
+
/** Navigate to step by index */
|
|
21
|
+
goToStepByIndex: (index: number) => void;
|
|
22
|
+
/** Update the footer with any react element */
|
|
23
|
+
setFooter: (footer: React.ReactElement) => void;
|
|
24
|
+
}
|
|
25
|
+
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
|
+
export interface WizardContextProviderProps {
|
|
35
|
+
steps: WizardControlStep[];
|
|
36
|
+
currentStepIndex: number;
|
|
37
|
+
footer: React.ReactElement;
|
|
38
|
+
children: React.ReactElement | ((props: WizardContextRenderProps) => React.ReactElement);
|
|
39
|
+
onNext(): void;
|
|
40
|
+
onBack(): void;
|
|
41
|
+
onClose(): void;
|
|
42
|
+
goToStepById(id: number | string): void;
|
|
43
|
+
goToStepByName(name: string): void;
|
|
44
|
+
goToStepByIndex(index: number): void;
|
|
45
|
+
}
|
|
46
|
+
export declare const WizardContextProvider: React.FunctionComponent<WizardContextProviderProps>;
|
|
47
|
+
export declare const useWizardContext: () => WizardContextProps;
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=WizardContext.d.ts.map
|