@dnb/eufemia 10.54.0 → 10.55.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 +48 -0
- package/cjs/components/ListFormat.d.ts +12 -0
- package/cjs/components/ListFormat.js +24 -0
- package/cjs/components/ListFormat.js.map +1 -0
- package/cjs/components/anchor/Anchor.js +1 -1
- package/cjs/components/anchor/Anchor.js.map +1 -1
- package/cjs/components/autocomplete/Autocomplete.js +3 -3
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/card/Card.js +14 -5
- package/cjs/components/card/Card.js.map +1 -1
- package/cjs/components/card/CardContext.d.ts +6 -0
- package/cjs/components/card/CardContext.js +12 -0
- package/cjs/components/card/CardContext.js.map +1 -0
- package/cjs/components/card/CardDocs.js +2 -2
- package/cjs/components/card/CardDocs.js.map +1 -1
- package/cjs/components/card/style/dnb-card.css +3 -0
- package/cjs/components/card/style/dnb-card.min.css +1 -1
- package/cjs/components/card/style/dnb-card.scss +5 -0
- package/cjs/components/card/style/themes/dnb-card-theme-sbanken.css +3 -0
- package/cjs/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
- package/cjs/components/card/style/themes/dnb-card-theme-sbanken.scss +5 -0
- package/cjs/components/card/style/themes/dnb-card-theme-ui.css +5 -0
- package/cjs/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
- package/cjs/components/card/style/themes/dnb-card-theme-ui.scss +7 -0
- package/cjs/components/country-flag/CountryFlagDocs.js +5 -0
- package/cjs/components/country-flag/CountryFlagDocs.js.map +1 -1
- package/cjs/components/date-picker/DatePicker.d.ts +261 -291
- package/cjs/components/date-picker/DatePicker.js +346 -482
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerAddon.d.ts +21 -20
- package/cjs/components/date-picker/DatePickerAddon.js +66 -84
- package/cjs/components/date-picker/DatePickerAddon.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalc.d.ts +19 -21
- package/cjs/components/date-picker/DatePickerCalc.js +44 -44
- package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalendar.d.ts +73 -39
- package/cjs/components/date-picker/DatePickerCalendar.js +391 -535
- package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/cjs/components/date-picker/DatePickerContext.d.ts +26 -2
- package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
- package/cjs/components/date-picker/DatePickerFooter.d.ts +20 -18
- package/cjs/components/date-picker/DatePickerFooter.js +92 -117
- package/cjs/components/date-picker/DatePickerFooter.js.map +1 -1
- package/cjs/components/date-picker/DatePickerInput.d.ts +56 -64
- package/cjs/components/date-picker/DatePickerInput.js +515 -533
- package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
- package/cjs/components/date-picker/DatePickerOld.d.ts +334 -0
- package/cjs/components/date-picker/DatePickerOld.js +538 -0
- package/cjs/components/date-picker/DatePickerOld.js.map +1 -0
- package/cjs/components/date-picker/DatePickerProvider.d.ts +40 -17
- package/cjs/components/date-picker/DatePickerProvider.js +125 -236
- package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
- package/cjs/components/date-picker/DatePickerRange.d.ts +22 -20
- package/cjs/components/date-picker/DatePickerRange.js +61 -144
- package/cjs/components/date-picker/DatePickerRange.js.map +1 -1
- package/cjs/components/date-picker/hooks/useDates.d.ts +45 -0
- package/cjs/components/date-picker/hooks/useDates.js +182 -0
- package/cjs/components/date-picker/hooks/useDates.js.map +1 -0
- package/cjs/components/date-picker/hooks/useLastEventCallCache.d.ts +9 -0
- package/cjs/components/date-picker/hooks/useLastEventCallCache.js +16 -0
- package/cjs/components/date-picker/hooks/useLastEventCallCache.js.map +1 -0
- package/cjs/components/date-picker/hooks/useViews.d.ts +20 -0
- package/cjs/components/date-picker/hooks/useViews.js +84 -0
- package/cjs/components/date-picker/hooks/useViews.js.map +1 -0
- package/cjs/components/date-picker/style/dnb-date-picker.css +12 -1
- package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/cjs/components/dropdown/Dropdown.js +3 -3
- package/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/cjs/components/flex/StackDocs.d.ts +2 -0
- package/cjs/components/flex/StackDocs.js +30 -0
- package/cjs/components/flex/StackDocs.js.map +1 -0
- package/cjs/components/form-row/FormRow.js +3 -3
- package/cjs/components/form-row/FormRow.js.map +1 -1
- package/cjs/components/form-row/style/dnb-form-row.css +12 -1
- package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
- package/cjs/components/form-status/FormStatus.d.ts +4 -1
- package/cjs/components/icon/style/dnb-icon.scss +1 -1
- package/cjs/components/index.d.ts +2 -1
- package/cjs/components/index.js +7 -0
- package/cjs/components/index.js.map +1 -1
- package/cjs/components/input-masked/TextMask.d.ts +2 -1
- package/cjs/components/input-masked/style/dnb-input-masked.css +12 -1
- package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/cjs/components/lib.d.ts +3 -1
- package/cjs/components/lib.js +8 -0
- package/cjs/components/lib.js.map +1 -1
- package/cjs/components/list-format/ListFormat.d.ts +40 -0
- package/cjs/components/list-format/ListFormat.js +122 -0
- package/cjs/components/list-format/ListFormat.js.map +1 -0
- package/cjs/components/list-format/ListFormatDocs.d.ts +2 -0
- package/cjs/components/list-format/ListFormatDocs.js +35 -0
- package/cjs/components/list-format/ListFormatDocs.js.map +1 -0
- package/cjs/components/list-format/index.d.ts +7 -0
- package/cjs/components/list-format/index.js +24 -0
- package/cjs/components/list-format/index.js.map +1 -0
- package/cjs/components/number-format/NumberUtils.js +1 -1
- package/cjs/components/number-format/NumberUtils.js.map +1 -1
- package/cjs/components/radio/style/dnb-radio.css +12 -1
- package/cjs/components/radio/style/dnb-radio.min.css +1 -1
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/cjs/components/textarea/Textarea.js +3 -3
- package/cjs/components/textarea/Textarea.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButton.js +3 -3
- package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.css +12 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/cjs/components/upload/Upload.js +2 -1
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/UploadContext.d.ts +1 -0
- package/cjs/components/upload/UploadContext.js +2 -1
- package/cjs/components/upload/UploadContext.js.map +1 -1
- package/cjs/components/upload/UploadDocs.js +5 -0
- package/cjs/components/upload/UploadDocs.js.map +1 -1
- package/cjs/components/upload/UploadDropzone.js.map +1 -1
- package/cjs/components/upload/UploadFileList.js +3 -1
- package/cjs/components/upload/UploadFileList.js.map +1 -1
- package/cjs/components/upload/UploadFileListCell.d.ts +22 -3
- package/cjs/components/upload/UploadFileListCell.js +17 -8
- package/cjs/components/upload/UploadFileListCell.js.map +1 -1
- package/cjs/components/upload/UploadInfo.js +7 -4
- package/cjs/components/upload/UploadInfo.js.map +1 -1
- package/cjs/components/upload/UploadVerify.d.ts +2 -2
- package/cjs/components/upload/UploadVerify.js.map +1 -1
- package/cjs/components/upload/style/dnb-upload.css +1 -1
- package/cjs/components/upload/style/dnb-upload.min.css +1 -1
- package/cjs/components/upload/style/dnb-upload.scss +1 -1
- package/cjs/components/upload/types.d.ts +11 -5
- package/cjs/components/upload/types.js.map +1 -1
- package/cjs/components/upload/useUpload.d.ts +6 -6
- package/cjs/components/upload/useUpload.js.map +1 -1
- package/cjs/elements/lists/style/lists-mixins.scss +1 -0
- package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
- package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +11 -14
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +3 -4
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +4 -4
- package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +3 -2
- package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Field/Composition/CompositionDocs.js +1 -1
- package/cjs/extensions/forms/Field/Composition/CompositionDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js +4 -12
- package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.js +6 -14
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/cjs/extensions/forms/Field/FieldDocs.d.ts +2 -2
- package/cjs/extensions/forms/Field/FieldDocs.js +10 -10
- package/cjs/extensions/forms/Field/FieldDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -1
- package/cjs/extensions/forms/Field/Number/Number.js +7 -19
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/style/dnb-number.css +0 -3
- package/cjs/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
- package/cjs/extensions/forms/Field/Number/style/dnb-number.scss +0 -2
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +9 -10
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.d.ts +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +3 -3
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.js +6 -3
- package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +10 -3
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -1
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +14 -12
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.d.ts +2 -1
- package/cjs/extensions/forms/Field/Selection/Selection.js +5 -13
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Slider/Slider.d.ts +2 -1
- package/cjs/extensions/forms/Field/Slider/Slider.js +0 -13
- package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/cjs/extensions/forms/Field/String/String.d.ts +2 -1
- package/cjs/extensions/forms/Field/String/String.js +7 -20
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +6 -18
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/Upload/Upload.d.ts +4 -3
- package/cjs/extensions/forms/Field/Upload/Upload.js +2 -12
- package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +45 -6
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +39 -20
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +3 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +20 -5
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +34 -11
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +56 -13
- package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.css +7 -0
- package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.min.css +1 -0
- package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.scss +10 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.d.ts +1 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/{EditToolbarTools.js → CancelButton.js} +15 -41
- package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/DoneButton.d.ts +1 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/DoneButton.js +52 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/DoneButton.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js +11 -4
- package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
- package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/Section.d.ts +4 -2
- package/cjs/extensions/forms/Form/Section/Section.js +2 -0
- package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/Toolbar/Toolbar.d.ts +7 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/Toolbar.js +68 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/Toolbar.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarContext.d.ts +9 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarContext.js +12 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarContext.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarDocs.d.ts +3 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js +11 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/index.d.ts +2 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/index.js +27 -0
- package/cjs/extensions/forms/Form/Section/Toolbar/index.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/ViewContainer/EditButton.d.ts +1 -0
- package/cjs/extensions/forms/Form/Section/ViewContainer/{ViewToolbarTools.js → EditButton.js} +12 -13
- package/cjs/extensions/forms/Form/Section/ViewContainer/EditButton.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
- package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +9 -4
- package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
- package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js +3 -2
- package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
- package/cjs/extensions/forms/Form/Section/style/dnb-form-section.css +6 -13
- package/cjs/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
- package/cjs/extensions/forms/Form/Section/style/dnb-form-section.scss +11 -24
- package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js +5 -5
- package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js +3 -2
- package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js +2 -2
- package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js +2 -2
- package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +2 -25
- package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js +16 -49
- package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +7 -17
- package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/Composition/CompositionDocs.js +3 -1
- package/cjs/extensions/forms/Value/Composition/CompositionDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -1
- package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -5
- package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/Upload/Upload.d.ts +11 -0
- package/cjs/extensions/forms/Value/Upload/Upload.js +99 -0
- package/cjs/extensions/forms/Value/Upload/Upload.js.map +1 -0
- package/cjs/extensions/forms/Value/Upload/UploadDocs.d.ts +2 -0
- package/cjs/extensions/forms/Value/Upload/UploadDocs.js +26 -0
- package/cjs/extensions/forms/Value/Upload/UploadDocs.js.map +1 -0
- package/cjs/extensions/forms/Value/Upload/index.d.ts +2 -0
- package/cjs/extensions/forms/Value/Upload/index.js +27 -0
- package/cjs/extensions/forms/Value/Upload/index.js.map +1 -0
- package/cjs/extensions/forms/Value/index.d.ts +1 -0
- package/cjs/extensions/forms/Value/index.js +7 -0
- package/cjs/extensions/forms/Value/index.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js +8 -3
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +0 -7
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +0 -10
- package/cjs/extensions/forms/Wizard/Step/StepDocs.js +1 -1
- package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +2 -0
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.d.ts +3 -0
- package/cjs/extensions/forms/hooks/{DataValueDocs.js → DataValueWritePropsDocs.js} +6 -6
- package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -0
- package/cjs/extensions/forms/hooks/useDataValue.js +6 -1
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.js +8 -3
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/useValueProps.js +1 -6
- package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +45 -38
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +6 -28
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -0
- package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
- package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -0
- package/cjs/index.d.ts +2 -1
- package/cjs/index.js +7 -0
- package/cjs/index.js.map +1 -1
- package/cjs/shared/Context.d.ts +4 -0
- package/cjs/shared/Context.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 +1 -1
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/style/core/reset.scss +0 -8
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/core/utilities.scss +12 -16
- package/cjs/style/dnb-ui-basis.css +1 -7
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -7
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +109 -43
- package/cjs/style/dnb-ui-components.min.css +3 -3
- package/cjs/style/dnb-ui-core.css +1 -8
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-elements.css +1 -0
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +45 -38
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +45 -38
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +159 -80
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -38
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -38
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +164 -83
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +50 -41
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +52 -41
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-basis.css +1 -0
- package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +159 -80
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -0
- package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +45 -38
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +45 -38
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -0
- package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/components/ListFormat.d.ts +12 -0
- package/components/ListFormat.js +4 -0
- package/components/ListFormat.js.map +1 -0
- package/components/anchor/Anchor.js +1 -1
- package/components/anchor/Anchor.js.map +1 -1
- package/components/autocomplete/Autocomplete.js +3 -3
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/card/Card.js +13 -5
- package/components/card/Card.js.map +1 -1
- package/components/card/CardContext.d.ts +6 -0
- package/components/card/CardContext.js +4 -0
- package/components/card/CardContext.js.map +1 -0
- package/components/card/CardDocs.js +2 -2
- package/components/card/CardDocs.js.map +1 -1
- package/components/card/style/dnb-card.css +3 -0
- package/components/card/style/dnb-card.min.css +1 -1
- package/components/card/style/dnb-card.scss +5 -0
- package/components/card/style/themes/dnb-card-theme-sbanken.css +3 -0
- package/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
- package/components/card/style/themes/dnb-card-theme-sbanken.scss +5 -0
- package/components/card/style/themes/dnb-card-theme-ui.css +5 -0
- package/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
- package/components/card/style/themes/dnb-card-theme-ui.scss +7 -0
- package/components/country-flag/CountryFlagDocs.js +5 -0
- package/components/country-flag/CountryFlagDocs.js.map +1 -1
- package/components/date-picker/DatePicker.d.ts +261 -291
- package/components/date-picker/DatePicker.js +343 -481
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerAddon.d.ts +21 -20
- package/components/date-picker/DatePickerAddon.js +64 -81
- package/components/date-picker/DatePickerAddon.js.map +1 -1
- package/components/date-picker/DatePickerCalc.d.ts +19 -21
- package/components/date-picker/DatePickerCalc.js +35 -34
- package/components/date-picker/DatePickerCalc.js.map +1 -1
- package/components/date-picker/DatePickerCalendar.d.ts +73 -39
- package/components/date-picker/DatePickerCalendar.js +389 -534
- package/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/components/date-picker/DatePickerContext.d.ts +26 -2
- package/components/date-picker/DatePickerContext.js.map +1 -1
- package/components/date-picker/DatePickerFooter.d.ts +20 -18
- package/components/date-picker/DatePickerFooter.js +90 -116
- package/components/date-picker/DatePickerFooter.js.map +1 -1
- package/components/date-picker/DatePickerInput.d.ts +56 -64
- package/components/date-picker/DatePickerInput.js +515 -532
- package/components/date-picker/DatePickerInput.js.map +1 -1
- package/components/date-picker/DatePickerOld.d.ts +334 -0
- package/components/date-picker/DatePickerOld.js +528 -0
- package/components/date-picker/DatePickerOld.js.map +1 -0
- package/components/date-picker/DatePickerProvider.d.ts +40 -17
- package/components/date-picker/DatePickerProvider.js +123 -235
- package/components/date-picker/DatePickerProvider.js.map +1 -1
- package/components/date-picker/DatePickerRange.d.ts +22 -20
- package/components/date-picker/DatePickerRange.js +58 -140
- package/components/date-picker/DatePickerRange.js.map +1 -1
- package/components/date-picker/hooks/useDates.d.ts +45 -0
- package/components/date-picker/hooks/useDates.js +173 -0
- package/components/date-picker/hooks/useDates.js.map +1 -0
- package/components/date-picker/hooks/useLastEventCallCache.d.ts +9 -0
- package/components/date-picker/hooks/useLastEventCallCache.js +11 -0
- package/components/date-picker/hooks/useLastEventCallCache.js.map +1 -0
- package/components/date-picker/hooks/useViews.d.ts +20 -0
- package/components/date-picker/hooks/useViews.js +74 -0
- package/components/date-picker/hooks/useViews.js.map +1 -0
- package/components/date-picker/style/dnb-date-picker.css +12 -1
- package/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/components/dropdown/Dropdown.js +3 -3
- package/components/dropdown/Dropdown.js.map +1 -1
- package/components/flex/StackDocs.d.ts +2 -0
- package/components/flex/StackDocs.js +23 -0
- package/components/flex/StackDocs.js.map +1 -0
- package/components/form-row/FormRow.js +3 -3
- package/components/form-row/FormRow.js.map +1 -1
- package/components/form-row/style/dnb-form-row.css +12 -1
- package/components/form-row/style/dnb-form-row.min.css +1 -1
- package/components/form-status/FormStatus.d.ts +4 -1
- package/components/icon/style/dnb-icon.scss +1 -1
- package/components/index.d.ts +2 -1
- package/components/index.js +2 -1
- package/components/index.js.map +1 -1
- package/components/input-masked/TextMask.d.ts +2 -1
- package/components/input-masked/style/dnb-input-masked.css +12 -1
- package/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/components/lib.d.ts +3 -1
- package/components/lib.js +3 -1
- package/components/lib.js.map +1 -1
- package/components/list-format/ListFormat.d.ts +40 -0
- package/components/list-format/ListFormat.js +112 -0
- package/components/list-format/ListFormat.js.map +1 -0
- package/components/list-format/ListFormatDocs.d.ts +2 -0
- package/components/list-format/ListFormatDocs.js +28 -0
- package/components/list-format/ListFormatDocs.js.map +1 -0
- package/components/list-format/index.d.ts +7 -0
- package/components/list-format/index.js +4 -0
- package/components/list-format/index.js.map +1 -0
- package/components/number-format/NumberUtils.js +1 -1
- package/components/number-format/NumberUtils.js.map +1 -1
- package/components/radio/style/dnb-radio.css +12 -1
- package/components/radio/style/dnb-radio.min.css +1 -1
- package/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
- package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/components/textarea/Textarea.js +3 -3
- package/components/textarea/Textarea.js.map +1 -1
- package/components/toggle-button/ToggleButton.js +3 -3
- package/components/toggle-button/ToggleButton.js.map +1 -1
- package/components/toggle-button/style/dnb-toggle-button.css +12 -1
- package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/components/upload/Upload.js +2 -1
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/UploadContext.d.ts +1 -0
- package/components/upload/UploadContext.js +2 -1
- package/components/upload/UploadContext.js.map +1 -1
- package/components/upload/UploadDocs.js +5 -0
- package/components/upload/UploadDocs.js.map +1 -1
- package/components/upload/UploadDropzone.js.map +1 -1
- package/components/upload/UploadFileList.js +3 -1
- package/components/upload/UploadFileList.js.map +1 -1
- package/components/upload/UploadFileListCell.d.ts +22 -3
- package/components/upload/UploadFileListCell.js +16 -8
- package/components/upload/UploadFileListCell.js.map +1 -1
- package/components/upload/UploadInfo.js +7 -4
- package/components/upload/UploadInfo.js.map +1 -1
- package/components/upload/UploadVerify.d.ts +2 -2
- package/components/upload/UploadVerify.js.map +1 -1
- package/components/upload/style/dnb-upload.css +1 -1
- package/components/upload/style/dnb-upload.min.css +1 -1
- package/components/upload/style/dnb-upload.scss +1 -1
- package/components/upload/types.d.ts +11 -5
- package/components/upload/types.js.map +1 -1
- package/components/upload/useUpload.d.ts +6 -6
- package/components/upload/useUpload.js.map +1 -1
- package/elements/lists/style/lists-mixins.scss +1 -0
- package/es/components/ListFormat.d.ts +12 -0
- package/es/components/ListFormat.js +4 -0
- package/es/components/ListFormat.js.map +1 -0
- package/es/components/anchor/Anchor.js +1 -1
- package/es/components/anchor/Anchor.js.map +1 -1
- package/es/components/autocomplete/Autocomplete.js +3 -3
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/card/Card.js +13 -5
- package/es/components/card/Card.js.map +1 -1
- package/es/components/card/CardContext.d.ts +6 -0
- package/es/components/card/CardContext.js +4 -0
- package/es/components/card/CardContext.js.map +1 -0
- package/es/components/card/CardDocs.js +2 -2
- package/es/components/card/CardDocs.js.map +1 -1
- package/es/components/card/style/dnb-card.css +3 -0
- package/es/components/card/style/dnb-card.min.css +1 -1
- package/es/components/card/style/dnb-card.scss +5 -0
- package/es/components/card/style/themes/dnb-card-theme-sbanken.css +3 -0
- package/es/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
- package/es/components/card/style/themes/dnb-card-theme-sbanken.scss +5 -0
- package/es/components/card/style/themes/dnb-card-theme-ui.css +5 -0
- package/es/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
- package/es/components/card/style/themes/dnb-card-theme-ui.scss +7 -0
- package/es/components/country-flag/CountryFlagDocs.js +5 -0
- package/es/components/country-flag/CountryFlagDocs.js.map +1 -1
- package/es/components/date-picker/DatePicker.d.ts +261 -291
- package/es/components/date-picker/DatePicker.js +342 -481
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerAddon.d.ts +21 -20
- package/es/components/date-picker/DatePickerAddon.js +65 -82
- package/es/components/date-picker/DatePickerAddon.js.map +1 -1
- package/es/components/date-picker/DatePickerCalc.d.ts +19 -21
- package/es/components/date-picker/DatePickerCalc.js +38 -37
- package/es/components/date-picker/DatePickerCalc.js.map +1 -1
- package/es/components/date-picker/DatePickerCalendar.d.ts +73 -39
- package/es/components/date-picker/DatePickerCalendar.js +387 -531
- package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/es/components/date-picker/DatePickerContext.d.ts +26 -2
- package/es/components/date-picker/DatePickerContext.js.map +1 -1
- package/es/components/date-picker/DatePickerFooter.d.ts +20 -18
- package/es/components/date-picker/DatePickerFooter.js +89 -116
- package/es/components/date-picker/DatePickerFooter.js.map +1 -1
- package/es/components/date-picker/DatePickerInput.d.ts +56 -64
- package/es/components/date-picker/DatePickerInput.js +508 -525
- package/es/components/date-picker/DatePickerInput.js.map +1 -1
- package/es/components/date-picker/DatePickerOld.d.ts +334 -0
- package/es/components/date-picker/DatePickerOld.js +528 -0
- package/es/components/date-picker/DatePickerOld.js.map +1 -0
- package/es/components/date-picker/DatePickerProvider.d.ts +40 -17
- package/es/components/date-picker/DatePickerProvider.js +122 -230
- package/es/components/date-picker/DatePickerProvider.js.map +1 -1
- package/es/components/date-picker/DatePickerRange.d.ts +22 -20
- package/es/components/date-picker/DatePickerRange.js +57 -138
- package/es/components/date-picker/DatePickerRange.js.map +1 -1
- package/es/components/date-picker/hooks/useDates.d.ts +45 -0
- package/es/components/date-picker/hooks/useDates.js +169 -0
- package/es/components/date-picker/hooks/useDates.js.map +1 -0
- package/es/components/date-picker/hooks/useLastEventCallCache.d.ts +9 -0
- package/es/components/date-picker/hooks/useLastEventCallCache.js +11 -0
- package/es/components/date-picker/hooks/useLastEventCallCache.js.map +1 -0
- package/es/components/date-picker/hooks/useViews.d.ts +20 -0
- package/es/components/date-picker/hooks/useViews.js +72 -0
- package/es/components/date-picker/hooks/useViews.js.map +1 -0
- package/es/components/date-picker/style/dnb-date-picker.css +12 -1
- package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/es/components/dropdown/Dropdown.js +3 -3
- package/es/components/dropdown/Dropdown.js.map +1 -1
- package/es/components/flex/StackDocs.d.ts +2 -0
- package/es/components/flex/StackDocs.js +23 -0
- package/es/components/flex/StackDocs.js.map +1 -0
- package/es/components/form-row/FormRow.js +3 -3
- package/es/components/form-row/FormRow.js.map +1 -1
- package/es/components/form-row/style/dnb-form-row.css +12 -1
- package/es/components/form-row/style/dnb-form-row.min.css +1 -1
- package/es/components/form-status/FormStatus.d.ts +4 -1
- package/es/components/icon/style/dnb-icon.scss +1 -1
- package/es/components/index.d.ts +2 -1
- package/es/components/index.js +2 -1
- package/es/components/index.js.map +1 -1
- package/es/components/input-masked/TextMask.d.ts +2 -1
- package/es/components/input-masked/style/dnb-input-masked.css +12 -1
- package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/es/components/lib.d.ts +3 -1
- package/es/components/lib.js +3 -1
- package/es/components/lib.js.map +1 -1
- package/es/components/list-format/ListFormat.d.ts +40 -0
- package/es/components/list-format/ListFormat.js +111 -0
- package/es/components/list-format/ListFormat.js.map +1 -0
- package/es/components/list-format/ListFormatDocs.d.ts +2 -0
- package/es/components/list-format/ListFormatDocs.js +28 -0
- package/es/components/list-format/ListFormatDocs.js.map +1 -0
- package/es/components/list-format/index.d.ts +7 -0
- package/es/components/list-format/index.js +4 -0
- package/es/components/list-format/index.js.map +1 -0
- package/es/components/number-format/NumberUtils.js +1 -1
- package/es/components/number-format/NumberUtils.js.map +1 -1
- package/es/components/radio/style/dnb-radio.css +12 -1
- package/es/components/radio/style/dnb-radio.min.css +1 -1
- package/es/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
- package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/es/components/textarea/Textarea.js +3 -3
- package/es/components/textarea/Textarea.js.map +1 -1
- package/es/components/toggle-button/ToggleButton.js +3 -3
- package/es/components/toggle-button/ToggleButton.js.map +1 -1
- package/es/components/toggle-button/style/dnb-toggle-button.css +12 -1
- package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/es/components/upload/Upload.js +2 -1
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/UploadContext.d.ts +1 -0
- package/es/components/upload/UploadContext.js +2 -1
- package/es/components/upload/UploadContext.js.map +1 -1
- package/es/components/upload/UploadDocs.js +5 -0
- package/es/components/upload/UploadDocs.js.map +1 -1
- package/es/components/upload/UploadDropzone.js.map +1 -1
- package/es/components/upload/UploadFileList.js +3 -1
- package/es/components/upload/UploadFileList.js.map +1 -1
- package/es/components/upload/UploadFileListCell.d.ts +22 -3
- package/es/components/upload/UploadFileListCell.js +16 -8
- package/es/components/upload/UploadFileListCell.js.map +1 -1
- package/es/components/upload/UploadInfo.js +7 -4
- package/es/components/upload/UploadInfo.js.map +1 -1
- package/es/components/upload/UploadVerify.d.ts +2 -2
- package/es/components/upload/UploadVerify.js.map +1 -1
- package/es/components/upload/style/dnb-upload.css +1 -1
- package/es/components/upload/style/dnb-upload.min.css +1 -1
- package/es/components/upload/style/dnb-upload.scss +1 -1
- package/es/components/upload/types.d.ts +11 -5
- package/es/components/upload/types.js.map +1 -1
- package/es/components/upload/useUpload.d.ts +6 -6
- package/es/components/upload/useUpload.js.map +1 -1
- package/es/elements/lists/style/lists-mixins.scss +1 -0
- package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
- package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +11 -14
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +3 -4
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +4 -4
- package/es/extensions/forms/Field/Boolean/Boolean.d.ts +3 -2
- package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/es/extensions/forms/Field/Composition/CompositionDocs.js +2 -2
- package/es/extensions/forms/Field/Composition/CompositionDocs.js.map +1 -1
- package/es/extensions/forms/Field/Date/Date.js +4 -12
- package/es/extensions/forms/Field/Date/Date.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.js +6 -14
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/es/extensions/forms/Field/FieldDocs.d.ts +2 -2
- package/es/extensions/forms/Field/FieldDocs.js +8 -8
- package/es/extensions/forms/Field/FieldDocs.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.d.ts +2 -1
- package/es/extensions/forms/Field/Number/Number.js +8 -19
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/Number/style/dnb-number.css +0 -3
- package/es/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
- package/es/extensions/forms/Field/Number/style/dnb-number.scss +0 -2
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +9 -10
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.d.ts +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
- package/es/extensions/forms/Field/Provider/FieldProviderDocs.js +6 -3
- package/es/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -1
- package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +10 -3
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -1
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +14 -12
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.d.ts +2 -1
- package/es/extensions/forms/Field/Selection/Selection.js +5 -13
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Slider/Slider.d.ts +2 -1
- package/es/extensions/forms/Field/Slider/Slider.js +0 -13
- package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/es/extensions/forms/Field/String/String.d.ts +2 -1
- package/es/extensions/forms/Field/String/String.js +7 -20
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +6 -18
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/Upload/Upload.d.ts +4 -3
- package/es/extensions/forms/Field/Upload/Upload.js +2 -12
- package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +45 -6
- package/es/extensions/forms/FieldBlock/FieldBlock.js +39 -20
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -0
- package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +3 -2
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +17 -2
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +34 -11
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +56 -13
- package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.css +7 -0
- package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.min.css +1 -0
- package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.scss +10 -0
- package/es/extensions/forms/Form/Section/EditContainer/CancelButton.d.ts +1 -0
- package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js +51 -0
- package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -0
- package/es/extensions/forms/Form/Section/EditContainer/DoneButton.d.ts +1 -0
- package/es/extensions/forms/Form/Section/EditContainer/DoneButton.js +44 -0
- package/es/extensions/forms/Form/Section/EditContainer/DoneButton.js.map +1 -0
- package/es/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
- package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js +11 -4
- package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
- package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
- package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
- package/es/extensions/forms/Form/Section/Section.d.ts +4 -2
- package/es/extensions/forms/Form/Section/Section.js +2 -0
- package/es/extensions/forms/Form/Section/Section.js.map +1 -1
- package/es/extensions/forms/Form/Section/Toolbar/Toolbar.d.ts +7 -0
- package/es/extensions/forms/Form/Section/Toolbar/Toolbar.js +59 -0
- package/es/extensions/forms/Form/Section/Toolbar/Toolbar.js.map +1 -0
- package/es/extensions/forms/Form/Section/Toolbar/ToolbarContext.d.ts +9 -0
- package/es/extensions/forms/Form/Section/Toolbar/ToolbarContext.js +4 -0
- package/es/extensions/forms/Form/Section/Toolbar/ToolbarContext.js.map +1 -0
- package/es/extensions/forms/Form/Section/Toolbar/ToolbarDocs.d.ts +3 -0
- package/es/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js +3 -0
- package/es/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js.map +1 -0
- package/es/extensions/forms/Form/Section/Toolbar/index.d.ts +2 -0
- package/es/extensions/forms/Form/Section/Toolbar/index.js +3 -0
- package/es/extensions/forms/Form/Section/Toolbar/index.js.map +1 -0
- package/es/extensions/forms/Form/Section/ViewContainer/EditButton.d.ts +1 -0
- package/es/extensions/forms/Form/Section/ViewContainer/{ViewToolbarTools.js → EditButton.js} +10 -11
- package/es/extensions/forms/Form/Section/ViewContainer/EditButton.js.map +1 -0
- package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
- package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +9 -4
- package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
- package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
- package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
- package/es/extensions/forms/Form/Section/containers/SectionContainer.js +4 -3
- package/es/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
- package/es/extensions/forms/Form/Section/style/dnb-form-section.css +6 -13
- package/es/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
- package/es/extensions/forms/Form/Section/style/dnb-form-section.scss +11 -24
- package/es/extensions/forms/Iterate/Array/ArrayDocs.js +5 -5
- package/es/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +4 -3
- package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +1 -1
- package/es/extensions/forms/Iterate/EditContainer/CancelButton.js +1 -1
- package/es/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
- package/es/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +2 -25
- package/es/extensions/forms/Value/ArraySelection/ArraySelection.js +14 -45
- package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +5 -17
- package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
- package/es/extensions/forms/Value/Composition/CompositionDocs.js +3 -1
- package/es/extensions/forms/Value/Composition/CompositionDocs.js.map +1 -1
- package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -1
- package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -5
- package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
- package/es/extensions/forms/Value/Upload/Upload.d.ts +11 -0
- package/es/extensions/forms/Value/Upload/Upload.js +88 -0
- package/es/extensions/forms/Value/Upload/Upload.js.map +1 -0
- package/es/extensions/forms/Value/Upload/UploadDocs.d.ts +2 -0
- package/es/extensions/forms/Value/Upload/UploadDocs.js +17 -0
- package/es/extensions/forms/Value/Upload/UploadDocs.js.map +1 -0
- package/es/extensions/forms/Value/Upload/index.d.ts +2 -0
- package/es/extensions/forms/Value/Upload/index.js +3 -0
- package/es/extensions/forms/Value/Upload/index.js.map +1 -0
- package/es/extensions/forms/Value/index.d.ts +1 -0
- package/es/extensions/forms/Value/index.js +1 -0
- package/es/extensions/forms/Value/index.js.map +1 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js +8 -3
- package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +0 -7
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +0 -10
- package/es/extensions/forms/Wizard/Step/StepDocs.js +1 -1
- package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +2 -0
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/es/extensions/forms/hooks/DataValueWritePropsDocs.d.ts +3 -0
- package/es/extensions/forms/hooks/{DataValueDocs.js → DataValueWritePropsDocs.js} +3 -3
- package/es/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -0
- package/es/extensions/forms/hooks/useDataValue.js +6 -1
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.js +8 -3
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/useValueProps.js +1 -6
- package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +45 -38
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +6 -28
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -0
- package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
- package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -0
- package/es/index.d.ts +2 -1
- package/es/index.js +2 -1
- package/es/index.js.map +1 -1
- package/es/shared/Context.d.ts +4 -0
- package/es/shared/Context.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 +1 -1
- package/es/shared/component-helper.js.map +1 -1
- package/es/style/core/reset.scss +0 -8
- package/es/style/core/scopes.scss +1 -1
- package/es/style/core/utilities.scss +12 -16
- package/es/style/dnb-ui-basis.css +1 -7
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -7
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +109 -43
- package/es/style/dnb-ui-components.min.css +3 -3
- package/es/style/dnb-ui-core.css +1 -8
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-elements.css +1 -0
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +45 -38
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +45 -38
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +159 -80
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -38
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -38
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +164 -83
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +50 -41
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +52 -41
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -1
- package/es/style/themes/theme-ui/ui-theme-basis.css +1 -0
- package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +159 -80
- package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/es/style/themes/theme-ui/ui-theme-elements.css +1 -0
- package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +45 -38
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +45 -38
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-tags.css +1 -0
- package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
- package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +11 -14
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +3 -4
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +4 -4
- package/extensions/forms/Field/Boolean/Boolean.d.ts +3 -2
- package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/extensions/forms/Field/Composition/CompositionDocs.js +2 -2
- package/extensions/forms/Field/Composition/CompositionDocs.js.map +1 -1
- package/extensions/forms/Field/Date/Date.js +4 -12
- package/extensions/forms/Field/Date/Date.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.js +6 -14
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/extensions/forms/Field/FieldDocs.d.ts +2 -2
- package/extensions/forms/Field/FieldDocs.js +8 -8
- package/extensions/forms/Field/FieldDocs.js.map +1 -1
- package/extensions/forms/Field/Number/Number.d.ts +2 -1
- package/extensions/forms/Field/Number/Number.js +7 -19
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/Number/style/dnb-number.css +0 -3
- package/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
- package/extensions/forms/Field/Number/style/dnb-number.scss +0 -2
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +9 -10
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.d.ts +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
- package/extensions/forms/Field/Provider/FieldProviderDocs.js +6 -3
- package/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -1
- package/extensions/forms/Field/Provider/useFieldProvider.d.ts +10 -3
- package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -1
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +14 -12
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.d.ts +2 -1
- package/extensions/forms/Field/Selection/Selection.js +5 -13
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Slider/Slider.d.ts +2 -1
- package/extensions/forms/Field/Slider/Slider.js +0 -13
- package/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/extensions/forms/Field/String/String.d.ts +2 -1
- package/extensions/forms/Field/String/String.js +7 -20
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +6 -18
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/Upload/Upload.d.ts +4 -3
- package/extensions/forms/Field/Upload/Upload.js +2 -12
- package/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +45 -6
- package/extensions/forms/FieldBlock/FieldBlock.js +39 -20
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -0
- package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +3 -2
- package/extensions/forms/FieldBlock/FieldBlockDocs.js +17 -2
- package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +34 -11
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.scss +56 -13
- package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.css +7 -0
- package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.min.css +1 -0
- package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.scss +10 -0
- package/extensions/forms/Form/Section/EditContainer/CancelButton.d.ts +1 -0
- package/extensions/forms/Form/Section/EditContainer/CancelButton.js +51 -0
- package/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -0
- package/extensions/forms/Form/Section/EditContainer/DoneButton.d.ts +1 -0
- package/extensions/forms/Form/Section/EditContainer/DoneButton.js +44 -0
- package/extensions/forms/Form/Section/EditContainer/DoneButton.js.map +1 -0
- package/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
- package/extensions/forms/Form/Section/EditContainer/EditContainer.js +11 -4
- package/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
- package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
- package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
- package/extensions/forms/Form/Section/Section.d.ts +4 -2
- package/extensions/forms/Form/Section/Section.js +2 -0
- package/extensions/forms/Form/Section/Section.js.map +1 -1
- package/extensions/forms/Form/Section/Toolbar/Toolbar.d.ts +7 -0
- package/extensions/forms/Form/Section/Toolbar/Toolbar.js +59 -0
- package/extensions/forms/Form/Section/Toolbar/Toolbar.js.map +1 -0
- package/extensions/forms/Form/Section/Toolbar/ToolbarContext.d.ts +9 -0
- package/extensions/forms/Form/Section/Toolbar/ToolbarContext.js +4 -0
- package/extensions/forms/Form/Section/Toolbar/ToolbarContext.js.map +1 -0
- package/extensions/forms/Form/Section/Toolbar/ToolbarDocs.d.ts +3 -0
- package/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js +3 -0
- package/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js.map +1 -0
- package/extensions/forms/Form/Section/Toolbar/index.d.ts +2 -0
- package/extensions/forms/Form/Section/Toolbar/index.js +3 -0
- package/extensions/forms/Form/Section/Toolbar/index.js.map +1 -0
- package/extensions/forms/Form/Section/ViewContainer/EditButton.d.ts +1 -0
- package/extensions/forms/Form/Section/ViewContainer/{ViewToolbarTools.js → EditButton.js} +10 -11
- package/extensions/forms/Form/Section/ViewContainer/EditButton.js.map +1 -0
- package/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
- package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +9 -4
- package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
- package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
- package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
- package/extensions/forms/Form/Section/containers/SectionContainer.js +4 -3
- package/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
- package/extensions/forms/Form/Section/style/dnb-form-section.css +6 -13
- package/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
- package/extensions/forms/Form/Section/style/dnb-form-section.scss +11 -24
- package/extensions/forms/Iterate/Array/ArrayDocs.js +5 -5
- package/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
- package/extensions/forms/Iterate/Array/ArrayItemArea.js +4 -3
- package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +1 -1
- package/extensions/forms/Iterate/EditContainer/CancelButton.js +1 -1
- package/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -1
- package/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
- package/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
- package/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +2 -25
- package/extensions/forms/Value/ArraySelection/ArraySelection.js +14 -46
- package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +5 -17
- package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
- package/extensions/forms/Value/Composition/CompositionDocs.js +3 -1
- package/extensions/forms/Value/Composition/CompositionDocs.js.map +1 -1
- package/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -1
- package/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -5
- package/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
- package/extensions/forms/Value/Upload/Upload.d.ts +11 -0
- package/extensions/forms/Value/Upload/Upload.js +88 -0
- package/extensions/forms/Value/Upload/Upload.js.map +1 -0
- package/extensions/forms/Value/Upload/UploadDocs.d.ts +2 -0
- package/extensions/forms/Value/Upload/UploadDocs.js +17 -0
- package/extensions/forms/Value/Upload/UploadDocs.js.map +1 -0
- package/extensions/forms/Value/Upload/index.d.ts +2 -0
- package/extensions/forms/Value/Upload/index.js +3 -0
- package/extensions/forms/Value/Upload/index.js.map +1 -0
- package/extensions/forms/Value/index.d.ts +1 -0
- package/extensions/forms/Value/index.js +1 -0
- package/extensions/forms/Value/index.js.map +1 -1
- package/extensions/forms/ValueBlock/ValueBlock.js +8 -3
- package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.css +0 -7
- package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.scss +0 -10
- package/extensions/forms/Wizard/Step/StepDocs.js +1 -1
- package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +2 -0
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/extensions/forms/hooks/DataValueWritePropsDocs.d.ts +3 -0
- package/extensions/forms/hooks/{DataValueDocs.js → DataValueWritePropsDocs.js} +3 -3
- package/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -0
- package/extensions/forms/hooks/useDataValue.js +6 -1
- package/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.js +8 -3
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/useValueProps.js +1 -6
- package/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +45 -38
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +6 -28
- package/extensions/forms/types.js.map +1 -1
- package/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -0
- package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
- package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -0
- package/index.d.ts +2 -1
- package/index.js +2 -1
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/shared/Context.d.ts +4 -0
- package/shared/Context.js.map +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 +1 -1
- package/shared/component-helper.js.map +1 -1
- package/style/core/reset.scss +0 -8
- package/style/core/scopes.scss +1 -1
- package/style/core/utilities.scss +12 -16
- package/style/dnb-ui-basis.css +1 -7
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -7
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +109 -43
- package/style/dnb-ui-components.min.css +3 -3
- package/style/dnb-ui-core.css +1 -8
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-elements.css +1 -0
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-extensions.css +45 -38
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +45 -38
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +159 -80
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -38
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -38
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -0
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +164 -83
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -0
- package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +50 -41
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +52 -41
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -1
- package/style/themes/theme-ui/ui-theme-basis.css +1 -0
- package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +159 -80
- package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/style/themes/theme-ui/ui-theme-elements.css +1 -0
- package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +45 -38
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +45 -38
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-tags.css +1 -0
- package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +3 -3
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +0 -4
- package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +0 -1
- package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +0 -6
- package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +0 -5
- package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +0 -1
- package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +0 -4
- package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +0 -1
- package/cjs/extensions/forms/Form/Section/containers/Toolbar.d.ts +0 -7
- package/cjs/extensions/forms/Form/Section/containers/Toolbar.js +0 -35
- package/cjs/extensions/forms/Form/Section/containers/Toolbar.js.map +0 -1
- package/cjs/extensions/forms/hooks/DataValueDocs.d.ts +0 -3
- package/cjs/extensions/forms/hooks/DataValueDocs.js.map +0 -1
- package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +0 -4
- package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +0 -1
- package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +0 -6
- package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +0 -5
- package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +0 -77
- package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +0 -1
- package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +0 -4
- package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +0 -1
- package/es/extensions/forms/Form/Section/containers/Toolbar.d.ts +0 -7
- package/es/extensions/forms/Form/Section/containers/Toolbar.js +0 -27
- package/es/extensions/forms/Form/Section/containers/Toolbar.js.map +0 -1
- package/es/extensions/forms/hooks/DataValueDocs.d.ts +0 -3
- package/es/extensions/forms/hooks/DataValueDocs.js.map +0 -1
- package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +0 -4
- package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +0 -1
- package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +0 -6
- package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +0 -5
- package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +0 -77
- package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +0 -1
- package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +0 -4
- package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +0 -1
- package/extensions/forms/Form/Section/containers/Toolbar.d.ts +0 -7
- package/extensions/forms/Form/Section/containers/Toolbar.js +0 -27
- package/extensions/forms/Form/Section/containers/Toolbar.js.map +0 -1
- package/extensions/forms/hooks/DataValueDocs.d.ts +0 -3
- package/extensions/forms/hooks/DataValueDocs.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerCalendar.js","names":["React","PropTypes","classnames","format","subMonths","addMonths","addWeeks","addDays","isSameDay","isSameMonth","startOfDay","differenceInCalendarDays","differenceInMonths","lastDayOfMonth","setDate","keycode","nbLocale","isDisabled","makeDayObject","toRange","getWeek","dayOffset","getCalendar","Button","DatePickerContext","DatePickerCalendar","PureComponent","constructor","props","_defineProperty","context","updateState","hoverDate","event","_event$target","String","target","nodeName","toLowerCase","_listRef","current","focus","preventScroll","e","nr","isRange","onlyMonth","hideNav","onKeyDown","keyCode","preventDefault","persist","type","newDate","keyNavCalc","Date","callOnSelect","hidePicker","state","currentMonth","Math","abs","findValid","hasReachedEnd","endDate","startDate","changeMonthViews","date","minDate","maxDate","day","className","isStartDate","isEndDate","isPreview","isWithinSelection","isSelectable","isInactive","isToday","createRef","_labelRef","_days","_cache","componentDidMount","noAutofocus","args","onSelect","on_days_render","month","getDays","Array","isArray","foundDate","find","cur","nextDate","getCacheKey","firstDayOfWeek","hideNextMonthWeek","join","getMemorizedDays","key","count","Object","values","reduce","acc","i","push","days","map","changedDays","render","id","rtl","titleFormat","locale","dayOfWeekFormat","hideDays","onPrev","onNext","resetDate","onHover","prevBtn","nextBtn","translation","DatePicker","selected_month","weekDays","createElement","lang","code","PrevButton","title","replace","tabIndex","ref","NextButton","role","onKeyDownHandler","onMouseLeave","onMouseLeaveHandler","scope","week","handleAsDisabled","isLastMonth","isNextMonth","paramsCell","paramsButton","_extends","buildClassNames","onFocus","size","variant","text","bounding","disabled","onClick","undefined","_ref","onSelectRange","onMouseOver","onHoverDay","process","env","NODE_ENV","propTypes","string","number","instanceOf","bool","func","object","_ref2","Fragment","prev_month","icon","isRequired","defaultProps","_ref3","next_month","_ref4","hasEndDate","daysToStartDate","daysToEndDate","range","_ref5"],"sources":["../../../../src/components/date-picker/DatePickerCalendar.js"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\n\n// date-fns\nimport format from 'date-fns/format'\nimport subMonths from 'date-fns/subMonths'\nimport addMonths from 'date-fns/addMonths'\nimport addWeeks from 'date-fns/addWeeks'\nimport addDays from 'date-fns/addDays'\nimport isSameDay from 'date-fns/isSameDay'\nimport isSameMonth from 'date-fns/isSameMonth'\nimport startOfDay from 'date-fns/startOfDay'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\nimport differenceInMonths from 'date-fns/differenceInMonths'\nimport lastDayOfMonth from 'date-fns/lastDayOfMonth'\nimport setDate from 'date-fns/setDate'\n\nimport keycode from '../../shared/keycode'\nimport nbLocale from 'date-fns/locale/nb'\nimport {\n isDisabled,\n makeDayObject,\n toRange,\n getWeek,\n dayOffset,\n getCalendar,\n} from './DatePickerCalc'\nimport Button from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\n\nexport default class DatePickerCalendar extends React.PureComponent {\n static contextType = DatePickerContext\n\n static propTypes = {\n id: PropTypes.string,\n nr: PropTypes.number,\n month: PropTypes.instanceOf(Date), // What month will be displayed in the first calendar. Default: new Date()\n prevBtn: PropTypes.bool,\n nextBtn: PropTypes.bool,\n titleFormat: PropTypes.string,\n dayOfWeekFormat: PropTypes.string,\n firstDayOfWeek: PropTypes.string,\n hideNav: PropTypes.bool,\n hideDays: PropTypes.bool,\n onlyMonth: PropTypes.bool,\n hideNextMonthWeek: PropTypes.bool,\n noAutofocus: PropTypes.bool,\n\n onHover: PropTypes.func,\n onSelect: PropTypes.func,\n onPrev: PropTypes.func,\n onNext: PropTypes.func,\n\n locale: PropTypes.object,\n rtl: PropTypes.bool,\n\n isRange: PropTypes.bool,\n resetDate: PropTypes.bool,\n onKeyDown: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n nr: null,\n month: null,\n prevBtn: true,\n nextBtn: true,\n titleFormat: 'MMMM yyyy',\n dayOfWeekFormat: 'EEEEEE',\n firstDayOfWeek: 'monday',\n hideNav: false,\n hideDays: false,\n onlyMonth: false,\n hideNextMonthWeek: false,\n noAutofocus: false,\n\n // locale\n locale: nbLocale,\n rtl: false,\n\n // events\n onHover: null,\n onSelect: null,\n onPrev: null,\n onNext: null,\n\n // dates\n isRange: null,\n resetDate: true, // reset start/end date once we already have them\n\n // Limit selection with minDate and maxDate\n // maxDate: null, // addDays(new Date(), 45)\n onKeyDown: null,\n }\n\n constructor(props) {\n super(props)\n this._listRef = React.createRef()\n this._labelRef = React.createRef()\n this._days = {}\n this._cache = {}\n }\n\n componentDidMount() {\n if (!this.props.noAutofocus && this.props.nr === 0) {\n if (this._listRef.current) {\n this._listRef.current.focus({ preventScroll: true })\n }\n }\n }\n\n onMouseLeaveHandler = () => {\n this.context.updateState({\n hoverDate: null,\n })\n }\n\n onKeyDownHandler = (event) => {\n if (String(event?.target?.nodeName).toLowerCase() === 'td') {\n try {\n this._listRef.current.focus({ preventScroll: true })\n } catch (e) {\n //\n }\n }\n\n const { nr, isRange, onlyMonth, hideNav, onKeyDown } = this.props\n\n if (typeof onKeyDown === 'function') {\n return onKeyDown(event, this._listRef, nr)\n }\n\n const keyCode = keycode(event)\n\n // only continue of key is one of these\n switch (keyCode) {\n case 'enter':\n case 'space':\n case 'left':\n case 'right':\n case 'up':\n case 'down':\n event.preventDefault()\n event.persist() // since we use the event after setState\n break\n default:\n return\n }\n\n let type = nr === 0 ? 'start' : 'end'\n if (!isRange) {\n type = 'start'\n }\n let newDate = this.context[`${type}Date`]\n\n if (newDate) {\n newDate = this.keyNavCalc(newDate, keyCode)\n } else {\n // use the date picker month, if provided\n newDate =\n this.context[`${type}Month`] ||\n (isRange && nr === 1 ? addMonths(new Date(), 1) : new Date())\n }\n\n if (newDate === this.context[`${type}Date`]) {\n switch (keyCode) {\n case 'enter':\n case 'space':\n this.callOnSelect({\n event,\n nr,\n hidePicker: true,\n })\n break\n }\n } else {\n // const state = {...this.context}\n const state = {}\n\n const currentMonth = this.context[`${type}Month`]\n\n if (\n // in case we don't have a start/end date, then we use the current month date\n (currentMonth && !this.context[`${type}Date`]) ||\n // if we have a larger gap between the new date and the current month in the calendar\n (currentMonth &&\n Math.abs(differenceInMonths(newDate, currentMonth)) > 1)\n ) {\n if (!isRange) {\n newDate = currentMonth\n } else {\n newDate =\n nr === 0\n ? setDate(currentMonth, 1)\n : lastDayOfMonth(currentMonth)\n }\n // only to make sure we navigate the calendar to the new date\n } else if (\n currentMonth &&\n !isSameMonth(this.context[`${type}Date`], currentMonth)\n ) {\n state[`${type}Month`] = newDate\n }\n\n newDate = this.findValid(newDate, keyCode)\n\n if (this.hasReachedEnd(newDate)) {\n return\n }\n\n state[`${type}Date`] = newDate\n\n // set fallbacks\n if (!isRange) {\n state.endDate = newDate\n } else {\n if (!this.context.startDate) {\n state.startDate = newDate\n }\n if (!this.context.endDate) {\n state.endDate = newDate\n }\n }\n\n // make sure we stay on the same month\n if (onlyMonth || hideNav) {\n if (\n !isSameMonth(state.startDate, this.context.startDate) ||\n !isSameMonth(state.endDate, this.context.startDate) // Heads up, should this not be context.endDate?\n ) {\n return\n }\n }\n\n state.changeMonthViews = true\n\n this.context.updateState(state, () => {\n // call after state update, so the input get's the latest state as well\n this.callOnSelect({\n event,\n nr,\n hidePicker: false,\n })\n\n // and set the focus back again\n if (this._listRef && this._listRef.current) {\n this._listRef.current.focus({ preventScroll: true })\n }\n })\n }\n }\n\n callOnSelect(args) {\n this.props.onSelect && this.props.onSelect(args)\n }\n\n keyNavCalc(date, keyCode) {\n // only to process key up and down press\n switch (keyCode) {\n case 'left':\n date = addDays(date, -1)\n break\n case 'right':\n date = addDays(date, 1)\n break\n case 'up':\n date = addWeeks(date, -1)\n break\n case 'down':\n date = addWeeks(date, 1)\n break\n }\n\n return date\n }\n\n findValid(date, keyCode) {\n if (this.context.props.on_days_render) {\n const month = format(date, 'yyyy-MM')\n\n if (!this._days) {\n return date\n }\n\n if (!this._days[month]) {\n // re-render with new month\n this.getDays(date)\n }\n\n if (Array.isArray(this._days[month])) {\n const foundDate = this._days[month].find((cur) =>\n isSameDay(cur.date, date)\n )\n\n if (\n foundDate &&\n foundDate.date &&\n (foundDate.isDisabled ||\n foundDate.isSelectable === false ||\n foundDate.isInactive)\n ) {\n const nextDate = this.keyNavCalc(foundDate.date, keyCode)\n foundDate.date = this.findValid(nextDate, keyCode)\n }\n\n if (foundDate && foundDate.date) {\n return foundDate.date\n }\n }\n }\n\n return date\n }\n\n hasReachedEnd = (date) =>\n isDisabled(date, this.context.minDate, this.context.maxDate)\n\n buildClassNames = (day) =>\n classnames(\n {\n 'dnb-date-picker__day--start-date': day.isStartDate,\n 'dnb-date-picker__day--end-date': day.isEndDate,\n 'dnb-date-picker__day--preview': day.isPreview,\n 'dnb-date-picker__day--within-selection': day.isWithinSelection,\n 'dnb-date-picker__day--selectable': day.isSelectable,\n 'dnb-date-picker__day--inactive': day.isInactive,\n 'dnb-date-picker__day--disabled': day.isDisabled,\n 'dnb-date-picker__day--today': day.isToday,\n },\n day.className\n )\n\n getCacheKey() {\n const { nr, month, firstDayOfWeek, onlyMonth, hideNextMonthWeek } =\n this.props\n\n const { startDate, endDate, hoverDate, maxDate, minDate } =\n this.context\n\n return [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ].join('|')\n }\n\n getMemorizedDays(month) {\n // Cache the result, just because we then avoid at least double calc because of reconciliation,\n // but we do not avoid calculating every day during hover or select\n const key = this.getCacheKey()\n\n if (this._cache[key]) {\n return this._cache[key]\n } else {\n let count = 0\n return (this._cache[key] = Object.values(\n this.getDays(month).reduce((acc, cur, i) => {\n // Normalize the data for table consumption\n acc[count] = acc[count] || []\n acc[count].push(cur)\n if (i % 7 === 6) {\n count++\n }\n return acc\n }, {})\n ))\n }\n }\n\n getDays(month) {\n const { nr, firstDayOfWeek, onlyMonth, hideNextMonthWeek } = this.props\n\n const { startDate, endDate, hoverDate, maxDate, minDate } =\n this.context\n\n let days = getCalendar(\n month || new Date(),\n dayOffset(firstDayOfWeek),\n {\n onlyMonth,\n hideNextMonthWeek,\n }\n ).map((date) =>\n makeDayObject(date, {\n startDate,\n endDate,\n hoverDate,\n minDate,\n maxDate,\n month,\n })\n )\n\n if (this.context.props.on_days_render) {\n const changedDays = this.context.props.on_days_render(days, nr)\n if (Array.isArray(changedDays)) {\n days = changedDays\n }\n }\n\n // // Save for later check against disabled days during key navigation\n this._days[format(month, 'yyyy-MM')] = days\n\n return days\n }\n\n render() {\n const {\n id,\n nr,\n rtl,\n month,\n isRange,\n titleFormat,\n locale,\n firstDayOfWeek,\n dayOfWeekFormat,\n hideNav,\n hideDays,\n onPrev,\n onNext,\n resetDate,\n onHover,\n prevBtn,\n nextBtn,\n } = this.props\n\n const {\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n translation: {\n DatePicker: { selected_month },\n },\n } = this.context\n\n const weekDays = this.getMemorizedDays(month)\n\n return (\n <div\n className={classnames('dnb-date-picker__calendar', rtl && 'rtl')}\n lang={locale?.code}\n >\n {!hideNav && (\n <div className=\"dnb-date-picker__header\">\n <div className=\"dnb-date-picker__header__nav\">\n <PrevButton\n nr={nr}\n minDate={minDate}\n month={month}\n locale={locale}\n context={this.context}\n prevBtn={prevBtn}\n onPrev={onPrev}\n />\n </div>\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={selected_month.replace(\n /%s/,\n format(month, titleFormat, {\n locale,\n })\n )}\n tabIndex=\"-1\"\n ref={this._labelRef}\n >\n {format(month, titleFormat, {\n locale,\n })}\n </label>\n <div className=\"dnb-date-picker__header__nav\">\n <NextButton\n nr={nr}\n maxDate={maxDate}\n month={month}\n locale={locale}\n context={this.context}\n nextBtn={nextBtn}\n onNext={onNext}\n />\n </div>\n </div>\n )}\n <table\n role=\"grid\"\n className=\"dnb-no-focus\"\n tabIndex=\"0\"\n aria-labelledby={`${id}--title`}\n onKeyDown={this.onKeyDownHandler}\n onMouseLeave={this.onMouseLeaveHandler}\n ref={this._listRef}\n >\n {!hideDays && (\n <thead aria-hidden>\n <tr role=\"row\" className=\"dnb-date-picker__labels\">\n {getWeek(dayOffset(firstDayOfWeek)).map((day, i) => (\n <th\n key={i}\n role=\"columnheader\"\n scope=\"col\"\n className={classnames(\n 'dnb-date-picker__labels__day',\n `dnb-date-picker__labels__day--${format(day, 'i', {\n locale,\n })}`\n )}\n aria-label={format(day, 'EEEE', {\n locale,\n })}\n >\n {format(day, dayOfWeekFormat, {\n locale,\n })}\n </th>\n ))}\n </tr>\n </thead>\n )}\n <tbody>\n {weekDays.map((week, i) => {\n return (\n <tr\n key={'week' + i}\n role=\"row\"\n className=\"dnb-date-picker__days\"\n >\n {week.map((day, i) => {\n const title = format(day.date, 'PPPP', {\n locale,\n })\n const handleAsDisabled =\n day.isLastMonth ||\n day.isNextMonth ||\n day.isDisabled ||\n day.isInactive\n\n // cell params\n const paramsCell = {}\n paramsCell.tabIndex = '-1'\n if (day.isStartDate) {\n paramsCell.id = id + '--button-start'\n } else if (day.isEndDate) {\n paramsCell.id = id + '--button-end'\n }\n\n // cell + button params\n const paramsButton = {}\n if (nr === 0 ? day.isStartDate : day.isEndDate) {\n paramsButton['aria-current'] = 'date'\n paramsCell['aria-selected'] = true // aria-selected is not allowed on buttons\n }\n\n return (\n <td\n key={'day' + i}\n role=\"gridcell\"\n className={classnames(\n 'dnb-date-picker__day',\n 'dnb-no-focus',\n this.buildClassNames(day)\n )}\n onFocus={this.onKeyDownHandler}\n {...paramsCell}\n >\n <Button\n size=\"medium\"\n variant=\"secondary\"\n text={format(day.date, 'd', { locale })}\n bounding={true}\n disabled={handleAsDisabled}\n tabIndex={handleAsDisabled ? '0' : '-1'} // fix for NVDA\n aria-disabled={handleAsDisabled}\n aria-label={title}\n {...paramsButton}\n onClick={\n handleAsDisabled\n ? undefined\n : ({ event }) =>\n onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n resetDate,\n event,\n onSelect: (state) =>\n this.context.updateState(state, () =>\n this.callOnSelect({\n event,\n nr,\n hidePicker: !isRange,\n })\n ),\n })\n }\n onMouseOver={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({ day, hoverDate, onHover })\n }\n onFocus={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({ day, hoverDate, onHover })\n }\n />\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n </div>\n )\n }\n}\n\nconst PrevButton = ({\n nr,\n minDate,\n month,\n locale,\n context,\n prevBtn,\n onPrev,\n onKeyDown,\n}) => {\n if (!prevBtn) {\n return <></>\n }\n const disabled = minDate && isSameMonth(month, minDate)\n const onClick = () => onPrev && !disabled && onPrev({ nr })\n\n const {\n translation: {\n DatePicker: { prev_month },\n },\n } = context\n const title = prev_month.replace(\n /%s/,\n format(subMonths(month, 1), 'MMMM yyyy', {\n locale,\n })\n )\n\n return (\n <Button\n className={classnames('dnb-date-picker__prev', { disabled })}\n icon=\"chevron_left\"\n size=\"small\"\n aria-label={title}\n onClick={onClick}\n onKeyDown={onKeyDown}\n />\n )\n}\nPrevButton.propTypes = {\n nr: PropTypes.number.isRequired,\n minDate: PropTypes.instanceOf(Date),\n month: PropTypes.object.isRequired,\n locale: PropTypes.object.isRequired,\n context: PropTypes.object.isRequired,\n prevBtn: PropTypes.bool.isRequired,\n onPrev: PropTypes.func.isRequired,\n onKeyDown: PropTypes.func,\n}\nPrevButton.defaultProps = {\n minDate: null,\n onKeyDown: null,\n}\n\nconst NextButton = ({\n nr,\n maxDate,\n month,\n locale,\n context,\n nextBtn,\n onNext,\n onKeyDown,\n}) => {\n if (!nextBtn) {\n return <></>\n }\n const disabled = maxDate && isSameMonth(month, maxDate)\n const onClick = () => onNext && !disabled && onNext({ nr })\n\n const {\n translation: {\n DatePicker: { next_month },\n },\n } = context\n const title = next_month.replace(\n /%s/,\n format(addMonths(month, 1), 'MMMM yyyy', {\n locale,\n })\n )\n\n return (\n nextBtn && (\n <Button\n className={classnames('dnb-date-picker__next', { disabled })}\n icon=\"chevron_right\"\n size=\"small\"\n aria-label={title}\n onClick={onClick}\n onKeyDown={onKeyDown}\n />\n )\n )\n}\nNextButton.propTypes = {\n nr: PropTypes.number.isRequired,\n maxDate: PropTypes.instanceOf(Date),\n month: PropTypes.object.isRequired,\n locale: PropTypes.object.isRequired,\n context: PropTypes.object.isRequired,\n nextBtn: PropTypes.bool.isRequired,\n onNext: PropTypes.func.isRequired,\n onKeyDown: PropTypes.func,\n}\nNextButton.defaultProps = {\n maxDate: null,\n onKeyDown: null,\n}\n\nconst onSelectRange = ({\n day,\n isRange,\n startDate,\n endDate,\n onSelect,\n resetDate,\n event,\n}) => {\n event.persist()\n if (!isRange) {\n // set only date\n onSelect({\n startDate: startOfDay(day.date),\n endDate: startOfDay(day.date),\n event,\n })\n\n // for setting date new on every selection, do this here\n } else if (!startDate || (resetDate && startDate && endDate)) {\n // set startDate\n // user is selecting startDate\n onSelect({\n startDate: startOfDay(day.date),\n endDate: undefined,\n event,\n })\n } else {\n const hasEndDate = endDate\n // set either startDate or endDate\n const daysToStartDate = Math.abs(\n differenceInCalendarDays(startDate, day.date)\n )\n const daysToEndDate = Math.abs(\n differenceInCalendarDays(endDate, day.date)\n )\n\n let range = toRange(startDate, day.date)\n if (hasEndDate && !resetDate && daysToStartDate < daysToEndDate) {\n range = toRange(endDate, day.date)\n }\n onSelect({\n startDate: startOfDay(range.startDate),\n endDate: startOfDay(range.endDate),\n event,\n })\n }\n}\n\nconst onHoverDay = ({ day, hoverDate, onHover }) => {\n if (!isSameDay(day.date, hoverDate)) {\n onHover && onHover(day.date)\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerCalendar.js","names":["React","useCallback","useContext","useEffect","useMemo","useRef","classnames","format","subMonths","addMonths","addWeeks","addDays","isSameDay","isSameMonth","startOfDay","differenceInCalendarDays","differenceInMonths","lastDayOfMonth","setDate","nbLocalize","nbFormatLong","enLocalize","enFormatLong","gbFormatLong","isDisabled","makeDayObject","toRange","getWeek","dayOffset","getCalendar","Button","DatePickerContext","useTranslation","locales","localize","formatLong","defaultProps","prevBtn","nextBtn","titleFormat","dayOfWeekFormat","firstDayOfWeek","hideNav","hideDays","onlyMonth","hideNextMonthWeek","noAutoFocus","rtl","resetDate","arrowKeys","keysToHandle","DatePickerCalendar","restOfProps","props","_objectSpread","updateDates","forceViewMonthChange","startDate","endDate","hoverDate","maxDate","minDate","startMonth","endMonth","translation","DatePicker","selected_month","on_days_render","id","nr","month","isRange","locale","localeCode","onPrev","onNext","onSelect","onHover","onKeyDown","listRef","labelRef","days","cache","current","focus","preventScroll","onMouseLeaveHandler","callOnSelect","event","getDays","daysFromCalendar","Date","map","date","changedDays","Array","isArray","keyNavCalc","keyCode","includes","dateHandler","test","shiftAmount","findValid","foundDate","find","cur","isSelectable","isInactive","nextDate","hasReachedEnd","onKeyDownHandler","pressedKey","code","preventDefault","persist","currentDates","dateType","currentDate","newDate","hidePicker","dates","currentMonth","Math","abs","cacheKey","join","weekDays","count","Object","values","reduce","acc","i","push","createElement","className","lang","CalendarButton","type","showButton","onClick","title","replace","tabIndex","ref","role","onMouseLeave","day","key","scope","week","handleAsDisabled","isLastMonth","isNextMonth","isStartDate","isEndDate","undefined","isSelectedDate","paramsCell","paramsButton","_extends","buildDayClassNames","size","variant","text","bounding","disabled","on_click","_ref","onSelectRange","state","onMouseOver","onHoverDay","onFocus","_ref2","tr","Fragment","icon","_ref3","daysToStartDate","daysToEndDate","range","_ref4","isPreview","isWithinSelection","isToday"],"sources":["../../../../src/components/date-picker/DatePickerCalendar.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\n\n// date-fns\nimport format from 'date-fns/format'\nimport subMonths from 'date-fns/subMonths'\nimport addMonths from 'date-fns/addMonths'\nimport addWeeks from 'date-fns/addWeeks'\nimport addDays from 'date-fns/addDays'\nimport isSameDay from 'date-fns/isSameDay'\nimport isSameMonth from 'date-fns/isSameMonth'\nimport startOfDay from 'date-fns/startOfDay'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\nimport differenceInMonths from 'date-fns/differenceInMonths'\nimport lastDayOfMonth from 'date-fns/lastDayOfMonth'\nimport setDate from 'date-fns/setDate'\n\n// Imports only the parts of the date-fns locale object that we actually use\nimport nbLocalize from 'date-fns/locale/nb/_lib/localize'\nimport nbFormatLong from 'date-fns/locale/nb/_lib/formatLong'\nimport enLocalize from 'date-fns/locale/en-US/_lib/localize'\nimport enFormatLong from 'date-fns/locale/en-US/_lib/formatLong'\nimport gbFormatLong from 'date-fns/locale/en-GB/_lib/formatLong'\n\nimport {\n isDisabled,\n makeDayObject,\n toRange,\n getWeek,\n dayOffset,\n getCalendar,\n} from './DatePickerCalc'\nimport Button, { ButtonProps } from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\nimport { useTranslation } from '../../shared'\nimport { InternalLocale } from '../../shared/Context'\nimport { DatePickerChangeEvent } from './DatePickerProvider'\nimport { DatePickerDates } from './hooks/useDates'\n\nexport type CalendarDay = {\n date: Date\n isDisabled?: boolean\n isEndDate?: boolean\n isInactive?: boolean\n isLastMonth?: boolean\n isNextMonth?: boolean\n isPreview?: boolean\n isSelectable?: boolean\n isStartDate?: boolean\n isToday?: boolean\n isWithinSelection?: boolean\n className?: string\n}\n\ntype CalendarLocales = {\n // eslint-disable-next-line no-unused-vars\n [locale in InternalLocale]?: Pick<Locale, 'localize' | 'formatLong'>\n}\n// Easy to access objects containing the only (in our case) needed functions for date-fns format\nconst locales: CalendarLocales = {\n 'nb-NO': { localize: nbLocalize, formatLong: nbFormatLong },\n 'en-GB': { localize: enLocalize, formatLong: gbFormatLong },\n 'en-US': { localize: enLocalize, formatLong: enFormatLong },\n}\n\nexport type CalendarNavigationEvent = {\n nr: number\n type?: CalendarButtonProps['type']\n}\n\nexport type DatePickerCalendarProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSelect' | 'onChange'\n> & {\n id?: string\n nr?: number\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `start_date`.\n */\n month?: Date\n prevBtn?: boolean\n nextBtn?: boolean\n titleFormat?: string\n dayOfWeekFormat?: string\n firstDayOfWeek?: string\n hideNav?: boolean\n hideDays?: boolean\n onlyMonth?: boolean\n hideNextMonthWeek?: boolean\n noAutoFocus?: boolean\n onHover?: (day: Date) => void\n onSelect?: (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>\n >\n ) => void\n onPrev?: (event: CalendarNavigationEvent) => void\n onNext?: (event: CalendarNavigationEvent) => void\n onKeyDown?: (\n event: React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>,\n tableRef: React.MutableRefObject<HTMLTableElement>,\n nr: number\n ) => void\n /**\n * To define the locale used in the calendar. Needs to be an `date-fns` \"v2\" locale object, like `import enLocale from 'date-fns/locale/en-GB'`. Defaults to `nb-NO`.\n */\n locale?: InternalLocale\n rtl?: boolean\n isRange?: boolean\n resetDate?: boolean\n}\n\ntype DayObject = {\n date: Date\n isToday: boolean\n isLastMonth: boolean\n isNextMonth: boolean\n isStartDate: boolean\n isEndDate: boolean\n isWithinSelection: boolean\n isPreview: boolean\n isDisabled: boolean\n isSelectable: boolean\n isInactive: boolean\n className?: string\n}\n\nconst defaultProps: DatePickerCalendarProps = {\n prevBtn: true,\n nextBtn: true,\n titleFormat: 'MMMM yyyy',\n dayOfWeekFormat: 'EEEEEE',\n firstDayOfWeek: 'monday',\n hideNav: false,\n hideDays: false,\n onlyMonth: false,\n hideNextMonthWeek: false,\n noAutoFocus: false,\n rtl: false,\n resetDate: true,\n}\n\nconst arrowKeys = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']\nconst keysToHandle = ['Enter', 'Space', ...arrowKeys]\n\nfunction DatePickerCalendar(restOfProps: DatePickerCalendarProps) {\n const props = { ...defaultProps, ...restOfProps }\n\n const {\n updateDates,\n forceViewMonthChange,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n startMonth,\n endMonth,\n translation: {\n DatePicker: { selected_month },\n },\n props: { on_days_render },\n } = useContext(DatePickerContext)\n\n const {\n id,\n nr,\n rtl,\n month,\n isRange,\n titleFormat,\n firstDayOfWeek,\n dayOfWeekFormat,\n hideNav,\n locale: localeCode,\n hideDays,\n onPrev,\n onNext,\n onSelect,\n onHover,\n onKeyDown,\n resetDate,\n prevBtn,\n nextBtn,\n noAutoFocus,\n hideNextMonthWeek,\n onlyMonth,\n } = props\n\n const listRef = useRef<React.ElementRef<'table'>>()\n const labelRef = useRef<HTMLLabelElement>()\n const days = useRef<Record<string, Array<CalendarDay>>>({})\n const cache = useRef<Record<string, CalendarDay[][]>>({})\n\n useEffect(() => {\n if (!noAutoFocus && nr === 0) {\n if (listRef.current) {\n listRef.current.focus({ preventScroll: true })\n }\n }\n }, [noAutoFocus, nr])\n\n const onMouseLeaveHandler = useCallback(() => {\n updateDates({\n hoverDate: null,\n })\n }, [updateDates])\n\n const callOnSelect = useCallback(\n (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement>\n > &\n DatePickerDates\n ) => {\n onSelect?.(event)\n },\n [onSelect]\n )\n\n const getDays = useCallback(\n (month: Date): DayObject[] => {\n let daysFromCalendar = getCalendar(\n month || new Date(),\n dayOffset(firstDayOfWeek),\n {\n onlyMonth,\n hideNextMonthWeek,\n }\n ).map((date) =>\n makeDayObject(date, {\n startDate,\n endDate,\n hoverDate,\n minDate,\n maxDate,\n month,\n })\n )\n\n if (on_days_render) {\n const changedDays = on_days_render(daysFromCalendar, nr)\n if (Array.isArray(changedDays)) {\n daysFromCalendar = changedDays\n }\n }\n\n // // Save for later check against disabled days during key navigation\n days.current[format(month, 'yyyy-MM')] = daysFromCalendar\n\n return daysFromCalendar\n },\n [\n endDate,\n firstDayOfWeek,\n hideNextMonthWeek,\n hoverDate,\n maxDate,\n minDate,\n nr,\n on_days_render,\n onlyMonth,\n startDate,\n ]\n )\n\n const keyNavCalc = useCallback((date: Date, keyCode: string) => {\n // Return date if arrow keys are not pressed\n if (!arrowKeys.includes(keyCode)) {\n return date\n }\n\n const dateHandler = /(ArrowLeft|ArrowRight)/g.test(keyCode)\n ? addDays\n : addWeeks\n const shiftAmount = /(ArrowLeft|ArrowUp)/g.test(keyCode) ? -1 : 1\n\n return dateHandler(date, shiftAmount)\n }, [])\n\n const findValid = useCallback(\n (date: Date, keyCode: string) => {\n if (!on_days_render) {\n return date\n }\n\n if (!days.current) {\n return date\n }\n\n const month = format(date, 'yyyy-MM')\n\n if (!days.current[month]) {\n // re-render with new month\n getDays(date)\n }\n\n if (Array.isArray(days.current[month])) {\n const foundDate = days.current[month].find((cur) =>\n isSameDay(cur.date, date)\n )\n\n if (\n foundDate?.date &&\n (foundDate.isDisabled ||\n foundDate.isSelectable === false ||\n foundDate.isInactive)\n ) {\n const nextDate = keyNavCalc(foundDate.date, keyCode)\n foundDate.date = findValid(nextDate, keyCode)\n }\n\n if (foundDate?.date) {\n return foundDate.date\n }\n }\n\n return date\n },\n [on_days_render, getDays, keyNavCalc]\n )\n\n const hasReachedEnd = useCallback(\n (date: Date) => isDisabled(date, minDate, maxDate),\n [minDate, maxDate]\n )\n\n const onKeyDownHandler = useCallback(\n (event: React.KeyboardEvent<HTMLTableElement>) => {\n const pressedKey = event.code\n\n // call onKeyDown prop if given\n if (typeof onKeyDown === 'function') {\n return onKeyDown(event, listRef, nr)\n }\n\n // only continue of key is one of these\n if (!keysToHandle.includes(pressedKey)) {\n return\n }\n event.preventDefault()\n event.persist() // since we use the event after setState\n\n const currentDates = { startDate, endDate, startMonth, endMonth }\n const dateType = !isRange || nr === 0 ? 'start' : 'end'\n const currentDate = currentDates[`${dateType}Date`]\n\n let newDate = currentDate\n ? keyNavCalc(currentDate, pressedKey)\n : currentDates[`${dateType}Month`] ||\n (isRange && nr === 1 ? addMonths(new Date(), 1) : new Date())\n\n if (\n newDate === currentDate &&\n (pressedKey === 'Enter' || pressedKey === 'Space')\n ) {\n return callOnSelect({\n event,\n nr,\n hidePicker: true,\n })\n }\n\n const dates: {\n startDate?: Date\n endDate?: Date\n startMonth?: Date\n endMonth?: Date\n } = {}\n\n const currentMonth = currentDates[`${dateType}Month`]\n\n if (\n // in case we don't have a start/end date, then we use the current month date\n (currentMonth && !currentDate) ||\n // if we have a larger gap between the new date and the current month in the calendar\n (currentMonth &&\n Math.abs(differenceInMonths(newDate, currentMonth)) > 1)\n ) {\n newDate = !isRange\n ? currentMonth\n : nr === 0\n ? setDate(currentMonth, 1)\n : lastDayOfMonth(currentMonth)\n\n // only to make sure we navigate the calendar to the new date\n } else if (currentMonth && !isSameMonth(currentDate, currentMonth)) {\n dates[`${dateType}Month`] = newDate\n }\n\n newDate = findValid(newDate, pressedKey)\n\n if (hasReachedEnd(newDate)) {\n return // Stop here\n }\n\n dates[`${dateType}Date`] = newDate\n\n // set fallbacks\n if (!isRange) {\n dates.endDate = newDate\n } else {\n if (!startDate) {\n dates.startDate = newDate\n }\n if (!endDate) {\n dates.endDate = newDate\n }\n }\n\n // make sure we stay on the same month\n if (onlyMonth || hideNav) {\n if (\n !isSameMonth(dates.startDate, startDate) ||\n !isSameMonth(dates.endDate, startDate) // Heads up, should this not be context.endDate?\n ) {\n return\n }\n }\n\n updateDates(dates, () => {\n // call after state update, so the input get's the latest state as well\n callOnSelect({\n event,\n nr,\n hidePicker: false,\n ...dates,\n })\n })\n\n forceViewMonthChange()\n\n // and set the focus back again\n if (listRef && listRef.current) {\n listRef.current.focus({ preventScroll: true })\n }\n },\n [\n callOnSelect,\n findValid,\n hasReachedEnd,\n onKeyDown,\n startDate,\n endDate,\n updateDates,\n hideNav,\n isRange,\n keyNavCalc,\n nr,\n onlyMonth,\n endMonth,\n startMonth,\n forceViewMonthChange,\n ]\n )\n\n const cacheKey = useMemo(() => {\n return [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ].join('|')\n }, [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ])\n\n const weekDays = useMemo(() => {\n // Cache the result, just because we then avoid at least double calc because of reconciliation,\n // but we do not avoid calculating every day during hover or select\n\n if (cache.current[cacheKey]) {\n return cache.current[cacheKey]\n }\n\n let count = 0\n\n return (cache.current[cacheKey] = Object.values(\n getDays(month).reduce((acc, cur, i) => {\n // Normalize the data for table consumption\n acc[count] = acc[count] || []\n acc[count].push(cur)\n if (i % 7 === 6) {\n count++\n }\n return acc\n }, {})\n ))\n }, [cacheKey, getDays, month])\n\n const locale = useMemo(() => ({ ...locales[localeCode] }), [localeCode])\n\n return (\n <div\n className={classnames('dnb-date-picker__calendar', rtl && 'rtl')}\n lang={localeCode}\n >\n {!hideNav && (\n <div className=\"dnb-date-picker__header\">\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarButton\n type=\"prev\"\n nr={nr}\n date={minDate}\n month={month}\n locale={locale}\n showButton={prevBtn}\n onClick={onPrev}\n />\n </div>\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={selected_month.replace(\n /%s/,\n format(month, titleFormat, {\n locale,\n })\n )}\n tabIndex={-1}\n ref={labelRef}\n >\n {format(month, titleFormat, {\n locale,\n })}\n </label>\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarButton\n type=\"next\"\n nr={nr}\n date={maxDate}\n month={month}\n locale={locale}\n showButton={nextBtn}\n onClick={onNext}\n />\n </div>\n </div>\n )}\n <table\n role=\"grid\"\n className=\"dnb-no-focus\"\n tabIndex={0}\n aria-labelledby={`${id}--title`}\n onKeyDown={onKeyDownHandler}\n onMouseLeave={onMouseLeaveHandler}\n ref={listRef}\n >\n {!hideDays && (\n <thead aria-hidden>\n <tr role=\"row\" className=\"dnb-date-picker__labels\">\n {getWeek(dayOffset(firstDayOfWeek)).map((day, i) => (\n <th\n key={i}\n role=\"columnheader\"\n scope=\"col\"\n className={classnames(\n 'dnb-date-picker__labels__day',\n `dnb-date-picker__labels__day--${format(day, 'i', {\n locale,\n })}`\n )}\n aria-label={format(day, 'EEEE', {\n locale,\n })}\n >\n {format(day, dayOfWeekFormat, {\n locale,\n })}\n </th>\n ))}\n </tr>\n </thead>\n )}\n <tbody>\n {weekDays.map((week, i) => {\n return (\n <tr\n key={'week' + i}\n role=\"row\"\n className=\"dnb-date-picker__days\"\n >\n {week.map((day: DayObject, i) => {\n const title = format(day.date, 'PPPP', {\n locale,\n })\n\n const handleAsDisabled =\n day.isLastMonth ||\n day.isNextMonth ||\n day.isDisabled ||\n day.isInactive\n\n const dateType = day.isStartDate\n ? 'start'\n : day.isEndDate\n ? 'end'\n : undefined\n const isSelectedDate =\n nr === 0 ? day.isStartDate : day.isEndDate\n\n // cell params\n const paramsCell = {\n tabIndex: -1,\n ...(dateType && { id: `${id}--button-${dateType}` }),\n ...(isSelectedDate && { ['aria-selected']: true }),\n } as React.HTMLProps<HTMLTableCellElement>\n\n // cell + button params\n const paramsButton = {\n ...(isSelectedDate && { ['aria-current']: 'date' }),\n } as ButtonProps\n\n return (\n <td\n key={'day' + i}\n role=\"gridcell\"\n className={classnames(\n 'dnb-date-picker__day',\n 'dnb-no-focus',\n buildDayClassNames(day)\n )}\n {...paramsCell}\n >\n <Button\n size=\"medium\"\n variant=\"secondary\"\n text={format(day.date, 'd', {\n locale,\n })}\n bounding={true}\n disabled={handleAsDisabled}\n tabIndex={handleAsDisabled ? 0 : -1} // fix for NVDA\n aria-disabled={handleAsDisabled}\n aria-label={title}\n {...paramsButton}\n on_click={\n handleAsDisabled\n ? undefined\n : ({ event }) =>\n onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n resetDate,\n event,\n onSelect: (state) => {\n updateDates(state, (dates) =>\n callOnSelect({\n ...dates,\n event,\n nr,\n hidePicker: !isRange,\n })\n )\n },\n })\n }\n onMouseOver={\n handleAsDisabled\n ? undefined\n : () => onHoverDay({ day, hoverDate, onHover })\n }\n onFocus={\n handleAsDisabled\n ? undefined\n : () => onHoverDay({ day, hoverDate, onHover })\n }\n />\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n </div>\n )\n}\n\nexport default DatePickerCalendar\n\nexport type CalendarButtonProps = {\n type: 'prev' | 'next'\n nr: number\n date: Date\n month: Date\n locale: CalendarLocales[keyof CalendarLocales]\n showButton: boolean\n onClick: ({\n nr,\n type,\n }: {\n nr: number\n type: CalendarButtonProps['type']\n }) => void\n onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void\n}\n\nfunction CalendarButton({\n type,\n nr,\n date,\n month,\n locale,\n showButton,\n onClick,\n onKeyDown,\n}: CalendarButtonProps) {\n const tr = useTranslation().DatePicker\n\n if (!showButton) {\n return <></>\n }\n const disabled = date && isSameMonth(month, date)\n\n const title = tr[`${type}_month`].replace(\n /%s/,\n format(subMonths(month, 1), 'MMMM yyyy', {\n locale,\n })\n )\n\n const icon = type === 'prev' ? 'chevron_left' : 'chevron_right'\n\n return (\n <Button\n className={classnames(`dnb-date-picker__${type}`, { disabled })}\n icon={icon}\n size=\"small\"\n aria-label={title}\n onClick={() => onClick && !disabled && onClick({ nr, type })}\n onKeyDown={onKeyDown}\n />\n )\n}\n\ntype SelectRangeEvent = {\n day: DayObject\n event?: React.MouseEvent<HTMLButtonElement>\n startDate?: Date\n endDate?: Date\n resetDate?: boolean\n isRange?: boolean\n onSelect?: DatePickerCalendarProps['onSelect']\n}\n\nfunction onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n onSelect,\n resetDate,\n event,\n}: SelectRangeEvent) {\n event.persist()\n\n if (!isRange) {\n // set only date\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: startOfDay(day.date),\n event,\n })\n\n // for setting date new on every selection, do this here\n }\n\n if (!startDate || (resetDate && startDate && endDate)) {\n // set startDate\n // user is selecting startDate\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: undefined,\n event,\n })\n }\n\n // set either startDate or endDate\n const daysToStartDate = Math.abs(\n differenceInCalendarDays(startDate, day.date)\n )\n const daysToEndDate = Math.abs(\n differenceInCalendarDays(endDate, day.date)\n )\n\n const range = toRange(\n endDate && !resetDate && daysToStartDate < daysToEndDate\n ? endDate\n : startDate,\n day.date\n )\n\n return onSelect({\n startDate: startOfDay(range.startDate),\n endDate: startOfDay(range.endDate),\n event,\n })\n}\n\nfunction onHoverDay({\n day,\n hoverDate,\n onHover,\n}: {\n day: CalendarDay\n hoverDate?: Date\n onHover: DatePickerCalendarProps['onHover']\n}) {\n if (!isSameDay(day.date, hoverDate) && onHover) {\n onHover(day.date)\n }\n}\n\nfunction buildDayClassNames(day: DayObject) {\n return classnames(\n {\n 'dnb-date-picker__day--start-date': day.isStartDate,\n 'dnb-date-picker__day--end-date': day.isEndDate,\n 'dnb-date-picker__day--preview': day.isPreview,\n 'dnb-date-picker__day--within-selection': day.isWithinSelection,\n 'dnb-date-picker__day--selectable': day.isSelectable,\n 'dnb-date-picker__day--inactive': day.isInactive,\n 'dnb-date-picker__day--disabled': day.isDisabled,\n 'dnb-date-picker__day--today': day.isToday,\n },\n day.className\n )\n}\n"],"mappings":";;;;;;AAKA,OAAOA,KAAK,IACVC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,OAAO,EACPC,MAAM,QACD,OAAO;AACd,OAAOC,UAAU,MAAM,YAAY;AAGnC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,OAAOC,SAAS,MAAM,oBAAoB;AAC1C,OAAOC,SAAS,MAAM,oBAAoB;AAC1C,OAAOC,QAAQ,MAAM,mBAAmB;AACxC,OAAOC,OAAO,MAAM,kBAAkB;AACtC,OAAOC,SAAS,MAAM,oBAAoB;AAC1C,OAAOC,WAAW,MAAM,sBAAsB;AAC9C,OAAOC,UAAU,MAAM,qBAAqB;AAC5C,OAAOC,wBAAwB,MAAM,mCAAmC;AACxE,OAAOC,kBAAkB,MAAM,6BAA6B;AAC5D,OAAOC,cAAc,MAAM,yBAAyB;AACpD,OAAOC,OAAO,MAAM,kBAAkB;AAGtC,OAAOC,UAAU,MAAM,kCAAkC;AACzD,OAAOC,YAAY,MAAM,oCAAoC;AAC7D,OAAOC,UAAU,MAAM,qCAAqC;AAC5D,OAAOC,YAAY,MAAM,uCAAuC;AAChE,OAAOC,YAAY,MAAM,uCAAuC;AAEhE,SACEC,UAAU,EACVC,aAAa,EACbC,OAAO,EACPC,OAAO,EACPC,SAAS,EACTC,WAAW,QACN,kBAAkB;AACzB,OAAOC,MAAM,MAAuB,kBAAkB;AACtD,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,SAASC,cAAc,QAAQ,cAAc;AAyB7C,MAAMC,OAAwB,GAAG;EAC/B,OAAO,EAAE;IAAEC,QAAQ,EAAEf,UAAU;IAAEgB,UAAU,EAAEf;EAAa,CAAC;EAC3D,OAAO,EAAE;IAAEc,QAAQ,EAAEb,UAAU;IAAEc,UAAU,EAAEZ;EAAa,CAAC;EAC3D,OAAO,EAAE;IAAEW,QAAQ,EAAEb,UAAU;IAAEc,UAAU,EAAEb;EAAa;AAC5D,CAAC;AAiED,MAAMc,YAAqC,GAAG;EAC5CC,OAAO,EAAE,IAAI;EACbC,OAAO,EAAE,IAAI;EACbC,WAAW,EAAE,WAAW;EACxBC,eAAe,EAAE,QAAQ;EACzBC,cAAc,EAAE,QAAQ;EACxBC,OAAO,EAAE,KAAK;EACdC,QAAQ,EAAE,KAAK;EACfC,SAAS,EAAE,KAAK;EAChBC,iBAAiB,EAAE,KAAK;EACxBC,WAAW,EAAE,KAAK;EAClBC,GAAG,EAAE,KAAK;EACVC,SAAS,EAAE;AACb,CAAC;AAED,MAAMC,SAAS,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC;AACrE,MAAMC,YAAY,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAGD,SAAS,CAAC;AAErD,SAASE,kBAAkBA,CAACC,WAAoC,EAAE;EAChE,MAAMC,KAAK,GAAAC,aAAA,CAAAA,aAAA,KAAQlB,YAAY,GAAKgB,WAAW,CAAE;EAEjD,MAAM;IACJG,WAAW;IACXC,oBAAoB;IACpBC,SAAS;IACTC,OAAO;IACPC,SAAS;IACTC,OAAO;IACPC,OAAO;IACPC,UAAU;IACVC,QAAQ;IACRC,WAAW,EAAE;MACXC,UAAU,EAAE;QAAEC;MAAe;IAC/B,CAAC;IACDb,KAAK,EAAE;MAAEc;IAAe;EAC1B,CAAC,GAAGjE,UAAU,CAAC6B,iBAAiB,CAAC;EAEjC,MAAM;IACJqC,EAAE;IACFC,EAAE;IACFtB,GAAG;IACHuB,KAAK;IACLC,OAAO;IACPhC,WAAW;IACXE,cAAc;IACdD,eAAe;IACfE,OAAO;IACP8B,MAAM,EAAEC,UAAU;IAClB9B,QAAQ;IACR+B,MAAM;IACNC,MAAM;IACNC,QAAQ;IACRC,OAAO;IACPC,SAAS;IACT9B,SAAS;IACTX,OAAO;IACPC,OAAO;IACPQ,WAAW;IACXD,iBAAiB;IACjBD;EACF,CAAC,GAAGS,KAAK;EAET,MAAM0B,OAAO,GAAG1E,MAAM,CAA4B,CAAC;EACnD,MAAM2E,QAAQ,GAAG3E,MAAM,CAAmB,CAAC;EAC3C,MAAM4E,IAAI,GAAG5E,MAAM,CAAqC,CAAC,CAAC,CAAC;EAC3D,MAAM6E,KAAK,GAAG7E,MAAM,CAAkC,CAAC,CAAC,CAAC;EAEzDF,SAAS,CAAC,MAAM;IACd,IAAI,CAAC2C,WAAW,IAAIuB,EAAE,KAAK,CAAC,EAAE;MAC5B,IAAIU,OAAO,CAACI,OAAO,EAAE;QACnBJ,OAAO,CAACI,OAAO,CAACC,KAAK,CAAC;UAAEC,aAAa,EAAE;QAAK,CAAC,CAAC;MAChD;IACF;EACF,CAAC,EAAE,CAACvC,WAAW,EAAEuB,EAAE,CAAC,CAAC;EAErB,MAAMiB,mBAAmB,GAAGrF,WAAW,CAAC,MAAM;IAC5CsD,WAAW,CAAC;MACVI,SAAS,EAAE;IACb,CAAC,CAAC;EACJ,CAAC,EAAE,CAACJ,WAAW,CAAC,CAAC;EAEjB,MAAMgC,YAAY,GAAGtF,WAAW,CAE5BuF,KAIiB,IACd;IACHZ,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGY,KAAK,CAAC;EACnB,CAAC,EACD,CAACZ,QAAQ,CACX,CAAC;EAED,MAAMa,OAAO,GAAGxF,WAAW,CACxBqE,KAAW,IAAkB;IAC5B,IAAIoB,gBAAgB,GAAG7D,WAAW,CAChCyC,KAAK,IAAI,IAAIqB,IAAI,CAAC,CAAC,EACnB/D,SAAS,CAACa,cAAc,CAAC,EACzB;MACEG,SAAS;MACTC;IACF,CACF,CAAC,CAAC+C,GAAG,CAAEC,IAAI,IACTpE,aAAa,CAACoE,IAAI,EAAE;MAClBpC,SAAS;MACTC,OAAO;MACPC,SAAS;MACTE,OAAO;MACPD,OAAO;MACPU;IACF,CAAC,CACH,CAAC;IAED,IAAIH,cAAc,EAAE;MAClB,MAAM2B,WAAW,GAAG3B,cAAc,CAACuB,gBAAgB,EAAErB,EAAE,CAAC;MACxD,IAAI0B,KAAK,CAACC,OAAO,CAACF,WAAW,CAAC,EAAE;QAC9BJ,gBAAgB,GAAGI,WAAW;MAChC;IACF;IAGAb,IAAI,CAACE,OAAO,CAAC5E,MAAM,CAAC+D,KAAK,EAAE,SAAS,CAAC,CAAC,GAAGoB,gBAAgB;IAEzD,OAAOA,gBAAgB;EACzB,CAAC,EACD,CACEhC,OAAO,EACPjB,cAAc,EACdI,iBAAiB,EACjBc,SAAS,EACTC,OAAO,EACPC,OAAO,EACPQ,EAAE,EACFF,cAAc,EACdvB,SAAS,EACTa,SAAS,CAEb,CAAC;EAED,MAAMwC,UAAU,GAAGhG,WAAW,CAAC,CAAC4F,IAAU,EAAEK,OAAe,KAAK;IAE9D,IAAI,CAACjD,SAAS,CAACkD,QAAQ,CAACD,OAAO,CAAC,EAAE;MAChC,OAAOL,IAAI;IACb;IAEA,MAAMO,WAAW,GAAG,yBAAyB,CAACC,IAAI,CAACH,OAAO,CAAC,GACvDvF,OAAO,GACPD,QAAQ;IACZ,MAAM4F,WAAW,GAAG,sBAAsB,CAACD,IAAI,CAACH,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;IAEjE,OAAOE,WAAW,CAACP,IAAI,EAAES,WAAW,CAAC;EACvC,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,SAAS,GAAGtG,WAAW,CAC3B,CAAC4F,IAAU,EAAEK,OAAe,KAAK;IAC/B,IAAI,CAAC/B,cAAc,EAAE;MACnB,OAAO0B,IAAI;IACb;IAEA,IAAI,CAACZ,IAAI,CAACE,OAAO,EAAE;MACjB,OAAOU,IAAI;IACb;IAEA,MAAMvB,KAAK,GAAG/D,MAAM,CAACsF,IAAI,EAAE,SAAS,CAAC;IAErC,IAAI,CAACZ,IAAI,CAACE,OAAO,CAACb,KAAK,CAAC,EAAE;MAExBmB,OAAO,CAACI,IAAI,CAAC;IACf;IAEA,IAAIE,KAAK,CAACC,OAAO,CAACf,IAAI,CAACE,OAAO,CAACb,KAAK,CAAC,CAAC,EAAE;MACtC,MAAMkC,SAAS,GAAGvB,IAAI,CAACE,OAAO,CAACb,KAAK,CAAC,CAACmC,IAAI,CAAEC,GAAG,IAC7C9F,SAAS,CAAC8F,GAAG,CAACb,IAAI,EAAEA,IAAI,CAC1B,CAAC;MAED,IACEW,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEX,IAAI,KACdW,SAAS,CAAChF,UAAU,IACnBgF,SAAS,CAACG,YAAY,KAAK,KAAK,IAChCH,SAAS,CAACI,UAAU,CAAC,EACvB;QACA,MAAMC,QAAQ,GAAGZ,UAAU,CAACO,SAAS,CAACX,IAAI,EAAEK,OAAO,CAAC;QACpDM,SAAS,CAACX,IAAI,GAAGU,SAAS,CAACM,QAAQ,EAAEX,OAAO,CAAC;MAC/C;MAEA,IAAIM,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEX,IAAI,EAAE;QACnB,OAAOW,SAAS,CAACX,IAAI;MACvB;IACF;IAEA,OAAOA,IAAI;EACb,CAAC,EACD,CAAC1B,cAAc,EAAEsB,OAAO,EAAEQ,UAAU,CACtC,CAAC;EAED,MAAMa,aAAa,GAAG7G,WAAW,CAC9B4F,IAAU,IAAKrE,UAAU,CAACqE,IAAI,EAAEhC,OAAO,EAAED,OAAO,CAAC,EAClD,CAACC,OAAO,EAAED,OAAO,CACnB,CAAC;EAED,MAAMmD,gBAAgB,GAAG9G,WAAW,CACjCuF,KAA4C,IAAK;IAChD,MAAMwB,UAAU,GAAGxB,KAAK,CAACyB,IAAI;IAG7B,IAAI,OAAOnC,SAAS,KAAK,UAAU,EAAE;MACnC,OAAOA,SAAS,CAACU,KAAK,EAAET,OAAO,EAAEV,EAAE,CAAC;IACtC;IAGA,IAAI,CAACnB,YAAY,CAACiD,QAAQ,CAACa,UAAU,CAAC,EAAE;MACtC;IACF;IACAxB,KAAK,CAAC0B,cAAc,CAAC,CAAC;IACtB1B,KAAK,CAAC2B,OAAO,CAAC,CAAC;IAEf,MAAMC,YAAY,GAAG;MAAE3D,SAAS;MAAEC,OAAO;MAAEI,UAAU;MAAEC;IAAS,CAAC;IACjE,MAAMsD,QAAQ,GAAG,CAAC9C,OAAO,IAAIF,EAAE,KAAK,CAAC,GAAG,OAAO,GAAG,KAAK;IACvD,MAAMiD,WAAW,GAAGF,YAAY,CAAE,GAAEC,QAAS,MAAK,CAAC;IAEnD,IAAIE,OAAO,GAAGD,WAAW,GACrBrB,UAAU,CAACqB,WAAW,EAAEN,UAAU,CAAC,GACnCI,YAAY,CAAE,GAAEC,QAAS,OAAM,CAAC,KAC/B9C,OAAO,IAAIF,EAAE,KAAK,CAAC,GAAG5D,SAAS,CAAC,IAAIkF,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAIA,IAAI,CAAC,CAAC,CAAC;IAEjE,IACE4B,OAAO,KAAKD,WAAW,KACtBN,UAAU,KAAK,OAAO,IAAIA,UAAU,KAAK,OAAO,CAAC,EAClD;MACA,OAAOzB,YAAY,CAAC;QAClBC,KAAK;QACLnB,EAAE;QACFmD,UAAU,EAAE;MACd,CAAC,CAAC;IACJ;IAEA,MAAMC,KAKL,GAAG,CAAC,CAAC;IAEN,MAAMC,YAAY,GAAGN,YAAY,CAAE,GAAEC,QAAS,OAAM,CAAC;IAErD,IAEGK,YAAY,IAAI,CAACJ,WAAW,IAE5BI,YAAY,IACXC,IAAI,CAACC,GAAG,CAAC5G,kBAAkB,CAACuG,OAAO,EAAEG,YAAY,CAAC,CAAC,GAAG,CAAE,EAC1D;MACAH,OAAO,GAAG,CAAChD,OAAO,GACdmD,YAAY,GACZrD,EAAE,KAAK,CAAC,GACRnD,OAAO,CAACwG,YAAY,EAAE,CAAC,CAAC,GACxBzG,cAAc,CAACyG,YAAY,CAAC;IAGlC,CAAC,MAAM,IAAIA,YAAY,IAAI,CAAC7G,WAAW,CAACyG,WAAW,EAAEI,YAAY,CAAC,EAAE;MAClED,KAAK,CAAE,GAAEJ,QAAS,OAAM,CAAC,GAAGE,OAAO;IACrC;IAEAA,OAAO,GAAGhB,SAAS,CAACgB,OAAO,EAAEP,UAAU,CAAC;IAExC,IAAIF,aAAa,CAACS,OAAO,CAAC,EAAE;MAC1B;IACF;IAEAE,KAAK,CAAE,GAAEJ,QAAS,MAAK,CAAC,GAAGE,OAAO;IAGlC,IAAI,CAAChD,OAAO,EAAE;MACZkD,KAAK,CAAC/D,OAAO,GAAG6D,OAAO;IACzB,CAAC,MAAM;MACL,IAAI,CAAC9D,SAAS,EAAE;QACdgE,KAAK,CAAChE,SAAS,GAAG8D,OAAO;MAC3B;MACA,IAAI,CAAC7D,OAAO,EAAE;QACZ+D,KAAK,CAAC/D,OAAO,GAAG6D,OAAO;MACzB;IACF;IAGA,IAAI3E,SAAS,IAAIF,OAAO,EAAE;MACxB,IACE,CAAC7B,WAAW,CAAC4G,KAAK,CAAChE,SAAS,EAAEA,SAAS,CAAC,IACxC,CAAC5C,WAAW,CAAC4G,KAAK,CAAC/D,OAAO,EAAED,SAAS,CAAC,EACtC;QACA;MACF;IACF;IAEAF,WAAW,CAACkE,KAAK,EAAE,MAAM;MAEvBlC,YAAY,CAAAjC,aAAA;QACVkC,KAAK;QACLnB,EAAE;QACFmD,UAAU,EAAE;MAAK,GACdC,KAAK,CACT,CAAC;IACJ,CAAC,CAAC;IAEFjE,oBAAoB,CAAC,CAAC;IAGtB,IAAIuB,OAAO,IAAIA,OAAO,CAACI,OAAO,EAAE;MAC9BJ,OAAO,CAACI,OAAO,CAACC,KAAK,CAAC;QAAEC,aAAa,EAAE;MAAK,CAAC,CAAC;IAChD;EACF,CAAC,EACD,CACEE,YAAY,EACZgB,SAAS,EACTO,aAAa,EACbhC,SAAS,EACTrB,SAAS,EACTC,OAAO,EACPH,WAAW,EACXb,OAAO,EACP6B,OAAO,EACP0B,UAAU,EACV5B,EAAE,EACFzB,SAAS,EACTmB,QAAQ,EACRD,UAAU,EACVN,oBAAoB,CAExB,CAAC;EAED,MAAMqE,QAAQ,GAAGzH,OAAO,CAAC,MAAM;IAC7B,OAAO,CACLiE,EAAE,EACFC,KAAK,EACL7B,cAAc,EACdG,SAAS,EACTC,iBAAiB,EACjBY,SAAS,EACTC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,OAAO,CACR,CAACiE,IAAI,CAAC,GAAG,CAAC;EACb,CAAC,EAAE,CACDzD,EAAE,EACFC,KAAK,EACL7B,cAAc,EACdG,SAAS,EACTC,iBAAiB,EACjBY,SAAS,EACTC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,OAAO,CACR,CAAC;EAEF,MAAMkE,QAAQ,GAAG3H,OAAO,CAAC,MAAM;IAI7B,IAAI8E,KAAK,CAACC,OAAO,CAAC0C,QAAQ,CAAC,EAAE;MAC3B,OAAO3C,KAAK,CAACC,OAAO,CAAC0C,QAAQ,CAAC;IAChC;IAEA,IAAIG,KAAK,GAAG,CAAC;IAEb,OAAQ9C,KAAK,CAACC,OAAO,CAAC0C,QAAQ,CAAC,GAAGI,MAAM,CAACC,MAAM,CAC7CzC,OAAO,CAACnB,KAAK,CAAC,CAAC6D,MAAM,CAAC,CAACC,GAAG,EAAE1B,GAAG,EAAE2B,CAAC,KAAK;MAErCD,GAAG,CAACJ,KAAK,CAAC,GAAGI,GAAG,CAACJ,KAAK,CAAC,IAAI,EAAE;MAC7BI,GAAG,CAACJ,KAAK,CAAC,CAACM,IAAI,CAAC5B,GAAG,CAAC;MACpB,IAAI2B,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACfL,KAAK,EAAE;MACT;MACA,OAAOI,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CACP,CAAC;EACH,CAAC,EAAE,CAACP,QAAQ,EAAEpC,OAAO,EAAEnB,KAAK,CAAC,CAAC;EAE9B,MAAME,MAAM,GAAGpE,OAAO,CAAC,MAAAkD,aAAA,KAAYrB,OAAO,CAACwC,UAAU,CAAC,CAAG,EAAE,CAACA,UAAU,CAAC,CAAC;EAExE,OACEzE,KAAA,CAAAuI,aAAA;IACEC,SAAS,EAAa,2BAA2B,IAAEzF,GAAG,eAAW;IACjE0F,IAAI,EAAEhE;EAAW,GAEhB,CAAC/B,OAAO,IACP1C,KAAA,CAAAuI,aAAA;IAAKC,SAAS,EAAC;EAAyB,GACtCxI,KAAA,CAAAuI,aAAA;IAAKC,SAAS,EAAC;EAA8B,GAC3CxI,KAAA,CAAAuI,aAAA,CAACG,cAAc;IACbC,IAAI,EAAC,MAAM;IACXtE,EAAE,EAAEA,EAAG;IACPwB,IAAI,EAAEhC,OAAQ;IACdS,KAAK,EAAEA,KAAM;IACbE,MAAM,EAAEA,MAAO;IACfoE,UAAU,EAAEvG,OAAQ;IACpBwG,OAAO,EAAEnE;EAAO,CACjB,CACE,CAAC,EACN1E,KAAA,CAAAuI,aAAA;IACEnE,EAAE,EAAG,GAAEA,EAAG,SAAS;IACnBoE,SAAS,EAAC,6CAA6C;IACvDM,KAAK,EAAE5E,cAAc,CAAC6E,OAAO,CAC3B,IAAI,EACJxI,MAAM,CAAC+D,KAAK,EAAE/B,WAAW,EAAE;MACzBiC;IACF,CAAC,CACH,CAAE;IACFwE,QAAQ,EAAE,CAAC,CAAE;IACbC,GAAG,EAAEjE;EAAS,GAEbzE,MAAM,CAAC+D,KAAK,EAAE/B,WAAW,EAAE;IAC1BiC;EACF,CAAC,CACI,CAAC,EACRxE,KAAA,CAAAuI,aAAA;IAAKC,SAAS,EAAC;EAA8B,GAC3CxI,KAAA,CAAAuI,aAAA,CAACG,cAAc;IACbC,IAAI,EAAC,MAAM;IACXtE,EAAE,EAAEA,EAAG;IACPwB,IAAI,EAAEjC,OAAQ;IACdU,KAAK,EAAEA,KAAM;IACbE,MAAM,EAAEA,MAAO;IACfoE,UAAU,EAAEtG,OAAQ;IACpBuG,OAAO,EAAElE;EAAO,CACjB,CACE,CACF,CACN,EACD3E,KAAA,CAAAuI,aAAA;IACEW,IAAI,EAAC,MAAM;IACXV,SAAS,EAAC,cAAc;IACxBQ,QAAQ,EAAE,CAAE;IACZ,mBAAkB,GAAE5E,EAAG,SAAS;IAChCU,SAAS,EAAEiC,gBAAiB;IAC5BoC,YAAY,EAAE7D,mBAAoB;IAClC2D,GAAG,EAAElE;EAAQ,GAEZ,CAACpC,QAAQ,IACR3C,KAAA,CAAAuI,aAAA;IAAO;EAAW,GAChBvI,KAAA,CAAAuI,aAAA;IAAIW,IAAI,EAAC,KAAK;IAACV,SAAS,EAAC;EAAyB,GAC/C7G,OAAO,CAACC,SAAS,CAACa,cAAc,CAAC,CAAC,CAACmD,GAAG,CAAC,CAACwD,GAAG,EAAEf,CAAC,KAC7CrI,KAAA,CAAAuI,aAAA;IACEc,GAAG,EAAEhB,CAAE;IACPa,IAAI,EAAC,cAAc;IACnBI,KAAK,EAAC,KAAK;IACXd,SAAS,gEAE0BjI,MAAM,CAAC6I,GAAG,EAAE,GAAG,EAAE;MAChD5E;IACF,CAAC,CAAE,EACH;IACF,cAAYjE,MAAM,CAAC6I,GAAG,EAAE,MAAM,EAAE;MAC9B5E;IACF,CAAC;EAAE,GAEFjE,MAAM,CAAC6I,GAAG,EAAE5G,eAAe,EAAE;IAC5BgC;EACF,CAAC,CACC,CACL,CACC,CACC,CACR,EACDxE,KAAA,CAAAuI,aAAA,gBACGR,QAAQ,CAACnC,GAAG,CAAC,CAAC2D,IAAI,EAAElB,CAAC,KAAK;IACzB,OACErI,KAAA,CAAAuI,aAAA;MACEc,GAAG,EAAE,MAAM,GAAGhB,CAAE;MAChBa,IAAI,EAAC,KAAK;MACVV,SAAS,EAAC;IAAuB,GAEhCe,IAAI,CAAC3D,GAAG,CAAC,CAACwD,GAAc,EAAEf,CAAC,KAAK;MAC/B,MAAMS,KAAK,GAAGvI,MAAM,CAAC6I,GAAG,CAACvD,IAAI,EAAE,MAAM,EAAE;QACrCrB;MACF,CAAC,CAAC;MAEF,MAAMgF,gBAAgB,GACpBJ,GAAG,CAACK,WAAW,IACfL,GAAG,CAACM,WAAW,IACfN,GAAG,CAAC5H,UAAU,IACd4H,GAAG,CAACxC,UAAU;MAEhB,MAAMS,QAAQ,GAAG+B,GAAG,CAACO,WAAW,GAC5B,OAAO,GACPP,GAAG,CAACQ,SAAS,GACb,KAAK,GACLC,SAAS;MACb,MAAMC,cAAc,GAClBzF,EAAE,KAAK,CAAC,GAAG+E,GAAG,CAACO,WAAW,GAAGP,GAAG,CAACQ,SAAS;MAG5C,MAAMG,UAAU,GAAAzG,aAAA,CAAAA,aAAA;QACd0F,QAAQ,EAAE,CAAC;MAAC,GACR3B,QAAQ,IAAI;QAAEjD,EAAE,EAAG,GAAEA,EAAG,YAAWiD,QAAS;MAAE,CAAC,GAC/CyC,cAAc,IAAI;QAAE,CAAC,eAAe,GAAG;MAAK,CAAC,CACT;MAG1C,MAAME,YAAY,GAAA1G,aAAA,KACZwG,cAAc,IAAI;QAAE,CAAC,cAAc,GAAG;MAAO,CAAC,CACpC;MAEhB,OACE9J,KAAA,CAAAuI,aAAA,OAAA0B,QAAA;QACEZ,GAAG,EAAE,KAAK,GAAGhB,CAAE;QACfa,IAAI,EAAC,UAAU;QACfV,SAAS,EAAElI,UAAU,sCAGnB4J,kBAAkB,CAACd,GAAG,CACxB;MAAE,GACEW,UAAU,GAEd/J,KAAA,CAAAuI,aAAA,CAACzG,MAAM,EAAAmI,QAAA;QACLE,IAAI,EAAC,QAAQ;QACbC,OAAO,EAAC,WAAW;QACnBC,IAAI,EAAE9J,MAAM,CAAC6I,GAAG,CAACvD,IAAI,EAAE,GAAG,EAAE;UAC1BrB;QACF,CAAC,CAAE;QACH8F,QAAQ,EAAE,IAAK;QACfC,QAAQ,EAAEf,gBAAiB;QAC3BR,QAAQ,EAAEQ,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAE;QACpC,iBAAeA,gBAAiB;QAChC,cAAYV;MAAM,GACdkB,YAAY;QAChBQ,QAAQ,EACNhB,gBAAgB,GACZK,SAAS,GACTY,IAAA;UAAA,IAAC;YAAEjF;UAAM,CAAC,GAAAiF,IAAA;UAAA,OACRC,aAAa,CAAC;YACZtB,GAAG;YACH7E,OAAO;YACPd,SAAS;YACTC,OAAO;YACPV,SAAS;YACTwC,KAAK;YACLZ,QAAQ,EAAG+F,KAAK,IAAK;cACnBpH,WAAW,CAACoH,KAAK,EAAGlD,KAAK,IACvBlC,YAAY,CAAAjC,aAAA,CAAAA,aAAA,KACPmE,KAAK;gBACRjC,KAAK;gBACLnB,EAAE;gBACFmD,UAAU,EAAE,CAACjD;cAAO,EACrB,CACH,CAAC;YACH;UACF,CAAC,CAAC;QAAA,CACT;QACDqG,WAAW,EACTpB,gBAAgB,GACZK,SAAS,GACT,MAAMgB,UAAU,CAAC;UAAEzB,GAAG;UAAEzF,SAAS;UAAEkB;QAAQ,CAAC,CACjD;QACDiG,OAAO,EACLtB,gBAAgB,GACZK,SAAS,GACT,MAAMgB,UAAU,CAAC;UAAEzB,GAAG;UAAEzF,SAAS;UAAEkB;QAAQ,CAAC;MACjD,EACF,CACC,CAAC;IAET,CAAC,CACC,CAAC;EAET,CAAC,CACI,CACF,CACJ,CAAC;AAEV;AAEA,eAAe1B,kBAAkB;AAmBjC,SAASuF,cAAcA,CAAAqC,KAAA,EASC;EAAA,IATA;IACtBpC,IAAI;IACJtE,EAAE;IACFwB,IAAI;IACJvB,KAAK;IACLE,MAAM;IACNoE,UAAU;IACVC,OAAO;IACP/D;EACmB,CAAC,GAAAiG,KAAA;EACpB,MAAMC,EAAE,GAAGhJ,cAAc,CAAC,CAAC,CAACiC,UAAU;EAEtC,IAAI,CAAC2E,UAAU,EAAE;IACf,OAAO5I,KAAA,CAAAuI,aAAA,CAAAvI,KAAA,CAAAiL,QAAA,MAAI,CAAC;EACd;EACA,MAAMV,QAAQ,GAAG1E,IAAI,IAAIhF,WAAW,CAACyD,KAAK,EAAEuB,IAAI,CAAC;EAEjD,MAAMiD,KAAK,GAAGkC,EAAE,CAAE,GAAErC,IAAK,QAAO,CAAC,CAACI,OAAO,CACvC,IAAI,EACJxI,MAAM,CAACC,SAAS,CAAC8D,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE;IACvCE;EACF,CAAC,CACH,CAAC;EAED,MAAM0G,IAAI,GAAGvC,IAAI,KAAK,MAAM,GAAG,cAAc,GAAG,eAAe;EAE/D,OACE3I,KAAA,CAAAuI,aAAA,CAACzG,MAAM;IACL0G,SAAS,EAAc,oBAAmBG,IAAK,EAAC,IAAI4B,QAAQ,oBAAI;IAChEW,IAAI,EAAEA,IAAK;IACXf,IAAI,EAAC,OAAO;IACZ,cAAYrB,KAAM;IAClBD,OAAO,EAAEA,CAAA,KAAMA,OAAO,IAAI,CAAC0B,QAAQ,IAAI1B,OAAO,CAAC;MAAExE,EAAE;MAAEsE;IAAK,CAAC,CAAE;IAC7D7D,SAAS,EAAEA;EAAU,CACtB,CAAC;AAEN;AAYA,SAAS4F,aAAaA,CAAAS,KAAA,EAQD;EAAA,IARE;IACrB/B,GAAG;IACH7E,OAAO;IACPd,SAAS;IACTC,OAAO;IACPkB,QAAQ;IACR5B,SAAS;IACTwC;EACgB,CAAC,GAAA2F,KAAA;EACjB3F,KAAK,CAAC2B,OAAO,CAAC,CAAC;EAEf,IAAI,CAAC5C,OAAO,EAAE;IAEZ,OAAOK,QAAQ,CAAC;MACdnB,SAAS,EAAE3C,UAAU,CAACsI,GAAG,CAACvD,IAAI,CAAC;MAC/BnC,OAAO,EAAE5C,UAAU,CAACsI,GAAG,CAACvD,IAAI,CAAC;MAC7BL;IACF,CAAC,CAAC;EAGJ;EAEA,IAAI,CAAC/B,SAAS,IAAKT,SAAS,IAAIS,SAAS,IAAIC,OAAQ,EAAE;IAGrD,OAAOkB,QAAQ,CAAC;MACdnB,SAAS,EAAE3C,UAAU,CAACsI,GAAG,CAACvD,IAAI,CAAC;MAC/BnC,OAAO,EAAEmG,SAAS;MAClBrE;IACF,CAAC,CAAC;EACJ;EAGA,MAAM4F,eAAe,GAAGzD,IAAI,CAACC,GAAG,CAC9B7G,wBAAwB,CAAC0C,SAAS,EAAE2F,GAAG,CAACvD,IAAI,CAC9C,CAAC;EACD,MAAMwF,aAAa,GAAG1D,IAAI,CAACC,GAAG,CAC5B7G,wBAAwB,CAAC2C,OAAO,EAAE0F,GAAG,CAACvD,IAAI,CAC5C,CAAC;EAED,MAAMyF,KAAK,GAAG5J,OAAO,CACnBgC,OAAO,IAAI,CAACV,SAAS,IAAIoI,eAAe,GAAGC,aAAa,GACpD3H,OAAO,GACPD,SAAS,EACb2F,GAAG,CAACvD,IACN,CAAC;EAED,OAAOjB,QAAQ,CAAC;IACdnB,SAAS,EAAE3C,UAAU,CAACwK,KAAK,CAAC7H,SAAS,CAAC;IACtCC,OAAO,EAAE5C,UAAU,CAACwK,KAAK,CAAC5H,OAAO,CAAC;IAClC8B;EACF,CAAC,CAAC;AACJ;AAEA,SAASqF,UAAUA,CAAAU,KAAA,EAQhB;EAAA,IARiB;IAClBnC,GAAG;IACHzF,SAAS;IACTkB;EAKF,CAAC,GAAA0G,KAAA;EACC,IAAI,CAAC3K,SAAS,CAACwI,GAAG,CAACvD,IAAI,EAAElC,SAAS,CAAC,IAAIkB,OAAO,EAAE;IAC9CA,OAAO,CAACuE,GAAG,CAACvD,IAAI,CAAC;EACnB;AACF;AAEA,SAASqE,kBAAkBA,CAACd,GAAc,EAAE;EAC1C,OAAO9I,UAAU,CAWf8I,GAAG,CAACZ,SAAS,EATyBY,GAAG,CAACO,WAAW,IAAnD,kCAAkC,EACAP,GAAG,CAACQ,SAAS,IAA/C,gCAAgC,EACCR,GAAG,CAACoC,SAAS,IAA9C,+BAA+B,EACWpC,GAAG,CAACqC,iBAAiB,IAA/D,wCAAwC,EACJrC,GAAG,CAACzC,YAAY,IAApD,kCAAkC,EACAyC,GAAG,CAACxC,UAAU,IAAhD,gCAAgC,EACEwC,GAAG,CAAC5H,UAAU,IAAhD,gCAAgC,EACD4H,GAAG,CAACsC,OAAO,IAA1C,6BAGJ,CAAC;AACH"}
|
|
@@ -1,3 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Web DatePicker Context
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
3
5
|
import React from 'react';
|
|
6
|
+
import { DatePickerProps, DisplayPickerEvent } from './DatePicker';
|
|
7
|
+
import { ContextProps } from '../../shared/Context';
|
|
8
|
+
import { DatePickerChangeEvent, DatePickerProviderState, GetReturnObjectParams, ReturnObject } from './DatePickerProvider';
|
|
9
|
+
import { DatePickerDateProps, DatePickerDates } from './hooks/useDates';
|
|
10
|
+
import { CalendarView } from './hooks/useViews';
|
|
11
|
+
export type DateType = Date | string;
|
|
12
|
+
export type DatePickerContextValues = ContextProps & DatePickerDates & {
|
|
13
|
+
props: DatePickerProps;
|
|
14
|
+
translation: ContextProps['translation'];
|
|
15
|
+
views: Array<CalendarView>;
|
|
16
|
+
hasHadValidDate: boolean;
|
|
17
|
+
previousDates: DatePickerDateProps;
|
|
18
|
+
updateDates: (dates: DatePickerDates, callback?: (dates: DatePickerDates) => void) => void;
|
|
19
|
+
setState?: (state: DatePickerProviderState) => void;
|
|
20
|
+
setViews: (views: Array<CalendarView>, callback?: () => void) => void;
|
|
21
|
+
forceViewMonthChange: () => void;
|
|
22
|
+
callOnChangeHandler: <E>(event: DatePickerChangeEvent<E>) => void;
|
|
23
|
+
hidePicker: (event: DisplayPickerEvent) => void;
|
|
24
|
+
getReturnObject: <E>(params: GetReturnObjectParams<E>) => ReturnObject<E>;
|
|
25
|
+
};
|
|
26
|
+
declare const DatePickerContext: React.Context<DatePickerContextValues>;
|
|
27
|
+
export default DatePickerContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerContext.js","names":["React","DatePickerContext","createContext"],"sources":["../../../../src/components/date-picker/DatePickerContext.
|
|
1
|
+
{"version":3,"file":"DatePickerContext.js","names":["React","DatePickerContext","createContext"],"sources":["../../../../src/components/date-picker/DatePickerContext.ts"],"sourcesContent":["/**\n * Web DatePicker Context\n *\n */\n\nimport React from 'react'\nimport { DatePickerProps, DisplayPickerEvent } from './DatePicker'\nimport { ContextProps } from '../../shared/Context'\nimport {\n DatePickerChangeEvent,\n DatePickerProviderState,\n GetReturnObjectParams,\n ReturnObject,\n} from './DatePickerProvider'\nimport { DatePickerDateProps, DatePickerDates } from './hooks/useDates'\nimport { CalendarView } from './hooks/useViews'\n\nexport type DateType = Date | string\n\nexport type DatePickerContextValues = ContextProps &\n DatePickerDates & {\n props: DatePickerProps\n translation: ContextProps['translation']\n views: Array<CalendarView>\n hasHadValidDate: boolean\n previousDates: DatePickerDateProps\n updateDates: (\n dates: DatePickerDates,\n callback?: (dates: DatePickerDates) => void\n ) => void\n setState?: (state: DatePickerProviderState) => void\n setViews: (views: Array<CalendarView>, callback?: () => void) => void\n forceViewMonthChange: () => void\n callOnChangeHandler: <E>(event: DatePickerChangeEvent<E>) => void\n hidePicker: (event: DisplayPickerEvent) => void\n getReturnObject: <E>(\n params: GetReturnObjectParams<E>\n ) => ReturnObject<E>\n }\n\nconst DatePickerContext = React.createContext<DatePickerContextValues>(\n {} as DatePickerContextValues\n)\n\nexport default DatePickerContext\n"],"mappings":"AAKA,OAAOA,KAAK,MAAM,OAAO;AAmCzB,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,aAAa,CAC3C,CAAC,CACH,CAAC;AAED,eAAeD,iBAAiB"}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Web DatePicker Component
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { DatePickerInputDates } from './hooks/useDates';
|
|
7
|
+
type DatePickerFooterEvent = React.MouseEvent<HTMLButtonElement> & DatePickerInputDates & {
|
|
8
|
+
event: React.MouseEvent<HTMLButtonElement>;
|
|
9
|
+
};
|
|
10
|
+
export type DatePickerFooterProps = Omit<React.HTMLProps<HTMLElement>, 'onSubmit' | 'onCancel' | 'onReset'> & {
|
|
11
|
+
isRange: boolean;
|
|
12
|
+
onSubmit?: (event: DatePickerFooterEvent) => void;
|
|
13
|
+
onCancel?: (event: DatePickerFooterEvent) => void;
|
|
14
|
+
onReset?: (event: DatePickerFooterEvent) => void;
|
|
15
|
+
submitButtonText?: string;
|
|
16
|
+
cancelButtonText?: string;
|
|
17
|
+
resetButtonText?: string;
|
|
18
|
+
};
|
|
19
|
+
declare function DatePickerFooter({ isRange, submitButtonText, cancelButtonText, resetButtonText, onSubmit, onCancel, onReset, }: DatePickerFooterProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export default DatePickerFooter;
|
|
@@ -1,126 +1,100 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
1
3
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
4
|
var _span, _span2, _span3;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
6
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7
|
+
import React, { useContext, useCallback } from 'react';
|
|
5
8
|
import Button from '../button/Button';
|
|
6
9
|
import DatePickerContext from './DatePickerContext';
|
|
7
|
-
import { isTrue } from '../../shared/component-helper';
|
|
8
10
|
import { convertStringToDate } from './DatePickerCalc';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
} = this.props;
|
|
57
|
-
if (onReset) {
|
|
58
|
-
onReset(args);
|
|
59
|
-
}
|
|
60
|
-
});
|
|
11
|
+
import { useTranslation } from '../../shared';
|
|
12
|
+
function DatePickerFooter(_ref) {
|
|
13
|
+
let {
|
|
14
|
+
isRange,
|
|
15
|
+
submitButtonText,
|
|
16
|
+
cancelButtonText,
|
|
17
|
+
resetButtonText,
|
|
18
|
+
onSubmit,
|
|
19
|
+
onCancel,
|
|
20
|
+
onReset
|
|
21
|
+
} = _ref;
|
|
22
|
+
const {
|
|
23
|
+
updateDates,
|
|
24
|
+
previousDates,
|
|
25
|
+
props: contextProps
|
|
26
|
+
} = useContext(DatePickerContext);
|
|
27
|
+
const {
|
|
28
|
+
show_reset_button,
|
|
29
|
+
show_cancel_button,
|
|
30
|
+
show_submit_button,
|
|
31
|
+
date_format
|
|
32
|
+
} = contextProps;
|
|
33
|
+
const {
|
|
34
|
+
submit_button_text: submit_button_text_translation,
|
|
35
|
+
cancel_button_text: cancel_button_text_translation,
|
|
36
|
+
reset_button_text: reset_button_text_translation
|
|
37
|
+
} = useTranslation().DatePicker;
|
|
38
|
+
const onSubmitHandler = useCallback(args => {
|
|
39
|
+
onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(args);
|
|
40
|
+
}, [onSubmit]);
|
|
41
|
+
const onCancelHandler = useCallback(args => {
|
|
42
|
+
if (args && args.event) {
|
|
43
|
+
args.event.persist();
|
|
44
|
+
}
|
|
45
|
+
const startDate = previousDates.startDate ? convertStringToDate(previousDates.startDate, {
|
|
46
|
+
date_format
|
|
47
|
+
}) : previousDates.date ? convertStringToDate(previousDates.date, {
|
|
48
|
+
date_format
|
|
49
|
+
}) : null;
|
|
50
|
+
const endDate = previousDates.endDate ? convertStringToDate(previousDates.endDate, {
|
|
51
|
+
date_format
|
|
52
|
+
}) : startDate;
|
|
53
|
+
updateDates({
|
|
54
|
+
startDate,
|
|
55
|
+
endDate
|
|
56
|
+
}, dates => {
|
|
57
|
+
onCancel === null || onCancel === void 0 ? void 0 : onCancel(_objectSpread(_objectSpread({}, args), dates));
|
|
61
58
|
});
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
resetButtonText,
|
|
67
|
-
submitButtonText,
|
|
68
|
-
cancelButtonText
|
|
69
|
-
} = this.props;
|
|
70
|
-
const {
|
|
71
|
-
show_reset_button,
|
|
72
|
-
show_cancel_button,
|
|
73
|
-
show_submit_button
|
|
74
|
-
} = this.context.props;
|
|
75
|
-
if (!isRange && !isTrue(show_submit_button) && !isTrue(show_cancel_button) && !isTrue(show_reset_button)) {
|
|
76
|
-
return React.createElement(React.Fragment, null);
|
|
59
|
+
}, [date_format, updateDates, previousDates, onCancel]);
|
|
60
|
+
const onResetHandler = useCallback(args => {
|
|
61
|
+
if (args && args.event) {
|
|
62
|
+
args.event.persist();
|
|
77
63
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
"data-testid": "submit"
|
|
89
|
-
}) || _span || (_span = React.createElement("span", null)), React.createElement("span", null, isTrue(show_reset_button) && React.createElement(Button, {
|
|
90
|
-
text: resetButtonText || reset_button_text_translation,
|
|
91
|
-
icon: "reset",
|
|
92
|
-
icon_position: "left",
|
|
93
|
-
variant: "tertiary",
|
|
94
|
-
onClick: this.onResetHandler,
|
|
95
|
-
"data-testid": "reset",
|
|
96
|
-
right: "0.5rem"
|
|
97
|
-
}) || _span2 || (_span2 = React.createElement("span", null)), (isRange || isTrue(show_cancel_button)) && React.createElement(Button, {
|
|
98
|
-
text: cancelButtonText || cancel_button_text_translation,
|
|
99
|
-
icon: "close",
|
|
100
|
-
icon_position: "left",
|
|
101
|
-
variant: "tertiary",
|
|
102
|
-
onClick: this.onCancelHandler,
|
|
103
|
-
"data-testid": "cancel",
|
|
104
|
-
right: "0.5rem"
|
|
105
|
-
}) || _span3 || (_span3 = React.createElement("span", null))));
|
|
64
|
+
updateDates({
|
|
65
|
+
date: undefined,
|
|
66
|
+
startDate: undefined,
|
|
67
|
+
endDate: undefined
|
|
68
|
+
}, dates => {
|
|
69
|
+
onReset === null || onReset === void 0 ? void 0 : onReset(_objectSpread(_objectSpread({}, args), dates));
|
|
70
|
+
});
|
|
71
|
+
}, [updateDates, onReset]);
|
|
72
|
+
if (!isRange && !show_submit_button && !show_cancel_button && !show_reset_button) {
|
|
73
|
+
return React.createElement(React.Fragment, null);
|
|
106
74
|
}
|
|
75
|
+
return React.createElement("div", {
|
|
76
|
+
className: "dnb-date-picker__footer"
|
|
77
|
+
}, (isRange || show_submit_button) && React.createElement(Button, {
|
|
78
|
+
text: submitButtonText || submit_button_text_translation,
|
|
79
|
+
onClick: onSubmitHandler,
|
|
80
|
+
"data-testid": "submit"
|
|
81
|
+
}) || _span || (_span = React.createElement("span", null)), React.createElement("span", null, show_reset_button && React.createElement(Button, {
|
|
82
|
+
text: resetButtonText || reset_button_text_translation,
|
|
83
|
+
icon: "reset",
|
|
84
|
+
icon_position: "left",
|
|
85
|
+
variant: "tertiary",
|
|
86
|
+
onClick: onResetHandler,
|
|
87
|
+
"data-testid": "reset",
|
|
88
|
+
right: "0.5rem"
|
|
89
|
+
}) || _span2 || (_span2 = React.createElement("span", null)), (isRange || show_cancel_button) && React.createElement(Button, {
|
|
90
|
+
text: cancelButtonText || cancel_button_text_translation,
|
|
91
|
+
icon: "close",
|
|
92
|
+
icon_position: "left",
|
|
93
|
+
variant: "tertiary",
|
|
94
|
+
onClick: onCancelHandler,
|
|
95
|
+
"data-testid": "cancel",
|
|
96
|
+
right: "0.5rem"
|
|
97
|
+
}) || _span3 || (_span3 = React.createElement("span", null))));
|
|
107
98
|
}
|
|
108
|
-
|
|
109
|
-
_defineProperty(DatePickerFooter, "defaultProps", {
|
|
110
|
-
onSubmit: null,
|
|
111
|
-
onCancel: null,
|
|
112
|
-
onReset: null,
|
|
113
|
-
submitButtonText: null,
|
|
114
|
-
cancelButtonText: null,
|
|
115
|
-
resetButtonText: null
|
|
116
|
-
});
|
|
117
|
-
process.env.NODE_ENV !== "production" ? DatePickerFooter.propTypes = {
|
|
118
|
-
isRange: PropTypes.bool.isRequired,
|
|
119
|
-
onSubmit: PropTypes.func,
|
|
120
|
-
onCancel: PropTypes.func,
|
|
121
|
-
onReset: PropTypes.func,
|
|
122
|
-
submitButtonText: PropTypes.string,
|
|
123
|
-
cancelButtonText: PropTypes.string,
|
|
124
|
-
resetButtonText: PropTypes.string
|
|
125
|
-
} : void 0;
|
|
99
|
+
export default DatePickerFooter;
|
|
126
100
|
//# sourceMappingURL=DatePickerFooter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerFooter.js","names":["React","
|
|
1
|
+
{"version":3,"file":"DatePickerFooter.js","names":["React","useContext","useCallback","Button","DatePickerContext","convertStringToDate","useTranslation","DatePickerFooter","_ref","isRange","submitButtonText","cancelButtonText","resetButtonText","onSubmit","onCancel","onReset","updateDates","previousDates","props","contextProps","show_reset_button","show_cancel_button","show_submit_button","date_format","submit_button_text","submit_button_text_translation","cancel_button_text","cancel_button_text_translation","reset_button_text","reset_button_text_translation","DatePicker","onSubmitHandler","args","onCancelHandler","event","persist","startDate","date","endDate","dates","_objectSpread","onResetHandler","undefined","createElement","Fragment","className","text","onClick","_span","icon","icon_position","variant","right","_span2","_span3"],"sources":["../../../../src/components/date-picker/DatePickerFooter.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, { useContext, useCallback } from 'react'\nimport Button from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\nimport { convertStringToDate } from './DatePickerCalc'\nimport { useTranslation } from '../../shared'\nimport { DatePickerInputDates } from './hooks/useDates'\n\ntype DatePickerFooterEvent = React.MouseEvent<HTMLButtonElement> &\n DatePickerInputDates & {\n event: React.MouseEvent<HTMLButtonElement>\n }\n\nexport type DatePickerFooterProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSubmit' | 'onCancel' | 'onReset'\n> & {\n isRange: boolean\n onSubmit?: (event: DatePickerFooterEvent) => void\n onCancel?: (event: DatePickerFooterEvent) => void\n onReset?: (event: DatePickerFooterEvent) => void\n submitButtonText?: string\n cancelButtonText?: string\n resetButtonText?: string\n}\n\nfunction DatePickerFooter({\n isRange,\n submitButtonText,\n cancelButtonText,\n resetButtonText,\n onSubmit,\n onCancel,\n onReset,\n}: DatePickerFooterProps) {\n const {\n updateDates,\n previousDates,\n props: contextProps,\n } = useContext(DatePickerContext)\n\n const {\n show_reset_button,\n show_cancel_button,\n show_submit_button,\n date_format,\n } = contextProps\n\n const {\n submit_button_text: submit_button_text_translation,\n cancel_button_text: cancel_button_text_translation,\n reset_button_text: reset_button_text_translation,\n } = useTranslation().DatePicker\n\n const onSubmitHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n onSubmit?.(args)\n },\n [onSubmit]\n )\n\n const onCancelHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n const startDate = previousDates.startDate\n ? convertStringToDate(previousDates.startDate, {\n date_format,\n })\n : previousDates.date\n ? convertStringToDate(previousDates.date, {\n date_format,\n })\n : null\n\n const endDate = previousDates.endDate\n ? convertStringToDate(previousDates.endDate, {\n date_format,\n })\n : startDate\n\n updateDates(\n {\n startDate,\n endDate,\n },\n (dates) => {\n onCancel?.({ ...args, ...dates })\n }\n )\n },\n [date_format, updateDates, previousDates, onCancel]\n )\n\n const onResetHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n updateDates(\n {\n date: undefined,\n startDate: undefined,\n endDate: undefined,\n },\n (dates) => {\n onReset?.({ ...args, ...dates })\n }\n )\n },\n [updateDates, onReset]\n )\n\n if (\n !isRange &&\n !show_submit_button &&\n !show_cancel_button &&\n !show_reset_button\n ) {\n return <></>\n }\n\n return (\n <div className=\"dnb-date-picker__footer\">\n {((isRange || show_submit_button) && (\n <Button\n text={submitButtonText || submit_button_text_translation}\n onClick={onSubmitHandler}\n data-testid=\"submit\"\n />\n )) || <span />}\n\n <span>\n {(show_reset_button && (\n <Button\n text={resetButtonText || reset_button_text_translation}\n icon=\"reset\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onResetHandler}\n data-testid=\"reset\"\n right=\"0.5rem\"\n />\n )) || <span />}\n\n {((isRange || show_cancel_button) && (\n <Button\n text={cancelButtonText || cancel_button_text_translation}\n icon=\"close\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onCancelHandler}\n data-testid=\"cancel\"\n right=\"0.5rem\"\n />\n )) || <span />}\n </span>\n </div>\n )\n}\n\nexport default DatePickerFooter\n"],"mappings":"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"}
|