@beinformed/ui 1.63.2 → 1.63.4
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 +15 -0
- package/esm/constants/Settings.js +3 -14
- package/esm/constants/Settings.js.map +1 -1
- package/esm/exceptions/NotFoundException.js +1 -2
- package/esm/exceptions/NotFoundException.js.map +1 -1
- package/esm/hooks/useI18n.js +1 -6
- package/esm/hooks/useI18n.js.map +1 -1
- package/esm/hooks/useModal.js +3 -4
- package/esm/hooks/useModal.js.map +1 -1
- package/esm/hooks/useModelCatalog.js +10 -30
- package/esm/hooks/useModelCatalog.js.map +1 -1
- package/esm/hooks/useModularUI.js +4 -5
- package/esm/hooks/useModularUI.js.map +1 -1
- package/esm/hooks/useModularUIBasic.js +7 -8
- package/esm/hooks/useModularUIBasic.js.map +1 -1
- package/esm/i18n/Locale.js +2 -5
- package/esm/i18n/Locale.js.map +1 -1
- package/esm/i18n/Locales.js +2 -5
- package/esm/i18n/Locales.js.map +1 -1
- package/esm/i18n/Message.js +9 -10
- package/esm/i18n/Message.js.map +1 -1
- package/esm/i18n/withMessage.js +1 -6
- package/esm/i18n/withMessage.js.map +1 -1
- package/esm/models/actions/ActionCollection.js +3 -6
- package/esm/models/actions/ActionCollection.js.map +1 -1
- package/esm/models/actions/ActionModel.js +1 -4
- package/esm/models/actions/ActionModel.js.map +1 -1
- package/esm/models/application/ApplicationModel.js +2 -2
- package/esm/models/application/ApplicationModel.js.map +1 -1
- package/esm/models/attributes/AttributeCollection.js +4 -14
- package/esm/models/attributes/AttributeCollection.js.map +1 -1
- package/esm/models/attributes/AttributeDataHelper.js +1 -2
- package/esm/models/attributes/AttributeDataHelper.js.map +1 -1
- package/esm/models/attributes/AttributeSetModel.js +1 -5
- package/esm/models/attributes/AttributeSetModel.js.map +1 -1
- package/esm/models/attributes/CaptchaAttributeModel.js +2 -2
- package/esm/models/attributes/CaptchaAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeModel.js +1 -3
- package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionCollection.js +3 -9
- package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionModel.js +2 -8
- package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/esm/models/attributes/PasswordAttributeModel.js +2 -2
- package/esm/models/attributes/PasswordAttributeModel.js.map +1 -1
- package/esm/models/attributes/UploadAttributeModel.js +2 -2
- package/esm/models/attributes/UploadAttributeModel.js.map +1 -1
- package/esm/models/attributes/input-constraints/ConstraintCollection.js +1 -2
- package/esm/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
- package/esm/models/attributes/input-constraints/ConstraintModel.js +1 -2
- package/esm/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
- package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js +1 -4
- package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js +1 -6
- package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js +1 -4
- package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js +1 -2
- package/esm/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
- package/esm/models/attributes/layouthint-rules/DependentAttribute.js +2 -2
- package/esm/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
- package/esm/models/base/BaseCollection.js +1 -2
- package/esm/models/base/BaseCollection.js.map +1 -1
- package/esm/models/base/BaseModel.js +6 -9
- package/esm/models/base/BaseModel.js.map +1 -1
- package/esm/models/base/ResourceModel.js +1 -2
- package/esm/models/base/ResourceModel.js.map +1 -1
- package/esm/models/concepts/BusinessScenarioModel.js +2 -2
- package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
- package/esm/models/concepts/ConceptDetailModel.js +1 -2
- package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
- package/esm/models/concepts/ConceptLinkModel.js +1 -3
- package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
- package/esm/models/concepts/ConceptRelationCollection.js +1 -4
- package/esm/models/concepts/ConceptRelationCollection.js.map +1 -1
- package/esm/models/concepts/ConceptRelationModel.js +1 -3
- package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
- package/esm/models/concepts/SourceReferenceCollection.js +1 -4
- package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/esm/models/concepts/SourceReferenceModel.js +7 -3
- package/esm/models/concepts/SourceReferenceModel.js.flow +6 -0
- package/esm/models/concepts/SourceReferenceModel.js.map +1 -1
- package/esm/models/content/ContentLinkModel.js +1 -3
- package/esm/models/content/ContentLinkModel.js.map +1 -1
- package/esm/models/content/ContentTOCModel.js +2 -2
- package/esm/models/content/ContentTOCModel.js.map +1 -1
- package/esm/models/contentconfiguration/ContentConfigurationElements.js +1 -2
- package/esm/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
- package/esm/models/error/ErrorModel.js +1 -3
- package/esm/models/error/ErrorModel.js.map +1 -1
- package/esm/models/filters/FilterCollection.js +1 -4
- package/esm/models/filters/FilterCollection.js.map +1 -1
- package/esm/models/form/FormModel.js +3 -9
- package/esm/models/form/FormModel.js.map +1 -1
- package/esm/models/form/FormObjectModel.js +2 -4
- package/esm/models/form/FormObjectModel.js.map +1 -1
- package/esm/models/href/Href.js +3 -6
- package/esm/models/href/Href.js.map +1 -1
- package/esm/models/href/ListHref.js +1 -2
- package/esm/models/href/ListHref.js.map +1 -1
- package/esm/models/layouthint/LayoutHintCollection.js +3 -10
- package/esm/models/layouthint/LayoutHintCollection.js.map +1 -1
- package/esm/models/links/LinkCollection.js +6 -15
- package/esm/models/links/LinkCollection.js.map +1 -1
- package/esm/models/list/ListModel.js +2 -2
- package/esm/models/list/ListModel.js.map +1 -1
- package/esm/models/modelcatalog/ModelCategoryCollection.js +1 -2
- package/esm/models/modelcatalog/ModelCategoryCollection.js.map +1 -1
- package/esm/models/parameter/Parameter.js +2 -4
- package/esm/models/parameter/Parameter.js.map +1 -1
- package/esm/models/resolveModel.js +1 -2
- package/esm/models/resolveModel.js.map +1 -1
- package/esm/models/sorting/SortingModel.js +1 -2
- package/esm/models/sorting/SortingModel.js.map +1 -1
- package/esm/models/user/UserServicesModel.js +2 -2
- package/esm/models/user/UserServicesModel.js.map +1 -1
- package/esm/modularui/Authenticate.js +4 -6
- package/esm/modularui/Authenticate.js.flow +6 -6
- package/esm/modularui/Authenticate.js.map +1 -1
- package/esm/modularui/ModularUIRequest.js +1 -2
- package/esm/modularui/ModularUIRequest.js.map +1 -1
- package/esm/react/ErrorBoundary.js +2 -2
- package/esm/react/ErrorBoundary.js.map +1 -1
- package/esm/react/ErrorBoundaryFallback.js +13 -16
- package/esm/react/ErrorBoundaryFallback.js.map +1 -1
- package/esm/react/utils.js +1 -3
- package/esm/react/utils.js.map +1 -1
- package/esm/react-client/Init.js +20 -23
- package/esm/react-client/Init.js.map +1 -1
- package/esm/react-client/client.js +9 -13
- package/esm/react-client/client.js.map +1 -1
- package/esm/react-server/renderSSRComplete.js +9 -10
- package/esm/react-server/renderSSRComplete.js.map +1 -1
- package/esm/react-server/renderSSRMinimal.js +7 -8
- package/esm/react-server/renderSSRMinimal.js.map +1 -1
- package/esm/react-server/serverNoSSR.js +11 -12
- package/esm/react-server/serverNoSSR.js.map +1 -1
- package/esm/react-server/serverSSR.js +11 -12
- package/esm/react-server/serverSSR.js.map +1 -1
- package/esm/react-server/serverUtil.js +1 -3
- package/esm/react-server/serverUtil.js.map +1 -1
- package/esm/react-theme/ThemeProvider.js +7 -11
- package/esm/react-theme/ThemeProvider.js.map +1 -1
- package/esm/react-theme/createTheme.js +3 -10
- package/esm/react-theme/createTheme.js.map +1 -1
- package/esm/react-theme/utils/background.js +3 -4
- package/esm/react-theme/utils/background.js.map +1 -1
- package/esm/react-theme/utils/colors.js +7 -16
- package/esm/react-theme/utils/colors.js.map +1 -1
- package/esm/react-theme/utils/contrast.js +11 -19
- package/esm/react-theme/utils/contrast.js.map +1 -1
- package/esm/react-theme/utils/corners.js +10 -16
- package/esm/react-theme/utils/corners.js.map +1 -1
- package/esm/react-theme/utils/spacers.js +15 -38
- package/esm/react-theme/utils/spacers.js.map +1 -1
- package/esm/react-theme/utils/themeProps.js +7 -22
- package/esm/react-theme/utils/themeProps.js.map +1 -1
- package/esm/redux/_i18n/I18nReducer.js +5 -8
- package/esm/redux/_i18n/I18nReducer.js.map +1 -1
- package/esm/redux/_modularui/ModularUIActions.js +19 -23
- package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
- package/esm/redux/_modularui/ModularUIConnector.js +4 -5
- package/esm/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/esm/redux/_modularui/ModularUIReducer.js +14 -19
- package/esm/redux/_modularui/ModularUIReducer.js.map +1 -1
- package/esm/redux/_modularui/ModularUIUtils.js +1 -2
- package/esm/redux/_modularui/ModularUIUtils.js.map +1 -1
- package/esm/redux/_modularui/withModularUI.js +1 -2
- package/esm/redux/_modularui/withModularUI.js.map +1 -1
- package/esm/redux/_router/RouterReducer.js +1 -3
- package/esm/redux/_router/RouterReducer.js.map +1 -1
- package/esm/redux/actions/FormAttributeSet.js +34 -37
- package/esm/redux/actions/FormAttributeSet.js.map +1 -1
- package/esm/redux/actions/FormAutosubmit.js +1 -2
- package/esm/redux/actions/FormAutosubmit.js.map +1 -1
- package/esm/redux/actions/Preferences.js +8 -15
- package/esm/redux/actions/Preferences.js.map +1 -1
- package/esm/redux/connectors/CaseView.js +3 -6
- package/esm/redux/connectors/CaseView.js.map +1 -1
- package/esm/redux/connectors/ConceptDetail.js +4 -7
- package/esm/redux/connectors/ConceptDetail.js.map +1 -1
- package/esm/redux/connectors/ContentBrowser.js +3 -6
- package/esm/redux/connectors/ContentBrowser.js.map +1 -1
- package/esm/redux/connectors/ContentDetail.js +4 -7
- package/esm/redux/connectors/ContentDetail.js.map +1 -1
- package/esm/redux/connectors/ContentDetailSection.js +5 -8
- package/esm/redux/connectors/ContentDetailSection.js.map +1 -1
- package/esm/redux/connectors/Form.js +4 -5
- package/esm/redux/connectors/Form.js.map +1 -1
- package/esm/redux/connectors/FormAttributeSet.js +5 -8
- package/esm/redux/connectors/FormAttributeSet.js.map +1 -1
- package/esm/redux/connectors/ListDetail.js +3 -6
- package/esm/redux/connectors/ListDetail.js.map +1 -1
- package/esm/redux/connectors/ModelCatalog.js +3 -6
- package/esm/redux/connectors/ModelCatalog.js.map +1 -1
- package/esm/redux/connectors/PanelRenderer.js +5 -6
- package/esm/redux/connectors/PanelRenderer.js.map +1 -1
- package/esm/redux/connectors/QuickSearch.js +3 -6
- package/esm/redux/connectors/QuickSearch.js.map +1 -1
- package/esm/redux/connectors/Tab.js +3 -6
- package/esm/redux/connectors/Tab.js.map +1 -1
- package/esm/redux/reducers/AuthReducer.js +1 -3
- package/esm/redux/reducers/AuthReducer.js.map +1 -1
- package/esm/redux/reducers/ErrorReducer.js +1 -3
- package/esm/redux/reducers/ErrorReducer.js.map +1 -1
- package/esm/redux/reducers/ModalsReducer.js +1 -3
- package/esm/redux/reducers/ModalsReducer.js.map +1 -1
- package/esm/redux/reducers/ModelCatalogReducer.js +1 -3
- package/esm/redux/reducers/ModelCatalogReducer.js.map +1 -1
- package/esm/redux/reducers/NotificationReducer.js +1 -3
- package/esm/redux/reducers/NotificationReducer.js.map +1 -1
- package/esm/redux/reducers/PreferencesReducer.js +1 -3
- package/esm/redux/reducers/PreferencesReducer.js.map +1 -1
- package/esm/redux/reducers/ProgressIndicatorReducer.js +1 -3
- package/esm/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
- package/esm/redux/store/beforeRenderHooks.js +1 -3
- package/esm/redux/store/beforeRenderHooks.js.map +1 -1
- package/esm/utils/browser/Cache.js +1 -5
- package/esm/utils/browser/Cache.js.map +1 -1
- package/esm/utils/datetime/DateTimeUtil.js +45 -91
- package/esm/utils/datetime/DateTimeUtil.js.map +1 -1
- package/esm/utils/fetch/xhr.js +1 -2
- package/esm/utils/fetch/xhr.js.map +1 -1
- package/esm/utils/helpers/repositoryResource.js +1 -3
- package/esm/utils/helpers/repositoryResource.js.map +1 -1
- package/esm/utils/helpers/sanitizeHtml.js +3 -4
- package/esm/utils/helpers/sanitizeHtml.js.map +1 -1
- package/esm/utils/number/DecimalFormat.js +1 -2
- package/esm/utils/number/DecimalFormat.js.map +1 -1
- package/esm/utils/number/formatValue.js +1 -4
- package/esm/utils/number/formatValue.js.map +1 -1
- package/esm/utils/number/parseNumbers.js +2 -6
- package/esm/utils/number/parseNumbers.js.map +1 -1
- package/lib/constants/Settings.js +3 -14
- package/lib/constants/Settings.js.map +1 -1
- package/lib/exceptions/NotFoundException.js +1 -2
- package/lib/exceptions/NotFoundException.js.map +1 -1
- package/lib/hooks/useI18n.js +1 -6
- package/lib/hooks/useI18n.js.map +1 -1
- package/lib/hooks/useModal.js +3 -4
- package/lib/hooks/useModal.js.map +1 -1
- package/lib/hooks/useModelCatalog.js +10 -30
- package/lib/hooks/useModelCatalog.js.map +1 -1
- package/lib/hooks/useModularUI.js +4 -5
- package/lib/hooks/useModularUI.js.map +1 -1
- package/lib/hooks/useModularUIBasic.js +7 -8
- package/lib/hooks/useModularUIBasic.js.map +1 -1
- package/lib/i18n/Locale.js +2 -5
- package/lib/i18n/Locale.js.map +1 -1
- package/lib/i18n/Locales.js +2 -5
- package/lib/i18n/Locales.js.map +1 -1
- package/lib/i18n/Message.js +9 -10
- package/lib/i18n/Message.js.map +1 -1
- package/lib/i18n/withMessage.js +1 -6
- package/lib/i18n/withMessage.js.map +1 -1
- package/lib/models/actions/ActionCollection.js +3 -6
- package/lib/models/actions/ActionCollection.js.map +1 -1
- package/lib/models/actions/ActionModel.js +1 -4
- package/lib/models/actions/ActionModel.js.map +1 -1
- package/lib/models/application/ApplicationModel.js +2 -2
- package/lib/models/application/ApplicationModel.js.map +1 -1
- package/lib/models/attributes/AttributeCollection.js +4 -14
- package/lib/models/attributes/AttributeCollection.js.map +1 -1
- package/lib/models/attributes/AttributeDataHelper.js +1 -2
- package/lib/models/attributes/AttributeDataHelper.js.map +1 -1
- package/lib/models/attributes/AttributeSetModel.js +1 -5
- package/lib/models/attributes/AttributeSetModel.js.map +1 -1
- package/lib/models/attributes/CaptchaAttributeModel.js +2 -2
- package/lib/models/attributes/CaptchaAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeModel.js +1 -3
- package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js +3 -9
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionModel.js +2 -8
- package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/lib/models/attributes/PasswordAttributeModel.js +2 -2
- package/lib/models/attributes/PasswordAttributeModel.js.map +1 -1
- package/lib/models/attributes/UploadAttributeModel.js +2 -2
- package/lib/models/attributes/UploadAttributeModel.js.map +1 -1
- package/lib/models/attributes/input-constraints/ConstraintCollection.js +1 -2
- package/lib/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
- package/lib/models/attributes/input-constraints/ConstraintModel.js +1 -2
- package/lib/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
- package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js +1 -4
- package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js +1 -6
- package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js +1 -4
- package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js +1 -2
- package/lib/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
- package/lib/models/attributes/layouthint-rules/DependentAttribute.js +2 -2
- package/lib/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
- package/lib/models/base/BaseCollection.js +1 -2
- package/lib/models/base/BaseCollection.js.map +1 -1
- package/lib/models/base/BaseModel.js +6 -9
- package/lib/models/base/BaseModel.js.map +1 -1
- package/lib/models/base/ResourceModel.js +1 -2
- package/lib/models/base/ResourceModel.js.map +1 -1
- package/lib/models/concepts/BusinessScenarioModel.js +2 -2
- package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
- package/lib/models/concepts/ConceptDetailModel.js +1 -2
- package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
- package/lib/models/concepts/ConceptLinkModel.js +1 -3
- package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
- package/lib/models/concepts/ConceptRelationCollection.js +1 -4
- package/lib/models/concepts/ConceptRelationCollection.js.map +1 -1
- package/lib/models/concepts/ConceptRelationModel.js +1 -3
- package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
- package/lib/models/concepts/SourceReferenceCollection.js +1 -4
- package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/lib/models/concepts/SourceReferenceModel.js +7 -3
- package/lib/models/concepts/SourceReferenceModel.js.map +1 -1
- package/lib/models/content/ContentLinkModel.js +1 -3
- package/lib/models/content/ContentLinkModel.js.map +1 -1
- package/lib/models/content/ContentTOCModel.js +2 -2
- package/lib/models/content/ContentTOCModel.js.map +1 -1
- package/lib/models/contentconfiguration/ContentConfigurationElements.js +1 -2
- package/lib/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
- package/lib/models/error/ErrorModel.js +1 -3
- package/lib/models/error/ErrorModel.js.map +1 -1
- package/lib/models/filters/FilterCollection.js +1 -4
- package/lib/models/filters/FilterCollection.js.map +1 -1
- package/lib/models/form/FormModel.js +3 -9
- package/lib/models/form/FormModel.js.map +1 -1
- package/lib/models/form/FormObjectModel.js +2 -4
- package/lib/models/form/FormObjectModel.js.map +1 -1
- package/lib/models/href/Href.js +3 -6
- package/lib/models/href/Href.js.map +1 -1
- package/lib/models/href/ListHref.js +1 -2
- package/lib/models/href/ListHref.js.map +1 -1
- package/lib/models/layouthint/LayoutHintCollection.js +3 -10
- package/lib/models/layouthint/LayoutHintCollection.js.map +1 -1
- package/lib/models/links/LinkCollection.js +6 -15
- package/lib/models/links/LinkCollection.js.map +1 -1
- package/lib/models/list/ListModel.js +2 -2
- package/lib/models/list/ListModel.js.map +1 -1
- package/lib/models/modelcatalog/ModelCategoryCollection.js +1 -2
- package/lib/models/modelcatalog/ModelCategoryCollection.js.map +1 -1
- package/lib/models/parameter/Parameter.js +2 -4
- package/lib/models/parameter/Parameter.js.map +1 -1
- package/lib/models/resolveModel.js +1 -2
- package/lib/models/resolveModel.js.map +1 -1
- package/lib/models/sorting/SortingModel.js +1 -2
- package/lib/models/sorting/SortingModel.js.map +1 -1
- package/lib/models/user/UserServicesModel.js +2 -2
- package/lib/models/user/UserServicesModel.js.map +1 -1
- package/lib/modularui/Authenticate.js +4 -6
- package/lib/modularui/Authenticate.js.map +1 -1
- package/lib/modularui/ModularUIRequest.js +1 -2
- package/lib/modularui/ModularUIRequest.js.map +1 -1
- package/lib/react/ErrorBoundary.js +2 -2
- package/lib/react/ErrorBoundary.js.map +1 -1
- package/lib/react/ErrorBoundaryFallback.js +13 -16
- package/lib/react/ErrorBoundaryFallback.js.map +1 -1
- package/lib/react/utils.js +1 -3
- package/lib/react/utils.js.map +1 -1
- package/lib/react-client/Init.js +20 -23
- package/lib/react-client/Init.js.map +1 -1
- package/lib/react-client/client.js +9 -13
- package/lib/react-client/client.js.map +1 -1
- package/lib/react-server/renderSSRComplete.js +9 -10
- package/lib/react-server/renderSSRComplete.js.map +1 -1
- package/lib/react-server/renderSSRMinimal.js +7 -8
- package/lib/react-server/renderSSRMinimal.js.map +1 -1
- package/lib/react-server/serverNoSSR.js +11 -12
- package/lib/react-server/serverNoSSR.js.map +1 -1
- package/lib/react-server/serverSSR.js +11 -12
- package/lib/react-server/serverSSR.js.map +1 -1
- package/lib/react-server/serverUtil.js +1 -3
- package/lib/react-server/serverUtil.js.map +1 -1
- package/lib/react-theme/ThemeProvider.js +7 -11
- package/lib/react-theme/ThemeProvider.js.map +1 -1
- package/lib/react-theme/createTheme.js +3 -10
- package/lib/react-theme/createTheme.js.map +1 -1
- package/lib/react-theme/utils/background.js +3 -4
- package/lib/react-theme/utils/background.js.map +1 -1
- package/lib/react-theme/utils/colors.js +7 -16
- package/lib/react-theme/utils/colors.js.map +1 -1
- package/lib/react-theme/utils/contrast.js +11 -19
- package/lib/react-theme/utils/contrast.js.map +1 -1
- package/lib/react-theme/utils/corners.js +10 -16
- package/lib/react-theme/utils/corners.js.map +1 -1
- package/lib/react-theme/utils/spacers.js +15 -38
- package/lib/react-theme/utils/spacers.js.map +1 -1
- package/lib/react-theme/utils/themeProps.js +7 -22
- package/lib/react-theme/utils/themeProps.js.map +1 -1
- package/lib/redux/_i18n/I18nReducer.js +5 -8
- package/lib/redux/_i18n/I18nReducer.js.map +1 -1
- package/lib/redux/_modularui/ModularUIActions.js +19 -23
- package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
- package/lib/redux/_modularui/ModularUIConnector.js +4 -5
- package/lib/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/lib/redux/_modularui/ModularUIReducer.js +14 -19
- package/lib/redux/_modularui/ModularUIReducer.js.map +1 -1
- package/lib/redux/_modularui/ModularUIUtils.js +1 -2
- package/lib/redux/_modularui/ModularUIUtils.js.map +1 -1
- package/lib/redux/_modularui/withModularUI.js +1 -2
- package/lib/redux/_modularui/withModularUI.js.map +1 -1
- package/lib/redux/_router/RouterReducer.js +1 -3
- package/lib/redux/_router/RouterReducer.js.map +1 -1
- package/lib/redux/actions/FormAttributeSet.js +34 -37
- package/lib/redux/actions/FormAttributeSet.js.map +1 -1
- package/lib/redux/actions/FormAutosubmit.js +1 -2
- package/lib/redux/actions/FormAutosubmit.js.map +1 -1
- package/lib/redux/actions/Preferences.js +8 -15
- package/lib/redux/actions/Preferences.js.map +1 -1
- package/lib/redux/connectors/CaseView.js +3 -6
- package/lib/redux/connectors/CaseView.js.map +1 -1
- package/lib/redux/connectors/ConceptDetail.js +4 -7
- package/lib/redux/connectors/ConceptDetail.js.map +1 -1
- package/lib/redux/connectors/ContentBrowser.js +3 -6
- package/lib/redux/connectors/ContentBrowser.js.map +1 -1
- package/lib/redux/connectors/ContentDetail.js +4 -7
- package/lib/redux/connectors/ContentDetail.js.map +1 -1
- package/lib/redux/connectors/ContentDetailSection.js +5 -8
- package/lib/redux/connectors/ContentDetailSection.js.map +1 -1
- package/lib/redux/connectors/Form.js +4 -5
- package/lib/redux/connectors/Form.js.map +1 -1
- package/lib/redux/connectors/FormAttributeSet.js +5 -8
- package/lib/redux/connectors/FormAttributeSet.js.map +1 -1
- package/lib/redux/connectors/ListDetail.js +3 -6
- package/lib/redux/connectors/ListDetail.js.map +1 -1
- package/lib/redux/connectors/ModelCatalog.js +3 -6
- package/lib/redux/connectors/ModelCatalog.js.map +1 -1
- package/lib/redux/connectors/PanelRenderer.js +5 -6
- package/lib/redux/connectors/PanelRenderer.js.map +1 -1
- package/lib/redux/connectors/QuickSearch.js +3 -6
- package/lib/redux/connectors/QuickSearch.js.map +1 -1
- package/lib/redux/connectors/Tab.js +3 -6
- package/lib/redux/connectors/Tab.js.map +1 -1
- package/lib/redux/reducers/AuthReducer.js +1 -3
- package/lib/redux/reducers/AuthReducer.js.map +1 -1
- package/lib/redux/reducers/ErrorReducer.js +1 -3
- package/lib/redux/reducers/ErrorReducer.js.map +1 -1
- package/lib/redux/reducers/ModalsReducer.js +1 -3
- package/lib/redux/reducers/ModalsReducer.js.map +1 -1
- package/lib/redux/reducers/ModelCatalogReducer.js +1 -3
- package/lib/redux/reducers/ModelCatalogReducer.js.map +1 -1
- package/lib/redux/reducers/NotificationReducer.js +1 -3
- package/lib/redux/reducers/NotificationReducer.js.map +1 -1
- package/lib/redux/reducers/PreferencesReducer.js +1 -3
- package/lib/redux/reducers/PreferencesReducer.js.map +1 -1
- package/lib/redux/reducers/ProgressIndicatorReducer.js +1 -3
- package/lib/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
- package/lib/redux/store/beforeRenderHooks.js +1 -3
- package/lib/redux/store/beforeRenderHooks.js.map +1 -1
- package/lib/utils/browser/Cache.js +1 -5
- package/lib/utils/browser/Cache.js.map +1 -1
- package/lib/utils/datetime/DateTimeUtil.js +45 -91
- package/lib/utils/datetime/DateTimeUtil.js.map +1 -1
- package/lib/utils/fetch/xhr.js +1 -2
- package/lib/utils/fetch/xhr.js.map +1 -1
- package/lib/utils/helpers/repositoryResource.js +1 -3
- package/lib/utils/helpers/repositoryResource.js.map +1 -1
- package/lib/utils/helpers/sanitizeHtml.js +3 -4
- package/lib/utils/helpers/sanitizeHtml.js.map +1 -1
- package/lib/utils/number/DecimalFormat.js +1 -2
- package/lib/utils/number/DecimalFormat.js.map +1 -1
- package/lib/utils/number/formatValue.js +1 -4
- package/lib/utils/number/formatValue.js.map +1 -1
- package/lib/utils/number/parseNumbers.js +2 -6
- package/lib/utils/number/parseNumbers.js.map +1 -1
- package/package.json +23 -23
- package/src/models/concepts/SourceReferenceModel.js +6 -0
- package/src/modularui/Authenticate.js +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cache.js","names":["RESOURCE_CACHE_PREFIX","Cache","constructor","_defineProperty2","default","sessionStorage","_cache","createResourceKey","requestArgs","resourceKey","url","params","locale","getItem","key","cache","cacheItem","JSON","parse","error","hasItem","addItem","value","stringValue","_stringify","setItem","removeItem","clear","pattern","_context","_filter","_keys","call","k","RegExp","test","forEach","loadOtherBrowserTabs","callback","window","addEventListener","e","sendSessionStorage","receiveSessionStorage","length","localStorage","Date","now","toString","_context2","newData","newValue","_entries","
|
|
1
|
+
{"version":3,"file":"Cache.js","names":["RESOURCE_CACHE_PREFIX","Cache","constructor","_defineProperty2","default","sessionStorage","_cache","createResourceKey","requestArgs","resourceKey","url","params","locale","getItem","key","cache","cacheItem","JSON","parse","error","hasItem","addItem","value","stringValue","_stringify","setItem","removeItem","clear","pattern","_context","_filter","_keys","call","k","RegExp","test","forEach","loadOtherBrowserTabs","callback","window","addEventListener","e","sendSessionStorage","receiveSessionStorage","length","localStorage","Date","now","toString","_context2","newData","newValue","_entries","_startsWith","_default","exports"],"sources":["../../../src/utils/browser/Cache.js"],"sourcesContent":["// @flow\nimport type { RequestOptions } from \"../fetch/types\";\n\nconst RESOURCE_CACHE_PREFIX = \"res:\";\n\n/**\n * Manage the browser cache\n */\nclass Cache {\n _cache: Storage;\n\n /**\n */\n constructor() {\n if (typeof sessionStorage !== \"undefined\") {\n this._cache = sessionStorage;\n }\n }\n\n /**\n * Create a key that can be used to cache resources, needs the request arguments and uses url, params and header of the request args\n * to create a key that is unique for time versions and locale\n */\n createResourceKey(requestArgs: RequestOptions): string {\n let resourceKey = requestArgs.url;\n\n if (requestArgs.params) {\n resourceKey += `|${requestArgs.params}`;\n }\n\n if (requestArgs.locale) {\n resourceKey += `|${requestArgs.locale}`;\n }\n\n return `${RESOURCE_CACHE_PREFIX}${resourceKey}`;\n }\n\n /**\n * Get a cached item by it's key\n */\n getItem(key: string): any {\n const cache = this._cache;\n\n if (!cache) {\n return null;\n }\n\n const cacheItem = cache.getItem(key);\n\n if (!cacheItem) {\n return null;\n }\n\n try {\n return JSON.parse(cacheItem);\n } catch (error) {\n return this._cache.getItem(key);\n }\n }\n\n /**\n * Check if the item with key exists in the browser cache\n */\n hasItem(key: string): boolean {\n return this.getItem(key) !== null;\n }\n\n /**\n * Add an item to the cache\n */\n addItem(key: string, value: string | Object) {\n const stringValue =\n typeof value === \"string\" ? value : JSON.stringify(value);\n\n this._cache.setItem(key, stringValue);\n }\n\n /**\n */\n setItem(key: string, value: string | Object) {\n this.addItem(key, value);\n }\n\n /**\n */\n removeItem(key: string) {\n this._cache.removeItem(key);\n }\n\n /**\n * Clear complete cache storage\n */\n clear(pattern: ?string) {\n if (!this._cache) {\n return;\n }\n\n if (pattern) {\n Object.keys(this._cache)\n .filter((k) => (pattern ? new RegExp(pattern).test(k) : true))\n .forEach((k) => this._cache.removeItem(k));\n } else {\n this._cache.clear();\n }\n }\n\n // Session storage is not available between different tabs in the same window,\n // this load method copies sessionStorage from other tabs into this tab using localStorage\n // see https://blog.guya.net/2015/06/12/sharing-sessionstorage-between-tabs-for-secure-multi-tab-authentication/\n /**\n */\n loadOtherBrowserTabs(callback: Function) {\n window.addEventListener(\"storage\", (e) => {\n this.sendSessionStorage(e);\n this.receiveSessionStorage(e, callback);\n });\n\n if (this._cache.length === 0) {\n // trigger retrieval of sessionstorage on other tabs\n localStorage.setItem(\"getSessionStorage\", Date.now().toString());\n }\n }\n\n /**\n */\n sendSessionStorage(e: StorageEvent) {\n if (e.key === \"getSessionStorage\") {\n localStorage.setItem(\"sessionStorage\", JSON.stringify(this._cache));\n localStorage.removeItem(\"sessionStorage\");\n }\n }\n\n /**\n */\n receiveSessionStorage(e: StorageEvent, callback: Function): any {\n if (e.key === \"sessionStorage\" && !this.getItem(\"sessionStorageCopied\")) {\n // receive sessionstorage from other tabs\n const newData = e.newValue ? JSON.parse(e.newValue) : {};\n Object.entries(newData)\n .filter(\n ([key]) =>\n !this.hasItem(key) && !key.startsWith(RESOURCE_CACHE_PREFIX),\n )\n .forEach(([key, value]) => {\n this.addItem(key, value);\n });\n\n this.setItem(\"sessionStorageCopied\", Date.now().toString());\n\n return callback();\n }\n\n return null;\n }\n}\n\nexport default (new Cache(): Cache);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -36,8 +36,7 @@ var _Cookies = require("../browser/Cookies");
|
|
|
36
36
|
* @hideconstructor
|
|
37
37
|
*/
|
|
38
38
|
class BaseDateTimeUtil {
|
|
39
|
-
constructor(isoFormat) {
|
|
40
|
-
let doOffsets = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
39
|
+
constructor(isoFormat, doOffsets = false) {
|
|
41
40
|
(0, _defineProperty2.default)(this, "_isoFormat", void 0);
|
|
42
41
|
(0, _defineProperty2.default)(this, "_doOffsets", void 0);
|
|
43
42
|
(0, _defineProperty2.default)(this, "_timeZone", typeof Intl === "undefined" ? "Etc/UTC" : Intl.DateTimeFormat().resolvedOptions().timeZone || "Etc/UTC");
|
|
@@ -115,8 +114,7 @@ class BaseDateTimeUtil {
|
|
|
115
114
|
|
|
116
115
|
/**
|
|
117
116
|
*/
|
|
118
|
-
toDate(date) {
|
|
119
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
117
|
+
toDate(date, inputFormat = this.getIsoFormat()) {
|
|
120
118
|
if (date instanceof Date) {
|
|
121
119
|
return date;
|
|
122
120
|
}
|
|
@@ -133,8 +131,7 @@ class BaseDateTimeUtil {
|
|
|
133
131
|
|
|
134
132
|
/**
|
|
135
133
|
*/
|
|
136
|
-
toFormat(date, targetFormat) {
|
|
137
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
134
|
+
toFormat(date, targetFormat, inputFormat = this.getIsoFormat()) {
|
|
138
135
|
const {
|
|
139
136
|
weekStartsOn
|
|
140
137
|
} = this.getOptions();
|
|
@@ -151,8 +148,7 @@ class BaseDateTimeUtil {
|
|
|
151
148
|
|
|
152
149
|
/**
|
|
153
150
|
*/
|
|
154
|
-
toISO(date) {
|
|
155
|
-
let sourceFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
151
|
+
toISO(date, sourceFormat = this.getIsoFormat()) {
|
|
156
152
|
return this.toFormat(date, this.getIsoFormat(), sourceFormat);
|
|
157
153
|
}
|
|
158
154
|
|
|
@@ -181,8 +177,7 @@ class BaseDateTimeUtil {
|
|
|
181
177
|
|
|
182
178
|
/**
|
|
183
179
|
*/
|
|
184
|
-
isValid(date) {
|
|
185
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
180
|
+
isValid(date, inputFormat = this.getIsoFormat()) {
|
|
186
181
|
if (!date) {
|
|
187
182
|
return false;
|
|
188
183
|
}
|
|
@@ -192,50 +187,43 @@ class BaseDateTimeUtil {
|
|
|
192
187
|
|
|
193
188
|
/**
|
|
194
189
|
*/
|
|
195
|
-
isAfter(inputDate, afterISODate) {
|
|
196
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
190
|
+
isAfter(inputDate, afterISODate, inputFormat = this.getIsoFormat()) {
|
|
197
191
|
return afterISODate != null && (0, _isAfter.isAfter)(this.toDate(inputDate, inputFormat), this.toDate(afterISODate));
|
|
198
192
|
}
|
|
199
193
|
|
|
200
194
|
/**
|
|
201
195
|
*/
|
|
202
|
-
isSameOrAfter(inputDate, afterISODate) {
|
|
203
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
196
|
+
isSameOrAfter(inputDate, afterISODate, inputFormat = this.getIsoFormat()) {
|
|
204
197
|
return afterISODate != null && (this.isAfter(inputDate, afterISODate, inputFormat) || this.isSame(inputDate, afterISODate, inputFormat));
|
|
205
198
|
}
|
|
206
199
|
|
|
207
200
|
/**
|
|
208
201
|
*/
|
|
209
|
-
isBefore(inputDate, beforeISODate) {
|
|
210
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
202
|
+
isBefore(inputDate, beforeISODate, inputFormat = this.getIsoFormat()) {
|
|
211
203
|
return beforeISODate != null && (0, _isBefore.isBefore)(this.toDate(inputDate, inputFormat), this.toDate(beforeISODate));
|
|
212
204
|
}
|
|
213
205
|
|
|
214
206
|
/**
|
|
215
207
|
*/
|
|
216
|
-
isSameOrBefore(inputDate, beforeISODate) {
|
|
217
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
208
|
+
isSameOrBefore(inputDate, beforeISODate, inputFormat = this.getIsoFormat()) {
|
|
218
209
|
return beforeISODate != null && (this.isBefore(inputDate, beforeISODate, inputFormat) || this.isSame(inputDate, beforeISODate, inputFormat));
|
|
219
210
|
}
|
|
220
211
|
|
|
221
212
|
/**
|
|
222
213
|
*/
|
|
223
|
-
isSame(inputDate, compareDate) {
|
|
224
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
214
|
+
isSame(inputDate, compareDate, inputFormat = this.getIsoFormat()) {
|
|
225
215
|
return compareDate != null && this.toDate(inputDate, inputFormat).getTime() === this.toDate(compareDate).getTime();
|
|
226
216
|
}
|
|
227
217
|
|
|
228
218
|
/**
|
|
229
219
|
*/
|
|
230
|
-
isSameDay(inputDate, compareDate) {
|
|
231
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
220
|
+
isSameDay(inputDate, compareDate, inputFormat = this.getIsoFormat()) {
|
|
232
221
|
return compareDate != null && (0, _isSameDay.isSameDay)(this.toDate(inputDate, inputFormat), this.toDate(compareDate, inputFormat));
|
|
233
222
|
}
|
|
234
223
|
|
|
235
224
|
/**
|
|
236
225
|
*/
|
|
237
|
-
isOther(inputDate, compareDate) {
|
|
238
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
226
|
+
isOther(inputDate, compareDate, inputFormat = this.getIsoFormat()) {
|
|
239
227
|
return !this.isSame(inputDate, compareDate, inputFormat);
|
|
240
228
|
}
|
|
241
229
|
|
|
@@ -252,8 +240,7 @@ class BaseDateTimeUtil {
|
|
|
252
240
|
* Checks if a given local date and time is ambiguous in the specified timezone.
|
|
253
241
|
* Ambiguity happens during the end of daylight saving time (DST) transitions.
|
|
254
242
|
*/
|
|
255
|
-
isAmbiguous(inputDate) {
|
|
256
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
243
|
+
isAmbiguous(inputDate, inputFormat = this.getIsoFormat()) {
|
|
257
244
|
if (inputDate == null || typeof Intl === "undefined") {
|
|
258
245
|
return false;
|
|
259
246
|
}
|
|
@@ -277,8 +264,7 @@ class BaseDateTimeUtil {
|
|
|
277
264
|
/**
|
|
278
265
|
* @private
|
|
279
266
|
*/
|
|
280
|
-
_calculate(date, calculationFn, property, value) {
|
|
281
|
-
let inputFormat = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.getIsoFormat();
|
|
267
|
+
_calculate(date, calculationFn, property, value, inputFormat = this.getIsoFormat()) {
|
|
282
268
|
const parsedDate = this.toDate(date, inputFormat);
|
|
283
269
|
return this.toISO(calculationFn(parsedDate, {
|
|
284
270
|
[property]: value
|
|
@@ -289,99 +275,85 @@ class BaseDateTimeUtil {
|
|
|
289
275
|
|
|
290
276
|
/**
|
|
291
277
|
*/
|
|
292
|
-
addSeconds(date, amount) {
|
|
293
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
278
|
+
addSeconds(date, amount, inputFormat = this.getIsoFormat()) {
|
|
294
279
|
return this._calculate(date, _add.add, "seconds", amount, inputFormat);
|
|
295
280
|
}
|
|
296
281
|
|
|
297
282
|
/**
|
|
298
283
|
*/
|
|
299
|
-
addMinutes(date, amount) {
|
|
300
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
284
|
+
addMinutes(date, amount, inputFormat = this.getIsoFormat()) {
|
|
301
285
|
return this._calculate(date, _add.add, "minutes", amount, inputFormat);
|
|
302
286
|
}
|
|
303
287
|
|
|
304
288
|
/**
|
|
305
289
|
*/
|
|
306
|
-
addHours(date, amount) {
|
|
307
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
290
|
+
addHours(date, amount, inputFormat = this.getIsoFormat()) {
|
|
308
291
|
return this._calculate(date, _add.add, "hours", amount, inputFormat);
|
|
309
292
|
}
|
|
310
293
|
|
|
311
294
|
/**
|
|
312
295
|
*/
|
|
313
|
-
addDays(date, amount) {
|
|
314
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
296
|
+
addDays(date, amount, inputFormat = this.getIsoFormat()) {
|
|
315
297
|
return this._calculate(date, _add.add, "days", amount, inputFormat);
|
|
316
298
|
}
|
|
317
299
|
|
|
318
300
|
/**
|
|
319
301
|
*/
|
|
320
|
-
addWeeks(date, amount) {
|
|
321
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
302
|
+
addWeeks(date, amount, inputFormat = this.getIsoFormat()) {
|
|
322
303
|
return this._calculate(date, _add.add, "weeks", amount, inputFormat);
|
|
323
304
|
}
|
|
324
305
|
|
|
325
306
|
/**
|
|
326
307
|
*/
|
|
327
|
-
addMonths(date, amount) {
|
|
328
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
308
|
+
addMonths(date, amount, inputFormat = this.getIsoFormat()) {
|
|
329
309
|
return this._calculate(date, _add.add, "months", amount, inputFormat);
|
|
330
310
|
}
|
|
331
311
|
|
|
332
312
|
/**
|
|
333
313
|
*/
|
|
334
|
-
addYears(date, amount) {
|
|
335
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
314
|
+
addYears(date, amount, inputFormat = this.getIsoFormat()) {
|
|
336
315
|
return this._calculate(date, _add.add, "years", amount, inputFormat);
|
|
337
316
|
}
|
|
338
317
|
|
|
339
318
|
/**
|
|
340
319
|
*/
|
|
341
|
-
subtractSeconds(date, amount) {
|
|
342
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
320
|
+
subtractSeconds(date, amount, inputFormat = this.getIsoFormat()) {
|
|
343
321
|
return this._calculate(date, _sub.sub, "seconds", amount, inputFormat);
|
|
344
322
|
}
|
|
345
323
|
|
|
346
324
|
/**
|
|
347
325
|
*/
|
|
348
|
-
subtractMinutes(date, amount) {
|
|
349
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
326
|
+
subtractMinutes(date, amount, inputFormat = this.getIsoFormat()) {
|
|
350
327
|
return this._calculate(date, _sub.sub, "minutes", amount, inputFormat);
|
|
351
328
|
}
|
|
352
329
|
|
|
353
330
|
/**
|
|
354
331
|
*/
|
|
355
|
-
subtractHours(date, amount) {
|
|
356
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
332
|
+
subtractHours(date, amount, inputFormat = this.getIsoFormat()) {
|
|
357
333
|
return this._calculate(date, _sub.sub, "hours", amount, inputFormat);
|
|
358
334
|
}
|
|
359
335
|
|
|
360
336
|
/**
|
|
361
337
|
*/
|
|
362
|
-
subtractDays(date, amount) {
|
|
363
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
338
|
+
subtractDays(date, amount, inputFormat = this.getIsoFormat()) {
|
|
364
339
|
return this._calculate(date, _sub.sub, "days", amount, inputFormat);
|
|
365
340
|
}
|
|
366
341
|
|
|
367
342
|
/**
|
|
368
343
|
*/
|
|
369
|
-
subtractWeeks(date, amount) {
|
|
370
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
344
|
+
subtractWeeks(date, amount, inputFormat = this.getIsoFormat()) {
|
|
371
345
|
return this._calculate(date, _sub.sub, "weeks", amount, inputFormat);
|
|
372
346
|
}
|
|
373
347
|
|
|
374
348
|
/**
|
|
375
349
|
*/
|
|
376
|
-
subtractMonths(date, amount) {
|
|
377
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
350
|
+
subtractMonths(date, amount, inputFormat = this.getIsoFormat()) {
|
|
378
351
|
return this._calculate(date, _sub.sub, "months", amount, inputFormat);
|
|
379
352
|
}
|
|
380
353
|
|
|
381
354
|
/**
|
|
382
355
|
*/
|
|
383
|
-
subtractYears(date, amount) {
|
|
384
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
356
|
+
subtractYears(date, amount, inputFormat = this.getIsoFormat()) {
|
|
385
357
|
return this._calculate(date, _sub.sub, "years", amount, inputFormat);
|
|
386
358
|
}
|
|
387
359
|
|
|
@@ -390,9 +362,7 @@ class BaseDateTimeUtil {
|
|
|
390
362
|
/**
|
|
391
363
|
* @private
|
|
392
364
|
*/
|
|
393
|
-
_get(date, method) {
|
|
394
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
395
|
-
let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
365
|
+
_get(date, method, inputFormat = this.getIsoFormat(), options = {}) {
|
|
396
366
|
const parsedDate = this.toDate(date, inputFormat);
|
|
397
367
|
return this.toISO(method(parsedDate, {
|
|
398
368
|
in: this.getDateFnsContext(),
|
|
@@ -402,22 +372,19 @@ class BaseDateTimeUtil {
|
|
|
402
372
|
|
|
403
373
|
/**
|
|
404
374
|
*/
|
|
405
|
-
startOfMonth(date) {
|
|
406
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
375
|
+
startOfMonth(date, inputFormat = this.getIsoFormat()) {
|
|
407
376
|
return this._get(date, _startOfMonth.startOfMonth, inputFormat);
|
|
408
377
|
}
|
|
409
378
|
|
|
410
379
|
/**
|
|
411
380
|
*/
|
|
412
|
-
endOfMonth(date) {
|
|
413
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
381
|
+
endOfMonth(date, inputFormat = this.getIsoFormat()) {
|
|
414
382
|
return this._get(date, _endOfMonth.endOfMonth, inputFormat);
|
|
415
383
|
}
|
|
416
384
|
|
|
417
385
|
/**
|
|
418
386
|
*/
|
|
419
|
-
startOfWeek(date) {
|
|
420
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
387
|
+
startOfWeek(date, inputFormat = this.getIsoFormat()) {
|
|
421
388
|
const {
|
|
422
389
|
weekStartsOn
|
|
423
390
|
} = this.getOptions();
|
|
@@ -428,8 +395,7 @@ class BaseDateTimeUtil {
|
|
|
428
395
|
|
|
429
396
|
/**
|
|
430
397
|
*/
|
|
431
|
-
getHours(date) {
|
|
432
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
398
|
+
getHours(date, inputFormat = this.getIsoFormat()) {
|
|
433
399
|
const parsedDate = this.toDate(date, inputFormat);
|
|
434
400
|
return (0, _getHours.getHours)(parsedDate, {
|
|
435
401
|
in: this.getDateFnsContext()
|
|
@@ -438,8 +404,7 @@ class BaseDateTimeUtil {
|
|
|
438
404
|
|
|
439
405
|
/**
|
|
440
406
|
*/
|
|
441
|
-
getMinutes(date) {
|
|
442
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
407
|
+
getMinutes(date, inputFormat = this.getIsoFormat()) {
|
|
443
408
|
const parsedDate = this.toDate(date, inputFormat);
|
|
444
409
|
return (0, _getMinutes.getMinutes)(parsedDate, {
|
|
445
410
|
in: this.getDateFnsContext()
|
|
@@ -448,8 +413,7 @@ class BaseDateTimeUtil {
|
|
|
448
413
|
|
|
449
414
|
/**
|
|
450
415
|
*/
|
|
451
|
-
getWeek(date) {
|
|
452
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
416
|
+
getWeek(date, inputFormat = this.getIsoFormat()) {
|
|
453
417
|
const {
|
|
454
418
|
weekStartsOn,
|
|
455
419
|
firstWeekContainsDate
|
|
@@ -467,8 +431,7 @@ class BaseDateTimeUtil {
|
|
|
467
431
|
/**
|
|
468
432
|
* @private
|
|
469
433
|
*/
|
|
470
|
-
_set(date, property, value) {
|
|
471
|
-
let inputFormat = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : this.getIsoFormat();
|
|
434
|
+
_set(date, property, value, inputFormat = this.getIsoFormat()) {
|
|
472
435
|
const parsedDate = this.toDate(date, inputFormat);
|
|
473
436
|
return this.toISO((0, _set.set)(parsedDate, {
|
|
474
437
|
[property]: value
|
|
@@ -481,57 +444,49 @@ class BaseDateTimeUtil {
|
|
|
481
444
|
|
|
482
445
|
/**
|
|
483
446
|
*/
|
|
484
|
-
setYear(date, year) {
|
|
485
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
447
|
+
setYear(date, year, inputFormat = this.getIsoFormat()) {
|
|
486
448
|
return this._set(date, "year", year, inputFormat);
|
|
487
449
|
}
|
|
488
450
|
|
|
489
451
|
/**
|
|
490
452
|
*/
|
|
491
|
-
setMonth(date, month) {
|
|
492
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
453
|
+
setMonth(date, month, inputFormat = this.getIsoFormat()) {
|
|
493
454
|
return this._set(date, "month", month, inputFormat);
|
|
494
455
|
}
|
|
495
456
|
|
|
496
457
|
/**
|
|
497
458
|
*/
|
|
498
|
-
setDay(date, day) {
|
|
499
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
459
|
+
setDay(date, day, inputFormat = this.getIsoFormat()) {
|
|
500
460
|
return this._set(date, "date", day, inputFormat);
|
|
501
461
|
}
|
|
502
462
|
|
|
503
463
|
/**
|
|
504
464
|
*/
|
|
505
|
-
setHour(date, hour) {
|
|
506
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
465
|
+
setHour(date, hour, inputFormat = this.getIsoFormat()) {
|
|
507
466
|
return this._set(date, "hours", hour, inputFormat);
|
|
508
467
|
}
|
|
509
468
|
|
|
510
469
|
/**
|
|
511
470
|
*/
|
|
512
|
-
setMinute(date, minute) {
|
|
513
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
471
|
+
setMinute(date, minute, inputFormat = this.getIsoFormat()) {
|
|
514
472
|
return this._set(date, "minutes", minute, inputFormat);
|
|
515
473
|
}
|
|
516
474
|
|
|
517
475
|
/**
|
|
518
476
|
*/
|
|
519
|
-
setSecond(date, second) {
|
|
520
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
477
|
+
setSecond(date, second, inputFormat = this.getIsoFormat()) {
|
|
521
478
|
return this._set(date, "seconds", second, inputFormat);
|
|
522
479
|
}
|
|
523
480
|
|
|
524
481
|
/**
|
|
525
482
|
*/
|
|
526
|
-
setMilliseconds(date, millisecond) {
|
|
527
|
-
let inputFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.getIsoFormat();
|
|
483
|
+
setMilliseconds(date, millisecond, inputFormat = this.getIsoFormat()) {
|
|
528
484
|
return this._set(date, "milliseconds", millisecond, inputFormat);
|
|
529
485
|
}
|
|
530
486
|
|
|
531
487
|
/**
|
|
532
488
|
*/
|
|
533
|
-
setTime(date, hours, minutes, seconds, milliseconds) {
|
|
534
|
-
let inputFormat = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : this.getIsoFormat();
|
|
489
|
+
setTime(date, hours, minutes, seconds, milliseconds, inputFormat = this.getIsoFormat()) {
|
|
535
490
|
const parsedDate = this.toDate(date, inputFormat);
|
|
536
491
|
return this.toISO((0, _set.set)(parsedDate, {
|
|
537
492
|
hours,
|
|
@@ -570,8 +525,7 @@ class BaseDateTimeUtil {
|
|
|
570
525
|
|
|
571
526
|
/**
|
|
572
527
|
*/
|
|
573
|
-
getOffset(date) {
|
|
574
|
-
let inputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.getIsoFormat();
|
|
528
|
+
getOffset(date, inputFormat = this.getIsoFormat()) {
|
|
575
529
|
const parsedDate = this.toDate(date, inputFormat);
|
|
576
530
|
if ((0, _isValid.isValid)(parsedDate)) {
|
|
577
531
|
const dateOffset = this.toFormat(parsedDate, _constants.DATETIME_OFFSET_FORMAT);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeUtil.js","names":["_format","require","_isAfter","_isBefore","_isSameDay","_isValid","_parse","_add","_sub","_set","_startOfMonth","_endOfMonth","_startOfWeek","_getHours","_getMinutes","_getDay","_getWeek","_locale","_tz","_timezoneSoft","_interopRequireDefault","_constants","_Cookies","BaseDateTimeUtil","constructor","isoFormat","doOffsets","arguments","length","undefined","_defineProperty2","default","Intl","DateTimeFormat","resolvedOptions","timeZone","_isoFormat","_doOffsets","isIncludeTimeOffsetInDateTimes","getOptions","weekStartsOn","getSetting","DEFAULT_WEEK_STARTS_ON","firstWeekContainsDate","DEFAULT_FIRST_WEEK_CONTAINS_DATE","getIsoFormat","DATETIME_OFFSET_FORMAT","convertFormat","javaFormat","_context","javaToUTS35Map","ZZZ","ZZ","Z","uts35Format","sortedKeys","_sort","_keys","call","a","b","javaToken","uts35Token","regex","RegExp","replace","getLocale","defaultLocale","getEnabledLocales","locale","getCookie","nl","enGB","toDate","date","inputFormat","Date","parse","in","getDateFnsContext","toFormat","targetFormat","parsedDate","isValid","format","toISO","sourceFormat","now","hasFormat","formattedValue","isOutsideRange","isBefore","isAfter","toUpperCase","inputDate","afterISODate","isSameOrAfter","isSame","beforeISODate","isSameOrBefore","compareDate","getTime","isSameDay","isOther","isWeekend","SATURDAY_NUMBER","SUNDAY_NUMBER","weekDay","getDay","isAmbiguous","dateTime","t","_map","x","newDate","add","minutes","time","indexOf","_calculate","calculationFn","property","value","addSeconds","amount","addMinutes","addHours","addDays","addWeeks","addMonths","addYears","subtractSeconds","sub","subtractMinutes","subtractHours","subtractDays","subtractWeeks","subtractMonths","subtractYears","_get","method","options","startOfMonth","endOfMonth","startOfWeek","getHours","getMinutes","getWeek","set","setYear","year","setMonth","month","setDay","day","setHour","hour","setMinute","minute","setSecond","second","setMilliseconds","millisecond","setTime","hours","seconds","milliseconds","getTimeZone","_timeZone","setTimeZone","IS_GRAALJS","tz","getOffset","dateOffset","offsets","getTimezoneOffsets","daylight","standard","createOffsetObject","info","_context2","_context3","sign","offset","absOffset","Math","abs","_trunc","round","offsetString","_padStart","String","label","name","abbr","timezone","soft","DateUtil","exports","ISO_DATE_FORMAT","DateTimeUtil","ISO_DATETIME_FORMAT","TimeUtil","ISO_TIME_FORMAT","TimestampUtil","ISO_TIMESTAMP_FORMAT"],"sources":["../../../src/utils/datetime/DateTimeUtil.js"],"sourcesContent":["// @flow\nimport { format } from \"date-fns/format\";\nimport { isAfter } from \"date-fns/isAfter\";\nimport { isBefore } from \"date-fns/isBefore\";\nimport { isSameDay } from \"date-fns/isSameDay\";\nimport { isValid } from \"date-fns/isValid\";\nimport { parse } from \"date-fns/parse\";\nimport { add } from \"date-fns/add\";\nimport { sub } from \"date-fns/sub\";\nimport { set } from \"date-fns/set\";\nimport { startOfMonth } from \"date-fns/startOfMonth\";\nimport { endOfMonth } from \"date-fns/endOfMonth\";\nimport { startOfWeek } from \"date-fns/startOfWeek\";\nimport { getHours } from \"date-fns/getHours\";\nimport { getMinutes } from \"date-fns/getMinutes\";\nimport { getDay } from \"date-fns/getDay\";\nimport { getWeek } from \"date-fns/getWeek\";\n\nimport { enGB, nl } from \"date-fns/locale\";\nimport { tz } from \"@date-fns/tz\";\n\nimport soft from \"timezone-soft\";\n\nimport {\n DATETIME_OFFSET_FORMAT,\n DEFAULT_FIRST_WEEK_CONTAINS_DATE,\n DEFAULT_WEEK_STARTS_ON,\n getEnabledLocales,\n getSetting,\n IS_GRAALJS,\n isIncludeTimeOffsetInDateTimes,\n ISO_DATE_FORMAT,\n ISO_DATETIME_FORMAT,\n ISO_TIME_FORMAT,\n ISO_TIMESTAMP_FORMAT,\n} from \"../../constants\";\n\nimport { getCookie } from \"../browser/Cookies\";\n\ntype OffsetInfoInput = {\n abbr: string,\n offset: number,\n name: string,\n};\n\nexport type OffsetInfo = {\n abbr: string,\n label: string,\n value: string,\n};\n\n/**\n * @hideconstructor\n */\nclass BaseDateTimeUtil {\n _isoFormat: string;\n _doOffsets: boolean;\n\n _timeZone: string =\n typeof Intl === \"undefined\"\n ? \"Etc/UTC\"\n : Intl.DateTimeFormat().resolvedOptions().timeZone || \"Etc/UTC\";\n\n constructor(isoFormat: string, doOffsets: boolean = false) {\n this._isoFormat = isoFormat;\n this._doOffsets = doOffsets;\n }\n\n /**\n * Indicates if offsets and timezones are relevant\n */\n get doOffsets(): boolean {\n return this._doOffsets ? isIncludeTimeOffsetInDateTimes() : false;\n }\n\n /**\n * Returns the options defined in settings\n */\n getOptions(): {\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6,\n firstWeekContainsDate: 1 | 2 | 3 | 4 | 5 | 6 | 7,\n } {\n // indicates on what day the week starts\n const weekStartsOn = getSetting(\n \"CALENDAR_WEEK_STARTS_ON\",\n DEFAULT_WEEK_STARTS_ON,\n );\n\n // indicates which date indicates the first week of the year\n const firstWeekContainsDate = getSetting(\n \"CALENDAR_FIRST_WEEK_CONTAINS_DATE\",\n DEFAULT_FIRST_WEEK_CONTAINS_DATE,\n );\n\n return { weekStartsOn, firstWeekContainsDate };\n }\n\n /**\n */\n getIsoFormat(): string {\n if (this.doOffsets) {\n return this._isoFormat + DATETIME_OFFSET_FORMAT;\n }\n return this._isoFormat;\n }\n\n /**\n */\n convertFormat(javaFormat: string): string {\n if (!javaFormat) {\n return this.getIsoFormat();\n }\n\n const javaToUTS35Map = {\n ZZZ: \"xxx\",\n ZZ: \"xx\",\n Z: \"x\",\n };\n\n // Replace Java pattern tokens with UTS #35 tokens\n let uts35Format = javaFormat;\n\n // Sort keys by length (descending) to handle multi-character tokens first\n const sortedKeys = Object.keys(javaToUTS35Map).sort(\n (a, b) => b.length - a.length,\n );\n\n for (const javaToken of sortedKeys) {\n const uts35Token = javaToUTS35Map[javaToken];\n const regex = new RegExp(javaToken, \"g\"); // Match all occurrences\n uts35Format = uts35Format.replace(regex, uts35Token);\n }\n\n return uts35Format;\n }\n\n /**\n */\n getLocale(): typeof nl | typeof enGB {\n const defaultLocale = getEnabledLocales()[0];\n const locale = getCookie(\"locale\") ?? defaultLocale ?? \"en\";\n\n if (locale === \"nl\") {\n return nl;\n }\n\n return enGB;\n }\n\n /**\n */\n toDate(date: string | Date, inputFormat: string = this.getIsoFormat()): Date {\n if (date instanceof Date) {\n return date;\n }\n\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n\n return parse(date, inputFormat, new Date(), {\n in: this.getDateFnsContext(),\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n /**\n */\n toFormat(\n date: string | Date,\n targetFormat: string,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const { weekStartsOn } = this.getOptions();\n\n const parsedDate = this.toDate(date, inputFormat);\n\n if (isValid(parsedDate)) {\n return format(parsedDate, targetFormat, {\n in: this.getDateFnsContext(),\n weekStartsOn,\n locale: this.getLocale(),\n });\n }\n\n return \"Invalid Date\";\n }\n\n /**\n */\n toISO(\n date: string | Date,\n sourceFormat: string = this.getIsoFormat(),\n ): string {\n return this.toFormat(date, this.getIsoFormat(), sourceFormat);\n }\n\n /**\n */\n now(): string {\n return this.toISO(new Date());\n }\n\n //////////// VALIDATION\n\n /**\n */\n hasFormat(date: string, sourceFormat: string): boolean {\n const parsedDate = this.toDate(date, sourceFormat);\n\n const formattedValue = this.toFormat(parsedDate, sourceFormat);\n if (formattedValue === \"Invalid Date\") {\n return false;\n }\n\n const isOutsideRange =\n isBefore(parsedDate, new Date(1000, 1, 1)) ||\n isAfter(parsedDate, new Date(9999, 11, 31));\n if (isOutsideRange) {\n return false;\n }\n\n return (\n formattedValue.replace(/0/gu, \"\").toUpperCase() ===\n date.replace(/0/gu, \"\").toUpperCase()\n );\n }\n\n /**\n */\n isValid(\n date: string | Date | null | void,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n if (!date) {\n return false;\n }\n\n const parsedDate = this.toDate(date, inputFormat);\n return isValid(parsedDate);\n }\n\n /**\n */\n isAfter(\n inputDate: string | Date,\n afterISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n afterISODate != null &&\n isAfter(this.toDate(inputDate, inputFormat), this.toDate(afterISODate))\n );\n }\n\n /**\n */\n isSameOrAfter(\n inputDate: string | Date,\n afterISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n afterISODate != null &&\n (this.isAfter(inputDate, afterISODate, inputFormat) ||\n this.isSame(inputDate, afterISODate, inputFormat))\n );\n }\n\n /**\n */\n isBefore(\n inputDate: string | Date,\n beforeISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n beforeISODate != null &&\n isBefore(this.toDate(inputDate, inputFormat), this.toDate(beforeISODate))\n );\n }\n\n /**\n */\n isSameOrBefore(\n inputDate: string | Date,\n beforeISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n beforeISODate != null &&\n (this.isBefore(inputDate, beforeISODate, inputFormat) ||\n this.isSame(inputDate, beforeISODate, inputFormat))\n );\n }\n\n /**\n */\n isSame(\n inputDate: string | Date,\n compareDate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n compareDate != null &&\n this.toDate(inputDate, inputFormat).getTime() ===\n this.toDate(compareDate).getTime()\n );\n }\n\n /**\n */\n isSameDay(\n inputDate: string | Date,\n compareDate: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n compareDate != null &&\n isSameDay(\n this.toDate(inputDate, inputFormat),\n this.toDate(compareDate, inputFormat),\n )\n );\n }\n\n /**\n */\n isOther(\n inputDate: string | Date,\n compareDate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return !this.isSame(inputDate, compareDate, inputFormat);\n }\n\n /**\n */\n isWeekend(inputDate: string | Date): boolean {\n const SATURDAY_NUMBER = 6;\n const SUNDAY_NUMBER = 0;\n const weekDay = getDay(this.toDate(inputDate));\n\n return weekDay === SATURDAY_NUMBER || weekDay === SUNDAY_NUMBER;\n }\n\n /**\n * Checks if a given local date and time is ambiguous in the specified timezone.\n * Ambiguity happens during the end of daylight saving time (DST) transitions.\n */\n isAmbiguous(\n inputDate: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n if (inputDate == null || typeof Intl === \"undefined\") {\n return false;\n }\n\n const dateTime = this.toDate(inputDate, inputFormat);\n if (!isValid(dateTime)) {\n return false;\n }\n\n const t = [60, -60, 30, -30];\n const a = t.map((x) => {\n const newDate = add(dateTime, { minutes: x });\n return format(newDate, \"HH:mm\");\n });\n const time = format(dateTime, \"HH:mm\");\n return a.indexOf(time) > -1;\n }\n\n //////////// CALCULATIONS\n\n /**\n * @private\n */\n _calculate(\n date: string | Date,\n calculationFn: Function,\n property: string,\n value: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n calculationFn(\n parsedDate,\n { [property]: value },\n {\n in: this.getDateFnsContext(),\n },\n ),\n );\n }\n\n /**\n */\n addSeconds(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"seconds\", amount, inputFormat);\n }\n\n /**\n */\n addMinutes(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"minutes\", amount, inputFormat);\n }\n\n /**\n */\n addHours(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"hours\", amount, inputFormat);\n }\n\n /**\n */\n addDays(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"days\", amount, inputFormat);\n }\n\n /**\n */\n addWeeks(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"weeks\", amount, inputFormat);\n }\n\n /**\n */\n addMonths(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"months\", amount, inputFormat);\n }\n\n /**\n */\n addYears(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"years\", amount, inputFormat);\n }\n\n /**\n */\n subtractSeconds(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"seconds\", amount, inputFormat);\n }\n\n /**\n */\n subtractMinutes(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"minutes\", amount, inputFormat);\n }\n\n /**\n */\n subtractHours(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"hours\", amount, inputFormat);\n }\n\n /**\n */\n subtractDays(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"days\", amount, inputFormat);\n }\n\n /**\n */\n subtractWeeks(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"weeks\", amount, inputFormat);\n }\n\n /**\n */\n subtractMonths(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"months\", amount, inputFormat);\n }\n\n /**\n */\n subtractYears(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"years\", amount, inputFormat);\n }\n\n //////////// GETTERS\n\n /**\n * @private\n */\n _get(\n date: string | Date,\n method: Function,\n inputFormat: string = this.getIsoFormat(),\n options: Object = {},\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n method(parsedDate, {\n in: this.getDateFnsContext(),\n ...options,\n }),\n );\n }\n\n /**\n */\n startOfMonth(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._get(date, startOfMonth, inputFormat);\n }\n\n /**\n */\n endOfMonth(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._get(date, endOfMonth, inputFormat);\n }\n\n /**\n */\n startOfWeek(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const { weekStartsOn } = this.getOptions();\n return this._get(date, startOfWeek, inputFormat, {\n weekStartsOn,\n });\n }\n\n /**\n */\n getHours(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): number {\n const parsedDate = this.toDate(date, inputFormat);\n return getHours(parsedDate, { in: this.getDateFnsContext() });\n }\n\n /**\n */\n getMinutes(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): number {\n const parsedDate = this.toDate(date, inputFormat);\n return getMinutes(parsedDate, { in: this.getDateFnsContext() });\n }\n\n /**\n */\n getWeek(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): number {\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n const parsedDate = this.toDate(date, inputFormat);\n return getWeek(parsedDate, {\n in: this.getDateFnsContext(),\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n //////////// SETTERS\n\n /**\n * @private\n */\n _set(\n date: string | Date,\n property: string,\n value: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n set(\n parsedDate,\n { [property]: value },\n // {\n // in: this.getDateFnsContext(),\n // },\n ),\n );\n }\n\n /**\n */\n setYear(\n date: string | Date,\n year: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"year\", year, inputFormat);\n }\n\n /**\n */\n setMonth(\n date: string | Date,\n month: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"month\", month, inputFormat);\n }\n\n /**\n */\n setDay(\n date: string | Date,\n day: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"date\", day, inputFormat);\n }\n\n /**\n */\n setHour(\n date: string | Date,\n hour: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"hours\", hour, inputFormat);\n }\n\n /**\n */\n setMinute(\n date: string | Date,\n minute: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"minutes\", minute, inputFormat);\n }\n\n /**\n */\n setSecond(\n date: string | Date,\n second: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"seconds\", second, inputFormat);\n }\n\n /**\n */\n setMilliseconds(\n date: string | Date,\n millisecond: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"milliseconds\", millisecond, inputFormat);\n }\n\n /**\n */\n setTime(\n date: string,\n hours: number,\n minutes: number,\n seconds: number,\n milliseconds: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n set(\n parsedDate,\n { hours, minutes, seconds, milliseconds },\n {\n in: this.getDateFnsContext(),\n },\n ),\n );\n }\n\n //////////// Timezone related\n\n /**\n */\n getTimeZone(): string {\n return this._timeZone;\n }\n\n /**\n */\n setTimeZone(timeZone: string) {\n this._timeZone = timeZone;\n }\n\n /**\n */\n getDateFnsContext(): null | Function {\n if (this.doOffsets && !IS_GRAALJS) {\n return tz(this.getTimeZone());\n }\n return undefined;\n }\n\n //////////// Offsets\n\n /**\n */\n getOffset(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): OffsetInfo | null {\n const parsedDate = this.toDate(date, inputFormat);\n if (isValid(parsedDate)) {\n const dateOffset = this.toFormat(parsedDate, DATETIME_OFFSET_FORMAT);\n const offsets = this.getTimezoneOffsets();\n if (\n typeof offsets.daylight !== \"undefined\" &&\n offsets.daylight.value === dateOffset\n ) {\n return offsets.daylight;\n } else if (\n typeof offsets.standard !== \"undefined\" &&\n offsets.standard.value === dateOffset\n ) {\n return offsets.standard;\n }\n }\n return null;\n }\n\n /**\n */\n getTimezoneOffsets(): {\n standard?: OffsetInfo,\n daylight?: OffsetInfo,\n } {\n const createOffsetObject = (info: OffsetInfoInput): OffsetInfo => {\n const sign = info.offset < 0 ? \"-\" : \"+\";\n const absOffset = Math.abs(info.offset);\n const hours = Math.trunc(absOffset);\n const minutes = Math.round((absOffset % 1) * 60);\n\n const offsetString = `${sign}${String(hours + (minutes === 60 ? 1 : 0)).padStart(2, \"0\")}:${String(minutes % 60).padStart(2, \"0\")}`;\n\n return {\n label: info.name,\n abbr: info.abbr,\n value: offsetString,\n };\n };\n\n const timezone = soft(this.getTimeZone());\n\n if (timezone.length === 0) {\n return {\n standard: {\n label: \"Etc/UTC\",\n abbr: \"Etc/UTC\",\n value: \"+00:00\",\n },\n };\n }\n\n const { daylight, standard } = timezone[0];\n\n if (daylight) {\n return {\n daylight: createOffsetObject(daylight),\n standard: createOffsetObject(standard),\n };\n }\n\n return { standard: createOffsetObject(standard) };\n }\n}\n\n/**\n * DateUtil\n */\nconst DateUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_DATE_FORMAT);\n\n/**\n * DateTimeUtil\n */\nconst DateTimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_DATETIME_FORMAT,\n true,\n);\n\n/**\n * TimeUtil\n */\nconst TimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_TIME_FORMAT);\n\n/**\n * TimestampUtil\n */\nconst TimestampUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_TIMESTAMP_FORMAT,\n true,\n);\n\nexport { DateUtil, DateTimeUtil, TimeUtil, TimestampUtil };\n"],"mappings":";;;;;;;;;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,IAAA,GAAAN,OAAA;AACA,IAAAO,IAAA,GAAAP,OAAA;AACA,IAAAQ,IAAA,GAAAR,OAAA;AACA,IAAAS,aAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAV,OAAA;AACA,IAAAW,YAAA,GAAAX,OAAA;AACA,IAAAY,SAAA,GAAAZ,OAAA;AACA,IAAAa,WAAA,GAAAb,OAAA;AACA,IAAAc,OAAA,GAAAd,OAAA;AACA,IAAAe,QAAA,GAAAf,OAAA;AAEA,IAAAgB,OAAA,GAAAhB,OAAA;AACA,IAAAiB,GAAA,GAAAjB,OAAA;AAEA,IAAAkB,aAAA,GAAAC,sBAAA,CAAAnB,OAAA;AAEA,IAAAoB,UAAA,GAAApB,OAAA;AAcA,IAAAqB,QAAA,GAAArB,OAAA;AAcA;AACA;AACA;AACA,MAAMsB,gBAAgB,CAAC;EASrBC,WAAWA,CAACC,SAAiB,EAA8B;IAAA,IAA5BC,SAAkB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;IAAA,IAAAG,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,qBAJvD,OAAOC,IAAI,KAAK,WAAW,GACvB,SAAS,GACTA,IAAI,CAACC,cAAc,CAAC,CAAC,CAACC,eAAe,CAAC,CAAC,CAACC,QAAQ,IAAI,SAAS;IAGjE,IAAI,CAACC,UAAU,GAAGX,SAAS;IAC3B,IAAI,CAACY,UAAU,GAAGX,SAAS;EAC7B;;EAEA;AACF;AACA;EACE,IAAIA,SAASA,CAAA,EAAY;IACvB,OAAO,IAAI,CAACW,UAAU,GAAG,IAAAC,yCAA8B,EAAC,CAAC,GAAG,KAAK;EACnE;;EAEA;AACF;AACA;EACEC,UAAUA,CAAA,EAGR;IACA;IACA,MAAMC,YAAY,GAAG,IAAAC,qBAAU,EAC7B,yBAAyB,EACzBC,iCACF,CAAC;;IAED;IACA,MAAMC,qBAAqB,GAAG,IAAAF,qBAAU,EACtC,mCAAmC,EACnCG,2CACF,CAAC;IAED,OAAO;MAAEJ,YAAY;MAAEG;IAAsB,CAAC;EAChD;;EAEA;AACF;EACEE,YAAYA,CAAA,EAAW;IACrB,IAAI,IAAI,CAACnB,SAAS,EAAE;MAClB,OAAO,IAAI,CAACU,UAAU,GAAGU,iCAAsB;IACjD;IACA,OAAO,IAAI,CAACV,UAAU;EACxB;;EAEA;AACF;EACEW,aAAaA,CAACC,UAAkB,EAAU;IAAA,IAAAC,QAAA;IACxC,IAAI,CAACD,UAAU,EAAE;MACf,OAAO,IAAI,CAACH,YAAY,CAAC,CAAC;IAC5B;IAEA,MAAMK,cAAc,GAAG;MACrBC,GAAG,EAAE,KAAK;MACVC,EAAE,EAAE,IAAI;MACRC,CAAC,EAAE;IACL,CAAC;;IAED;IACA,IAAIC,WAAW,GAAGN,UAAU;;IAE5B;IACA,MAAMO,UAAU,GAAG,IAAAC,KAAA,CAAAzB,OAAA,EAAAkB,QAAA,OAAAQ,KAAA,CAAA1B,OAAA,EAAYmB,cAAc,CAAC,EAAAQ,IAAA,CAAAT,QAAA,EAC5C,CAACU,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAChC,MAAM,GAAG+B,CAAC,CAAC/B,MACzB,CAAC;IAED,KAAK,MAAMiC,SAAS,IAAIN,UAAU,EAAE;MAClC,MAAMO,UAAU,GAAGZ,cAAc,CAACW,SAAS,CAAC;MAC5C,MAAME,KAAK,GAAG,IAAIC,MAAM,CAACH,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;MAC1CP,WAAW,GAAGA,WAAW,CAACW,OAAO,CAACF,KAAK,EAAED,UAAU,CAAC;IACtD;IAEA,OAAOR,WAAW;EACpB;;EAEA;AACF;EACEY,SAASA,CAAA,EAA4B;IACnC,MAAMC,aAAa,GAAG,IAAAC,4BAAiB,EAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAMC,MAAM,GAAG,IAAAC,kBAAS,EAAC,QAAQ,CAAC,IAAIH,aAAa,IAAI,IAAI;IAE3D,IAAIE,MAAM,KAAK,IAAI,EAAE;MACnB,OAAOE,UAAE;IACX;IAEA,OAAOC,YAAI;EACb;;EAEA;AACF;EACEC,MAAMA,CAACC,IAAmB,EAAmD;IAAA,IAAjDC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IACnE,IAAI6B,IAAI,YAAYE,IAAI,EAAE;MACxB,OAAOF,IAAI;IACb;IAEA,MAAM;MAAElC,YAAY;MAAEG;IAAsB,CAAC,GAAG,IAAI,CAACJ,UAAU,CAAC,CAAC;IAEjE,OAAO,IAAAsC,YAAK,EAACH,IAAI,EAAEC,WAAW,EAAE,IAAIC,IAAI,CAAC,CAAC,EAAE;MAC1CE,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC,CAAC;MAC5BvC,YAAY;MACZG;IACF,CAAC,CAAC;EACJ;;EAEA;AACF;EACEqC,QAAQA,CACNN,IAAmB,EACnBO,YAAoB,EAEZ;IAAA,IADRN,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAM;MAAEL;IAAa,CAAC,GAAG,IAAI,CAACD,UAAU,CAAC,CAAC;IAE1C,MAAM2C,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IAEjD,IAAI,IAAAQ,gBAAO,EAACD,UAAU,CAAC,EAAE;MACvB,OAAO,IAAAE,cAAM,EAACF,UAAU,EAAED,YAAY,EAAE;QACtCH,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC,CAAC;QAC5BvC,YAAY;QACZ6B,MAAM,EAAE,IAAI,CAACH,SAAS,CAAC;MACzB,CAAC,CAAC;IACJ;IAEA,OAAO,cAAc;EACvB;;EAEA;AACF;EACEmB,KAAKA,CACHX,IAAmB,EAEX;IAAA,IADRY,YAAoB,GAAA3D,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAE1C,OAAO,IAAI,CAACmC,QAAQ,CAACN,IAAI,EAAE,IAAI,CAAC7B,YAAY,CAAC,CAAC,EAAEyC,YAAY,CAAC;EAC/D;;EAEA;AACF;EACEC,GAAGA,CAAA,EAAW;IACZ,OAAO,IAAI,CAACF,KAAK,CAAC,IAAIT,IAAI,CAAC,CAAC,CAAC;EAC/B;;EAEA;;EAEA;AACF;EACEY,SAASA,CAACd,IAAY,EAAEY,YAAoB,EAAW;IACrD,MAAMJ,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEY,YAAY,CAAC;IAElD,MAAMG,cAAc,GAAG,IAAI,CAACT,QAAQ,CAACE,UAAU,EAAEI,YAAY,CAAC;IAC9D,IAAIG,cAAc,KAAK,cAAc,EAAE;MACrC,OAAO,KAAK;IACd;IAEA,MAAMC,cAAc,GAClB,IAAAC,kBAAQ,EAACT,UAAU,EAAE,IAAIN,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAC1C,IAAAgB,gBAAO,EAACV,UAAU,EAAE,IAAIN,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC7C,IAAIc,cAAc,EAAE;MAClB,OAAO,KAAK;IACd;IAEA,OACED,cAAc,CAACxB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC4B,WAAW,CAAC,CAAC,KAC/CnB,IAAI,CAACT,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC4B,WAAW,CAAC,CAAC;EAEzC;;EAEA;AACF;EACEV,OAAOA,CACLT,IAAiC,EAExB;IAAA,IADTC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,IAAI,CAAC6B,IAAI,EAAE;MACT,OAAO,KAAK;IACd;IAEA,MAAMQ,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAAQ,gBAAO,EAACD,UAAU,CAAC;EAC5B;;EAEA;AACF;EACEU,OAAOA,CACLE,SAAwB,EACxBC,YAA4B,EAEnB;IAAA,IADTpB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OACEkD,YAAY,IAAI,IAAI,IACpB,IAAAH,gBAAO,EAAC,IAAI,CAACnB,MAAM,CAACqB,SAAS,EAAEnB,WAAW,CAAC,EAAE,IAAI,CAACF,MAAM,CAACsB,YAAY,CAAC,CAAC;EAE3E;;EAEA;AACF;EACEC,aAAaA,CACXF,SAAwB,EACxBC,YAA4B,EAEnB;IAAA,IADTpB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OACEkD,YAAY,IAAI,IAAI,KACnB,IAAI,CAACH,OAAO,CAACE,SAAS,EAAEC,YAAY,EAAEpB,WAAW,CAAC,IACjD,IAAI,CAACsB,MAAM,CAACH,SAAS,EAAEC,YAAY,EAAEpB,WAAW,CAAC,CAAC;EAExD;;EAEA;AACF;EACEgB,QAAQA,CACNG,SAAwB,EACxBI,aAA6B,EAEpB;IAAA,IADTvB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OACEqD,aAAa,IAAI,IAAI,IACrB,IAAAP,kBAAQ,EAAC,IAAI,CAAClB,MAAM,CAACqB,SAAS,EAAEnB,WAAW,CAAC,EAAE,IAAI,CAACF,MAAM,CAACyB,aAAa,CAAC,CAAC;EAE7E;;EAEA;AACF;EACEC,cAAcA,CACZL,SAAwB,EACxBI,aAA6B,EAEpB;IAAA,IADTvB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OACEqD,aAAa,IAAI,IAAI,KACpB,IAAI,CAACP,QAAQ,CAACG,SAAS,EAAEI,aAAa,EAAEvB,WAAW,CAAC,IACnD,IAAI,CAACsB,MAAM,CAACH,SAAS,EAAEI,aAAa,EAAEvB,WAAW,CAAC,CAAC;EAEzD;;EAEA;AACF;EACEsB,MAAMA,CACJH,SAAwB,EACxBM,WAA2B,EAElB;IAAA,IADTzB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OACEuD,WAAW,IAAI,IAAI,IACnB,IAAI,CAAC3B,MAAM,CAACqB,SAAS,EAAEnB,WAAW,CAAC,CAAC0B,OAAO,CAAC,CAAC,KAC3C,IAAI,CAAC5B,MAAM,CAAC2B,WAAW,CAAC,CAACC,OAAO,CAAC,CAAC;EAExC;;EAEA;AACF;EACEC,SAASA,CACPR,SAAwB,EACxBM,WAA0B,EAEjB;IAAA,IADTzB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OACEuD,WAAW,IAAI,IAAI,IACnB,IAAAE,oBAAS,EACP,IAAI,CAAC7B,MAAM,CAACqB,SAAS,EAAEnB,WAAW,CAAC,EACnC,IAAI,CAACF,MAAM,CAAC2B,WAAW,EAAEzB,WAAW,CACtC,CAAC;EAEL;;EAEA;AACF;EACE4B,OAAOA,CACLT,SAAwB,EACxBM,WAA2B,EAElB;IAAA,IADTzB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,CAAC,IAAI,CAACoD,MAAM,CAACH,SAAS,EAAEM,WAAW,EAAEzB,WAAW,CAAC;EAC1D;;EAEA;AACF;EACE6B,SAASA,CAACV,SAAwB,EAAW;IAC3C,MAAMW,eAAe,GAAG,CAAC;IACzB,MAAMC,aAAa,GAAG,CAAC;IACvB,MAAMC,OAAO,GAAG,IAAAC,cAAM,EAAC,IAAI,CAACnC,MAAM,CAACqB,SAAS,CAAC,CAAC;IAE9C,OAAOa,OAAO,KAAKF,eAAe,IAAIE,OAAO,KAAKD,aAAa;EACjE;;EAEA;AACF;AACA;AACA;EACEG,WAAWA,CACTf,SAAwB,EAEf;IAAA,IADTnB,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,IAAIiD,SAAS,IAAI,IAAI,IAAI,OAAO9D,IAAI,KAAK,WAAW,EAAE;MACpD,OAAO,KAAK;IACd;IAEA,MAAM8E,QAAQ,GAAG,IAAI,CAACrC,MAAM,CAACqB,SAAS,EAAEnB,WAAW,CAAC;IACpD,IAAI,CAAC,IAAAQ,gBAAO,EAAC2B,QAAQ,CAAC,EAAE;MACtB,OAAO,KAAK;IACd;IAEA,MAAMC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IAC5B,MAAMpD,CAAC,GAAG,IAAAqD,IAAA,CAAAjF,OAAA,EAAAgF,CAAC,EAAArD,IAAA,CAADqD,CAAC,EAAME,CAAC,IAAK;MACrB,MAAMC,OAAO,GAAG,IAAAC,QAAG,EAACL,QAAQ,EAAE;QAAEM,OAAO,EAAEH;MAAE,CAAC,CAAC;MAC7C,OAAO,IAAA7B,cAAM,EAAC8B,OAAO,EAAE,OAAO,CAAC;IACjC,CAAC,CAAC;IACF,MAAMG,IAAI,GAAG,IAAAjC,cAAM,EAAC0B,QAAQ,EAAE,OAAO,CAAC;IACtC,OAAOnD,CAAC,CAAC2D,OAAO,CAACD,IAAI,CAAC,GAAG,CAAC,CAAC;EAC7B;;EAEA;;EAEA;AACF;AACA;EACEE,UAAUA,CACR7C,IAAmB,EACnB8C,aAAuB,EACvBC,QAAgB,EAChBC,KAAa,EAEL;IAAA,IADR/C,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAMqC,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAI,CAACU,KAAK,CACfmC,aAAa,CACXtC,UAAU,EACV;MAAE,CAACuC,QAAQ,GAAGC;IAAM,CAAC,EACrB;MACE5C,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC;IAC7B,CACF,CACF,CAAC;EACH;;EAEA;AACF;EACE4C,UAAUA,CACRjD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAEyC,QAAG,EAAE,SAAS,EAAES,MAAM,EAAEjD,WAAW,CAAC;EACnE;;EAEA;AACF;EACEkD,UAAUA,CACRnD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAEyC,QAAG,EAAE,SAAS,EAAES,MAAM,EAAEjD,WAAW,CAAC;EACnE;;EAEA;AACF;EACEmD,QAAQA,CACNpD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAEyC,QAAG,EAAE,OAAO,EAAES,MAAM,EAAEjD,WAAW,CAAC;EACjE;;EAEA;AACF;EACEoD,OAAOA,CACLrD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAEyC,QAAG,EAAE,MAAM,EAAES,MAAM,EAAEjD,WAAW,CAAC;EAChE;;EAEA;AACF;EACEqD,QAAQA,CACNtD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAEyC,QAAG,EAAE,OAAO,EAAES,MAAM,EAAEjD,WAAW,CAAC;EACjE;;EAEA;AACF;EACEsD,SAASA,CACPvD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAEyC,QAAG,EAAE,QAAQ,EAAES,MAAM,EAAEjD,WAAW,CAAC;EAClE;;EAEA;AACF;EACEuD,QAAQA,CACNxD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAEyC,QAAG,EAAE,OAAO,EAAES,MAAM,EAAEjD,WAAW,CAAC;EACjE;;EAEA;AACF;EACEwD,eAAeA,CACbzD,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAE0D,QAAG,EAAE,SAAS,EAAER,MAAM,EAAEjD,WAAW,CAAC;EACnE;;EAEA;AACF;EACE0D,eAAeA,CACb3D,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAE0D,QAAG,EAAE,SAAS,EAAER,MAAM,EAAEjD,WAAW,CAAC;EACnE;;EAEA;AACF;EACE2D,aAAaA,CACX5D,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAE0D,QAAG,EAAE,OAAO,EAAER,MAAM,EAAEjD,WAAW,CAAC;EACjE;;EAEA;AACF;EACE4D,YAAYA,CACV7D,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAE0D,QAAG,EAAE,MAAM,EAAER,MAAM,EAAEjD,WAAW,CAAC;EAChE;;EAEA;AACF;EACE6D,aAAaA,CACX9D,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAE0D,QAAG,EAAE,OAAO,EAAER,MAAM,EAAEjD,WAAW,CAAC;EACjE;;EAEA;AACF;EACE8D,cAAcA,CACZ/D,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAE0D,QAAG,EAAE,QAAQ,EAAER,MAAM,EAAEjD,WAAW,CAAC;EAClE;;EAEA;AACF;EACE+D,aAAaA,CACXhE,IAAY,EACZkD,MAAc,EAEN;IAAA,IADRjD,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC0E,UAAU,CAAC7C,IAAI,EAAE0D,QAAG,EAAE,OAAO,EAAER,MAAM,EAAEjD,WAAW,CAAC;EACjE;;EAEA;;EAEA;AACF;AACA;EACEgE,IAAIA,CACFjE,IAAmB,EACnBkE,MAAgB,EAGR;IAAA,IAFRjE,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAAA,IACzCgG,OAAe,GAAAlH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAEpB,MAAMuD,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAI,CAACU,KAAK,CACfuD,MAAM,CAAC1D,UAAU,EAAE;MACjBJ,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC,CAAC;MAC5B,GAAG8D;IACL,CAAC,CACH,CAAC;EACH;;EAEA;AACF;EACEC,YAAYA,CACVpE,IAAmB,EAEX;IAAA,IADRC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC8F,IAAI,CAACjE,IAAI,EAAEoE,0BAAY,EAAEnE,WAAW,CAAC;EACnD;;EAEA;AACF;EACEoE,UAAUA,CACRrE,IAAmB,EAEX;IAAA,IADRC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC8F,IAAI,CAACjE,IAAI,EAAEqE,sBAAU,EAAEpE,WAAW,CAAC;EACjD;;EAEA;AACF;EACEqE,WAAWA,CACTtE,IAAmB,EAEX;IAAA,IADRC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAM;MAAEL;IAAa,CAAC,GAAG,IAAI,CAACD,UAAU,CAAC,CAAC;IAC1C,OAAO,IAAI,CAACoG,IAAI,CAACjE,IAAI,EAAEsE,wBAAW,EAAErE,WAAW,EAAE;MAC/CnC;IACF,CAAC,CAAC;EACJ;;EAEA;AACF;EACEyG,QAAQA,CACNvE,IAAmB,EAEX;IAAA,IADRC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAMqC,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAAsE,kBAAQ,EAAC/D,UAAU,EAAE;MAAEJ,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC;IAAE,CAAC,CAAC;EAC/D;;EAEA;AACF;EACEmE,UAAUA,CACRxE,IAAmB,EAEX;IAAA,IADRC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAMqC,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAAuE,sBAAU,EAAChE,UAAU,EAAE;MAAEJ,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC;IAAE,CAAC,CAAC;EACjE;;EAEA;AACF;EACEoE,OAAOA,CACLzE,IAAmB,EAEX;IAAA,IADRC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAM;MAAEL,YAAY;MAAEG;IAAsB,CAAC,GAAG,IAAI,CAACJ,UAAU,CAAC,CAAC;IACjE,MAAM2C,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAAwE,gBAAO,EAACjE,UAAU,EAAE;MACzBJ,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC,CAAC;MAC5BvC,YAAY;MACZG;IACF,CAAC,CAAC;EACJ;;EAEA;;EAEA;AACF;AACA;EACElC,IAAIA,CACFiE,IAAmB,EACnB+C,QAAgB,EAChBC,KAAa,EAEL;IAAA,IADR/C,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAMqC,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAI,CAACU,KAAK,CACf,IAAA+D,QAAG,EACDlE,UAAU,EACV;MAAE,CAACuC,QAAQ,GAAGC;IAAM;IACpB;IACA;IACA;IACF,CACF,CAAC;EACH;;EAEA;AACF;EACE2B,OAAOA,CACL3E,IAAmB,EACnB4E,IAAY,EAEJ;IAAA,IADR3E,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAACpC,IAAI,CAACiE,IAAI,EAAE,MAAM,EAAE4E,IAAI,EAAE3E,WAAW,CAAC;EACnD;;EAEA;AACF;EACE4E,QAAQA,CACN7E,IAAmB,EACnB8E,KAAa,EAEL;IAAA,IADR7E,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAACpC,IAAI,CAACiE,IAAI,EAAE,OAAO,EAAE8E,KAAK,EAAE7E,WAAW,CAAC;EACrD;;EAEA;AACF;EACE8E,MAAMA,CACJ/E,IAAmB,EACnBgF,GAAW,EAEH;IAAA,IADR/E,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAACpC,IAAI,CAACiE,IAAI,EAAE,MAAM,EAAEgF,GAAG,EAAE/E,WAAW,CAAC;EAClD;;EAEA;AACF;EACEgF,OAAOA,CACLjF,IAAmB,EACnBkF,IAAY,EAEJ;IAAA,IADRjF,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAACpC,IAAI,CAACiE,IAAI,EAAE,OAAO,EAAEkF,IAAI,EAAEjF,WAAW,CAAC;EACpD;;EAEA;AACF;EACEkF,SAASA,CACPnF,IAAmB,EACnBoF,MAAc,EAEN;IAAA,IADRnF,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAACpC,IAAI,CAACiE,IAAI,EAAE,SAAS,EAAEoF,MAAM,EAAEnF,WAAW,CAAC;EACxD;;EAEA;AACF;EACEoF,SAASA,CACPrF,IAAmB,EACnBsF,MAAc,EAEN;IAAA,IADRrF,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAACpC,IAAI,CAACiE,IAAI,EAAE,SAAS,EAAEsF,MAAM,EAAErF,WAAW,CAAC;EACxD;;EAEA;AACF;EACEsF,eAAeA,CACbvF,IAAmB,EACnBwF,WAAmB,EAEX;IAAA,IADRvF,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,OAAO,IAAI,CAACpC,IAAI,CAACiE,IAAI,EAAE,cAAc,EAAEwF,WAAW,EAAEvF,WAAW,CAAC;EAClE;;EAEA;AACF;EACEwF,OAAOA,CACLzF,IAAY,EACZ0F,KAAa,EACbhD,OAAe,EACfiD,OAAe,EACfC,YAAoB,EAEZ;IAAA,IADR3F,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAMqC,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,OAAO,IAAI,CAACU,KAAK,CACf,IAAA+D,QAAG,EACDlE,UAAU,EACV;MAAEkF,KAAK;MAAEhD,OAAO;MAAEiD,OAAO;MAAEC;IAAa,CAAC,EACzC;MACExF,EAAE,EAAE,IAAI,CAACC,iBAAiB,CAAC;IAC7B,CACF,CACF,CAAC;EACH;;EAEA;;EAEA;AACF;EACEwF,WAAWA,CAAA,EAAW;IACpB,OAAO,IAAI,CAACC,SAAS;EACvB;;EAEA;AACF;EACEC,WAAWA,CAACtI,QAAgB,EAAE;IAC5B,IAAI,CAACqI,SAAS,GAAGrI,QAAQ;EAC3B;;EAEA;AACF;EACE4C,iBAAiBA,CAAA,EAAoB;IACnC,IAAI,IAAI,CAACrD,SAAS,IAAI,CAACgJ,qBAAU,EAAE;MACjC,OAAO,IAAAC,MAAE,EAAC,IAAI,CAACJ,WAAW,CAAC,CAAC,CAAC;IAC/B;IACA,OAAO1I,SAAS;EAClB;;EAEA;;EAEA;AACF;EACE+I,SAASA,CACPlG,IAAmB,EAEA;IAAA,IADnBC,WAAmB,GAAAhD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI,CAACkB,YAAY,CAAC,CAAC;IAEzC,MAAMqC,UAAU,GAAG,IAAI,CAACT,MAAM,CAACC,IAAI,EAAEC,WAAW,CAAC;IACjD,IAAI,IAAAQ,gBAAO,EAACD,UAAU,CAAC,EAAE;MACvB,MAAM2F,UAAU,GAAG,IAAI,CAAC7F,QAAQ,CAACE,UAAU,EAAEpC,iCAAsB,CAAC;MACpE,MAAMgI,OAAO,GAAG,IAAI,CAACC,kBAAkB,CAAC,CAAC;MACzC,IACE,OAAOD,OAAO,CAACE,QAAQ,KAAK,WAAW,IACvCF,OAAO,CAACE,QAAQ,CAACtD,KAAK,KAAKmD,UAAU,EACrC;QACA,OAAOC,OAAO,CAACE,QAAQ;MACzB,CAAC,MAAM,IACL,OAAOF,OAAO,CAACG,QAAQ,KAAK,WAAW,IACvCH,OAAO,CAACG,QAAQ,CAACvD,KAAK,KAAKmD,UAAU,EACrC;QACA,OAAOC,OAAO,CAACG,QAAQ;MACzB;IACF;IACA,OAAO,IAAI;EACb;;EAEA;AACF;EACEF,kBAAkBA,CAAA,EAGhB;IACA,MAAMG,kBAAkB,GAAIC,IAAqB,IAAiB;MAAA,IAAAC,SAAA,EAAAC,SAAA;MAChE,MAAMC,IAAI,GAAGH,IAAI,CAACI,MAAM,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG;MACxC,MAAMC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAACP,IAAI,CAACI,MAAM,CAAC;MACvC,MAAMnB,KAAK,GAAG,IAAAuB,MAAA,CAAA5J,OAAA,EAAWyJ,SAAS,CAAC;MACnC,MAAMpE,OAAO,GAAGqE,IAAI,CAACG,KAAK,CAAEJ,SAAS,GAAG,CAAC,GAAI,EAAE,CAAC;MAEhD,MAAMK,YAAY,GAAG,GAAGP,IAAI,GAAG,IAAAQ,SAAA,CAAA/J,OAAA,EAAAqJ,SAAA,GAAAW,MAAM,CAAC3B,KAAK,IAAIhD,OAAO,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAA1D,IAAA,CAAA0H,SAAA,EAAU,CAAC,EAAE,GAAG,CAAC,IAAI,IAAAU,SAAA,CAAA/J,OAAA,EAAAsJ,SAAA,GAAAU,MAAM,CAAC3E,OAAO,GAAG,EAAE,CAAC,EAAA1D,IAAA,CAAA2H,SAAA,EAAU,CAAC,EAAE,GAAG,CAAC,EAAE;MAEnI,OAAO;QACLW,KAAK,EAAEb,IAAI,CAACc,IAAI;QAChBC,IAAI,EAAEf,IAAI,CAACe,IAAI;QACfxE,KAAK,EAAEmE;MACT,CAAC;IACH,CAAC;IAED,MAAMM,QAAQ,GAAG,IAAAC,qBAAI,EAAC,IAAI,CAAC7B,WAAW,CAAC,CAAC,CAAC;IAEzC,IAAI4B,QAAQ,CAACvK,MAAM,KAAK,CAAC,EAAE;MACzB,OAAO;QACLqJ,QAAQ,EAAE;UACRe,KAAK,EAAE,SAAS;UAChBE,IAAI,EAAE,SAAS;UACfxE,KAAK,EAAE;QACT;MACF,CAAC;IACH;IAEA,MAAM;MAAEsD,QAAQ;MAAEC;IAAS,CAAC,GAAGkB,QAAQ,CAAC,CAAC,CAAC;IAE1C,IAAInB,QAAQ,EAAE;MACZ,OAAO;QACLA,QAAQ,EAAEE,kBAAkB,CAACF,QAAQ,CAAC;QACtCC,QAAQ,EAAEC,kBAAkB,CAACD,QAAQ;MACvC,CAAC;IACH;IAEA,OAAO;MAAEA,QAAQ,EAAEC,kBAAkB,CAACD,QAAQ;IAAE,CAAC;EACnD;AACF;;AAEA;AACA;AACA;AACA,MAAMoB,QAA0B,GAAAC,OAAA,CAAAD,QAAA,GAAG,IAAI9K,gBAAgB,CAACgL,0BAAe,CAAC;;AAExE;AACA;AACA;AACA,MAAMC,YAA8B,GAAAF,OAAA,CAAAE,YAAA,GAAG,IAAIjL,gBAAgB,CACzDkL,8BAAmB,EACnB,IACF,CAAC;;AAED;AACA;AACA;AACA,MAAMC,QAA0B,GAAAJ,OAAA,CAAAI,QAAA,GAAG,IAAInL,gBAAgB,CAACoL,0BAAe,CAAC;;AAExE;AACA;AACA;AACA,MAAMC,aAA+B,GAAAN,OAAA,CAAAM,aAAA,GAAG,IAAIrL,gBAAgB,CAC1DsL,+BAAoB,EACpB,IACF,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DateTimeUtil.js","names":["_format","require","_isAfter","_isBefore","_isSameDay","_isValid","_parse","_add","_sub","_set","_startOfMonth","_endOfMonth","_startOfWeek","_getHours","_getMinutes","_getDay","_getWeek","_locale","_tz","_timezoneSoft","_interopRequireDefault","_constants","_Cookies","BaseDateTimeUtil","constructor","isoFormat","doOffsets","_defineProperty2","default","Intl","DateTimeFormat","resolvedOptions","timeZone","_isoFormat","_doOffsets","isIncludeTimeOffsetInDateTimes","getOptions","weekStartsOn","getSetting","DEFAULT_WEEK_STARTS_ON","firstWeekContainsDate","DEFAULT_FIRST_WEEK_CONTAINS_DATE","getIsoFormat","DATETIME_OFFSET_FORMAT","convertFormat","javaFormat","_context","javaToUTS35Map","ZZZ","ZZ","Z","uts35Format","sortedKeys","_sort","_keys","call","a","b","length","javaToken","uts35Token","regex","RegExp","replace","getLocale","defaultLocale","getEnabledLocales","locale","getCookie","nl","enGB","toDate","date","inputFormat","Date","parse","in","getDateFnsContext","toFormat","targetFormat","parsedDate","isValid","format","toISO","sourceFormat","now","hasFormat","formattedValue","isOutsideRange","isBefore","isAfter","toUpperCase","inputDate","afterISODate","isSameOrAfter","isSame","beforeISODate","isSameOrBefore","compareDate","getTime","isSameDay","isOther","isWeekend","SATURDAY_NUMBER","SUNDAY_NUMBER","weekDay","getDay","isAmbiguous","dateTime","t","_map","x","newDate","add","minutes","time","indexOf","_calculate","calculationFn","property","value","addSeconds","amount","addMinutes","addHours","addDays","addWeeks","addMonths","addYears","subtractSeconds","sub","subtractMinutes","subtractHours","subtractDays","subtractWeeks","subtractMonths","subtractYears","_get","method","options","startOfMonth","endOfMonth","startOfWeek","getHours","getMinutes","getWeek","set","setYear","year","setMonth","month","setDay","day","setHour","hour","setMinute","minute","setSecond","second","setMilliseconds","millisecond","setTime","hours","seconds","milliseconds","getTimeZone","_timeZone","setTimeZone","IS_GRAALJS","tz","undefined","getOffset","dateOffset","offsets","getTimezoneOffsets","daylight","standard","createOffsetObject","info","_context2","_context3","sign","offset","absOffset","Math","abs","_trunc","round","offsetString","_padStart","String","label","name","abbr","timezone","soft","DateUtil","exports","ISO_DATE_FORMAT","DateTimeUtil","ISO_DATETIME_FORMAT","TimeUtil","ISO_TIME_FORMAT","TimestampUtil","ISO_TIMESTAMP_FORMAT"],"sources":["../../../src/utils/datetime/DateTimeUtil.js"],"sourcesContent":["// @flow\nimport { format } from \"date-fns/format\";\nimport { isAfter } from \"date-fns/isAfter\";\nimport { isBefore } from \"date-fns/isBefore\";\nimport { isSameDay } from \"date-fns/isSameDay\";\nimport { isValid } from \"date-fns/isValid\";\nimport { parse } from \"date-fns/parse\";\nimport { add } from \"date-fns/add\";\nimport { sub } from \"date-fns/sub\";\nimport { set } from \"date-fns/set\";\nimport { startOfMonth } from \"date-fns/startOfMonth\";\nimport { endOfMonth } from \"date-fns/endOfMonth\";\nimport { startOfWeek } from \"date-fns/startOfWeek\";\nimport { getHours } from \"date-fns/getHours\";\nimport { getMinutes } from \"date-fns/getMinutes\";\nimport { getDay } from \"date-fns/getDay\";\nimport { getWeek } from \"date-fns/getWeek\";\n\nimport { enGB, nl } from \"date-fns/locale\";\nimport { tz } from \"@date-fns/tz\";\n\nimport soft from \"timezone-soft\";\n\nimport {\n DATETIME_OFFSET_FORMAT,\n DEFAULT_FIRST_WEEK_CONTAINS_DATE,\n DEFAULT_WEEK_STARTS_ON,\n getEnabledLocales,\n getSetting,\n IS_GRAALJS,\n isIncludeTimeOffsetInDateTimes,\n ISO_DATE_FORMAT,\n ISO_DATETIME_FORMAT,\n ISO_TIME_FORMAT,\n ISO_TIMESTAMP_FORMAT,\n} from \"../../constants\";\n\nimport { getCookie } from \"../browser/Cookies\";\n\ntype OffsetInfoInput = {\n abbr: string,\n offset: number,\n name: string,\n};\n\nexport type OffsetInfo = {\n abbr: string,\n label: string,\n value: string,\n};\n\n/**\n * @hideconstructor\n */\nclass BaseDateTimeUtil {\n _isoFormat: string;\n _doOffsets: boolean;\n\n _timeZone: string =\n typeof Intl === \"undefined\"\n ? \"Etc/UTC\"\n : Intl.DateTimeFormat().resolvedOptions().timeZone || \"Etc/UTC\";\n\n constructor(isoFormat: string, doOffsets: boolean = false) {\n this._isoFormat = isoFormat;\n this._doOffsets = doOffsets;\n }\n\n /**\n * Indicates if offsets and timezones are relevant\n */\n get doOffsets(): boolean {\n return this._doOffsets ? isIncludeTimeOffsetInDateTimes() : false;\n }\n\n /**\n * Returns the options defined in settings\n */\n getOptions(): {\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6,\n firstWeekContainsDate: 1 | 2 | 3 | 4 | 5 | 6 | 7,\n } {\n // indicates on what day the week starts\n const weekStartsOn = getSetting(\n \"CALENDAR_WEEK_STARTS_ON\",\n DEFAULT_WEEK_STARTS_ON,\n );\n\n // indicates which date indicates the first week of the year\n const firstWeekContainsDate = getSetting(\n \"CALENDAR_FIRST_WEEK_CONTAINS_DATE\",\n DEFAULT_FIRST_WEEK_CONTAINS_DATE,\n );\n\n return { weekStartsOn, firstWeekContainsDate };\n }\n\n /**\n */\n getIsoFormat(): string {\n if (this.doOffsets) {\n return this._isoFormat + DATETIME_OFFSET_FORMAT;\n }\n return this._isoFormat;\n }\n\n /**\n */\n convertFormat(javaFormat: string): string {\n if (!javaFormat) {\n return this.getIsoFormat();\n }\n\n const javaToUTS35Map = {\n ZZZ: \"xxx\",\n ZZ: \"xx\",\n Z: \"x\",\n };\n\n // Replace Java pattern tokens with UTS #35 tokens\n let uts35Format = javaFormat;\n\n // Sort keys by length (descending) to handle multi-character tokens first\n const sortedKeys = Object.keys(javaToUTS35Map).sort(\n (a, b) => b.length - a.length,\n );\n\n for (const javaToken of sortedKeys) {\n const uts35Token = javaToUTS35Map[javaToken];\n const regex = new RegExp(javaToken, \"g\"); // Match all occurrences\n uts35Format = uts35Format.replace(regex, uts35Token);\n }\n\n return uts35Format;\n }\n\n /**\n */\n getLocale(): typeof nl | typeof enGB {\n const defaultLocale = getEnabledLocales()[0];\n const locale = getCookie(\"locale\") ?? defaultLocale ?? \"en\";\n\n if (locale === \"nl\") {\n return nl;\n }\n\n return enGB;\n }\n\n /**\n */\n toDate(date: string | Date, inputFormat: string = this.getIsoFormat()): Date {\n if (date instanceof Date) {\n return date;\n }\n\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n\n return parse(date, inputFormat, new Date(), {\n in: this.getDateFnsContext(),\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n /**\n */\n toFormat(\n date: string | Date,\n targetFormat: string,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const { weekStartsOn } = this.getOptions();\n\n const parsedDate = this.toDate(date, inputFormat);\n\n if (isValid(parsedDate)) {\n return format(parsedDate, targetFormat, {\n in: this.getDateFnsContext(),\n weekStartsOn,\n locale: this.getLocale(),\n });\n }\n\n return \"Invalid Date\";\n }\n\n /**\n */\n toISO(\n date: string | Date,\n sourceFormat: string = this.getIsoFormat(),\n ): string {\n return this.toFormat(date, this.getIsoFormat(), sourceFormat);\n }\n\n /**\n */\n now(): string {\n return this.toISO(new Date());\n }\n\n //////////// VALIDATION\n\n /**\n */\n hasFormat(date: string, sourceFormat: string): boolean {\n const parsedDate = this.toDate(date, sourceFormat);\n\n const formattedValue = this.toFormat(parsedDate, sourceFormat);\n if (formattedValue === \"Invalid Date\") {\n return false;\n }\n\n const isOutsideRange =\n isBefore(parsedDate, new Date(1000, 1, 1)) ||\n isAfter(parsedDate, new Date(9999, 11, 31));\n if (isOutsideRange) {\n return false;\n }\n\n return (\n formattedValue.replace(/0/gu, \"\").toUpperCase() ===\n date.replace(/0/gu, \"\").toUpperCase()\n );\n }\n\n /**\n */\n isValid(\n date: string | Date | null | void,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n if (!date) {\n return false;\n }\n\n const parsedDate = this.toDate(date, inputFormat);\n return isValid(parsedDate);\n }\n\n /**\n */\n isAfter(\n inputDate: string | Date,\n afterISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n afterISODate != null &&\n isAfter(this.toDate(inputDate, inputFormat), this.toDate(afterISODate))\n );\n }\n\n /**\n */\n isSameOrAfter(\n inputDate: string | Date,\n afterISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n afterISODate != null &&\n (this.isAfter(inputDate, afterISODate, inputFormat) ||\n this.isSame(inputDate, afterISODate, inputFormat))\n );\n }\n\n /**\n */\n isBefore(\n inputDate: string | Date,\n beforeISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n beforeISODate != null &&\n isBefore(this.toDate(inputDate, inputFormat), this.toDate(beforeISODate))\n );\n }\n\n /**\n */\n isSameOrBefore(\n inputDate: string | Date,\n beforeISODate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n beforeISODate != null &&\n (this.isBefore(inputDate, beforeISODate, inputFormat) ||\n this.isSame(inputDate, beforeISODate, inputFormat))\n );\n }\n\n /**\n */\n isSame(\n inputDate: string | Date,\n compareDate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n compareDate != null &&\n this.toDate(inputDate, inputFormat).getTime() ===\n this.toDate(compareDate).getTime()\n );\n }\n\n /**\n */\n isSameDay(\n inputDate: string | Date,\n compareDate: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return (\n compareDate != null &&\n isSameDay(\n this.toDate(inputDate, inputFormat),\n this.toDate(compareDate, inputFormat),\n )\n );\n }\n\n /**\n */\n isOther(\n inputDate: string | Date,\n compareDate: ?string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n return !this.isSame(inputDate, compareDate, inputFormat);\n }\n\n /**\n */\n isWeekend(inputDate: string | Date): boolean {\n const SATURDAY_NUMBER = 6;\n const SUNDAY_NUMBER = 0;\n const weekDay = getDay(this.toDate(inputDate));\n\n return weekDay === SATURDAY_NUMBER || weekDay === SUNDAY_NUMBER;\n }\n\n /**\n * Checks if a given local date and time is ambiguous in the specified timezone.\n * Ambiguity happens during the end of daylight saving time (DST) transitions.\n */\n isAmbiguous(\n inputDate: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): boolean {\n if (inputDate == null || typeof Intl === \"undefined\") {\n return false;\n }\n\n const dateTime = this.toDate(inputDate, inputFormat);\n if (!isValid(dateTime)) {\n return false;\n }\n\n const t = [60, -60, 30, -30];\n const a = t.map((x) => {\n const newDate = add(dateTime, { minutes: x });\n return format(newDate, \"HH:mm\");\n });\n const time = format(dateTime, \"HH:mm\");\n return a.indexOf(time) > -1;\n }\n\n //////////// CALCULATIONS\n\n /**\n * @private\n */\n _calculate(\n date: string | Date,\n calculationFn: Function,\n property: string,\n value: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n calculationFn(\n parsedDate,\n { [property]: value },\n {\n in: this.getDateFnsContext(),\n },\n ),\n );\n }\n\n /**\n */\n addSeconds(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"seconds\", amount, inputFormat);\n }\n\n /**\n */\n addMinutes(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"minutes\", amount, inputFormat);\n }\n\n /**\n */\n addHours(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"hours\", amount, inputFormat);\n }\n\n /**\n */\n addDays(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"days\", amount, inputFormat);\n }\n\n /**\n */\n addWeeks(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"weeks\", amount, inputFormat);\n }\n\n /**\n */\n addMonths(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"months\", amount, inputFormat);\n }\n\n /**\n */\n addYears(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, add, \"years\", amount, inputFormat);\n }\n\n /**\n */\n subtractSeconds(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"seconds\", amount, inputFormat);\n }\n\n /**\n */\n subtractMinutes(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"minutes\", amount, inputFormat);\n }\n\n /**\n */\n subtractHours(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"hours\", amount, inputFormat);\n }\n\n /**\n */\n subtractDays(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"days\", amount, inputFormat);\n }\n\n /**\n */\n subtractWeeks(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"weeks\", amount, inputFormat);\n }\n\n /**\n */\n subtractMonths(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"months\", amount, inputFormat);\n }\n\n /**\n */\n subtractYears(\n date: string,\n amount: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._calculate(date, sub, \"years\", amount, inputFormat);\n }\n\n //////////// GETTERS\n\n /**\n * @private\n */\n _get(\n date: string | Date,\n method: Function,\n inputFormat: string = this.getIsoFormat(),\n options: Object = {},\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n method(parsedDate, {\n in: this.getDateFnsContext(),\n ...options,\n }),\n );\n }\n\n /**\n */\n startOfMonth(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._get(date, startOfMonth, inputFormat);\n }\n\n /**\n */\n endOfMonth(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._get(date, endOfMonth, inputFormat);\n }\n\n /**\n */\n startOfWeek(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const { weekStartsOn } = this.getOptions();\n return this._get(date, startOfWeek, inputFormat, {\n weekStartsOn,\n });\n }\n\n /**\n */\n getHours(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): number {\n const parsedDate = this.toDate(date, inputFormat);\n return getHours(parsedDate, { in: this.getDateFnsContext() });\n }\n\n /**\n */\n getMinutes(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): number {\n const parsedDate = this.toDate(date, inputFormat);\n return getMinutes(parsedDate, { in: this.getDateFnsContext() });\n }\n\n /**\n */\n getWeek(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): number {\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n const parsedDate = this.toDate(date, inputFormat);\n return getWeek(parsedDate, {\n in: this.getDateFnsContext(),\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n //////////// SETTERS\n\n /**\n * @private\n */\n _set(\n date: string | Date,\n property: string,\n value: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n set(\n parsedDate,\n { [property]: value },\n // {\n // in: this.getDateFnsContext(),\n // },\n ),\n );\n }\n\n /**\n */\n setYear(\n date: string | Date,\n year: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"year\", year, inputFormat);\n }\n\n /**\n */\n setMonth(\n date: string | Date,\n month: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"month\", month, inputFormat);\n }\n\n /**\n */\n setDay(\n date: string | Date,\n day: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"date\", day, inputFormat);\n }\n\n /**\n */\n setHour(\n date: string | Date,\n hour: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"hours\", hour, inputFormat);\n }\n\n /**\n */\n setMinute(\n date: string | Date,\n minute: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"minutes\", minute, inputFormat);\n }\n\n /**\n */\n setSecond(\n date: string | Date,\n second: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"seconds\", second, inputFormat);\n }\n\n /**\n */\n setMilliseconds(\n date: string | Date,\n millisecond: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n return this._set(date, \"milliseconds\", millisecond, inputFormat);\n }\n\n /**\n */\n setTime(\n date: string,\n hours: number,\n minutes: number,\n seconds: number,\n milliseconds: number,\n inputFormat: string = this.getIsoFormat(),\n ): string {\n const parsedDate = this.toDate(date, inputFormat);\n return this.toISO(\n set(\n parsedDate,\n { hours, minutes, seconds, milliseconds },\n {\n in: this.getDateFnsContext(),\n },\n ),\n );\n }\n\n //////////// Timezone related\n\n /**\n */\n getTimeZone(): string {\n return this._timeZone;\n }\n\n /**\n */\n setTimeZone(timeZone: string) {\n this._timeZone = timeZone;\n }\n\n /**\n */\n getDateFnsContext(): null | Function {\n if (this.doOffsets && !IS_GRAALJS) {\n return tz(this.getTimeZone());\n }\n return undefined;\n }\n\n //////////// Offsets\n\n /**\n */\n getOffset(\n date: string | Date,\n inputFormat: string = this.getIsoFormat(),\n ): OffsetInfo | null {\n const parsedDate = this.toDate(date, inputFormat);\n if (isValid(parsedDate)) {\n const dateOffset = this.toFormat(parsedDate, DATETIME_OFFSET_FORMAT);\n const offsets = this.getTimezoneOffsets();\n if (\n typeof offsets.daylight !== \"undefined\" &&\n offsets.daylight.value === dateOffset\n ) {\n return offsets.daylight;\n } else if (\n typeof offsets.standard !== \"undefined\" &&\n offsets.standard.value === dateOffset\n ) {\n return offsets.standard;\n }\n }\n return null;\n }\n\n /**\n */\n getTimezoneOffsets(): {\n standard?: OffsetInfo,\n daylight?: OffsetInfo,\n } {\n const createOffsetObject = (info: OffsetInfoInput): OffsetInfo => {\n const sign = info.offset < 0 ? \"-\" : \"+\";\n const absOffset = Math.abs(info.offset);\n const hours = Math.trunc(absOffset);\n const minutes = Math.round((absOffset % 1) * 60);\n\n const offsetString = `${sign}${String(hours + (minutes === 60 ? 1 : 0)).padStart(2, \"0\")}:${String(minutes % 60).padStart(2, \"0\")}`;\n\n return {\n label: info.name,\n abbr: info.abbr,\n value: offsetString,\n };\n };\n\n const timezone = soft(this.getTimeZone());\n\n if (timezone.length === 0) {\n return {\n standard: {\n label: \"Etc/UTC\",\n abbr: \"Etc/UTC\",\n value: \"+00:00\",\n },\n };\n }\n\n const { daylight, standard } = timezone[0];\n\n if (daylight) {\n return {\n daylight: createOffsetObject(daylight),\n standard: createOffsetObject(standard),\n };\n }\n\n return { standard: createOffsetObject(standard) };\n }\n}\n\n/**\n * DateUtil\n */\nconst DateUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_DATE_FORMAT);\n\n/**\n * DateTimeUtil\n */\nconst DateTimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_DATETIME_FORMAT,\n true,\n);\n\n/**\n * TimeUtil\n */\nconst TimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_TIME_FORMAT);\n\n/**\n * TimestampUtil\n */\nconst TimestampUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_TIMESTAMP_FORMAT,\n true,\n);\n\nexport { DateUtil, DateTimeUtil, TimeUtil, TimestampUtil };\n"],"mappings":"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","ignoreList":[]}
|