@beinformed/ui 1.65.24 → 1.65.26
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 +18 -0
- package/esm/builder/mergeLayoutHintConfigurations.js +7 -5
- package/esm/builder/mergeLayoutHintConfigurations.js.flow +12 -5
- package/esm/builder/mergeLayoutHintConfigurations.js.map +1 -1
- package/esm/constants/Settings.js +4 -1
- package/esm/constants/Settings.js.flow +3 -3
- package/esm/constants/Settings.js.map +1 -1
- package/esm/hooks/useAuthentication.js +7 -3
- package/esm/hooks/useAuthentication.js.flow +6 -3
- package/esm/hooks/useAuthentication.js.map +1 -1
- package/esm/hooks/useModelCatalog.js +1 -1
- package/esm/hooks/useModelCatalog.js.flow +1 -1
- package/esm/hooks/useModelCatalog.js.map +1 -1
- package/esm/i18n/Locale.js +7 -1
- package/esm/i18n/Locale.js.flow +4 -2
- package/esm/i18n/Locale.js.map +1 -1
- package/esm/models/actions/ActionCollection.js +1 -1
- package/esm/models/actions/ActionCollection.js.flow +3 -3
- package/esm/models/actions/ActionCollection.js.map +1 -1
- package/esm/models/application/ApplicationModel.js +6 -1
- package/esm/models/application/ApplicationModel.js.flow +7 -2
- package/esm/models/application/ApplicationModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeModel.js +3 -5
- package/esm/models/attributes/ChoiceAttributeModel.js.flow +3 -5
- package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/esm/models/attributes/CompositeAttributeModel.js +1 -1
- package/esm/models/attributes/CompositeAttributeModel.js.flow +1 -1
- package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/esm/models/attributes/NumberAttributeModel.js +3 -1
- package/esm/models/attributes/NumberAttributeModel.js.flow +2 -1
- package/esm/models/attributes/NumberAttributeModel.js.map +1 -1
- package/esm/models/attributes/StringAttributeModel.js +9 -4
- package/esm/models/attributes/StringAttributeModel.js.flow +7 -4
- package/esm/models/attributes/StringAttributeModel.js.map +1 -1
- package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js +1 -1
- package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js.flow +1 -1
- package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
- package/esm/models/base/BaseModel.js +8 -5
- package/esm/models/base/BaseModel.js.flow +8 -5
- package/esm/models/base/BaseModel.js.map +1 -1
- package/esm/models/base/ResourceModel.js +6 -7
- package/esm/models/base/ResourceModel.js.flow +4 -4
- package/esm/models/base/ResourceModel.js.map +1 -1
- package/esm/models/concepts/ConceptDetailModel.js +16 -16
- package/esm/models/concepts/ConceptDetailModel.js.flow +16 -19
- package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
- package/esm/models/concepts/SourceReferenceCollection.js +1 -1
- package/esm/models/concepts/SourceReferenceCollection.js.flow +1 -2
- package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/esm/models/content/ContentLinkModel.js +6 -6
- package/esm/models/content/ContentLinkModel.js.flow +6 -6
- package/esm/models/content/ContentLinkModel.js.map +1 -1
- package/esm/models/filters/BaseFilterModel.js +3 -5
- package/esm/models/filters/BaseFilterModel.js.flow +4 -5
- package/esm/models/filters/BaseFilterModel.js.map +1 -1
- package/esm/models/filters/StringFilterModel.js +4 -2
- package/esm/models/filters/StringFilterModel.js.flow +3 -2
- package/esm/models/filters/StringFilterModel.js.map +1 -1
- package/esm/models/form/FormModel.js +1 -1
- package/esm/models/form/FormModel.js.flow +1 -2
- package/esm/models/form/FormModel.js.map +1 -1
- package/esm/models/form/FormObjectModel.js +1 -1
- package/esm/models/form/FormObjectModel.js.flow +2 -3
- package/esm/models/form/FormObjectModel.js.map +1 -1
- package/esm/models/href/Href.js +2 -2
- package/esm/models/href/Href.js.flow +2 -2
- package/esm/models/href/Href.js.map +1 -1
- package/esm/models/index.js +2 -2
- package/esm/models/index.js.flow +1 -2
- package/esm/models/index.js.map +1 -1
- package/esm/models/links/normalizeLinkJSON.js +1 -1
- package/esm/models/links/normalizeLinkJSON.js.flow +1 -1
- package/esm/models/links/normalizeLinkJSON.js.map +1 -1
- package/esm/modularui/Authenticate.js +7 -2
- package/esm/modularui/Authenticate.js.flow +4 -2
- package/esm/modularui/Authenticate.js.map +1 -1
- package/esm/modularui/ModularUIRequest.js +2 -5
- package/esm/modularui/ModularUIRequest.js.flow +2 -6
- package/esm/modularui/ModularUIRequest.js.map +1 -1
- package/esm/modularui/UploadRequest.js +3 -1
- package/esm/modularui/UploadRequest.js.flow +3 -1
- package/esm/modularui/UploadRequest.js.map +1 -1
- package/esm/react-client/client.js +22 -10
- package/esm/react-client/client.js.flow +17 -11
- package/esm/react-client/client.js.map +1 -1
- package/esm/react-client/contextPath.js +3 -1
- package/esm/react-client/contextPath.js.flow +2 -1
- package/esm/react-client/contextPath.js.map +1 -1
- package/esm/redux/_i18n/I18nReducer.js +1 -4
- package/esm/redux/_i18n/I18nReducer.js.flow +1 -4
- package/esm/redux/_i18n/I18nReducer.js.map +1 -1
- package/esm/redux/_modularui/ModularUIActions.js +1 -4
- package/esm/redux/_modularui/ModularUIActions.js.flow +1 -5
- package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
- package/esm/redux/_modularui/ModularUIConnector.js +3 -4
- package/esm/redux/_modularui/ModularUIConnector.js.flow +2 -1
- package/esm/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/esm/redux/_modularui/ModularUIReducer.js +6 -3
- package/esm/redux/_modularui/ModularUIReducer.js.flow +2 -2
- package/esm/redux/_modularui/ModularUIReducer.js.map +1 -1
- package/esm/redux/actions/Authorization.js +4 -2
- package/esm/redux/actions/Authorization.js.flow +3 -2
- package/esm/redux/actions/Authorization.js.map +1 -1
- package/esm/redux/actions/Preferences.js +4 -4
- package/esm/redux/actions/Preferences.js.flow +6 -10
- package/esm/redux/actions/Preferences.js.map +1 -1
- package/esm/redux/reducers/ModelCatalogReducer.js +7 -9
- package/esm/redux/reducers/ModelCatalogReducer.js.flow +8 -9
- package/esm/redux/reducers/ModelCatalogReducer.js.map +1 -1
- package/esm/redux/store/configureStore.js +6 -1
- package/esm/redux/store/configureStore.js.flow +4 -1
- package/esm/redux/store/configureStore.js.map +1 -1
- package/esm/redux/types.js.flow +10 -1
- package/esm/redux/types.js.map +1 -1
- package/esm/utils/browser/Cache.js +3 -1
- package/esm/utils/browser/Cache.js.flow +2 -1
- package/esm/utils/browser/Cache.js.map +1 -1
- package/esm/utils/browser/__tests__/Cookies.spec.js.flow +2 -1
- package/esm/utils/datetime/DateTimeUtil.js +6 -5
- package/esm/utils/datetime/DateTimeUtil.js.flow +5 -11
- package/esm/utils/datetime/DateTimeUtil.js.map +1 -1
- package/esm/utils/datetime/__tests__/DateTimeFormat.spec.js.flow +0 -6
- package/esm/utils/fetch/universalFetch.js +7 -8
- package/esm/utils/fetch/universalFetch.js.flow +13 -14
- package/esm/utils/fetch/universalFetch.js.map +1 -1
- package/esm/utils/fetch/xhr.js +2 -5
- package/esm/utils/fetch/xhr.js.flow +2 -6
- package/esm/utils/fetch/xhr.js.map +1 -1
- package/esm/utils/helpers/createHref.js +4 -1
- package/esm/utils/helpers/createHref.js.flow +2 -1
- package/esm/utils/helpers/createHref.js.map +1 -1
- package/esm/utils/helpers/createUUID.js +2 -1
- package/esm/utils/helpers/createUUID.js.flow +1 -1
- package/esm/utils/helpers/createUUID.js.map +1 -1
- package/esm/utils/number/parseNumbers.js +6 -3
- package/esm/utils/number/parseNumbers.js.flow +4 -3
- package/esm/utils/number/parseNumbers.js.map +1 -1
- package/lib/builder/mergeLayoutHintConfigurations.js +7 -5
- package/lib/builder/mergeLayoutHintConfigurations.js.map +1 -1
- package/lib/constants/Settings.js +4 -1
- package/lib/constants/Settings.js.map +1 -1
- package/lib/hooks/useAuthentication.js +7 -3
- package/lib/hooks/useAuthentication.js.map +1 -1
- package/lib/hooks/useModelCatalog.js +1 -1
- package/lib/hooks/useModelCatalog.js.map +1 -1
- package/lib/i18n/Locale.js +7 -1
- package/lib/i18n/Locale.js.map +1 -1
- package/lib/models/actions/ActionCollection.js +1 -1
- package/lib/models/actions/ActionCollection.js.map +1 -1
- package/lib/models/application/ApplicationModel.js +6 -1
- package/lib/models/application/ApplicationModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeModel.js +3 -5
- package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/lib/models/attributes/CompositeAttributeModel.js +1 -1
- package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/lib/models/attributes/NumberAttributeModel.js +3 -1
- package/lib/models/attributes/NumberAttributeModel.js.map +1 -1
- package/lib/models/attributes/StringAttributeModel.js +9 -4
- package/lib/models/attributes/StringAttributeModel.js.map +1 -1
- package/lib/models/attributes/input-constraints/DatetimeFormatConstraint.js +1 -1
- package/lib/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
- package/lib/models/base/BaseModel.js +8 -5
- package/lib/models/base/BaseModel.js.map +1 -1
- package/lib/models/base/ResourceModel.js +6 -7
- package/lib/models/base/ResourceModel.js.map +1 -1
- package/lib/models/concepts/ConceptDetailModel.js +16 -16
- package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
- package/lib/models/concepts/SourceReferenceCollection.js +1 -1
- package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/lib/models/content/ContentLinkModel.js +6 -6
- package/lib/models/content/ContentLinkModel.js.map +1 -1
- package/lib/models/filters/BaseFilterModel.js +3 -5
- package/lib/models/filters/BaseFilterModel.js.map +1 -1
- package/lib/models/filters/StringFilterModel.js +4 -2
- package/lib/models/filters/StringFilterModel.js.map +1 -1
- package/lib/models/form/FormModel.js +1 -1
- package/lib/models/form/FormModel.js.map +1 -1
- package/lib/models/form/FormObjectModel.js +1 -1
- package/lib/models/form/FormObjectModel.js.map +1 -1
- package/lib/models/href/Href.js +2 -2
- package/lib/models/href/Href.js.map +1 -1
- package/lib/models/index.js.map +1 -1
- package/lib/models/links/normalizeLinkJSON.js +1 -1
- package/lib/models/links/normalizeLinkJSON.js.map +1 -1
- package/lib/modularui/Authenticate.js +7 -2
- package/lib/modularui/Authenticate.js.map +1 -1
- package/lib/modularui/ModularUIRequest.js +2 -5
- package/lib/modularui/ModularUIRequest.js.map +1 -1
- package/lib/modularui/UploadRequest.js +3 -1
- package/lib/modularui/UploadRequest.js.map +1 -1
- package/lib/react-client/client.js +22 -10
- package/lib/react-client/client.js.map +1 -1
- package/lib/react-client/contextPath.js +4 -1
- package/lib/react-client/contextPath.js.map +1 -1
- package/lib/redux/_i18n/I18nReducer.js +1 -4
- package/lib/redux/_i18n/I18nReducer.js.map +1 -1
- package/lib/redux/_modularui/ModularUIActions.js +1 -4
- package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
- package/lib/redux/_modularui/ModularUIConnector.js +3 -4
- package/lib/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/lib/redux/_modularui/ModularUIReducer.js +6 -3
- package/lib/redux/_modularui/ModularUIReducer.js.map +1 -1
- package/lib/redux/actions/Authorization.js +4 -2
- package/lib/redux/actions/Authorization.js.map +1 -1
- package/lib/redux/actions/Preferences.js +4 -4
- package/lib/redux/actions/Preferences.js.map +1 -1
- package/lib/redux/reducers/ModelCatalogReducer.js +7 -9
- package/lib/redux/reducers/ModelCatalogReducer.js.map +1 -1
- package/lib/redux/store/configureStore.js +6 -1
- package/lib/redux/store/configureStore.js.map +1 -1
- package/lib/redux/types.js.map +1 -1
- package/lib/utils/browser/Cache.js +3 -1
- package/lib/utils/browser/Cache.js.map +1 -1
- package/lib/utils/datetime/DateTimeUtil.js +6 -5
- package/lib/utils/datetime/DateTimeUtil.js.map +1 -1
- package/lib/utils/fetch/universalFetch.js +7 -8
- package/lib/utils/fetch/universalFetch.js.map +1 -1
- package/lib/utils/fetch/xhr.js +2 -5
- package/lib/utils/fetch/xhr.js.map +1 -1
- package/lib/utils/helpers/createHref.js +4 -1
- package/lib/utils/helpers/createHref.js.map +1 -1
- package/lib/utils/helpers/createUUID.js +3 -1
- package/lib/utils/helpers/createUUID.js.map +1 -1
- package/lib/utils/number/parseNumbers.js +6 -3
- package/lib/utils/number/parseNumbers.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Preferences.js","names":["isPlainObject","JsonParseException","setSetting","setSettings","ALL_CONTENT_IN_DATA_SETTING","INCLUDE_TIME_OFFSET","LOGIN_TYPE","LOGIN_PASSWORD_SETTING","LOGIN_PATH_SETTING","LOGIN_USERNAME_SETTING","LOGOUT_PATH_SETTING","getServerPreferenceValue","preferenceName","defaultValue","type","value","preferencesProvider","getPreferenceByName","_includesInstanceProperty","call","_context","_mapInstanceProperty","split","val","_trimInstanceProperty","setServerPreference","propertyName","setPreference","propertyValue","payload","setPreferences","preferences","setThemePreference","configTheme","themeData","JSON","parse","error","settings","setAllContentInDataSetting","state","allContentInDataSetting","getModularUIContentInData","setDateTimeSettings","isIncludeTimeOffsetInDateTimes","setLoginPreferences","loginSettings"],"sources":["../../../src/redux/actions/Preferences.js"],"sourcesContent":["// @flow\nimport { isPlainObject } from \"../../utils/helpers/objects\";\n\nimport { JsonParseException } from \"../../exceptions\";\nimport { setSetting, setSettings } from \"../../constants/Settings\";\n\nimport type {\n PreferenceValue,\n ReduxState,\n SetPreferenceAction,\n SetPreferencesAction,\n} from \"../types\";\n\nimport {\n ALL_CONTENT_IN_DATA_SETTING,\n INCLUDE_TIME_OFFSET,\n LOGIN_TYPE,\n LOGIN_PASSWORD_SETTING,\n LOGIN_PATH_SETTING,\n LOGIN_USERNAME_SETTING,\n LOGOUT_PATH_SETTING,\n} from \"../../constants\";\n\n/**\n */\nconst getServerPreferenceValue = (\n preferenceName: string,\n defaultValue: PreferenceValue = null,\n type?: string,\n) => {\n let value: PreferenceValue = null;\n if (typeof preferencesProvider !== \"undefined\") {\n value = preferencesProvider.getPreferenceByName(preferenceName);\n }\n\n if (value == null) {\n value = defaultValue;\n }\n\n if (typeof value === \"string\" && type !== \"string\" && value.includes(\",\")) {\n value = value.split(\",\").map((val) => val.trim());\n }\n\n return value;\n};\n\n/**\n */\nexport const setServerPreference = (\n propertyName: string,\n defaultValue: PreferenceValue = null,\n type?: string,\n): SetPreferenceAction => {\n const value = getServerPreferenceValue(propertyName, defaultValue, type);\n return setPreference(propertyName, value);\n};\n\n/**\n */\nexport const setPreference = (\n propertyName: string,\n propertyValue: PreferenceValue = null,\n): SetPreferenceAction => ({\n type: \"SET_PREFERENCE\",\n payload: {\n [propertyName]: propertyValue,\n },\n});\n\n/**\n */\nexport const setPreferences = (preferences: Object): SetPreferencesAction => ({\n type: \"SET_PREFERENCES\",\n payload: {\n ...preferences,\n },\n});\n\n/**\n */\nexport const setThemePreference = (\n configTheme: string,\n): SetPreferenceAction => {\n let themeData;\n\n try {\n themeData = configTheme ? JSON.parse(configTheme) : null;\n } catch (error) {\n throw new JsonParseException(`Theme file contains invalid JSON: ${error}`);\n }\n\n if (themeData && isPlainObject(themeData)) {\n setSettings(themeData.settings);\n }\n\n return setPreference(\"theme\", themeData);\n};\n\n/**\n * Make modular-ui-content-in-data preference available client side\n */\nexport const setAllContentInDataSetting = (\n state?: ReduxState,\n): SetPreferenceAction => {\n let allContentInDataSetting: PreferenceValue = false;\n\n if (
|
|
1
|
+
{"version":3,"file":"Preferences.js","names":["isPlainObject","JsonParseException","setSetting","setSettings","ALL_CONTENT_IN_DATA_SETTING","INCLUDE_TIME_OFFSET","LOGIN_TYPE","LOGIN_PASSWORD_SETTING","LOGIN_PATH_SETTING","LOGIN_USERNAME_SETTING","LOGOUT_PATH_SETTING","getServerPreferenceValue","preferenceName","defaultValue","type","value","preferencesProvider","getPreferenceByName","_includesInstanceProperty","call","_context","_mapInstanceProperty","split","val","_trimInstanceProperty","setServerPreference","propertyName","setPreference","propertyValue","payload","setPreferences","preferences","setThemePreference","configTheme","themeData","JSON","parse","error","settings","setAllContentInDataSetting","state","allContentInDataSetting","getModularUIContentInData","setDateTimeSettings","isIncludeTimeOffsetInDateTimes","setLoginPreferences","loginSettings"],"sources":["../../../src/redux/actions/Preferences.js"],"sourcesContent":["// @flow\nimport { isPlainObject } from \"../../utils/helpers/objects\";\n\nimport { JsonParseException } from \"../../exceptions\";\nimport { setSetting, setSettings } from \"../../constants/Settings\";\n\nimport type {\n PreferenceValue,\n ReduxState,\n SetPreferenceAction,\n SetPreferencesAction,\n} from \"../types\";\n\nimport {\n ALL_CONTENT_IN_DATA_SETTING,\n INCLUDE_TIME_OFFSET,\n LOGIN_TYPE,\n LOGIN_PASSWORD_SETTING,\n LOGIN_PATH_SETTING,\n LOGIN_USERNAME_SETTING,\n LOGOUT_PATH_SETTING,\n} from \"../../constants\";\n\n/**\n */\nconst getServerPreferenceValue = (\n preferenceName: string,\n defaultValue: PreferenceValue = null,\n type?: string,\n): PreferenceValue => {\n let value: PreferenceValue = null;\n if (typeof preferencesProvider !== \"undefined\") {\n value = preferencesProvider.getPreferenceByName(preferenceName);\n }\n\n if (value == null) {\n value = defaultValue;\n }\n\n if (typeof value === \"string\" && type !== \"string\" && value.includes(\",\")) {\n value = value.split(\",\").map((val) => val.trim());\n }\n\n return (value: PreferenceValue);\n};\n\n/**\n */\nexport const setServerPreference = (\n propertyName: string,\n defaultValue: PreferenceValue = null,\n type?: string,\n): SetPreferenceAction => {\n const value = getServerPreferenceValue(propertyName, defaultValue, type);\n return setPreference(propertyName, value);\n};\n\n/**\n */\nexport const setPreference = (\n propertyName: string,\n propertyValue: PreferenceValue = null,\n): SetPreferenceAction => ({\n type: \"SET_PREFERENCE\",\n payload: {\n [propertyName]: propertyValue,\n },\n});\n\n/**\n */\nexport const setPreferences = (preferences: Object): SetPreferencesAction => ({\n type: \"SET_PREFERENCES\",\n payload: {\n ...preferences,\n },\n});\n\n/**\n */\nexport const setThemePreference = (\n configTheme: string,\n): SetPreferenceAction => {\n let themeData;\n\n try {\n themeData = configTheme ? JSON.parse(configTheme) : null;\n } catch (error) {\n throw new JsonParseException(`Theme file contains invalid JSON: ${error}`);\n }\n\n if (themeData && isPlainObject(themeData)) {\n setSettings(themeData.settings);\n }\n\n return setPreference(\"theme\", themeData);\n};\n\n/**\n * Make modular-ui-content-in-data preference available client side\n */\nexport const setAllContentInDataSetting = (\n state?: ReduxState,\n): SetPreferenceAction => {\n let allContentInDataSetting: PreferenceValue = false;\n\n if (typeof preferencesProvider?.getModularUIContentInData === \"function\") {\n allContentInDataSetting = preferencesProvider.getModularUIContentInData();\n } else if (typeof state?.preferences == \"object\") {\n allContentInDataSetting = state.preferences[ALL_CONTENT_IN_DATA_SETTING];\n }\n\n setSetting(ALL_CONTENT_IN_DATA_SETTING, !!allContentInDataSetting);\n return setPreference(ALL_CONTENT_IN_DATA_SETTING, allContentInDataSetting);\n};\n\n/**\n * Retrieve settings for date time conversion\n */\nexport const setDateTimeSettings = (\n state?: ReduxState,\n): SetPreferenceAction => {\n let isIncludeTimeOffsetInDateTimes: PreferenceValue = false;\n if (\n typeof preferencesProvider?.isIncludeTimeOffsetInDateTimes === \"function\"\n ) {\n isIncludeTimeOffsetInDateTimes =\n preferencesProvider.isIncludeTimeOffsetInDateTimes();\n } else if (typeof state?.preferences === \"object\") {\n isIncludeTimeOffsetInDateTimes = state.preferences[INCLUDE_TIME_OFFSET];\n }\n\n setSetting(INCLUDE_TIME_OFFSET, !!isIncludeTimeOffsetInDateTimes);\n return setPreference(INCLUDE_TIME_OFFSET, isIncludeTimeOffsetInDateTimes);\n};\n\n/**\n * Retrieves login settings from runtime preferences and sets them as setting in the preference reducer\n */\nexport const setLoginPreferences = (\n state?: ReduxState,\n): SetPreferencesAction => {\n const loginSettings = {\n [LOGIN_TYPE]: getServerPreferenceValue(\n LOGIN_TYPE,\n state?.preferences[LOGIN_TYPE],\n ),\n [LOGIN_PATH_SETTING]: getServerPreferenceValue(\n LOGIN_PATH_SETTING,\n state?.preferences[LOGIN_PATH_SETTING] ??\n `/callback?client_name=FormClient`,\n ),\n [LOGIN_USERNAME_SETTING]: getServerPreferenceValue(\n LOGIN_USERNAME_SETTING,\n state?.preferences[LOGIN_USERNAME_SETTING] ?? \"j_username\",\n ),\n [LOGIN_PASSWORD_SETTING]: getServerPreferenceValue(\n LOGIN_PASSWORD_SETTING,\n state?.preferences[LOGIN_PASSWORD_SETTING] ?? \"j_password\",\n ),\n [LOGOUT_PATH_SETTING]: getServerPreferenceValue(\n LOGOUT_PATH_SETTING,\n state?.preferences[LOGOUT_PATH_SETTING] ?? `/logout`,\n ),\n };\n\n setSettings(loginSettings);\n return setPreferences(loginSettings);\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,16 +10,14 @@ const ModelCatalogReducer = (state = initialState, action) => {
|
|
|
10
10
|
if (!action) {
|
|
11
11
|
return state;
|
|
12
12
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
};
|
|
20
|
-
default:
|
|
21
|
-
return state;
|
|
13
|
+
if (action.type === "UPDATE_ENTRYDATE") {
|
|
14
|
+
Cache.addItem("ModelCatalogEntryDate", action.payload);
|
|
15
|
+
return {
|
|
16
|
+
...state,
|
|
17
|
+
entryDate: action.payload
|
|
18
|
+
};
|
|
22
19
|
}
|
|
20
|
+
return state;
|
|
23
21
|
};
|
|
24
22
|
export default ModelCatalogReducer;
|
|
25
23
|
//# sourceMappingURL=ModelCatalogReducer.js.map
|
|
@@ -19,16 +19,15 @@ const ModelCatalogReducer: Reducer<ModelCatalogState, ReduxAction> = (
|
|
|
19
19
|
return state;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
};
|
|
29
|
-
default:
|
|
30
|
-
return state;
|
|
22
|
+
if (action.type === "UPDATE_ENTRYDATE") {
|
|
23
|
+
Cache.addItem("ModelCatalogEntryDate", action.payload);
|
|
24
|
+
return {
|
|
25
|
+
...state,
|
|
26
|
+
entryDate: action.payload,
|
|
27
|
+
};
|
|
31
28
|
}
|
|
29
|
+
|
|
30
|
+
return state;
|
|
32
31
|
};
|
|
33
32
|
|
|
34
33
|
export default ModelCatalogReducer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelCatalogReducer.js","names":["Cache","initialState","entryDate","Date","toISOString","split","ModelCatalogReducer","state","action","type","addItem","payload"],"sources":["../../../src/redux/reducers/ModelCatalogReducer.js"],"sourcesContent":["// @flow\nimport Cache from \"../../utils/browser/Cache\";\n\nimport type { Reducer } from \"redux\";\nimport type { ReduxAction, ModelCatalogState } from \"../types\";\n\nconst initialState: ModelCatalogState = {\n entryDate: new Date().toISOString().split(\"T\")[0],\n};\n\n/**\n * Keep track of the entry date for the modelcatalog\n */\nconst ModelCatalogReducer: Reducer<ModelCatalogState, ReduxAction> = (\n state = initialState,\n action,\n) => {\n if (!action) {\n return state;\n }\n\n
|
|
1
|
+
{"version":3,"file":"ModelCatalogReducer.js","names":["Cache","initialState","entryDate","Date","toISOString","split","ModelCatalogReducer","state","action","type","addItem","payload"],"sources":["../../../src/redux/reducers/ModelCatalogReducer.js"],"sourcesContent":["// @flow\nimport Cache from \"../../utils/browser/Cache\";\n\nimport type { Reducer } from \"redux\";\nimport type { ReduxAction, ModelCatalogState } from \"../types\";\n\nconst initialState: ModelCatalogState = {\n entryDate: new Date().toISOString().split(\"T\")[0],\n};\n\n/**\n * Keep track of the entry date for the modelcatalog\n */\nconst ModelCatalogReducer: Reducer<ModelCatalogState, ReduxAction> = (\n state = initialState,\n action,\n) => {\n if (!action) {\n return state;\n }\n\n if (action.type === \"UPDATE_ENTRYDATE\") {\n Cache.addItem(\"ModelCatalogEntryDate\", action.payload);\n return {\n ...state,\n entryDate: action.payload,\n };\n }\n\n return state;\n};\n\nexport default ModelCatalogReducer;\n"],"mappings":"AACA,OAAOA,KAAK,MAAM,2BAA2B;AAK7C,MAAMC,YAA+B,GAAG;EACtCC,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;;AAED;AACA;AACA;AACA,MAAMC,mBAA4D,GAAGA,CACnEC,KAAK,GAAGN,YAAY,EACpBO,MAAM,KACH;EACH,IAAI,CAACA,MAAM,EAAE;IACX,OAAOD,KAAK;EACd;EAEA,IAAIC,MAAM,CAACC,IAAI,KAAK,kBAAkB,EAAE;IACtCT,KAAK,CAACU,OAAO,CAAC,uBAAuB,EAAEF,MAAM,CAACG,OAAO,CAAC;IACtD,OAAO;MACL,GAAGJ,KAAK;MACRL,SAAS,EAAEM,MAAM,CAACG;IACpB,CAAC;EACH;EAEA,OAAOJ,KAAK;AACd,CAAC;AAED,eAAeD,mBAAmB","ignoreList":[]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _globalThis from "@babel/runtime-corejs3/core-js/global-this";
|
|
1
2
|
import { applyMiddleware, compose, combineReducers, createStore as createReduxStore } from "redux";
|
|
2
3
|
import thunk from "redux-thunk";
|
|
3
4
|
import { routerMiddleware } from "../_router/RouterMiddleware";
|
|
@@ -9,8 +10,12 @@ import { locationChange } from "../_router/RouterActions";
|
|
|
9
10
|
const configureStore = (routerHistory, customReducers, initialState) => {
|
|
10
11
|
let composeEnhancers = compose;
|
|
11
12
|
if (process.env.NODE_ENV !== "production" && typeof window !== "undefined") {
|
|
12
|
-
composeEnhancers =
|
|
13
|
+
composeEnhancers =
|
|
14
|
+
// $FlowIssue
|
|
15
|
+
_globalThis.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
|
|
13
16
|
}
|
|
17
|
+
|
|
18
|
+
// $FlowIssue
|
|
14
19
|
const thunkExtra = {};
|
|
15
20
|
const combinedReducers = combineReducers({
|
|
16
21
|
...customReducers,
|
|
@@ -31,9 +31,12 @@ const configureStore = (
|
|
|
31
31
|
let composeEnhancers = compose;
|
|
32
32
|
|
|
33
33
|
if (process.env.NODE_ENV !== "production" && typeof window !== "undefined") {
|
|
34
|
-
composeEnhancers =
|
|
34
|
+
composeEnhancers =
|
|
35
|
+
// $FlowIssue
|
|
36
|
+
globalThis.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
|
|
35
37
|
}
|
|
36
38
|
|
|
39
|
+
// $FlowIssue
|
|
37
40
|
const thunkExtra: ThunkExtra = {};
|
|
38
41
|
|
|
39
42
|
const combinedReducers: Reducer<ReduxState, ReduxAction> = combineReducers({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configureStore.js","names":["applyMiddleware","compose","combineReducers","createStore","createReduxStore","thunk","routerMiddleware","modularUIMiddleware","createReducer","locationChange","configureStore","routerHistory","customReducers","initialState","composeEnhancers","process","env","NODE_ENV","window","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","thunkExtra","combinedReducers","middleware","withExtraArgument","enhancers","store","subscribe","router","dispatch","location"],"sources":["../../../src/redux/store/configureStore.js"],"sourcesContent":["// @flow\nimport {\n applyMiddleware,\n compose,\n combineReducers,\n createStore as createReduxStore,\n} from \"redux\";\nimport thunk from \"redux-thunk\";\n\nimport { routerMiddleware } from \"../_router/RouterMiddleware\";\nimport { modularUIMiddleware } from \"../_modularui/ModularUIMiddleware\";\n\nimport { createReducer } from \"../reducers/createReducer\";\nimport { locationChange } from \"../_router/RouterActions\";\n\nimport type { RouterHistory } from \"react-router\";\nimport type { ReduxAction, ReduxState, ReduxStore } from \"../types\";\nimport type { Reducer } from \"redux\";\n\ntype ThunkExtra = {\n subscribe?: $PropertyType<ReduxStore, \"subscribe\">,\n};\n\n/**\n */\nconst configureStore = (\n routerHistory: RouterHistory,\n customReducers?: Object,\n initialState?: $Shape<ReduxState>,\n): { routerHistory: RouterHistory, store: ReduxStore } => {\n let composeEnhancers = compose;\n\n if (process.env.NODE_ENV !== \"production\" && typeof window !== \"undefined\") {\n composeEnhancers
|
|
1
|
+
{"version":3,"file":"configureStore.js","names":["applyMiddleware","compose","combineReducers","createStore","createReduxStore","thunk","routerMiddleware","modularUIMiddleware","createReducer","locationChange","configureStore","routerHistory","customReducers","initialState","composeEnhancers","process","env","NODE_ENV","window","_globalThis","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","thunkExtra","combinedReducers","middleware","withExtraArgument","enhancers","store","subscribe","router","dispatch","location"],"sources":["../../../src/redux/store/configureStore.js"],"sourcesContent":["// @flow\nimport {\n applyMiddleware,\n compose,\n combineReducers,\n createStore as createReduxStore,\n} from \"redux\";\nimport thunk from \"redux-thunk\";\n\nimport { routerMiddleware } from \"../_router/RouterMiddleware\";\nimport { modularUIMiddleware } from \"../_modularui/ModularUIMiddleware\";\n\nimport { createReducer } from \"../reducers/createReducer\";\nimport { locationChange } from \"../_router/RouterActions\";\n\nimport type { RouterHistory } from \"react-router\";\nimport type { ReduxAction, ReduxState, ReduxStore } from \"../types\";\nimport type { Reducer } from \"redux\";\n\ntype ThunkExtra = {\n subscribe?: $PropertyType<ReduxStore, \"subscribe\">,\n};\n\n/**\n */\nconst configureStore = (\n routerHistory: RouterHistory,\n customReducers?: Object,\n initialState?: $Shape<ReduxState>,\n): { routerHistory: RouterHistory, store: ReduxStore } => {\n let composeEnhancers = compose;\n\n if (process.env.NODE_ENV !== \"production\" && typeof window !== \"undefined\") {\n composeEnhancers =\n // $FlowIssue\n globalThis.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n }\n\n // $FlowIssue\n const thunkExtra: ThunkExtra = {};\n\n const combinedReducers: Reducer<ReduxState, ReduxAction> = combineReducers({\n ...customReducers,\n ...createReducer(),\n });\n\n const middleware = applyMiddleware(\n modularUIMiddleware,\n routerMiddleware(routerHistory),\n thunk.withExtraArgument(thunkExtra),\n );\n\n const enhancers = composeEnhancers(middleware);\n\n const store: ReduxStore = createReduxStore(\n combinedReducers,\n initialState,\n enhancers,\n );\n\n // Populate the extra argument with the store's subscribe method -> use to wait on store updates\n thunkExtra.subscribe = store.subscribe;\n\n if (!initialState?.router) {\n store.dispatch(locationChange(routerHistory.location, \"PUSH\"));\n }\n\n return { routerHistory, store };\n};\n\nexport default configureStore;\n"],"mappings":";AACA,SACEA,eAAe,EACfC,OAAO,EACPC,eAAe,EACfC,WAAW,IAAIC,gBAAgB,QAC1B,OAAO;AACd,OAAOC,KAAK,MAAM,aAAa;AAE/B,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASC,mBAAmB,QAAQ,mCAAmC;AAEvE,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,cAAc,QAAQ,0BAA0B;AAUzD;AACA;AACA,MAAMC,cAAc,GAAGA,CACrBC,aAA4B,EAC5BC,cAAuB,EACvBC,YAAiC,KACuB;EACxD,IAAIC,gBAAgB,GAAGb,OAAO;EAE9B,IAAIc,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;IAC1EJ,gBAAgB;IACd;IACAK,WAAA,CAAWC,oCAAoC,IAAInB,OAAO;EAC9D;;EAEA;EACA,MAAMoB,UAAsB,GAAG,CAAC,CAAC;EAEjC,MAAMC,gBAAkD,GAAGpB,eAAe,CAAC;IACzE,GAAGU,cAAc;IACjB,GAAGJ,aAAa,CAAC;EACnB,CAAC,CAAC;EAEF,MAAMe,UAAU,GAAGvB,eAAe,CAChCO,mBAAmB,EACnBD,gBAAgB,CAACK,aAAa,CAAC,EAC/BN,KAAK,CAACmB,iBAAiB,CAACH,UAAU,CACpC,CAAC;EAED,MAAMI,SAAS,GAAGX,gBAAgB,CAACS,UAAU,CAAC;EAE9C,MAAMG,KAAiB,GAAGtB,gBAAgB,CACxCkB,gBAAgB,EAChBT,YAAY,EACZY,SACF,CAAC;;EAED;EACAJ,UAAU,CAACM,SAAS,GAAGD,KAAK,CAACC,SAAS;EAEtC,IAAI,CAACd,YAAY,EAAEe,MAAM,EAAE;IACzBF,KAAK,CAACG,QAAQ,CAACpB,cAAc,CAACE,aAAa,CAACmB,QAAQ,EAAE,MAAM,CAAC,CAAC;EAChE;EAEA,OAAO;IAAEnB,aAAa;IAAEe;EAAM,CAAC;AACjC,CAAC;AAED,eAAehB,cAAc","ignoreList":[]}
|
package/esm/redux/types.js.flow
CHANGED
|
@@ -231,7 +231,16 @@ export type ReduxState = {
|
|
|
231
231
|
};
|
|
232
232
|
|
|
233
233
|
export type GetState = () => ReduxState;
|
|
234
|
-
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* A function that accepts a listener callback and returns an unsubscribe function.
|
|
237
|
+
*/
|
|
238
|
+
export type Subscribe = (listener: () => void) => () => void;
|
|
239
|
+
|
|
240
|
+
export type ThunkExtra = {
|
|
241
|
+
subscribe: Subscribe,
|
|
242
|
+
...
|
|
243
|
+
};
|
|
235
244
|
|
|
236
245
|
// 1. Define ThunkAction first.
|
|
237
246
|
// We use 'any' for Dispatch here temporarily to break the circularity
|
package/esm/redux/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../src/redux/types.js"],"sourcesContent":["// @flow\nimport type { Store } from \"redux\";\n\nimport type ErrorResponse from \"../models/error/ErrorResponse\";\n\nimport type FormModel from \"../models/form/FormModel\";\nimport typeof {\n NOTIFICATION_TYPES,\n AUTOSAVE_STATUS,\n} from \"../constants/Constants\";\n\nimport type { MessageObject } from \"../i18n/types\";\nimport type {\n I18nState,\n UpdateLocaleAction,\n SetLocalesAction,\n} from \"./_i18n/types\";\nimport type {\n ModularUIState,\n ModularUIAction,\n UpdateStatusAction,\n SetModelAction,\n UpdateModelAction,\n UpdateFormAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n InitModelAction,\n} from \"./_modularui/types\";\nimport type {\n RouterState,\n LocationChangeAction,\n PushAction,\n ReplaceAction,\n GoAction,\n GoBackAction,\n GoForwardAction,\n} from \"./_router/types\";\n\nexport type PreferenceValue =\n | null\n | string\n | boolean\n | { [key: string]: any }\n | Array<PreferenceValue>;\n\nexport type UpdateFormOptions = {\n autosubmit: boolean,\n autosave: boolean,\n autoupdate: boolean,\n forceUpdate?: boolean,\n /** Default true: Activate/deactivate the form object validate by an update */\n validate?: boolean,\n};\n\nexport type NoAction = {\n type: \"NO_ACTION\",\n};\n\nexport type SaveErrorAction = {\n type: \"SAVE_ERROR\",\n payload: ErrorResponse,\n};\n\nexport type ShowModalAction = {\n type: \"SHOW_MODAL\",\n payload: string,\n};\n\nexport type CloseModalAction = {\n type: \"CLOSE_MODAL\",\n payload: string,\n};\n\nexport type DismissNotificationAction = {\n type: \"DISMISS_NOTIFICATION\",\n};\nexport type ShowNotificationAction = {\n type: \"SHOW_NOTIFICATION\",\n payload: {\n type: $Keys<NOTIFICATION_TYPES>,\n message: MessageObject,\n error: ?ErrorResponse,\n },\n};\n\nexport type SetPreferenceAction = {\n type: \"SET_PREFERENCE\",\n payload: { [name: string]: PreferenceValue },\n};\nexport type SetPreferencesAction = {\n type: \"SET_PREFERENCES\",\n payload: { [name: string]: PreferenceValue },\n};\n\nexport type StartProgressAction = {\n type: \"START_PROGRESS\",\n};\nexport type FinishProgressAction = {\n type: \"FINISH_PROGRESS\",\n};\nexport type ResetProgressAction = {\n type: \"RESET_PROGRESS\",\n};\nexport type UpdateProgressAction = {\n type: \"UPDATE_PROGRESS\",\n payload: { percentComplete: number },\n};\n\nexport type SendAuthenticationErrorAction = {\n type: \"AUTHENTICATION_ERROR\",\n payload: string,\n};\n\nexport type ResetAuthErrorsAction = {\n type: \"AUTHENTICATION_RESET_ERRORS\",\n};\n\nexport type LoginSuccessAction = {\n type: \"AUTHENTICATION_SUCCESS\",\n};\n\nexport type ChangePasswordAction = {\n type: \"CHANGE_PASSWORD\",\n};\n\nexport type LogoutSuccessAction = {\n type: \"AUTHENTICATION_LOGOUT\",\n};\n\nexport type UpdateAutosaveAction = {\n type: \"UPDATE_AUTOSAVE_STATUS\",\n payload: {\n status: $Keys<AUTOSAVE_STATUS>,\n model: FormModel,\n },\n};\n\nexport type UpdateEntryDateAction = {\n type: \"UPDATE_ENTRYDATE\",\n payload: ISO_DATE,\n};\n\nexport type ReduxAction =\n | UpdateStatusAction\n | SetModelAction\n | InitModelAction\n | UpdateModelAction\n | UpdateFormAction\n | RemoveModelByKeyAction\n | ResetModularUIAction\n | SaveErrorAction\n | UpdateLocaleAction\n | SetLocalesAction\n | ShowModalAction\n | CloseModalAction\n | DismissNotificationAction\n | ShowNotificationAction\n | SetPreferenceAction\n | SetPreferencesAction\n | StartProgressAction\n | FinishProgressAction\n | ResetProgressAction\n | UpdateProgressAction\n | ResetAuthErrorsAction\n | SendAuthenticationErrorAction\n | LoginSuccessAction\n | ChangePasswordAction\n | LogoutSuccessAction\n | UpdateAutosaveAction\n | UpdateEntryDateAction\n | LocationChangeAction\n | PushAction\n | ReplaceAction\n | GoAction\n | GoBackAction\n | GoForwardAction\n | ModularUIAction\n | NoAction;\n\n// Redux state\nexport type AuthState = {\n +mustChangePassword: boolean,\n +error: ?string,\n};\n\nexport type ErrorState = null | ErrorResponse;\n\nexport type ModalState = {\n +key: string,\n +visible: boolean,\n +size?: string,\n};\n\nexport type ModalsState = {\n +modals: Array<ModalState>,\n};\n\nexport type NotificationState = {\n +render: boolean,\n +messageType: string | null,\n +message: MessageObject | null,\n +error: ?ErrorResponse | null,\n};\n\nexport type PreferencesState = {\n +[name: string]: PreferenceValue,\n};\n\nexport type ProgressIndicatorState = {\n +count: number,\n +timestamp: number,\n +percentComplete: number,\n};\n\nexport type ModelCatalogState = {\n entryDate: ISO_DATE | null,\n};\n\nexport type ReduxState = {\n +router: RouterState,\n +modularui: ModularUIState,\n +i18n: I18nState,\n +auth: AuthState,\n +modelcatalog: ModelCatalogState,\n +error: ErrorState,\n +modals: ModalsState,\n +notification: NotificationState,\n +progressindicator: ProgressIndicatorState,\n +preferences: PreferencesState,\n ...\n};\n\nexport type GetState = () => ReduxState;\nexport type ThunkExtra = {
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../src/redux/types.js"],"sourcesContent":["// @flow\nimport type { Store } from \"redux\";\n\nimport type ErrorResponse from \"../models/error/ErrorResponse\";\n\nimport type FormModel from \"../models/form/FormModel\";\nimport typeof {\n NOTIFICATION_TYPES,\n AUTOSAVE_STATUS,\n} from \"../constants/Constants\";\n\nimport type { MessageObject } from \"../i18n/types\";\nimport type {\n I18nState,\n UpdateLocaleAction,\n SetLocalesAction,\n} from \"./_i18n/types\";\nimport type {\n ModularUIState,\n ModularUIAction,\n UpdateStatusAction,\n SetModelAction,\n UpdateModelAction,\n UpdateFormAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n InitModelAction,\n} from \"./_modularui/types\";\nimport type {\n RouterState,\n LocationChangeAction,\n PushAction,\n ReplaceAction,\n GoAction,\n GoBackAction,\n GoForwardAction,\n} from \"./_router/types\";\n\nexport type PreferenceValue =\n | null\n | string\n | boolean\n | { [key: string]: any }\n | Array<PreferenceValue>;\n\nexport type UpdateFormOptions = {\n autosubmit: boolean,\n autosave: boolean,\n autoupdate: boolean,\n forceUpdate?: boolean,\n /** Default true: Activate/deactivate the form object validate by an update */\n validate?: boolean,\n};\n\nexport type NoAction = {\n type: \"NO_ACTION\",\n};\n\nexport type SaveErrorAction = {\n type: \"SAVE_ERROR\",\n payload: ErrorResponse,\n};\n\nexport type ShowModalAction = {\n type: \"SHOW_MODAL\",\n payload: string,\n};\n\nexport type CloseModalAction = {\n type: \"CLOSE_MODAL\",\n payload: string,\n};\n\nexport type DismissNotificationAction = {\n type: \"DISMISS_NOTIFICATION\",\n};\nexport type ShowNotificationAction = {\n type: \"SHOW_NOTIFICATION\",\n payload: {\n type: $Keys<NOTIFICATION_TYPES>,\n message: MessageObject,\n error: ?ErrorResponse,\n },\n};\n\nexport type SetPreferenceAction = {\n type: \"SET_PREFERENCE\",\n payload: { [name: string]: PreferenceValue },\n};\nexport type SetPreferencesAction = {\n type: \"SET_PREFERENCES\",\n payload: { [name: string]: PreferenceValue },\n};\n\nexport type StartProgressAction = {\n type: \"START_PROGRESS\",\n};\nexport type FinishProgressAction = {\n type: \"FINISH_PROGRESS\",\n};\nexport type ResetProgressAction = {\n type: \"RESET_PROGRESS\",\n};\nexport type UpdateProgressAction = {\n type: \"UPDATE_PROGRESS\",\n payload: { percentComplete: number },\n};\n\nexport type SendAuthenticationErrorAction = {\n type: \"AUTHENTICATION_ERROR\",\n payload: string,\n};\n\nexport type ResetAuthErrorsAction = {\n type: \"AUTHENTICATION_RESET_ERRORS\",\n};\n\nexport type LoginSuccessAction = {\n type: \"AUTHENTICATION_SUCCESS\",\n};\n\nexport type ChangePasswordAction = {\n type: \"CHANGE_PASSWORD\",\n};\n\nexport type LogoutSuccessAction = {\n type: \"AUTHENTICATION_LOGOUT\",\n};\n\nexport type UpdateAutosaveAction = {\n type: \"UPDATE_AUTOSAVE_STATUS\",\n payload: {\n status: $Keys<AUTOSAVE_STATUS>,\n model: FormModel,\n },\n};\n\nexport type UpdateEntryDateAction = {\n type: \"UPDATE_ENTRYDATE\",\n payload: ISO_DATE,\n};\n\nexport type ReduxAction =\n | UpdateStatusAction\n | SetModelAction\n | InitModelAction\n | UpdateModelAction\n | UpdateFormAction\n | RemoveModelByKeyAction\n | ResetModularUIAction\n | SaveErrorAction\n | UpdateLocaleAction\n | SetLocalesAction\n | ShowModalAction\n | CloseModalAction\n | DismissNotificationAction\n | ShowNotificationAction\n | SetPreferenceAction\n | SetPreferencesAction\n | StartProgressAction\n | FinishProgressAction\n | ResetProgressAction\n | UpdateProgressAction\n | ResetAuthErrorsAction\n | SendAuthenticationErrorAction\n | LoginSuccessAction\n | ChangePasswordAction\n | LogoutSuccessAction\n | UpdateAutosaveAction\n | UpdateEntryDateAction\n | LocationChangeAction\n | PushAction\n | ReplaceAction\n | GoAction\n | GoBackAction\n | GoForwardAction\n | ModularUIAction\n | NoAction;\n\n// Redux state\nexport type AuthState = {\n +mustChangePassword: boolean,\n +error: ?string,\n};\n\nexport type ErrorState = null | ErrorResponse;\n\nexport type ModalState = {\n +key: string,\n +visible: boolean,\n +size?: string,\n};\n\nexport type ModalsState = {\n +modals: Array<ModalState>,\n};\n\nexport type NotificationState = {\n +render: boolean,\n +messageType: string | null,\n +message: MessageObject | null,\n +error: ?ErrorResponse | null,\n};\n\nexport type PreferencesState = {\n +[name: string]: PreferenceValue,\n};\n\nexport type ProgressIndicatorState = {\n +count: number,\n +timestamp: number,\n +percentComplete: number,\n};\n\nexport type ModelCatalogState = {\n entryDate: ISO_DATE | null,\n};\n\nexport type ReduxState = {\n +router: RouterState,\n +modularui: ModularUIState,\n +i18n: I18nState,\n +auth: AuthState,\n +modelcatalog: ModelCatalogState,\n +error: ErrorState,\n +modals: ModalsState,\n +notification: NotificationState,\n +progressindicator: ProgressIndicatorState,\n +preferences: PreferencesState,\n ...\n};\n\nexport type GetState = () => ReduxState;\n\n/**\n * A function that accepts a listener callback and returns an unsubscribe function.\n */\nexport type Subscribe = (listener: () => void) => () => void;\n\nexport type ThunkExtra = {\n subscribe: Subscribe,\n ...\n};\n\n// 1. Define ThunkAction first.\n// We use 'any' for Dispatch here temporarily to break the circularity\n// or use the specialized function type.\nexport type ThunkAction<R = any> = (\n dispatch: Dispatch,\n getState: GetState,\n extra: ThunkExtra,\n) => R;\n\nexport type PromiseAction = Promise<ReduxAction | ThunkAction<any>>;\n\n// 2. Define Dispatch as a naked function type.\n// This is much more reliable in modern Flow than DispatchAPI<...>.\nexport type Dispatch = (\n action: ReduxAction | ThunkAction<any> | PromiseAction,\n) => any;\n\n// 3. Update ReduxStore to use the ReduxAction for the base reducer\n// but our custom Dispatch for the store instance.\nexport type ReduxStore = Store<ReduxState, ReduxAction, Dispatch>;\n\n// 4. Clean up PossibleAction if you still use it elsewhere\nexport type PossibleAction = ReduxAction | ThunkAction<any> | PromiseAction;\n\nexport type CustomReducers = { [reducerKey: string]: any };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@ import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
|
2
2
|
import _JSON$stringify from "@babel/runtime-corejs3/core-js-stable/json/stringify";
|
|
3
3
|
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
4
4
|
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
5
|
+
import _globalThis from "@babel/runtime-corejs3/core-js/global-this";
|
|
5
6
|
import _Object$entries from "@babel/runtime-corejs3/core-js-stable/object/entries";
|
|
6
7
|
import _startsWithInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/starts-with";
|
|
7
8
|
const RESOURCE_CACHE_PREFIX = "res:";
|
|
@@ -101,7 +102,8 @@ class Cache {
|
|
|
101
102
|
/**
|
|
102
103
|
*/
|
|
103
104
|
loadOtherBrowserTabs(callback) {
|
|
104
|
-
|
|
105
|
+
// $FlowIssue
|
|
106
|
+
_globalThis.addEventListener("storage", e => {
|
|
105
107
|
this.sendSessionStorage(e);
|
|
106
108
|
this.receiveSessionStorage(e, callback);
|
|
107
109
|
});
|
|
@@ -110,7 +110,8 @@ class Cache {
|
|
|
110
110
|
/**
|
|
111
111
|
*/
|
|
112
112
|
loadOtherBrowserTabs(callback: Function) {
|
|
113
|
-
|
|
113
|
+
// $FlowIssue
|
|
114
|
+
globalThis.addEventListener("storage", (e) => {
|
|
114
115
|
this.sendSessionStorage(e);
|
|
115
116
|
this.receiveSessionStorage(e, callback);
|
|
116
117
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cache.js","names":["RESOURCE_CACHE_PREFIX","Cache","constructor","_defineProperty","sessionStorage","_cache","createResourceKey","requestArgs","resourceKey","url","params","locale","getItem","key","cache","cacheItem","JSON","parse","error","hasItem","addItem","value","stringValue","_JSON$stringify","setItem","removeItem","clear","pattern","_context","_filterInstanceProperty","_Object$keys","call","k","RegExp","test","forEach","loadOtherBrowserTabs","callback","
|
|
1
|
+
{"version":3,"file":"Cache.js","names":["RESOURCE_CACHE_PREFIX","Cache","constructor","_defineProperty","sessionStorage","_cache","createResourceKey","requestArgs","resourceKey","url","params","locale","getItem","key","cache","cacheItem","JSON","parse","error","hasItem","addItem","value","stringValue","_JSON$stringify","setItem","removeItem","clear","pattern","_context","_filterInstanceProperty","_Object$keys","call","k","RegExp","test","forEach","loadOtherBrowserTabs","callback","_globalThis","addEventListener","e","sendSessionStorage","receiveSessionStorage","length","localStorage","Date","now","toString","_context2","newData","newValue","_Object$entries","_startsWithInstanceProperty"],"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 // $FlowIssue\n globalThis.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":";;;;;;;AAGA,MAAMA,qBAAqB,GAAG,MAAM;;AAEpC;AACA;AACA;AACA,MAAMC,KAAK,CAAC;EAGV;AACF;EACEC,WAAWA,CAAA,EAAG;IAAAC,eAAA;IACZ,IAAI,OAAOC,cAAc,KAAK,WAAW,EAAE;MACzC,IAAI,CAACC,MAAM,GAAGD,cAAc;IAC9B;EACF;;EAEA;AACF;AACA;AACA;EACEE,iBAAiBA,CAACC,WAA2B,EAAU;IACrD,IAAIC,WAAW,GAAGD,WAAW,CAACE,GAAG;IAEjC,IAAIF,WAAW,CAACG,MAAM,EAAE;MACtBF,WAAW,IAAI,IAAID,WAAW,CAACG,MAAM,EAAE;IACzC;IAEA,IAAIH,WAAW,CAACI,MAAM,EAAE;MACtBH,WAAW,IAAI,IAAID,WAAW,CAACI,MAAM,EAAE;IACzC;IAEA,OAAO,GAAGX,qBAAqB,GAAGQ,WAAW,EAAE;EACjD;;EAEA;AACF;AACA;EACEI,OAAOA,CAACC,GAAW,EAAO;IACxB,MAAMC,KAAK,GAAG,IAAI,CAACT,MAAM;IAEzB,IAAI,CAACS,KAAK,EAAE;MACV,OAAO,IAAI;IACb;IAEA,MAAMC,SAAS,GAAGD,KAAK,CAACF,OAAO,CAACC,GAAG,CAAC;IAEpC,IAAI,CAACE,SAAS,EAAE;MACd,OAAO,IAAI;IACb;IAEA,IAAI;MACF,OAAOC,IAAI,CAACC,KAAK,CAACF,SAAS,CAAC;IAC9B,CAAC,CAAC,OAAOG,KAAK,EAAE;MACd,OAAO,IAAI,CAACb,MAAM,CAACO,OAAO,CAACC,GAAG,CAAC;IACjC;EACF;;EAEA;AACF;AACA;EACEM,OAAOA,CAACN,GAAW,EAAW;IAC5B,OAAO,IAAI,CAACD,OAAO,CAACC,GAAG,CAAC,KAAK,IAAI;EACnC;;EAEA;AACF;AACA;EACEO,OAAOA,CAACP,GAAW,EAAEQ,KAAsB,EAAE;IAC3C,MAAMC,WAAW,GACf,OAAOD,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGE,eAAA,CAAeF,KAAK,CAAC;IAE3D,IAAI,CAAChB,MAAM,CAACmB,OAAO,CAACX,GAAG,EAAES,WAAW,CAAC;EACvC;;EAEA;AACF;EACEE,OAAOA,CAACX,GAAW,EAAEQ,KAAsB,EAAE;IAC3C,IAAI,CAACD,OAAO,CAACP,GAAG,EAAEQ,KAAK,CAAC;EAC1B;;EAEA;AACF;EACEI,UAAUA,CAACZ,GAAW,EAAE;IACtB,IAAI,CAACR,MAAM,CAACoB,UAAU,CAACZ,GAAG,CAAC;EAC7B;;EAEA;AACF;AACA;EACEa,KAAKA,CAACC,OAAgB,EAAE;IACtB,IAAI,CAAC,IAAI,CAACtB,MAAM,EAAE;MAChB;IACF;IAEA,IAAIsB,OAAO,EAAE;MAAA,IAAAC,QAAA;MACXC,uBAAA,CAAAD,QAAA,GAAAE,YAAA,CAAY,IAAI,CAACzB,MAAM,CAAC,EAAA0B,IAAA,CAAAH,QAAA,EACbI,CAAC,IAAML,OAAO,GAAG,IAAIM,MAAM,CAACN,OAAO,CAAC,CAACO,IAAI,CAACF,CAAC,CAAC,GAAG,IAAK,CAAC,CAC7DG,OAAO,CAAEH,CAAC,IAAK,IAAI,CAAC3B,MAAM,CAACoB,UAAU,CAACO,CAAC,CAAC,CAAC;IAC9C,CAAC,MAAM;MACL,IAAI,CAAC3B,MAAM,CAACqB,KAAK,CAAC,CAAC;IACrB;EACF;;EAEA;EACA;EACA;EACA;AACF;EACEU,oBAAoBA,CAACC,QAAkB,EAAE;IACvC;IACAC,WAAA,CAAWC,gBAAgB,CAAC,SAAS,EAAGC,CAAC,IAAK;MAC5C,IAAI,CAACC,kBAAkB,CAACD,CAAC,CAAC;MAC1B,IAAI,CAACE,qBAAqB,CAACF,CAAC,EAAEH,QAAQ,CAAC;IACzC,CAAC,CAAC;IAEF,IAAI,IAAI,CAAChC,MAAM,CAACsC,MAAM,KAAK,CAAC,EAAE;MAC5B;MACAC,YAAY,CAACpB,OAAO,CAAC,mBAAmB,EAAEqB,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,CAAC;IAClE;EACF;;EAEA;AACF;EACEN,kBAAkBA,CAACD,CAAe,EAAE;IAClC,IAAIA,CAAC,CAAC3B,GAAG,KAAK,mBAAmB,EAAE;MACjC+B,YAAY,CAACpB,OAAO,CAAC,gBAAgB,EAAED,eAAA,CAAe,IAAI,CAAClB,MAAM,CAAC,CAAC;MACnEuC,YAAY,CAACnB,UAAU,CAAC,gBAAgB,CAAC;IAC3C;EACF;;EAEA;AACF;EACEiB,qBAAqBA,CAACF,CAAe,EAAEH,QAAkB,EAAO;IAC9D,IAAIG,CAAC,CAAC3B,GAAG,KAAK,gBAAgB,IAAI,CAAC,IAAI,CAACD,OAAO,CAAC,sBAAsB,CAAC,EAAE;MAAA,IAAAoC,SAAA;MACvE;MACA,MAAMC,OAAO,GAAGT,CAAC,CAACU,QAAQ,GAAGlC,IAAI,CAACC,KAAK,CAACuB,CAAC,CAACU,QAAQ,CAAC,GAAG,CAAC,CAAC;MACxDrB,uBAAA,CAAAmB,SAAA,GAAAG,eAAA,CAAeF,OAAO,CAAC,EAAAlB,IAAA,CAAAiB,SAAA,EAEnB,CAAC,CAACnC,GAAG,CAAC,KACJ,CAAC,IAAI,CAACM,OAAO,CAACN,GAAG,CAAC,IAAI,CAACuC,2BAAA,CAAAvC,GAAG,EAAAkB,IAAA,CAAHlB,GAAG,EAAYb,qBAAqB,CAC/D,CAAC,CACAmC,OAAO,CAAC,CAAC,CAACtB,GAAG,EAAEQ,KAAK,CAAC,KAAK;QACzB,IAAI,CAACD,OAAO,CAACP,GAAG,EAAEQ,KAAK,CAAC;MAC1B,CAAC,CAAC;MAEJ,IAAI,CAACG,OAAO,CAAC,sBAAsB,EAAEqB,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,CAAC;MAE3D,OAAOV,QAAQ,CAAC,CAAC;IACnB;IAEA,OAAO,IAAI;EACb;AACF;AAEA,eAAgB,IAAIpC,KAAK,CAAC,CAAC","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@ import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
|
2
2
|
import _sortInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/sort";
|
|
3
3
|
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
4
4
|
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
5
|
+
import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/includes";
|
|
5
6
|
import _Math$trunc from "@babel/runtime-corejs3/core-js-stable/math/trunc";
|
|
6
7
|
import _padStartInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/pad-start";
|
|
7
8
|
import { format } from "date-fns/format";
|
|
@@ -249,7 +250,7 @@ class BaseDateTimeUtil {
|
|
|
249
250
|
return format(newDate, "HH:mm");
|
|
250
251
|
});
|
|
251
252
|
const time = format(dateTime, "HH:mm");
|
|
252
|
-
return a.
|
|
253
|
+
return _includesInstanceProperty(a).call(a, time);
|
|
253
254
|
}
|
|
254
255
|
|
|
255
256
|
//////////// CALCULATIONS
|
|
@@ -523,10 +524,10 @@ class BaseDateTimeUtil {
|
|
|
523
524
|
if (isValid(parsedDate)) {
|
|
524
525
|
const dateOffset = this.toFormat(parsedDate, DATETIME_OFFSET_FORMAT);
|
|
525
526
|
const offsets = this.getTimezoneOffsets();
|
|
526
|
-
if (
|
|
527
|
-
return offsets.daylight;
|
|
528
|
-
} else if (
|
|
529
|
-
return offsets.standard;
|
|
527
|
+
if (offsets.daylight?.value === dateOffset) {
|
|
528
|
+
return offsets.daylight ?? null;
|
|
529
|
+
} else if (offsets.standard?.value === dateOffset) {
|
|
530
|
+
return offsets.standard ?? null;
|
|
530
531
|
}
|
|
531
532
|
}
|
|
532
533
|
return null;
|
|
@@ -366,7 +366,7 @@ class BaseDateTimeUtil {
|
|
|
366
366
|
return format(newDate, "HH:mm");
|
|
367
367
|
});
|
|
368
368
|
const time = format(dateTime, "HH:mm");
|
|
369
|
-
return a.
|
|
369
|
+
return a.includes(time);
|
|
370
370
|
}
|
|
371
371
|
|
|
372
372
|
//////////// CALCULATIONS
|
|
@@ -768,16 +768,10 @@ class BaseDateTimeUtil {
|
|
|
768
768
|
if (isValid(parsedDate)) {
|
|
769
769
|
const dateOffset = this.toFormat(parsedDate, DATETIME_OFFSET_FORMAT);
|
|
770
770
|
const offsets = this.getTimezoneOffsets();
|
|
771
|
-
if (
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
return offsets.daylight;
|
|
776
|
-
} else if (
|
|
777
|
-
typeof offsets.standard !== "undefined" &&
|
|
778
|
-
offsets.standard.value === dateOffset
|
|
779
|
-
) {
|
|
780
|
-
return offsets.standard;
|
|
771
|
+
if (offsets.daylight?.value === dateOffset) {
|
|
772
|
+
return offsets.daylight ?? null;
|
|
773
|
+
} else if (offsets.standard?.value === dateOffset) {
|
|
774
|
+
return offsets.standard ?? null;
|
|
781
775
|
}
|
|
782
776
|
}
|
|
783
777
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeUtil.js","names":["format","isAfter","isBefore","isSameDay","isValid","parse","add","sub","set","startOfMonth","endOfMonth","startOfWeek","getHours","getMinutes","getDay","getWeek","enGB","nl","tz","soft","DATETIME_OFFSET_FORMAT","DEFAULT_FIRST_WEEK_CONTAINS_DATE","DEFAULT_WEEK_STARTS_ON","getEnabledLocales","getSetting","IS_GRAALJS","isIncludeTimeOffsetInDateTimes","ISO_DATE_FORMAT","ISO_DATETIME_FORMAT","ISO_TIME_FORMAT","ISO_TIMESTAMP_FORMAT","getCookie","BaseDateTimeUtil","constructor","isoFormat","doOffsets","_defineProperty","Intl","DateTimeFormat","resolvedOptions","timeZone","_isoFormat","_doOffsets","getOptions","weekStartsOn","firstWeekContainsDate","getIsoFormat","convertFormat","javaFormat","_context","javaToUTS35Map","ZZZ","ZZ","Z","uts35Format","sortedKeys","_sortInstanceProperty","_Object$keys","call","a","b","length","javaToken","uts35Token","regex","RegExp","replace","getLocale","defaultLocale","locale","toDate","date","inputFormat","Date","in","getDateFnsContext","toFormat","targetFormat","parsedDate","toISO","sourceFormat","now","hasFormat","formattedValue","isOutsideRange","toUpperCase","inputDate","afterISODate","isSameOrAfter","isSame","beforeISODate","isSameOrBefore","compareDate","getTime","isOther","isWeekend","SATURDAY_NUMBER","SUNDAY_NUMBER","weekDay","isAmbiguous","dateTime","t","_mapInstanceProperty","x","newDate","minutes","time","indexOf","_calculate","calculationFn","property","value","addSeconds","amount","addMinutes","addHours","addDays","addWeeks","addMonths","addYears","subtractSeconds","subtractMinutes","subtractHours","subtractDays","subtractWeeks","subtractMonths","subtractYears","_get","method","options","_set","setYear","year","setMonth","month","setDay","day","setHour","hour","setMinute","minute","setSecond","second","setMilliseconds","millisecond","setTime","hours","seconds","milliseconds","getTimeZone","_timeZone","setTimeZone","undefined","getOffset","dateOffset","offsets","getTimezoneOffsets","daylight","standard","createOffsetObject","info","_context2","_context3","sign","offset","absOffset","Math","abs","_Math$trunc","round","offsetString","_padStartInstanceProperty","String","label","name","abbr","timezone","DateUtil","DateTimeUtil","TimeUtil","TimestampUtil"],"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":[]}
|
|
1
|
+
{"version":3,"file":"DateTimeUtil.js","names":["format","isAfter","isBefore","isSameDay","isValid","parse","add","sub","set","startOfMonth","endOfMonth","startOfWeek","getHours","getMinutes","getDay","getWeek","enGB","nl","tz","soft","DATETIME_OFFSET_FORMAT","DEFAULT_FIRST_WEEK_CONTAINS_DATE","DEFAULT_WEEK_STARTS_ON","getEnabledLocales","getSetting","IS_GRAALJS","isIncludeTimeOffsetInDateTimes","ISO_DATE_FORMAT","ISO_DATETIME_FORMAT","ISO_TIME_FORMAT","ISO_TIMESTAMP_FORMAT","getCookie","BaseDateTimeUtil","constructor","isoFormat","doOffsets","_defineProperty","Intl","DateTimeFormat","resolvedOptions","timeZone","_isoFormat","_doOffsets","getOptions","weekStartsOn","firstWeekContainsDate","getIsoFormat","convertFormat","javaFormat","_context","javaToUTS35Map","ZZZ","ZZ","Z","uts35Format","sortedKeys","_sortInstanceProperty","_Object$keys","call","a","b","length","javaToken","uts35Token","regex","RegExp","replace","getLocale","defaultLocale","locale","toDate","date","inputFormat","Date","in","getDateFnsContext","toFormat","targetFormat","parsedDate","toISO","sourceFormat","now","hasFormat","formattedValue","isOutsideRange","toUpperCase","inputDate","afterISODate","isSameOrAfter","isSame","beforeISODate","isSameOrBefore","compareDate","getTime","isOther","isWeekend","SATURDAY_NUMBER","SUNDAY_NUMBER","weekDay","isAmbiguous","dateTime","t","_mapInstanceProperty","x","newDate","minutes","time","_includesInstanceProperty","_calculate","calculationFn","property","value","addSeconds","amount","addMinutes","addHours","addDays","addWeeks","addMonths","addYears","subtractSeconds","subtractMinutes","subtractHours","subtractDays","subtractWeeks","subtractMonths","subtractYears","_get","method","options","_set","setYear","year","setMonth","month","setDay","day","setHour","hour","setMinute","minute","setSecond","second","setMilliseconds","millisecond","setTime","hours","seconds","milliseconds","getTimeZone","_timeZone","setTimeZone","undefined","getOffset","dateOffset","offsets","getTimezoneOffsets","daylight","standard","createOffsetObject","info","_context2","_context3","sign","offset","absOffset","Math","abs","_Math$trunc","round","offsetString","_padStartInstanceProperty","String","label","name","abbr","timezone","DateUtil","DateTimeUtil","TimeUtil","TimestampUtil"],"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.includes(time);\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 (offsets.daylight?.value === dateOffset) {\n return offsets.daylight ?? null;\n } else if (offsets.standard?.value === dateOffset) {\n return offsets.standard ?? null;\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":[]}
|
|
@@ -40,12 +40,6 @@ describe("date time format conversion", () => {
|
|
|
40
40
|
expect(TimestampUtil.toFormat(timestamp, "QQQQ")).toBe("2nd quarter");
|
|
41
41
|
});
|
|
42
42
|
|
|
43
|
-
test.skip("Day of Year", () => {
|
|
44
|
-
expect(TimestampUtil.toFormat(timestamp, "D")).toBe("7");
|
|
45
|
-
expect(TimestampUtil.toFormat(timestamp, "DD")).toBe("07");
|
|
46
|
-
expect(TimestampUtil.toFormat(timestamp, "DDD")).toBe("07");
|
|
47
|
-
});
|
|
48
|
-
|
|
49
43
|
test("Day of Week", () => {
|
|
50
44
|
expect(TimestampUtil.toFormat(timestamp, "E")).toBe("Wed");
|
|
51
45
|
expect(TimestampUtil.toFormat(timestamp, "EEEE")).toBe("Wednesday");
|