@dnb/eufemia 10.69.0 → 10.69.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 +24 -0
- package/cjs/components/global-error/GlobalError.d.ts +1 -1
- package/cjs/components/global-error/GlobalError.js +1 -1
- package/cjs/components/global-error/GlobalError.js.map +1 -1
- package/cjs/components/global-error/GlobalErrorDocs.d.ts +2 -0
- package/cjs/components/global-error/GlobalErrorDocs.js +64 -0
- package/cjs/components/global-error/GlobalErrorDocs.js.map +1 -0
- package/cjs/components/info-card/InfoCardDocs.d.ts +3 -0
- package/cjs/components/info-card/InfoCardDocs.js +101 -0
- package/cjs/components/info-card/InfoCardDocs.js.map +1 -0
- package/cjs/components/tabs/Tabs.js +2 -2
- package/cjs/components/tabs/Tabs.js.map +1 -1
- package/cjs/components/upload/UploadFileList.js +2 -3
- package/cjs/components/upload/UploadFileList.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Context.d.ts +2 -2
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +4 -4
- package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +35 -41
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +2 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/Isolation.js +3 -4
- package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +1 -10
- package/cjs/extensions/forms/Form/Visibility/Visibility.js +1 -0
- package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/useVisibility.js +1 -1
- package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
- package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -2
- package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +9 -2
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
- package/cjs/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/DisplaySteps.js +6 -5
- package/cjs/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +4 -3
- package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.js +36 -35
- package/cjs/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +104 -57
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/useCollectStepsData.d.ts +10 -0
- package/cjs/extensions/forms/Wizard/Container/useCollectStepsData.js +66 -0
- package/cjs/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -0
- package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -4
- package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Context/types.d.ts +9 -6
- package/cjs/extensions/forms/Wizard/Context/types.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Step/Step.d.ts +1 -1
- package/cjs/extensions/forms/Wizard/Step/Step.js +65 -22
- package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Step/StepDocs.js +2 -2
- package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
- package/cjs/extensions/forms/Wizard/hooks/useStep.js +10 -18
- package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.js +16 -8
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/useValueProps.js +1 -1
- package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/component-helper.js +1 -1
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/components/global-error/GlobalError.d.ts +1 -1
- package/components/global-error/GlobalError.js +1 -1
- package/components/global-error/GlobalError.js.map +1 -1
- package/components/global-error/GlobalErrorDocs.d.ts +2 -0
- package/components/global-error/GlobalErrorDocs.js +58 -0
- package/components/global-error/GlobalErrorDocs.js.map +1 -0
- package/components/info-card/InfoCardDocs.d.ts +3 -0
- package/components/info-card/InfoCardDocs.js +95 -0
- package/components/info-card/InfoCardDocs.js.map +1 -0
- package/components/tabs/Tabs.js +2 -2
- package/components/tabs/Tabs.js.map +1 -1
- package/components/upload/UploadFileList.js +2 -3
- package/components/upload/UploadFileList.js.map +1 -1
- package/es/components/global-error/GlobalError.d.ts +1 -1
- package/es/components/global-error/GlobalError.js +1 -1
- package/es/components/global-error/GlobalError.js.map +1 -1
- package/es/components/global-error/GlobalErrorDocs.d.ts +2 -0
- package/es/components/global-error/GlobalErrorDocs.js +58 -0
- package/es/components/global-error/GlobalErrorDocs.js.map +1 -0
- package/es/components/info-card/InfoCardDocs.d.ts +3 -0
- package/es/components/info-card/InfoCardDocs.js +95 -0
- package/es/components/info-card/InfoCardDocs.js.map +1 -0
- package/es/components/tabs/Tabs.js +2 -2
- package/es/components/tabs/Tabs.js.map +1 -1
- package/es/components/upload/UploadFileList.js +2 -3
- package/es/components/upload/UploadFileList.js.map +1 -1
- package/es/extensions/forms/DataContext/Context.d.ts +2 -2
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +4 -4
- package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +21 -29
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/es/extensions/forms/FieldBlock/FieldBlock.js +2 -2
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/Isolation.js +3 -4
- package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/Visibility.d.ts +1 -10
- package/es/extensions/forms/Form/Visibility/Visibility.js +1 -0
- package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -1
- package/es/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/useVisibility.js +1 -1
- package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
- package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -2
- package/es/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/DoneButton.js +1 -1
- package/es/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/OpenButton.js +1 -1
- package/es/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +9 -2
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/es/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
- package/es/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/DisplaySteps.js +6 -5
- package/es/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +4 -3
- package/es/extensions/forms/Wizard/Container/IterateOverSteps.js +35 -34
- package/es/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainer.js +101 -58
- package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/useCollectStepsData.d.ts +10 -0
- package/es/extensions/forms/Wizard/Container/useCollectStepsData.js +59 -0
- package/es/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -0
- package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -4
- package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/es/extensions/forms/Wizard/Context/types.d.ts +9 -6
- package/es/extensions/forms/Wizard/Context/types.js.map +1 -1
- package/es/extensions/forms/Wizard/Step/Step.d.ts +1 -1
- package/es/extensions/forms/Wizard/Step/Step.js +64 -22
- package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/es/extensions/forms/Wizard/Step/StepDocs.js +2 -2
- package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
- package/es/extensions/forms/Wizard/hooks/useStep.js +10 -18
- package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.js +16 -8
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/useValueProps.js +1 -1
- package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/component-helper.js +1 -1
- package/es/shared/component-helper.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +1 -1
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/Context.d.ts +2 -2
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +4 -4
- package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +35 -41
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/extensions/forms/FieldBlock/FieldBlock.js +2 -2
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -1
- package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/extensions/forms/Form/Isolation/Isolation.js +3 -4
- package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/extensions/forms/Form/Visibility/Visibility.d.ts +1 -10
- package/extensions/forms/Form/Visibility/Visibility.js +1 -0
- package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -1
- package/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
- package/extensions/forms/Form/Visibility/useVisibility.js +1 -1
- package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/extensions/forms/Iterate/Array/ArrayItemArea.d.ts +3 -2
- package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -2
- package/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/DoneButton.js +1 -1
- package/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -2
- package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/OpenButton.js +1 -1
- package/extensions/forms/Iterate/PushContainer/OpenButton.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainer.js +9 -2
- package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
- package/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
- package/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
- package/extensions/forms/Wizard/Container/DisplaySteps.js +6 -5
- package/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
- package/extensions/forms/Wizard/Container/IterateOverSteps.d.ts +4 -3
- package/extensions/forms/Wizard/Container/IterateOverSteps.js +36 -34
- package/extensions/forms/Wizard/Container/IterateOverSteps.js.map +1 -1
- package/extensions/forms/Wizard/Container/WizardContainer.js +105 -58
- package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/extensions/forms/Wizard/Container/useCollectStepsData.d.ts +10 -0
- package/extensions/forms/Wizard/Container/useCollectStepsData.js +60 -0
- package/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -0
- package/extensions/forms/Wizard/Context/WizardContext.d.ts +17 -4
- package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/extensions/forms/Wizard/Context/types.d.ts +9 -6
- package/extensions/forms/Wizard/Context/types.js.map +1 -1
- package/extensions/forms/Wizard/Step/Step.d.ts +1 -1
- package/extensions/forms/Wizard/Step/Step.js +66 -22
- package/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/extensions/forms/Wizard/Step/StepDocs.js +2 -2
- package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
- package/extensions/forms/Wizard/hooks/useStep.js +10 -18
- package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.js +16 -8
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/useValueProps.js +1 -1
- package/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/package.json +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/component-helper.js +1 -1
- package/shared/component-helper.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +1 -1
- package/umd/dnb-ui-lib.min.js +1 -1
|
@@ -23,9 +23,9 @@ function Buttons(props) {
|
|
|
23
23
|
} = props;
|
|
24
24
|
const {
|
|
25
25
|
activeIndex,
|
|
26
|
-
|
|
26
|
+
totalStepsRef
|
|
27
27
|
} = (0, _react.useContext)(_Context.default) || {};
|
|
28
|
-
const totalSteps =
|
|
28
|
+
const totalSteps = (totalStepsRef === null || totalStepsRef === void 0 ? void 0 : totalStepsRef.current) || 0;
|
|
29
29
|
const showPreviousButton = activeIndex > 0;
|
|
30
30
|
const showNextButton = activeIndex < totalSteps - 1;
|
|
31
31
|
if (!showPreviousButton && !showNextButton) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Buttons.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_ButtonRow","_NextButton2","_PreviousButton2","_Context","_PreviousButton","_NextButton","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","Buttons","props","className","activeIndex","
|
|
1
|
+
{"version":3,"file":"Buttons.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_ButtonRow","_NextButton2","_PreviousButton2","_Context","_PreviousButton","_NextButton","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","Buttons","props","className","activeIndex","totalStepsRef","useContext","WizardContext","totalSteps","current","showPreviousButton","showNextButton","createElement","classnames","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Wizard/Buttons/Buttons.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport { ComponentProps } from '../../types'\nimport ButtonRow from '../../Form/ButtonRow'\nimport NextButton from '../NextButton'\nimport PreviousButton from '../PreviousButton'\nimport WizardContext from '../Context'\n\nexport type Props = ComponentProps & {\n children?: string\n}\n\nfunction Buttons(props: Props) {\n const { className } = props\n const { activeIndex, totalStepsRef } = useContext(WizardContext) || {}\n\n const totalSteps = totalStepsRef?.current || 0\n const showPreviousButton = activeIndex > 0\n const showNextButton = activeIndex < totalSteps - 1\n\n if (!showPreviousButton && !showNextButton) {\n return null\n }\n\n return (\n <ButtonRow\n className={classnames('dnb-forms-buttons', className)}\n {...props}\n >\n {showPreviousButton && <PreviousButton />}\n {showNextButton && <NextButton />}\n </ButtonRow>\n )\n}\n\nButtons._supportsSpacingProps = true\nexport default Buttons\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -39,19 +39,19 @@ function DisplaySteps(_ref) {
|
|
|
39
39
|
if (!hasErrorInOtherStepRef.current) {
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
|
-
if (hasInvalidStepsState(['error'])) {
|
|
42
|
+
if (hasInvalidStepsState(undefined, ['error'])) {
|
|
43
43
|
return {
|
|
44
44
|
status: translations.Step.stepHasError,
|
|
45
45
|
status_state: 'error'
|
|
46
46
|
};
|
|
47
47
|
}
|
|
48
|
-
if (hasInvalidStepsState(['unknown'])) {
|
|
48
|
+
if (hasInvalidStepsState(undefined, ['unknown'])) {
|
|
49
49
|
return {
|
|
50
50
|
status: 'Unknown state',
|
|
51
51
|
status_state: 'warn'
|
|
52
52
|
};
|
|
53
53
|
}
|
|
54
|
-
}, [hasInvalidStepsState, translations.Step.stepHasError]);
|
|
54
|
+
}, [hasErrorInOtherStepRef, hasInvalidStepsState, translations.Step.stepHasError]);
|
|
55
55
|
return _react.default.createElement("aside", {
|
|
56
56
|
className: "dnb-forms-wizard-layout__indicator"
|
|
57
57
|
}, _react.default.createElement(_StepIndicator.default.Sidebar, {
|
|
@@ -59,15 +59,16 @@ function DisplaySteps(_ref) {
|
|
|
59
59
|
}), _react.default.createElement(_StepIndicator.default, {
|
|
60
60
|
bottom: true,
|
|
61
61
|
current_step: activeIndexRef.current,
|
|
62
|
-
data:
|
|
62
|
+
data: Array.from(stepsRef.current.values()).map(_ref2 => {
|
|
63
63
|
let {
|
|
64
|
+
stringifiedTitle,
|
|
64
65
|
title,
|
|
65
66
|
inactive,
|
|
66
67
|
status,
|
|
67
68
|
statusState
|
|
68
69
|
} = _ref2;
|
|
69
70
|
return {
|
|
70
|
-
title,
|
|
71
|
+
title: stringifiedTitle || title,
|
|
71
72
|
inactive,
|
|
72
73
|
status,
|
|
73
74
|
status_state: statusState
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DisplaySteps.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_StepIndicator","_hooks","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DisplaySteps","_ref","mode","variant","noAnimation","handleChange","sidebarId","forceUpdate","useReducer","id","activeIndexRef","stepsRef","updateTitlesRef","hasErrorInOtherStepRef","hasInvalidStepsState","useContext","WizardContext","current","translations","useTranslation","sidebar_id","undefined","getTriggerStatus","useCallback","status","Step","stepHasError","status_state","createElement","className","Sidebar","bottom","current_step","data","values","map","_ref2","title","inactive","statusState","no_animation","on_change","triggerButtonProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/DisplaySteps.tsx"],"sourcesContent":["import React, { useCallback, useContext, useReducer } from 'react'\nimport WizardContext from '../Context'\nimport StepIndicator from '../../../../components/StepIndicator'\nimport { StepIndicatorItemProps } from '../../../../components/step-indicator/StepIndicatorItem'\nimport { useTranslation } from '../../hooks'\n\nexport function DisplaySteps({\n mode,\n variant,\n noAnimation,\n handleChange,\n sidebarId,\n}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const {\n id,\n activeIndexRef,\n stepsRef,\n updateTitlesRef,\n hasErrorInOtherStepRef,\n hasInvalidStepsState,\n } = useContext(WizardContext) || {}\n updateTitlesRef.current = () => {\n forceUpdate()\n }\n const translations = useTranslation()\n\n const sidebar_id =\n variant === 'drawer' && !sidebarId ? undefined : sidebarId ?? id\n\n const getTriggerStatus = useCallback(() => {\n if (!hasErrorInOtherStepRef.current) {\n return // stop here\n }\n if (hasInvalidStepsState(['error'])) {\n return {\n status: translations.Step.stepHasError,\n status_state: 'error',\n } satisfies Omit<StepIndicatorItemProps, 'title' | 'currentItemNum'>\n }\n if (hasInvalidStepsState(['unknown'])) {\n return {\n status: 'Unknown state',\n status_state: 'warn',\n } satisfies Omit<StepIndicatorItemProps, 'title' | 'currentItemNum'>\n }\n }, [hasInvalidStepsState
|
|
1
|
+
{"version":3,"file":"DisplaySteps.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_StepIndicator","_hooks","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DisplaySteps","_ref","mode","variant","noAnimation","handleChange","sidebarId","forceUpdate","useReducer","id","activeIndexRef","stepsRef","updateTitlesRef","hasErrorInOtherStepRef","hasInvalidStepsState","useContext","WizardContext","current","translations","useTranslation","sidebar_id","undefined","getTriggerStatus","useCallback","status","Step","stepHasError","status_state","createElement","className","Sidebar","bottom","current_step","data","Array","from","values","map","_ref2","stringifiedTitle","title","inactive","statusState","no_animation","on_change","triggerButtonProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/DisplaySteps.tsx"],"sourcesContent":["import React, { useCallback, useContext, useReducer } from 'react'\nimport WizardContext from '../Context'\nimport StepIndicator from '../../../../components/StepIndicator'\nimport { StepIndicatorItemProps } from '../../../../components/step-indicator/StepIndicatorItem'\nimport { useTranslation } from '../../hooks'\n\nexport function DisplaySteps({\n mode,\n variant,\n noAnimation,\n handleChange,\n sidebarId,\n}) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const {\n id,\n activeIndexRef,\n stepsRef,\n updateTitlesRef,\n hasErrorInOtherStepRef,\n hasInvalidStepsState,\n } = useContext(WizardContext) || {}\n updateTitlesRef.current = () => {\n forceUpdate()\n }\n const translations = useTranslation()\n\n const sidebar_id =\n variant === 'drawer' && !sidebarId ? undefined : sidebarId ?? id\n\n const getTriggerStatus = useCallback(() => {\n if (!hasErrorInOtherStepRef.current) {\n return // stop here\n }\n if (hasInvalidStepsState(undefined, ['error'])) {\n return {\n status: translations.Step.stepHasError,\n status_state: 'error',\n } satisfies Omit<StepIndicatorItemProps, 'title' | 'currentItemNum'>\n }\n if (hasInvalidStepsState(undefined, ['unknown'])) {\n return {\n status: 'Unknown state',\n status_state: 'warn',\n } satisfies Omit<StepIndicatorItemProps, 'title' | 'currentItemNum'>\n }\n }, [\n hasErrorInOtherStepRef,\n hasInvalidStepsState,\n translations.Step.stepHasError,\n ])\n\n return (\n <aside className=\"dnb-forms-wizard-layout__indicator\">\n <StepIndicator.Sidebar sidebar_id={sidebar_id} />\n <StepIndicator\n bottom\n current_step={activeIndexRef.current}\n data={Array.from(stepsRef.current.values()).map(\n ({ stringifiedTitle, title, inactive, status, statusState }) =>\n ({\n title: stringifiedTitle || title,\n inactive,\n status,\n status_state: statusState,\n }) satisfies Omit<StepIndicatorItemProps, 'currentItemNum'>\n )}\n mode={mode}\n no_animation={noAnimation}\n on_change={handleChange}\n sidebar_id={sidebar_id}\n triggerButtonProps={getTriggerStatus()}\n />\n </aside>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export declare function IterateOverSteps({ children, }: {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
}): React.ReactNode;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
"use client";
|
|
3
3
|
|
|
4
|
-
require("core-js/modules/web.dom-collections.iterator.js");
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.IterateOverSteps = IterateOverSteps;
|
|
8
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
-
var _hooks = require("../../hooks");
|
|
11
|
-
var _componentHelper = require("../../../../shared/component-helper");
|
|
12
10
|
var _WizardContext = _interopRequireDefault(require("../Context/WizardContext"));
|
|
11
|
+
var _StepContext = _interopRequireDefault(require("../Step/StepContext"));
|
|
13
12
|
var _Step = _interopRequireWildcard(require("../Step/Step"));
|
|
13
|
+
var _useCollectStepsData = require("./useCollectStepsData");
|
|
14
14
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
15
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
16
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -23,15 +23,19 @@ function IterateOverSteps(_ref) {
|
|
|
23
23
|
stepsRef,
|
|
24
24
|
activeIndexRef,
|
|
25
25
|
totalStepsRef,
|
|
26
|
-
|
|
26
|
+
stepIndexRef,
|
|
27
27
|
prerenderFieldProps,
|
|
28
28
|
prerenderFieldPropsRef,
|
|
29
|
-
hasErrorInOtherStepRef
|
|
29
|
+
hasErrorInOtherStepRef,
|
|
30
|
+
mapOverChildrenRef
|
|
30
31
|
} = (0, _react.useContext)(_WizardContext.default);
|
|
32
|
+
const {
|
|
33
|
+
collectStepsData
|
|
34
|
+
} = (0, _useCollectStepsData.useCollectStepsData)();
|
|
35
|
+
stepsRef.current = new Map();
|
|
31
36
|
hasErrorInOtherStepRef.current = false;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
const translations = (0, _hooks.useTranslation)();
|
|
37
|
+
stepIndexRef.current = -1;
|
|
38
|
+
totalStepsRef.current = 0;
|
|
35
39
|
const childrenArray = _react.default.Children.map(children, child => {
|
|
36
40
|
if (_react.default.isValidElement(child)) {
|
|
37
41
|
var _child, _child2;
|
|
@@ -45,7 +49,7 @@ function IterateOverSteps(_ref) {
|
|
|
45
49
|
}
|
|
46
50
|
if (((_child2 = child) === null || _child2 === void 0 ? void 0 : _child2.type) === _Step.default) {
|
|
47
51
|
const {
|
|
48
|
-
title
|
|
52
|
+
title,
|
|
49
53
|
inactive,
|
|
50
54
|
include,
|
|
51
55
|
includeWhen,
|
|
@@ -59,45 +63,42 @@ function IterateOverSteps(_ref) {
|
|
|
59
63
|
})) {
|
|
60
64
|
return null;
|
|
61
65
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
const state = stepStatusRef.current[index];
|
|
66
|
-
const status = index !== activeIndexRef.current ? state === 'error' ? translations.Step.stepHasError : state === 'unknown' ? 'Unknown state' : undefined : undefined;
|
|
67
|
-
const statusState = state === 'error' ? 'error' : undefined;
|
|
68
|
-
const key = `${index}-${activeIndexRef.current}`;
|
|
69
|
-
if (status) {
|
|
70
|
-
hasErrorInOtherStepRef.current = true;
|
|
71
|
-
}
|
|
72
|
-
stepsRef.current[index] = {
|
|
66
|
+
const index = totalStepsRef.current;
|
|
67
|
+
totalStepsRef.current = totalStepsRef.current + 1;
|
|
68
|
+
collectStepsData({
|
|
73
69
|
id,
|
|
74
|
-
|
|
70
|
+
index,
|
|
75
71
|
inactive,
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
};
|
|
79
|
-
const clone = props => _react.default.cloneElement(child, props);
|
|
72
|
+
title
|
|
73
|
+
});
|
|
80
74
|
if (prerenderFieldProps && typeof document !== 'undefined' && index !== activeIndexRef.current && typeof prerenderFieldPropsRef.current['step-' + index] === 'undefined') {
|
|
81
|
-
|
|
75
|
+
const key = `${index}-${activeIndexRef.current}`;
|
|
76
|
+
prerenderFieldPropsRef.current['step-' + index] = () => _react.default.cloneElement(child, {
|
|
82
77
|
key,
|
|
83
78
|
index,
|
|
84
79
|
prerenderFieldProps: true
|
|
85
80
|
});
|
|
86
81
|
}
|
|
87
|
-
return
|
|
88
|
-
key,
|
|
89
|
-
index
|
|
90
|
-
});
|
|
82
|
+
return child;
|
|
91
83
|
}
|
|
92
84
|
}
|
|
93
85
|
return child;
|
|
94
86
|
});
|
|
95
|
-
if (
|
|
87
|
+
if (totalStepsRef.current === 0) {
|
|
96
88
|
activeIndexRef.current = 0;
|
|
97
|
-
} else if (
|
|
98
|
-
activeIndexRef.current =
|
|
89
|
+
} else if (totalStepsRef.current < activeIndexRef.current + 1) {
|
|
90
|
+
activeIndexRef.current = totalStepsRef.current - 1;
|
|
91
|
+
}
|
|
92
|
+
if (mapOverChildrenRef.current) {
|
|
93
|
+
return childrenArray.map((child, index) => {
|
|
94
|
+
return _react.default.createElement(_StepContext.default.Provider, {
|
|
95
|
+
key: index,
|
|
96
|
+
value: {
|
|
97
|
+
index
|
|
98
|
+
}
|
|
99
|
+
}, child);
|
|
100
|
+
});
|
|
99
101
|
}
|
|
100
|
-
|
|
101
|
-
return childrenArray;
|
|
102
|
+
return children;
|
|
102
103
|
}
|
|
103
104
|
//# sourceMappingURL=IterateOverSteps.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IterateOverSteps.js","names":["_react","_interopRequireWildcard","require","
|
|
1
|
+
{"version":3,"file":"IterateOverSteps.js","names":["_react","_interopRequireWildcard","require","_WizardContext","_interopRequireDefault","_StepContext","_Step","_useCollectStepsData","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","IterateOverSteps","_ref","children","check","stepsRef","activeIndexRef","totalStepsRef","stepIndexRef","prerenderFieldProps","prerenderFieldPropsRef","hasErrorInOtherStepRef","mapOverChildrenRef","useContext","WizardContext","collectStepsData","useCollectStepsData","current","Map","childrenArray","React","Children","map","child","isValidElement","_child","_child2","step","type","Step","_step","apply","props","title","inactive","include","includeWhen","id","handleDeprecatedStepProps","visibleWhen","index","document","key","cloneElement","createElement","Provider","value"],"sources":["../../../../../../src/extensions/forms/Wizard/Container/IterateOverSteps.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport WizardContext from '../Context/WizardContext'\nimport WizardStepContext from '../Step/StepContext'\nimport Step, {\n Props as StepProps,\n handleDeprecatedProps as handleDeprecatedStepProps,\n} from '../Step/Step'\nimport { useCollectStepsData } from './useCollectStepsData'\n\nexport function IterateOverSteps({\n children,\n}: {\n children: React.ReactNode\n}): React.ReactNode {\n const {\n check,\n stepsRef,\n activeIndexRef,\n totalStepsRef,\n stepIndexRef,\n prerenderFieldProps,\n prerenderFieldPropsRef,\n hasErrorInOtherStepRef,\n mapOverChildrenRef,\n } = useContext(WizardContext)\n\n const { collectStepsData } = useCollectStepsData()\n\n // Reset before iterating and calling \"collectStepsData\" and other variables are collected.\n stepsRef.current = new Map()\n hasErrorInOtherStepRef.current = false\n stepIndexRef.current = -1\n totalStepsRef.current = 0\n\n const childrenArray = React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n let step = child\n\n if (child?.type !== Step && typeof child.type === 'function') {\n step = child.type.apply(child.type, [\n child.props,\n ]) as React.ReactElement\n\n if (step?.type === Step) {\n child = step\n }\n }\n\n if (child?.type === Step) {\n const { title, inactive, include, includeWhen, id } =\n handleDeprecatedStepProps(child.props)\n\n if (include === false) {\n return null\n }\n\n if (\n includeWhen &&\n !check({\n visibleWhen: includeWhen,\n })\n ) {\n return null\n }\n\n const index = totalStepsRef.current\n totalStepsRef.current = totalStepsRef.current + 1\n\n collectStepsData({\n id,\n index,\n inactive,\n title,\n })\n\n if (\n prerenderFieldProps &&\n typeof document !== 'undefined' &&\n index !== activeIndexRef.current &&\n typeof prerenderFieldPropsRef.current['step-' + index] ===\n 'undefined'\n ) {\n const key = `${index}-${activeIndexRef.current}`\n prerenderFieldPropsRef.current['step-' + index] = () =>\n React.cloneElement(child as React.ReactElement<StepProps>, {\n key,\n index,\n prerenderFieldProps: true,\n })\n }\n\n return child\n }\n }\n\n return child\n })\n\n // Ensure we never have a higher index than the available children\n // else we get a white screen\n if (totalStepsRef.current === 0) {\n activeIndexRef.current = 0\n } else if (totalStepsRef.current < activeIndexRef.current + 1) {\n activeIndexRef.current = totalStepsRef.current - 1\n }\n\n if (mapOverChildrenRef.current) {\n return childrenArray.map((child, index) => {\n return (\n <WizardStepContext.Provider key={index} value={{ index }}>\n {child}\n </WizardStepContext.Provider>\n )\n })\n }\n\n return children\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,YAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,KAAA,GAAAL,uBAAA,CAAAC,OAAA;AAIA,IAAAK,oBAAA,GAAAL,OAAA;AAA2D,SAAAE,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAEpD,SAASW,gBAAgBA,CAAAC,IAAA,EAIZ;EAAA,IAJa;IAC/BC;EAGF,CAAC,GAAAD,IAAA;EACC,MAAM;IACJE,KAAK;IACLC,QAAQ;IACRC,cAAc;IACdC,aAAa;IACbC,YAAY;IACZC,mBAAmB;IACnBC,sBAAsB;IACtBC,sBAAsB;IACtBC;EACF,CAAC,GAAG,IAAAC,iBAAU,EAACC,sBAAa,CAAC;EAE7B,MAAM;IAAEC;EAAiB,CAAC,GAAG,IAAAC,wCAAmB,EAAC,CAAC;EAGlDX,QAAQ,CAACY,OAAO,GAAG,IAAIC,GAAG,CAAC,CAAC;EAC5BP,sBAAsB,CAACM,OAAO,GAAG,KAAK;EACtCT,YAAY,CAACS,OAAO,GAAG,CAAC,CAAC;EACzBV,aAAa,CAACU,OAAO,GAAG,CAAC;EAEzB,MAAME,aAAa,GAAGC,cAAK,CAACC,QAAQ,CAACC,GAAG,CAACnB,QAAQ,EAAGoB,KAAK,IAAK;IAC5D,IAAIH,cAAK,CAACI,cAAc,CAACD,KAAK,CAAC,EAAE;MAAA,IAAAE,MAAA,EAAAC,OAAA;MAC/B,IAAIC,IAAI,GAAGJ,KAAK;MAEhB,IAAI,EAAAE,MAAA,GAAAF,KAAK,cAAAE,MAAA,uBAALA,MAAA,CAAOG,IAAI,MAAKC,aAAI,IAAI,OAAON,KAAK,CAACK,IAAI,KAAK,UAAU,EAAE;QAAA,IAAAE,KAAA;QAC5DH,IAAI,GAAGJ,KAAK,CAACK,IAAI,CAACG,KAAK,CAACR,KAAK,CAACK,IAAI,EAAE,CAClCL,KAAK,CAACS,KAAK,CACZ,CAAuB;QAExB,IAAI,EAAAF,KAAA,GAAAH,IAAI,cAAAG,KAAA,uBAAJA,KAAA,CAAMF,IAAI,MAAKC,aAAI,EAAE;UACvBN,KAAK,GAAGI,IAAI;QACd;MACF;MAEA,IAAI,EAAAD,OAAA,GAAAH,KAAK,cAAAG,OAAA,uBAALA,OAAA,CAAOE,IAAI,MAAKC,aAAI,EAAE;QACxB,MAAM;UAAEI,KAAK;UAAEC,QAAQ;UAAEC,OAAO;UAAEC,WAAW;UAAEC;QAAG,CAAC,GACjD,IAAAC,2BAAyB,EAACf,KAAK,CAACS,KAAK,CAAC;QAExC,IAAIG,OAAO,KAAK,KAAK,EAAE;UACrB,OAAO,IAAI;QACb;QAEA,IACEC,WAAW,IACX,CAAChC,KAAK,CAAC;UACLmC,WAAW,EAAEH;QACf,CAAC,CAAC,EACF;UACA,OAAO,IAAI;QACb;QAEA,MAAMI,KAAK,GAAGjC,aAAa,CAACU,OAAO;QACnCV,aAAa,CAACU,OAAO,GAAGV,aAAa,CAACU,OAAO,GAAG,CAAC;QAEjDF,gBAAgB,CAAC;UACfsB,EAAE;UACFG,KAAK;UACLN,QAAQ;UACRD;QACF,CAAC,CAAC;QAEF,IACExB,mBAAmB,IACnB,OAAOgC,QAAQ,KAAK,WAAW,IAC/BD,KAAK,KAAKlC,cAAc,CAACW,OAAO,IAChC,OAAOP,sBAAsB,CAACO,OAAO,CAAC,OAAO,GAAGuB,KAAK,CAAC,KACpD,WAAW,EACb;UACA,MAAME,GAAG,GAAG,GAAGF,KAAK,IAAIlC,cAAc,CAACW,OAAO,EAAE;UAChDP,sBAAsB,CAACO,OAAO,CAAC,OAAO,GAAGuB,KAAK,CAAC,GAAG,MAChDpB,cAAK,CAACuB,YAAY,CAACpB,KAAK,EAAmC;YACzDmB,GAAG;YACHF,KAAK;YACL/B,mBAAmB,EAAE;UACvB,CAAC,CAAC;QACN;QAEA,OAAOc,KAAK;MACd;IACF;IAEA,OAAOA,KAAK;EACd,CAAC,CAAC;EAIF,IAAIhB,aAAa,CAACU,OAAO,KAAK,CAAC,EAAE;IAC/BX,cAAc,CAACW,OAAO,GAAG,CAAC;EAC5B,CAAC,MAAM,IAAIV,aAAa,CAACU,OAAO,GAAGX,cAAc,CAACW,OAAO,GAAG,CAAC,EAAE;IAC7DX,cAAc,CAACW,OAAO,GAAGV,aAAa,CAACU,OAAO,GAAG,CAAC;EACpD;EAEA,IAAIL,kBAAkB,CAACK,OAAO,EAAE;IAC9B,OAAOE,aAAa,CAACG,GAAG,CAAC,CAACC,KAAK,EAAEiB,KAAK,KAAK;MACzC,OACEnE,MAAA,CAAAU,OAAA,CAAA6D,aAAA,CAAClE,YAAA,CAAAK,OAAiB,CAAC8D,QAAQ;QAACH,GAAG,EAAEF,KAAM;QAACM,KAAK,EAAE;UAAEN;QAAM;MAAE,GACtDjB,KACyB,CAAC;IAEjC,CAAC,CAAC;EACJ;EAEA,OAAOpB,QAAQ;AACjB","ignoreList":[]}
|
|
@@ -66,26 +66,24 @@ function WizardContainer(props) {
|
|
|
66
66
|
const [, forceUpdate] = (0, _react.useReducer)(() => ({}), {});
|
|
67
67
|
const activeIndexRef = (0, _react.useRef)(initialActiveIndex);
|
|
68
68
|
const totalStepsRef = (0, _react.useRef)(NaN);
|
|
69
|
-
const
|
|
70
|
-
const
|
|
69
|
+
const submitCountRef = (0, _react.useRef)(0);
|
|
70
|
+
const visitedStepsRef = (0, _react.useRef)(new Map());
|
|
71
|
+
const fieldErrorRef = (0, _react.useRef)(new Map());
|
|
72
|
+
const storeStepStateRef = (0, _react.useRef)(new Map());
|
|
71
73
|
const hasErrorInOtherStepRef = (0, _react.useRef)(false);
|
|
72
|
-
const visitedStepsRef = (0, _react.useRef)({});
|
|
73
74
|
const elementRef = (0, _react.useRef)();
|
|
74
75
|
const stepElementRef = (0, _react.useRef)();
|
|
75
76
|
const preventNextStepRef = (0, _react.useRef)(false);
|
|
76
|
-
const stepsRef = (0, _react.useRef)(
|
|
77
|
-
const tmpStepsRef = (0, _react.useRef)(
|
|
77
|
+
const stepsRef = (0, _react.useRef)(new Map());
|
|
78
|
+
const tmpStepsRef = (0, _react.useRef)();
|
|
79
|
+
const stepIndexRef = (0, _react.useRef)(-1);
|
|
78
80
|
const updateTitlesRef = (0, _react.useRef)();
|
|
79
81
|
const prerenderFieldPropsRef = (0, _react.useRef)({});
|
|
80
82
|
const bypassOnNavigation = validationMode === 'bypassOnNavigation';
|
|
81
83
|
const sharedStateRef = (0, _react.useRef)();
|
|
82
84
|
sharedStateRef.current = (0, _useSharedState.useSharedState)(hasContext && id ? (0, _useSharedState.createReferenceKey)(id, 'wizard') : undefined);
|
|
83
|
-
visitedStepsRef.current[activeIndexRef.current] = true;
|
|
84
|
-
const setStepState = (0, _react.useCallback)((index, state) => {
|
|
85
|
-
stepStatusRef.current[index] = state;
|
|
86
|
-
}, []);
|
|
87
85
|
const hasFieldErrorInStep = (0, _react.useCallback)(index => {
|
|
88
|
-
return
|
|
86
|
+
return Array.from(fieldErrorRef.current.values()).some(_ref => {
|
|
89
87
|
let {
|
|
90
88
|
index: i,
|
|
91
89
|
hasError
|
|
@@ -93,31 +91,77 @@ function WizardContainer(props) {
|
|
|
93
91
|
return i === index && hasError;
|
|
94
92
|
});
|
|
95
93
|
}, []);
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
setStepState(index, 'error');
|
|
94
|
+
const setStepAsVisited = (0, _react.useCallback)(index => {
|
|
95
|
+
visitedStepsRef.current.set(index, true);
|
|
96
|
+
}, []);
|
|
97
|
+
(0, _react.useEffect)(() => {
|
|
98
|
+
if (!initialActiveIndex) {
|
|
99
|
+
setStepAsVisited(activeIndexRef.current);
|
|
103
100
|
}
|
|
104
|
-
}, [
|
|
105
|
-
const
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
101
|
+
}, [initialActiveIndex, setStepAsVisited]);
|
|
102
|
+
const writeStepsState = (0, _react.useCallback)(function () {
|
|
103
|
+
let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
|
|
104
|
+
let forStates = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['unknown', 'error'];
|
|
105
|
+
for (let i = 0; i < totalStepsRef.current; i++) {
|
|
106
|
+
if (index !== undefined && index !== i) {
|
|
107
|
+
continue;
|
|
108
|
+
}
|
|
109
|
+
let result = undefined;
|
|
110
|
+
const existingState = storeStepStateRef.current.get(i);
|
|
111
|
+
if (forStates.includes('unknown')) {
|
|
112
|
+
const state = i < activeIndexRef.current && visitedStepsRef.current.get(i) === undefined;
|
|
113
|
+
if (state) {
|
|
114
|
+
result = 'unknown';
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
if (forStates.includes('error')) {
|
|
118
|
+
const state = hasFieldErrorInStep(i);
|
|
119
|
+
if (state) {
|
|
120
|
+
result = 'error';
|
|
121
|
+
} else if (existingState === 'error') {
|
|
122
|
+
if (i === activeIndexRef.current) {
|
|
123
|
+
result = undefined;
|
|
124
|
+
} else {
|
|
125
|
+
result = existingState;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
storeStepStateRef.current.set(i, result);
|
|
130
|
+
}
|
|
131
|
+
}, [hasFieldErrorInStep]);
|
|
132
|
+
const hasInvalidStepsState = (0, _react.useCallback)(function () {
|
|
133
|
+
let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
|
|
134
|
+
let forStates = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['unknown', 'error'];
|
|
135
|
+
for (let i = 0; i < totalStepsRef.current; i++) {
|
|
136
|
+
if (index !== undefined && index !== i) {
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
const state = storeStepStateRef.current.get(i);
|
|
140
|
+
if (forStates.includes('unknown')) {
|
|
141
|
+
if (state === 'unknown') {
|
|
142
|
+
return true;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
if (forStates.includes('error')) {
|
|
146
|
+
if (state === 'error') {
|
|
147
|
+
return true;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
113
150
|
}
|
|
114
|
-
|
|
151
|
+
return false;
|
|
152
|
+
}, []);
|
|
153
|
+
const setFieldError = (0, _react.useCallback)((index, path, hasError) => {
|
|
154
|
+
fieldErrorRef.current.set(path, {
|
|
155
|
+
index,
|
|
156
|
+
hasError
|
|
157
|
+
});
|
|
158
|
+
}, []);
|
|
115
159
|
const preventNavigation = (0, _react.useCallback)(function () {
|
|
116
160
|
let shouldPrevent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
117
161
|
preventNextStepRef.current = shouldPrevent;
|
|
118
162
|
}, []);
|
|
119
163
|
const getStepChangeOptions = (0, _react.useCallback)(index => {
|
|
120
|
-
var _stepsRef$current$
|
|
164
|
+
var _stepsRef$current$get;
|
|
121
165
|
const previousIndex = activeIndexRef.current;
|
|
122
166
|
const options = {
|
|
123
167
|
preventNavigation,
|
|
@@ -125,10 +169,10 @@ function WizardContainer(props) {
|
|
|
125
169
|
index: previousIndex
|
|
126
170
|
}
|
|
127
171
|
};
|
|
128
|
-
const id = (_stepsRef$current$
|
|
172
|
+
const id = (_stepsRef$current$get = stepsRef.current.get(index)) === null || _stepsRef$current$get === void 0 ? void 0 : _stepsRef$current$get.id;
|
|
129
173
|
if (id) {
|
|
130
|
-
var _stepsRef$current$
|
|
131
|
-
const previousId = (_stepsRef$current$
|
|
174
|
+
var _stepsRef$current$get2;
|
|
175
|
+
const previousId = (_stepsRef$current$get2 = stepsRef.current.get(previousIndex)) === null || _stepsRef$current$get2 === void 0 ? void 0 : _stepsRef$current$get2.id;
|
|
132
176
|
Object.assign(options, {
|
|
133
177
|
id
|
|
134
178
|
});
|
|
@@ -186,10 +230,11 @@ function WizardContainer(props) {
|
|
|
186
230
|
result = await callOnStepChange(index, mode);
|
|
187
231
|
}
|
|
188
232
|
setFormState('abort');
|
|
189
|
-
setShowAllErrors(bypassOnNavigation ? false :
|
|
233
|
+
setShowAllErrors(bypassOnNavigation ? false : hasInvalidStepsState(index, ['error']));
|
|
190
234
|
if (!preventNextStepRef.current && !(result instanceof Error)) {
|
|
191
235
|
handleLayoutEffect();
|
|
192
236
|
activeIndexRef.current = index;
|
|
237
|
+
setStepAsVisited(activeIndexRef.current);
|
|
193
238
|
forceUpdate();
|
|
194
239
|
}
|
|
195
240
|
preventNextStepRef.current = false;
|
|
@@ -206,13 +251,15 @@ function WizardContainer(props) {
|
|
|
206
251
|
if (bypassOnNavigation) {
|
|
207
252
|
await onSubmit();
|
|
208
253
|
} else {
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
254
|
+
if (mode === 'next') {
|
|
255
|
+
writeStepsState(activeIndexRef.current, ['error']);
|
|
256
|
+
if (!hasInvalidStepsState(activeIndexRef.current)) {
|
|
257
|
+
await onSubmit();
|
|
258
|
+
}
|
|
212
259
|
}
|
|
213
260
|
}
|
|
214
261
|
}
|
|
215
|
-
}, [bypassOnNavigation, callOnStepChange, getStepChangeOptions, handleLayoutEffect, handleSubmitCall, isInteractionRef, onStepChange, setFormState, setShowAllErrors]);
|
|
262
|
+
}, [bypassOnNavigation, callOnStepChange, getStepChangeOptions, handleLayoutEffect, handleSubmitCall, hasInvalidStepsState, isInteractionRef, onStepChange, setFormState, setShowAllErrors, setStepAsVisited, writeStepsState]);
|
|
216
263
|
const setActiveIndex = (0, _react.useCallback)((index, options) => {
|
|
217
264
|
if (index === activeIndexRef.current) {
|
|
218
265
|
return;
|
|
@@ -243,23 +290,11 @@ function WizardContainer(props) {
|
|
|
243
290
|
error
|
|
244
291
|
});
|
|
245
292
|
}, [setSubmitState]);
|
|
246
|
-
const handleUnknownStepsState = (0, _react.useCallback)(() => {
|
|
247
|
-
const index = activeIndexRef.current;
|
|
248
|
-
for (let i = 0; i < totalStepsRef.current; i++) {
|
|
249
|
-
if (!visitedStepsRef.current[i] && stepStatusRef.current[i] === undefined && i < index && i !== index) {
|
|
250
|
-
setStepState(i, 'unknown');
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
}, [setStepState]);
|
|
254
|
-
const hasInvalidStepsState = (0, _react.useCallback)(forStates => {
|
|
255
|
-
const steps = Object.values(stepStatusRef.current);
|
|
256
|
-
return (forStates || ['unknown', 'error']).some(state => steps.includes(state));
|
|
257
|
-
}, []);
|
|
258
293
|
const handleSubmit = (0, _react.useCallback)(_ref4 => {
|
|
259
294
|
let {
|
|
260
295
|
preventSubmit
|
|
261
296
|
} = _ref4;
|
|
262
|
-
|
|
297
|
+
submitCountRef.current += 1;
|
|
263
298
|
if (hasInvalidStepsState()) {
|
|
264
299
|
return preventSubmit();
|
|
265
300
|
}
|
|
@@ -267,11 +302,16 @@ function WizardContainer(props) {
|
|
|
267
302
|
handleNext();
|
|
268
303
|
preventSubmit();
|
|
269
304
|
}
|
|
270
|
-
}, [
|
|
305
|
+
}, [hasInvalidStepsState, handleNext]);
|
|
271
306
|
(_dataContext$setHandl = dataContext.setHandleSubmit) === null || _dataContext$setHandl === void 0 ? void 0 : _dataContext$setHandl.call(dataContext, handleSubmit);
|
|
272
307
|
const {
|
|
273
308
|
check
|
|
274
309
|
} = (0, _useVisibility.default)();
|
|
310
|
+
const mapOverChildrenRef = (0, _react.useRef)(false);
|
|
311
|
+
const enableMapOverChildren = (0, _react.useCallback)(() => {
|
|
312
|
+
mapOverChildrenRef.current = true;
|
|
313
|
+
}, []);
|
|
314
|
+
const activeIndex = activeIndexRef.current;
|
|
275
315
|
const providerValue = (0, _react.useMemo)(() => {
|
|
276
316
|
return {
|
|
277
317
|
id,
|
|
@@ -281,21 +321,25 @@ function WizardContainer(props) {
|
|
|
281
321
|
stepsRef,
|
|
282
322
|
updateTitlesRef,
|
|
283
323
|
activeIndexRef,
|
|
324
|
+
stepIndexRef,
|
|
284
325
|
totalStepsRef,
|
|
285
|
-
|
|
326
|
+
submitCountRef,
|
|
286
327
|
prerenderFieldProps,
|
|
287
328
|
prerenderFieldPropsRef,
|
|
288
329
|
hasErrorInOtherStepRef,
|
|
289
330
|
keepInDOM,
|
|
331
|
+
enableMapOverChildren,
|
|
332
|
+
mapOverChildrenRef,
|
|
290
333
|
check,
|
|
291
334
|
setActiveIndex,
|
|
292
335
|
handlePrevious,
|
|
293
336
|
hasInvalidStepsState,
|
|
294
|
-
|
|
337
|
+
writeStepsState,
|
|
338
|
+
setFieldError,
|
|
295
339
|
handleNext,
|
|
296
340
|
setFormError
|
|
297
341
|
};
|
|
298
|
-
}, [id, activeIndex, initialActiveIndex, prerenderFieldProps, keepInDOM, check, setActiveIndex, handlePrevious, hasInvalidStepsState,
|
|
342
|
+
}, [id, activeIndex, initialActiveIndex, prerenderFieldProps, keepInDOM, enableMapOverChildren, check, setActiveIndex, handlePrevious, hasInvalidStepsState, writeStepsState, setFieldError, handleNext, setFormError]);
|
|
299
343
|
useLayoutEffect(() => {
|
|
300
344
|
if (id && hasContext) {
|
|
301
345
|
sharedStateRef.current.extend(providerValue);
|
|
@@ -306,8 +350,11 @@ function WizardContainer(props) {
|
|
|
306
350
|
(_updateTitlesRef$curr = updateTitlesRef.current) === null || _updateTitlesRef$curr === void 0 ? void 0 : _updateTitlesRef$curr.call(updateTitlesRef);
|
|
307
351
|
}, [stepsRef.current]);
|
|
308
352
|
const stepsLengthDidChange = (0, _react.useCallback)(() => {
|
|
309
|
-
const
|
|
310
|
-
|
|
353
|
+
const tmpCount = tmpStepsRef.current;
|
|
354
|
+
if (tmpCount === undefined) {
|
|
355
|
+
return false;
|
|
356
|
+
}
|
|
357
|
+
const count = totalStepsRef.current;
|
|
311
358
|
return count !== 0 && tmpCount !== 0 && count !== tmpCount;
|
|
312
359
|
}, []);
|
|
313
360
|
useLayoutEffect(() => {
|
|
@@ -316,8 +363,8 @@ function WizardContainer(props) {
|
|
|
316
363
|
callOnStepChange(activeIndexRef.current, 'stepListModified');
|
|
317
364
|
(_executeLayoutAnimati = executeLayoutAnimationRef.current) === null || _executeLayoutAnimati === void 0 ? void 0 : _executeLayoutAnimati.call(executeLayoutAnimationRef);
|
|
318
365
|
}
|
|
319
|
-
tmpStepsRef.current =
|
|
320
|
-
}, [
|
|
366
|
+
tmpStepsRef.current = totalStepsRef.current;
|
|
367
|
+
}, [totalStepsRef.current, callOnStepChange, stepsLengthDidChange]);
|
|
321
368
|
if (!hasContext) {
|
|
322
369
|
(0, _componentHelper.warn)('You may wrap Wizard.Container in Form.Handler');
|
|
323
370
|
return _react.default.createElement(_Handler.default, null, _react.default.createElement(WizardContainer, _extends({}, props, {
|