@colijnit/ioneconnector 2.1.13 → 2.1.14
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/build/connector.d.ts +11 -7
- package/build/connector.js +27 -8
- package/build/connector.js.map +1 -1
- package/build/connector.unit.test.js +22 -0
- package/build/connector.unit.test.js.map +1 -1
- package/build/enum/activate-user-account-status.enum.d.ts +6 -0
- package/build/enum/activate-user-account-status.enum.js +11 -0
- package/build/enum/activate-user-account-status.enum.js.map +1 -0
- package/build/enum/login-service-method.enum.d.ts +11 -6
- package/build/enum/login-service-method.enum.js +11 -6
- package/build/enum/login-service-method.enum.js.map +1 -1
- package/build/enum/login-status.enum.d.ts +20 -0
- package/build/enum/login-status.enum.js +25 -0
- package/build/enum/login-status.enum.js.map +1 -0
- package/build/enum/reset-password-status.enum.d.ts +5 -0
- package/build/enum/reset-password-status.enum.js +10 -0
- package/build/enum/reset-password-status.enum.js.map +1 -0
- package/build/enum/user-role-type.enum.d.ts +17 -0
- package/build/enum/user-role-type.enum.js +22 -0
- package/build/enum/user-role-type.enum.js.map +1 -0
- package/build/model/login-request.d.ts +13 -0
- package/build/model/login-request.interface.d.ts +12 -0
- package/build/model/login-request.interface.js +3 -0
- package/build/model/login-request.interface.js.map +1 -0
- package/build/model/login-request.js +7 -0
- package/build/model/login-request.js.map +1 -0
- package/build/model/login-response.d.ts +15 -6
- package/build/model/login-response.js +50 -0
- package/build/model/login-response.js.map +1 -1
- package/build/model/login-service-request-data.d.ts +15 -0
- package/build/model/login-service-request-data.js +3 -0
- package/build/model/login-service-request-data.js.map +1 -0
- package/build/model/menu-content.bo.d.ts +13 -0
- package/build/model/menu-content.bo.js +14 -0
- package/build/model/menu-content.bo.js.map +1 -0
- package/build/model/options.d.ts +1 -0
- package/build/model/options.js +1 -0
- package/build/model/options.js.map +1 -1
- package/build/model/user-parameters-values.bo.d.ts +8 -0
- package/build/model/user-parameters-values.bo.js +8 -0
- package/build/model/user-parameters-values.bo.js.map +1 -0
- package/build/provider/ajax.service.d.ts +11 -1
- package/build/provider/ajax.service.js +27 -3
- package/build/provider/ajax.service.js.map +1 -1
- package/build/provider/base-backend-connection.service.d.ts +4 -2
- package/build/provider/base-backend-connection.service.js +4 -4
- package/build/provider/base-backend-connection.service.js.map +1 -1
- package/build/service/login.service.d.ts +13 -4
- package/build/service/login.service.js +70 -19
- package/build/service/login.service.js.map +1 -1
- package/build/service/public.service.d.ts +1 -1
- package/build/service/public.service.js +1 -1
- package/build/service/public.service.js.map +1 -1
- package/package.json +1 -1
- package/build/factory/business-object-factory.d.ts +0 -16
- package/build/factory/business-object-factory.js +0 -178
- package/build/factory/business-object-factory.js.map +0 -1
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BusinessObjectFactory = void 0;
|
|
4
|
-
const complex_field_decorator_1 = require("./decorators/complex-field.decorator");
|
|
5
|
-
const complex_array_decorator_1 = require("./decorators/complex-array.decorator");
|
|
6
|
-
const boolean_decorator_1 = require("./decorators/boolean.decorator");
|
|
7
|
-
const date_field_decorator_1 = require("./decorators/date-field.decorator");
|
|
8
|
-
const string_number_decorator_1 = require("./decorators/string-number.decorator");
|
|
9
|
-
const array_utils_1 = require("../utils/array-utils");
|
|
10
|
-
const business_object_1 = require("../model/business-object");
|
|
11
|
-
const is_nill_function_1 = require("../utils/function/is-nill.function");
|
|
12
|
-
const number_string_decorator_1 = require("./decorators/number-string.decorator");
|
|
13
|
-
const db_method_value_decorator_1 = require("./decorators/db-method-value.decorator");
|
|
14
|
-
const object_configuration_value_type_enum_1 = require("../enum/object-configuration-value-type.enum");
|
|
15
|
-
const function_utils_1 = require("../utils/function-utils");
|
|
16
|
-
const bo_factory_step_decorator_1 = require("./decorators/bo-factory-step.decorator");
|
|
17
|
-
const co_inject_decorator_1 = require("./decorators/co-inject.decorator");
|
|
18
|
-
const business_object_serializer_1 = require("./business-object-serializer");
|
|
19
|
-
class BusinessObjectFactory {
|
|
20
|
-
constructor(injector) {
|
|
21
|
-
this._boSerializer = new business_object_serializer_1.BusinessObjectSerializer();
|
|
22
|
-
if (injector) {
|
|
23
|
-
this._injector = injector;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
cloneClientBO(modelClass, sourceClientBO) {
|
|
27
|
-
return this.makeWithRawBackendData(modelClass, this._boSerializer.prepareBusinessObjectForSend(sourceClientBO));
|
|
28
|
-
}
|
|
29
|
-
cloneClientBOArray(modelClass, sourceClientBoArray) {
|
|
30
|
-
if (!modelClass) {
|
|
31
|
-
return undefined;
|
|
32
|
-
}
|
|
33
|
-
const clonedBusinessObjects = [];
|
|
34
|
-
if (sourceClientBoArray) {
|
|
35
|
-
for (let i = 0, len = sourceClientBoArray.length; i < len; i++) {
|
|
36
|
-
clonedBusinessObjects.push(this.cloneClientBO(modelClass, sourceClientBoArray[i]));
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return clonedBusinessObjects;
|
|
40
|
-
}
|
|
41
|
-
makeWithRawBackendData(modelClass, rawData) {
|
|
42
|
-
if (!modelClass) {
|
|
43
|
-
return undefined;
|
|
44
|
-
}
|
|
45
|
-
if (typeof modelClass !== typeof business_object_1.BusinessObject) {
|
|
46
|
-
return undefined;
|
|
47
|
-
}
|
|
48
|
-
const model = new modelClass();
|
|
49
|
-
this._copyAllPropertiesDecoratorProcessedFrom(rawData, model);
|
|
50
|
-
return model;
|
|
51
|
-
}
|
|
52
|
-
makeBOArrayFromRawBackendDataArray(modelClass, arrayOfRawDatas) {
|
|
53
|
-
if (!modelClass) {
|
|
54
|
-
return undefined;
|
|
55
|
-
}
|
|
56
|
-
const trueClientBos = [];
|
|
57
|
-
if (Array.isArray(arrayOfRawDatas)) {
|
|
58
|
-
for (let i = 0, len = arrayOfRawDatas.length; i < len; i++) {
|
|
59
|
-
trueClientBos.push(this.makeWithRawBackendData(modelClass, arrayOfRawDatas[i]));
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return trueClientBos;
|
|
63
|
-
}
|
|
64
|
-
makeNewBOWithScrCfgDefaultsApplied(modelClass, moduleCfgObjects, subObjectPath = "") {
|
|
65
|
-
if (!modelClass) {
|
|
66
|
-
return undefined;
|
|
67
|
-
}
|
|
68
|
-
const businessObject = new modelClass();
|
|
69
|
-
this._injectCoInjectFieldsInto(businessObject);
|
|
70
|
-
this.applyDefaultValuesAndFillRequiredBooleanFieldsTo(businessObject, moduleCfgObjects, subObjectPath);
|
|
71
|
-
return businessObject;
|
|
72
|
-
}
|
|
73
|
-
applyDefaultValuesAndFillRequiredBooleanFieldsTo(businessObject, configObjects, subObjectPath = "") {
|
|
74
|
-
if (businessObject && configObjects) {
|
|
75
|
-
for (let i = 0, len = configObjects.length; i < len; i++) {
|
|
76
|
-
const cfgObj = configObjects[i];
|
|
77
|
-
if (!(0, is_nill_function_1.isNill)(cfgObj.dataName) && cfgObj.hasDataNameForObjectPath(subObjectPath) &&
|
|
78
|
-
((0, is_nill_function_1.isNill)(businessObject[cfgObj.dataName]) || array_utils_1.ArrayUtils.IsEmptyArray(businessObject[cfgObj.dataName]))) {
|
|
79
|
-
if (cfgObj.hasDefaultValue()) {
|
|
80
|
-
businessObject[cfgObj.getDataNameWithoutSubObjectPath(subObjectPath)] = cfgObj.getDefaultValue();
|
|
81
|
-
}
|
|
82
|
-
else if (cfgObj.isRequired() && cfgObj.valueType === object_configuration_value_type_enum_1.ObjectConfigurationValueType.Boolean) {
|
|
83
|
-
businessObject[cfgObj.getDataNameWithoutSubObjectPath(subObjectPath)] = false;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
instantiateNewBo(modelClass) {
|
|
90
|
-
return this.makeWithRawBackendData(modelClass, {});
|
|
91
|
-
}
|
|
92
|
-
_copyAllPropertiesDecoratorProcessedFrom(sourceData, destinationModel) {
|
|
93
|
-
if (!sourceData || !destinationModel) {
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
this._injectCoInjectFieldsInto(destinationModel);
|
|
97
|
-
for (const srcPropKey in sourceData) {
|
|
98
|
-
if (!sourceData.hasOwnProperty(srcPropKey)) {
|
|
99
|
-
continue;
|
|
100
|
-
}
|
|
101
|
-
const srcPropVal = sourceData[srcPropKey];
|
|
102
|
-
if (complex_field_decorator_1.ComplexFieldDecorator.IsComplexField(destinationModel, srcPropKey)) {
|
|
103
|
-
if ((0, is_nill_function_1.isNill)(srcPropVal)) {
|
|
104
|
-
destinationModel[srcPropKey] = undefined;
|
|
105
|
-
continue;
|
|
106
|
-
}
|
|
107
|
-
const classOfField = complex_field_decorator_1.ComplexFieldDecorator.GetComplexFieldType(destinationModel, srcPropKey);
|
|
108
|
-
destinationModel[srcPropKey] = this.makeWithRawBackendData(classOfField, srcPropVal);
|
|
109
|
-
}
|
|
110
|
-
else if (complex_array_decorator_1.ComplexArrayDecorator.IsComplexArray(destinationModel, srcPropKey)) {
|
|
111
|
-
const sourceArray = srcPropVal;
|
|
112
|
-
if (!sourceArray) {
|
|
113
|
-
continue;
|
|
114
|
-
}
|
|
115
|
-
const classOfArrayItems = complex_array_decorator_1.ComplexArrayDecorator.GetComplexArrayType(destinationModel, srcPropKey);
|
|
116
|
-
const destinationArray = [];
|
|
117
|
-
for (let i = 0, len = sourceArray.length; i < len; i++) {
|
|
118
|
-
destinationArray.push(this.makeWithRawBackendData(classOfArrayItems, sourceArray[i]));
|
|
119
|
-
}
|
|
120
|
-
destinationModel[srcPropKey] = destinationArray;
|
|
121
|
-
}
|
|
122
|
-
else if (boolean_decorator_1.BooleanTextDecorator.IsBooleanTextField(destinationModel, srcPropKey)) {
|
|
123
|
-
if (typeof srcPropVal === "boolean") {
|
|
124
|
-
destinationModel[srcPropKey] = srcPropVal;
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
127
|
-
destinationModel[srcPropKey] = boolean_decorator_1.BooleanTextDecorator.GetLogicalBooleanValue(srcPropVal);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
else if (date_field_decorator_1.DateFieldFieldDecorator.IsDateField(destinationModel, srcPropKey)) {
|
|
131
|
-
destinationModel[srcPropKey] = date_field_decorator_1.DateFieldFieldDecorator.StringAsDate(srcPropVal);
|
|
132
|
-
}
|
|
133
|
-
else if (string_number_decorator_1.StringNumberDecorator.IsStringNumber(destinationModel, srcPropKey)) {
|
|
134
|
-
destinationModel[srcPropKey] = string_number_decorator_1.StringNumberDecorator.StringAsNumber(srcPropVal);
|
|
135
|
-
}
|
|
136
|
-
else if (number_string_decorator_1.NumberStringDecorator.IsNumberString(destinationModel, srcPropKey)) {
|
|
137
|
-
destinationModel[srcPropKey] = number_string_decorator_1.NumberStringDecorator.NumberAsString(srcPropVal);
|
|
138
|
-
}
|
|
139
|
-
else if (db_method_value_decorator_1.DbMethodValueDecorator.IsDbMethodValueField(destinationModel, srcPropKey)) {
|
|
140
|
-
if (typeof destinationModel[srcPropKey] === "function") {
|
|
141
|
-
destinationModel[srcPropKey](srcPropVal);
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
else {
|
|
145
|
-
if ((0, is_nill_function_1.isNill)(srcPropVal)) {
|
|
146
|
-
destinationModel[srcPropKey] = undefined;
|
|
147
|
-
}
|
|
148
|
-
else if (Array.isArray(srcPropVal)) {
|
|
149
|
-
destinationModel[srcPropKey] = array_utils_1.ArrayUtils.CloneArray(srcPropVal);
|
|
150
|
-
}
|
|
151
|
-
else if (typeof srcPropVal === "object") {
|
|
152
|
-
if (srcPropVal instanceof Map) {
|
|
153
|
-
destinationModel[srcPropKey] = srcPropVal;
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
destinationModel[srcPropKey] = Object.assign({}, srcPropVal);
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
destinationModel[srcPropKey] = srcPropVal;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
const customStepFunctionNames = bo_factory_step_decorator_1.BoFactoryStepDecorator.GetDecoratedProperties(destinationModel);
|
|
165
|
-
if (customStepFunctionNames) {
|
|
166
|
-
customStepFunctionNames.forEach((customStepFnName) => {
|
|
167
|
-
function_utils_1.FunctionUtils.CallMethodIfExists(destinationModel[customStepFnName], destinationModel);
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
_injectCoInjectFieldsInto(destinationModel) {
|
|
172
|
-
if (this._injector) {
|
|
173
|
-
co_inject_decorator_1.CoInjectDecorator.GetAllDecoratedProperties(destinationModel).forEach(prop => destinationModel[prop] = this._injector.get(co_inject_decorator_1.CoInjectDecorator.GetCoInjectFieldType(destinationModel, prop)));
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
exports.BusinessObjectFactory = BusinessObjectFactory;
|
|
178
|
-
//# sourceMappingURL=business-object-factory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"business-object-factory.js","sourceRoot":"","sources":["../../src/factory/business-object-factory.ts"],"names":[],"mappings":"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"}
|