@beinformed/ui 1.65.26 → 1.65.27
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 +7 -0
- package/esm/modularui/ModularUIRequest.js +10 -8
- package/esm/modularui/ModularUIRequest.js.flow +8 -10
- package/esm/modularui/ModularUIRequest.js.map +1 -1
- package/esm/react-server/__tests__/serverUtil.spec.js.flow +1 -1
- package/esm/react-server/contextPath.js +0 -1
- package/esm/react-server/contextPath.js.flow +0 -2
- package/esm/react-server/contextPath.js.map +1 -1
- package/esm/react-server/serverUtil.js +11 -5
- package/esm/react-server/serverUtil.js.flow +13 -9
- package/esm/react-server/serverUtil.js.map +1 -1
- package/esm/redux/_i18n/I18nReducer.js +3 -1
- package/esm/redux/_i18n/I18nReducer.js.flow +2 -1
- package/esm/redux/_i18n/I18nReducer.js.map +1 -1
- package/esm/redux/_modularui/ModularUIActions.js +4 -1
- package/esm/redux/_modularui/ModularUIActions.js.flow +2 -1
- package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
- package/esm/redux/actions/Preferences.js +16 -8
- package/esm/redux/actions/Preferences.js.flow +16 -8
- package/esm/redux/actions/Preferences.js.map +1 -1
- package/esm/utils/fetch/xhr.js +3 -1
- package/esm/utils/fetch/xhr.js.flow +2 -1
- package/esm/utils/fetch/xhr.js.map +1 -1
- package/lib/modularui/ModularUIRequest.js +10 -8
- package/lib/modularui/ModularUIRequest.js.map +1 -1
- package/lib/react-server/contextPath.js +0 -3
- package/lib/react-server/contextPath.js.map +1 -1
- package/lib/react-server/serverUtil.js +10 -3
- package/lib/react-server/serverUtil.js.map +1 -1
- package/lib/redux/_i18n/I18nReducer.js +3 -1
- package/lib/redux/_i18n/I18nReducer.js.map +1 -1
- package/lib/redux/_modularui/ModularUIActions.js +4 -1
- package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
- package/lib/redux/actions/Preferences.js +16 -8
- package/lib/redux/actions/Preferences.js.map +1 -1
- package/lib/utils/fetch/xhr.js +3 -1
- package/lib/utils/fetch/xhr.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I18nReducer.js","names":["Cache","setCookie","clearCookie","Locales","updateLocale","state","locale","locales","length","clear","setLocales","getDefaultLocale","navigator","language","split","initialState","I18nReducer","action","type","payload"],"sources":["../../../src/redux/_i18n/I18nReducer.js"],"sourcesContent":["// @flow\nimport Cache from \"../../utils/browser/Cache\";\nimport { setCookie, clearCookie } from \"../../utils/browser/Cookies\";\n\nimport Locales from \"../../i18n/Locales\";\n\nimport type { Reducer } from \"redux\";\nimport type { I18nState } from \"./types\";\nimport type { ReduxAction } from \"../types\";\n\n/**\n */\nconst updateLocale = (state: I18nState, locale: string) => {\n // set locale in cookie\n if (state.locales?.length > 1) {\n setCookie(\"locale\", locale);\n } else {\n clearCookie(\"locale\");\n }\n\n // clear cache because of cached contributions\n Cache.clear();\n\n return {\n ...state,\n locale,\n };\n};\n\n/**\n */\nconst setLocales = (\n state: I18nState,\n { locale, locales }: { locale: string, locales: Locales },\n) => {\n // set locale in cookie\n if (state.locales.length > 1) {\n setCookie(\"locale\", locale);\n } else {\n clearCookie(\"locale\");\n }\n\n if (locale) {\n return {\n ...state,\n locales,\n locale,\n };\n }\n\n return {\n ...state,\n locales,\n };\n};\n\nconst getDefaultLocale = () => {\n return navigator?.language?.split(\"-\")[0] || \"en\";\n};\n\n// REDUCER\nconst initialState: I18nState = {\n locales: new Locales(),\n locale: getDefaultLocale(),\n};\n\n/**\n * Form reducer\n */\nexport const I18nReducer: Reducer<I18nState, ReduxAction> = (\n state = initialState,\n action = void 0,\n) => {\n if (!action) {\n return state;\n }\n\n switch (action.type) {\n case \"SET_LOCALES\":\n return setLocales(state, action.payload);\n\n case \"UPDATE_LOCALE\":\n return updateLocale(state, action.payload);\n\n default:\n return state;\n }\n};\n"],"mappings":"AACA,OAAOA,KAAK,MAAM,2BAA2B;AAC7C,SAASC,SAAS,EAAEC,WAAW,QAAQ,6BAA6B;AAEpE,OAAOC,OAAO,MAAM,oBAAoB;AAMxC;AACA;AACA,MAAMC,YAAY,GAAGA,CAACC,KAAgB,EAAEC,MAAc,KAAK;EACzD;EACA,IAAID,KAAK,CAACE,OAAO,EAAEC,MAAM,GAAG,CAAC,EAAE;IAC7BP,SAAS,CAAC,QAAQ,EAAEK,MAAM,CAAC;EAC7B,CAAC,MAAM;IACLJ,WAAW,CAAC,QAAQ,CAAC;EACvB;;EAEA;EACAF,KAAK,CAACS,KAAK,CAAC,CAAC;EAEb,OAAO;IACL,GAAGJ,KAAK;IACRC;EACF,CAAC;AACH,CAAC;;AAED;AACA;AACA,MAAMI,UAAU,GAAGA,CACjBL,KAAgB,EAChB;EAAEC,MAAM;EAAEC;AAA8C,CAAC,KACtD;EACH;EACA,IAAIF,KAAK,CAACE,OAAO,CAACC,MAAM,GAAG,CAAC,EAAE;IAC5BP,SAAS,CAAC,QAAQ,EAAEK,MAAM,CAAC;EAC7B,CAAC,MAAM;IACLJ,WAAW,CAAC,QAAQ,CAAC;EACvB;EAEA,IAAII,MAAM,EAAE;IACV,OAAO;MACL,GAAGD,KAAK;MACRE,OAAO;MACPD;IACF,CAAC;EACH;EAEA,OAAO;IACL,GAAGD,KAAK;IACRE;EACF,CAAC;AACH,CAAC;AAED,MAAMI,gBAAgB,GAAGA,CAAA,KAAM;EAC7B,OAAOC,SAAS,EAAEC,QAAQ,EAAEC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"I18nReducer.js","names":["Cache","setCookie","clearCookie","Locales","updateLocale","state","locale","locales","length","clear","setLocales","getDefaultLocale","_globalThis","navigator","language","split","initialState","I18nReducer","action","type","payload"],"sources":["../../../src/redux/_i18n/I18nReducer.js"],"sourcesContent":["// @flow\nimport Cache from \"../../utils/browser/Cache\";\nimport { setCookie, clearCookie } from \"../../utils/browser/Cookies\";\n\nimport Locales from \"../../i18n/Locales\";\n\nimport type { Reducer } from \"redux\";\nimport type { I18nState } from \"./types\";\nimport type { ReduxAction } from \"../types\";\n\n/**\n */\nconst updateLocale = (state: I18nState, locale: string) => {\n // set locale in cookie\n if (state.locales?.length > 1) {\n setCookie(\"locale\", locale);\n } else {\n clearCookie(\"locale\");\n }\n\n // clear cache because of cached contributions\n Cache.clear();\n\n return {\n ...state,\n locale,\n };\n};\n\n/**\n */\nconst setLocales = (\n state: I18nState,\n { locale, locales }: { locale: string, locales: Locales },\n) => {\n // set locale in cookie\n if (state.locales.length > 1) {\n setCookie(\"locale\", locale);\n } else {\n clearCookie(\"locale\");\n }\n\n if (locale) {\n return {\n ...state,\n locales,\n locale,\n };\n }\n\n return {\n ...state,\n locales,\n };\n};\n\nconst getDefaultLocale = () => {\n // $FlowIssue\n return globalThis.navigator?.language?.split(\"-\")[0] || \"en\";\n};\n\n// REDUCER\nconst initialState: I18nState = {\n locales: new Locales(),\n locale: getDefaultLocale(),\n};\n\n/**\n * Form reducer\n */\nexport const I18nReducer: Reducer<I18nState, ReduxAction> = (\n state = initialState,\n action = void 0,\n) => {\n if (!action) {\n return state;\n }\n\n switch (action.type) {\n case \"SET_LOCALES\":\n return setLocales(state, action.payload);\n\n case \"UPDATE_LOCALE\":\n return updateLocale(state, action.payload);\n\n default:\n return state;\n }\n};\n"],"mappings":";AACA,OAAOA,KAAK,MAAM,2BAA2B;AAC7C,SAASC,SAAS,EAAEC,WAAW,QAAQ,6BAA6B;AAEpE,OAAOC,OAAO,MAAM,oBAAoB;AAMxC;AACA;AACA,MAAMC,YAAY,GAAGA,CAACC,KAAgB,EAAEC,MAAc,KAAK;EACzD;EACA,IAAID,KAAK,CAACE,OAAO,EAAEC,MAAM,GAAG,CAAC,EAAE;IAC7BP,SAAS,CAAC,QAAQ,EAAEK,MAAM,CAAC;EAC7B,CAAC,MAAM;IACLJ,WAAW,CAAC,QAAQ,CAAC;EACvB;;EAEA;EACAF,KAAK,CAACS,KAAK,CAAC,CAAC;EAEb,OAAO;IACL,GAAGJ,KAAK;IACRC;EACF,CAAC;AACH,CAAC;;AAED;AACA;AACA,MAAMI,UAAU,GAAGA,CACjBL,KAAgB,EAChB;EAAEC,MAAM;EAAEC;AAA8C,CAAC,KACtD;EACH;EACA,IAAIF,KAAK,CAACE,OAAO,CAACC,MAAM,GAAG,CAAC,EAAE;IAC5BP,SAAS,CAAC,QAAQ,EAAEK,MAAM,CAAC;EAC7B,CAAC,MAAM;IACLJ,WAAW,CAAC,QAAQ,CAAC;EACvB;EAEA,IAAII,MAAM,EAAE;IACV,OAAO;MACL,GAAGD,KAAK;MACRE,OAAO;MACPD;IACF,CAAC;EACH;EAEA,OAAO;IACL,GAAGD,KAAK;IACRE;EACF,CAAC;AACH,CAAC;AAED,MAAMI,gBAAgB,GAAGA,CAAA,KAAM;EAC7B;EACA,OAAOC,WAAA,CAAWC,SAAS,EAAEC,QAAQ,EAAEC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI;AAC9D,CAAC;;AAED;AACA,MAAMC,YAAuB,GAAG;EAC9BT,OAAO,EAAE,IAAIJ,OAAO,CAAC,CAAC;EACtBG,MAAM,EAAEK,gBAAgB,CAAC;AAC3B,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMM,WAA4C,GAAGA,CAC1DZ,KAAK,GAAGW,YAAY,EACpBE,MAAM,GAAG,KAAK,CAAC,KACZ;EACH,IAAI,CAACA,MAAM,EAAE;IACX,OAAOb,KAAK;EACd;EAEA,QAAQa,MAAM,CAACC,IAAI;IACjB,KAAK,aAAa;MAChB,OAAOT,UAAU,CAACL,KAAK,EAAEa,MAAM,CAACE,OAAO,CAAC;IAE1C,KAAK,eAAe;MAClB,OAAOhB,YAAY,CAACC,KAAK,EAAEa,MAAM,CAACE,OAAO,CAAC;IAE5C;MACE,OAAOf,KAAK;EAChB;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _globalThis from "@babel/runtime-corejs3/core-js/global-this";
|
|
1
2
|
import _Promise from "@babel/runtime-corejs3/core-js-stable/promise";
|
|
2
3
|
import { HTTP_METHODS, MODULARUI_STATUS } from "../../constants/Constants";
|
|
3
4
|
import Href from "../../models/href/Href";
|
|
@@ -80,7 +81,9 @@ const getRequestLocale = optionLocale => {
|
|
|
80
81
|
if (optionLocale) {
|
|
81
82
|
return optionLocale;
|
|
82
83
|
}
|
|
83
|
-
|
|
84
|
+
|
|
85
|
+
// $FlowIssue
|
|
86
|
+
return _globalThis.navigator?.language?.split("-")[0] || "en";
|
|
84
87
|
};
|
|
85
88
|
|
|
86
89
|
/**
|
|
@@ -108,7 +108,8 @@ const getRequestLocale = (optionLocale: ?string): string => {
|
|
|
108
108
|
return optionLocale;
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
-
|
|
111
|
+
// $FlowIssue
|
|
112
|
+
return globalThis.navigator?.language?.split("-")[0] || "en";
|
|
112
113
|
};
|
|
113
114
|
|
|
114
115
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModularUIActions.js","names":["HTTP_METHODS","MODULARUI_STATUS","Href","ErrorResponse","finishProgress","startProgress","handleError","setModel","key","model","connectKey","type","payload","initModels","models","updateModel","updateForm","removeModelByKey","resetModularUI","updateStatus","status","requestOptions","loadModelSuccessAction","updateHandler","getRequestLocale","optionLocale","navigator","language","split","loadModel","href","options","origin","contextPath","method","GET","params","data","timeout","headers","events","onProgress","locale","childmodels","targetModel","forceTargetModel","cache","isReload","withCredentials","successAction","errorAction","error","errorResponse","isChangePassword","isResourceNotFoundAfterReload","ERROR","loadModularUI","retryCount","retryDelay","dispatch","getState","modularuiStore","modularui","currentRequest","isLoading","LOADING","isDifferentRequest","toString","_Promise","resolve","setTimeout","loadModelPromise","then","catch","reloadModel","selfhref"],"sources":["../../../src/redux/_modularui/ModularUIActions.js"],"sourcesContent":["// @flow\nimport { HTTP_METHODS, MODULARUI_STATUS } from \"../../constants/Constants\";\nimport Href from \"../../models/href/Href\";\nimport ErrorResponse from \"../../models/error/ErrorResponse\";\nimport { finishProgress, startProgress } from \"../actions/ProgressIndicator\";\nimport { handleError } from \"../actions/Error\";\n\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { Dispatch, ThunkAction } from \"../types\";\nimport type {\n ModularUIAction,\n SetModelAction,\n InitModelAction,\n UpdateModelAction,\n UpdateFormAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n UpdateStatusAction,\n} from \"./types\";\nimport type {\n RequestModularUIOptions,\n UpdateHandler,\n} from \"../../utils/fetch/types\";\n\n/**\n */\nexport const setModel = (\n key: string,\n model: ModularUIModel,\n): SetModelAction => {\n // set key on model for later reference\n model.connectKey = key;\n return {\n type: \"MODULARUI/SET\",\n payload: {\n key,\n model,\n },\n };\n};\n\n/**\n */\nexport const initModels = (\n models: Array<{ key: string, model: ModularUIModel }>,\n): InitModelAction => ({\n type: \"MODULARUI/INIT\",\n payload: models,\n});\n\n/**\n */\nexport const updateModel = (model: ModularUIModel): UpdateModelAction => ({\n type: \"MODULARUI/UPDATE\",\n payload: model,\n});\n\n/**\n */\nexport const updateForm = (model: ModularUIModel): UpdateFormAction => ({\n type: \"MODULARUI/UPDATE_FORM\",\n payload: model,\n});\n\n/**\n */\nexport const removeModelByKey = (key: string): RemoveModelByKeyAction => ({\n type: \"MODULARUI/REMOVE_KEY\",\n payload: key,\n});\n\n/**\n * Removes all models except the application model from the modular ui reducer\n */\nexport const resetModularUI = (): ResetModularUIAction => ({\n type: \"MODULARUI/RESET\",\n});\n\n/**\n */\nexport const updateStatus = (\n key: string,\n status: $Keys<typeof MODULARUI_STATUS>,\n requestOptions: any,\n): UpdateStatusAction => ({\n type: \"MODULARUI/STATUS\",\n payload: { key, status, requestOptions },\n});\n\n/**\n */\nconst loadModelSuccessAction = (\n key: string,\n model: ModularUIModel,\n updateHandler: UpdateHandler | void,\n): UpdateModelAction | SetModelAction => {\n if (updateHandler) {\n return updateModel(updateHandler(model));\n }\n return setModel(key, model);\n};\n\n/**\n * Retrieve the preferred language for this request, falls back to the browser language or english\n */\nconst getRequestLocale = (optionLocale: ?string): string => {\n if (optionLocale) {\n return optionLocale;\n }\n\n return navigator?.language?.split(\"-\")[0] || \"en\";\n};\n\n/**\n * This action is handled by the modularui middleware\n */\nexport const loadModel = (\n key: string,\n href: Href | string,\n options?: RequestModularUIOptions,\n): ModularUIAction => ({\n type: \"MODULARUI/FETCH\",\n payload: {\n key,\n origin: options?.origin,\n contextPath: options?.contextPath,\n href:\n href instanceof Href\n ? href\n : new Href(href, \"\", {\n origin: options?.origin,\n contextPath: options?.contextPath,\n }),\n method: options?.method ?? HTTP_METHODS.GET,\n params: options?.params,\n data: options?.data,\n timeout: options?.timeout,\n headers: options?.headers,\n events: options?.events,\n onProgress: options?.onProgress,\n locale: getRequestLocale(options?.locale),\n childmodels: options?.childmodels,\n targetModel: options?.targetModel,\n forceTargetModel: options?.forceTargetModel,\n cache: options?.cache,\n isReload: options?.isReload,\n withCredentials: options?.withCredentials,\n /**\n */\n successAction: (model) =>\n loadModelSuccessAction(key, model, options?.updateHandler),\n /**\n */\n errorAction: (error) => {\n const errorResponse = new ErrorResponse(error, key, {\n origin: options?.origin,\n contextPath: options?.contextPath,\n });\n if (\n errorResponse.isChangePassword ||\n errorResponse.isResourceNotFoundAfterReload\n ) {\n return removeModelByKey(key);\n }\n return updateStatus(key, MODULARUI_STATUS.ERROR);\n },\n },\n});\n\n/**\n */\nexport const loadModularUI =\n (\n key: string,\n href: Href | string,\n options?: RequestModularUIOptions,\n retryCount: number = 3,\n retryDelay: number = 200,\n ): ThunkAction<> =>\n (dispatch: Dispatch, getState) => {\n const modularuiStore = getState()?.modularui;\n const currentRequest = modularuiStore?.[key];\n\n const isLoading = currentRequest?.status === MODULARUI_STATUS.LOADING;\n\n if (isLoading) {\n const isDifferentRequest =\n currentRequest.requestOptions?.href?.toString() !== href.toString();\n if (isDifferentRequest && retryCount > 0) {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve(\n dispatch(\n loadModularUI(key, href, options, retryCount - 1, retryDelay),\n ),\n );\n }, retryDelay);\n });\n }\n\n // Same request is already loading — do nothing\n return Promise.resolve();\n }\n\n dispatch(startProgress());\n\n const loadModelPromise = dispatch(loadModel(key, href, options));\n\n return Promise.resolve(loadModelPromise)\n .then(() => dispatch(finishProgress()))\n .catch((error) => dispatch(handleError(error)));\n };\n\n/**\n */\nexport const reloadModel = (\n model: ModularUIModel,\n options?: RequestModularUIOptions,\n): ThunkAction<> =>\n loadModularUI(model.connectKey, model.selfhref, {\n ...options,\n isReload: true,\n });\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ModularUIActions.js","names":["HTTP_METHODS","MODULARUI_STATUS","Href","ErrorResponse","finishProgress","startProgress","handleError","setModel","key","model","connectKey","type","payload","initModels","models","updateModel","updateForm","removeModelByKey","resetModularUI","updateStatus","status","requestOptions","loadModelSuccessAction","updateHandler","getRequestLocale","optionLocale","_globalThis","navigator","language","split","loadModel","href","options","origin","contextPath","method","GET","params","data","timeout","headers","events","onProgress","locale","childmodels","targetModel","forceTargetModel","cache","isReload","withCredentials","successAction","errorAction","error","errorResponse","isChangePassword","isResourceNotFoundAfterReload","ERROR","loadModularUI","retryCount","retryDelay","dispatch","getState","modularuiStore","modularui","currentRequest","isLoading","LOADING","isDifferentRequest","toString","_Promise","resolve","setTimeout","loadModelPromise","then","catch","reloadModel","selfhref"],"sources":["../../../src/redux/_modularui/ModularUIActions.js"],"sourcesContent":["// @flow\nimport { HTTP_METHODS, MODULARUI_STATUS } from \"../../constants/Constants\";\nimport Href from \"../../models/href/Href\";\nimport ErrorResponse from \"../../models/error/ErrorResponse\";\nimport { finishProgress, startProgress } from \"../actions/ProgressIndicator\";\nimport { handleError } from \"../actions/Error\";\n\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { Dispatch, ThunkAction } from \"../types\";\nimport type {\n ModularUIAction,\n SetModelAction,\n InitModelAction,\n UpdateModelAction,\n UpdateFormAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n UpdateStatusAction,\n} from \"./types\";\nimport type {\n RequestModularUIOptions,\n UpdateHandler,\n} from \"../../utils/fetch/types\";\n\n/**\n */\nexport const setModel = (\n key: string,\n model: ModularUIModel,\n): SetModelAction => {\n // set key on model for later reference\n model.connectKey = key;\n return {\n type: \"MODULARUI/SET\",\n payload: {\n key,\n model,\n },\n };\n};\n\n/**\n */\nexport const initModels = (\n models: Array<{ key: string, model: ModularUIModel }>,\n): InitModelAction => ({\n type: \"MODULARUI/INIT\",\n payload: models,\n});\n\n/**\n */\nexport const updateModel = (model: ModularUIModel): UpdateModelAction => ({\n type: \"MODULARUI/UPDATE\",\n payload: model,\n});\n\n/**\n */\nexport const updateForm = (model: ModularUIModel): UpdateFormAction => ({\n type: \"MODULARUI/UPDATE_FORM\",\n payload: model,\n});\n\n/**\n */\nexport const removeModelByKey = (key: string): RemoveModelByKeyAction => ({\n type: \"MODULARUI/REMOVE_KEY\",\n payload: key,\n});\n\n/**\n * Removes all models except the application model from the modular ui reducer\n */\nexport const resetModularUI = (): ResetModularUIAction => ({\n type: \"MODULARUI/RESET\",\n});\n\n/**\n */\nexport const updateStatus = (\n key: string,\n status: $Keys<typeof MODULARUI_STATUS>,\n requestOptions: any,\n): UpdateStatusAction => ({\n type: \"MODULARUI/STATUS\",\n payload: { key, status, requestOptions },\n});\n\n/**\n */\nconst loadModelSuccessAction = (\n key: string,\n model: ModularUIModel,\n updateHandler: UpdateHandler | void,\n): UpdateModelAction | SetModelAction => {\n if (updateHandler) {\n return updateModel(updateHandler(model));\n }\n return setModel(key, model);\n};\n\n/**\n * Retrieve the preferred language for this request, falls back to the browser language or english\n */\nconst getRequestLocale = (optionLocale: ?string): string => {\n if (optionLocale) {\n return optionLocale;\n }\n\n // $FlowIssue\n return globalThis.navigator?.language?.split(\"-\")[0] || \"en\";\n};\n\n/**\n * This action is handled by the modularui middleware\n */\nexport const loadModel = (\n key: string,\n href: Href | string,\n options?: RequestModularUIOptions,\n): ModularUIAction => ({\n type: \"MODULARUI/FETCH\",\n payload: {\n key,\n origin: options?.origin,\n contextPath: options?.contextPath,\n href:\n href instanceof Href\n ? href\n : new Href(href, \"\", {\n origin: options?.origin,\n contextPath: options?.contextPath,\n }),\n method: options?.method ?? HTTP_METHODS.GET,\n params: options?.params,\n data: options?.data,\n timeout: options?.timeout,\n headers: options?.headers,\n events: options?.events,\n onProgress: options?.onProgress,\n locale: getRequestLocale(options?.locale),\n childmodels: options?.childmodels,\n targetModel: options?.targetModel,\n forceTargetModel: options?.forceTargetModel,\n cache: options?.cache,\n isReload: options?.isReload,\n withCredentials: options?.withCredentials,\n /**\n */\n successAction: (model) =>\n loadModelSuccessAction(key, model, options?.updateHandler),\n /**\n */\n errorAction: (error) => {\n const errorResponse = new ErrorResponse(error, key, {\n origin: options?.origin,\n contextPath: options?.contextPath,\n });\n if (\n errorResponse.isChangePassword ||\n errorResponse.isResourceNotFoundAfterReload\n ) {\n return removeModelByKey(key);\n }\n return updateStatus(key, MODULARUI_STATUS.ERROR);\n },\n },\n});\n\n/**\n */\nexport const loadModularUI =\n (\n key: string,\n href: Href | string,\n options?: RequestModularUIOptions,\n retryCount: number = 3,\n retryDelay: number = 200,\n ): ThunkAction<> =>\n (dispatch: Dispatch, getState) => {\n const modularuiStore = getState()?.modularui;\n const currentRequest = modularuiStore?.[key];\n\n const isLoading = currentRequest?.status === MODULARUI_STATUS.LOADING;\n\n if (isLoading) {\n const isDifferentRequest =\n currentRequest.requestOptions?.href?.toString() !== href.toString();\n if (isDifferentRequest && retryCount > 0) {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve(\n dispatch(\n loadModularUI(key, href, options, retryCount - 1, retryDelay),\n ),\n );\n }, retryDelay);\n });\n }\n\n // Same request is already loading — do nothing\n return Promise.resolve();\n }\n\n dispatch(startProgress());\n\n const loadModelPromise = dispatch(loadModel(key, href, options));\n\n return Promise.resolve(loadModelPromise)\n .then(() => dispatch(finishProgress()))\n .catch((error) => dispatch(handleError(error)));\n };\n\n/**\n */\nexport const reloadModel = (\n model: ModularUIModel,\n options?: RequestModularUIOptions,\n): ThunkAction<> =>\n loadModularUI(model.connectKey, model.selfhref, {\n ...options,\n isReload: true,\n });\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _globalThis from "@babel/runtime-corejs3/core-js/global-this";
|
|
1
2
|
import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/includes";
|
|
2
3
|
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
3
4
|
import _trimInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/trim";
|
|
@@ -9,10 +10,9 @@ import { ALL_CONTENT_IN_DATA_SETTING, INCLUDE_TIME_OFFSET, LOGIN_TYPE, LOGIN_PAS
|
|
|
9
10
|
/**
|
|
10
11
|
*/
|
|
11
12
|
const getServerPreferenceValue = (preferenceName, defaultValue = null, type) => {
|
|
12
|
-
let value =
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
13
|
+
let value =
|
|
14
|
+
// $FlowIssue
|
|
15
|
+
_globalThis?.preferencesProvider?.getPreferenceByName(preferenceName);
|
|
16
16
|
if (value == null) {
|
|
17
17
|
value = defaultValue;
|
|
18
18
|
}
|
|
@@ -68,8 +68,12 @@ export const setThemePreference = configTheme => {
|
|
|
68
68
|
*/
|
|
69
69
|
export const setAllContentInDataSetting = state => {
|
|
70
70
|
let allContentInDataSetting = false;
|
|
71
|
-
if (
|
|
72
|
-
|
|
71
|
+
if (
|
|
72
|
+
// $FlowIssue
|
|
73
|
+
typeof _globalThis.preferencesProvider?.getModularUIContentInData === "function") {
|
|
74
|
+
allContentInDataSetting =
|
|
75
|
+
// $FlowIssue
|
|
76
|
+
_globalThis.preferencesProvider.getModularUIContentInData();
|
|
73
77
|
} else if (typeof state?.preferences == "object") {
|
|
74
78
|
allContentInDataSetting = state.preferences[ALL_CONTENT_IN_DATA_SETTING];
|
|
75
79
|
}
|
|
@@ -82,8 +86,12 @@ export const setAllContentInDataSetting = state => {
|
|
|
82
86
|
*/
|
|
83
87
|
export const setDateTimeSettings = state => {
|
|
84
88
|
let isIncludeTimeOffsetInDateTimes = false;
|
|
85
|
-
if (
|
|
86
|
-
|
|
89
|
+
if (
|
|
90
|
+
// $FlowIssue
|
|
91
|
+
typeof _globalThis.preferencesProvider?.isIncludeTimeOffsetInDateTimes === "function") {
|
|
92
|
+
isIncludeTimeOffsetInDateTimes =
|
|
93
|
+
// $FlowIssue
|
|
94
|
+
_globalThis.preferencesProvider.isIncludeTimeOffsetInDateTimes();
|
|
87
95
|
} else if (typeof state?.preferences === "object") {
|
|
88
96
|
isIncludeTimeOffsetInDateTimes = state.preferences[INCLUDE_TIME_OFFSET];
|
|
89
97
|
}
|
|
@@ -28,10 +28,9 @@ const getServerPreferenceValue = (
|
|
|
28
28
|
defaultValue: PreferenceValue = null,
|
|
29
29
|
type?: string,
|
|
30
30
|
): PreferenceValue => {
|
|
31
|
-
let value: PreferenceValue =
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
31
|
+
let value: PreferenceValue =
|
|
32
|
+
// $FlowIssue
|
|
33
|
+
globalThis?.preferencesProvider?.getPreferenceByName(preferenceName);
|
|
35
34
|
|
|
36
35
|
if (value == null) {
|
|
37
36
|
value = defaultValue;
|
|
@@ -104,8 +103,14 @@ export const setAllContentInDataSetting = (
|
|
|
104
103
|
): SetPreferenceAction => {
|
|
105
104
|
let allContentInDataSetting: PreferenceValue = false;
|
|
106
105
|
|
|
107
|
-
if (
|
|
108
|
-
|
|
106
|
+
if (
|
|
107
|
+
// $FlowIssue
|
|
108
|
+
typeof globalThis.preferencesProvider?.getModularUIContentInData ===
|
|
109
|
+
"function"
|
|
110
|
+
) {
|
|
111
|
+
allContentInDataSetting =
|
|
112
|
+
// $FlowIssue
|
|
113
|
+
globalThis.preferencesProvider.getModularUIContentInData();
|
|
109
114
|
} else if (typeof state?.preferences == "object") {
|
|
110
115
|
allContentInDataSetting = state.preferences[ALL_CONTENT_IN_DATA_SETTING];
|
|
111
116
|
}
|
|
@@ -122,10 +127,13 @@ export const setDateTimeSettings = (
|
|
|
122
127
|
): SetPreferenceAction => {
|
|
123
128
|
let isIncludeTimeOffsetInDateTimes: PreferenceValue = false;
|
|
124
129
|
if (
|
|
125
|
-
|
|
130
|
+
// $FlowIssue
|
|
131
|
+
typeof globalThis.preferencesProvider?.isIncludeTimeOffsetInDateTimes ===
|
|
132
|
+
"function"
|
|
126
133
|
) {
|
|
127
134
|
isIncludeTimeOffsetInDateTimes =
|
|
128
|
-
|
|
135
|
+
// $FlowIssue
|
|
136
|
+
globalThis.preferencesProvider.isIncludeTimeOffsetInDateTimes();
|
|
129
137
|
} else if (typeof state?.preferences === "object") {
|
|
130
138
|
isIncludeTimeOffsetInDateTimes = state.preferences[INCLUDE_TIME_OFFSET];
|
|
131
139
|
}
|
|
@@ -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): PreferenceValue => {\n let value: PreferenceValue
|
|
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","_globalThis","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 =\n // $FlowIssue\n globalThis?.preferencesProvider?.getPreferenceByName(preferenceName);\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 (\n // $FlowIssue\n typeof globalThis.preferencesProvider?.getModularUIContentInData ===\n \"function\"\n ) {\n allContentInDataSetting =\n // $FlowIssue\n globalThis.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 // $FlowIssue\n typeof globalThis.preferencesProvider?.isIncludeTimeOffsetInDateTimes ===\n \"function\"\n ) {\n isIncludeTimeOffsetInDateTimes =\n // $FlowIssue\n globalThis.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":[]}
|
package/esm/utils/fetch/xhr.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
2
2
|
import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/includes";
|
|
3
|
+
import _globalThis from "@babel/runtime-corejs3/core-js/global-this";
|
|
3
4
|
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
4
5
|
import _JSON$stringify from "@babel/runtime-corejs3/core-js-stable/json/stringify";
|
|
5
6
|
import _Promise from "@babel/runtime-corejs3/core-js-stable/promise";
|
|
@@ -133,7 +134,8 @@ class XHR {
|
|
|
133
134
|
/**
|
|
134
135
|
*/
|
|
135
136
|
getBaseLocale() {
|
|
136
|
-
|
|
137
|
+
// $FlowIssue
|
|
138
|
+
return _globalThis.navigator?.language?.split("-")[0] || "en";
|
|
137
139
|
}
|
|
138
140
|
|
|
139
141
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xhr.js","names":["has","isPlainObject","IllegalArgumentException","UnauthorizedException","FetchException","TimeoutException","NotFoundException","JsonParseException","NetworkException","Cache","HTTP_METHODS","getSetting","NETWORK_ERROR_CODE","SUCCESS_CODE","CLIENT_ERROR_CODE","UNAUTHORIZED_CODE","REDIRECTION_CODE","NOT_FOUND_CODE","JSON_TYPE","XHR","constructor","options","_defineProperty","_options","_attempts","xmlhttp","_xmlhttp","attempts","url","params","_includesInstanceProperty","call","aUrl","split","data","method","GET","timeout","responseType","onProgress","events","getBaseLocale","navigator","language","headers","baseHeaders","Accept","timeoutHandler","reject","errorHandler","responseJSON","status","isReload","getResponse","response","getResponseHeader","JSON","parse","error","responseHandler","resolve","setEventListeners","forEach","eventType","addEventListener","_Object$keys","eventName","openConnection","open","setBasicAuthentication","hasItem","basicToken","getItem","setRequestHeader","headerName","setCustomHeaders","setOtherOptions","withCredentials","sendData","send","stringData","_JSON$stringify","setXMLHttpRequest","_Promise","XMLHttpRequest","fetch","err","validateInputArguments","args","xhr"],"sources":["../../../src/utils/fetch/xhr.js"],"sourcesContent":["// @flow\nimport { has, isPlainObject } from \"../helpers/objects\";\n\nimport {\n IllegalArgumentException,\n UnauthorizedException,\n FetchException,\n TimeoutException,\n NotFoundException,\n JsonParseException,\n NetworkException,\n} from \"../../exceptions\";\n\nimport Cache from \"../browser/Cache\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport { getSetting } from \"../../constants/Settings\";\n\nimport type { RequestOptions } from \"./types\";\n\nconst NETWORK_ERROR_CODE = 0;\nconst SUCCESS_CODE = 200;\nconst CLIENT_ERROR_CODE = 400;\nconst UNAUTHORIZED_CODE = 401;\nconst REDIRECTION_CODE = 300;\nconst NOT_FOUND_CODE = 404;\n\nconst JSON_TYPE = \"application/json\";\n\n/**\n * @private\n */\nclass XHR {\n _options: RequestOptions;\n _xmlhttp: XMLHttpRequest;\n _attempts: number;\n\n /**\n */\n constructor(options: RequestOptions) {\n this._options = options;\n this._attempts = 0;\n }\n\n /**\n */\n get xmlhttp(): XMLHttpRequest {\n return this._xmlhttp;\n }\n\n /**\n */\n set xmlhttp(xmlhttp: XMLHttpRequest) {\n this._xmlhttp = xmlhttp;\n }\n\n /**\n */\n get options(): RequestOptions {\n return this._options;\n }\n\n /**\n */\n set options(options: RequestOptions) {\n this._options = options;\n }\n\n /**\n */\n get attempts(): number {\n return this._attempts;\n }\n\n /**\n */\n set attempts(attempts: number) {\n this._attempts = attempts;\n }\n\n /**\n * Create and fix url when params or both querystring and params exist.\n */\n get url(): string {\n const { url } = this.options;\n if (this.params !== \"\") {\n if (url.includes(\"?\")) {\n const aUrl = url.split(\"?\");\n\n return `${aUrl[0]}?${aUrl[1]}&${this.params}`;\n }\n\n return `${url}?${this.params}`;\n }\n\n return url;\n }\n\n /**\n */\n get params(): string {\n return this.options.params || \"\";\n }\n\n /**\n */\n get data(): any | null {\n return this.options.data || null;\n }\n\n /**\n */\n get method(): $Keys<typeof HTTP_METHODS> {\n return this.options.method || HTTP_METHODS.GET;\n }\n\n /**\n */\n get timeout(): number {\n return this.options.timeout || getSetting(\"XHR_TIMEOUT_MS\", 300000);\n }\n\n /**\n */\n get responseType(): string {\n return this.options.responseType || \"json\";\n }\n\n /**\n */\n get onProgress(): ProgressEventHandler {\n if (this.options.onProgress) {\n return this.options.onProgress;\n }\n\n return () => {\n // do nothing\n };\n }\n\n /**\n */\n get events(): { [eventName: string]: () => void } {\n return this.options.events || {};\n }\n\n /**\n */\n getBaseLocale(): string {\n return navigator?.language?.split(\"-\")[0] || \"en\";\n }\n\n /**\n */\n get headers(): { [string]: string } {\n const baseHeaders = {\n Accept: JSON_TYPE,\n \"Content-Type\": JSON_TYPE,\n\n // needed for csrf, see: https://plaza.beinformed.com/amdoc/csrf-protection-in-modular-ui-services-40054554.html\n \"X-Requested-With\": \"XMLHttpRequest\",\n\n \"Accept-Language\": this.getBaseLocale(),\n };\n\n if (this.options.headers) {\n // $FlowFixMe[cannot-spread-indexer]\n return {\n ...baseHeaders,\n ...this.options.headers,\n };\n }\n\n return baseHeaders;\n }\n\n /**\n */\n timeoutHandler(reject: Function): any {\n return reject(new TimeoutException(this.url, this.method));\n }\n\n /**\n */\n errorHandler(reject: Function, responseJSON: any = null): any {\n const { status } = this.xmlhttp;\n const { isReload } = this.options;\n\n if (status === NETWORK_ERROR_CODE) {\n return reject(new NetworkException(this.url, this.method));\n }\n\n if (status === NOT_FOUND_CODE) {\n return reject(new NotFoundException(this.url, this.method, isReload));\n }\n\n if (status === UNAUTHORIZED_CODE) {\n return reject(\n new UnauthorizedException(this.url, this.method, responseJSON),\n );\n }\n\n return reject(new FetchException(responseJSON, this.xmlhttp, this.options));\n }\n\n /**\n */\n getResponse(): any {\n const { responseType, response } = this.xmlhttp;\n\n if (\n (responseType === \"\" || responseType === \"text\") &&\n this.getResponseHeader(\"Content-Type\") === JSON_TYPE\n ) {\n if (isPlainObject(response)) {\n return response;\n }\n\n try {\n return JSON.parse(response);\n } catch (error) {\n throw new JsonParseException(error);\n }\n }\n\n return response;\n }\n\n /**\n */\n responseHandler(resolve: Function, reject: Function): any {\n const { status } = this.xmlhttp;\n\n let response = null;\n try {\n response = this.getResponse();\n } catch (error) {\n return reject(error);\n }\n\n if (\n (status >= SUCCESS_CODE && status < REDIRECTION_CODE) ||\n (status === CLIENT_ERROR_CODE && has(response, \"formresponse\"))\n ) {\n return resolve(response);\n }\n\n return this.errorHandler(reject, response);\n }\n\n /**\n */\n setEventListeners(resolve: Function, reject: Function) {\n if (this.options.onProgress) {\n [\"load\", \"loadend\", \"loadstart\", \"progress\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, this.onProgress);\n });\n }\n\n [\"abort\", \"error\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, () => this.errorHandler(reject));\n });\n\n this.xmlhttp.addEventListener(\"timeout\", () => this.timeoutHandler(reject));\n\n this.xmlhttp.addEventListener(\"load\", () =>\n this.responseHandler(resolve, reject),\n );\n\n // Set custom events\n Object.keys(this.events).forEach((eventName) => {\n this.xmlhttp.addEventListener(eventName, this.events[eventName]);\n });\n }\n\n /**\n */\n openConnection() {\n this.xmlhttp.open(this.method, this.url, true);\n }\n\n /**\n */\n setBasicAuthentication() {\n if (Cache.hasItem(\"basic\")) {\n const basicToken = Cache.getItem(\"basic\");\n\n if (typeof basicToken === \"string\") {\n this.xmlhttp.setRequestHeader(\"Authorization\", `Basic ${basicToken}`);\n }\n }\n }\n\n /**\n */\n getResponseHeader(headerName: string): string | null {\n return this.xmlhttp.getResponseHeader(headerName);\n }\n\n /**\n */\n setCustomHeaders() {\n Object.keys(this.headers).forEach((headerName) => {\n this.xmlhttp.setRequestHeader(headerName, this.headers[headerName]);\n });\n }\n\n /**\n */\n setOtherOptions() {\n if (\n this.options.withCredentials ||\n getSetting(\"XHR_ALWAYS_WITH_CREDENTIALS\", Cache.hasItem(\"basic\"))\n ) {\n this.xmlhttp.withCredentials = true;\n }\n this.xmlhttp.responseType = this.responseType;\n this.xmlhttp.timeout = this.timeout;\n }\n\n /**\n */\n sendData() {\n if (this.data == null) {\n this.xmlhttp.send();\n } else {\n const stringData = isPlainObject(this.data)\n ? JSON.stringify(this.data)\n : this.data;\n this.xmlhttp.send(stringData);\n }\n }\n\n /**\n */\n setXMLHttpRequest(): Promise<any> {\n return new Promise((resolve, reject) => {\n this.xmlhttp = new XMLHttpRequest();\n\n this.setEventListeners(resolve, reject);\n\n this.openConnection();\n\n this.setBasicAuthentication();\n\n this.setCustomHeaders();\n\n this.setOtherOptions();\n\n this.sendData();\n });\n }\n\n /**\n */\n async fetch(): Promise<any> {\n try {\n return await this.setXMLHttpRequest();\n } catch (err) {\n if (err instanceof NetworkException && this.attempts < 2) {\n this.attempts += 1;\n return this.fetch();\n }\n\n throw err;\n }\n }\n}\n\n/**\n */\nconst validateInputArguments = (args: RequestOptions) => {\n if (args == null) {\n throw new IllegalArgumentException(\n \"Missing request options, expecting an object as argument for xhr\",\n );\n }\n\n if (!isPlainObject(args)) {\n throw new IllegalArgumentException(\n `Expecting an object as argument for xhr, but received: ${typeof args}`,\n );\n }\n\n if (!has(args, \"url\")) {\n throw new IllegalArgumentException(\n `No url property found in arguments of xhr, received: ${JSON.stringify(\n args,\n )}`,\n );\n }\n\n return true;\n};\n\n/**\n */\nconst xhr = (args: RequestOptions): Promise<any> => {\n validateInputArguments(args);\n\n return new XHR(args).fetch();\n};\n\nexport default xhr;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"xhr.js","names":["has","isPlainObject","IllegalArgumentException","UnauthorizedException","FetchException","TimeoutException","NotFoundException","JsonParseException","NetworkException","Cache","HTTP_METHODS","getSetting","NETWORK_ERROR_CODE","SUCCESS_CODE","CLIENT_ERROR_CODE","UNAUTHORIZED_CODE","REDIRECTION_CODE","NOT_FOUND_CODE","JSON_TYPE","XHR","constructor","options","_defineProperty","_options","_attempts","xmlhttp","_xmlhttp","attempts","url","params","_includesInstanceProperty","call","aUrl","split","data","method","GET","timeout","responseType","onProgress","events","getBaseLocale","_globalThis","navigator","language","headers","baseHeaders","Accept","timeoutHandler","reject","errorHandler","responseJSON","status","isReload","getResponse","response","getResponseHeader","JSON","parse","error","responseHandler","resolve","setEventListeners","forEach","eventType","addEventListener","_Object$keys","eventName","openConnection","open","setBasicAuthentication","hasItem","basicToken","getItem","setRequestHeader","headerName","setCustomHeaders","setOtherOptions","withCredentials","sendData","send","stringData","_JSON$stringify","setXMLHttpRequest","_Promise","XMLHttpRequest","fetch","err","validateInputArguments","args","xhr"],"sources":["../../../src/utils/fetch/xhr.js"],"sourcesContent":["// @flow\nimport { has, isPlainObject } from \"../helpers/objects\";\n\nimport {\n IllegalArgumentException,\n UnauthorizedException,\n FetchException,\n TimeoutException,\n NotFoundException,\n JsonParseException,\n NetworkException,\n} from \"../../exceptions\";\n\nimport Cache from \"../browser/Cache\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport { getSetting } from \"../../constants/Settings\";\n\nimport type { RequestOptions } from \"./types\";\n\nconst NETWORK_ERROR_CODE = 0;\nconst SUCCESS_CODE = 200;\nconst CLIENT_ERROR_CODE = 400;\nconst UNAUTHORIZED_CODE = 401;\nconst REDIRECTION_CODE = 300;\nconst NOT_FOUND_CODE = 404;\n\nconst JSON_TYPE = \"application/json\";\n\n/**\n * @private\n */\nclass XHR {\n _options: RequestOptions;\n _xmlhttp: XMLHttpRequest;\n _attempts: number;\n\n /**\n */\n constructor(options: RequestOptions) {\n this._options = options;\n this._attempts = 0;\n }\n\n /**\n */\n get xmlhttp(): XMLHttpRequest {\n return this._xmlhttp;\n }\n\n /**\n */\n set xmlhttp(xmlhttp: XMLHttpRequest) {\n this._xmlhttp = xmlhttp;\n }\n\n /**\n */\n get options(): RequestOptions {\n return this._options;\n }\n\n /**\n */\n set options(options: RequestOptions) {\n this._options = options;\n }\n\n /**\n */\n get attempts(): number {\n return this._attempts;\n }\n\n /**\n */\n set attempts(attempts: number) {\n this._attempts = attempts;\n }\n\n /**\n * Create and fix url when params or both querystring and params exist.\n */\n get url(): string {\n const { url } = this.options;\n if (this.params !== \"\") {\n if (url.includes(\"?\")) {\n const aUrl = url.split(\"?\");\n\n return `${aUrl[0]}?${aUrl[1]}&${this.params}`;\n }\n\n return `${url}?${this.params}`;\n }\n\n return url;\n }\n\n /**\n */\n get params(): string {\n return this.options.params || \"\";\n }\n\n /**\n */\n get data(): any | null {\n return this.options.data || null;\n }\n\n /**\n */\n get method(): $Keys<typeof HTTP_METHODS> {\n return this.options.method || HTTP_METHODS.GET;\n }\n\n /**\n */\n get timeout(): number {\n return this.options.timeout || getSetting(\"XHR_TIMEOUT_MS\", 300000);\n }\n\n /**\n */\n get responseType(): string {\n return this.options.responseType || \"json\";\n }\n\n /**\n */\n get onProgress(): ProgressEventHandler {\n if (this.options.onProgress) {\n return this.options.onProgress;\n }\n\n return () => {\n // do nothing\n };\n }\n\n /**\n */\n get events(): { [eventName: string]: () => void } {\n return this.options.events || {};\n }\n\n /**\n */\n getBaseLocale(): string {\n // $FlowIssue\n return globalThis.navigator?.language?.split(\"-\")[0] || \"en\";\n }\n\n /**\n */\n get headers(): { [string]: string } {\n const baseHeaders = {\n Accept: JSON_TYPE,\n \"Content-Type\": JSON_TYPE,\n\n // needed for csrf, see: https://plaza.beinformed.com/amdoc/csrf-protection-in-modular-ui-services-40054554.html\n \"X-Requested-With\": \"XMLHttpRequest\",\n\n \"Accept-Language\": this.getBaseLocale(),\n };\n\n if (this.options.headers) {\n // $FlowFixMe[cannot-spread-indexer]\n return {\n ...baseHeaders,\n ...this.options.headers,\n };\n }\n\n return baseHeaders;\n }\n\n /**\n */\n timeoutHandler(reject: Function): any {\n return reject(new TimeoutException(this.url, this.method));\n }\n\n /**\n */\n errorHandler(reject: Function, responseJSON: any = null): any {\n const { status } = this.xmlhttp;\n const { isReload } = this.options;\n\n if (status === NETWORK_ERROR_CODE) {\n return reject(new NetworkException(this.url, this.method));\n }\n\n if (status === NOT_FOUND_CODE) {\n return reject(new NotFoundException(this.url, this.method, isReload));\n }\n\n if (status === UNAUTHORIZED_CODE) {\n return reject(\n new UnauthorizedException(this.url, this.method, responseJSON),\n );\n }\n\n return reject(new FetchException(responseJSON, this.xmlhttp, this.options));\n }\n\n /**\n */\n getResponse(): any {\n const { responseType, response } = this.xmlhttp;\n\n if (\n (responseType === \"\" || responseType === \"text\") &&\n this.getResponseHeader(\"Content-Type\") === JSON_TYPE\n ) {\n if (isPlainObject(response)) {\n return response;\n }\n\n try {\n return JSON.parse(response);\n } catch (error) {\n throw new JsonParseException(error);\n }\n }\n\n return response;\n }\n\n /**\n */\n responseHandler(resolve: Function, reject: Function): any {\n const { status } = this.xmlhttp;\n\n let response = null;\n try {\n response = this.getResponse();\n } catch (error) {\n return reject(error);\n }\n\n if (\n (status >= SUCCESS_CODE && status < REDIRECTION_CODE) ||\n (status === CLIENT_ERROR_CODE && has(response, \"formresponse\"))\n ) {\n return resolve(response);\n }\n\n return this.errorHandler(reject, response);\n }\n\n /**\n */\n setEventListeners(resolve: Function, reject: Function) {\n if (this.options.onProgress) {\n [\"load\", \"loadend\", \"loadstart\", \"progress\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, this.onProgress);\n });\n }\n\n [\"abort\", \"error\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, () => this.errorHandler(reject));\n });\n\n this.xmlhttp.addEventListener(\"timeout\", () => this.timeoutHandler(reject));\n\n this.xmlhttp.addEventListener(\"load\", () =>\n this.responseHandler(resolve, reject),\n );\n\n // Set custom events\n Object.keys(this.events).forEach((eventName) => {\n this.xmlhttp.addEventListener(eventName, this.events[eventName]);\n });\n }\n\n /**\n */\n openConnection() {\n this.xmlhttp.open(this.method, this.url, true);\n }\n\n /**\n */\n setBasicAuthentication() {\n if (Cache.hasItem(\"basic\")) {\n const basicToken = Cache.getItem(\"basic\");\n\n if (typeof basicToken === \"string\") {\n this.xmlhttp.setRequestHeader(\"Authorization\", `Basic ${basicToken}`);\n }\n }\n }\n\n /**\n */\n getResponseHeader(headerName: string): string | null {\n return this.xmlhttp.getResponseHeader(headerName);\n }\n\n /**\n */\n setCustomHeaders() {\n Object.keys(this.headers).forEach((headerName) => {\n this.xmlhttp.setRequestHeader(headerName, this.headers[headerName]);\n });\n }\n\n /**\n */\n setOtherOptions() {\n if (\n this.options.withCredentials ||\n getSetting(\"XHR_ALWAYS_WITH_CREDENTIALS\", Cache.hasItem(\"basic\"))\n ) {\n this.xmlhttp.withCredentials = true;\n }\n this.xmlhttp.responseType = this.responseType;\n this.xmlhttp.timeout = this.timeout;\n }\n\n /**\n */\n sendData() {\n if (this.data == null) {\n this.xmlhttp.send();\n } else {\n const stringData = isPlainObject(this.data)\n ? JSON.stringify(this.data)\n : this.data;\n this.xmlhttp.send(stringData);\n }\n }\n\n /**\n */\n setXMLHttpRequest(): Promise<any> {\n return new Promise((resolve, reject) => {\n this.xmlhttp = new XMLHttpRequest();\n\n this.setEventListeners(resolve, reject);\n\n this.openConnection();\n\n this.setBasicAuthentication();\n\n this.setCustomHeaders();\n\n this.setOtherOptions();\n\n this.sendData();\n });\n }\n\n /**\n */\n async fetch(): Promise<any> {\n try {\n return await this.setXMLHttpRequest();\n } catch (err) {\n if (err instanceof NetworkException && this.attempts < 2) {\n this.attempts += 1;\n return this.fetch();\n }\n\n throw err;\n }\n }\n}\n\n/**\n */\nconst validateInputArguments = (args: RequestOptions) => {\n if (args == null) {\n throw new IllegalArgumentException(\n \"Missing request options, expecting an object as argument for xhr\",\n );\n }\n\n if (!isPlainObject(args)) {\n throw new IllegalArgumentException(\n `Expecting an object as argument for xhr, but received: ${typeof args}`,\n );\n }\n\n if (!has(args, \"url\")) {\n throw new IllegalArgumentException(\n `No url property found in arguments of xhr, received: ${JSON.stringify(\n args,\n )}`,\n );\n }\n\n return true;\n};\n\n/**\n */\nconst xhr = (args: RequestOptions): Promise<any> => {\n validateInputArguments(args);\n\n return new XHR(args).fetch();\n};\n\nexport default xhr;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
+
var _globalThis2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js/global-this"));
|
|
8
9
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
9
10
|
var _stringify = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/json/stringify"));
|
|
10
11
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
@@ -84,7 +85,9 @@ class ModularUIRequest {
|
|
|
84
85
|
if (optionLocale) {
|
|
85
86
|
return optionLocale;
|
|
86
87
|
}
|
|
87
|
-
|
|
88
|
+
|
|
89
|
+
// $FlowIssue
|
|
90
|
+
return _globalThis2.default.navigator?.language?.split("-")[0] || "en";
|
|
88
91
|
}
|
|
89
92
|
|
|
90
93
|
/**
|
|
@@ -242,7 +245,7 @@ class ModularUIRequest {
|
|
|
242
245
|
}
|
|
243
246
|
}
|
|
244
247
|
const Model = (0, _resolveModel.default)(this.response, availableModels);
|
|
245
|
-
if (Model
|
|
248
|
+
if (Model?.isApplicableModel) {
|
|
246
249
|
return Model;
|
|
247
250
|
}
|
|
248
251
|
if (availableModels) {
|
|
@@ -299,7 +302,7 @@ class ModularUIRequest {
|
|
|
299
302
|
this.response.key = key;
|
|
300
303
|
this.response.data = data;
|
|
301
304
|
const links = data._links;
|
|
302
|
-
if (links
|
|
305
|
+
if (links?.contributions) {
|
|
303
306
|
this.contributionsHref = links.contributions.href;
|
|
304
307
|
} else if (Array.isArray(links) && links[0].contributions) {
|
|
305
308
|
this.contributionsHref = links[0].contributions.href;
|
|
@@ -357,7 +360,6 @@ class ModularUIRequest {
|
|
|
357
360
|
await this.processTabLinks();
|
|
358
361
|
}
|
|
359
362
|
await this.processPanelLinks();
|
|
360
|
-
return _promise.default.resolve();
|
|
361
363
|
}
|
|
362
364
|
|
|
363
365
|
/**
|
|
@@ -530,7 +532,7 @@ class ModularUIRequest {
|
|
|
530
532
|
* First load of dynamic values when a form is loaded
|
|
531
533
|
*/
|
|
532
534
|
loadDynamicValidations(model) {
|
|
533
|
-
if (!this.options.isValidationRequest && (0, _Settings.getSetting)("USE_INSTANT_SERVER_VALIDATION") && model instanceof _FormModel.default && model.currentFormObject
|
|
535
|
+
if (!this.options.isValidationRequest && (0, _Settings.getSetting)("USE_INSTANT_SERVER_VALIDATION") && model instanceof _FormModel.default && model.currentFormObject?.hasDynamicValidations) {
|
|
534
536
|
const validationHref = this.href.setParameter("commit", "false");
|
|
535
537
|
return (0, _universalFetch.default)({
|
|
536
538
|
...this.requestOptions,
|
|
@@ -563,11 +565,11 @@ class ModularUIRequest {
|
|
|
563
565
|
}
|
|
564
566
|
this.processContributionsService(contributionsData);
|
|
565
567
|
return this.processAsyncLayoutHints();
|
|
566
|
-
}).then(() =>
|
|
568
|
+
}).then(() => this.createModel()).then(model => this.loadDynamicValidations(model)).then(model => {
|
|
567
569
|
if (this.withChildModels) {
|
|
568
570
|
return this.fetchChildModels(model);
|
|
569
571
|
}
|
|
570
|
-
return
|
|
572
|
+
return model;
|
|
571
573
|
});
|
|
572
574
|
}
|
|
573
575
|
|
|
@@ -629,7 +631,7 @@ class ModularUIRequest {
|
|
|
629
631
|
if (withChildSections && model instanceof _ContentModel.default && model.childSectionLinks.length > 0) {
|
|
630
632
|
return this.fetchContentChildSections(model);
|
|
631
633
|
}
|
|
632
|
-
return
|
|
634
|
+
return model;
|
|
633
635
|
});
|
|
634
636
|
}
|
|
635
637
|
|