@dnb/eufemia 10.73.2 → 10.74.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/cjs/components/autocomplete/Autocomplete.js +7 -4
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/autocomplete/AutocompleteDocs.d.ts +289 -3
- package/cjs/components/autocomplete/AutocompleteDocs.js +2 -2
- package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -1
- package/cjs/components/button/style/dnb-button.css +1 -0
- package/cjs/components/button/style/dnb-button.min.css +1 -1
- package/cjs/components/button/style/dnb-button.scss +1 -0
- package/cjs/components/checkbox/Checkbox.d.ts +9 -1
- package/cjs/components/checkbox/Checkbox.js +59 -34
- package/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/cjs/components/checkbox/CheckboxDocs.js +6 -1
- package/cjs/components/checkbox/CheckboxDocs.js.map +1 -1
- package/cjs/components/date-picker/DatePicker.d.ts +4 -0
- package/cjs/components/date-picker/DatePicker.js +4 -3
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalendar.d.ts +2 -16
- package/cjs/components/date-picker/DatePickerCalendar.js +27 -86
- package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
- package/cjs/components/date-picker/DatePickerCalendarNavigator.js +173 -0
- package/cjs/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
- package/cjs/components/date-picker/DatePickerContext.d.ts +3 -0
- package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
- package/cjs/components/date-picker/DatePickerDocs.js +6 -1
- package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
- package/cjs/components/date-picker/DatePickerFooter.js +20 -17
- package/cjs/components/date-picker/DatePickerFooter.js.map +1 -1
- package/cjs/components/date-picker/DatePickerProvider.js +7 -0
- package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
- package/cjs/components/date-picker/DatePickerRange.js +2 -28
- package/cjs/components/date-picker/DatePickerRange.js.map +1 -1
- package/cjs/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
- package/cjs/components/date-picker/hooks/useSubmittedDates.js +19 -0
- package/cjs/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
- package/cjs/components/date-picker/style/dnb-date-picker.css +1 -1
- package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/cjs/components/date-picker/style/dnb-date-picker.scss +1 -1
- package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
- package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
- package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
- package/cjs/components/drawer/Drawer.js +1 -0
- package/cjs/components/drawer/Drawer.js.map +1 -1
- package/cjs/components/dropdown/Dropdown.js +6 -4
- package/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/cjs/components/dropdown/DropdownDocs.d.ts +179 -3
- package/cjs/components/dropdown/DropdownDocs.js.map +1 -1
- package/cjs/components/heading/HeadingHelpers.js +9 -5
- package/cjs/components/heading/HeadingHelpers.js.map +1 -1
- package/cjs/components/icon/Icon.d.ts +2 -2
- package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
- package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
- package/cjs/components/input-masked/InputMaskedHooks.d.ts +1 -0
- package/cjs/components/input-masked/InputMaskedHooks.js +38 -6
- package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/cjs/components/input-masked/InputMaskedUtils.js +5 -4
- package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/cjs/components/number-format/NumberUtils.js +6 -4
- package/cjs/components/number-format/NumberUtils.js.map +1 -1
- package/cjs/components/switch/SwitchDocs.js +2 -2
- package/cjs/components/switch/SwitchDocs.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +9 -0
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
- package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
- package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +8 -1
- package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Date/Date.d.ts +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/NumberDocs.js +1 -1
- package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +2 -2
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +2 -2
- package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.d.ts +2 -0
- package/cjs/extensions/forms/Field/Selection/Selection.js +10 -9
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +24 -8
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
- package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js +8 -1
- package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
- package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js +64 -0
- package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
- package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
- package/cjs/extensions/forms/Form/Isolation/Isolation.js +39 -14
- package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationContext.js +11 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js +31 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js +112 -0
- package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
- package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
- package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js +58 -0
- package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
- package/cjs/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
- package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js +57 -0
- package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
- package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +11 -9
- package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
- package/cjs/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
- package/cjs/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/index.js +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +15 -56
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -1
- package/cjs/extensions/forms/constants/locales/en-GB.js +3 -3
- package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -1
- package/cjs/extensions/forms/constants/locales/index.d.ts +2 -2
- package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
- package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -3
- package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
- package/cjs/extensions/forms/constants/locales/sv-SE.js +3 -3
- package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataContext.js +5 -3
- package/cjs/extensions/forms/hooks/useDataContext.js.map +1 -1
- package/cjs/extensions/forms/hooks/useSnapshot.js +17 -14
- package/cjs/extensions/forms/hooks/useSnapshot.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerList.d.ts +176 -224
- package/cjs/fragments/drawer-list/DrawerList.js +70 -175
- package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListContext.d.ts +27 -2
- package/cjs/fragments/drawer-list/DrawerListContext.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
- package/cjs/fragments/drawer-list/DrawerListDocs.js +2 -2
- package/cjs/fragments/drawer-list/DrawerListDocs.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
- package/cjs/fragments/drawer-list/DrawerListHelpers.js +52 -58
- package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListItem.d.ts +30 -0
- package/cjs/fragments/drawer-list/DrawerListItem.js +106 -0
- package/cjs/fragments/drawer-list/DrawerListItem.js.map +1 -0
- package/cjs/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
- package/cjs/fragments/drawer-list/DrawerListPortal.js +93 -125
- package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
- package/cjs/fragments/drawer-list/DrawerListProvider.js +11 -18
- package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/component-helper.d.ts +45 -48
- package/cjs/shared/component-helper.js +72 -201
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/shared/helpers/withCamelCaseProps.d.ts +4 -5
- package/cjs/shared/helpers/withCamelCaseProps.js +7 -2
- package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
- package/cjs/shared/legacy/component-helper-legacy.d.ts +19 -0
- package/cjs/shared/legacy/component-helper-legacy.js +202 -0
- package/cjs/shared/legacy/component-helper-legacy.js.map +1 -0
- package/cjs/shared/locales/en-GB.d.ts +1 -0
- package/cjs/shared/locales/en-GB.js +1 -0
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.js.map +1 -1
- package/cjs/shared/locales/index.d.ts +2 -0
- package/cjs/shared/locales/nb-NO.d.ts +1 -0
- package/cjs/shared/locales/nb-NO.js +2 -1
- package/cjs/shared/locales/nb-NO.js.map +1 -1
- package/cjs/shared/locales/sv-SE.d.ts +1 -0
- package/cjs/shared/locales/sv-SE.js +1 -0
- package/cjs/shared/locales/sv-SE.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 +2 -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/themes/theme-eiendom/eiendom-theme-components.css +19 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-ui/ui-theme-components.css +19 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/components/autocomplete/Autocomplete.js +6 -3
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/autocomplete/AutocompleteDocs.d.ts +289 -3
- package/components/autocomplete/AutocompleteDocs.js +1 -1
- package/components/autocomplete/AutocompleteDocs.js.map +1 -1
- package/components/button/style/dnb-button.css +1 -0
- package/components/button/style/dnb-button.min.css +1 -1
- package/components/button/style/dnb-button.scss +1 -0
- package/components/checkbox/Checkbox.d.ts +9 -1
- package/components/checkbox/Checkbox.js +60 -35
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/checkbox/CheckboxDocs.js +6 -1
- package/components/checkbox/CheckboxDocs.js.map +1 -1
- package/components/date-picker/DatePicker.d.ts +4 -0
- package/components/date-picker/DatePicker.js +4 -3
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerCalendar.d.ts +2 -16
- package/components/date-picker/DatePickerCalendar.js +27 -86
- package/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
- package/components/date-picker/DatePickerCalendarNavigator.js +162 -0
- package/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
- package/components/date-picker/DatePickerContext.d.ts +3 -0
- package/components/date-picker/DatePickerContext.js.map +1 -1
- package/components/date-picker/DatePickerDocs.js +6 -1
- package/components/date-picker/DatePickerDocs.js.map +1 -1
- package/components/date-picker/DatePickerFooter.js +20 -17
- package/components/date-picker/DatePickerFooter.js.map +1 -1
- package/components/date-picker/DatePickerProvider.js +7 -0
- package/components/date-picker/DatePickerProvider.js.map +1 -1
- package/components/date-picker/DatePickerRange.js +2 -28
- package/components/date-picker/DatePickerRange.js.map +1 -1
- package/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
- package/components/date-picker/hooks/useSubmittedDates.js +14 -0
- package/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
- package/components/date-picker/style/dnb-date-picker.css +1 -1
- package/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/components/date-picker/style/dnb-date-picker.scss +1 -1
- package/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
- package/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
- package/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
- package/components/drawer/Drawer.js +1 -0
- package/components/drawer/Drawer.js.map +1 -1
- package/components/dropdown/Dropdown.js +6 -4
- package/components/dropdown/Dropdown.js.map +1 -1
- package/components/dropdown/DropdownDocs.d.ts +179 -3
- package/components/dropdown/DropdownDocs.js.map +1 -1
- package/components/heading/HeadingHelpers.js +9 -5
- package/components/heading/HeadingHelpers.js.map +1 -1
- package/components/icon/Icon.d.ts +2 -2
- package/components/input-masked/InputMaskedDocs.js +1 -1
- package/components/input-masked/InputMaskedDocs.js.map +1 -1
- package/components/input-masked/InputMaskedHooks.d.ts +1 -0
- package/components/input-masked/InputMaskedHooks.js +39 -7
- package/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/components/input-masked/InputMaskedUtils.js +6 -5
- package/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/components/number-format/NumberUtils.js +5 -4
- package/components/number-format/NumberUtils.js.map +1 -1
- package/components/switch/SwitchDocs.js +2 -2
- package/components/switch/SwitchDocs.js.map +1 -1
- package/es/components/autocomplete/Autocomplete.js +6 -3
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/autocomplete/AutocompleteDocs.d.ts +289 -3
- package/es/components/autocomplete/AutocompleteDocs.js +1 -1
- package/es/components/autocomplete/AutocompleteDocs.js.map +1 -1
- package/es/components/button/style/dnb-button.css +1 -0
- package/es/components/button/style/dnb-button.min.css +1 -1
- package/es/components/button/style/dnb-button.scss +1 -0
- package/es/components/checkbox/Checkbox.d.ts +9 -1
- package/es/components/checkbox/Checkbox.js +60 -35
- package/es/components/checkbox/Checkbox.js.map +1 -1
- package/es/components/checkbox/CheckboxDocs.js +6 -1
- package/es/components/checkbox/CheckboxDocs.js.map +1 -1
- package/es/components/date-picker/DatePicker.d.ts +4 -0
- package/es/components/date-picker/DatePicker.js +4 -3
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerCalendar.d.ts +2 -16
- package/es/components/date-picker/DatePickerCalendar.js +23 -80
- package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/es/components/date-picker/DatePickerCalendarNavigator.d.ts +37 -0
- package/es/components/date-picker/DatePickerCalendarNavigator.js +158 -0
- package/es/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
- package/es/components/date-picker/DatePickerContext.d.ts +3 -0
- package/es/components/date-picker/DatePickerContext.js.map +1 -1
- package/es/components/date-picker/DatePickerDocs.js +6 -1
- package/es/components/date-picker/DatePickerDocs.js.map +1 -1
- package/es/components/date-picker/DatePickerFooter.js +20 -17
- package/es/components/date-picker/DatePickerFooter.js.map +1 -1
- package/es/components/date-picker/DatePickerProvider.js +7 -0
- package/es/components/date-picker/DatePickerProvider.js.map +1 -1
- package/es/components/date-picker/DatePickerRange.js +2 -27
- package/es/components/date-picker/DatePickerRange.js.map +1 -1
- package/es/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
- package/es/components/date-picker/hooks/useSubmittedDates.js +14 -0
- package/es/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
- package/es/components/date-picker/style/dnb-date-picker.css +1 -1
- package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/es/components/date-picker/style/dnb-date-picker.scss +1 -1
- package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +17 -0
- package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
- package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +19 -0
- package/es/components/drawer/Drawer.js +1 -0
- package/es/components/drawer/Drawer.js.map +1 -1
- package/es/components/dropdown/Dropdown.js +6 -4
- package/es/components/dropdown/Dropdown.js.map +1 -1
- package/es/components/dropdown/DropdownDocs.d.ts +179 -3
- package/es/components/dropdown/DropdownDocs.js.map +1 -1
- package/es/components/heading/HeadingHelpers.js +9 -5
- package/es/components/heading/HeadingHelpers.js.map +1 -1
- package/es/components/icon/Icon.d.ts +2 -2
- package/es/components/input-masked/InputMaskedDocs.js +1 -1
- package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
- package/es/components/input-masked/InputMaskedHooks.d.ts +1 -0
- package/es/components/input-masked/InputMaskedHooks.js +39 -7
- package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/es/components/input-masked/InputMaskedUtils.js +6 -5
- package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/es/components/number-format/NumberUtils.js +5 -4
- package/es/components/number-format/NumberUtils.js.map +1 -1
- package/es/components/switch/SwitchDocs.js +2 -2
- package/es/components/switch/SwitchDocs.js.map +1 -1
- package/es/extensions/forms/DataContext/Context.d.ts +1 -1
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +9 -0
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
- package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/es/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
- package/es/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
- package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
- package/es/extensions/forms/Field/Date/Date.d.ts +1 -1
- package/es/extensions/forms/Field/Date/Date.js +1 -1
- package/es/extensions/forms/Field/Date/Date.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/es/extensions/forms/Field/Number/NumberDocs.js +1 -1
- package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
- package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
- package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
- package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.d.ts +2 -0
- package/es/extensions/forms/Field/Selection/Selection.js +9 -8
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
- package/es/extensions/forms/Field/Toggle/Toggle.js +24 -6
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
- package/es/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
- package/es/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
- package/es/extensions/forms/Form/Isolation/IsolatedContainer.js +53 -0
- package/es/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
- package/es/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
- package/es/extensions/forms/Form/Isolation/Isolation.js +40 -14
- package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
- package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
- package/es/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
- package/es/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
- package/es/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
- package/es/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
- package/es/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
- package/es/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
- package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
- package/es/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
- package/es/extensions/forms/Form/Isolation/IsolationResetButton.js +99 -0
- package/es/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
- package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
- package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js +50 -0
- package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
- package/es/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
- package/es/extensions/forms/Form/Isolation/useHandleStatus.js +48 -0
- package/es/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
- package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
- package/es/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
- package/es/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
- package/es/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
- package/es/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
- package/es/extensions/forms/Iterate/EditContainer/index.js +1 -1
- package/es/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +16 -55
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -1
- package/es/extensions/forms/constants/locales/en-GB.js +3 -3
- package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-US.d.ts +1 -1
- package/es/extensions/forms/constants/locales/index.d.ts +2 -2
- package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
- package/es/extensions/forms/constants/locales/nb-NO.js +3 -3
- package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
- package/es/extensions/forms/constants/locales/sv-SE.js +3 -3
- package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
- package/es/extensions/forms/hooks/useDataContext.js +5 -3
- package/es/extensions/forms/hooks/useDataContext.js.map +1 -1
- package/es/extensions/forms/hooks/useSnapshot.js +18 -15
- package/es/extensions/forms/hooks/useSnapshot.js.map +1 -1
- package/es/fragments/drawer-list/DrawerList.d.ts +176 -224
- package/es/fragments/drawer-list/DrawerList.js +72 -173
- package/es/fragments/drawer-list/DrawerList.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListContext.d.ts +27 -2
- package/es/fragments/drawer-list/DrawerListContext.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
- package/es/fragments/drawer-list/DrawerListDocs.js +2 -2
- package/es/fragments/drawer-list/DrawerListDocs.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
- package/es/fragments/drawer-list/DrawerListHelpers.js +45 -54
- package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListItem.d.ts +30 -0
- package/es/fragments/drawer-list/DrawerListItem.js +90 -0
- package/es/fragments/drawer-list/DrawerListItem.js.map +1 -0
- package/es/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
- package/es/fragments/drawer-list/DrawerListPortal.js +88 -120
- package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
- package/es/fragments/drawer-list/DrawerListProvider.js +33 -19
- package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/component-helper.d.ts +45 -48
- package/es/shared/component-helper.js +20 -183
- package/es/shared/component-helper.js.map +1 -1
- package/es/shared/helpers/withCamelCaseProps.d.ts +4 -5
- package/es/shared/helpers/withCamelCaseProps.js +7 -2
- package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
- package/es/shared/legacy/component-helper-legacy.d.ts +19 -0
- package/es/shared/legacy/component-helper-legacy.js +180 -0
- package/es/shared/legacy/component-helper-legacy.js.map +1 -0
- package/es/shared/locales/en-GB.d.ts +1 -0
- package/es/shared/locales/en-GB.js +1 -0
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.js.map +1 -1
- package/es/shared/locales/index.d.ts +2 -0
- package/es/shared/locales/nb-NO.d.ts +1 -0
- package/es/shared/locales/nb-NO.js +2 -1
- package/es/shared/locales/nb-NO.js.map +1 -1
- package/es/shared/locales/sv-SE.d.ts +1 -0
- package/es/shared/locales/sv-SE.js +1 -0
- package/es/shared/locales/sv-SE.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 +2 -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/themes/theme-eiendom/eiendom-theme-components.css +19 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/es/style/themes/theme-ui/ui-theme-components.css +19 -1
- package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- 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 +1 -1
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +9 -0
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/Boolean/Boolean.d.ts +1 -0
- package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
- package/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
- package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
- package/extensions/forms/Field/Date/Date.d.ts +1 -1
- package/extensions/forms/Field/Date/Date.js +1 -1
- package/extensions/forms/Field/Date/Date.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/extensions/forms/Field/Number/NumberDocs.js +1 -1
- package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
- package/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
- package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
- package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
- package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
- package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.d.ts +2 -0
- package/extensions/forms/Field/Selection/Selection.js +10 -9
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
- package/extensions/forms/Field/Toggle/Toggle.js +26 -9
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
- package/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
- package/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
- package/extensions/forms/Form/Isolation/IsolatedContainer.js +54 -0
- package/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
- package/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
- package/extensions/forms/Form/Isolation/Isolation.js +40 -15
- package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
- package/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
- package/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
- package/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
- package/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
- package/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
- package/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
- package/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
- package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
- package/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
- package/extensions/forms/Form/Isolation/IsolationResetButton.js +100 -0
- package/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
- package/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
- package/extensions/forms/Form/Isolation/useDataContextSnapshot.js +52 -0
- package/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
- package/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
- package/extensions/forms/Form/Isolation/useHandleStatus.js +51 -0
- package/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
- package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
- package/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
- package/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
- package/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
- package/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
- package/extensions/forms/Iterate/EditContainer/index.js +1 -1
- package/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
- package/extensions/forms/Iterate/PushContainer/PushContainer.js +16 -57
- package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/extensions/forms/constants/locales/en-GB.d.ts +1 -1
- package/extensions/forms/constants/locales/en-GB.js +3 -3
- package/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/extensions/forms/constants/locales/en-US.d.ts +1 -1
- package/extensions/forms/constants/locales/index.d.ts +2 -2
- package/extensions/forms/constants/locales/nb-NO.d.ts +1 -1
- package/extensions/forms/constants/locales/nb-NO.js +3 -3
- package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/extensions/forms/constants/locales/sv-SE.d.ts +1 -1
- package/extensions/forms/constants/locales/sv-SE.js +3 -3
- package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
- package/extensions/forms/hooks/useDataContext.js +5 -3
- package/extensions/forms/hooks/useDataContext.js.map +1 -1
- package/extensions/forms/hooks/useSnapshot.js +18 -15
- package/extensions/forms/hooks/useSnapshot.js.map +1 -1
- package/fragments/drawer-list/DrawerList.d.ts +176 -224
- package/fragments/drawer-list/DrawerList.js +71 -175
- package/fragments/drawer-list/DrawerList.js.map +1 -1
- package/fragments/drawer-list/DrawerListContext.d.ts +27 -2
- package/fragments/drawer-list/DrawerListContext.js.map +1 -1
- package/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
- package/fragments/drawer-list/DrawerListDocs.js +2 -2
- package/fragments/drawer-list/DrawerListDocs.js.map +1 -1
- package/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
- package/fragments/drawer-list/DrawerListHelpers.js +45 -53
- package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/fragments/drawer-list/DrawerListItem.d.ts +30 -0
- package/fragments/drawer-list/DrawerListItem.js +91 -0
- package/fragments/drawer-list/DrawerListItem.js.map +1 -0
- package/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
- package/fragments/drawer-list/DrawerListPortal.js +91 -121
- package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
- package/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
- package/fragments/drawer-list/DrawerListProvider.js +12 -19
- package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/package.json +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/component-helper.d.ts +45 -48
- package/shared/component-helper.js +23 -189
- package/shared/component-helper.js.map +1 -1
- package/shared/helpers/withCamelCaseProps.d.ts +4 -5
- package/shared/helpers/withCamelCaseProps.js +7 -2
- package/shared/helpers/withCamelCaseProps.js.map +1 -1
- package/shared/legacy/component-helper-legacy.d.ts +19 -0
- package/shared/legacy/component-helper-legacy.js +185 -0
- package/shared/legacy/component-helper-legacy.js.map +1 -0
- package/shared/locales/en-GB.d.ts +1 -0
- package/shared/locales/en-GB.js +1 -0
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.js.map +1 -1
- package/shared/locales/index.d.ts +2 -0
- package/shared/locales/nb-NO.d.ts +1 -0
- package/shared/locales/nb-NO.js +2 -1
- package/shared/locales/nb-NO.js.map +1 -1
- package/shared/locales/sv-SE.d.ts +1 -0
- package/shared/locales/sv-SE.js +1 -0
- package/shared/locales/sv-SE.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 +2 -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/themes/theme-eiendom/eiendom-theme-components.css +19 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-components.css +19 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/style/themes/theme-ui/ui-theme-components.css +19 -1
- package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +1 -1
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
- package/es/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
- package/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
- /package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
- /package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
- /package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js
RENAMED
|
@@ -6,32 +6,34 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = useHasContentChanged;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var _Context = _interopRequireDefault(require("../../DataContext/Context"));
|
|
10
9
|
var _jsonPointer = _interopRequireDefault(require("../../utils/json-pointer"));
|
|
11
|
-
var
|
|
10
|
+
var _Context = _interopRequireDefault(require("../../DataContext/Context"));
|
|
11
|
+
var _useDataContextSnapshot = _interopRequireDefault(require("./useDataContextSnapshot"));
|
|
12
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
13
|
function useHasContentChanged() {
|
|
14
14
|
const {
|
|
15
15
|
internalDataRef
|
|
16
16
|
} = (0, _react.useContext)(_Context.default);
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
const {
|
|
18
|
+
snapshotRef
|
|
19
|
+
} = (0, _useDataContextSnapshot.default)({
|
|
20
|
+
enabled: true
|
|
21
|
+
});
|
|
21
22
|
const data = internalDataRef === null || internalDataRef === void 0 ? void 0 : internalDataRef.current;
|
|
23
|
+
const snapshot = snapshotRef === null || snapshotRef === void 0 ? void 0 : snapshotRef.current;
|
|
22
24
|
const hasContentChanged = (0, _react.useMemo)(() => {
|
|
23
|
-
if (data
|
|
25
|
+
if (!data || !snapshot) {
|
|
24
26
|
return undefined;
|
|
25
27
|
}
|
|
26
28
|
let hasChanged = false;
|
|
27
29
|
_jsonPointer.default.walk(data, (value, path) => {
|
|
28
|
-
if (_jsonPointer.default.has(
|
|
30
|
+
if (_jsonPointer.default.has(snapshot, path) && _jsonPointer.default.get(snapshot, path) !== value) {
|
|
29
31
|
hasChanged = true;
|
|
30
32
|
return false;
|
|
31
33
|
}
|
|
32
34
|
});
|
|
33
35
|
return hasChanged;
|
|
34
|
-
}, [data]);
|
|
36
|
+
}, [data, snapshot]);
|
|
35
37
|
return {
|
|
36
38
|
hasContentChanged
|
|
37
39
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHasContentChanged.js","names":["_react","require","_jsonPointer","_interopRequireDefault","_Context","_useDataContextSnapshot","e","__esModule","default","useHasContentChanged","internalDataRef","useContext","DataContext","snapshotRef","useDataContextSnapshot","enabled","data","current","snapshot","hasContentChanged","useMemo","undefined","hasChanged","pointer","walk","value","path","has","get"],"sources":["../../../../../../src/extensions/forms/Form/Isolation/useHasContentChanged.ts"],"sourcesContent":["import { useContext, useMemo } from 'react'\nimport pointer from '../../utils/json-pointer'\nimport DataContext from '../../DataContext/Context'\nimport useDataContextSnapshot from './useDataContextSnapshot'\n\nexport default function useHasContentChanged() {\n const { internalDataRef } = useContext(DataContext)\n const { snapshotRef } = useDataContextSnapshot({ enabled: true })\n\n const data = internalDataRef?.current\n const snapshot = snapshotRef?.current // To support a custom data reference, we need to have a snapshot in the hook deps.\n const hasContentChanged = useMemo(() => {\n if (!data || !snapshot) {\n return undefined\n }\n\n let hasChanged = false\n\n pointer.walk(data, (value, path) => {\n if (\n pointer.has(snapshot, path) &&\n pointer.get(snapshot, path) !== value\n ) {\n hasChanged = true\n return false\n }\n })\n\n return hasChanged\n }, [data, snapshot])\n\n return { hasContentChanged }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,uBAAA,GAAAF,sBAAA,CAAAF,OAAA;AAA6D,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE9C,SAASG,oBAAoBA,CAAA,EAAG;EAC7C,MAAM;IAAEC;EAAgB,CAAC,GAAG,IAAAC,iBAAU,EAACC,gBAAW,CAAC;EACnD,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,+BAAsB,EAAC;IAAEC,OAAO,EAAE;EAAK,CAAC,CAAC;EAEjE,MAAMC,IAAI,GAAGN,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEO,OAAO;EACrC,MAAMC,QAAQ,GAAGL,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEI,OAAO;EACrC,MAAME,iBAAiB,GAAG,IAAAC,cAAO,EAAC,MAAM;IACtC,IAAI,CAACJ,IAAI,IAAI,CAACE,QAAQ,EAAE;MACtB,OAAOG,SAAS;IAClB;IAEA,IAAIC,UAAU,GAAG,KAAK;IAEtBC,oBAAO,CAACC,IAAI,CAACR,IAAI,EAAE,CAACS,KAAK,EAAEC,IAAI,KAAK;MAClC,IACEH,oBAAO,CAACI,GAAG,CAACT,QAAQ,EAAEQ,IAAI,CAAC,IAC3BH,oBAAO,CAACK,GAAG,CAACV,QAAQ,EAAEQ,IAAI,CAAC,KAAKD,KAAK,EACrC;QACAH,UAAU,GAAG,IAAI;QACjB,OAAO,KAAK;MACd;IACF,CAAC,CAAC;IAEF,OAAOA,UAAU;EACnB,CAAC,EAAE,CAACN,IAAI,EAAEE,QAAQ,CAAC,CAAC;EAEpB,OAAO;IAAEC;EAAkB,CAAC;AAC9B","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
2
|
+
import { SharedStateId } from '../../../../shared/helpers/useSharedState';
|
|
3
|
+
export type SnapshotId = SharedStateId | number;
|
|
3
4
|
export type SnapshotName = string;
|
|
4
5
|
export type SnapshotProps = {
|
|
5
6
|
name: SnapshotName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Snapshot.js","names":["_react","_interopRequireWildcard","require","_SnapshotContext","_interopRequireDefault","_Context","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SnapshotProvider","props","name","children","snapshotsRef","useContext","DataContext","mountedFieldsRef","useRef","current","Map","setMountedField","useCallback","path","state","useEffect","contextValue","createElement","Provider","value","_supportsSpacingProps","undefined","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/Snapshot.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useRef } from 'react'\nimport SnapshotContext, {\n SnapshotContextState,\n SnapshotMap,\n} from './SnapshotContext'\nimport DataContext from '../../DataContext/Context'\n\nexport type SnapshotId =
|
|
1
|
+
{"version":3,"file":"Snapshot.js","names":["_react","_interopRequireWildcard","require","_SnapshotContext","_interopRequireDefault","_Context","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SnapshotProvider","props","name","children","snapshotsRef","useContext","DataContext","mountedFieldsRef","useRef","current","Map","setMountedField","useCallback","path","state","useEffect","contextValue","createElement","Provider","value","_supportsSpacingProps","undefined","_default","exports"],"sources":["../../../../../../src/extensions/forms/Form/Snapshot/Snapshot.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useRef } from 'react'\nimport SnapshotContext, {\n SnapshotContextState,\n SnapshotMap,\n} from './SnapshotContext'\nimport DataContext from '../../DataContext/Context'\nimport { SharedStateId } from '../../../../shared/helpers/useSharedState'\n\nexport type SnapshotId = SharedStateId | number\nexport type SnapshotName = string\n\nexport type SnapshotProps = {\n name: SnapshotName\n children: React.ReactNode\n}\n\nfunction SnapshotProvider(props: SnapshotProps) {\n const { name, children } = props\n\n const { snapshotsRef } = useContext(DataContext) || {}\n const mountedFieldsRef: SnapshotMap = useRef()\n if (!mountedFieldsRef.current) {\n mountedFieldsRef.current = new Map()\n }\n\n const setMountedField: SnapshotContextState['setMountedField'] =\n useCallback((path, state) => {\n mountedFieldsRef.current.set(path, state)\n }, [])\n\n useEffect(() => {\n if (snapshotsRef) {\n snapshotsRef.current.set(name, mountedFieldsRef.current)\n }\n }, [snapshotsRef, name])\n\n const contextValue = { name, setMountedField }\n\n return (\n <SnapshotContext.Provider value={contextValue}>\n {children}\n </SnapshotContext.Provider>\n )\n}\n\nSnapshotProvider._supportsSpacingProps = undefined\n\nexport default SnapshotProvider\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,7 +14,7 @@ var _IterateItemContext = _interopRequireDefault(require("../IterateItemContext"
|
|
|
14
14
|
var _ToolbarContext = _interopRequireDefault(require("../Toolbar/ToolbarContext"));
|
|
15
15
|
var _FieldBoundaryContext = _interopRequireDefault(require("../../DataContext/FieldBoundary/FieldBoundaryContext"));
|
|
16
16
|
var _icons = require("../../../../icons");
|
|
17
|
-
var _useHasContentChanged = _interopRequireDefault(require("
|
|
17
|
+
var _useHasContentChanged = _interopRequireDefault(require("../../Form/Isolation/useHasContentChanged"));
|
|
18
18
|
var _types = require("../../types");
|
|
19
19
|
const _excluded = ["text", "children", "onClick", "className", "hidden", "showConfirmDialog"];
|
|
20
20
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResetButton.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_useTranslation","_IterateItemContext","_ToolbarContext","_FieldBoundaryContext","_icons","_useHasContentChanged","_types","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","restoreOriginalValue","useContext","IterateItemContext","setShowBoundaryErrors","FieldBoundaryContext","setShowError","ToolbarContext","hasContentChanged","useHasContentChanged","buttonProps","omitDataValueReadWriteProps","resetButton","useTranslation","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","React","useRef","handleClick","useCallback","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","classnames","variant","icon","reset","icon_position","disabled","createElement","tabIndex","ref","Dialog","title","onConfirm","Button","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from './useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged()\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ResetButton.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_useTranslation","_IterateItemContext","_ToolbarContext","_FieldBoundaryContext","_icons","_useHasContentChanged","_types","_excluded","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","ResetButton","props","text","children","onClick","className","hidden","showConfirmDialog","restProps","restoreOriginalValue","useContext","IterateItemContext","setShowBoundaryErrors","FieldBoundaryContext","setShowError","ToolbarContext","hasContentChanged","useHasContentChanged","buttonProps","omitDataValueReadWriteProps","resetButton","useTranslation","IterateEditContainer","confirmResetText","textContent","buttonWrapperRef","React","useRef","handleClick","useCallback","_ref","_buttonWrapperRef$cur","close","event","current","focus","triggerAttributes","classnames","variant","icon","reset","icon_position","disabled","createElement","tabIndex","ref","Dialog","title","onConfirm","Button","on_click"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/ResetButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button, Dialog } from '../../../../components'\nimport useTranslation from '../../hooks/useTranslation'\nimport IterateItemContext from '../IterateItemContext'\nimport ToolbarContext from '../Toolbar/ToolbarContext'\nimport FieldBoundaryContext from '../../DataContext/FieldBoundary/FieldBoundaryContext'\nimport { reset } from '../../../../icons'\nimport { ButtonProps } from '../../../../components/Button'\nimport useHasContentChanged from '../../Form/Isolation/useHasContentChanged'\nimport { omitDataValueReadWriteProps } from '../../types'\n\ntype Props = ButtonProps & {\n showConfirmDialog?: boolean\n}\n\nexport default function ResetButton(props: Props) {\n const {\n text,\n children,\n onClick,\n className,\n hidden,\n showConfirmDialog = true,\n ...restProps\n } = props\n const { restoreOriginalValue } = useContext(IterateItemContext) || {}\n const { setShowBoundaryErrors } = useContext(FieldBoundaryContext) || {}\n const { setShowError } = useContext(ToolbarContext) || {}\n const { hasContentChanged } = useHasContentChanged()\n\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { resetButton } = useTranslation().IterateEditContainer\n const { confirmResetText } = useTranslation().IterateEditContainer\n const textContent = text || children || resetButton\n\n const buttonWrapperRef = React.useRef<HTMLButtonElement>(null)\n const handleClick = useCallback(\n ({ close, event }) => {\n close?.()\n onClick?.(event)\n restoreOriginalValue?.()\n setShowError(false)\n setShowBoundaryErrors?.(false)\n buttonWrapperRef.current?.focus()\n },\n [onClick, restoreOriginalValue, setShowBoundaryErrors, setShowError]\n )\n\n if (hidden) {\n return null\n }\n\n const triggerAttributes: ButtonProps = {\n className: classnames('dnb-forms-iterate__reset-button', className),\n text: textContent,\n variant: textContent ? 'tertiary' : 'secondary',\n icon: reset,\n icon_position: 'left',\n disabled:\n typeof hasContentChanged === 'boolean' ? !hasContentChanged : false,\n ...buttonProps,\n }\n\n return (\n <span tabIndex={-1} ref={buttonWrapperRef} className=\"dnb-no-focus\">\n {showConfirmDialog ? (\n <Dialog\n variant=\"confirmation\"\n title={confirmResetText}\n triggerAttributes={triggerAttributes}\n onConfirm={handleClick}\n />\n ) : (\n <Button\n {...triggerAttributes}\n on_click={handleClick}\n {...buttonProps}\n >\n {resetButton}\n </Button>\n )}\n </span>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,4 +3,4 @@ export * from './EditContainer';
|
|
|
3
3
|
export { default as DoneButton } from './DoneButton';
|
|
4
4
|
export { default as CancelButton } from './CancelButton';
|
|
5
5
|
export { default as ResetButton } from './ResetButton';
|
|
6
|
-
export { default as useHasContentChanged } from '
|
|
6
|
+
export { default as useHasContentChanged } from '../../Form/Isolation/useHasContentChanged';
|
|
@@ -55,7 +55,7 @@ Object.keys(_EditContainer).forEach(function (key) {
|
|
|
55
55
|
var _DoneButton = _interopRequireDefault(require("./DoneButton"));
|
|
56
56
|
var _CancelButton = _interopRequireDefault(require("./CancelButton"));
|
|
57
57
|
var _ResetButton = _interopRequireDefault(require("./ResetButton"));
|
|
58
|
-
var _useHasContentChanged = _interopRequireDefault(require("
|
|
58
|
+
var _useHasContentChanged = _interopRequireDefault(require("../../Form/Isolation/useHasContentChanged"));
|
|
59
59
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
60
60
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
61
61
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_EditContainer","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_DoneButton","_interopRequireDefault","_CancelButton","_ResetButton","_useHasContentChanged","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/index.ts"],"sourcesContent":["export { default } from './EditContainer'\nexport * from './EditContainer'\nexport { default as DoneButton } from './DoneButton'\nexport { default as CancelButton } from './CancelButton'\nexport { default as ResetButton } from './ResetButton'\nexport { default as useHasContentChanged } from '
|
|
1
|
+
{"version":3,"file":"index.js","names":["_EditContainer","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_DoneButton","_interopRequireDefault","_CancelButton","_ResetButton","_useHasContentChanged","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set"],"sources":["../../../../../../src/extensions/forms/Iterate/EditContainer/index.ts"],"sourcesContent":["export { default } from './EditContainer'\nexport * from './EditContainer'\nexport { default as DoneButton } from './DoneButton'\nexport { default as CancelButton } from './CancelButton'\nexport { default as ResetButton } from './ResetButton'\nexport { default as useHasContentChanged } from '../../Form/Isolation/useHasContentChanged'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,cAAA,GAAAC,uBAAA,CAAAC,OAAA;AACAC,MAAA,CAAAC,IAAA,CAAAJ,cAAA,EAAAK,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAN,cAAA,CAAAM,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAd,cAAA,CAAAM,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,WAAA,GAAAC,sBAAA,CAAAd,OAAA;AACA,IAAAe,aAAA,GAAAD,sBAAA,CAAAd,OAAA;AACA,IAAAgB,YAAA,GAAAF,sBAAA,CAAAd,OAAA;AACA,IAAAiB,qBAAA,GAAAH,sBAAA,CAAAd,OAAA;AAA2F,SAAAc,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAnB,wBAAAmB,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAZ,GAAA,CAAAM,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAA3B,MAAA,CAAAS,cAAA,IAAAT,MAAA,CAAA4B,wBAAA,WAAAC,CAAA,IAAAZ,CAAA,oBAAAY,CAAA,OAAAxB,cAAA,CAAAC,IAAA,CAAAW,CAAA,EAAAY,CAAA,SAAAC,CAAA,GAAAH,CAAA,GAAA3B,MAAA,CAAA4B,wBAAA,CAAAX,CAAA,EAAAY,CAAA,UAAAC,CAAA,KAAAA,CAAA,CAAAnB,GAAA,IAAAmB,CAAA,CAAAC,GAAA,IAAA/B,MAAA,CAAAS,cAAA,CAAAgB,CAAA,EAAAI,CAAA,EAAAC,CAAA,IAAAL,CAAA,CAAAI,CAAA,IAAAZ,CAAA,CAAAY,CAAA,YAAAJ,CAAA,CAAAN,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAQ,GAAA,CAAAd,CAAA,EAAAQ,CAAA,GAAAA,CAAA","ignoreList":[]}
|
|
@@ -59,7 +59,14 @@ export type Props = (OnlyPathRequired | OnlyItemPathRequired) & {
|
|
|
59
59
|
/**
|
|
60
60
|
* If the container should be committed before the form is submitted.
|
|
61
61
|
*/
|
|
62
|
+
/**
|
|
63
|
+
* @deprecated – Replaced with preventUncommittedChanges, requireCommit will be removed in v11.
|
|
64
|
+
*/
|
|
62
65
|
requireCommit?: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.
|
|
68
|
+
*/
|
|
69
|
+
preventUncommittedChanges?: boolean;
|
|
63
70
|
/**
|
|
64
71
|
* Show a button to clear the PushContainer data.
|
|
65
72
|
*/
|
|
@@ -9,7 +9,7 @@ require("core-js/modules/web.dom-collections.iterator.js");
|
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
11
|
var _Isolation = _interopRequireDefault(require("../../Form/Isolation"));
|
|
12
|
-
var
|
|
12
|
+
var _useHandleStatus = _interopRequireDefault(require("../../Form/Isolation/useHandleStatus"));
|
|
13
13
|
var _PushContainerContext = _interopRequireDefault(require("./PushContainerContext"));
|
|
14
14
|
var _IterateItemContext = _interopRequireDefault(require("../IterateItemContext"));
|
|
15
15
|
var _Context = _interopRequireDefault(require("../../DataContext/Context"));
|
|
@@ -24,8 +24,8 @@ var _Toolbar = _interopRequireDefault(require("../Toolbar"));
|
|
|
24
24
|
var _hooks2 = require("../../hooks");
|
|
25
25
|
var _Provider = require("../../DataContext/Provider");
|
|
26
26
|
var _structuredClone = _interopRequireDefault(require("@ungap/structured-clone"));
|
|
27
|
-
const _excluded = ["data", "defaultData", "isolatedData", "bubbleValidation", "requireCommit", "showResetButton", "path", "itemPath", "insertAt", "title", "required", "children", "openButton", "showOpenButtonWhen", "onCommit"],
|
|
28
|
-
_excluded2 = ["title", "openButton", "showOpenButton", "showResetButton", "switchContainerModeRef", "cancelHandler", "containerModeRef", "rerenderPushContainer", "
|
|
27
|
+
const _excluded = ["data", "defaultData", "isolatedData", "bubbleValidation", "preventUncommittedChanges", "requireCommit", "showResetButton", "path", "itemPath", "insertAt", "title", "required", "children", "openButton", "showOpenButtonWhen", "onCommit"],
|
|
28
|
+
_excluded2 = ["title", "openButton", "showOpenButton", "showResetButton", "switchContainerModeRef", "cancelHandler", "containerModeRef", "rerenderPushContainer", "preventUncommittedChanges", "outerContext", "children"];
|
|
29
29
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
30
30
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
31
31
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -49,6 +49,7 @@ function PushContainer(props) {
|
|
|
49
49
|
defaultData: defaultDataProp,
|
|
50
50
|
isolatedData,
|
|
51
51
|
bubbleValidation,
|
|
52
|
+
preventUncommittedChanges = props === null || props === void 0 ? void 0 : props.requireCommit,
|
|
52
53
|
requireCommit,
|
|
53
54
|
showResetButton,
|
|
54
55
|
path,
|
|
@@ -167,7 +168,7 @@ function PushContainer(props) {
|
|
|
167
168
|
cancelHandler: cancelHandler,
|
|
168
169
|
containerModeRef: containerModeRef,
|
|
169
170
|
rerenderPushContainer: forceUpdate,
|
|
170
|
-
|
|
171
|
+
preventUncommittedChanges: preventUncommittedChanges,
|
|
171
172
|
showResetButton: showResetButton,
|
|
172
173
|
outerContext: outerContext
|
|
173
174
|
}, rest), children))));
|
|
@@ -183,7 +184,7 @@ function NewContainer(_ref3) {
|
|
|
183
184
|
cancelHandler,
|
|
184
185
|
containerModeRef,
|
|
185
186
|
rerenderPushContainer,
|
|
186
|
-
|
|
187
|
+
preventUncommittedChanges,
|
|
187
188
|
outerContext,
|
|
188
189
|
children
|
|
189
190
|
} = _ref3,
|
|
@@ -196,18 +197,19 @@ function NewContainer(_ref3) {
|
|
|
196
197
|
const {
|
|
197
198
|
hasContentChanged,
|
|
198
199
|
showStatus: showCommitStatus
|
|
199
|
-
} =
|
|
200
|
+
} = (0, _useHandleStatus.default)({
|
|
200
201
|
outerContext,
|
|
201
|
-
|
|
202
|
+
preventUncommittedChanges,
|
|
203
|
+
error: pushContainerError
|
|
202
204
|
});
|
|
203
|
-
const {
|
|
204
|
-
requireCommitText
|
|
205
|
-
} = (0, _hooks2.useTranslation)().IteratePushContainer;
|
|
206
205
|
(0, _react.useEffect)(() => {
|
|
207
206
|
rerenderPushContainer();
|
|
208
207
|
}, [containerMode, rerenderPushContainer]);
|
|
209
208
|
switchContainerModeRef.current = switchContainerMode;
|
|
210
209
|
const isVisible = Boolean(!showOpenButton || containerMode === 'edit');
|
|
210
|
+
const {
|
|
211
|
+
preventUncommittedChangesText
|
|
212
|
+
} = (0, _hooks2.useTranslation)().Isolation;
|
|
211
213
|
const {
|
|
212
214
|
createButton
|
|
213
215
|
} = (0, _hooks2.useTranslation)().IteratePushContainer;
|
|
@@ -229,12 +231,12 @@ function NewContainer(_ref3) {
|
|
|
229
231
|
text: createButton
|
|
230
232
|
})), showOpenButton && (_CancelButton || (_CancelButton = _react.default.createElement(_EditContainer.CancelButton, {
|
|
231
233
|
onClick: cancelHandler
|
|
232
|
-
}))), (
|
|
234
|
+
}))), (preventUncommittedChanges || showResetButton) && _react.default.createElement(_EditContainer.ResetButton, {
|
|
233
235
|
hidden: !(showResetButton || showCommitStatus)
|
|
234
|
-
})),
|
|
236
|
+
})), preventUncommittedChanges && showCommitStatus && (_FormStatus || (_FormStatus = _react.default.createElement(_components.FormStatus, {
|
|
235
237
|
no_animation: false,
|
|
236
238
|
show: hasContentChanged
|
|
237
|
-
},
|
|
239
|
+
}, preventUncommittedChangesText))));
|
|
238
240
|
}));
|
|
239
241
|
return _react.default.createElement(_VisibilityContext.default.Provider, {
|
|
240
242
|
value: {
|
|
@@ -251,49 +253,6 @@ function NewContainer(_ref3) {
|
|
|
251
253
|
open: showOpenButton && containerMode === 'view'
|
|
252
254
|
}, openButton));
|
|
253
255
|
}
|
|
254
|
-
function useHandleStatus(_ref4) {
|
|
255
|
-
let {
|
|
256
|
-
outerContext,
|
|
257
|
-
requireCommit
|
|
258
|
-
} = _ref4;
|
|
259
|
-
const {
|
|
260
|
-
hasContentChanged
|
|
261
|
-
} = (0, _EditContainer.useHasContentChanged)();
|
|
262
|
-
(0, _useReportError.default)(requireCommit && hasContentChanged ? pushContainerError : undefined, outerContext);
|
|
263
|
-
const showStatus = useShowStatus({
|
|
264
|
-
outerContext,
|
|
265
|
-
hasContentChanged,
|
|
266
|
-
requireCommit
|
|
267
|
-
});
|
|
268
|
-
return {
|
|
269
|
-
hasContentChanged,
|
|
270
|
-
showStatus
|
|
271
|
-
};
|
|
272
|
-
}
|
|
273
|
-
function useShowStatus(_ref5) {
|
|
274
|
-
let {
|
|
275
|
-
outerContext,
|
|
276
|
-
hasContentChanged,
|
|
277
|
-
requireCommit
|
|
278
|
-
} = _ref5;
|
|
279
|
-
const showAllErrors = outerContext === null || outerContext === void 0 ? void 0 : outerContext.showAllErrors;
|
|
280
|
-
const [showStatus, setShowStatus] = (0, _react.useState)(showAllErrors);
|
|
281
|
-
const showRef = (0, _react.useRef)(showAllErrors);
|
|
282
|
-
(0, _react.useEffect)(() => {
|
|
283
|
-
if (!requireCommit) {
|
|
284
|
-
return;
|
|
285
|
-
}
|
|
286
|
-
if (!hasContentChanged) {
|
|
287
|
-
setShowStatus(false);
|
|
288
|
-
} else {
|
|
289
|
-
if (showRef.current !== showAllErrors) {
|
|
290
|
-
setShowStatus(showAllErrors);
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
showRef.current = showAllErrors;
|
|
294
|
-
}, [hasContentChanged, requireCommit, showAllErrors]);
|
|
295
|
-
return showStatus;
|
|
296
|
-
}
|
|
297
256
|
const pushContainerError = new Error('Iterate.PushContainer');
|
|
298
257
|
PushContainer.OpenButton = _OpenButton.default;
|
|
299
258
|
PushContainer._supportsSpacingProps = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushContainer.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Isolation","_useReportError","_PushContainerContext","_IterateItemContext","_Context","_VisibilityContext","_useDataValue","_EditContainer","_Array","_OpenButton","_components","_hooks","_Toolbar","_hooks2","_Provider","_structuredClone","_excluded","_excluded2","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","PushContainer","props","forceUpdate","useReducer","outerContext","useContext","DataContext","data","outerData","required","requiredInherited","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","requireCommit","showResetButton","path","itemPath","insertAt","title","children","openButton","showOpenButtonWhen","onCommit","rest","absolutePath","useItemPath","commitHandleRef","useRef","switchContainerModeRef","containerModeRef","entries","moveValueToPath","getValueByPath","useDataValue","setNextContainerMode","useSwitchContainerMode","hasReachedLimit","setShowStatus","useArrayLimit","cancelHandler","useCallback","showOpenButton","newItemContextProps","switchContainerMode","current","useMemo","_Object$freeze","pushContainerItems","freeze","clearedData","isFrozen","emptyData","_data$pushContainerIt","_ref","firstItem","createElement","transformOnCommit","_ref2","slice","structuredClone","options","clearData","preventCommit","_switchContainerModeR","Provider","containerMode","withoutFlex","NewContainer","rerenderPushContainer","_ref3","_DoneButton","_CancelButton","_FormStatus","IterateItemContext","hasContentChanged","showStatus","showCommitStatus","useHandleStatus","requireCommitText","useTranslation","IteratePushContainer","useEffect","isVisible","Boolean","createButton","restoreOriginalValue","toolbar","Consumer","context","Flex","Horizontal","gap","DoneButton","text","CancelButton","onClick","ResetButton","hidden","FormStatus","no_animation","show","keepInDOM","open","className","classnames","HeightAnimation","_ref4","useHasContentChanged","useReportError","pushContainerError","undefined","useShowStatus","_ref5","showAllErrors","useState","showRef","Error","OpenButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from 'react'\nimport classnames from 'classnames'\nimport Isolation from '../../Form/Isolation'\nimport useReportError from '../../Form/Isolation/useReportError'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext, { ContextState } from '../../DataContext/Context'\nimport VisibilityContext from '../../Form/Visibility/VisibilityContext'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, {\n DoneButton,\n CancelButton,\n ResetButton,\n AllProps as EditContainerProps,\n useHasContentChanged,\n} from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport {\n useArrayLimit,\n useItemPath,\n useSwitchContainerMode,\n} from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { clearedData } from '../../DataContext/Provider'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So it's a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\ntype OnlyPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath?: Path\n}\n\ntype OnlyItemPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path?: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath: Path\n}\n\nexport type Props = (OnlyPathRequired | OnlyItemPathRequired) & {\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * If the fields inside the container are required.\n */\n required?: boolean\n\n /**\n * The index to insert the new item at.\n */\n insertAt?: number\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * If the container should be committed before the form is submitted.\n */\n requireCommit?: boolean\n\n /**\n * Show a button to clear the PushContainer data.\n */\n showResetButton?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props &\n SpacingProps &\n Omit<EditContainerProps, 'data'>\n\nfunction PushContainer(props: AllProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const outerContext = useContext(DataContext)\n const { data: outerData, required: requiredInherited } = outerContext\n\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n requireCommit,\n showResetButton,\n path,\n itemPath,\n insertAt,\n title,\n required = requiredInherited,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const { absolutePath } = useItemPath(itemPath)\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const containerModeRef = useRef<ContainerMode>()\n const {\n value: entries = [],\n moveValueToPath,\n getValueByPath,\n } = useDataValue<Array<unknown>>(path || itemPath)\n\n const { setNextContainerMode } = useSwitchContainerMode(\n path || absolutePath\n )\n const { hasReachedLimit, setShowStatus } = useArrayLimit(\n path || absolutePath\n )\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n itemPath,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [Object.freeze(dataProp) ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n if (outerData) {\n // Use assign to avoid mutating the original data object.\n // Because changes from outside should only silently be applied to the\n // data object, without triggering a rerender.\n // This way \"pushContainerItems\" will not clear/unset changed data.\n if (!Object.isFrozen(data)) {\n Object.assign(data || {}, outerData)\n }\n }\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [Object.freeze(defaultDataProp ?? clearedData)],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? defaultDataProp ?? clearedData],\n }\n },\n [dataProp, defaultDataProp, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n required={required}\n emptyData={emptyData}\n bubbleValidation={\n containerModeRef.current === 'view' ? false : bubbleValidation\n }\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(\n path || absolutePath,\n typeof insertAt === 'number'\n ? [\n ...entries.slice(0, insertAt),\n ...pushContainerItems,\n ...entries.slice(insertAt),\n ]\n : [...entries, ...pushContainerItems],\n absolutePath ? structuredClone(getValueByPath('/')) : {}\n )\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n withoutFlex\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n containerModeRef={containerModeRef}\n rerenderPushContainer={forceUpdate}\n requireCommit={requireCommit}\n showResetButton={showResetButton}\n outerContext={outerContext}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n showResetButton,\n switchContainerModeRef,\n cancelHandler,\n containerModeRef,\n rerenderPushContainer,\n requireCommit,\n outerContext,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n containerModeRef.current = containerMode\n\n const { hasContentChanged, showStatus: showCommitStatus } =\n useHandleStatus({\n outerContext,\n requireCommit,\n })\n const { requireCommitText } = useTranslation().IteratePushContainer\n\n useEffect(() => {\n rerenderPushContainer()\n }, [containerMode, rerenderPushContainer])\n\n switchContainerModeRef.current = switchContainerMode\n const isVisible = Boolean(!showOpenButton || containerMode === 'edit')\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 {(requireCommit || showResetButton) && (\n <ResetButton\n // Use hidden in order to render the useHasContentChanged hook\n hidden={!(showResetButton || showCommitStatus)}\n />\n )}\n </Flex.Horizontal>\n\n {requireCommit && showCommitStatus && (\n <FormStatus no_animation={false} show={hasContentChanged}>\n {requireCommitText}\n </FormStatus>\n )}\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <VisibilityContext.Provider value={{ isVisible, keepInDOM: false }}>\n <EditContainer\n open={isVisible}\n title={title}\n toolbar={toolbar}\n {...rest}\n // Add the class by default, because we don't get a \"hasSubmitError\" trigger\n className={classnames(\n 'dnb-forms-section-block--error',\n rest.className\n )}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </VisibilityContext.Provider>\n )\n}\n\nfunction useHandleStatus({\n outerContext,\n requireCommit,\n}: {\n outerContext: ContextState\n requireCommit: boolean\n}) {\n const { hasContentChanged } = useHasContentChanged()\n\n useReportError(\n requireCommit && hasContentChanged ? pushContainerError : undefined,\n outerContext\n )\n\n const showStatus = useShowStatus({\n outerContext,\n hasContentChanged,\n requireCommit,\n })\n\n return { hasContentChanged, showStatus }\n}\n\n// This hook/state is used to not show the status right away, after the user has cleared the PushContainer data.\nfunction useShowStatus({\n outerContext,\n hasContentChanged,\n requireCommit,\n}) {\n const showAllErrors = outerContext?.showAllErrors\n const [showStatus, setShowStatus] = useState(showAllErrors)\n const showRef = useRef(showAllErrors)\n useEffect(() => {\n if (!requireCommit) {\n return // stop here\n }\n\n if (!hasContentChanged) {\n setShowStatus(false)\n } else {\n if (showRef.current !== showAllErrors) {\n setShowStatus(showAllErrors)\n }\n }\n showRef.current = showAllErrors\n }, [hasContentChanged, requireCommit, showAllErrors])\n\n return showStatus\n}\n\nconst pushContainerError = new Error('Iterate.PushContainer')\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"PushContainer.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Isolation","_useHandleStatus","_PushContainerContext","_IterateItemContext","_Context","_VisibilityContext","_useDataValue","_EditContainer","_Array","_OpenButton","_components","_hooks","_Toolbar","_hooks2","_Provider","_structuredClone","_excluded","_excluded2","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","PushContainer","props","forceUpdate","useReducer","outerContext","useContext","DataContext","data","outerData","required","requiredInherited","dataProp","defaultData","defaultDataProp","isolatedData","bubbleValidation","preventUncommittedChanges","requireCommit","showResetButton","path","itemPath","insertAt","title","children","openButton","showOpenButtonWhen","onCommit","rest","absolutePath","useItemPath","commitHandleRef","useRef","switchContainerModeRef","containerModeRef","entries","moveValueToPath","getValueByPath","useDataValue","setNextContainerMode","useSwitchContainerMode","hasReachedLimit","setShowStatus","useArrayLimit","cancelHandler","useCallback","showOpenButton","newItemContextProps","switchContainerMode","current","useMemo","_Object$freeze","pushContainerItems","freeze","clearedData","isFrozen","emptyData","_data$pushContainerIt","_ref","firstItem","createElement","transformOnCommit","_ref2","slice","structuredClone","options","clearData","preventCommit","_switchContainerModeR","Provider","containerMode","withoutFlex","NewContainer","rerenderPushContainer","_ref3","_DoneButton","_CancelButton","_FormStatus","IterateItemContext","hasContentChanged","showStatus","showCommitStatus","useHandleStatus","error","pushContainerError","useEffect","isVisible","Boolean","preventUncommittedChangesText","useTranslation","Isolation","createButton","IteratePushContainer","restoreOriginalValue","toolbar","Consumer","context","Flex","Horizontal","gap","DoneButton","text","CancelButton","onClick","ResetButton","hidden","FormStatus","no_animation","show","keepInDOM","open","className","classnames","HeightAnimation","Error","OpenButton","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainer.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\nimport Isolation from '../../Form/Isolation'\nimport useHandleStatus from '../../Form/Isolation/useHandleStatus'\nimport PushContainerContext from './PushContainerContext'\nimport IterateItemContext from '../IterateItemContext'\nimport DataContext from '../../DataContext/Context'\nimport VisibilityContext from '../../Form/Visibility/VisibilityContext'\nimport useDataValue from '../../hooks/useDataValue'\nimport EditContainer, {\n DoneButton,\n CancelButton,\n ResetButton,\n AllProps as EditContainerProps,\n} from '../EditContainer'\nimport IterateArray, { ContainerMode } from '../Array'\nimport OpenButton from './OpenButton'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { OnCommit, Path } from '../../types'\nimport { SpacingProps } from '../../../../shared/types'\nimport {\n useArrayLimit,\n useItemPath,\n useSwitchContainerMode,\n} from '../hooks'\nimport Toolbar from '../Toolbar'\nimport { useTranslation } from '../../hooks'\nimport { clearedData } from '../../DataContext/Provider'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So it's a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\ntype OnlyPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath?: Path\n}\n\ntype OnlyItemPathRequired = {\n /**\n * The path to the array to add the new item to.\n */\n path?: Path\n\n /** The sub path to the array to add the new item to. */\n itemPath: Path\n}\n\nexport type Props = (OnlyPathRequired | OnlyItemPathRequired) & {\n /**\n * The title of the container.\n */\n title?: React.ReactNode\n\n /**\n * If the fields inside the container are required.\n */\n required?: boolean\n\n /**\n * The index to insert the new item at.\n */\n insertAt?: number\n\n /**\n * The button to open container.\n */\n openButton?: React.ReactNode\n\n /**\n * Define when the \"open button\" should be shown.\n * Should be a function that returns a boolean.\n */\n showOpenButtonWhen?: (list: unknown[]) => boolean\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n data?: unknown | Record<string, unknown>\n\n /**\n * Prefilled data to add to the fields. The data will be put into this path: \"/pushContainerItems/0\".\n */\n defaultData?: unknown | Record<string, unknown>\n\n /**\n * Provide additional data that will be put into the root of the isolated data context (parallel to \"/pushContainerItems/0\").\n */\n isolatedData?: Record<string, unknown>\n\n /**\n * Prevent the form from being submitted when there are fields with errors inside the PushContainer.\n */\n bubbleValidation?: boolean\n\n /**\n * If the container should be committed before the form is submitted.\n */\n /**\n * @deprecated – Replaced with preventUncommittedChanges, requireCommit will be removed in v11.\n */\n requireCommit?: boolean\n\n /**\n * Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.\n */\n preventUncommittedChanges?: boolean\n\n /**\n * Show a button to clear the PushContainer data.\n */\n showResetButton?: boolean\n\n /**\n * A custom toolbar to be shown below the container.\n */\n toolbar?: React.ReactNode\n\n /**\n * Will be called when the user clicks on the \"Done\" button.\n */\n onCommit?: OnCommit\n\n /**\n * The container contents.\n */\n children: React.ReactNode\n}\n\nexport type AllProps = Props &\n SpacingProps &\n Omit<EditContainerProps, 'data'>\n\nfunction PushContainer(props: AllProps) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n const outerContext = useContext(DataContext)\n const { data: outerData, required: requiredInherited } = outerContext\n\n const {\n data: dataProp,\n defaultData: defaultDataProp,\n isolatedData,\n bubbleValidation,\n preventUncommittedChanges = props?.requireCommit,\n requireCommit, // eslint-disable-line @typescript-eslint/no-unused-vars\n showResetButton,\n path,\n itemPath,\n insertAt,\n title,\n required = requiredInherited,\n children,\n openButton,\n showOpenButtonWhen,\n onCommit,\n ...rest\n } = props\n\n const { absolutePath } = useItemPath(itemPath)\n const commitHandleRef = useRef<() => void>()\n const switchContainerModeRef = useRef<(mode: ContainerMode) => void>()\n const containerModeRef = useRef<ContainerMode>()\n const {\n value: entries = [],\n moveValueToPath,\n getValueByPath,\n } = useDataValue<Array<unknown>>(path || itemPath)\n\n const { setNextContainerMode } = useSwitchContainerMode(\n path || absolutePath\n )\n const { hasReachedLimit, setShowStatus } = useArrayLimit(\n path || absolutePath\n )\n const cancelHandler = useCallback(() => {\n if (hasReachedLimit) {\n setShowStatus(false)\n }\n }, [hasReachedLimit, setShowStatus])\n\n const showOpenButton = showOpenButtonWhen?.(entries)\n const newItemContextProps: PushContainerContext = {\n path,\n itemPath,\n entries,\n commitHandleRef,\n switchContainerMode: switchContainerModeRef.current,\n }\n\n const data = useMemo(() => {\n if (defaultDataProp) {\n return // don't return a fallback, because we want to use the defaultData\n }\n return {\n ...isolatedData,\n pushContainerItems: [Object.freeze(dataProp) ?? clearedData],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n if (outerData) {\n // Use assign to avoid mutating the original data object.\n // Because changes from outside should only silently be applied to the\n // data object, without triggering a rerender.\n // This way \"pushContainerItems\" will not clear/unset changed data.\n if (!Object.isFrozen(data)) {\n Object.assign(data || {}, outerData)\n }\n }\n\n const defaultData = useMemo(() => {\n return {\n ...(!dataProp ? isolatedData : null),\n pushContainerItems: [Object.freeze(defaultDataProp ?? clearedData)],\n }\n }, [dataProp, defaultDataProp, isolatedData])\n\n const emptyData = useCallback(\n (data: { pushContainerItems: unknown[] }) => {\n const firstItem = data.pushContainerItems?.[0]\n if (firstItem === null || typeof firstItem !== 'object') {\n return {\n ...isolatedData,\n pushContainerItems: [null],\n }\n }\n\n return {\n ...isolatedData,\n pushContainerItems: [dataProp ?? defaultDataProp ?? clearedData],\n }\n },\n [dataProp, defaultDataProp, isolatedData]\n )\n\n return (\n <Isolation\n data={data}\n defaultData={defaultData}\n required={required}\n emptyData={emptyData}\n bubbleValidation={\n containerModeRef.current === 'view' ? false : bubbleValidation\n }\n commitHandleRef={commitHandleRef}\n transformOnCommit={({ pushContainerItems }) => {\n return moveValueToPath(\n path || absolutePath,\n typeof insertAt === 'number'\n ? [\n ...entries.slice(0, insertAt),\n ...pushContainerItems,\n ...entries.slice(insertAt),\n ]\n : [...entries, ...pushContainerItems],\n absolutePath ? structuredClone(getValueByPath('/')) : {}\n )\n }}\n onCommit={(data, options) => {\n const { clearData, preventCommit } = options\n if (hasReachedLimit) {\n preventCommit()\n setShowStatus(true)\n } else {\n setNextContainerMode('view')\n switchContainerModeRef.current?.('view')\n clearData()\n }\n onCommit?.(data, options)\n }}\n >\n <PushContainerContext.Provider value={newItemContextProps}>\n <IterateArray\n path=\"/pushContainerItems\"\n containerMode={showOpenButton ? 'view' : 'edit'}\n withoutFlex\n >\n <NewContainer\n title={title}\n openButton={openButton}\n switchContainerModeRef={switchContainerModeRef}\n showOpenButton={showOpenButton}\n cancelHandler={cancelHandler}\n containerModeRef={containerModeRef}\n rerenderPushContainer={forceUpdate}\n preventUncommittedChanges={preventUncommittedChanges}\n showResetButton={showResetButton}\n outerContext={outerContext}\n {...rest}\n >\n {children}\n </NewContainer>\n </IterateArray>\n </PushContainerContext.Provider>\n </Isolation>\n )\n}\n\nfunction NewContainer({\n title,\n openButton,\n showOpenButton,\n showResetButton,\n switchContainerModeRef,\n cancelHandler,\n containerModeRef,\n rerenderPushContainer,\n preventUncommittedChanges,\n outerContext,\n children,\n ...rest\n}) {\n const { containerMode, switchContainerMode } =\n useContext(IterateItemContext) || {}\n containerModeRef.current = containerMode\n\n const { hasContentChanged, showStatus: showCommitStatus } =\n useHandleStatus({\n outerContext,\n preventUncommittedChanges,\n error: pushContainerError,\n })\n\n useEffect(() => {\n rerenderPushContainer()\n }, [containerMode, rerenderPushContainer])\n\n switchContainerModeRef.current = switchContainerMode\n const isVisible = Boolean(!showOpenButton || containerMode === 'edit')\n const { preventUncommittedChangesText } = useTranslation().Isolation\n const { createButton } = useTranslation().IteratePushContainer\n const { clearData } = useContext(DataContext) || {}\n const restoreOriginalValue = useCallback(() => {\n clearData?.()\n }, [clearData])\n\n const toolbar = (\n <Toolbar>\n <IterateItemContext.Consumer>\n {(context) => {\n const newItemContextProps = {\n ...context,\n restoreOriginalValue,\n }\n return (\n <IterateItemContext.Provider value={newItemContextProps}>\n <Flex.Horizontal gap=\"large\">\n <DoneButton text={createButton} />\n {showOpenButton && (\n <CancelButton onClick={cancelHandler} />\n )}\n {(preventUncommittedChanges || showResetButton) && (\n <ResetButton\n // Use hidden in order to render the useHasContentChanged hook\n hidden={!(showResetButton || showCommitStatus)}\n />\n )}\n </Flex.Horizontal>\n\n {preventUncommittedChanges && showCommitStatus && (\n <FormStatus no_animation={false} show={hasContentChanged}>\n {preventUncommittedChangesText}\n </FormStatus>\n )}\n </IterateItemContext.Provider>\n )\n }}\n </IterateItemContext.Consumer>\n </Toolbar>\n )\n\n return (\n <VisibilityContext.Provider value={{ isVisible, keepInDOM: false }}>\n <EditContainer\n open={isVisible}\n title={title}\n toolbar={toolbar}\n {...rest}\n // Add the class by default, because we don't get a \"hasSubmitError\" trigger\n className={classnames(\n 'dnb-forms-section-block--error',\n rest.className\n )}\n >\n {children}\n </EditContainer>\n\n {openButton && typeof showOpenButton === 'boolean' && (\n <HeightAnimation open={showOpenButton && containerMode === 'view'}>\n {openButton}\n </HeightAnimation>\n )}\n </VisibilityContext.Provider>\n )\n}\n\nconst pushContainerError = new Error('Iterate.PushContainer')\n\nPushContainer.OpenButton = OpenButton\nPushContainer._supportsSpacingProps = true\n\nexport default PushContainer\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -51,8 +51,8 @@ const PushContainerProperties = exports.PushContainerProperties = {
|
|
|
51
51
|
type: 'boolean',
|
|
52
52
|
status: 'optional'
|
|
53
53
|
},
|
|
54
|
-
|
|
55
|
-
doc: '
|
|
54
|
+
preventUncommittedChanges: {
|
|
55
|
+
doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',
|
|
56
56
|
type: 'boolean',
|
|
57
57
|
status: 'optional'
|
|
58
58
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PushContainerDocs.js","names":["_IsolationDocs","require","PushContainerProperties","exports","path","doc","type","status","itemPath","insertAt","title","data","defaultData","isolatedData","required","bubbleValidation","
|
|
1
|
+
{"version":3,"file":"PushContainerDocs.js","names":["_IsolationDocs","require","PushContainerProperties","exports","path","doc","type","status","itemPath","insertAt","title","data","defaultData","isolatedData","required","bubbleValidation","preventUncommittedChanges","showResetButton","openButton","showOpenButtonWhen","variant","toolbar","children","PushContainerEvents","onCommit","IsolationEvents"],"sources":["../../../../../../src/extensions/forms/Iterate/PushContainer/PushContainerDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../../../shared/types'\nimport { IsolationEvents } from '../../Form/Isolation/IsolationDocs'\n\nexport const PushContainerProperties: PropertiesTableProps = {\n path: {\n doc: 'The path to the array to add the new item to.',\n type: 'string',\n status: 'required',\n },\n itemPath: {\n doc: 'The path to the item in a nested array, to add the new item to.',\n type: 'string',\n status: 'optional',\n },\n insertAt: {\n doc: 'The index to insert the new item at.',\n type: 'number',\n status: 'optional',\n },\n title: {\n doc: 'The title of the container.',\n type: 'React.Node',\n status: 'optional',\n },\n data: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`. Use `defaultData` when possible.',\n type: ['object', 'array'],\n status: 'optional',\n },\n defaultData: {\n doc: 'Prefilled data to be used by fields. The data will be put into this path: `/pushContainerItems/0`',\n type: ['object', 'array'],\n status: 'optional',\n },\n isolatedData: {\n doc: 'Provide additional data that will be put into the root of the isolated data context (parallel to `/pushContainerItems/0`).',\n type: 'object',\n status: 'optional',\n },\n required: {\n doc: 'If the fields inside the container are required.',\n type: 'boolean',\n status: 'optional',\n },\n bubbleValidation: {\n doc: 'Prevent the form from being submitted when there are fields with errors inside the PushContainer.',\n type: 'boolean',\n status: 'optional',\n },\n preventUncommittedChanges: {\n doc: 'Prevents uncommitted changes before the form is submitted. Will display an error message if user tries to submit without committing their changes.',\n type: 'boolean',\n status: 'optional',\n },\n showResetButton: {\n doc: 'Show a button to clear the PushContainer data.',\n type: 'boolean',\n status: 'optional',\n },\n openButton: {\n doc: 'The button to open container.',\n type: 'React.Node',\n status: 'optional',\n },\n showOpenButtonWhen: {\n doc: 'Define when the \"open button\" should be shown. Should be a function that returns a boolean.',\n type: 'function',\n status: 'optional',\n },\n variant: {\n doc: 'Defines the variant of the container. Can be `outline`, `filled` or `basic`. Defaults to `outline`.',\n type: 'string',\n status: 'optional',\n },\n toolbar: {\n doc: 'A custom toolbar to be shown below the container.',\n type: 'React.Node',\n status: 'optional',\n },\n children: {\n doc: 'The container contents.',\n type: 'React.Node',\n status: 'required',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const PushContainerEvents: PropertiesTableProps = {\n onCommit: IsolationEvents.onCommit,\n}\n"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAEO,MAAMC,uBAA6C,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EAC3DE,IAAI,EAAE;IACJC,GAAG,EAAE,+CAA+C;IACpDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,QAAQ,EAAE;IACRH,GAAG,EAAE,iEAAiE;IACtEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,QAAQ,EAAE;IACRJ,GAAG,EAAE,sCAAsC;IAC3CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,6BAA6B;IAClCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDI,IAAI,EAAE;IACJN,GAAG,EAAE,qIAAqI;IAC1IC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDK,WAAW,EAAE;IACXP,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;IACzBC,MAAM,EAAE;EACV,CAAC;EACDM,YAAY,EAAE;IACZR,GAAG,EAAE,4HAA4H;IACjIC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDO,QAAQ,EAAE;IACRT,GAAG,EAAE,kDAAkD;IACvDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDQ,gBAAgB,EAAE;IAChBV,GAAG,EAAE,mGAAmG;IACxGC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDS,yBAAyB,EAAE;IACzBX,GAAG,EAAE,oJAAoJ;IACzJC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDU,eAAe,EAAE;IACfZ,GAAG,EAAE,gDAAgD;IACrDC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDW,UAAU,EAAE;IACVb,GAAG,EAAE,+BAA+B;IACpCC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDY,kBAAkB,EAAE;IAClBd,GAAG,EAAE,6FAA6F;IAClGC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV,CAAC;EACDa,OAAO,EAAE;IACPf,GAAG,EAAE,qGAAqG;IAC1GC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDc,OAAO,EAAE;IACPhB,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACDe,QAAQ,EAAE;IACRjB,GAAG,EAAE,yBAAyB;IAC9BC,IAAI,EAAE,YAAY;IAClBC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAEM,MAAMgB,mBAAyC,GAAApB,OAAA,CAAAoB,mBAAA,GAAG;EACvDC,QAAQ,EAAEC,8BAAe,CAACD;AAC5B,CAAC","ignoreList":[]}
|
|
@@ -20,6 +20,7 @@ declare const _default: {
|
|
|
20
20
|
};
|
|
21
21
|
Isolation: {
|
|
22
22
|
commitButtonText: string;
|
|
23
|
+
preventUncommittedChangesText: string;
|
|
23
24
|
};
|
|
24
25
|
Step: {
|
|
25
26
|
summaryTitle: string;
|
|
@@ -73,7 +74,6 @@ declare const _default: {
|
|
|
73
74
|
IteratePushContainer: {
|
|
74
75
|
createButton: string;
|
|
75
76
|
itemsLimitReached: string;
|
|
76
|
-
requireCommitText: string;
|
|
77
77
|
};
|
|
78
78
|
/**
|
|
79
79
|
* Base fields
|
|
@@ -22,7 +22,8 @@ var _default = exports.default = {
|
|
|
22
22
|
label: 'Please wait'
|
|
23
23
|
},
|
|
24
24
|
Isolation: {
|
|
25
|
-
commitButtonText: 'Add'
|
|
25
|
+
commitButtonText: 'Add',
|
|
26
|
+
preventUncommittedChangesText: 'You have changes that either need to be added or cleared.'
|
|
26
27
|
},
|
|
27
28
|
Step: {
|
|
28
29
|
summaryTitle: 'Summary',
|
|
@@ -75,8 +76,7 @@ var _default = exports.default = {
|
|
|
75
76
|
},
|
|
76
77
|
IteratePushContainer: {
|
|
77
78
|
createButton: 'Add',
|
|
78
|
-
itemsLimitReached: 'You have reached the limit of: {limit}'
|
|
79
|
-
requireCommitText: 'You have changes that either need to be added or cleared.'
|
|
79
|
+
itemsLimitReached: 'You have reached the limit of: {limit}'
|
|
80
80
|
},
|
|
81
81
|
StringField: {
|
|
82
82
|
errorMinLength: 'The value cannot be shorter than {minLength} characters.',
|