@dnb/eufemia 10.75.1 → 10.75.2
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 +26 -0
- package/cjs/components/dropdown/Dropdown.js +1 -1
- package/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButton.d.ts +1 -1
- package/cjs/components/toggle-button/ToggleButtonDocs.js +1 -1
- package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -1
- package/cjs/components/upload/Upload.js +5 -2
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/UploadFileInput.d.ts +2 -1
- package/cjs/components/upload/UploadFileInput.js +7 -4
- package/cjs/components/upload/UploadFileInput.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Context.d.ts +5 -2
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +22 -4
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
- package/cjs/extensions/forms/DataContext/Provider/useEventListener.js +29 -0
- package/cjs/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +8 -2
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +8 -2
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/NumberDocs.js +1 -1
- package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +8 -2
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Password/PasswordDocs.js +8 -2
- package/cjs/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +9 -0
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/String/StringDocs.js +7 -7
- package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +2 -2
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
- package/cjs/extensions/forms/Field/Upload/Upload.js +3 -1
- package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/cjs/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +2 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
- package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/Isolation.js +2 -3
- package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
- package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js +20 -4
- package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js +15 -8
- package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
- package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
- package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
- package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -1
- package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
- package/cjs/extensions/forms/Form/Isolation/useReportError.js +22 -7
- package/cjs/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
- package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
- package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
- package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
- package/cjs/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +5 -0
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Tools/Errors.d.ts +5 -0
- package/cjs/extensions/forms/Tools/Errors.js +46 -0
- package/cjs/extensions/forms/Tools/Errors.js.map +1 -0
- package/cjs/extensions/forms/Tools/index.d.ts +1 -0
- package/cjs/extensions/forms/Tools/index.js +7 -0
- package/cjs/extensions/forms/Tools/index.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
- package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
- package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Step/Step.js +1 -1
- package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/cjs/extensions/forms/Wizard/hooks/useStep.js +13 -5
- package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.js +3 -3
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
- package/cjs/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
- package/cjs/extensions/payment-card/icons/providers/BankAxept.js +2 -2
- package/cjs/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
- package/cjs/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
- package/cjs/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
- package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
- package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
- package/cjs/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
- package/cjs/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
- package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
- package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.js +2 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.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/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/dropdown/Dropdown.js +2 -2
- package/components/dropdown/Dropdown.js.map +1 -1
- package/components/toggle-button/ToggleButton.d.ts +1 -1
- package/components/toggle-button/ToggleButtonDocs.js +1 -1
- package/components/toggle-button/ToggleButtonDocs.js.map +1 -1
- package/components/upload/Upload.js +5 -2
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/UploadFileInput.d.ts +2 -1
- package/components/upload/UploadFileInput.js +7 -4
- package/components/upload/UploadFileInput.js.map +1 -1
- package/es/components/dropdown/Dropdown.js +2 -2
- package/es/components/dropdown/Dropdown.js.map +1 -1
- package/es/components/toggle-button/ToggleButton.d.ts +1 -1
- package/es/components/toggle-button/ToggleButtonDocs.js +1 -1
- package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -1
- package/es/components/upload/Upload.js +5 -2
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/UploadFileInput.d.ts +2 -1
- package/es/components/upload/UploadFileInput.js +7 -4
- package/es/components/upload/UploadFileInput.js.map +1 -1
- package/es/extensions/forms/DataContext/Context.d.ts +5 -2
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +22 -4
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
- package/es/extensions/forms/DataContext/Provider/useEventListener.js +22 -0
- package/es/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +6 -2
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +6 -2
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/Number/NumberDocs.js +1 -1
- package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +6 -2
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/Password/PasswordDocs.js +6 -2
- package/es/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +7 -0
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/es/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
- package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
- package/es/extensions/forms/Field/String/StringDocs.js +7 -7
- package/es/extensions/forms/Field/String/StringDocs.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
- package/es/extensions/forms/Field/Upload/Upload.js +3 -1
- package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/es/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.js +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
- package/es/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/Isolation.js +2 -3
- package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
- package/es/extensions/forms/Form/Isolation/IsolationDataReference.js +18 -4
- package/es/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
- package/es/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js +14 -8
- package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
- package/es/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
- package/es/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
- package/es/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -2
- package/es/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
- package/es/extensions/forms/Form/Isolation/useReportError.js +22 -7
- package/es/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
- package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
- package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
- package/es/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
- package/es/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
- package/es/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +5 -0
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/es/extensions/forms/Tools/Errors.d.ts +5 -0
- package/es/extensions/forms/Tools/Errors.js +37 -0
- package/es/extensions/forms/Tools/Errors.js.map +1 -0
- package/es/extensions/forms/Tools/index.d.ts +1 -0
- package/es/extensions/forms/Tools/index.js +1 -0
- package/es/extensions/forms/Tools/index.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
- package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
- package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
- package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/es/extensions/forms/Wizard/Step/Step.js +1 -1
- package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/es/extensions/forms/Wizard/hooks/useStep.js +13 -5
- package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.js +5 -5
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
- package/es/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
- package/es/extensions/payment-card/icons/providers/BankAxept.js +2 -2
- package/es/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
- package/es/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
- package/es/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
- package/es/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
- package/es/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
- package/es/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
- package/es/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
- package/es/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
- package/es/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListHelpers.js +2 -1
- package/es/fragments/drawer-list/DrawerListHelpers.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/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-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/Context.d.ts +5 -2
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +22 -4
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
- package/extensions/forms/DataContext/Provider/useEventListener.js +23 -0
- package/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +6 -2
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +6 -2
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
- package/extensions/forms/Field/Number/NumberDocs.js +1 -1
- package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +6 -2
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
- package/extensions/forms/Field/Password/PasswordDocs.js +6 -2
- package/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +7 -0
- package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
- package/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
- package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
- package/extensions/forms/Field/String/StringDocs.js +7 -7
- package/extensions/forms/Field/String/StringDocs.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
- package/extensions/forms/Field/Upload/Upload.js +3 -1
- package/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.js +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
- package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
- package/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
- package/extensions/forms/Form/Isolation/Isolation.js +2 -3
- package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
- package/extensions/forms/Form/Isolation/IsolationDataReference.js +20 -4
- package/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
- package/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
- package/extensions/forms/Form/Isolation/useDataContextSnapshot.js +15 -8
- package/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
- package/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
- package/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
- package/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
- package/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
- package/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -1
- package/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
- package/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
- package/extensions/forms/Form/Isolation/useReportError.js +22 -7
- package/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
- package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
- package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
- package/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
- package/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
- package/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
- package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
- package/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
- package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +5 -0
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/extensions/forms/Tools/Errors.d.ts +5 -0
- package/extensions/forms/Tools/Errors.js +38 -0
- package/extensions/forms/Tools/Errors.js.map +1 -0
- package/extensions/forms/Tools/index.d.ts +1 -0
- package/extensions/forms/Tools/index.js +1 -0
- package/extensions/forms/Tools/index.js.map +1 -1
- package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
- package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
- package/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
- package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
- package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/extensions/forms/Wizard/Step/Step.js +1 -1
- package/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/extensions/forms/Wizard/hooks/useStep.js +13 -5
- package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.js +5 -5
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
- package/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
- package/extensions/payment-card/icons/providers/BankAxept.js +2 -2
- package/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
- package/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
- package/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
- package/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
- package/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
- package/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
- package/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
- package/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
- package/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
- package/fragments/drawer-list/DrawerListHelpers.js +2 -1
- package/fragments/drawer-list/DrawerListHelpers.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/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-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
- package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
- package/es/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
- package/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
- /package/cjs/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
- /package/es/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
- /package/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
|
@@ -10,14 +10,21 @@ var _useId = _interopRequireDefault(require("../../../../shared/helpers/useId"))
|
|
|
10
10
|
var _Context = _interopRequireDefault(require("../../DataContext/Context"));
|
|
11
11
|
var _StepContext = _interopRequireDefault(require("../../Wizard/Step/StepContext"));
|
|
12
12
|
var _Context2 = _interopRequireDefault(require("../../Wizard/Context"));
|
|
13
|
+
var _VisibilityContext = _interopRequireDefault(require("../Visibility/VisibilityContext"));
|
|
14
|
+
var _hooks = require("../../hooks");
|
|
13
15
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
-
function useReportError(error, customDataContext) {
|
|
16
|
+
function useReportError(error, customDataContext, name) {
|
|
17
|
+
const {
|
|
18
|
+
joinPath
|
|
19
|
+
} = (0, _hooks.usePath)();
|
|
15
20
|
const dataContext = (0, _react.useContext)(_Context.default);
|
|
16
21
|
const wizardContext = (0, _react.useContext)(_Context2.default);
|
|
17
22
|
const wizardStepContext = (0, _react.useContext)(_StepContext.default);
|
|
23
|
+
const visibilityContext = (0, _react.useContext)(_VisibilityContext.default);
|
|
18
24
|
const {
|
|
19
25
|
setFieldError: setFieldErrorDataContext,
|
|
20
|
-
setMountedFieldState
|
|
26
|
+
setMountedFieldState,
|
|
27
|
+
prerenderFieldProps
|
|
21
28
|
} = customDataContext || dataContext;
|
|
22
29
|
const {
|
|
23
30
|
setFieldError: setFieldErrorWizard
|
|
@@ -25,16 +32,24 @@ function useReportError(error, customDataContext) {
|
|
|
25
32
|
const {
|
|
26
33
|
index: wizardIndex
|
|
27
34
|
} = wizardStepContext || {};
|
|
35
|
+
const {
|
|
36
|
+
isVisible
|
|
37
|
+
} = visibilityContext || {};
|
|
38
|
+
const handleFieldAsVisible = isVisible;
|
|
28
39
|
const id = (0, _useId.default)();
|
|
29
40
|
(0, _react.useEffect)(() => {
|
|
30
|
-
|
|
31
|
-
|
|
41
|
+
if (prerenderFieldProps) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const path = joinPath(['internal', name, id]);
|
|
45
|
+
const currentError = handleFieldAsVisible !== false ? error : undefined;
|
|
46
|
+
if (currentError) {
|
|
32
47
|
setMountedFieldState === null || setMountedFieldState === void 0 ? void 0 : setMountedFieldState(path, {
|
|
33
48
|
isMounted: true
|
|
34
49
|
});
|
|
35
50
|
}
|
|
36
|
-
setFieldErrorWizard === null || setFieldErrorWizard === void 0 ? void 0 : setFieldErrorWizard(wizardIndex, path,
|
|
37
|
-
setFieldErrorDataContext === null || setFieldErrorDataContext === void 0 ? void 0 : setFieldErrorDataContext(path,
|
|
51
|
+
setFieldErrorWizard === null || setFieldErrorWizard === void 0 ? void 0 : setFieldErrorWizard(wizardIndex, path, currentError ? true : undefined);
|
|
52
|
+
setFieldErrorDataContext === null || setFieldErrorDataContext === void 0 ? void 0 : setFieldErrorDataContext(path, currentError);
|
|
38
53
|
return () => {
|
|
39
54
|
setMountedFieldState === null || setMountedFieldState === void 0 ? void 0 : setMountedFieldState(path, {
|
|
40
55
|
isMounted: false
|
|
@@ -42,6 +57,6 @@ function useReportError(error, customDataContext) {
|
|
|
42
57
|
setFieldErrorWizard === null || setFieldErrorWizard === void 0 ? void 0 : setFieldErrorWizard(wizardIndex, path, undefined);
|
|
43
58
|
setFieldErrorDataContext === null || setFieldErrorDataContext === void 0 ? void 0 : setFieldErrorDataContext(path, undefined);
|
|
44
59
|
};
|
|
45
|
-
}, [error, id, setFieldErrorDataContext, setFieldErrorWizard, setMountedFieldState, wizardIndex]);
|
|
60
|
+
}, [error, handleFieldAsVisible, id, joinPath, name, prerenderFieldProps, setFieldErrorDataContext, setFieldErrorWizard, setMountedFieldState, wizardIndex]);
|
|
46
61
|
}
|
|
47
62
|
//# sourceMappingURL=useReportError.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useReportError.js","names":["_react","require","_useId","_interopRequireDefault","_Context","_StepContext","_Context2","e","__esModule","default","useReportError","error","customDataContext","dataContext","useContext","DataContext","wizardContext","WizardContext","wizardStepContext","WizardStepContext","setFieldError","setFieldErrorDataContext","setMountedFieldState","setFieldErrorWizard","index","wizardIndex","id","useId","useEffect","path","
|
|
1
|
+
{"version":3,"file":"useReportError.js","names":["_react","require","_useId","_interopRequireDefault","_Context","_StepContext","_Context2","_VisibilityContext","_hooks","e","__esModule","default","useReportError","error","customDataContext","name","joinPath","usePath","dataContext","useContext","DataContext","wizardContext","WizardContext","wizardStepContext","WizardStepContext","visibilityContext","VisibilityContext","setFieldError","setFieldErrorDataContext","setMountedFieldState","prerenderFieldProps","setFieldErrorWizard","index","wizardIndex","isVisible","handleFieldAsVisible","id","useId","useEffect","path","currentError","undefined","isMounted"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useReportError.ts"],"sourcesContent":["import { useContext, useEffect } from 'react'\nimport useId from '../../../../shared/helpers/useId'\nimport { ContextState } from '../../DataContext'\nimport DataContext from '../../DataContext/Context'\nimport WizardStepContext from '../../Wizard/Step/StepContext'\nimport WizardContext from '../../Wizard/Context'\nimport VisibilityContext from '../Visibility/VisibilityContext'\nimport { usePath } from '../../hooks'\n\nexport default function useReportError(\n error: Error,\n customDataContext?: ContextState,\n name?: string\n) {\n const { joinPath } = usePath()\n const dataContext = useContext(DataContext)\n const wizardContext = useContext(WizardContext)\n const wizardStepContext = useContext(WizardStepContext)\n const visibilityContext = useContext(VisibilityContext)\n\n const {\n setFieldError: setFieldErrorDataContext,\n setMountedFieldState,\n prerenderFieldProps,\n } = customDataContext || dataContext\n const { setFieldError: setFieldErrorWizard } = wizardContext || {}\n const { index: wizardIndex } = wizardStepContext || {}\n const { isVisible } = visibilityContext || {}\n const handleFieldAsVisible = isVisible\n\n const id = useId()\n useEffect(() => {\n if (prerenderFieldProps) {\n return // stop here\n }\n\n const path = joinPath(['internal', name, id])\n const currentError = handleFieldAsVisible !== false ? error : undefined\n\n if (currentError) {\n setMountedFieldState?.(path, {\n isMounted: true,\n })\n }\n\n setFieldErrorWizard?.(\n wizardIndex,\n path,\n currentError ? true : undefined\n )\n\n setFieldErrorDataContext?.(path, currentError)\n\n // Unmount procedure\n return () => {\n setMountedFieldState?.(path, {\n isMounted: false,\n })\n\n setFieldErrorWizard?.(wizardIndex, path, undefined)\n setFieldErrorDataContext?.(path, undefined)\n }\n }, [\n error,\n handleFieldAsVisible,\n id,\n joinPath,\n name,\n prerenderFieldProps,\n setFieldErrorDataContext,\n setFieldErrorWizard,\n setMountedFieldState,\n wizardIndex,\n ])\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,YAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,SAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,kBAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AAAqC,SAAAE,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEtB,SAASG,cAAcA,CACpCC,KAAY,EACZC,iBAAgC,EAChCC,IAAa,EACb;EACA,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,cAAO,EAAC,CAAC;EAC9B,MAAMC,WAAW,GAAG,IAAAC,iBAAU,EAACC,gBAAW,CAAC;EAC3C,MAAMC,aAAa,GAAG,IAAAF,iBAAU,EAACG,iBAAa,CAAC;EAC/C,MAAMC,iBAAiB,GAAG,IAAAJ,iBAAU,EAACK,oBAAiB,CAAC;EACvD,MAAMC,iBAAiB,GAAG,IAAAN,iBAAU,EAACO,0BAAiB,CAAC;EAEvD,MAAM;IACJC,aAAa,EAAEC,wBAAwB;IACvCC,oBAAoB;IACpBC;EACF,CAAC,GAAGhB,iBAAiB,IAAII,WAAW;EACpC,MAAM;IAAES,aAAa,EAAEI;EAAoB,CAAC,GAAGV,aAAa,IAAI,CAAC,CAAC;EAClE,MAAM;IAAEW,KAAK,EAAEC;EAAY,CAAC,GAAGV,iBAAiB,IAAI,CAAC,CAAC;EACtD,MAAM;IAAEW;EAAU,CAAC,GAAGT,iBAAiB,IAAI,CAAC,CAAC;EAC7C,MAAMU,oBAAoB,GAAGD,SAAS;EAEtC,MAAME,EAAE,GAAG,IAAAC,cAAK,EAAC,CAAC;EAClB,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIR,mBAAmB,EAAE;MACvB;IACF;IAEA,MAAMS,IAAI,GAAGvB,QAAQ,CAAC,CAAC,UAAU,EAAED,IAAI,EAAEqB,EAAE,CAAC,CAAC;IAC7C,MAAMI,YAAY,GAAGL,oBAAoB,KAAK,KAAK,GAAGtB,KAAK,GAAG4B,SAAS;IAEvE,IAAID,YAAY,EAAE;MAChBX,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAGU,IAAI,EAAE;QAC3BG,SAAS,EAAE;MACb,CAAC,CAAC;IACJ;IAEAX,mBAAmB,aAAnBA,mBAAmB,uBAAnBA,mBAAmB,CACjBE,WAAW,EACXM,IAAI,EACJC,YAAY,GAAG,IAAI,GAAGC,SACxB,CAAC;IAEDb,wBAAwB,aAAxBA,wBAAwB,uBAAxBA,wBAAwB,CAAGW,IAAI,EAAEC,YAAY,CAAC;IAG9C,OAAO,MAAM;MACXX,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAGU,IAAI,EAAE;QAC3BG,SAAS,EAAE;MACb,CAAC,CAAC;MAEFX,mBAAmB,aAAnBA,mBAAmB,uBAAnBA,mBAAmB,CAAGE,WAAW,EAAEM,IAAI,EAAEE,SAAS,CAAC;MACnDb,wBAAwB,aAAxBA,wBAAwB,uBAAxBA,wBAAwB,CAAGW,IAAI,EAAEE,SAAS,CAAC;IAC7C,CAAC;EACH,CAAC,EAAE,CACD5B,KAAK,EACLsB,oBAAoB,EACpBC,EAAE,EACFpB,QAAQ,EACRD,IAAI,EACJe,mBAAmB,EACnBF,wBAAwB,EACxBG,mBAAmB,EACnBF,oBAAoB,EACpBI,WAAW,CACZ,CAAC;AACJ","ignoreList":[]}
|
|
@@ -8,6 +8,7 @@ exports.default = void 0;
|
|
|
8
8
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _Context = _interopRequireDefault(require("../../DataContext/Context"));
|
|
11
|
+
var _useEventListener = _interopRequireDefault(require("../../DataContext/Provider/useEventListener"));
|
|
11
12
|
var _Provider = _interopRequireDefault(require("../../../../shared/Provider"));
|
|
12
13
|
var _components = require("../../../../components");
|
|
13
14
|
var _componentHelper = require("../../../../shared/component-helper");
|
|
@@ -30,7 +31,6 @@ function SubmitConfirmation(props) {
|
|
|
30
31
|
} = props;
|
|
31
32
|
const {
|
|
32
33
|
setFormState,
|
|
33
|
-
setFieldEventListener,
|
|
34
34
|
handleSubmit: handleFinalSubmit,
|
|
35
35
|
submitState,
|
|
36
36
|
formElementRef,
|
|
@@ -131,16 +131,16 @@ function SubmitConfirmation(props) {
|
|
|
131
131
|
preventSubmit();
|
|
132
132
|
await setConfirmationState('readyToBeSubmitted');
|
|
133
133
|
}, [setConfirmationState, validatePreventSubmit]);
|
|
134
|
-
|
|
134
|
+
const {
|
|
135
|
+
removeEvent
|
|
136
|
+
} = (0, _useEventListener.default)('onSubmit', handleSubmit);
|
|
135
137
|
const submitHandler = (0, _react.useCallback)(async () => {
|
|
136
|
-
|
|
137
|
-
remove: true
|
|
138
|
-
});
|
|
138
|
+
removeEvent();
|
|
139
139
|
await setConfirmationState('submitInProgress');
|
|
140
140
|
await handleFinalSubmit();
|
|
141
141
|
await setConfirmationState('submissionComplete');
|
|
142
142
|
setFocusOnButton();
|
|
143
|
-
}, [
|
|
143
|
+
}, [removeEvent, setConfirmationState, handleFinalSubmit, setFocusOnButton]);
|
|
144
144
|
const sharedProviderParams = {
|
|
145
145
|
formElement: {
|
|
146
146
|
disabled: false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubmitConfirmation.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_Provider","_components","_componentHelper","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","SubmitConfirmation","props","forceUpdate","useReducer","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","setFieldEventListener","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","useContext","DataContext","confirmationStateRef","useRef","submitStateRef","preventSubmitRef","undefined","validatePreventSubmit","useCallback","current","getParamsRef","setConfirmationState","state","window","requestAnimationFrame","keepPending","confirmationState","connectWithDialog","openState","onConfirm","submitHandler","onDecline","cancelHandler","onClose","_ref","triggeredBy","data","useMemo","removeUndefinedProps","setFocusOnButton","form","element","querySelector","focus","_ref2","preventSubmit","remove","sharedProviderParams","formElement","disabled","createElement","Fragment","HeightAnimation","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport DataContext from '../../DataContext/Context'\nimport SharedProvider from '../../../../shared/Provider'\nimport { ContextProps } from '../../../../shared/Context'\nimport { HeightAnimation } from '../../../../components'\nimport {\n DialogContentProps,\n DialogProps,\n} from '../../../../components/dialog/types'\nimport { EventStateObject } from '../../types'\nimport { removeUndefinedProps } from '../../../../shared/component-helper'\n\nexport type ConfirmationState =\n | 'idle'\n | 'readyToBeSubmitted'\n | 'submitInProgress'\n | 'submissionComplete'\n\nexport type ConfirmParams = {\n data: unknown\n confirmationState: ConfirmationState\n submitState: EventStateObject | undefined\n connectWithDialog: Pick<\n DialogProps & DialogContentProps,\n 'openState' | 'onConfirm' | 'onDecline' | 'onClose'\n >\n setConfirmationState: (state: ConfirmationState) => void\n submitHandler: () => void | Promise<void>\n cancelHandler: () => void | Promise<void>\n}\n\nexport type ConfirmProps = {\n preventSubmitWhen?: (params: ConfirmParams) => boolean\n onStateChange?: (params: ConfirmParams) => void | Promise<void>\n onSubmitResult?: (params: ConfirmParams) => void\n renderWithState?: (params: ConfirmParams) => React.ReactNode\n children?: React.ReactNode\n}\n\nfunction SubmitConfirmation(props: ConfirmProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n const {\n preventSubmitWhen,\n onStateChange,\n onSubmitResult,\n renderWithState,\n children,\n } = props\n\n const {\n setFormState,\n setFieldEventListener,\n handleSubmit: handleFinalSubmit,\n submitState,\n formElementRef,\n internalDataRef,\n } = useContext(DataContext)\n\n const confirmationStateRef = useRef<ConfirmationState>('idle')\n const submitStateRef = useRef<EventStateObject>()\n const preventSubmitRef = useRef<boolean>(undefined)\n\n const validatePreventSubmit = useCallback(() => {\n return (preventSubmitRef.current = preventSubmitWhen?.(\n getParamsRef.current()\n ))\n }, [preventSubmitWhen])\n\n const setConfirmationState = useCallback(\n async (state: ConfirmationState) => {\n confirmationStateRef.current = state\n await onStateChange?.(getParamsRef.current())\n if (typeof window !== 'undefined') {\n window.requestAnimationFrame(() => {\n switch (state) {\n case 'idle':\n setFormState('complete', { keepPending: false })\n break\n case 'readyToBeSubmitted':\n setFormState('pending', { keepPending: true })\n break\n case 'submitInProgress':\n setFormState('pending', { keepPending: true })\n break\n case 'submissionComplete':\n setFormState('complete', { keepPending: false })\n break\n default:\n forceUpdate()\n }\n })\n }\n },\n [onStateChange, setFormState]\n )\n\n const getParamsRef = useRef(() => {\n const confirmationState = confirmationStateRef.current\n\n const connectWithDialog = {\n openState: confirmationState === 'readyToBeSubmitted',\n onConfirm: submitHandler,\n onDecline: cancelHandler,\n onClose: ({ triggeredBy }) => {\n if (triggeredBy === 'keyboard') {\n cancelHandler()\n }\n },\n }\n\n return {\n data: internalDataRef?.current,\n confirmationState,\n setConfirmationState,\n submitHandler,\n cancelHandler,\n connectWithDialog,\n submitState: submitStateRef.current,\n } satisfies ConfirmParams\n })\n\n useMemo(() => {\n if (Object.keys(removeUndefinedProps(submitState) || {}).length > 0) {\n submitStateRef.current = {\n ...submitState,\n } as EventStateObject\n onSubmitResult?.(getParamsRef.current())\n }\n }, [submitState, onSubmitResult])\n\n const setFocusOnButton = useCallback(() => {\n try {\n const form = formElementRef.current\n const element = (form.querySelector('.dnb-forms-submit-button') ||\n form) as HTMLElement\n element.focus()\n } catch (e) {\n //\n }\n }, [formElementRef])\n\n const cancelHandler = useCallback(async () => {\n await setConfirmationState('idle')\n setFocusOnButton()\n }, [setFocusOnButton, setConfirmationState])\n\n const handleSubmit = useCallback(\n async ({ preventSubmit }) => {\n if (confirmationStateRef.current === 'submitInProgress') {\n return // stop here\n }\n\n if (validatePreventSubmit() !== true) {\n await setConfirmationState('submitInProgress')\n return // stop here\n }\n\n submitStateRef.current = undefined\n\n // Prevent the form form from being submitted\n preventSubmit()\n\n await setConfirmationState('readyToBeSubmitted')\n },\n [setConfirmationState, validatePreventSubmit]\n )\n setFieldEventListener?.(undefined, 'onSubmit', handleSubmit)\n\n const submitHandler = useCallback(async () => {\n setFieldEventListener?.(undefined, 'onSubmit', handleSubmit, {\n remove: true,\n })\n\n await setConfirmationState('submitInProgress')\n await handleFinalSubmit()\n await setConfirmationState('submissionComplete')\n\n setFocusOnButton()\n }, [\n handleFinalSubmit,\n handleSubmit,\n setFocusOnButton,\n setFieldEventListener,\n setConfirmationState,\n ])\n\n const sharedProviderParams: ContextProps = {\n formElement: {\n disabled: false,\n },\n }\n\n return (\n <>\n {children}\n\n <SharedProvider {...sharedProviderParams}>\n <HeightAnimation>\n {renderWithState?.(getParamsRef.current())}\n </HeightAnimation>\n </SharedProvider>\n </>\n )\n}\n\nSubmitConfirmation._supportsSpacingProps = 'children'\nexport default SubmitConfirmation\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"SubmitConfirmation.js","names":["_react","_interopRequireWildcard","require","_Context","_interopRequireDefault","_useEventListener","_Provider","_components","_componentHelper","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","SubmitConfirmation","props","forceUpdate","useReducer","preventSubmitWhen","onStateChange","onSubmitResult","renderWithState","children","setFormState","handleSubmit","handleFinalSubmit","submitState","formElementRef","internalDataRef","useContext","DataContext","confirmationStateRef","useRef","submitStateRef","preventSubmitRef","undefined","validatePreventSubmit","useCallback","current","getParamsRef","setConfirmationState","state","window","requestAnimationFrame","keepPending","confirmationState","connectWithDialog","openState","onConfirm","submitHandler","onDecline","cancelHandler","onClose","_ref","triggeredBy","data","useMemo","removeUndefinedProps","setFocusOnButton","form","element","querySelector","focus","_ref2","preventSubmit","removeEvent","useEventListener","sharedProviderParams","formElement","disabled","createElement","Fragment","HeightAnimation","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport DataContext from '../../DataContext/Context'\nimport useEventListener from '../../DataContext/Provider/useEventListener'\nimport SharedProvider from '../../../../shared/Provider'\nimport { ContextProps } from '../../../../shared/Context'\nimport { HeightAnimation } from '../../../../components'\nimport {\n DialogContentProps,\n DialogProps,\n} from '../../../../components/dialog/types'\nimport { EventStateObject } from '../../types'\nimport { removeUndefinedProps } from '../../../../shared/component-helper'\n\nexport type ConfirmationState =\n | 'idle'\n | 'readyToBeSubmitted'\n | 'submitInProgress'\n | 'submissionComplete'\n\nexport type ConfirmParams = {\n data: unknown\n confirmationState: ConfirmationState\n submitState: EventStateObject | undefined\n connectWithDialog: Pick<\n DialogProps & DialogContentProps,\n 'openState' | 'onConfirm' | 'onDecline' | 'onClose'\n >\n setConfirmationState: (state: ConfirmationState) => void\n submitHandler: () => void | Promise<void>\n cancelHandler: () => void | Promise<void>\n}\n\nexport type ConfirmProps = {\n preventSubmitWhen?: (params: ConfirmParams) => boolean\n onStateChange?: (params: ConfirmParams) => void | Promise<void>\n onSubmitResult?: (params: ConfirmParams) => void\n renderWithState?: (params: ConfirmParams) => React.ReactNode\n children?: React.ReactNode\n}\n\nfunction SubmitConfirmation(props: ConfirmProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n\n const {\n preventSubmitWhen,\n onStateChange,\n onSubmitResult,\n renderWithState,\n children,\n } = props\n\n const {\n setFormState,\n handleSubmit: handleFinalSubmit,\n submitState,\n formElementRef,\n internalDataRef,\n } = useContext(DataContext)\n\n const confirmationStateRef = useRef<ConfirmationState>('idle')\n const submitStateRef = useRef<EventStateObject>()\n const preventSubmitRef = useRef<boolean>(undefined)\n\n const validatePreventSubmit = useCallback(() => {\n return (preventSubmitRef.current = preventSubmitWhen?.(\n getParamsRef.current()\n ))\n }, [preventSubmitWhen])\n\n const setConfirmationState = useCallback(\n async (state: ConfirmationState) => {\n confirmationStateRef.current = state\n await onStateChange?.(getParamsRef.current())\n if (typeof window !== 'undefined') {\n window.requestAnimationFrame(() => {\n switch (state) {\n case 'idle':\n setFormState('complete', { keepPending: false })\n break\n case 'readyToBeSubmitted':\n setFormState('pending', { keepPending: true })\n break\n case 'submitInProgress':\n setFormState('pending', { keepPending: true })\n break\n case 'submissionComplete':\n setFormState('complete', { keepPending: false })\n break\n default:\n forceUpdate()\n }\n })\n }\n },\n [onStateChange, setFormState]\n )\n\n const getParamsRef = useRef(() => {\n const confirmationState = confirmationStateRef.current\n\n const connectWithDialog = {\n openState: confirmationState === 'readyToBeSubmitted',\n onConfirm: submitHandler,\n onDecline: cancelHandler,\n onClose: ({ triggeredBy }) => {\n if (triggeredBy === 'keyboard') {\n cancelHandler()\n }\n },\n }\n\n return {\n data: internalDataRef?.current,\n confirmationState,\n setConfirmationState,\n submitHandler,\n cancelHandler,\n connectWithDialog,\n submitState: submitStateRef.current,\n } satisfies ConfirmParams\n })\n\n useMemo(() => {\n if (Object.keys(removeUndefinedProps(submitState) || {}).length > 0) {\n submitStateRef.current = {\n ...submitState,\n } as EventStateObject\n onSubmitResult?.(getParamsRef.current())\n }\n }, [submitState, onSubmitResult])\n\n const setFocusOnButton = useCallback(() => {\n try {\n const form = formElementRef.current\n const element = (form.querySelector('.dnb-forms-submit-button') ||\n form) as HTMLElement\n element.focus()\n } catch (e) {\n //\n }\n }, [formElementRef])\n\n const cancelHandler = useCallback(async () => {\n await setConfirmationState('idle')\n setFocusOnButton()\n }, [setFocusOnButton, setConfirmationState])\n\n const handleSubmit = useCallback(\n async ({ preventSubmit }) => {\n if (confirmationStateRef.current === 'submitInProgress') {\n return // stop here\n }\n\n if (validatePreventSubmit() !== true) {\n await setConfirmationState('submitInProgress')\n return // stop here\n }\n\n submitStateRef.current = undefined\n\n // Prevent the form form from being submitted\n preventSubmit()\n\n await setConfirmationState('readyToBeSubmitted')\n },\n [setConfirmationState, validatePreventSubmit]\n )\n const { removeEvent } = useEventListener('onSubmit', handleSubmit)\n\n const submitHandler = useCallback(async () => {\n removeEvent()\n\n await setConfirmationState('submitInProgress')\n await handleFinalSubmit()\n await setConfirmationState('submissionComplete')\n\n setFocusOnButton()\n }, [\n removeEvent,\n setConfirmationState,\n handleFinalSubmit,\n setFocusOnButton,\n ])\n\n const sharedProviderParams: ContextProps = {\n formElement: {\n disabled: false,\n },\n }\n\n return (\n <>\n {children}\n\n <SharedProvider {...sharedProviderParams}>\n <HeightAnimation>\n {renderWithState?.(getParamsRef.current())}\n </HeightAnimation>\n </SharedProvider>\n </>\n )\n}\n\nSubmitConfirmation._supportsSpacingProps = 'children'\nexport default SubmitConfirmation\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -49,7 +49,9 @@ function ResetButton(props) {
|
|
|
49
49
|
} = (0, _react.useContext)(_ToolbarContext.default) || {};
|
|
50
50
|
const {
|
|
51
51
|
hasContentChanged
|
|
52
|
-
} = (0, _useHasContentChanged.default)(
|
|
52
|
+
} = (0, _useHasContentChanged.default)({
|
|
53
|
+
enabled: true
|
|
54
|
+
});
|
|
53
55
|
const buttonProps = (0, _types.omitDataValueReadWriteProps)(restProps);
|
|
54
56
|
const {
|
|
55
57
|
resetButton
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResetButton.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_useTranslation","_IterateItemContext","_ToolbarContext","_FieldBoundaryContext","_icons","_useHasContentChanged","_types","_excluded","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","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","restoreOriginalValue","useContext","IterateItemContext","setShowBoundaryErrors","FieldBoundaryContext","setShowError","ToolbarContext","hasContentChanged","useHasContentChanged","buttonProps","omitDataValueReadWriteProps","resetButton","useTranslation","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","React","useRef","handleClick","useCallback","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","classnames","variant","icon","reset","icon_position","disabled","createElement","tabIndex","ref","Dialog","title","onConfirm","Button","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from '../../Form/Isolation/useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged()\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ResetButton.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_useTranslation","_IterateItemContext","_ToolbarContext","_FieldBoundaryContext","_icons","_useHasContentChanged","_types","_excluded","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","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","restoreOriginalValue","useContext","IterateItemContext","setShowBoundaryErrors","FieldBoundaryContext","setShowError","ToolbarContext","hasContentChanged","useHasContentChanged","enabled","buttonProps","omitDataValueReadWriteProps","resetButton","useTranslation","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","React","useRef","handleClick","useCallback","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","classnames","variant","icon","reset","icon_position","disabled","createElement","tabIndex","ref","Dialog","title","onConfirm","Button","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from '../../Form/Isolation/useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged({ enabled: true })\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -25,7 +25,7 @@ function useIterateItemNo(_ref) {
|
|
|
25
25
|
optionalLabelSuffix
|
|
26
26
|
} = (0, _hooks2.useTranslation)().Field;
|
|
27
27
|
const labelSuffixText = (0, _react.useMemo)(() => {
|
|
28
|
-
if (required === false || typeof labelSuffix !== 'undefined') {
|
|
28
|
+
if (typeof labelSuffix !== 'boolean' && (required === false || typeof labelSuffix !== 'undefined')) {
|
|
29
29
|
return labelSuffix !== null && labelSuffix !== void 0 ? labelSuffix : optionalLabelSuffix;
|
|
30
30
|
}
|
|
31
31
|
return '';
|
|
@@ -49,4 +49,4 @@ function useIterateItemNo(_ref) {
|
|
|
49
49
|
return content;
|
|
50
50
|
}, [iterateIndex, labelProp, labelSuffixText, optionalLabelSuffix]);
|
|
51
51
|
}
|
|
52
|
-
//# sourceMappingURL=
|
|
52
|
+
//# sourceMappingURL=useIterateItemNo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useIterateItemNo.js","names":["_react","_interopRequireWildcard","require","_hooks","_hooks2","_componentHelper","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useIterateItemNo","_ref","label","labelProp","labelSuffix","required","index","iterateIndex","useItem","optionalLabelSuffix","useTranslation","Field","labelSuffixText","useMemo","content","undefined","convertJsxToString","replace","String","includes","React","isValidElement","createElement","Fragment"],"sources":["../../../../../../src/extensions/forms/Iterate/ItemNo/useIterateItemNo.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { useItem } from '../hooks'\nimport { useTranslation } from '../../hooks'\nimport { convertJsxToString } from '../../../../shared/component-helper'\n\nexport function useIterateItemNo({\n label: labelProp,\n labelSuffix,\n required,\n}) {\n const { index: iterateIndex } = useItem() || {}\n\n const { optionalLabelSuffix } = useTranslation().Field\n const labelSuffixText = useMemo(() => {\n if (\n typeof labelSuffix !== 'boolean' &&\n (required === false || typeof labelSuffix !== 'undefined')\n ) {\n return labelSuffix ?? optionalLabelSuffix\n }\n return ''\n }, [required, labelSuffix, optionalLabelSuffix])\n\n return useMemo(() => {\n let content = labelProp\n\n if (iterateIndex !== undefined) {\n content = convertJsxToString(labelProp).replace(\n '{itemNo}',\n String(iterateIndex + 1)\n )\n }\n\n if (labelSuffixText) {\n if (convertJsxToString(content).includes(optionalLabelSuffix)) {\n return content\n }\n\n if (typeof content === 'string') {\n return content + ' ' + labelSuffixText\n }\n\n if (React.isValidElement(content)) {\n return (\n <>\n {content}\n {' '}\n {labelSuffixText}\n </>\n )\n }\n }\n\n return content\n }, [iterateIndex, labelProp, labelSuffixText, optionalLabelSuffix])\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { IsolationProps } from '../../Form/Isolation';
|
|
2
3
|
import { AllProps as EditContainerProps } from '../EditContainer';
|
|
3
4
|
import { OnCommit, Path } from '../../types';
|
|
4
5
|
import { SpacingProps } from '../../../../shared/types';
|
|
6
|
+
import { JsonObject } from '../../utils';
|
|
5
7
|
type OnlyPathRequired = {
|
|
6
8
|
/**
|
|
7
9
|
* The path to the array to add the new item to.
|
|
@@ -83,7 +85,7 @@ export type Props = (OnlyPathRequired | OnlyItemPathRequired) & {
|
|
|
83
85
|
* The container contents.
|
|
84
86
|
*/
|
|
85
87
|
children: React.ReactNode;
|
|
86
|
-
}
|
|
88
|
+
} & Pick<IsolationProps<JsonObject>, 'dataReference'>;
|
|
87
89
|
export type AllProps = Props & SpacingProps & Omit<EditContainerProps, 'data'>;
|
|
88
90
|
declare function PushContainer(props: AllProps): import("react/jsx-runtime").JSX.Element;
|
|
89
91
|
declare namespace PushContainer {
|
|
@@ -24,7 +24,7 @@ var _Toolbar = _interopRequireDefault(require("../Toolbar"));
|
|
|
24
24
|
var _hooks2 = require("../../hooks");
|
|
25
25
|
var _Provider = require("../../DataContext/Provider");
|
|
26
26
|
var _structuredClone = _interopRequireDefault(require("@ungap/structured-clone"));
|
|
27
|
-
const _excluded = ["data", "defaultData", "isolatedData", "bubbleValidation", "preventUncommittedChanges", "requireCommit", "showResetButton", "path", "itemPath", "insertAt", "title", "required", "children", "openButton", "showOpenButtonWhen", "onCommit"],
|
|
27
|
+
const _excluded = ["data", "defaultData", "isolatedData", "bubbleValidation", "preventUncommittedChanges", "requireCommit", "dataReference", "showResetButton", "path", "itemPath", "insertAt", "title", "required", "children", "openButton", "showOpenButtonWhen", "onCommit"],
|
|
28
28
|
_excluded2 = ["title", "openButton", "showOpenButton", "showResetButton", "switchContainerModeRef", "cancelHandler", "containerModeRef", "rerenderPushContainer", "preventUncommittedChanges", "outerContext", "children"];
|
|
29
29
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
30
30
|
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); }
|
|
@@ -51,6 +51,7 @@ function PushContainer(props) {
|
|
|
51
51
|
bubbleValidation,
|
|
52
52
|
preventUncommittedChanges = props === null || props === void 0 ? void 0 : props.requireCommit,
|
|
53
53
|
requireCommit,
|
|
54
|
+
dataReference,
|
|
54
55
|
showResetButton,
|
|
55
56
|
path,
|
|
56
57
|
itemPath,
|
|
@@ -135,6 +136,7 @@ function PushContainer(props) {
|
|
|
135
136
|
data: data,
|
|
136
137
|
defaultData: defaultData,
|
|
137
138
|
required: required,
|
|
139
|
+
dataReference: dataReference,
|
|
138
140
|
emptyData: emptyData,
|
|
139
141
|
bubbleValidation: containerModeRef.current === 'view' ? false : bubbleValidation,
|
|
140
142
|
commitHandleRef: commitHandleRef,
|
|
@@ -207,13 +209,15 @@ function NewContainer(_ref3) {
|
|
|
207
209
|
} = (0, _useHandleStatus.default)({
|
|
208
210
|
outerContext,
|
|
209
211
|
preventUncommittedChanges,
|
|
210
|
-
error: pushContainerError
|
|
212
|
+
error: pushContainerError,
|
|
213
|
+
name: 'push-container'
|
|
211
214
|
});
|
|
212
215
|
(0, _react.useEffect)(() => {
|
|
213
216
|
rerenderPushContainer();
|
|
214
217
|
}, [containerMode, rerenderPushContainer]);
|
|
218
|
+
const visibilityContext = (0, _react.useContext)(_VisibilityContext.default);
|
|
215
219
|
switchContainerModeRef.current = switchContainerMode;
|
|
216
|
-
const isVisible = Boolean(!showOpenButton || containerMode === 'edit');
|
|
220
|
+
const isVisible = (visibilityContext === null || visibilityContext === void 0 ? void 0 : visibilityContext.isVisible) === false ? false : Boolean(!showOpenButton || containerMode === 'edit' || showCommitStatus);
|
|
217
221
|
const {
|
|
218
222
|
preventUncommittedChangesText
|
|
219
223
|
} = (0, _hooks2.useTranslation)().Isolation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushContainer.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Isolation","_useHandleStatus","_PushContainerContext","_IterateItemContext","_Context","_VisibilityContext","_useDataValue","_EditContainer","_Array","_OpenButton","_components","_hooks","_Toolbar","_hooks2","_Provider","_structuredClone","_excluded","_excluded2","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","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","PushContainer","props","forceUpdate","useReducer","outerContext","useContext","DataContext","data","outerData","required","requiredInherited","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","preventUncommittedChanges","requireCommit","showResetButton","path","itemPath","insertAt","title","children","openButton","showOpenButtonWhen","onCommit","rest","absolutePath","useItemPath","relativePath","usePath","commitHandleRef","useRef","switchContainerModeRef","containerModeRef","entries","moveValueToPath","getValueByPath","useDataValue","setNextContainerMode","useSwitchContainerMode","hasReachedLimit","setShowStatus","useArrayLimit","cancelHandler","useCallback","showOpenButton","newItemContextProps","switchContainerMode","current","useMemo","_Object$freeze","pushContainerItems","freeze","clearedData","isFrozen","emptyData","_data$pushContainerIt","_ref","firstItem","createElement","transformOnCommit","_ref2","slice","structuredClone","options","clearData","preventCommit","_switchContainerModeR","Provider","containerMode","withoutFlex","omitSectionPath","NewContainer","rerenderPushContainer","_ref3","_DoneButton","_CancelButton","_FormStatus","IterateItemContext","hasContentChanged","showStatus","showCommitStatus","useHandleStatus","error","pushContainerError","useEffect","isVisible","Boolean","preventUncommittedChangesText","useTranslation","Isolation","createButton","IteratePushContainer","restoreOriginalValue","toolbar","Consumer","context","Flex","Horizontal","gap","DoneButton","text","CancelButton","onClick","ResetButton","hidden","FormStatus","no_animation","show","keepInDOM","open","className","classnames","HeightAnimation","Error","OpenButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport Isolation from '../../Form/Isolation'\nimport useHandleStatus from '../../Form/Isolation/useHandleStatus'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport VisibilityContext from '../../Form/Visibility/VisibilityContext'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, {\n DoneButton,\n CancelButton,\n ResetButton,\n AllProps as EditContainerProps,\n} from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport {\n useArrayLimit,\n useItemPath,\n useSwitchContainerMode,\n} from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { usePath, useTranslation } from '../../hooks'\nimport { clearedData } from '../../DataContext/Provider'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So it's a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\ntype OnlyPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath?: Path\n}\n\ntype OnlyItemPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path?: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath: Path\n}\n\nexport type Props = (OnlyPathRequired | OnlyItemPathRequired) & {\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * If the fields inside the container are required.\n */\n required?: boolean\n\n /**\n * The index to insert the new item at.\n */\n insertAt?: number\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * If the container should be committed before the form is submitted.\n */\n /**\n * @deprecated – Replaced with preventUncommittedChanges, requireCommit will be removed in v11.\n */\n requireCommit?: boolean\n\n /**\n * Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.\n */\n preventUncommittedChanges?: boolean\n\n /**\n * Show a button to clear the PushContainer data.\n */\n showResetButton?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props &\n SpacingProps &\n Omit<EditContainerProps, 'data'>\n\nfunction PushContainer(props: AllProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const outerContext = useContext(DataContext)\n const { data: outerData, required: requiredInherited } = outerContext\n\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n preventUncommittedChanges = props?.requireCommit,\n requireCommit, // eslint-disable-line @typescript-eslint/no-unused-vars\n showResetButton,\n path,\n itemPath,\n insertAt,\n title,\n required = requiredInherited,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const { absolutePath } = useItemPath(itemPath)\n const { path: relativePath } = usePath({ path, itemPath })\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const containerModeRef = useRef<ContainerMode>()\n const {\n value: entries = [],\n moveValueToPath,\n getValueByPath,\n } = useDataValue<Array<unknown>>(path || itemPath)\n\n const { setNextContainerMode } = useSwitchContainerMode(\n path || absolutePath\n )\n const { hasReachedLimit, setShowStatus } = useArrayLimit(\n path || absolutePath\n )\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n itemPath,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [Object.freeze(dataProp) ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n if (outerData) {\n // Use assign to avoid mutating the original data object.\n // Because changes from outside should only silently be applied to the\n // data object, without triggering a rerender.\n // This way \"pushContainerItems\" will not clear/unset changed data.\n if (!Object.isFrozen(data)) {\n Object.assign(data || {}, outerData)\n }\n }\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [Object.freeze(defaultDataProp ?? clearedData)],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? defaultDataProp ?? clearedData],\n }\n },\n [dataProp, defaultDataProp, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n required={required}\n emptyData={emptyData}\n bubbleValidation={\n containerModeRef.current === 'view' ? false : bubbleValidation\n }\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(\n absolutePath || relativePath,\n typeof insertAt === 'number'\n ? [\n ...entries.slice(0, insertAt),\n ...pushContainerItems,\n ...entries.slice(insertAt),\n ]\n : [...entries, ...pushContainerItems],\n absolutePath ? structuredClone(getValueByPath('/')) : {}\n )\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n withoutFlex\n omitSectionPath\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n containerModeRef={containerModeRef}\n rerenderPushContainer={forceUpdate}\n preventUncommittedChanges={preventUncommittedChanges}\n showResetButton={showResetButton}\n outerContext={outerContext}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n showResetButton,\n switchContainerModeRef,\n cancelHandler,\n containerModeRef,\n rerenderPushContainer,\n preventUncommittedChanges,\n outerContext,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n containerModeRef.current = containerMode\n\n const { hasContentChanged, showStatus: showCommitStatus } =\n useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error: pushContainerError,\n })\n\n useEffect(() => {\n rerenderPushContainer()\n }, [containerMode, rerenderPushContainer])\n\n switchContainerModeRef.current = switchContainerMode\n const isVisible = Boolean(!showOpenButton || containerMode === 'edit')\n const { preventUncommittedChangesText } = useTranslation().Isolation\n const { createButton } = useTranslation().IteratePushContainer\n const { clearData } = useContext(DataContext) || {}\n const restoreOriginalValue = useCallback(() => {\n clearData?.()\n }, [clearData])\n\n const toolbar = (\n <Toolbar>\n <IterateItemContext.Consumer>\n {(context) => {\n const newItemContextProps = {\n ...context,\n restoreOriginalValue,\n }\n return (\n <IterateItemContext.Provider value={newItemContextProps}>\n <Flex.Horizontal gap=\"large\">\n <DoneButton text={createButton} />\n {showOpenButton && (\n <CancelButton onClick={cancelHandler} />\n )}\n {(preventUncommittedChanges || showResetButton) && (\n <ResetButton\n // Use hidden in order to render the useHasContentChanged hook\n hidden={!(showResetButton || showCommitStatus)}\n />\n )}\n </Flex.Horizontal>\n\n {preventUncommittedChanges && showCommitStatus && (\n <FormStatus no_animation={false} show={hasContentChanged}>\n {preventUncommittedChangesText}\n </FormStatus>\n )}\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <VisibilityContext.Provider value={{ isVisible, keepInDOM: false }}>\n <EditContainer\n open={isVisible}\n title={title}\n toolbar={toolbar}\n {...rest}\n // Add the class by default, because we don't get a \"hasSubmitError\" trigger\n className={classnames(\n 'dnb-forms-section-block--error',\n rest.className\n )}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </VisibilityContext.Provider>\n )\n}\n\nconst pushContainerError = new Error('Iterate.PushContainer')\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"PushContainer.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Isolation","_useHandleStatus","_PushContainerContext","_IterateItemContext","_Context","_VisibilityContext","_useDataValue","_EditContainer","_Array","_OpenButton","_components","_hooks","_Toolbar","_hooks2","_Provider","_structuredClone","_excluded","_excluded2","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","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","PushContainer","props","forceUpdate","useReducer","outerContext","useContext","DataContext","data","outerData","required","requiredInherited","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","preventUncommittedChanges","requireCommit","dataReference","showResetButton","path","itemPath","insertAt","title","children","openButton","showOpenButtonWhen","onCommit","rest","absolutePath","useItemPath","relativePath","usePath","commitHandleRef","useRef","switchContainerModeRef","containerModeRef","entries","moveValueToPath","getValueByPath","useDataValue","setNextContainerMode","useSwitchContainerMode","hasReachedLimit","setShowStatus","useArrayLimit","cancelHandler","useCallback","showOpenButton","newItemContextProps","switchContainerMode","current","useMemo","_Object$freeze","pushContainerItems","freeze","clearedData","isFrozen","emptyData","_data$pushContainerIt","_ref","firstItem","createElement","transformOnCommit","_ref2","slice","structuredClone","options","clearData","preventCommit","_switchContainerModeR","Provider","containerMode","withoutFlex","omitSectionPath","NewContainer","rerenderPushContainer","_ref3","_DoneButton","_CancelButton","_FormStatus","IterateItemContext","hasContentChanged","showStatus","showCommitStatus","useHandleStatus","error","pushContainerError","name","useEffect","visibilityContext","VisibilityContext","isVisible","Boolean","preventUncommittedChangesText","useTranslation","Isolation","createButton","IteratePushContainer","restoreOriginalValue","toolbar","Consumer","context","Flex","Horizontal","gap","DoneButton","text","CancelButton","onClick","ResetButton","hidden","FormStatus","no_animation","show","keepInDOM","open","className","classnames","HeightAnimation","Error","OpenButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport Isolation, { IsolationProps } from '../../Form/Isolation'\nimport useHandleStatus from '../../Form/Isolation/useHandleStatus'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport VisibilityContext from '../../Form/Visibility/VisibilityContext'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, {\n DoneButton,\n CancelButton,\n ResetButton,\n AllProps as EditContainerProps,\n} from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport {\n useArrayLimit,\n useItemPath,\n useSwitchContainerMode,\n} from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { usePath, useTranslation } from '../../hooks'\nimport { JsonObject } from '../../utils'\nimport { clearedData } from '../../DataContext/Provider'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So it's a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\ntype OnlyPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath?: Path\n}\n\ntype OnlyItemPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path?: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath: Path\n}\n\nexport type Props = (OnlyPathRequired | OnlyItemPathRequired) & {\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * If the fields inside the container are required.\n */\n required?: boolean\n\n /**\n * The index to insert the new item at.\n */\n insertAt?: number\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * If the container should be committed before the form is submitted.\n */\n /**\n * @deprecated – Replaced with preventUncommittedChanges, requireCommit will be removed in v11.\n */\n requireCommit?: boolean\n\n /**\n * Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.\n */\n preventUncommittedChanges?: boolean\n\n /**\n * Show a button to clear the PushContainer data.\n */\n showResetButton?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n} & Pick<IsolationProps<JsonObject>, 'dataReference'>\n\nexport type AllProps = Props &\n SpacingProps &\n Omit<EditContainerProps, 'data'>\n\nfunction PushContainer(props: AllProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const outerContext = useContext(DataContext)\n const { data: outerData, required: requiredInherited } = outerContext\n\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n preventUncommittedChanges = props?.requireCommit,\n requireCommit, // eslint-disable-line @typescript-eslint/no-unused-vars\n dataReference,\n showResetButton,\n path,\n itemPath,\n insertAt,\n title,\n required = requiredInherited,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const { absolutePath } = useItemPath(itemPath)\n const { path: relativePath } = usePath({ path, itemPath })\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const containerModeRef = useRef<ContainerMode>()\n const {\n value: entries = [],\n moveValueToPath,\n getValueByPath,\n } = useDataValue<Array<unknown>>(path || itemPath)\n\n const { setNextContainerMode } = useSwitchContainerMode(\n path || absolutePath\n )\n const { hasReachedLimit, setShowStatus } = useArrayLimit(\n path || absolutePath\n )\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n itemPath,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [Object.freeze(dataProp) ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n if (outerData) {\n // Use assign to avoid mutating the original data object.\n // Because changes from outside should only silently be applied to the\n // data object, without triggering a rerender.\n // This way \"pushContainerItems\" will not clear/unset changed data.\n if (!Object.isFrozen(data)) {\n Object.assign(data || {}, outerData)\n }\n }\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [Object.freeze(defaultDataProp ?? clearedData)],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? defaultDataProp ?? clearedData],\n }\n },\n [dataProp, defaultDataProp, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n required={required}\n dataReference={dataReference}\n emptyData={emptyData}\n bubbleValidation={\n containerModeRef.current === 'view' ? false : bubbleValidation\n }\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(\n absolutePath || relativePath,\n typeof insertAt === 'number'\n ? [\n ...entries.slice(0, insertAt),\n ...pushContainerItems,\n ...entries.slice(insertAt),\n ]\n : [...entries, ...pushContainerItems],\n absolutePath ? structuredClone(getValueByPath('/')) : {}\n )\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n withoutFlex\n omitSectionPath\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n containerModeRef={containerModeRef}\n rerenderPushContainer={forceUpdate}\n preventUncommittedChanges={preventUncommittedChanges}\n showResetButton={showResetButton}\n outerContext={outerContext}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n showResetButton,\n switchContainerModeRef,\n cancelHandler,\n containerModeRef,\n rerenderPushContainer,\n preventUncommittedChanges,\n outerContext,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n containerModeRef.current = containerMode\n\n const { hasContentChanged, showStatus: showCommitStatus } =\n useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error: pushContainerError,\n name: 'push-container',\n })\n\n useEffect(() => {\n rerenderPushContainer()\n }, [containerMode, rerenderPushContainer])\n\n const visibilityContext = useContext(VisibilityContext)\n switchContainerModeRef.current = switchContainerMode\n const isVisible =\n visibilityContext?.isVisible === false\n ? false\n : Boolean(\n !showOpenButton || containerMode === 'edit' || showCommitStatus\n )\n const { preventUncommittedChangesText } = useTranslation().Isolation\n const { createButton } = useTranslation().IteratePushContainer\n const { clearData } = useContext(DataContext) || {}\n const restoreOriginalValue = useCallback(() => {\n clearData?.()\n }, [clearData])\n\n const toolbar = (\n <Toolbar>\n <IterateItemContext.Consumer>\n {(context) => {\n const newItemContextProps = {\n ...context,\n restoreOriginalValue,\n }\n return (\n <IterateItemContext.Provider value={newItemContextProps}>\n <Flex.Horizontal gap=\"large\">\n <DoneButton text={createButton} />\n {showOpenButton && (\n <CancelButton onClick={cancelHandler} />\n )}\n {(preventUncommittedChanges || showResetButton) && (\n <ResetButton\n // Use hidden in order to render the useHasContentChanged hook\n hidden={!(showResetButton || showCommitStatus)}\n />\n )}\n </Flex.Horizontal>\n\n {preventUncommittedChanges && showCommitStatus && (\n <FormStatus no_animation={false} show={hasContentChanged}>\n {preventUncommittedChangesText}\n </FormStatus>\n )}\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <VisibilityContext.Provider value={{ isVisible, keepInDOM: false }}>\n <EditContainer\n open={isVisible}\n title={title}\n toolbar={toolbar}\n {...rest}\n // Add the class by default, because we don't get a \"hasSubmitError\" trigger\n className={classnames(\n 'dnb-forms-section-block--error',\n rest.className\n )}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </VisibilityContext.Provider>\n )\n}\n\nconst pushContainerError = new Error('Iterate.PushContainer')\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -81,6 +81,11 @@ const PushContainerProperties = exports.PushContainerProperties = {
|
|
|
81
81
|
type: 'React.Node',
|
|
82
82
|
status: 'optional'
|
|
83
83
|
},
|
|
84
|
+
dataReference: {
|
|
85
|
+
doc: 'Provide a reference by using `Form.Isolation.createDataReference.`',
|
|
86
|
+
type: 'IsolationDataReference',
|
|
87
|
+
status: 'optional'
|
|
88
|
+
},
|
|
84
89
|
children: {
|
|
85
90
|
doc: 'The container contents.',
|
|
86
91
|
type: 'React.Node',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushContainerDocs.js","names":["_IsolationDocs","require","PushContainerProperties","exports","path","doc","type","status","itemPath","insertAt","title","data","defaultData","isolatedData","required","bubbleValidation","preventUncommittedChanges","showResetButton","openButton","showOpenButtonWhen","variant","toolbar","children","PushContainerEvents","onCommit","IsolationEvents"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { IsolationEvents } from '../../Form/Isolation/IsolationDocs'\n\nexport const PushContainerProperties: PropertiesTableProps = {\n path: {\n doc: 'The path to the array to add the new item to.',\n type: 'string',\n status: 'required',\n },\n itemPath: {\n doc: 'The path to the item in a nested array, to add the new item to.',\n type: 'string',\n status: 'optional',\n },\n insertAt: {\n doc: 'The index to insert the new item at.',\n type: 'number',\n status: 'optional',\n },\n title: {\n doc: 'The title of the container.',\n type: 'React.Node',\n status: 'optional',\n },\n data: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`. Use `defaultData` when possible.',\n type: ['object', 'array'],\n status: 'optional',\n },\n defaultData: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`',\n type: ['object', 'array'],\n status: 'optional',\n },\n isolatedData: {\n doc: 'Provide additional data that will be put into the root of the isolated data context (parallel to `/pushContainerItems/0`).',\n type: 'object',\n status: 'optional',\n },\n required: {\n doc: 'If the fields inside the container are required.',\n type: 'boolean',\n status: 'optional',\n },\n bubbleValidation: {\n doc: 'Prevent the form from being submitted when there are fields with errors inside the PushContainer.',\n type: 'boolean',\n status: 'optional',\n },\n preventUncommittedChanges: {\n doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',\n type: 'boolean',\n status: 'optional',\n },\n showResetButton: {\n doc: 'Show a button to clear the PushContainer data.',\n type: 'boolean',\n status: 'optional',\n },\n openButton: {\n doc: 'The button to open container.',\n type: 'React.Node',\n status: 'optional',\n },\n showOpenButtonWhen: {\n doc: 'Define when the \"open button\" should be shown. Should be a function that returns a boolean.',\n type: 'function',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the variant of the container. Can be `outline`, `filled` or `basic`. Defaults to `outline`.',\n type: 'string',\n status: 'optional',\n },\n toolbar: {\n doc: 'A custom toolbar to be shown below the container.',\n type: 'React.Node',\n status: 'optional',\n },\n children: {\n doc: 'The container contents.',\n type: 'React.Node',\n status: 'required',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const PushContainerEvents: PropertiesTableProps = {\n onCommit: IsolationEvents.onCommit,\n}\n"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAEO,MAAMC,uBAA6C,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EAC3DE,IAAI,EAAE;IACJC,GAAG,EAAE,+CAA+C;IACpDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,QAAQ,EAAE;IACRH,GAAG,EAAE,iEAAiE;IACtEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,QAAQ,EAAE;IACRJ,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDI,IAAI,EAAE;IACJN,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDK,WAAW,EAAE;IACXP,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDM,YAAY,EAAE;IACZR,GAAG,EAAE,4HAA4H;IACjIC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,QAAQ,EAAE;IACRT,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDQ,gBAAgB,EAAE;IAChBV,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDS,yBAAyB,EAAE;IACzBX,GAAG,EAAE,oJAAoJ;IACzJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,eAAe,EAAE;IACfZ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,UAAU,EAAE;IACVb,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDY,kBAAkB,EAAE;IAClBd,GAAG,EAAE,6FAA6F;IAClGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDa,OAAO,EAAE;IACPf,GAAG,EAAE,qGAAqG;IAC1GC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDc,OAAO,EAAE;IACPhB,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDe,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"PushContainerDocs.js","names":["_IsolationDocs","require","PushContainerProperties","exports","path","doc","type","status","itemPath","insertAt","title","data","defaultData","isolatedData","required","bubbleValidation","preventUncommittedChanges","showResetButton","openButton","showOpenButtonWhen","variant","toolbar","dataReference","children","PushContainerEvents","onCommit","IsolationEvents"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { IsolationEvents } from '../../Form/Isolation/IsolationDocs'\n\nexport const PushContainerProperties: PropertiesTableProps = {\n path: {\n doc: 'The path to the array to add the new item to.',\n type: 'string',\n status: 'required',\n },\n itemPath: {\n doc: 'The path to the item in a nested array, to add the new item to.',\n type: 'string',\n status: 'optional',\n },\n insertAt: {\n doc: 'The index to insert the new item at.',\n type: 'number',\n status: 'optional',\n },\n title: {\n doc: 'The title of the container.',\n type: 'React.Node',\n status: 'optional',\n },\n data: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`. Use `defaultData` when possible.',\n type: ['object', 'array'],\n status: 'optional',\n },\n defaultData: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`',\n type: ['object', 'array'],\n status: 'optional',\n },\n isolatedData: {\n doc: 'Provide additional data that will be put into the root of the isolated data context (parallel to `/pushContainerItems/0`).',\n type: 'object',\n status: 'optional',\n },\n required: {\n doc: 'If the fields inside the container are required.',\n type: 'boolean',\n status: 'optional',\n },\n bubbleValidation: {\n doc: 'Prevent the form from being submitted when there are fields with errors inside the PushContainer.',\n type: 'boolean',\n status: 'optional',\n },\n preventUncommittedChanges: {\n doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',\n type: 'boolean',\n status: 'optional',\n },\n showResetButton: {\n doc: 'Show a button to clear the PushContainer data.',\n type: 'boolean',\n status: 'optional',\n },\n openButton: {\n doc: 'The button to open container.',\n type: 'React.Node',\n status: 'optional',\n },\n showOpenButtonWhen: {\n doc: 'Define when the \"open button\" should be shown. Should be a function that returns a boolean.',\n type: 'function',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the variant of the container. Can be `outline`, `filled` or `basic`. Defaults to `outline`.',\n type: 'string',\n status: 'optional',\n },\n toolbar: {\n doc: 'A custom toolbar to be shown below the container.',\n type: 'React.Node',\n status: 'optional',\n },\n dataReference: {\n doc: 'Provide a reference by using `Form.Isolation.createDataReference.`',\n type: 'IsolationDataReference',\n status: 'optional',\n },\n children: {\n doc: 'The container contents.',\n type: 'React.Node',\n status: 'required',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const PushContainerEvents: PropertiesTableProps = {\n onCommit: IsolationEvents.onCommit,\n}\n"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAEO,MAAMC,uBAA6C,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EAC3DE,IAAI,EAAE;IACJC,GAAG,EAAE,+CAA+C;IACpDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,QAAQ,EAAE;IACRH,GAAG,EAAE,iEAAiE;IACtEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,QAAQ,EAAE;IACRJ,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDI,IAAI,EAAE;IACJN,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDK,WAAW,EAAE;IACXP,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDM,YAAY,EAAE;IACZR,GAAG,EAAE,4HAA4H;IACjIC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,QAAQ,EAAE;IACRT,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDQ,gBAAgB,EAAE;IAChBV,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDS,yBAAyB,EAAE;IACzBX,GAAG,EAAE,oJAAoJ;IACzJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,eAAe,EAAE;IACfZ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,UAAU,EAAE;IACVb,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDY,kBAAkB,EAAE;IAClBd,GAAG,EAAE,6FAA6F;IAClGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDa,OAAO,EAAE;IACPf,GAAG,EAAE,qGAAqG;IAC1GC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDc,OAAO,EAAE;IACPhB,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDe,aAAa,EAAE;IACbjB,GAAG,EAAE,oEAAoE;IACzEC,IAAI,EAAE,wBAAwB;IAC9BC,MAAM,EAAE;EACV,CAAC;EACDgB,QAAQ,EAAE;IACRlB,GAAG,EAAE,yBAAyB;IAC9BC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAEM,MAAMiB,mBAAyC,GAAArB,OAAA,CAAAqB,mBAAA,GAAG;EACvDC,QAAQ,EAAEC,8BAAe,CAACD;AAC5B,CAAC","ignoreList":[]}
|