@beinformed/ui 1.13.4 → 1.13.5
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 +2 -0
- package/esm/models/attributes/AttributeContent.js +3 -3
- package/esm/models/attributes/AttributeContent.js.map +1 -1
- package/esm/models/attributes/AttributeModel.js.map +1 -1
- package/esm/models/attributes/BooleanAttributeModel.js +1 -0
- package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeModel.js +1 -0
- package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/esm/models/attributes/CompositeAttributeChildCollection.js +1 -1
- package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
- package/esm/models/attributes/CompositeAttributeModel.js +2 -1
- package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/esm/models/base/BaseCollection.js.map +1 -1
- package/esm/models/base/ResourceCollection.js +4 -2
- package/esm/models/base/ResourceCollection.js.map +1 -1
- package/esm/models/base/ResourceModel.js +1 -0
- package/esm/models/base/ResourceModel.js.map +1 -1
- package/esm/models/concepts/BusinessScenarioModel.js +2 -1
- package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
- package/esm/models/concepts/ConceptDetailModel.js +2 -1
- package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
- package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
- package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
- package/esm/models/content/ContentLinkModel.js +2 -0
- package/esm/models/content/ContentLinkModel.js.map +1 -1
- package/esm/models/href/Href.js +1 -1
- package/esm/models/href/Href.js.map +1 -1
- package/esm/react-server/renderSSRComplete.js +1 -2
- package/esm/react-server/renderSSRComplete.js.map +1 -1
- package/esm/react-server/serverNoSSR.js +1 -1
- package/esm/react-server/serverNoSSR.js.map +1 -1
- package/esm/redux/_modularui/actions.js +16 -17
- package/esm/redux/_modularui/actions.js.map +1 -1
- package/esm/redux/_modularui/reducer.js +1 -2
- package/esm/redux/_modularui/reducer.js.map +1 -1
- package/esm/redux/actions/SignIn.js +5 -9
- package/esm/redux/actions/SignIn.js.map +1 -1
- package/esm/utils/helpers/objects.js +2 -1
- package/esm/utils/helpers/objects.js.map +1 -1
- package/lib/hooks/__tests__/useAuthentication.spec.js.flow +1 -0
- package/lib/models/attributes/AttributeContent.js +3 -3
- package/lib/models/attributes/AttributeContent.js.flow +3 -3
- package/lib/models/attributes/AttributeContent.js.map +1 -1
- package/lib/models/attributes/AttributeModel.js.flow +10 -2
- package/lib/models/attributes/AttributeModel.js.map +1 -1
- package/lib/models/attributes/BooleanAttributeModel.js +1 -0
- package/lib/models/attributes/BooleanAttributeModel.js.flow +4 -1
- package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeModel.js +1 -0
- package/lib/models/attributes/ChoiceAttributeModel.js.flow +4 -1
- package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js.flow +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionModel.js.flow +5 -2
- package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/lib/models/attributes/CompositeAttributeChildCollection.js +1 -1
- package/lib/models/attributes/CompositeAttributeChildCollection.js.flow +1 -1
- package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
- package/lib/models/attributes/CompositeAttributeModel.js +2 -1
- package/lib/models/attributes/CompositeAttributeModel.js.flow +1 -0
- package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/lib/models/base/BaseCollection.js.flow +2 -2
- package/lib/models/base/BaseCollection.js.map +1 -1
- package/lib/models/base/ResourceCollection.js +4 -2
- package/lib/models/base/ResourceCollection.js.flow +4 -6
- package/lib/models/base/ResourceCollection.js.map +1 -1
- package/lib/models/base/ResourceModel.js +1 -0
- package/lib/models/base/ResourceModel.js.flow +3 -2
- package/lib/models/base/ResourceModel.js.map +1 -1
- package/lib/models/concepts/BusinessScenarioModel.js +3 -1
- package/lib/models/concepts/BusinessScenarioModel.js.flow +2 -1
- package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
- package/lib/models/concepts/ConceptDetailModel.js +3 -1
- package/lib/models/concepts/ConceptDetailModel.js.flow +2 -2
- package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
- package/lib/models/concepts/ConceptLinkModel.js.flow +5 -2
- package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
- package/lib/models/concepts/ConceptRelationModel.js.flow +6 -2
- package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
- package/lib/models/content/ContentLinkModel.js +2 -0
- package/lib/models/content/ContentLinkModel.js.flow +2 -0
- package/lib/models/content/ContentLinkModel.js.map +1 -1
- package/lib/models/href/Href.js +1 -1
- package/lib/models/href/Href.js.flow +4 -3
- package/lib/models/href/Href.js.map +1 -1
- package/lib/models/types.js.flow +2 -2
- package/lib/react-server/__tests__/serverUtil.spec.js.flow +15 -14
- package/lib/react-server/renderSSRComplete.js +1 -2
- package/lib/react-server/renderSSRComplete.js.flow +2 -1
- package/lib/react-server/renderSSRComplete.js.map +1 -1
- package/lib/react-server/serverNoSSR.js +1 -1
- package/lib/react-server/serverNoSSR.js.flow +1 -1
- package/lib/react-server/serverNoSSR.js.map +1 -1
- package/lib/redux/_modularui/__tests__/actions.spec.js.flow +1 -0
- package/lib/redux/_modularui/actions.js +12 -12
- package/lib/redux/_modularui/actions.js.flow +12 -12
- package/lib/redux/_modularui/actions.js.map +1 -1
- package/lib/redux/_modularui/reducer.js +1 -2
- package/lib/redux/_modularui/reducer.js.flow +0 -1
- package/lib/redux/_modularui/reducer.js.map +1 -1
- package/lib/redux/actions/SignIn.js +6 -9
- package/lib/redux/actions/SignIn.js.flow +5 -11
- package/lib/redux/actions/SignIn.js.map +1 -1
- package/lib/redux/actions/__tests__/Application.spec.js.flow +1 -0
- package/lib/redux/actions/__tests__/CustomErrorResponseHandler.spec.js.flow +2 -0
- package/lib/utils/fetch/__tests__/xhr.spec.js.flow +1 -0
- package/lib/utils/helpers/objects.js +3 -1
- package/lib/utils/helpers/objects.js.flow +2 -2
- package/lib/utils/helpers/objects.js.map +1 -1
- package/package.json +8 -8
- package/src/hooks/__tests__/useAuthentication.spec.js +1 -0
- package/src/models/attributes/AttributeContent.js +3 -3
- package/src/models/attributes/AttributeModel.js +10 -2
- package/src/models/attributes/BooleanAttributeModel.js +4 -1
- package/src/models/attributes/ChoiceAttributeModel.js +4 -1
- package/src/models/attributes/ChoiceAttributeOptionCollection.js +1 -1
- package/src/models/attributes/ChoiceAttributeOptionModel.js +5 -2
- package/src/models/attributes/CompositeAttributeChildCollection.js +1 -1
- package/src/models/attributes/CompositeAttributeModel.js +1 -0
- package/src/models/base/BaseCollection.js +2 -2
- package/src/models/base/ResourceCollection.js +4 -6
- package/src/models/base/ResourceModel.js +3 -2
- package/src/models/concepts/BusinessScenarioModel.js +2 -1
- package/src/models/concepts/ConceptDetailModel.js +2 -2
- package/src/models/concepts/ConceptLinkModel.js +5 -2
- package/src/models/concepts/ConceptRelationModel.js +6 -2
- package/src/models/content/ContentLinkModel.js +2 -0
- package/src/models/href/Href.js +4 -3
- package/src/models/types.js +2 -2
- package/src/react-server/__tests__/serverUtil.spec.js +15 -14
- package/src/react-server/renderSSRComplete.js +2 -1
- package/src/react-server/serverNoSSR.js +1 -1
- package/src/redux/_modularui/__tests__/actions.spec.js +1 -0
- package/src/redux/_modularui/actions.js +12 -12
- package/src/redux/_modularui/reducer.js +0 -1
- package/src/redux/actions/SignIn.js +5 -11
- package/src/redux/actions/__tests__/Application.spec.js +1 -0
- package/src/redux/actions/__tests__/CustomErrorResponseHandler.spec.js +2 -0
- package/src/utils/fetch/__tests__/xhr.spec.js +1 -0
- package/src/utils/helpers/objects.js +2 -2
|
@@ -19,6 +19,8 @@ exports.updateStatus = exports.updateModel = exports.setModel = exports.resetMod
|
|
|
19
19
|
|
|
20
20
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
21
21
|
|
|
22
|
+
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
23
|
+
|
|
22
24
|
var _Constants = require("../../constants/Constants");
|
|
23
25
|
|
|
24
26
|
var _Href = _interopRequireDefault(require("../../models/href/Href"));
|
|
@@ -105,7 +107,8 @@ exports.updateStatus = updateStatus;
|
|
|
105
107
|
|
|
106
108
|
var loadModelSuccessAction = function loadModelSuccessAction(key, model, modelToUpdate) {
|
|
107
109
|
if (modelToUpdate) {
|
|
108
|
-
|
|
110
|
+
// $FlowFixMe[prop-missing]
|
|
111
|
+
if (typeof modelToUpdate["update"] === "function") {
|
|
109
112
|
var clonedModel = modelToUpdate.clone();
|
|
110
113
|
clonedModel.update(model);
|
|
111
114
|
return updateModel(clonedModel);
|
|
@@ -168,18 +171,15 @@ var loadModularUI = function loadModularUI(key, href, options) {
|
|
|
168
171
|
dispatch(updateStatus(key, _Constants.MODULARUI_STATUS.LOADING));
|
|
169
172
|
dispatch((0, _ProgressIndicator.startProgress)());
|
|
170
173
|
var loadModelPromise = dispatch(loadModel(key, href, options));
|
|
174
|
+
return _promise.default.resolve(loadModelPromise).then(function (response) {
|
|
175
|
+
if ((response === null || response === void 0 ? void 0 : response.type) === "FINISH_PROGRESS") {
|
|
176
|
+
dispatch(updateStatus(key, _Constants.MODULARUI_STATUS.FINISHED));
|
|
177
|
+
}
|
|
171
178
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
return dispatch((0, _ProgressIndicator.finishProgress)());
|
|
179
|
-
}).catch(function (error) {
|
|
180
|
-
return dispatch((0, _Error.handleError)(error));
|
|
181
|
-
});
|
|
182
|
-
}
|
|
179
|
+
return dispatch((0, _ProgressIndicator.finishProgress)());
|
|
180
|
+
}).catch(function (error) {
|
|
181
|
+
return dispatch((0, _Error.handleError)(error));
|
|
182
|
+
});
|
|
183
183
|
};
|
|
184
184
|
};
|
|
185
185
|
/**
|
|
@@ -73,7 +73,8 @@ const loadModelSuccessAction = (
|
|
|
73
73
|
modelToUpdate
|
|
74
74
|
): UpdateModelAction | SetModelAction => {
|
|
75
75
|
if (modelToUpdate) {
|
|
76
|
-
|
|
76
|
+
// $FlowFixMe[prop-missing]
|
|
77
|
+
if (typeof modelToUpdate["update"] === "function") {
|
|
77
78
|
const clonedModel = modelToUpdate.clone();
|
|
78
79
|
clonedModel.update(model);
|
|
79
80
|
|
|
@@ -140,17 +141,16 @@ export const loadModularUI =
|
|
|
140
141
|
dispatch(startProgress());
|
|
141
142
|
|
|
142
143
|
const loadModelPromise = dispatch(loadModel(key, href, options));
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
144
|
+
|
|
145
|
+
return Promise.resolve(loadModelPromise)
|
|
146
|
+
.then((response) => {
|
|
147
|
+
if (response?.type === "FINISH_PROGRESS") {
|
|
148
|
+
dispatch(updateStatus(key, MODULARUI_STATUS.FINISHED));
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
return dispatch(finishProgress());
|
|
152
|
+
})
|
|
153
|
+
.catch((error) => dispatch(handleError(error)));
|
|
154
154
|
};
|
|
155
155
|
|
|
156
156
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/redux/_modularui/actions.js"],"names":["setModel","key","model","connectKey","type","payload","updateModel","removeModelByKey","resetModularUI","updateStatus","status","loadModelSuccessAction","modelToUpdate","
|
|
1
|
+
{"version":3,"sources":["../../../src/redux/_modularui/actions.js"],"names":["setModel","key","model","connectKey","type","payload","updateModel","removeModelByKey","resetModularUI","updateStatus","status","loadModelSuccessAction","modelToUpdate","clonedModel","clone","update","Error","loadModel","href","options","Href","method","HTTP_METHODS","GET","data","locale","childmodels","targetModel","successAction","errorAction","error","errorResponse","ErrorResponse","isChangePassword","isResourceNotFoundAfterReload","isInvalidUsername","MODULARUI_STATUS","ERROR","loadModularUI","dispatch","LOADING","loadModelPromise","resolve","then","response","FINISHED","catch","reloadModel","selfhref","isReload"],"mappings":"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","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 UpdateModelAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n UpdateStatusAction,\n} from \"./types\";\nimport type { RequestBaseOptions } 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 updateModel = (model: ModularUIModel): UpdateModelAction => ({\n type: \"MODULARUI/UPDATE\",\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): UpdateStatusAction => ({\n type: \"MODULARUI/STATUS\",\n payload: { key, status },\n});\n\n/**\n */\nconst loadModelSuccessAction = (\n key: string,\n model: ModularUIModel,\n modelToUpdate\n): UpdateModelAction | SetModelAction => {\n if (modelToUpdate) {\n // $FlowFixMe[prop-missing]\n if (typeof modelToUpdate[\"update\"] === \"function\") {\n const clonedModel = modelToUpdate.clone();\n clonedModel.update(model);\n\n return updateModel(clonedModel);\n }\n\n throw new Error(\n `loadModel action: updateModel is set as option for ${key}, but the model is missing an update methode`\n );\n }\n\n return setModel(key, model);\n};\n\n/**\n */\nexport const loadModel = (\n key: string,\n href: Href | string,\n options?: RequestBaseOptions\n): ModularUIAction => ({\n type: \"MODULARUI/FETCH\",\n payload: {\n href: href instanceof Href ? href : new Href(href),\n method: options?.method ?? HTTP_METHODS.GET,\n data: options?.data,\n locale: options?.locale ?? \"en\",\n childmodels: options?.childmodels,\n targetModel: options?.targetModel,\n /**\n */\n successAction: (model) =>\n loadModelSuccessAction(key, model, options?.updateModel),\n /**\n */\n errorAction: (error) => {\n const errorResponse = new ErrorResponse(error, key);\n if (errorResponse.isChangePassword) {\n return {\n type: \"NO_ACTION\",\n };\n } else if (\n errorResponse.isResourceNotFoundAfterReload ||\n errorResponse.isInvalidUsername\n ) {\n return removeModelByKey(key);\n }\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?: RequestBaseOptions\n ): ThunkAction =>\n (dispatch: Dispatch) => {\n dispatch(updateStatus(key, MODULARUI_STATUS.LOADING));\n dispatch(startProgress());\n\n const loadModelPromise = dispatch(loadModel(key, href, options));\n\n return Promise.resolve(loadModelPromise)\n .then((response) => {\n if (response?.type === \"FINISH_PROGRESS\") {\n dispatch(updateStatus(key, MODULARUI_STATUS.FINISHED));\n }\n\n return dispatch(finishProgress());\n })\n .catch((error) => dispatch(handleError(error)));\n };\n\n/**\n */\nexport const reloadModel = (\n model: ModularUIModel,\n options?: RequestBaseOptions\n): ThunkAction =>\n loadModularUI(model.connectKey, model.selfhref, {\n ...options,\n isReload: true,\n });\n"],"file":"actions.js"}
|
|
@@ -121,8 +121,7 @@ var removeKey = function removeKey(modelKey, state) {
|
|
|
121
121
|
|
|
122
122
|
// eslint-disable-next-line no-unused-vars
|
|
123
123
|
var _ = state[modelKey],
|
|
124
|
-
newState = (0, _objectWithoutProperties2.default)(state, (0, _map.default)(_context2 = [modelKey]).call(_context2, _toPropertyKey));
|
|
125
|
-
|
|
124
|
+
newState = (0, _objectWithoutProperties2.default)(state, (0, _map.default)(_context2 = [modelKey]).call(_context2, _toPropertyKey));
|
|
126
125
|
return newState;
|
|
127
126
|
};
|
|
128
127
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/redux/_modularui/reducer.js"],"names":["updateStatus","state","key","status","MODULARUI_STATUS","LOADING","lastModification","Date","now","setModel","model","IllegalArgumentException","getModelKey","connectKey","updateModel","modelKey","Error","removeKey","_","newState","resetModularUI","ApplicationModel","initialState","ModularUIReducer","action","type","payload"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;AACA;;;;;;;;;;AAMA;AACA;AACA,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD,QAA4B;AAAA,MAAlBC,GAAkB,QAAlBA,GAAkB;AAAA,MAAbC,MAAa,QAAbA,MAAa;;AAC/C;AACA,MAAIA,MAAM,KAAKC,4BAAiBC,OAA5B,IAAuC,CAACJ,KAAK,CAACC,GAAD,CAAjD,EAAwD;AACtD,WAAOD,KAAP;AACD;;AAED,yCACKA,KADL,yCAEGC,GAFH,kCAGOD,KAAK,CAACC,GAAD,CAHZ;AAIIC,IAAAA,MAAM,EAANA,MAJJ;AAKIG,IAAAA,gBAAgB,EAAEC,IAAI,CAACC,GAAL;AALtB;AAQD,CAdD;AAgBA;AACA;;;AACA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACR,KAAD,SAA2B;AAAA,MAAjBC,GAAiB,SAAjBA,GAAiB;AAAA,MAAZQ,KAAY,SAAZA,KAAY;;AAC1C,MAAI,CAACT,KAAK,CAACC,GAAD,CAAV,EAAiB;AACf,WAAOD,KAAP;AACD;;AAED,MAAIS,KAAJ,EAAW;AACT,2CACKT,KADL,yCAEGC,GAFH,kCAGOD,KAAK,CAACC,GAAD,CAHZ;AAIIQ,MAAAA,KAAK,EAALA,KAJJ;AAKIJ,MAAAA,gBAAgB,EAAEC,IAAI,CAACC,GAAL;AALtB;AAQD;;AAED,QAAM,IAAIG,oCAAJ,CAA6B,uBAA7B,CAAN;AACD,CAjBD;AAmBA;AACA;;;AACA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACX,KAAD,EAAQS,KAAR;AAAA;;AAAA,SAClB,iDAAYT,KAAZ,kBAAwB,UAACC,GAAD,EAAS;AAAA;;AAC/B,QAAMW,UAAU,0CAAGZ,KAAK,CAACC,GAAD,CAAR,mEAAG,WAAYQ,KAAf,qDAAG,iBAAmBG,UAAtB,yEAAoC,EAApD;AACA,WAAOA,UAAU,KAAKH,KAAK,CAACG,UAA5B;AACD,GAHD,CADkB;AAAA,CAApB;AAMA;AACA;;;AACA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACb,KAAD,EAAQS,KAAR,EAAkB;AACpC,MAAMK,QAAQ,GAAGH,WAAW,CAACX,KAAD,EAAQS,KAAR,CAA5B;;AAEA,MAAIK,QAAJ,EAAc;AACZ,WAAON,QAAQ,CAACR,KAAD,EAAQ;AAAEC,MAAAA,GAAG,EAAEa,QAAP;AAAiBL,MAAAA,KAAK,EAALA;AAAjB,KAAR,CAAf;AACD;;AAED,QAAM,IAAIM,KAAJ,0DAC8CN,KAAK,CAACG,UADpD,EAAN;AAGD,CAVD;AAYA;AACA;;;AACA,IAAMI,SAAS,GAAG,SAAZA,SAAY,CAACF,QAAD,EAAmBd,KAAnB,EAA6D;AAAA;;AAC7E;AACA,MAAoBiB,CAApB,GAAuCjB,KAAvC,CAASc,QAAT;AAAA,MAA0BI,QAA1B,0CAAuClB,KAAvC,iCAASc,QAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/redux/_modularui/reducer.js"],"names":["updateStatus","state","key","status","MODULARUI_STATUS","LOADING","lastModification","Date","now","setModel","model","IllegalArgumentException","getModelKey","connectKey","updateModel","modelKey","Error","removeKey","_","newState","resetModularUI","ApplicationModel","initialState","ModularUIReducer","action","type","payload"],"mappings":"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","sourcesContent":["// @flow\nimport { IllegalArgumentException } from \"../../exceptions\";\nimport { MODULARUI_STATUS } from \"../../constants/Constants\";\nimport { ApplicationModel } from \"../../models\";\n\nimport type { Reducer } from \"redux\";\nimport type { ReduxAction } from \"../types\";\nimport type { ModularUIState } from \"./types\";\n\n/**\n */\nconst updateStatus = (state, { key, status }) => {\n // model should always be available when status is not loading\n if (status !== MODULARUI_STATUS.LOADING && !state[key]) {\n return state;\n }\n\n return {\n ...state,\n [key]: {\n ...state[key],\n status,\n lastModification: Date.now(),\n },\n };\n};\n\n/**\n */\nconst setModel = (state, { key, model }) => {\n if (!state[key]) {\n return state;\n }\n\n if (model) {\n return {\n ...state,\n [key]: {\n ...state[key],\n model,\n lastModification: Date.now(),\n },\n };\n }\n\n throw new IllegalArgumentException(\"No model for setModel\");\n};\n\n/**\n */\nconst getModelKey = (state, model) =>\n Object.keys(state).find((key) => {\n const connectKey = state[key]?.model?.connectKey ?? \"\";\n return connectKey === model.connectKey;\n });\n\n/**\n */\nconst updateModel = (state, model) => {\n const modelKey = getModelKey(state, model);\n\n if (modelKey) {\n return setModel(state, { key: modelKey, model });\n }\n\n throw new Error(\n `ModularUIReducer: Cannot update model with key ${model.connectKey}`\n );\n};\n\n/**\n */\nconst removeKey = (modelKey: string, state: ModularUIState): ModularUIState => {\n // eslint-disable-next-line no-unused-vars\n const { [modelKey]: _, ...newState } = state;\n\n return newState;\n};\n\n/**\n * Remove all but application models\n */\nconst resetModularUI = (state: ModularUIState) => {\n const newState = {};\n\n for (const key in state) {\n if (state[key].model instanceof ApplicationModel) {\n newState[key] = { ...state[key] };\n }\n }\n\n return newState;\n};\n\nconst initialState: ModularUIState = {};\n\n/**\n * Modular UI Reducer\n */\nexport const ModularUIReducer: Reducer<ModularUIState, ReduxAction> = (\n state = initialState,\n action\n) => {\n if (!action) {\n return state;\n }\n\n switch (action.type) {\n case \"MODULARUI/RESET\":\n return resetModularUI(state);\n\n case \"MODULARUI/STATUS\":\n return updateStatus(state, action.payload);\n\n case \"MODULARUI/SET\":\n return setModel(state, action.payload);\n\n case \"MODULARUI/UPDATE\":\n return updateModel(state, action.payload);\n\n case \"MODULARUI/REMOVE_KEY\":\n return removeKey(action.payload, state);\n\n default:\n return state;\n }\n};\n"],"file":"reducer.js"}
|
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.loginSuccess = exports.loginFailed = exports.login = exports.changePassword = void 0;
|
|
9
9
|
|
|
10
|
+
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
11
|
+
|
|
10
12
|
var _Cache = _interopRequireDefault(require("../../utils/browser/Cache"));
|
|
11
13
|
|
|
12
14
|
var _Authenticate = _interopRequireDefault(require("../../modularui/Authenticate"));
|
|
@@ -81,16 +83,11 @@ var login = function login(username, password) {
|
|
|
81
83
|
}).catch(function (error) {
|
|
82
84
|
if (error.id === "Error.ChangePasswordRequired") {
|
|
83
85
|
var dispatchedReloadApplication = dispatch((0, _Application.reloadApplication)());
|
|
86
|
+
return _promise.default.resolve(dispatchedReloadApplication).then(function () {
|
|
87
|
+
_Cache.default.addItem("auth", true);
|
|
84
88
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
_Cache.default.addItem("auth", true);
|
|
88
|
-
|
|
89
|
-
return dispatch(changePassword());
|
|
90
|
-
}).then(function () {
|
|
91
|
-
return dispatch((0, _ProgressIndicator.finishProgress)());
|
|
92
|
-
});
|
|
93
|
-
}
|
|
89
|
+
return dispatch(changePassword());
|
|
90
|
+
});
|
|
94
91
|
}
|
|
95
92
|
|
|
96
93
|
dispatch(loginFailed(error.id));
|
|
@@ -66,17 +66,11 @@ export const login =
|
|
|
66
66
|
.catch((error) => {
|
|
67
67
|
if (error.id === "Error.ChangePasswordRequired") {
|
|
68
68
|
const dispatchedReloadApplication = dispatch(reloadApplication());
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
.then(() => {
|
|
75
|
-
Cache.addItem("auth", true);
|
|
76
|
-
return dispatch(changePassword());
|
|
77
|
-
})
|
|
78
|
-
.then(() => dispatch(finishProgress()));
|
|
79
|
-
}
|
|
69
|
+
|
|
70
|
+
return Promise.resolve(dispatchedReloadApplication).then(() => {
|
|
71
|
+
Cache.addItem("auth", true);
|
|
72
|
+
return dispatch(changePassword());
|
|
73
|
+
});
|
|
80
74
|
}
|
|
81
75
|
|
|
82
76
|
dispatch(loginFailed(error.id));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/redux/actions/SignIn.js"],"names":["loginFailed","errorMessage","type","payload","loginSuccess","changePassword","dispatch","getState","isModal","router","location","state","modal","locationFrom","from","CHANGEPASSWORD_PATH","login","username","password","Authenticate","then","Cache","addItem","catch","error","id","dispatchedReloadApplication"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/redux/actions/SignIn.js"],"names":["loginFailed","errorMessage","type","payload","loginSuccess","changePassword","dispatch","getState","isModal","router","location","state","modal","locationFrom","from","CHANGEPASSWORD_PATH","login","username","password","Authenticate","then","Cache","addItem","catch","error","id","dispatchedReloadApplication","resolve"],"mappings":";;;;;;;;;;;AACA;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AAQA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,YAAD;AAAA,SAA8C;AACvEC,IAAAA,IAAI,EAAE,sBADiE;AAEvEC,IAAAA,OAAO,EAAEF;AAF8D,GAA9C;AAAA,CAApB;AAKP;AACA;AACA;;;;;AACO,IAAMG,YAAY,GAAG,SAAfA,YAAe;AAAA,SAA2B;AACrDF,IAAAA,IAAI,EAAE;AAD+C,GAA3B;AAAA,CAArB;AAIP;AACA;AACA;;;;;AACO,IAAMG,cAAc,GAAG,SAAjBA,cAAiB;AAAA,SAAmB,UAACC,QAAD,EAAWC,QAAX,EAAwB;AAAA;;AACvED,IAAAA,QAAQ,CAAC;AACPJ,MAAAA,IAAI,EAAE;AADC,KAAD,CAAR;AAIA,QAAMM,OAAO,4BAAGD,QAAQ,GAAGE,MAAX,CAAkBC,QAArB,oFAAG,sBAA4BC,KAA/B,2DAAG,uBAAmCC,KAAnD;AACA,QAAMC,YAAY,6BAAGN,QAAQ,GAAGE,MAAX,CAAkBC,QAArB,qFAAG,uBAA4BC,KAA/B,2DAAG,uBAAmCG,IAAxD;AACA,WAAOR,QAAQ,CACb,mBAAKS,8BAAL,EAA0B;AACxBD,MAAAA,IAAI,EAAED,YAAY,GAAGA,YAAH,GAAkBN,QAAQ,GAAGE,MAAX,CAAkBC,QAD9B;AAExBE,MAAAA,KAAK,EAAEJ;AAFiB,KAA1B,CADa,CAAf;AAMD,GAb6B;AAAA,CAAvB;AAeP;AACA;;;;;AACO,IAAMQ,KAAK,GAChB,SADWA,KACX,CAACC,QAAD,EAAmBC,QAAnB;AAAA,SACA,UAACZ,QAAD,EAAc;AACZA,IAAAA,QAAQ,CAAC,uCAAD,CAAR;AAEA,WAAO,IAAIa,qBAAJ,GACJH,KADI,CACEC,QADF,EACYC,QADZ,EAEJE,IAFI,CAEC;AAAA,aAAMd,QAAQ,CAAC,qCAAD,CAAd;AAAA,KAFD,EAGJc,IAHI,CAGC,YAAM;AACVC,qBAAMC,OAAN,CAAc,MAAd,EAAsB,IAAtB;;AACAhB,MAAAA,QAAQ,CAACF,YAAY,EAAb,CAAR;AAEA,aAAOE,QAAQ,CAAC,wCAAD,CAAf;AACD,KARI,EASJiB,KATI,CASE,UAACC,KAAD,EAAW;AAChB,UAAIA,KAAK,CAACC,EAAN,KAAa,8BAAjB,EAAiD;AAC/C,YAAMC,2BAA2B,GAAGpB,QAAQ,CAAC,qCAAD,CAA5C;AAEA,eAAO,iBAAQqB,OAAR,CAAgBD,2BAAhB,EAA6CN,IAA7C,CAAkD,YAAM;AAC7DC,yBAAMC,OAAN,CAAc,MAAd,EAAsB,IAAtB;;AACA,iBAAOhB,QAAQ,CAACD,cAAc,EAAf,CAAf;AACD,SAHM,CAAP;AAID;;AAEDC,MAAAA,QAAQ,CAACN,WAAW,CAACwB,KAAK,CAACC,EAAP,CAAZ,CAAR;AACA,aAAOnB,QAAQ,CAAC,wCAAD,CAAf;AACD,KArBI,CAAP;AAsBD,GA1BD;AAAA,CADK","sourcesContent":["// @flow\nimport Cache from \"../../utils/browser/Cache\";\nimport Authenticate from \"../../modularui/Authenticate\";\n\nimport { reloadApplication } from \"./Application\";\n\nimport { startProgress, finishProgress } from \"./ProgressIndicator\";\nimport { push } from \"../_router/actions\";\nimport { CHANGEPASSWORD_PATH } from \"../../constants/Constants\";\n\nimport type {\n LoginFailedAction,\n LoginSuccessAction,\n ThunkAction,\n} from \"../types\";\n\n/**\n * Send login failed action\n */\nexport const loginFailed = (errorMessage: string): LoginFailedAction => ({\n type: \"AUTHENTICATION_ERROR\",\n payload: errorMessage,\n});\n\n/**\n * Send login success action\n */\nexport const loginSuccess = (): LoginSuccessAction => ({\n type: \"AUTHENTICATION_SUCCESS\",\n});\n\n/**\n * Send change password action\n */\nexport const changePassword = (): ThunkAction => (dispatch, getState) => {\n dispatch({\n type: \"CHANGE_PASSWORD\",\n });\n\n const isModal = getState().router.location?.state?.modal;\n const locationFrom = getState().router.location?.state?.from;\n return dispatch(\n push(CHANGEPASSWORD_PATH, {\n from: locationFrom ? locationFrom : getState().router.location,\n modal: isModal,\n })\n );\n};\n\n/**\n */\nexport const login =\n (username: string, password: string): ThunkAction =>\n (dispatch) => {\n dispatch(startProgress());\n\n return new Authenticate()\n .login(username, password)\n .then(() => dispatch(reloadApplication()))\n .then(() => {\n Cache.addItem(\"auth\", true);\n dispatch(loginSuccess());\n\n return dispatch(finishProgress());\n })\n .catch((error) => {\n if (error.id === \"Error.ChangePasswordRequired\") {\n const dispatchedReloadApplication = dispatch(reloadApplication());\n\n return Promise.resolve(dispatchedReloadApplication).then(() => {\n Cache.addItem(\"auth\", true);\n return dispatch(changePassword());\n });\n }\n\n dispatch(loginFailed(error.id));\n return dispatch(finishProgress());\n });\n };\n"],"file":"SignIn.js"}
|
|
@@ -27,6 +27,7 @@ describe("custom error response handling", () => {
|
|
|
27
27
|
const store = mockStore({});
|
|
28
28
|
|
|
29
29
|
setCustomErrorResponseHandler((error) => {
|
|
30
|
+
// eslint-disable-next-line jest/no-conditional-in-test
|
|
30
31
|
if (error.isRemoteServiceException) {
|
|
31
32
|
return {
|
|
32
33
|
type: "REMOTE_SERVICE_EXCEPTION",
|
|
@@ -50,6 +51,7 @@ describe("custom error response handling", () => {
|
|
|
50
51
|
const store = mockStore({});
|
|
51
52
|
|
|
52
53
|
setCustomErrorResponseHandler((error, defaultHandler) => (dispatch) => {
|
|
54
|
+
// eslint-disable-next-line jest/no-conditional-in-test
|
|
53
55
|
if (error.isRemoteServiceException) {
|
|
54
56
|
dispatch({
|
|
55
57
|
type: "REMOTE_SERVICE_EXCEPTION",
|
|
@@ -156,6 +156,7 @@ describe("xhr", () => {
|
|
|
156
156
|
onProgress: ({ type, loaded, total, lengthComputable }) => {
|
|
157
157
|
events.push({ type, loaded, total, lengthComputable });
|
|
158
158
|
|
|
159
|
+
// eslint-disable-next-line jest/no-conditional-in-test
|
|
159
160
|
if (type === "loadend") {
|
|
160
161
|
resolve(events);
|
|
161
162
|
}
|
|
@@ -11,10 +11,12 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/ty
|
|
|
11
11
|
|
|
12
12
|
var _has2 = _interopRequireDefault(require("lodash/has"));
|
|
13
13
|
|
|
14
|
+
var _isPlainObject2 = _interopRequireDefault(require("lodash/isPlainObject"));
|
|
15
|
+
|
|
14
16
|
/**
|
|
15
17
|
*/
|
|
16
18
|
var isPlainObject = function isPlainObject(value) {
|
|
17
|
-
return
|
|
19
|
+
return (0, _isPlainObject2.default)(value);
|
|
18
20
|
};
|
|
19
21
|
/**
|
|
20
22
|
*/
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
import _has from "lodash/has";
|
|
3
|
+
import _isPlainObject from "lodash/isPlainObject";
|
|
3
4
|
|
|
4
5
|
/**
|
|
5
6
|
*/
|
|
6
|
-
export const isPlainObject = (value: any): boolean =>
|
|
7
|
-
Object.prototype.toString.call(value) === "[object Object]";
|
|
7
|
+
export const isPlainObject = (value: any): boolean => _isPlainObject(value);
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/helpers/objects.js"],"names":["isPlainObject","value","
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/helpers/objects.js"],"names":["isPlainObject","value","has","obj","propName","get","path","defaultValue","String","split","reduce","acc","v"],"mappings":";;;;;;;;;;;AACA;;AACA;;AAEA;AACA;AACO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD;AAAA,SAAyB,6BAAeA,KAAf,CAAzB;AAAA,CAAtB;AAEP;AACA;;;;;AACO,IAAMC,GAAG,GAAG,SAANA,GAAM,CAACC,GAAD,EAAWC,QAAX,EAAyC;AAC1D,MAAI,CAACJ,aAAa,CAACG,GAAD,CAAlB,EAAyB;AACvB,WAAO,KAAP;AACD;;AAED,SAAO,mBAAKA,GAAL,EAAUC,QAAV,CAAP;AACD,CANM;AAQP;AACA;AACA;AACA;;;;;AACO,IAAMC,GAAG,GAAG,SAANA,GAAM,CAACF,GAAD,EAAeG,IAAf,EAA6BC,YAA7B;AAAA,SACjBC,MAAM,CAACF,IAAD,CAAN,CACGG,KADH,CACS,GADT,EAEGC,MAFH,CAEU,UAACC,GAAD,EAAMC,CAAN,EAAY;AAClB,QAAI,sBAAOD,GAAP,MAAe,QAAnB,EAA6B;AAAA;;AAC3B,uBAAOA,GAAG,CAACC,CAAD,CAAV,2CAAiBL,YAAjB;AACD;;AACD,WAAOA,YAAP;AACD,GAPH,EAOKJ,GAPL,CADiB;AAAA,CAAZ","sourcesContent":["// @flow\nimport _has from \"lodash/has\";\nimport _isPlainObject from \"lodash/isPlainObject\";\n\n/**\n */\nexport const isPlainObject = (value: any): boolean => _isPlainObject(value);\n\n/**\n */\nexport const has = (obj: any, propName: string): boolean => {\n if (!isPlainObject(obj)) {\n return false;\n }\n\n return _has(obj, propName);\n};\n\n/**\n * Retrieve property of an object\n * When path is only one deep better use optional chaining\n */\nexport const get = (obj: { ... }, path: string, defaultValue?: any): any =>\n String(path)\n .split(\".\")\n .reduce((acc, v) => {\n if (typeof acc === \"object\") {\n return acc[v] ?? defaultValue;\n }\n return defaultValue;\n }, obj);\n"],"file":"objects.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beinformed/ui",
|
|
3
|
-
"version": "1.13.
|
|
3
|
+
"version": "1.13.5",
|
|
4
4
|
"description": "Toolbox for be informed javascript layouts",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"bugs": "http://support.beinformed.com",
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"styled-components": "^5.2.0"
|
|
79
79
|
},
|
|
80
80
|
"dependencies": {
|
|
81
|
-
"@babel/runtime-corejs3": "^7.17.
|
|
81
|
+
"@babel/runtime-corejs3": "^7.17.2",
|
|
82
82
|
"big.js": "^6.1.1",
|
|
83
83
|
"date-fns": "^2.28.0",
|
|
84
84
|
"deepmerge": "^4.2.2",
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
},
|
|
97
97
|
"devDependencies": {
|
|
98
98
|
"@babel/cli": "^7.17.0",
|
|
99
|
-
"@babel/core": "^7.17.
|
|
99
|
+
"@babel/core": "^7.17.2",
|
|
100
100
|
"@babel/eslint-parser": "^7.17.0",
|
|
101
101
|
"@babel/eslint-plugin": "^7.16.5",
|
|
102
102
|
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
|
|
@@ -107,8 +107,8 @@
|
|
|
107
107
|
"@commitlint/cli": "^16.1.0",
|
|
108
108
|
"@commitlint/config-conventional": "^16.0.0",
|
|
109
109
|
"@testing-library/react-hooks": "^7.0.2",
|
|
110
|
-
"auditjs": "^4.0.
|
|
111
|
-
"babel-jest": "^27.
|
|
110
|
+
"auditjs": "^4.0.36",
|
|
111
|
+
"babel-jest": "^27.5.1",
|
|
112
112
|
"babel-plugin-styled-components": "^2.0.2",
|
|
113
113
|
"cherry-pick": "^0.5.0",
|
|
114
114
|
"cross-env": "^7.0.3",
|
|
@@ -116,19 +116,19 @@
|
|
|
116
116
|
"eslint": "^8.8.0",
|
|
117
117
|
"eslint-config-prettier": "^8.3.0",
|
|
118
118
|
"eslint-plugin-babel": "^5.3.1",
|
|
119
|
-
"eslint-plugin-
|
|
119
|
+
"eslint-plugin-ft-flow": "^2.0.1",
|
|
120
120
|
"eslint-plugin-import": "^2.25.4",
|
|
121
121
|
"eslint-plugin-jest": "^26.0.0",
|
|
122
122
|
"eslint-plugin-jsdoc": "^37.7.1",
|
|
123
123
|
"eslint-plugin-react": "^7.28.0",
|
|
124
124
|
"eslint-plugin-react-hooks": "^4.3.0",
|
|
125
|
-
"flow-bin": "0.
|
|
125
|
+
"flow-bin": "^0.171.0",
|
|
126
126
|
"flow-copy-source": "^2.0.9",
|
|
127
127
|
"flow-typed": "^3.6.1",
|
|
128
128
|
"glob": "^7.2.0",
|
|
129
129
|
"history": "^4.0.0",
|
|
130
130
|
"husky": "^7.0.4",
|
|
131
|
-
"jest": "^27.
|
|
131
|
+
"jest": "^27.5.1",
|
|
132
132
|
"jest-junit": "^13.0.0",
|
|
133
133
|
"jest-sonar-reporter": "^2.0.0",
|
|
134
134
|
"jscodeshift": "^0.13.1",
|
|
@@ -62,7 +62,7 @@ class AttributeContent {
|
|
|
62
62
|
if (this._content?.elements) {
|
|
63
63
|
return this._content.elements?.map((element) => {
|
|
64
64
|
if ("propertyElement" in element) {
|
|
65
|
-
// $FlowIssue
|
|
65
|
+
// $FlowIssue[prop-missing]
|
|
66
66
|
const { label, layouthint, properties } = element.propertyElement;
|
|
67
67
|
|
|
68
68
|
return {
|
|
@@ -76,7 +76,7 @@ class AttributeContent {
|
|
|
76
76
|
|
|
77
77
|
if ("textFragmentElement" in element) {
|
|
78
78
|
const { label, layouthint, textfragments } =
|
|
79
|
-
// $FlowIssue
|
|
79
|
+
// $FlowIssue[prop-missing]
|
|
80
80
|
element.textFragmentElement;
|
|
81
81
|
return {
|
|
82
82
|
textFragmentElement: {
|
|
@@ -91,7 +91,7 @@ class AttributeContent {
|
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
if ("contentElement" in element) {
|
|
94
|
-
// $FlowIssue
|
|
94
|
+
// $FlowIssue[prop-missing]
|
|
95
95
|
const { label, layouthint, sections } = element.contentElement;
|
|
96
96
|
return {
|
|
97
97
|
contentElement: {
|
|
@@ -26,7 +26,12 @@ import {
|
|
|
26
26
|
} from "../../exceptions";
|
|
27
27
|
|
|
28
28
|
import type { MessageParameters } from "../../i18n/types";
|
|
29
|
-
import type {
|
|
29
|
+
import type {
|
|
30
|
+
AttributeType,
|
|
31
|
+
FormErrorAnchor,
|
|
32
|
+
IModelWithChildModels,
|
|
33
|
+
ModularUIModel,
|
|
34
|
+
} from "../types";
|
|
30
35
|
import type LinkModel from "../links/LinkModel";
|
|
31
36
|
import type ContentConfiguration from "../contentconfiguration/ContentConfiguration";
|
|
32
37
|
import type ContentConfigurationElements from "../contentconfiguration/ContentConfigurationElements";
|
|
@@ -37,7 +42,10 @@ import AttributeContent from "./AttributeContent";
|
|
|
37
42
|
/**
|
|
38
43
|
* Attribute model, base model for all kind of attributes
|
|
39
44
|
*/
|
|
40
|
-
export default class AttributeModel
|
|
45
|
+
export default class AttributeModel
|
|
46
|
+
extends BaseModel
|
|
47
|
+
implements IModelWithChildModels
|
|
48
|
+
{
|
|
41
49
|
_label: string;
|
|
42
50
|
_lastModification: number = 0;
|
|
43
51
|
|
|
@@ -142,7 +142,10 @@ export default class BooleanAttributeModel extends AttributeModel {
|
|
|
142
142
|
* Getting all enabled options
|
|
143
143
|
*/
|
|
144
144
|
get selected(): Array<string> {
|
|
145
|
-
|
|
145
|
+
// $FlowFixMe[incompatible-call]
|
|
146
|
+
return this.options.selected.map<string, ChoiceAttributeOptionModel>(
|
|
147
|
+
(option: ChoiceAttributeOptionModel) => option.code
|
|
148
|
+
);
|
|
146
149
|
}
|
|
147
150
|
|
|
148
151
|
/**
|
|
@@ -149,7 +149,10 @@ export default class ChoiceAttributeModel extends AttributeModel {
|
|
|
149
149
|
* Getting all enabled options
|
|
150
150
|
*/
|
|
151
151
|
get selected(): Array<string> {
|
|
152
|
-
|
|
152
|
+
// $FlowFixMe[incompatible-call]
|
|
153
|
+
return this.options.selected.map<string, ChoiceAttributeOptionModel>(
|
|
154
|
+
(option: ChoiceAttributeOptionModel) => option.code
|
|
155
|
+
);
|
|
153
156
|
}
|
|
154
157
|
|
|
155
158
|
/**
|
|
@@ -220,7 +220,7 @@ class ChoiceAttributeOptionCollection extends ResourceCollection<ChoiceAttribute
|
|
|
220
220
|
get selected(): Array<ChoiceAttributeOptionModel> {
|
|
221
221
|
const selectedOptions = [];
|
|
222
222
|
|
|
223
|
-
this.collection.forEach((option) => {
|
|
223
|
+
this.collection.forEach((option: ChoiceAttributeOptionModel) => {
|
|
224
224
|
if (option.selected && option.selected === true) {
|
|
225
225
|
selectedOptions.push(option);
|
|
226
226
|
}
|
|
@@ -13,13 +13,16 @@ import AttributeCollection from "./AttributeCollection";
|
|
|
13
13
|
import ConceptDetailModel from "../concepts/ConceptDetailModel";
|
|
14
14
|
import AttributeContent from "./AttributeContent";
|
|
15
15
|
|
|
16
|
-
import type { ModularUIModel } from "../types";
|
|
16
|
+
import type { IModelWithChildModels, ModularUIModel } from "../types";
|
|
17
17
|
import type ListItemModel from "../list/ListItemModel";
|
|
18
18
|
import type LinkModel from "../links/LinkModel";
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
*/
|
|
22
|
-
class ChoiceAttributeOptionModel
|
|
22
|
+
class ChoiceAttributeOptionModel
|
|
23
|
+
extends BaseModel
|
|
24
|
+
implements IModelWithChildModels
|
|
25
|
+
{
|
|
23
26
|
_code: string;
|
|
24
27
|
_isSelected: boolean;
|
|
25
28
|
_referenceDate: ISO_DATE;
|
|
@@ -165,6 +165,7 @@ class CompositeAttributeChildCollection extends ResourceCollection<AttributeType
|
|
|
165
165
|
*/
|
|
166
166
|
get initvalue(): any {
|
|
167
167
|
if (this.first instanceof CompositeAttributeChildCollection) {
|
|
168
|
+
// $FlowFixMe[missing-type-arg]
|
|
168
169
|
return this.collection.map<Array<Object>>(
|
|
169
170
|
(collection) => collection.initvalue
|
|
170
171
|
);
|
|
@@ -195,7 +196,6 @@ class CompositeAttributeChildCollection extends ResourceCollection<AttributeType
|
|
|
195
196
|
|
|
196
197
|
this.collection.forEach((attribute) => {
|
|
197
198
|
if (attribute.formdata !== null && !attribute.readonly) {
|
|
198
|
-
// $FlowIgnore[cannot-spread-indexer]
|
|
199
199
|
children = {
|
|
200
200
|
...children,
|
|
201
201
|
...attribute.formdata,
|
|
@@ -375,6 +375,7 @@ class CompositeAttributeModel extends AttributeModel {
|
|
|
375
375
|
(this.key === otherAttribute.key &&
|
|
376
376
|
this.parentKey === otherAttribute.parentKey) ||
|
|
377
377
|
this.children.some(
|
|
378
|
+
//$FlowFixMe[method-unbinding]
|
|
378
379
|
(child) => child.equals && child.equals(otherAttribute)
|
|
379
380
|
)
|
|
380
381
|
);
|
|
@@ -154,9 +154,9 @@ class BaseCollection<T> {
|
|
|
154
154
|
*/
|
|
155
155
|
map<U>(
|
|
156
156
|
callbackfn: (value: T, index: number, array: Array<T>) => U,
|
|
157
|
-
thisArg?:
|
|
157
|
+
thisArg?: T
|
|
158
158
|
): Array<U> {
|
|
159
|
-
return this.collection.map<U>(callbackfn, thisArg);
|
|
159
|
+
return this.collection.map<U, ?T>(callbackfn, thisArg);
|
|
160
160
|
}
|
|
161
161
|
|
|
162
162
|
/**
|
|
@@ -16,11 +16,8 @@ class ResourceCollection<T: IModelWithChildModels> extends BaseCollection<T> {
|
|
|
16
16
|
const initialChildModelLinks = [];
|
|
17
17
|
|
|
18
18
|
this.collection.forEach((item: T) => {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
item.getInitialChildModelLinks &&
|
|
22
|
-
typeof item.getInitialChildModelLinks === "function"
|
|
23
|
-
) {
|
|
19
|
+
// $FlowFixMe[method-unbinding]
|
|
20
|
+
if (typeof item?.getInitialChildModelLinks === "function") {
|
|
24
21
|
initialChildModelLinks.push(...item.getInitialChildModelLinks());
|
|
25
22
|
}
|
|
26
23
|
});
|
|
@@ -33,7 +30,8 @@ class ResourceCollection<T: IModelWithChildModels> extends BaseCollection<T> {
|
|
|
33
30
|
*/
|
|
34
31
|
setChildModels(models: Array<ModularUIModel>) {
|
|
35
32
|
this.collection.forEach((item) => {
|
|
36
|
-
|
|
33
|
+
// $FlowFixMe[prop-missing]
|
|
34
|
+
if (typeof item["setChildModels"] === "function") {
|
|
37
35
|
item.setChildModels(models);
|
|
38
36
|
}
|
|
39
37
|
});
|
|
@@ -200,8 +200,9 @@ class ResourceModel extends BaseModel implements IModelWithChildModels {
|
|
|
200
200
|
...super.dehydrate(),
|
|
201
201
|
key: this._key,
|
|
202
202
|
locale: this._locale,
|
|
203
|
-
|
|
204
|
-
|
|
203
|
+
// $FlowFixMe[missing-type-arg]
|
|
204
|
+
childModels: this._childModels.map<ModularUIModel>(
|
|
205
|
+
(childModel: ModularUIModel) => childModel.dehydrate()
|
|
205
206
|
),
|
|
206
207
|
};
|
|
207
208
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
import ConceptDetailModel from "./ConceptDetailModel";
|
|
3
|
+
import ConceptTypeDetailModel from "./ConceptTypeDetailModel";
|
|
3
4
|
|
|
4
5
|
import type { ModularUIResponse } from "../../modularui";
|
|
5
6
|
import type { ModularUIModel } from "../types";
|
|
@@ -58,7 +59,7 @@ class BusinessScenarioModel extends ConceptDetailModel {
|
|
|
58
59
|
setChildModels(models: Array<ModularUIModel>) {
|
|
59
60
|
// $FlowExpectedError[incompatible-type]
|
|
60
61
|
this.conceptType = models.find(
|
|
61
|
-
(model) => model
|
|
62
|
+
(model) => model instanceof ConceptTypeDetailModel
|
|
62
63
|
);
|
|
63
64
|
|
|
64
65
|
const scenarioSteps = [];
|