@dnb/eufemia 10.51.2 → 10.52.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +59 -0
- package/cjs/components/autocomplete/Autocomplete.js +4 -0
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +2 -2
- package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
- package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -2
- package/cjs/components/dialog/style/themes/dnb-dialog-theme-sbanken.css +6 -0
- package/cjs/components/dialog/style/themes/dnb-dialog-theme-sbanken.min.css +1 -1
- package/cjs/components/dialog/style/themes/dnb-dialog-theme-sbanken.scss +7 -0
- package/cjs/components/form-status/FormStatus.d.ts +5 -0
- package/cjs/components/icon/Icon.d.ts +2 -1
- package/cjs/components/icon/Icon.js.map +1 -1
- package/cjs/components/logo/Logo.js.map +1 -1
- package/cjs/components/number-format/NumberUtils.d.ts +14 -0
- package/cjs/components/number-format/NumberUtils.js +7 -8
- package/cjs/components/number-format/NumberUtils.js.map +1 -1
- package/cjs/components/skeleton/style/dnb-skeleton.css +3 -1
- package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/cjs/components/skeleton/style/dnb-skeleton.scss +4 -2
- package/cjs/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +21 -2
- package/cjs/extensions/forms/DataContext/Context.d.ts +5 -0
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +12 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +86 -77
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +6 -1
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +112 -23
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +5 -0
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +3 -1
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +28 -16
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +25 -0
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -3
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +4 -0
- package/cjs/extensions/forms/Form/Isolation/Isolation.js +26 -0
- package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +5 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Snapshot/Snapshot.d.ts +12 -0
- package/cjs/extensions/forms/Form/Snapshot/Snapshot.js +45 -0
- package/cjs/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -0
- package/cjs/extensions/forms/Form/Snapshot/SnapshotContext.d.ts +12 -0
- package/cjs/extensions/forms/Form/Snapshot/SnapshotContext.js +12 -0
- package/cjs/extensions/forms/Form/Snapshot/SnapshotContext.js.map +1 -0
- package/cjs/extensions/forms/Form/Snapshot/SnapshotDocs.d.ts +3 -0
- package/cjs/extensions/forms/Form/Snapshot/SnapshotDocs.js +17 -0
- package/cjs/extensions/forms/Form/Snapshot/SnapshotDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/Snapshot/index.d.ts +2 -0
- package/cjs/extensions/forms/Form/Snapshot/index.js +27 -0
- package/cjs/extensions/forms/Form/Snapshot/index.js.map +1 -0
- package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +2 -2
- package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +10 -2
- package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +10 -10
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/useVisibility.js +26 -14
- package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/clearData.js +2 -5
- package/cjs/extensions/forms/Form/data-context/clearData.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/useData.js +3 -2
- package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/useValidation.js.map +1 -1
- package/cjs/extensions/forms/Form/index.d.ts +2 -0
- package/cjs/extensions/forms/Form/index.js +14 -0
- package/cjs/extensions/forms/Form/index.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/Array.js +3 -1
- package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js +30 -17
- package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +5 -6
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ItemNo/ItemNo.d.ts +9 -0
- package/cjs/extensions/forms/Iterate/ItemNo/ItemNo.js +33 -0
- package/cjs/extensions/forms/Iterate/ItemNo/ItemNo.js.map +1 -0
- package/cjs/extensions/forms/Iterate/ItemNo/index.d.ts +2 -0
- package/cjs/extensions/forms/Iterate/ItemNo/index.js +27 -0
- package/cjs/extensions/forms/Iterate/ItemNo/index.js.map +1 -0
- package/cjs/extensions/forms/Iterate/IterateItemContext.d.ts +1 -0
- package/cjs/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +18 -2
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +44 -18
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +24 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +5 -6
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/index.d.ts +1 -0
- package/cjs/extensions/forms/Iterate/index.js +7 -0
- package/cjs/extensions/forms/Iterate/index.js.map +1 -1
- package/cjs/extensions/forms/Tools/Log.d.ts +7 -2
- package/cjs/extensions/forms/Tools/Log.js +36 -4
- package/cjs/extensions/forms/Tools/Log.js.map +1 -1
- package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
- package/cjs/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -2
- package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +3 -1
- package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -0
- package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/ValueDocs.js +5 -0
- package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
- package/cjs/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +78 -31
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +1 -2
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +0 -7
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.d.ts +2 -1
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js +11 -6
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +14 -3
- package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Step/Step.js +4 -4
- package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/cjs/extensions/forms/Wizard/hooks/useStep.js +4 -4
- package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +77 -58
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +12 -12
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +24 -24
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-GB.d.ts +6 -1
- package/cjs/extensions/forms/constants/locales/en-GB.js +9 -4
- package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-US.d.ts +6 -1
- package/cjs/extensions/forms/constants/locales/en-US.js +2 -1
- package/cjs/extensions/forms/constants/locales/en-US.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/index.d.ts +12 -2
- package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +6 -1
- package/cjs/extensions/forms/constants/locales/nb-NO.js +9 -4
- package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataContext.d.ts +6 -0
- package/cjs/extensions/forms/hooks/useDataContext.js +31 -0
- package/cjs/extensions/forms/hooks/useDataContext.js.map +1 -0
- package/cjs/extensions/forms/hooks/useExternalValue.js +12 -6
- package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.js +82 -43
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/useSnapshot.d.ts +9 -0
- package/cjs/extensions/forms/hooks/useSnapshot.js +87 -0
- package/cjs/extensions/forms/hooks/useSnapshot.js.map +1 -0
- package/cjs/extensions/forms/hooks/useValueProps.js +6 -1
- package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/cjs/extensions/forms/types.d.ts +4 -0
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/payment-card/style/dnb-payment-card.css +3 -2
- package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/component-helper.js +1 -1
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +3 -1
- package/cjs/style/dnb-ui-components.min.css +1 -1
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +3 -2
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +3 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/properties.d.ts +1 -0
- package/cjs/style/themes/theme-eiendom/properties.js +3 -2
- package/cjs/style/themes/theme-eiendom/properties.js.map +1 -1
- package/cjs/style/themes/theme-sbanken/properties.d.ts +1 -0
- package/cjs/style/themes/theme-sbanken/properties.js +3 -2
- package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
- package/cjs/style/themes/theme-sbanken/properties.scss +9 -8
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +20 -4
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +3 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +11 -3
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +3 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/properties.d.ts +1 -0
- package/cjs/style/themes/theme-ui/properties.js +3 -2
- package/cjs/style/themes/theme-ui/properties.js.map +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +3 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +3 -2
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/components/autocomplete/Autocomplete.js +4 -0
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +2 -2
- package/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
- package/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -2
- package/components/dialog/style/themes/dnb-dialog-theme-sbanken.css +6 -0
- package/components/dialog/style/themes/dnb-dialog-theme-sbanken.min.css +1 -1
- package/components/dialog/style/themes/dnb-dialog-theme-sbanken.scss +7 -0
- package/components/form-status/FormStatus.d.ts +5 -0
- package/components/icon/Icon.d.ts +2 -1
- package/components/icon/Icon.js.map +1 -1
- package/components/logo/Logo.js.map +1 -1
- package/components/number-format/NumberUtils.d.ts +14 -0
- package/components/number-format/NumberUtils.js +7 -8
- package/components/number-format/NumberUtils.js.map +1 -1
- package/components/skeleton/style/dnb-skeleton.css +3 -1
- package/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/components/skeleton/style/dnb-skeleton.scss +4 -2
- package/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +21 -2
- package/es/components/autocomplete/Autocomplete.js +4 -0
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.css +2 -2
- package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.min.css +1 -1
- package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -2
- package/es/components/dialog/style/themes/dnb-dialog-theme-sbanken.css +6 -0
- package/es/components/dialog/style/themes/dnb-dialog-theme-sbanken.min.css +1 -1
- package/es/components/dialog/style/themes/dnb-dialog-theme-sbanken.scss +7 -0
- package/es/components/form-status/FormStatus.d.ts +5 -0
- package/es/components/icon/Icon.d.ts +2 -1
- package/es/components/icon/Icon.js.map +1 -1
- package/es/components/logo/Logo.js.map +1 -1
- package/es/components/number-format/NumberUtils.d.ts +14 -0
- package/es/components/number-format/NumberUtils.js +7 -8
- package/es/components/number-format/NumberUtils.js.map +1 -1
- package/es/components/skeleton/style/dnb-skeleton.css +3 -1
- package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/es/components/skeleton/style/dnb-skeleton.scss +4 -2
- package/es/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +21 -2
- package/es/extensions/forms/DataContext/Context.d.ts +5 -0
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.d.ts +12 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +84 -75
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +6 -1
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +109 -23
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +5 -0
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +3 -1
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +28 -16
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.d.ts +2 -0
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +18 -0
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -0
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -3
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/Isolation.d.ts +4 -0
- package/es/extensions/forms/Form/Isolation/Isolation.js +28 -3
- package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolationDocs.js +5 -0
- package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
- package/es/extensions/forms/Form/Snapshot/Snapshot.d.ts +12 -0
- package/es/extensions/forms/Form/Snapshot/Snapshot.js +36 -0
- package/es/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -0
- package/es/extensions/forms/Form/Snapshot/SnapshotContext.d.ts +12 -0
- package/es/extensions/forms/Form/Snapshot/SnapshotContext.js +6 -0
- package/es/extensions/forms/Form/Snapshot/SnapshotContext.js.map +1 -0
- package/es/extensions/forms/Form/Snapshot/SnapshotDocs.d.ts +3 -0
- package/es/extensions/forms/Form/Snapshot/SnapshotDocs.js +9 -0
- package/es/extensions/forms/Form/Snapshot/SnapshotDocs.js.map +1 -0
- package/es/extensions/forms/Form/Snapshot/index.d.ts +2 -0
- package/es/extensions/forms/Form/Snapshot/index.js +3 -0
- package/es/extensions/forms/Form/Snapshot/index.js.map +1 -0
- package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +2 -2
- package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/Visibility.d.ts +10 -2
- package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +10 -10
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/useVisibility.js +26 -14
- package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/es/extensions/forms/Form/data-context/clearData.js +2 -5
- package/es/extensions/forms/Form/data-context/clearData.js.map +1 -1
- package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
- package/es/extensions/forms/Form/data-context/useData.js +1 -0
- package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/es/extensions/forms/Form/data-context/useValidation.js.map +1 -1
- package/es/extensions/forms/Form/index.d.ts +2 -0
- package/es/extensions/forms/Form/index.js +2 -0
- package/es/extensions/forms/Form/index.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/Array.js +3 -1
- package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +31 -18
- package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +5 -6
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/ItemNo/ItemNo.d.ts +9 -0
- package/es/extensions/forms/Iterate/ItemNo/ItemNo.js +22 -0
- package/es/extensions/forms/Iterate/ItemNo/ItemNo.js.map +1 -0
- package/es/extensions/forms/Iterate/ItemNo/index.d.ts +2 -0
- package/es/extensions/forms/Iterate/ItemNo/index.js +3 -0
- package/es/extensions/forms/Iterate/ItemNo/index.js.map +1 -0
- package/es/extensions/forms/Iterate/IterateItemContext.d.ts +1 -0
- package/es/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +18 -2
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +43 -16
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +24 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +5 -6
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/index.d.ts +1 -0
- package/es/extensions/forms/Iterate/index.js +1 -0
- package/es/extensions/forms/Iterate/index.js.map +1 -1
- package/es/extensions/forms/Tools/Log.d.ts +7 -2
- package/es/extensions/forms/Tools/Log.js +26 -3
- package/es/extensions/forms/Tools/Log.js.map +1 -1
- package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
- package/es/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -2
- package/es/extensions/forms/Value/SummaryList/SummaryList.js +3 -1
- package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -0
- package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
- package/es/extensions/forms/Value/ValueDocs.js +5 -0
- package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/es/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
- package/es/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainer.js +67 -23
- package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +1 -2
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +0 -6
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/useStepAnimation.d.ts +2 -1
- package/es/extensions/forms/Wizard/Container/useStepAnimation.js +12 -7
- package/es/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -1
- package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +14 -3
- package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/es/extensions/forms/Wizard/Step/Step.js +4 -4
- package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/es/extensions/forms/Wizard/hooks/useStep.js +4 -4
- package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +77 -58
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +12 -12
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +24 -24
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-GB.d.ts +6 -1
- package/es/extensions/forms/constants/locales/en-GB.js +9 -4
- package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-US.d.ts +6 -1
- package/es/extensions/forms/constants/locales/en-US.js +2 -1
- package/es/extensions/forms/constants/locales/en-US.js.map +1 -1
- package/es/extensions/forms/constants/locales/index.d.ts +12 -2
- package/es/extensions/forms/constants/locales/nb-NO.d.ts +6 -1
- package/es/extensions/forms/constants/locales/nb-NO.js +9 -4
- package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/es/extensions/forms/hooks/useDataContext.d.ts +6 -0
- package/es/extensions/forms/hooks/useDataContext.js +24 -0
- package/es/extensions/forms/hooks/useDataContext.js.map +1 -0
- package/es/extensions/forms/hooks/useExternalValue.js +12 -6
- package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.js +83 -44
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/useSnapshot.d.ts +9 -0
- package/es/extensions/forms/hooks/useSnapshot.js +73 -0
- package/es/extensions/forms/hooks/useSnapshot.js.map +1 -0
- package/es/extensions/forms/hooks/useValueProps.js +6 -1
- package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/es/extensions/forms/types.d.ts +4 -0
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/payment-card/style/dnb-payment-card.css +3 -2
- package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/component-helper.js +1 -1
- package/es/shared/component-helper.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +3 -1
- package/es/style/dnb-ui-components.min.css +1 -1
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +3 -2
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +3 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/properties.d.ts +1 -0
- package/es/style/themes/theme-eiendom/properties.js +3 -2
- package/es/style/themes/theme-eiendom/properties.js.map +1 -1
- package/es/style/themes/theme-sbanken/properties.d.ts +1 -0
- package/es/style/themes/theme-sbanken/properties.js +3 -2
- package/es/style/themes/theme-sbanken/properties.js.map +1 -1
- package/es/style/themes/theme-sbanken/properties.scss +9 -8
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +20 -4
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +3 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +11 -3
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +3 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/properties.d.ts +1 -0
- package/es/style/themes/theme-ui/properties.js +3 -2
- package/es/style/themes/theme-ui/properties.js.map +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +3 -1
- package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +3 -2
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +2 -2
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/Context.d.ts +5 -0
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.d.ts +12 -1
- package/extensions/forms/DataContext/Provider/Provider.js +86 -77
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.d.ts +6 -1
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +109 -23
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +5 -0
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.d.ts +3 -1
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +28 -16
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.d.ts +2 -0
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +18 -0
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -0
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -3
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Form/Isolation/Isolation.d.ts +4 -0
- package/extensions/forms/Form/Isolation/Isolation.js +29 -3
- package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolationDocs.js +5 -0
- package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
- package/extensions/forms/Form/Snapshot/Snapshot.d.ts +12 -0
- package/extensions/forms/Form/Snapshot/Snapshot.js +36 -0
- package/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -0
- package/extensions/forms/Form/Snapshot/SnapshotContext.d.ts +12 -0
- package/extensions/forms/Form/Snapshot/SnapshotContext.js +6 -0
- package/extensions/forms/Form/Snapshot/SnapshotContext.js.map +1 -0
- package/extensions/forms/Form/Snapshot/SnapshotDocs.d.ts +3 -0
- package/extensions/forms/Form/Snapshot/SnapshotDocs.js +9 -0
- package/extensions/forms/Form/Snapshot/SnapshotDocs.js.map +1 -0
- package/extensions/forms/Form/Snapshot/index.d.ts +2 -0
- package/extensions/forms/Form/Snapshot/index.js +3 -0
- package/extensions/forms/Form/Snapshot/index.js.map +1 -0
- package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +2 -2
- package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
- package/extensions/forms/Form/Visibility/Visibility.d.ts +10 -2
- package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/Form/Visibility/VisibilityDocs.js +10 -10
- package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/extensions/forms/Form/Visibility/useVisibility.js +26 -14
- package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/extensions/forms/Form/data-context/clearData.js +2 -5
- package/extensions/forms/Form/data-context/clearData.js.map +1 -1
- package/extensions/forms/Form/data-context/getData.js.map +1 -1
- package/extensions/forms/Form/data-context/useData.js +1 -0
- package/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/extensions/forms/Form/data-context/useValidation.js.map +1 -1
- package/extensions/forms/Form/index.d.ts +2 -0
- package/extensions/forms/Form/index.js +2 -0
- package/extensions/forms/Form/index.js.map +1 -1
- package/extensions/forms/Iterate/Array/Array.js +3 -1
- package/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/extensions/forms/Iterate/Array/ArrayItemArea.js +31 -18
- package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainer.js +5 -6
- package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/extensions/forms/Iterate/ItemNo/ItemNo.d.ts +9 -0
- package/extensions/forms/Iterate/ItemNo/ItemNo.js +23 -0
- package/extensions/forms/Iterate/ItemNo/ItemNo.js.map +1 -0
- package/extensions/forms/Iterate/ItemNo/index.d.ts +2 -0
- package/extensions/forms/Iterate/ItemNo/index.js +3 -0
- package/extensions/forms/Iterate/ItemNo/index.js.map +1 -0
- package/extensions/forms/Iterate/IterateItemContext.d.ts +1 -0
- package/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +18 -2
- package/extensions/forms/Iterate/PushContainer/PushContainer.js +44 -18
- package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +24 -1
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +5 -6
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/extensions/forms/Iterate/index.d.ts +1 -0
- package/extensions/forms/Iterate/index.js +1 -0
- package/extensions/forms/Iterate/index.js.map +1 -1
- package/extensions/forms/Tools/Log.d.ts +7 -2
- package/extensions/forms/Tools/Log.js +30 -3
- package/extensions/forms/Tools/Log.js.map +1 -1
- package/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -0
- package/extensions/forms/Value/SummaryList/SummaryList.d.ts +4 -2
- package/extensions/forms/Value/SummaryList/SummaryList.js +3 -1
- package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -0
- package/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
- package/extensions/forms/Value/ValueDocs.js +5 -0
- package/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/extensions/forms/Wizard/Buttons/Buttons.js +2 -2
- package/extensions/forms/Wizard/Buttons/Buttons.js.map +1 -1
- package/extensions/forms/Wizard/Container/WizardContainer.js +78 -31
- package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
- package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +1 -2
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +0 -6
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
- package/extensions/forms/Wizard/Container/useStepAnimation.d.ts +2 -1
- package/extensions/forms/Wizard/Container/useStepAnimation.js +12 -7
- package/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -1
- package/extensions/forms/Wizard/Context/WizardContext.d.ts +14 -3
- package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
- package/extensions/forms/Wizard/Step/Step.js +4 -4
- package/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/extensions/forms/Wizard/hooks/useStep.js +4 -4
- package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +77 -58
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.d.ts +12 -12
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +24 -24
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
- package/extensions/forms/constants/locales/en-GB.d.ts +6 -1
- package/extensions/forms/constants/locales/en-GB.js +9 -4
- package/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/extensions/forms/constants/locales/en-US.d.ts +6 -1
- package/extensions/forms/constants/locales/en-US.js +2 -1
- package/extensions/forms/constants/locales/en-US.js.map +1 -1
- package/extensions/forms/constants/locales/index.d.ts +12 -2
- package/extensions/forms/constants/locales/nb-NO.d.ts +6 -1
- package/extensions/forms/constants/locales/nb-NO.js +9 -4
- package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/extensions/forms/hooks/useDataContext.d.ts +6 -0
- package/extensions/forms/hooks/useDataContext.js +25 -0
- package/extensions/forms/hooks/useDataContext.js.map +1 -0
- package/extensions/forms/hooks/useExternalValue.js +12 -6
- package/extensions/forms/hooks/useExternalValue.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.js +83 -44
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/useSnapshot.d.ts +9 -0
- package/extensions/forms/hooks/useSnapshot.js +81 -0
- package/extensions/forms/hooks/useSnapshot.js.map +1 -0
- package/extensions/forms/hooks/useValueProps.js +6 -1
- package/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/extensions/forms/types.d.ts +4 -0
- package/extensions/forms/types.js.map +1 -1
- package/extensions/payment-card/style/dnb-payment-card.css +3 -2
- package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/package.json +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/component-helper.js +1 -1
- package/shared/component-helper.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +3 -1
- package/style/dnb-ui-components.min.css +1 -1
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-extensions.css +3 -2
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +3 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +3 -2
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/properties.d.ts +1 -0
- package/style/themes/theme-eiendom/properties.js +3 -2
- package/style/themes/theme-eiendom/properties.js.map +1 -1
- package/style/themes/theme-sbanken/properties.d.ts +1 -0
- package/style/themes/theme-sbanken/properties.js +3 -2
- package/style/themes/theme-sbanken/properties.js.map +1 -1
- package/style/themes/theme-sbanken/properties.scss +9 -8
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +20 -4
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +3 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +11 -3
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +17 -2
- package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +3 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +3 -2
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/properties.d.ts +1 -0
- package/style/themes/theme-ui/properties.js +3 -2
- package/style/themes/theme-ui/properties.js.map +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +3 -1
- package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +3 -2
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +2 -2
- package/umd/dnb-ui-lib.min.js +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { Path } from '../../types';
|
|
2
|
+
import { OnCommit, Path } from '../../types';
|
|
3
3
|
import { SpacingProps } from '../../../../shared/types';
|
|
4
4
|
import { ArrayItemAreaProps } from '../Array/ArrayItemArea';
|
|
5
5
|
export type Props = {
|
|
@@ -21,13 +21,29 @@ export type Props = {
|
|
|
21
21
|
*/
|
|
22
22
|
showOpenButtonWhen?: (list: unknown[]) => boolean;
|
|
23
23
|
/**
|
|
24
|
-
* Prefilled data to add to the fields.
|
|
24
|
+
* Prefilled data to add to the fields. The data will be put into this path: "/pushContainerItems/0".
|
|
25
25
|
*/
|
|
26
26
|
data?: unknown | Record<string, unknown>;
|
|
27
|
+
/**
|
|
28
|
+
* Prefilled data to add to the fields. The data will be put into this path: "/pushContainerItems/0".
|
|
29
|
+
*/
|
|
30
|
+
defaultData?: unknown | Record<string, unknown>;
|
|
31
|
+
/**
|
|
32
|
+
* Provide additional data that will be put into the root of the isolated data context (parallel to "/pushContainerItems/0").
|
|
33
|
+
*/
|
|
34
|
+
isolatedData?: Record<string, unknown>;
|
|
35
|
+
/**
|
|
36
|
+
* Prevent the form from being submitted when there are fields with errors inside the PushContainer.
|
|
37
|
+
*/
|
|
38
|
+
bubbleValidation?: boolean;
|
|
27
39
|
/**
|
|
28
40
|
* A custom toolbar to be shown below the container.
|
|
29
41
|
*/
|
|
30
42
|
toolbar?: React.ReactNode;
|
|
43
|
+
/**
|
|
44
|
+
* Will be called when the user clicks on the "Done" button.
|
|
45
|
+
*/
|
|
46
|
+
onCommit?: OnCommit;
|
|
31
47
|
/**
|
|
32
48
|
* The container contents.
|
|
33
49
|
*/
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
4
3
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
5
5
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
6
|
-
const _excluded = ["data", "path", "title", "children", "openButton", "showOpenButtonWhen"],
|
|
6
|
+
const _excluded = ["data", "defaultData", "isolatedData", "bubbleValidation", "path", "title", "children", "openButton", "showOpenButtonWhen", "onCommit"],
|
|
7
7
|
_excluded2 = ["title", "openButton", "showOpenButton", "switchContainerModeRef", "cancelHandler", "children"];
|
|
8
8
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
9
9
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -20,14 +20,19 @@ import { Flex, HeightAnimation } from '../../../../components';
|
|
|
20
20
|
import { useArrayLimit, useSwitchContainerMode } from '../hooks';
|
|
21
21
|
import Toolbar from '../Toolbar';
|
|
22
22
|
import { useTranslation } from '../../hooks';
|
|
23
|
+
import { clearedData } from '../../DataContext/Provider';
|
|
23
24
|
function PushContainer(props) {
|
|
24
25
|
const {
|
|
25
|
-
data
|
|
26
|
+
data: dataProp,
|
|
27
|
+
defaultData: defaultDataProp,
|
|
28
|
+
isolatedData,
|
|
29
|
+
bubbleValidation,
|
|
26
30
|
path,
|
|
27
31
|
title,
|
|
28
32
|
children,
|
|
29
33
|
openButton,
|
|
30
|
-
showOpenButtonWhen
|
|
34
|
+
showOpenButtonWhen,
|
|
35
|
+
onCommit
|
|
31
36
|
} = props,
|
|
32
37
|
rest = _objectWithoutProperties(props, _excluded);
|
|
33
38
|
const commitHandleRef = useRef();
|
|
@@ -61,24 +66,45 @@ function PushContainer(props) {
|
|
|
61
66
|
commitHandleRef,
|
|
62
67
|
switchContainerMode: switchContainerModeRef.current
|
|
63
68
|
};
|
|
69
|
+
const data = useMemo(() => {
|
|
70
|
+
if (defaultDataProp) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
return _objectSpread(_objectSpread({}, isolatedData), {}, {
|
|
74
|
+
pushContainerItems: [dataProp !== null && dataProp !== void 0 ? dataProp : clearedData]
|
|
75
|
+
});
|
|
76
|
+
}, [dataProp, defaultDataProp, isolatedData]);
|
|
64
77
|
const defaultData = useMemo(() => {
|
|
65
|
-
return {
|
|
66
|
-
|
|
67
|
-
};
|
|
68
|
-
}, [
|
|
78
|
+
return _objectSpread(_objectSpread({}, !dataProp ? isolatedData : null), {}, {
|
|
79
|
+
pushContainerItems: [defaultDataProp !== null && defaultDataProp !== void 0 ? defaultDataProp : clearedData]
|
|
80
|
+
});
|
|
81
|
+
}, [dataProp, defaultDataProp, isolatedData]);
|
|
82
|
+
const emptyData = useCallback(data => {
|
|
83
|
+
var _data$pushContainerIt;
|
|
84
|
+
const firstItem = (_data$pushContainerIt = data.pushContainerItems) === null || _data$pushContainerIt === void 0 ? void 0 : _data$pushContainerIt[0];
|
|
85
|
+
if (firstItem === null || typeof firstItem !== 'object') {
|
|
86
|
+
return _objectSpread(_objectSpread({}, isolatedData), {}, {
|
|
87
|
+
pushContainerItems: [null]
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
return defaultData;
|
|
91
|
+
}, [defaultData, isolatedData]);
|
|
69
92
|
return React.createElement(Isolation, {
|
|
93
|
+
data: data,
|
|
70
94
|
defaultData: defaultData,
|
|
71
|
-
emptyData:
|
|
95
|
+
emptyData: emptyData,
|
|
96
|
+
bubbleValidation: bubbleValidation,
|
|
72
97
|
commitHandleRef: commitHandleRef,
|
|
73
98
|
transformOnCommit: ({
|
|
74
|
-
|
|
99
|
+
pushContainerItems
|
|
75
100
|
}) => {
|
|
76
|
-
return moveValueToPath(path, [...entries, ...
|
|
101
|
+
return moveValueToPath(path, [...entries, ...pushContainerItems]);
|
|
77
102
|
},
|
|
78
|
-
onCommit: (data, {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
103
|
+
onCommit: (data, options) => {
|
|
104
|
+
const {
|
|
105
|
+
clearData,
|
|
106
|
+
preventCommit
|
|
107
|
+
} = options;
|
|
82
108
|
if (hasReachedLimit) {
|
|
83
109
|
preventCommit();
|
|
84
110
|
setShowStatus(true);
|
|
@@ -88,11 +114,12 @@ function PushContainer(props) {
|
|
|
88
114
|
(_switchContainerModeR = switchContainerModeRef.current) === null || _switchContainerModeR === void 0 ? void 0 : _switchContainerModeR.call(switchContainerModeRef, 'view');
|
|
89
115
|
clearData();
|
|
90
116
|
}
|
|
117
|
+
onCommit === null || onCommit === void 0 ? void 0 : onCommit(data, options);
|
|
91
118
|
}
|
|
92
119
|
}, React.createElement(PushContainerContext.Provider, {
|
|
93
120
|
value: newItemContextProps
|
|
94
121
|
}, React.createElement(IterateArray, {
|
|
95
|
-
path: "/
|
|
122
|
+
path: "/pushContainerItems",
|
|
96
123
|
containerMode: showOpenButton ? 'view' : 'edit'
|
|
97
124
|
}, React.createElement(NewContainer, _extends({
|
|
98
125
|
title: title,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushContainer.js","names":["React","useCallback","useContext","useMemo","useRef","Isolation","PushContainerContext","IterateItemContext","DataContext","useDataValue","EditContainer","CancelButton","DoneButton","IterateArray","OpenButton","Flex","HeightAnimation","useArrayLimit","useSwitchContainerMode","Toolbar","useTranslation","PushContainer","props","data","path","title","children","openButton","showOpenButtonWhen","rest","_objectWithoutProperties","_excluded","commitHandleRef","switchContainerModeRef","value","entries","moveValueToPath","setNextContainerMode","hasReachedLimit","setShowStatus","cancelHandler","showOpenButton","newItemContextProps","switchContainerMode","current","defaultData","newItems","createElement","emptyData","transformOnCommit","onCommit","clearData","preventCommit","_switchContainerModeR","call","Provider","containerMode","NewContainer","_extends","_ref","_DoneButton","_CancelButton","_excluded2","createButton","IteratePushContainer","restoreOriginalValue","toolbar","Consumer","context","_objectSpread","Horizontal","gap","text","onClick","Fragment","open","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport Isolation from '../../Form/Isolation'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, { CancelButton, DoneButton } from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, HeightAnimation } from '../../../../components'\nimport { Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport { useArrayLimit, useSwitchContainerMode } from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { ArrayItemAreaProps } from '../Array/ArrayItemArea'\n\nexport type Props = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /**\n * The title of the container.\n */\n title?: React.ReactNode\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.\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props & SpacingProps & ArrayItemAreaProps\n\nfunction PushContainer(props: AllProps) {\n const {\n data = null,\n path,\n title,\n children,\n openButton,\n showOpenButtonWhen,\n ...rest\n } = props\n\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const { value: entries = [], moveValueToPath } = useDataValue<\n Array<unknown>\n >({ path })\n\n const { setNextContainerMode } = useSwitchContainerMode({ path })\n const { hasReachedLimit, setShowStatus } = useArrayLimit({\n path,\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 entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const defaultData = useMemo(() => {\n return { newItems: [data] }\n }, [data])\n\n return (\n <Isolation\n defaultData={defaultData}\n emptyData={defaultData}\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ newItems }) => {\n return moveValueToPath(path, [...entries, ...newItems])\n }}\n onCommit={(data, { clearData, preventCommit }) => {\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/newItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\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 switchContainerModeRef,\n cancelHandler,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n switchContainerModeRef.current = switchContainerMode\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 </Flex.Horizontal>\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <>\n <EditContainer\n open={!showOpenButton || containerMode === 'edit'}\n title={title}\n toolbar={toolbar}\n {...rest}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </>\n )\n}\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PushContainer.js","names":["React","useCallback","useContext","useMemo","useRef","Isolation","PushContainerContext","IterateItemContext","DataContext","useDataValue","EditContainer","CancelButton","DoneButton","IterateArray","OpenButton","Flex","HeightAnimation","useArrayLimit","useSwitchContainerMode","Toolbar","useTranslation","clearedData","PushContainer","props","data","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","path","title","children","openButton","showOpenButtonWhen","onCommit","rest","_objectWithoutProperties","_excluded","commitHandleRef","switchContainerModeRef","value","entries","moveValueToPath","setNextContainerMode","hasReachedLimit","setShowStatus","cancelHandler","showOpenButton","newItemContextProps","switchContainerMode","current","_objectSpread","pushContainerItems","emptyData","_data$pushContainerIt","firstItem","createElement","transformOnCommit","options","clearData","preventCommit","_switchContainerModeR","call","Provider","containerMode","NewContainer","_extends","_ref","_DoneButton","_CancelButton","_excluded2","createButton","IteratePushContainer","restoreOriginalValue","toolbar","Consumer","context","Horizontal","gap","text","onClick","Fragment","open","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo, useRef } from 'react'\nimport Isolation from '../../Form/Isolation'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, { CancelButton, DoneButton } from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport { useArrayLimit, useSwitchContainerMode } from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { ArrayItemAreaProps } from '../Array/ArrayItemArea'\nimport { clearedData } from '../../DataContext/Provider'\n\nexport type Props = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /**\n * The title of the container.\n */\n title?: React.ReactNode\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 * 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 & SpacingProps & ArrayItemAreaProps\n\nfunction PushContainer(props: AllProps) {\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n path,\n title,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const { value: entries = [], moveValueToPath } = useDataValue<\n Array<unknown>\n >({ path })\n\n const { setNextContainerMode } = useSwitchContainerMode({ path })\n const { hasReachedLimit, setShowStatus } = useArrayLimit({\n path,\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 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: [dataProp ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [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 return defaultData\n },\n [defaultData, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n emptyData={emptyData}\n bubbleValidation={bubbleValidation}\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(path, [...entries, ...pushContainerItems])\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 >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\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 switchContainerModeRef,\n cancelHandler,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n switchContainerModeRef.current = switchContainerMode\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 </Flex.Horizontal>\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <>\n <EditContainer\n open={!showOpenButton || containerMode === 'edit'}\n title={title}\n toolbar={toolbar}\n {...rest}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </>\n )\n}\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { IsolationEvents } from '../../Form/Isolation/IsolationDocs';
|
|
1
2
|
export const PushContainerProperties = {
|
|
2
3
|
path: {
|
|
3
4
|
doc: 'The path to the array to add the new item to.',
|
|
@@ -9,6 +10,26 @@ export const PushContainerProperties = {
|
|
|
9
10
|
type: 'React.Node',
|
|
10
11
|
status: 'optional'
|
|
11
12
|
},
|
|
13
|
+
data: {
|
|
14
|
+
doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`. Use `defaultData` when possible.',
|
|
15
|
+
type: ['object', 'array'],
|
|
16
|
+
status: 'optional'
|
|
17
|
+
},
|
|
18
|
+
defaultData: {
|
|
19
|
+
doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`',
|
|
20
|
+
type: ['object', 'array'],
|
|
21
|
+
status: 'optional'
|
|
22
|
+
},
|
|
23
|
+
isolatedData: {
|
|
24
|
+
doc: 'Provide additional data that will be put into the root of the isolated data context (parallel to `/pushContainerItems/0`).',
|
|
25
|
+
type: 'object',
|
|
26
|
+
status: 'optional'
|
|
27
|
+
},
|
|
28
|
+
bubbleValidation: {
|
|
29
|
+
doc: 'Prevent the form from being submitted when there are fields with errors inside the PushContainer.',
|
|
30
|
+
type: 'boolean',
|
|
31
|
+
status: 'optional'
|
|
32
|
+
},
|
|
12
33
|
openButton: {
|
|
13
34
|
doc: 'The button to open container.',
|
|
14
35
|
type: 'React.Node',
|
|
@@ -40,5 +61,7 @@ export const PushContainerProperties = {
|
|
|
40
61
|
status: 'optional'
|
|
41
62
|
}
|
|
42
63
|
};
|
|
43
|
-
export const PushContainerEvents = {
|
|
64
|
+
export const PushContainerEvents = {
|
|
65
|
+
onCommit: IsolationEvents.onCommit
|
|
66
|
+
};
|
|
44
67
|
//# sourceMappingURL=PushContainerDocs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushContainerDocs.js","names":["PushContainerProperties","path","doc","type","status","title","openButton","showOpenButtonWhen","variant","toolbar","children","PushContainerEvents"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\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 title: {\n doc: 'The title of the container.',\n type: 'React.Node',\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` 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"],"mappings":"
|
|
1
|
+
{"version":3,"file":"PushContainerDocs.js","names":["IsolationEvents","PushContainerProperties","path","doc","type","status","title","data","defaultData","isolatedData","bubbleValidation","openButton","showOpenButtonWhen","variant","toolbar","children","PushContainerEvents","onCommit"],"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 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 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 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` 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,SAASA,eAAe,QAAQ,oCAAoC;AAEpE,OAAO,MAAMC,uBAA6C,GAAG;EAC3DC,IAAI,EAAE;IACJC,GAAG,EAAE,+CAA+C;IACpDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,KAAK,EAAE;IACLH,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDE,IAAI,EAAE;IACJJ,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDG,WAAW,EAAE;IACXL,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDI,YAAY,EAAE;IACZN,GAAG,EAAE,4HAA4H;IACjIC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDK,gBAAgB,EAAE;IAChBP,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDM,UAAU,EAAE;IACVR,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDO,kBAAkB,EAAE;IAClBT,GAAG,EAAE,6FAA6F;IAClGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDQ,OAAO,EAAE;IACPV,GAAG,EAAE,2FAA2F;IAChGC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDS,OAAO,EAAE;IACPX,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDU,QAAQ,EAAE;IACRZ,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;AAED,OAAO,MAAMW,mBAAyC,GAAG;EACvDC,QAAQ,EAAEjB,eAAe,CAACiB;AAC5B,CAAC"}
|
|
@@ -14,6 +14,7 @@ import IterateItemContext from '../IterateItemContext';
|
|
|
14
14
|
import Toolbar from '../Toolbar';
|
|
15
15
|
import EditButton from './EditButton';
|
|
16
16
|
import RemoveButton from './RemoveButton';
|
|
17
|
+
import { replaceItemNo } from '../ItemNo';
|
|
17
18
|
function ViewContainer(props) {
|
|
18
19
|
var _toolbarElement;
|
|
19
20
|
const _ref = props || {},
|
|
@@ -29,11 +30,9 @@ function ViewContainer(props) {
|
|
|
29
30
|
index,
|
|
30
31
|
arrayValue
|
|
31
32
|
} = useContext(IterateItemContext);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
itemTitle = ariaLabel = ariaLabel.replace(/\{itemN(r|o)\}/g, String(index + 1));
|
|
36
|
-
}
|
|
33
|
+
const itemTitle = useMemo(() => {
|
|
34
|
+
return replaceItemNo(title, index);
|
|
35
|
+
}, [index, title]);
|
|
37
36
|
let toolbarElement = toolbar;
|
|
38
37
|
if (toolbarVariant === 'minimumOneItem' && arrayValue.length <= 1) {
|
|
39
38
|
toolbarElement = _Toolbar || (_Toolbar = React.createElement(Toolbar, null, React.createElement(EditButton, null)));
|
|
@@ -43,7 +42,7 @@ function ViewContainer(props) {
|
|
|
43
42
|
});
|
|
44
43
|
return React.createElement(ArrayItemArea, _extends({
|
|
45
44
|
mode: "view",
|
|
46
|
-
ariaLabel:
|
|
45
|
+
ariaLabel: convertJsxToString(itemTitle),
|
|
47
46
|
className: classnames('dnb-forms-section-view-block', className)
|
|
48
47
|
}, restProps), React.createElement(Flex.Stack, null, itemTitle && React.createElement(Lead, {
|
|
49
48
|
size: "basis"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewContainer.js","names":["React","useContext","useMemo","classnames","convertJsxToString","Flex","Lead","ArrayItemArea","IterateItemContext","Toolbar","EditButton","RemoveButton","ViewContainer","props","_toolbarElement","_ref","children","className","title","toolbar","toolbarVariant","restProps","_objectWithoutProperties","_excluded","index","arrayValue","itemTitle","
|
|
1
|
+
{"version":3,"file":"ViewContainer.js","names":["React","useContext","useMemo","classnames","convertJsxToString","Flex","Lead","ArrayItemArea","IterateItemContext","Toolbar","EditButton","RemoveButton","replaceItemNo","ViewContainer","props","_toolbarElement","_ref","children","className","title","toolbar","toolbarVariant","restProps","_objectWithoutProperties","_excluded","index","arrayValue","itemTitle","toolbarElement","length","_Toolbar","createElement","hasToolbar","Children","toArray","some","child","_extends","mode","ariaLabel","Stack","size","_Toolbar2","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/ViewContainer/ViewContainer.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport { convertJsxToString } from '../../../../shared/component-helper'\nimport { Flex } from '../../../../components'\nimport { Props as FlexContainerProps } from '../../../../components/flex/Container'\nimport { Lead } from '../../../../elements'\nimport ArrayItemArea, { ArrayItemAreaProps } from '../Array/ArrayItemArea'\nimport IterateItemContext from '../IterateItemContext'\nimport Toolbar from '../Toolbar'\nimport EditButton from './EditButton'\nimport RemoveButton from './RemoveButton'\nimport { replaceItemNo } from '../ItemNo'\n\nexport type Props = {\n /**\n * The title of the ViewContainer.\n */\n title?: React.ReactNode\n /**\n * An alternative toolbar to be shown in the ViewContainer.\n */\n toolbar?: React.ReactNode\n /**\n * The variant of the toolbar.\n */\n toolbarVariant?: 'minimumOneItem'\n}\n\nexport type AllProps = Props & FlexContainerProps & ArrayItemAreaProps\n\nfunction ViewContainer(props: AllProps) {\n const {\n children,\n className,\n title,\n toolbar,\n toolbarVariant,\n ...restProps\n } = props || {}\n const { index, arrayValue } = useContext(IterateItemContext)\n const itemTitle = useMemo(() => {\n return replaceItemNo(title, index)\n }, [index, title])\n\n let toolbarElement = toolbar\n if (toolbarVariant === 'minimumOneItem' && arrayValue.length <= 1) {\n toolbarElement = (\n <Toolbar>\n <EditButton />\n </Toolbar>\n )\n }\n\n const hasToolbar =\n !toolbarElement &&\n React.Children.toArray(children).some((child) => {\n return child?.['type'] === Toolbar\n })\n\n return (\n <ArrayItemArea\n mode=\"view\"\n ariaLabel={convertJsxToString(itemTitle)}\n className={classnames('dnb-forms-section-view-block', className)}\n {...restProps}\n >\n <Flex.Stack>\n {itemTitle && <Lead size=\"basis\">{itemTitle}</Lead>}\n {children}\n {hasToolbar\n ? null\n : toolbarElement ?? (\n <Toolbar>\n <EditButton />\n <RemoveButton />\n </Toolbar>\n )}\n </Flex.Stack>\n </ArrayItemArea>\n )\n}\n\nViewContainer.EditButton = EditButton\nViewContainer.RemoveButton = RemoveButton\n\nViewContainer._supportsSpacingProps = true\nexport default ViewContainer\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,kBAAkB,QAAQ,qCAAqC;AACxE,SAASC,IAAI,QAAQ,wBAAwB;AAE7C,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,OAAOC,aAAa,MAA8B,wBAAwB;AAC1E,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,OAAO,MAAM,YAAY;AAChC,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,aAAa,QAAQ,WAAW;AAmBzC,SAASC,aAAaA,CAACC,KAAe,EAAE;EAAA,IAAAC,eAAA;EACtC,MAAAC,IAAA,GAOIF,KAAK,IAAI,CAAC,CAAC;IAPT;MACJG,QAAQ;MACRC,SAAS;MACTC,KAAK;MACLC,OAAO;MACPC;IAEF,CAAC,GAAAL,IAAA;IADIM,SAAS,GAAAC,wBAAA,CAAAP,IAAA,EAAAQ,SAAA;EAEd,MAAM;IAAEC,KAAK;IAAEC;EAAW,CAAC,GAAGzB,UAAU,CAACO,kBAAkB,CAAC;EAC5D,MAAMmB,SAAS,GAAGzB,OAAO,CAAC,MAAM;IAC9B,OAAOU,aAAa,CAACO,KAAK,EAAEM,KAAK,CAAC;EACpC,CAAC,EAAE,CAACA,KAAK,EAAEN,KAAK,CAAC,CAAC;EAElB,IAAIS,cAAc,GAAGR,OAAO;EAC5B,IAAIC,cAAc,KAAK,gBAAgB,IAAIK,UAAU,CAACG,MAAM,IAAI,CAAC,EAAE;IACjED,cAAc,GAAAE,QAAA,KAAAA,QAAA,GACZ9B,KAAA,CAAA+B,aAAA,CAACtB,OAAO,QACNT,KAAA,CAAA+B,aAAA,CAACrB,UAAU,MAAE,CACN,CAAC,CACX;EACH;EAEA,MAAMsB,UAAU,GACd,CAACJ,cAAc,IACf5B,KAAK,CAACiC,QAAQ,CAACC,OAAO,CAACjB,QAAQ,CAAC,CAACkB,IAAI,CAAEC,KAAK,IAAK;IAC/C,OAAO,CAAAA,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAG,MAAM,CAAC,MAAK3B,OAAO;EACpC,CAAC,CAAC;EAEJ,OACET,KAAA,CAAA+B,aAAA,CAACxB,aAAa,EAAA8B,QAAA;IACZC,IAAI,EAAC,MAAM;IACXC,SAAS,EAAEnC,kBAAkB,CAACuB,SAAS,CAAE;IACzCT,SAAS,EAAEf,UAAU,CAAC,8BAA8B,EAAEe,SAAS;EAAE,GAC7DI,SAAS,GAEbtB,KAAA,CAAA+B,aAAA,CAAC1B,IAAI,CAACmC,KAAK,QACRb,SAAS,IAAI3B,KAAA,CAAA+B,aAAA,CAACzB,IAAI;IAACmC,IAAI,EAAC;EAAO,GAAEd,SAAgB,CAAC,EAClDV,QAAQ,EACRe,UAAU,GACP,IAAI,IAAAjB,eAAA,GACJa,cAAc,cAAAb,eAAA,cAAAA,eAAA,GAAA2B,SAAA,KAAAA,SAAA,GACZ1C,KAAA,CAAA+B,aAAA,CAACtB,OAAO,QACNT,KAAA,CAAA+B,aAAA,CAACrB,UAAU,MAAE,CAAC,EACdV,KAAA,CAAA+B,aAAA,CAACpB,YAAY,MAAE,CACR,CAAC,CAEN,CACC,CAAC;AAEpB;AAEAE,aAAa,CAACH,UAAU,GAAGA,UAAU;AACrCG,aAAa,CAACF,YAAY,GAAGA,YAAY;AAEzCE,aAAa,CAAC8B,qBAAqB,GAAG,IAAI;AAC1C,eAAe9B,aAAa"}
|
|
@@ -8,6 +8,7 @@ export { default as EditContainer } from './EditContainer';
|
|
|
8
8
|
export { default as ViewContainer } from './ViewContainer';
|
|
9
9
|
export { default as AnimatedContainer } from './AnimatedContainer';
|
|
10
10
|
export { default as Toolbar } from './Toolbar';
|
|
11
|
+
export { default as ItemNo } from './ItemNo';
|
|
11
12
|
export { useCount, count, Count } from './Count';
|
|
12
13
|
export { default as useItem } from './hooks/useItem';
|
|
13
14
|
export { default as IterateItemContext } from './IterateItemContext';
|
|
@@ -8,6 +8,7 @@ export { default as EditContainer } from './EditContainer';
|
|
|
8
8
|
export { default as ViewContainer } from './ViewContainer';
|
|
9
9
|
export { default as AnimatedContainer } from './AnimatedContainer';
|
|
10
10
|
export { default as Toolbar } from './Toolbar';
|
|
11
|
+
export { default as ItemNo } from './ItemNo';
|
|
11
12
|
export { useCount, count, Count } from './Count';
|
|
12
13
|
export { default as useItem } from './hooks/useItem';
|
|
13
14
|
export { default as IterateItemContext } from './IterateItemContext';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["PushButton","RemoveButton","default","Array","PushContainer","EditContainer","ViewContainer","AnimatedContainer","Toolbar","useCount","count","Count","useItem","IterateItemContext","ArrayPushButton","ArrayRemoveElementButton"],"sources":["../../../../../src/extensions/forms/Iterate/index.ts"],"sourcesContent":["import PushButton from './PushButton'\nimport RemoveButton from './RemoveButton'\n\nexport { default as Array } from './Array'\nexport { default as PushButton } from './PushButton'\nexport { default as PushContainer } from './PushContainer'\nexport { default as RemoveButton } from './RemoveButton'\nexport { default as EditContainer } from './EditContainer'\nexport { default as ViewContainer } from './ViewContainer'\nexport { default as AnimatedContainer } from './AnimatedContainer'\nexport { default as Toolbar } from './Toolbar'\nexport { useCount, count, Count } from './Count'\nexport { default as useItem } from './hooks/useItem'\nexport { default as IterateItemContext } from './IterateItemContext'\n\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"PushButton\" instead\n */\nexport const ArrayPushButton = PushButton\n\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"RemoveButton\" instead\n */\nexport const ArrayRemoveElementButton = RemoveButton\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,cAAc;AACrC,OAAOC,YAAY,MAAM,gBAAgB;AAEzC,SAASC,OAAO,IAAIC,KAAK,QAAQ,SAAS;AAC1C,SAASD,OAAO,IAAIF,UAAU,QAAQ,cAAc;AACpD,SAASE,OAAO,IAAIE,aAAa,QAAQ,iBAAiB;AAC1D,SAASF,OAAO,IAAID,YAAY,QAAQ,gBAAgB;AACxD,SAASC,OAAO,IAAIG,aAAa,QAAQ,iBAAiB;AAC1D,SAASH,OAAO,IAAII,aAAa,QAAQ,iBAAiB;AAC1D,SAASJ,OAAO,IAAIK,iBAAiB,QAAQ,qBAAqB;AAClE,SAASL,OAAO,IAAIM,OAAO,QAAQ,WAAW;AAC9C,SAASC,QAAQ,EAAEC,KAAK,EAAEC,KAAK,QAAQ,SAAS;AAChD,
|
|
1
|
+
{"version":3,"file":"index.js","names":["PushButton","RemoveButton","default","Array","PushContainer","EditContainer","ViewContainer","AnimatedContainer","Toolbar","ItemNo","useCount","count","Count","useItem","IterateItemContext","ArrayPushButton","ArrayRemoveElementButton"],"sources":["../../../../../src/extensions/forms/Iterate/index.ts"],"sourcesContent":["import PushButton from './PushButton'\nimport RemoveButton from './RemoveButton'\n\nexport { default as Array } from './Array'\nexport { default as PushButton } from './PushButton'\nexport { default as PushContainer } from './PushContainer'\nexport { default as RemoveButton } from './RemoveButton'\nexport { default as EditContainer } from './EditContainer'\nexport { default as ViewContainer } from './ViewContainer'\nexport { default as AnimatedContainer } from './AnimatedContainer'\nexport { default as Toolbar } from './Toolbar'\nexport { default as ItemNo } from './ItemNo'\nexport { useCount, count, Count } from './Count'\nexport { default as useItem } from './hooks/useItem'\nexport { default as IterateItemContext } from './IterateItemContext'\n\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"PushButton\" instead\n */\nexport const ArrayPushButton = PushButton\n\n/**\n * Deprecated and will be removed in v11\n *\n * @deprecated use \"RemoveButton\" instead\n */\nexport const ArrayRemoveElementButton = RemoveButton\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,cAAc;AACrC,OAAOC,YAAY,MAAM,gBAAgB;AAEzC,SAASC,OAAO,IAAIC,KAAK,QAAQ,SAAS;AAC1C,SAASD,OAAO,IAAIF,UAAU,QAAQ,cAAc;AACpD,SAASE,OAAO,IAAIE,aAAa,QAAQ,iBAAiB;AAC1D,SAASF,OAAO,IAAID,YAAY,QAAQ,gBAAgB;AACxD,SAASC,OAAO,IAAIG,aAAa,QAAQ,iBAAiB;AAC1D,SAASH,OAAO,IAAII,aAAa,QAAQ,iBAAiB;AAC1D,SAASJ,OAAO,IAAIK,iBAAiB,QAAQ,qBAAqB;AAClE,SAASL,OAAO,IAAIM,OAAO,QAAQ,WAAW;AAC9C,SAASN,OAAO,IAAIO,MAAM,QAAQ,UAAU;AAC5C,SAASC,QAAQ,EAAEC,KAAK,EAAEC,KAAK,QAAQ,SAAS;AAChD,SAASV,OAAO,IAAIW,OAAO,QAAQ,iBAAiB;AACpD,SAASX,OAAO,IAAIY,kBAAkB,QAAQ,sBAAsB;AAOpE,OAAO,MAAMC,eAAe,GAAGf,UAAU;AAOzC,OAAO,MAAMgB,wBAAwB,GAAGf,YAAY"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SectionAllProps } from '../../../components/Section';
|
|
3
|
+
declare function Log({ placeholder, label, data: logData, ...props }: Omit<SectionAllProps, 'data' | 'label'> & {
|
|
4
|
+
data?: unknown;
|
|
5
|
+
label?: React.ReactNode;
|
|
6
|
+
placeholder?: React.ReactNode;
|
|
7
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
3
8
|
declare namespace Log {
|
|
4
9
|
var _supportsSpacingProps: boolean;
|
|
5
10
|
}
|
|
@@ -1,10 +1,22 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
4
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
|
-
import
|
|
5
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
6
|
+
const _excluded = ["placeholder", "label", "data"];
|
|
7
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
8
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
9
|
+
import React, { useContext } from 'react';
|
|
5
10
|
import DataContext from '../DataContext/Context';
|
|
6
11
|
import Section from '../../../components/Section';
|
|
7
|
-
|
|
12
|
+
import { FormLabel } from '../../../components';
|
|
13
|
+
function Log(_ref) {
|
|
14
|
+
let {
|
|
15
|
+
placeholder,
|
|
16
|
+
label,
|
|
17
|
+
data: logData
|
|
18
|
+
} = _ref,
|
|
19
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
8
20
|
const {
|
|
9
21
|
data
|
|
10
22
|
} = useContext(DataContext);
|
|
@@ -15,7 +27,18 @@ function Log(props) {
|
|
|
15
27
|
maxWidth: '80vw'
|
|
16
28
|
},
|
|
17
29
|
innerSpace: true
|
|
18
|
-
}, props), React.createElement(
|
|
30
|
+
}, props), label && React.createElement(FormLabel, {
|
|
31
|
+
bottom: true
|
|
32
|
+
}, label), React.createElement("pre", null, placeholder && Object.keys((logData !== null && logData !== void 0 ? logData : data) || {}).length === 0 ? placeholder : JSON.stringify(replaceUndefinedValues(logData !== null && logData !== void 0 ? logData : data), null, 2), ' '));
|
|
33
|
+
}
|
|
34
|
+
function replaceUndefinedValues(value, replaceWith = 'undefined') {
|
|
35
|
+
if (typeof value === 'undefined') {
|
|
36
|
+
return replaceWith;
|
|
37
|
+
} else if (typeof value === 'object' && value !== replaceWith) {
|
|
38
|
+
return _objectSpread(_objectSpread({}, value), Object.fromEntries(Object.entries(value).map(([k, v]) => [k, replaceUndefinedValues(v)])));
|
|
39
|
+
} else {
|
|
40
|
+
return value;
|
|
41
|
+
}
|
|
19
42
|
}
|
|
20
43
|
Log._supportsSpacingProps = true;
|
|
21
44
|
export default Log;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Log.js","names":["useContext","DataContext","Section","Log","
|
|
1
|
+
{"version":3,"file":"Log.js","names":["React","useContext","DataContext","Section","FormLabel","Log","_ref","placeholder","label","data","logData","props","_objectWithoutProperties","_excluded","createElement","_extends","element","backgroundColor","style","maxWidth","innerSpace","bottom","Object","keys","length","JSON","stringify","replaceUndefinedValues","value","replaceWith","_objectSpread","fromEntries","entries","map","k","v","_supportsSpacingProps"],"sources":["../../../../../src/extensions/forms/Tools/Log.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport DataContext from '../DataContext/Context'\nimport Section, { SectionAllProps } from '../../../components/Section'\nimport { FormLabel } from '../../../components'\n\nfunction Log({\n placeholder,\n label,\n data: logData,\n ...props\n}: Omit<SectionAllProps, 'data' | 'label'> & {\n data?: unknown\n label?: React.ReactNode\n placeholder?: React.ReactNode\n}) {\n const { data } = useContext(DataContext)\n\n return (\n <Section\n element=\"output\"\n backgroundColor=\"sand-yellow\"\n style={{ maxWidth: '80vw' }}\n innerSpace\n {...props}\n >\n {label && <FormLabel bottom>{label}</FormLabel>}\n <pre>\n {placeholder && Object.keys((logData ?? data) || {}).length === 0\n ? placeholder\n : JSON.stringify(\n replaceUndefinedValues(logData ?? data),\n null,\n 2\n )}\n {' ' /* Ensure one line of spacing */}\n </pre>\n </Section>\n )\n}\n\n/**\n * Replaces undefined values in an object with a specified replacement value.\n * @param value - The value to check for undefined values.\n * @param replaceWith - The value to replace undefined values with. Default is null.\n * @returns The object with undefined values replaced.\n */\nfunction replaceUndefinedValues(\n value: unknown,\n replaceWith = 'undefined' as unknown\n): unknown {\n if (typeof value === 'undefined') {\n return replaceWith\n } else if (typeof value === 'object' && value !== replaceWith) {\n return {\n ...value,\n ...Object.fromEntries(\n Object.entries(value).map(([k, v]) => [\n k,\n replaceUndefinedValues(v),\n ])\n ),\n }\n } else {\n return value\n }\n}\n\nLog._supportsSpacingProps = true\nexport default Log\n"],"mappings":";;;;;;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,WAAW,MAAM,wBAAwB;AAChD,OAAOC,OAAO,MAA2B,6BAA6B;AACtE,SAASC,SAAS,QAAQ,qBAAqB;AAE/C,SAASC,GAAGA,CAAAC,IAAA,EAST;EAAA,IATU;MACXC,WAAW;MACXC,KAAK;MACLC,IAAI,EAAEC;IAMR,CAAC,GAAAJ,IAAA;IALIK,KAAK,GAAAC,wBAAA,CAAAN,IAAA,EAAAO,SAAA;EAMR,MAAM;IAAEJ;EAAK,CAAC,GAAGR,UAAU,CAACC,WAAW,CAAC;EAExC,OACEF,KAAA,CAAAc,aAAA,CAACX,OAAO,EAAAY,QAAA;IACNC,OAAO,EAAC,QAAQ;IAChBC,eAAe,EAAC,aAAa;IAC7BC,KAAK,EAAE;MAAEC,QAAQ,EAAE;IAAO,CAAE;IAC5BC,UAAU;EAAA,GACNT,KAAK,GAERH,KAAK,IAAIR,KAAA,CAAAc,aAAA,CAACV,SAAS;IAACiB,MAAM;EAAA,GAAEb,KAAiB,CAAC,EAC/CR,KAAA,CAAAc,aAAA,cACGP,WAAW,IAAIe,MAAM,CAACC,IAAI,CAAC,CAACb,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAID,IAAI,KAAK,CAAC,CAAC,CAAC,CAACe,MAAM,KAAK,CAAC,GAC7DjB,WAAW,GACXkB,IAAI,CAACC,SAAS,CACZC,sBAAsB,CAACjB,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAID,IAAI,CAAC,EACvC,IAAI,EACJ,CACF,CAAC,EACJ,GACE,CACE,CAAC;AAEd;AAQA,SAASkB,sBAAsBA,CAC7BC,KAAc,EACdC,WAAW,GAAG,WAAsB,EAC3B;EACT,IAAI,OAAOD,KAAK,KAAK,WAAW,EAAE;IAChC,OAAOC,WAAW;EACpB,CAAC,MAAM,IAAI,OAAOD,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAKC,WAAW,EAAE;IAC7D,OAAAC,aAAA,CAAAA,aAAA,KACKF,KAAK,GACLN,MAAM,CAACS,WAAW,CACnBT,MAAM,CAACU,OAAO,CAACJ,KAAK,CAAC,CAACK,GAAG,CAAC,CAAC,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAK,CACpCD,CAAC,EACDP,sBAAsB,CAACQ,CAAC,CAAC,CAC1B,CACH,CAAC;EAEL,CAAC,MAAM;IACL,OAAOP,KAAK;EACd;AACF;AAEAvB,GAAG,CAAC+B,qBAAqB,GAAG,IAAI;AAChC,eAAe/B,GAAG"}
|
|
@@ -22,6 +22,7 @@ declare function useValueProvider(props?: Omit<ValueProviderProps, 'children'>):
|
|
|
22
22
|
toInput?: (external: unknown) => unknown;
|
|
23
23
|
fromExternal?: (external: unknown) => unknown;
|
|
24
24
|
itemPath?: string;
|
|
25
|
+
transformLabel?: (label: import("react").ReactNode, convertJsxToString: (label: import("react").ReactNode) => string) => import("react").ReactNode;
|
|
25
26
|
inheritVisibility?: boolean;
|
|
26
27
|
inheritLabel?: boolean;
|
|
27
28
|
showEmpty?: boolean;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { DlAllProps } from '../../../../elements/Dl';
|
|
2
|
+
import { ValueProps } from '../../types';
|
|
2
3
|
export type Props = Omit<DlAllProps, 'label'> & {
|
|
3
|
-
|
|
4
|
-
|
|
4
|
+
transformLabel?: ValueProps['transformLabel'];
|
|
5
|
+
inheritVisibility?: ValueProps['inheritVisibility'];
|
|
6
|
+
inheritLabel?: ValueProps['inheritLabel'];
|
|
5
7
|
};
|
|
6
8
|
declare function SummaryList(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
9
|
declare namespace SummaryList {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
-
const _excluded = ["className", "children", "layout", "inheritVisibility", "inheritLabel"];
|
|
3
|
+
const _excluded = ["className", "children", "layout", "transformLabel", "inheritVisibility", "inheritLabel"];
|
|
4
4
|
import React from 'react';
|
|
5
5
|
import classnames from 'classnames';
|
|
6
6
|
import { removeUndefinedProps } from '../../../../shared/component-helper';
|
|
@@ -12,11 +12,13 @@ function SummaryList(props) {
|
|
|
12
12
|
className,
|
|
13
13
|
children,
|
|
14
14
|
layout,
|
|
15
|
+
transformLabel,
|
|
15
16
|
inheritVisibility,
|
|
16
17
|
inheritLabel
|
|
17
18
|
} = props,
|
|
18
19
|
rest = _objectWithoutProperties(props, _excluded);
|
|
19
20
|
const valueProviderProps = removeUndefinedProps({
|
|
21
|
+
transformLabel,
|
|
20
22
|
inheritVisibility,
|
|
21
23
|
inheritLabel
|
|
22
24
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SummaryList.js","names":["React","classnames","removeUndefinedProps","SummaryListContext","Dl","ValueProvider","SummaryList","props","className","children","layout","inheritVisibility","inheritLabel","rest","_objectWithoutProperties","_excluded","valueProviderProps","createElement","Provider","value","_extends","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Value/SummaryList/SummaryList.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { removeUndefinedProps } from '../../../../shared/component-helper'\nimport SummaryListContext from './SummaryListContext'\nimport Dl, { DlAllProps } from '../../../../elements/Dl'\nimport ValueProvider from '../Provider/ValueProvider'\n\nexport type Props = Omit<DlAllProps, 'label'> & {\n inheritVisibility?:
|
|
1
|
+
{"version":3,"file":"SummaryList.js","names":["React","classnames","removeUndefinedProps","SummaryListContext","Dl","ValueProvider","SummaryList","props","className","children","layout","transformLabel","inheritVisibility","inheritLabel","rest","_objectWithoutProperties","_excluded","valueProviderProps","createElement","Provider","value","_extends","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Value/SummaryList/SummaryList.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { removeUndefinedProps } from '../../../../shared/component-helper'\nimport SummaryListContext from './SummaryListContext'\nimport Dl, { DlAllProps } from '../../../../elements/Dl'\nimport ValueProvider from '../Provider/ValueProvider'\nimport { ValueProps } from '../../types'\n\nexport type Props = Omit<DlAllProps, 'label'> & {\n transformLabel?: ValueProps['transformLabel']\n inheritVisibility?: ValueProps['inheritVisibility']\n inheritLabel?: ValueProps['inheritLabel']\n}\n\nfunction SummaryList(props: Props) {\n const {\n className,\n children,\n layout,\n transformLabel,\n inheritVisibility,\n inheritLabel,\n ...rest\n } = props\n\n const valueProviderProps = removeUndefinedProps({\n transformLabel,\n inheritVisibility,\n inheritLabel,\n })\n\n return (\n <SummaryListContext.Provider value={{ layout }}>\n <Dl\n className={classnames('dnb-forms-summary-list', className)}\n layout={layout}\n {...rest}\n >\n <ValueProvider {...valueProviderProps}>{children}</ValueProvider>\n </Dl>\n </SummaryListContext.Provider>\n )\n}\n\nSummaryList._supportsSpacingProps = true\n\nexport default SummaryList\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,oBAAoB,QAAQ,qCAAqC;AAC1E,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,OAAOC,EAAE,MAAsB,yBAAyB;AACxD,OAAOC,aAAa,MAAM,2BAA2B;AASrD,SAASC,WAAWA,CAACC,KAAY,EAAE;EACjC,MAAM;MACJC,SAAS;MACTC,QAAQ;MACRC,MAAM;MACNC,cAAc;MACdC,iBAAiB;MACjBC;IAEF,CAAC,GAAGN,KAAK;IADJO,IAAI,GAAAC,wBAAA,CACLR,KAAK,EAAAS,SAAA;EAET,MAAMC,kBAAkB,GAAGf,oBAAoB,CAAC;IAC9CS,cAAc;IACdC,iBAAiB;IACjBC;EACF,CAAC,CAAC;EAEF,OACEb,KAAA,CAAAkB,aAAA,CAACf,kBAAkB,CAACgB,QAAQ;IAACC,KAAK,EAAE;MAAEV;IAAO;EAAE,GAC7CV,KAAA,CAAAkB,aAAA,CAACd,EAAE,EAAAiB,QAAA;IACDb,SAAS,EAAEP,UAAU,CAAC,wBAAwB,EAAEO,SAAS,CAAE;IAC3DE,MAAM,EAAEA;EAAO,GACXI,IAAI,GAERd,KAAA,CAAAkB,aAAA,CAACb,aAAa,EAAKY,kBAAkB,EAAGR,QAAwB,CAC9D,CACuB,CAAC;AAElC;AAEAH,WAAW,CAACgB,qBAAqB,GAAG,IAAI;AAExC,eAAehB,WAAW"}
|
|
@@ -4,6 +4,11 @@ export const SummaryListProperties = {
|
|
|
4
4
|
type: 'string',
|
|
5
5
|
status: 'optional'
|
|
6
6
|
},
|
|
7
|
+
transformLabel: {
|
|
8
|
+
doc: 'Transforms the label before it gets displayed. Receives the label as the first parameter. The second parameter is a object containing the `convertJsxToString` function.',
|
|
9
|
+
type: 'function',
|
|
10
|
+
status: 'optional'
|
|
11
|
+
},
|
|
7
12
|
inheritVisibility: {
|
|
8
13
|
doc: 'Use this property to propagate the `inheritVisibility` property to all nested values.',
|
|
9
14
|
type: 'boolean',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SummaryListDocs.js","names":["SummaryListProperties","layout","doc","type","status","inheritVisibility","inheritLabel","children","StepEvents"],"sources":["../../../../../../src/extensions/forms/Value/SummaryList/SummaryListDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const SummaryListProperties: PropertiesTableProps = {\n layout: {\n doc: 'Use `grid`, `horizontal` or `vertical`.',\n type: 'string',\n status: 'optional',\n },\n inheritVisibility: {\n doc: 'Use this property to propagate the `inheritVisibility` property to all nested values.',\n type: 'boolean',\n status: 'optional',\n },\n inheritLabel: {\n doc: 'Use this property to propagate the `inheritLabel` property to all nested values.',\n type: 'boolean',\n status: 'optional',\n },\n children: {\n doc: '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 StepEvents: PropertiesTableProps = {}\n"],"mappings":"AAEA,OAAO,MAAMA,qBAA2C,GAAG;EACzDC,MAAM,EAAE;IACNC,GAAG,EAAE,yCAAyC;IAC9CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,iBAAiB,EAAE;
|
|
1
|
+
{"version":3,"file":"SummaryListDocs.js","names":["SummaryListProperties","layout","doc","type","status","transformLabel","inheritVisibility","inheritLabel","children","StepEvents"],"sources":["../../../../../../src/extensions/forms/Value/SummaryList/SummaryListDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\n\nexport const SummaryListProperties: PropertiesTableProps = {\n layout: {\n doc: 'Use `grid`, `horizontal` or `vertical`.',\n type: 'string',\n status: 'optional',\n },\n transformLabel: {\n doc: 'Transforms the label before it gets displayed. Receives the label as the first parameter. The second parameter is a object containing the `convertJsxToString` function.',\n type: 'function',\n status: 'optional',\n },\n inheritVisibility: {\n doc: 'Use this property to propagate the `inheritVisibility` property to all nested values.',\n type: 'boolean',\n status: 'optional',\n },\n inheritLabel: {\n doc: 'Use this property to propagate the `inheritLabel` property to all nested values.',\n type: 'boolean',\n status: 'optional',\n },\n children: {\n doc: '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 StepEvents: PropertiesTableProps = {}\n"],"mappings":"AAEA,OAAO,MAAMA,qBAA2C,GAAG;EACzDC,MAAM,EAAE;IACNC,GAAG,EAAE,yCAAyC;IAC9CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,cAAc,EAAE;IACdH,GAAG,EAAE,0KAA0K;IAC/KC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDE,iBAAiB,EAAE;IACjBJ,GAAG,EAAE,uFAAuF;IAC5FC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDG,YAAY,EAAE;IACZL,GAAG,EAAE,kFAAkF;IACvFC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDI,QAAQ,EAAE;IACRN,GAAG,EAAE,WAAW;IAChBC,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;AAED,OAAO,MAAMK,UAAgC,GAAG,CAAC,CAAC"}
|
|
@@ -14,6 +14,11 @@ export const ValueProperties = {
|
|
|
14
14
|
type: 'string',
|
|
15
15
|
status: 'optional'
|
|
16
16
|
},
|
|
17
|
+
transformLabel: {
|
|
18
|
+
doc: 'Transforms the label before it gets displayed. Receives the label as the first parameter. The second parameter is a object containing the `convertJsxToString` function.',
|
|
19
|
+
type: 'function',
|
|
20
|
+
status: 'optional'
|
|
21
|
+
},
|
|
17
22
|
inheritLabel: {
|
|
18
23
|
doc: 'Use `true` to inherit the label from a visible (rendered) field with the same path.',
|
|
19
24
|
type: 'boolean',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValueDocs.js","names":["ValueProperties","value","doc","type","status","defaultValue","label","inheritLabel","inheritVisibility","showEmpty","placeholder","path","inline","maxWidth","transformIn"],"sources":["../../../../../src/extensions/forms/Value/ValueDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../shared/types'\n\nexport const ValueProperties: PropertiesTableProps = {\n value: {\n doc: 'Value for the value component. Will take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n defaultValue: {\n doc: 'Default value for the value component. Will not take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n label: {\n doc: 'Field label to show above the displayed value.',\n type: 'string',\n status: 'optional',\n },\n inheritLabel: {\n doc: 'Use `true` to inherit the label from a visible (rendered) field with the same path.',\n type: 'boolean',\n status: 'optional',\n },\n inheritVisibility: {\n doc: 'Use `true` to inherit the visibility from a field with the same path. You can find more info in the [Value section](/uilib/extensions/forms/Value/#inherit-visibility-from-fields-based-on-path).',\n type: 'boolean',\n status: 'optional',\n },\n showEmpty: {\n doc: 'Shows the value even if it is empty.',\n type: 'boolean',\n status: 'optional',\n },\n placeholder: {\n doc: 'Text showing in place of the value if no value is given.',\n type: 'string',\n status: 'optional',\n },\n path: {\n doc: 'JSON Pointer for where the data for this input is located in the source dataset.',\n type: 'string',\n status: 'optional',\n },\n inline: {\n doc: 'For showing the value inline (not as a block element).',\n type: 'boolean',\n status: 'optional',\n },\n maxWidth: {\n doc: 'Use `auto` for no max-width (use browser default), `small`, `medium` or `large` for predefined standard max widths. Defaults to `large`.',\n type: 'string',\n status: 'optional',\n },\n transformIn: {\n doc: 'Transforms the `value` before its displayed in the value component.',\n type: 'function',\n status: 'optional',\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"],"mappings":"AAEA,OAAO,MAAMA,eAAqC,GAAG;EACnDC,KAAK,EAAE;IACLC,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZH,GAAG,EAAE,gHAAgH;IACrHC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDE,KAAK,EAAE;IACLJ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,YAAY,EAAE;
|
|
1
|
+
{"version":3,"file":"ValueDocs.js","names":["ValueProperties","value","doc","type","status","defaultValue","label","transformLabel","inheritLabel","inheritVisibility","showEmpty","placeholder","path","inline","maxWidth","transformIn"],"sources":["../../../../../src/extensions/forms/Value/ValueDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../shared/types'\n\nexport const ValueProperties: PropertiesTableProps = {\n value: {\n doc: 'Value for the value component. Will take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n defaultValue: {\n doc: 'Default value for the value component. Will not take precedence over the path value given in the data context.',\n type: '{valueType}',\n status: 'optional',\n },\n label: {\n doc: 'Field label to show above the displayed value.',\n type: 'string',\n status: 'optional',\n },\n transformLabel: {\n doc: 'Transforms the label before it gets displayed. Receives the label as the first parameter. The second parameter is a object containing the `convertJsxToString` function.',\n type: 'function',\n status: 'optional',\n },\n inheritLabel: {\n doc: 'Use `true` to inherit the label from a visible (rendered) field with the same path.',\n type: 'boolean',\n status: 'optional',\n },\n inheritVisibility: {\n doc: 'Use `true` to inherit the visibility from a field with the same path. You can find more info in the [Value section](/uilib/extensions/forms/Value/#inherit-visibility-from-fields-based-on-path).',\n type: 'boolean',\n status: 'optional',\n },\n showEmpty: {\n doc: 'Shows the value even if it is empty.',\n type: 'boolean',\n status: 'optional',\n },\n placeholder: {\n doc: 'Text showing in place of the value if no value is given.',\n type: 'string',\n status: 'optional',\n },\n path: {\n doc: 'JSON Pointer for where the data for this input is located in the source dataset.',\n type: 'string',\n status: 'optional',\n },\n inline: {\n doc: 'For showing the value inline (not as a block element).',\n type: 'boolean',\n status: 'optional',\n },\n maxWidth: {\n doc: 'Use `auto` for no max-width (use browser default), `small`, `medium` or `large` for predefined standard max widths. Defaults to `large`.',\n type: 'string',\n status: 'optional',\n },\n transformIn: {\n doc: 'Transforms the `value` before its displayed in the value component.',\n type: 'function',\n status: 'optional',\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"],"mappings":"AAEA,OAAO,MAAMA,eAAqC,GAAG;EACnDC,KAAK,EAAE;IACLC,GAAG,EAAE,oGAAoG;IACzGC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDC,YAAY,EAAE;IACZH,GAAG,EAAE,gHAAgH;IACrHC,IAAI,EAAE,aAAa;IACnBC,MAAM,EAAE;EACV,CAAC;EACDE,KAAK,EAAE;IACLJ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,cAAc,EAAE;IACdL,GAAG,EAAE,0KAA0K;IAC/KC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDI,YAAY,EAAE;IACZN,GAAG,EAAE,qFAAqF;IAC1FC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDK,iBAAiB,EAAE;IACjBP,GAAG,EAAE,mMAAmM;IACxMC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDM,SAAS,EAAE;IACTR,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDO,WAAW,EAAE;IACXT,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,IAAI,EAAE;IACJV,GAAG,EAAE,kFAAkF;IACvFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDS,MAAM,EAAE;IACNX,GAAG,EAAE,wDAAwD;IAC7DC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,QAAQ,EAAE;IACRZ,GAAG,EAAE,0IAA0I;IAC/IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDW,WAAW,EAAE;IACXb,GAAG,EAAE,qEAAqE;IAC1EC,IAAI,EAAE,UAAU;IAChBC,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"}
|
|
@@ -14,9 +14,9 @@ function Buttons(props) {
|
|
|
14
14
|
} = props;
|
|
15
15
|
const {
|
|
16
16
|
activeIndex,
|
|
17
|
-
|
|
17
|
+
stepsRef
|
|
18
18
|
} = useContext(WizardContext) || {};
|
|
19
|
-
const totalSteps = Object.keys((
|
|
19
|
+
const totalSteps = Object.keys((stepsRef === null || stepsRef === void 0 ? void 0 : stepsRef.current) || {}).length || 0;
|
|
20
20
|
const showPreviousButton = activeIndex > 0;
|
|
21
21
|
const showNextButton = activeIndex < totalSteps - 1;
|
|
22
22
|
if (!showPreviousButton && !showNextButton) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Buttons.js","names":["React","useContext","classnames","ButtonRow","NextButton","PreviousButton","WizardContext","Buttons","props","className","activeIndex","
|
|
1
|
+
{"version":3,"file":"Buttons.js","names":["React","useContext","classnames","ButtonRow","NextButton","PreviousButton","WizardContext","Buttons","props","className","activeIndex","stepsRef","totalSteps","Object","keys","current","length","showPreviousButton","showNextButton","createElement","_extends","_PreviousButton","_NextButton","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Wizard/Buttons/Buttons.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport { ComponentProps } from '../../types'\nimport ButtonRow from '../../Form/ButtonRow'\nimport NextButton from '../NextButton'\nimport PreviousButton from '../PreviousButton'\nimport WizardContext from '../Context'\n\nexport type Props = ComponentProps & {\n children?: string\n}\n\nfunction Buttons(props: Props) {\n const { className } = props\n const { activeIndex, stepsRef } = useContext(WizardContext) || {}\n\n const totalSteps = Object.keys(stepsRef?.current || {}).length || 0\n const showPreviousButton = activeIndex > 0\n const showNextButton = activeIndex < totalSteps - 1\n\n if (!showPreviousButton && !showNextButton) {\n return null\n }\n\n return (\n <ButtonRow\n className={classnames('dnb-forms-buttons', className)}\n {...props}\n >\n {showPreviousButton && <PreviousButton />}\n {showNextButton && <NextButton />}\n </ButtonRow>\n )\n}\n\nButtons._supportsSpacingProps = true\nexport default Buttons\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,UAAU,MAAM,YAAY;AAEnC,OAAOC,SAAS,MAAM,sBAAsB;AAC5C,OAAOC,UAAU,MAAM,eAAe;AACtC,OAAOC,cAAc,MAAM,mBAAmB;AAC9C,OAAOC,aAAa,MAAM,YAAY;AAMtC,SAASC,OAAOA,CAACC,KAAY,EAAE;EAC7B,MAAM;IAAEC;EAAU,CAAC,GAAGD,KAAK;EAC3B,MAAM;IAAEE,WAAW;IAAEC;EAAS,CAAC,GAAGV,UAAU,CAACK,aAAa,CAAC,IAAI,CAAC,CAAC;EAEjE,MAAMM,UAAU,GAAGC,MAAM,CAACC,IAAI,CAAC,CAAAH,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEI,OAAO,KAAI,CAAC,CAAC,CAAC,CAACC,MAAM,IAAI,CAAC;EACnE,MAAMC,kBAAkB,GAAGP,WAAW,GAAG,CAAC;EAC1C,MAAMQ,cAAc,GAAGR,WAAW,GAAGE,UAAU,GAAG,CAAC;EAEnD,IAAI,CAACK,kBAAkB,IAAI,CAACC,cAAc,EAAE;IAC1C,OAAO,IAAI;EACb;EAEA,OACElB,KAAA,CAAAmB,aAAA,CAAChB,SAAS,EAAAiB,QAAA;IACRX,SAAS,EAAEP,UAAU,CAAC,mBAAmB,EAAEO,SAAS;EAAE,GAClDD,KAAK,GAERS,kBAAkB,KAAAI,eAAA,KAAAA,eAAA,GAAIrB,KAAA,CAAAmB,aAAA,CAACd,cAAc,MAAE,CAAC,IACxCa,cAAc,KAAAI,WAAA,KAAAA,WAAA,GAAItB,KAAA,CAAAmB,aAAA,CAACf,UAAU,MAAE,CAAC,EACxB,CAAC;AAEhB;AAEAG,OAAO,CAACgB,qBAAqB,GAAG,IAAI;AACpC,eAAehB,OAAO"}
|