functional-models 2.1.2 → 2.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/interfaces.d.ts +4 -4
- package/interfaces.js.map +1 -1
- package/lib.d.ts +15 -1
- package/lib.js +14 -1
- package/lib.js.map +1 -1
- package/package.json +2 -1
- package/properties.d.ts +9029 -930
- package/properties.js +34 -4
- package/properties.js.map +1 -1
- package/serialization.js +5 -3
- package/serialization.js.map +1 -1
- package/validation.d.ts +2044 -2
- package/validation.js +21 -1
- package/validation.js.map +1 -1
package/properties.js
CHANGED
|
@@ -14,6 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.BooleanProperty = exports.EmailProperty = exports.ObjectProperty = exports.NumberProperty = exports.ConstantValueProperty = exports.TextProperty = exports.IntegerProperty = exports.AdvancedModelReferenceProperty = exports.ModelReferenceProperty = exports.ArrayProperty = exports.DateProperty = exports.UniqueIdProperty = exports.UniqueId = exports.NaturalIdProperty = exports.Property = void 0;
|
|
16
16
|
const merge_1 = __importDefault(require("lodash/merge"));
|
|
17
|
+
const get_1 = __importDefault(require("lodash/get"));
|
|
17
18
|
const validation_1 = require("./validation");
|
|
18
19
|
const constants_1 = require("./constants");
|
|
19
20
|
const lazy_1 = require("./lazy");
|
|
@@ -138,7 +139,11 @@ const AdvancedModelReferenceProperty = (model, config = {}, additionalMetadata =
|
|
|
138
139
|
}
|
|
139
140
|
return model;
|
|
140
141
|
};
|
|
141
|
-
const
|
|
142
|
+
const validator = (0, validation_1.referenceTypeMatch)(model);
|
|
143
|
+
const validators = (0, lib_1.mergeValidators)(config, [
|
|
144
|
+
// @ts-ignore
|
|
145
|
+
validator,
|
|
146
|
+
]);
|
|
142
147
|
const _getId = (instanceValues) => () => {
|
|
143
148
|
if (!instanceValues) {
|
|
144
149
|
return null;
|
|
@@ -149,21 +154,46 @@ const AdvancedModelReferenceProperty = (model, config = {}, additionalMetadata =
|
|
|
149
154
|
if (typeof instanceValues === 'string') {
|
|
150
155
|
return instanceValues;
|
|
151
156
|
}
|
|
157
|
+
if (instanceValues.getPrimaryKey) {
|
|
158
|
+
return instanceValues.getPrimaryKey();
|
|
159
|
+
}
|
|
152
160
|
const theModel = _getModel();
|
|
153
161
|
const primaryKey = theModel.getPrimaryKeyName();
|
|
154
162
|
return instanceValues[primaryKey];
|
|
155
163
|
};
|
|
156
164
|
const lazyLoadMethod = (instanceValues) => __awaiter(void 0, void 0, void 0, function* () {
|
|
157
|
-
|
|
165
|
+
const valueIsModelInstance = (0, lib_1.isModelInstance)(instanceValues);
|
|
166
|
+
const _getInstanceReturn = (objToUse) => {
|
|
167
|
+
// We need to determine if the object we just got is an actual model instance to determine if we need to make one.
|
|
168
|
+
const objIsModelInstance = (0, lib_1.isModelInstance)(objToUse);
|
|
169
|
+
// @ts-ignore
|
|
170
|
+
const instance = objIsModelInstance
|
|
171
|
+
? objToUse
|
|
172
|
+
: _getModel().create(objToUse);
|
|
173
|
+
// We are replacing the toObj function, because the reference type in the end should be the primary key when serialized.
|
|
174
|
+
return (0, merge_1.default)({}, instance, {
|
|
175
|
+
toObj: _getId(instanceValues),
|
|
176
|
+
});
|
|
177
|
+
};
|
|
178
|
+
// @ts-ignore
|
|
179
|
+
if (valueIsModelInstance) {
|
|
180
|
+
return _getInstanceReturn(instanceValues);
|
|
181
|
+
}
|
|
182
|
+
// TypedJson?
|
|
183
|
+
const theModel = _getModel();
|
|
184
|
+
const primaryKey = theModel.getPrimaryKeyName();
|
|
185
|
+
if ((0, get_1.default)(instanceValues, primaryKey)) {
|
|
186
|
+
return _getInstanceReturn(instanceValues);
|
|
187
|
+
}
|
|
158
188
|
if (config === null || config === void 0 ? void 0 : config.fetcher) {
|
|
159
189
|
const id = yield _getId(instanceValues)();
|
|
160
190
|
const model = _getModel();
|
|
161
191
|
if (id !== null && id !== undefined) {
|
|
162
|
-
|
|
192
|
+
const obj = yield config.fetcher(model, id);
|
|
193
|
+
return _getInstanceReturn(obj);
|
|
163
194
|
}
|
|
164
195
|
return null;
|
|
165
196
|
}
|
|
166
|
-
// This is just an id.
|
|
167
197
|
return _getId(instanceValues)();
|
|
168
198
|
});
|
|
169
199
|
const p = (0, merge_1.default)(Property(constants_1.PROPERTY_TYPES.ReferenceProperty, (0, merge_1.default)({}, config, {
|
package/properties.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yDAAgC;AAChC,
|
|
1
|
+
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yDAAgC;AAChC,qDAA4B;AAC5B,6CAKqB;AACrB,2CAA4C;AAC5C,iCAAkC;AAClC,mCAAuD;AAoBvD,+BAQc;AAEd,MAAM,WAAW,GACf,wIAAwI,CAAA;AAE1I,MAAM,QAAQ,GAAG,CAMf,IAAY,EACZ,SAAiC,EAAE,EACnC,kBAAkB,GAAG,EAAE,EAC8B,EAAE;IACvD,IAAI,CAAC,IAAI,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAA,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;KACnD;IACD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;QAChB,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;KACnB;IACD,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAC5B,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,MAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAW,CAAA;IACpE,MAAM,eAAe,GAAG,GAAG,EAAE,CAC3B,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,MAAK,SAAS;QACjC,CAAC,CAAC,MAAM,CAAC,YAAY;QACrB,CAAC,CAAC,SAAS,CAAW,CAAA;IAC1B,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,KAAI,EAAE,CAAA;IAC9C,MAAM,cAAc,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,cAAc,KAAI,KAAK,CAAA;IACtD,MAAM,aAAa,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,KAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE;QACvC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;KACpD;IAED,MAAM,CAAC,mCACF,kBAAkB,KACrB,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,IAAI,EAAE,EAC7B,UAAU;QACV,eAAe;QACf,gBAAgB,EAChB,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,EAC3B,YAAY,EAAE,CACZ,aAAqB,EACrB,SAAY,EACZ,QAAwB,EACwB,EAAE;YAClD,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAA;YAChC,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,OAAO,GAAG,EAAE,CAAC,KAAK,CAAA;aACnB;YACD,MAAM,YAAY,GAAG,eAAe,EAAE,CAAA;YACtC,IACE,YAAY,KAAK,SAAS;gBAC1B,CAAC,aAAa,KAAK,IAAI,IAAI,aAAa,KAAK,SAAS,CAAC,EACvD;gBACA,OAAO,GAAG,EAAE,CAAC,YAAY,CAAA;aAC1B;YACD,MAAM,MAAM,GAAG,cAAc;gBAC3B,CAAC,CAAC,0CAA0C;oBACzC,IAAA,gBAAS,EAAC,cAAc,CAIJ;gBACvB,CAAC,CAAC,OAAO,aAAa,KAAK,UAAU;oBACnC,CAAC,CAAE,aAA8B;oBACjC,CAAC,CAAC,GAAG,EAAE,CAAC,aAAa,CAAA;YACzB,MAAM,CAAC,GAAmD,GAAG,EAAE;gBAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;gBACzD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAA;YAC9B,CAAC,CAAA;YACD,OAAO,CAAC,CAAA;QACV,CAAC,EACD,YAAY,EAAE,CACZ,WAA2D,EAC3D,EAAE;YACF,MAAM,SAAS,GAAG,IAAA,oCAAuB,EAAC,WAAW,EAAE,MAAM,CAAC,CAAA;YAC9D,MAAM,yBAAyB,GAK3B,CAAO,QAAQ,EAAE,YAAY,EAAE,qBAAqB,EAAE,EAAE;gBAC1D,aAAa;gBACb,OAAO,SAAS,CAAS,QAAQ,EAAE,YAAY,EAAE,qBAAqB,CAAC,CAAA;YACzE,CAAC,CAAA,CAAA;YACD,OAAO,yBAAyB,CAAA;QAClC,CAAC,GACF,CAAA;IACD,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AA+UC,4BAAQ;AA7UV,MAAM,YAAY,GAAG,CACnB,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,YAAY,EAC3B,IAAA,eAAK,EACH;IACE,cAAc,EAAE,CAAC,KAAiC,EAAE,EAAE;QACpD,IAAI,CAAC,KAAK,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAA,EAAE;YAC7B,OAAO,IAAI,IAAI,EAAE,CAAA;SAClB;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAA;SACvB;QACD,OAAO,KAAK,CAAA;IACd,CAAC;CACF,EACD,MAAM,CACP,EACD,kBAAkB,CACnB,CAAA;AA4TD,oCAAY;AA1Td,MAAM,aAAa,GAAG,CACpB,MAAM,GAAG,EAAE,EACX,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,aAAa,gCAE1B,YAAY,EAAE,EAAE,IACb,MAAM,KACT,OAAO,EAAE,IAAI,KAEf,kBAAkB,CACnB,CAAA;AA+SD,sCAAa;AA7Sf,MAAM,cAAc,GAAG,CAGrB,MAAM,GAAG,EAAE,EACX,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,cAAc,EAC7B,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,UAAU,EAAE,IAAA,qBAAe,EAAC,MAAM,EAAE,CAAC,IAAA,mBAAM,EAAC,QAAQ,CAAC,CAAC,CAAC;CACxD,CAAC,EACF,kBAAkB,CACnB,CAAA;AAwSD,wCAAc;AAtShB,MAAM,YAAY,GAAG,CACnB,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,YAAY,EAC3B,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAA,qBAAe,EAAC,MAAM,EAAE,IAAA,6BAAuB,EAAC,MAAM,CAAC,CAAC;CACrE,CAAC,EACF,kBAAkB,CACnB,CAAA;AAwRD,oCAAY;AAtRd,MAAM,eAAe,GAAG,CACtB,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,eAAe,EAC9B,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAA,qBAAe,EAAC,MAAM,EAAE,IAAA,+BAAyB,EAAC,MAAM,CAAC,CAAC;CACvE,CAAC,EACF,kBAAkB,CACnB,CAAA;AA0QD,0CAAe;AAxQjB,MAAM,cAAc,GAAG,CACrB,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,cAAc,EAC7B,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAA,qBAAe,EAAC,MAAM,EAAE,IAAA,+BAAyB,EAAC,MAAM,CAAC,CAAC;CACvE,CAAC,EACF,kBAAkB,CACnB,CAAA;AAgQD,wCAAc;AA9PhB,MAAM,qBAAqB,GAAG,CAG5B,KAAgB,EAChB,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,qBAAqB,EACpC,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,KAAK;CACN,CAAC,EACF,kBAAkB,CACnB,CAAA;AAgPD,sDAAqB;AA9OvB,MAAM,aAAa,GAAG,CACpB,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,YAAY,CACV,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,IAAI,EAAE,0BAAc,CAAC,aAAa;IAClC,UAAU,EAAE,IAAA,qBAAe,EAAC,MAAM,EAAE,CAAC,IAAA,uBAAU,EAAC,WAAW,CAAC,CAAC,CAAC;CAC/D,CAAC,EACF,kBAAkB,CACnB,CAAA;AAuOD,sCAAa;AArOf,MAAM,eAAe,GAAG,CACtB,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,eAAe,EAC9B,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,SAAS,EAAE,IAAI;CAChB,CAAC,EACF,kBAAkB,CACnB,CAAA;AA4ND,0CAAe;AA1NjB,MAAM,QAAQ,GAAG,CACf,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,QAAQ,EACvB,IAAA,eAAK,EACH;IACE,cAAc,EAAE,CAAC,KAAiC,EAAE,EAAE;QACpD,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAA,kBAAU,GAAE,CAAA;SACpB;QACD,OAAO,KAAK,CAAA;IACd,CAAC;CACF,EACD,MAAM,CACP,EACD,kBAAkB,CACnB,CAAA;AA4LD,4BAAQ;AA1LV,MAAM,sBAAsB,GAAG,CAM7B,KAA8B,EAC9B,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,8BAA8B,CAK5B,KAAK,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAA;AA+KpC,wDAAsB;AA7KxB,MAAM,8BAA8B,GAAG,CAQrC,KAA4B,EAC5B,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE;IACF,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;KACrD;IAED,MAAM,SAAS,GAAG,GAAG,EAAE;QACrB,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;YAC/B,OAAO,KAAK,EAAE,CAAA;SACf;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,IAAA,+BAAkB,EAA4B,KAAK,CAAC,CAAA;IACtE,MAAM,UAAU,GAAG,IAAA,qBAAe,EAAC,MAAM,EAAE;QACzC,aAAa;QACb,SAAS;KACV,CAAC,CAAA;IAEF,MAAM,MAAM,GACV,CAAC,cAAqD,EAAE,EAAE,CAC1D,GAA0B,EAAE;QAC1B,IAAI,CAAC,cAAc,EAAE;YACnB,OAAO,IAAI,CAAA;SACZ;QACD,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;YACtC,OAAO,cAAc,CAAA;SACtB;QACD,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;YACtC,OAAO,cAAc,CAAA;SACtB;QACD,IAAK,cAAiC,CAAC,aAAa,EAAE;YACpD,OAAQ,cAAiC,CAAC,aAAa,EAAE,CAAA;SAC1D;QAED,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAG,QAAQ,CAAC,iBAAiB,EAAE,CAAA;QAE/C,OAAQ,cAAkC,CAAC,UAAU,CAAmB,CAAA;IAC1E,CAAC,CAAA;IAEH,MAAM,cAAc,GAAG,CAAO,cAAyB,EAAE,EAAE;QACzD,MAAM,oBAAoB,GAAG,IAAA,qBAAe,EAAC,cAAc,CAAC,CAAA;QAC5D,MAAM,kBAAkB,GAAG,CAAC,QAAmB,EAAE,EAAE;YACjD,kHAAkH;YAClH,MAAM,kBAAkB,GAAG,IAAA,qBAAe,EAAC,QAAQ,CAAC,CAAA;YACpD,aAAa;YACb,MAAM,QAAQ,GAAG,kBAAkB;gBACjC,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,QAA2B,CAAC,CAAA;YACnD,wHAAwH;YACxH,OAAO,IAAA,eAAK,EAAC,EAAE,EAAE,QAAQ,EAAE;gBACzB,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC;aAC9B,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,aAAa;QACb,IAAI,oBAAoB,EAAE;YACxB,OAAO,kBAAkB,CAAC,cAAc,CAAC,CAAA;SAC1C;QAED,aAAa;QACb,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAA;QAC5B,MAAM,UAAU,GAAG,QAAQ,CAAC,iBAAiB,EAAE,CAAA;QAC/C,IAAI,IAAA,aAAG,EAAC,cAAc,EAAE,UAAU,CAAC,EAAE;YACnC,OAAO,kBAAkB,CAAC,cAAc,CAAC,CAAA;SAC1C;QAED,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;YACnB,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,EAAE,CAAA;YACzC,MAAM,KAAK,GAAG,SAAS,EAAE,CAAA;YACzB,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,SAAS,EAAE;gBACnC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAI,KAAK,EAAE,EAAE,CAAC,CAAA;gBAC9C,OAAO,kBAAkB,CAAC,GAAgB,CAAC,CAAA;aAC5C;YACD,OAAO,IAAI,CAAA;SACZ;QACD,OAAO,MAAM,CAAC,cAAc,CAAC,EAAE,CAAA;IACjC,CAAC,CAAA,CAAA;IAED,MAAM,CAAC,GAKH,IAAA,eAAK,EACP,QAAQ,CACN,0BAAc,CAAC,iBAAiB,EAChC,IAAA,eAAK,EAAC,EAAE,EAAE,MAAM,EAAE;QAChB,UAAU;QACV,cAAc;KACf,CAAC,EACF,kBAAkB,CACnB,EACD;QACE,eAAe,EAAE,CAAC,cAAyC,EAAE,EAAE,CAC7D,MAAM,CAAC,cAAc,CAAC,EAAE;QAC1B,kBAAkB,EAAE,SAAS;KAC9B,CACF,CAAA;IACD,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AA+DC,wEAA8B;AA7DhC;;;;;;;;;;;;;;;GAeG;AACH,MAAM,iBAAiB,GAAG,CACxB,YAA+B,EAC/B,MAAc,EACd,SAAoC,EAAE,EACtC,kBAAkB,GAAG,EAAE,EACvB,EAAE,CACF,QAAQ,CACN,0BAAc,CAAC,YAAY,EAC3B,IAAA,eAAK,EAAC,MAAM,EAAE;IACZ,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAA,qBAAe,EAAC,MAAM,EAAE,IAAA,6BAAuB,EAAC,MAAM,CAAC,CAAC;IACpE,cAAc,EAAE,CACd,KAAyB,EACzB,KAAsB,EACtB,aAAiC,EACjC,EAAE;QACF,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,CAAO,IAAI,EAAE,GAAG,EAAE,EAAE;YACzD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAA;YACtB,MAAM,CAAC,IAAI,CAAC,GAAG,IAAA,yBAAiB,EAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;YACrD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAA,0BAAoB,EAAC,aAAa,EAAE,IAAI,CAAC;gBAC5D,CAAC,CAAC,IAAA,gCAA0B,EAAC,aAAa,EAAE,GAAG,CAAC;gBAChD,CAAC,CAAC,IAAA,8BAAwB,EAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAA;YACjD,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC,CAAA,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;QACvB,6EAA6E;QAC7E,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE;YAC3C,OAAO,SAAS,CAAA;SACjB;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC1B,CAAC,CAAA;CACF,CAAC,EACF,kBAAkB,CACnB,CAAA;AAOD,8CAAiB;AALnB,4FAA4F;AAC5F,MAAM,gBAAgB,GAAG,QAAQ,CAAA;AAM/B,4CAAgB"}
|
package/serialization.js
CHANGED
|
@@ -14,6 +14,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.toJsonAble = void 0;
|
|
16
16
|
const merge_1 = __importDefault(require("lodash/merge"));
|
|
17
|
+
const isModelInstance = (obj) => {
|
|
18
|
+
return Boolean(obj.toObj);
|
|
19
|
+
};
|
|
17
20
|
const _getValue = (value) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
21
|
if (value === undefined) {
|
|
19
22
|
return null;
|
|
@@ -27,9 +30,8 @@ const _getValue = (value) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
27
30
|
return _getValue(yield asFunction());
|
|
28
31
|
}
|
|
29
32
|
// Nested Object
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return _getValue(yield asModel());
|
|
33
|
+
if (isModelInstance(value)) {
|
|
34
|
+
return _getValue(yield value.toObj());
|
|
33
35
|
}
|
|
34
36
|
// Dates
|
|
35
37
|
const asDate = value;
|
package/serialization.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yDAAgC;
|
|
1
|
+
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yDAAgC;AAUhC,MAAM,eAAe,GAAG,CAAC,GAAQ,EAA6B,EAAE;IAC9D,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,CAAO,KAAU,EAA4B,EAAE;IAC/D,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,OAAO,IAAI,CAAA;KACZ;IACD,IAAI,KAAK,KAAK,IAAI,EAAE;QAClB,OAAO,IAAI,CAAA;KACZ;IACD,MAAM,IAAI,GAAG,OAAO,KAAK,CAAA;IACzB,MAAM,UAAU,GAAG,KAAgC,CAAA;IACnD,IAAI,IAAI,KAAK,UAAU,EAAE;QACvB,OAAO,SAAS,CAAC,MAAM,UAAU,EAAE,CAAC,CAAA;KACrC;IACD,gBAAgB;IAChB,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE;QAC1B,OAAO,SAAS,CAAC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;KACtC;IACD,QAAQ;IACR,MAAM,MAAM,GAAG,KAAa,CAAA;IAC5B,IAAI,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,WAAW,EAAE;QAC3C,OAAO,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;KACvC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA,CAAA;AAED,MAAM,UAAU,GACd,CAA4B,SAA6B,EAAY,EAAE,CACvE,GAAG,EAAE;IACH,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAO,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAClE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAA;QACzB,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,MAAM,KAAK,CAAC,CAAA;QAC9C,OAAO,IAAA,eAAK,EAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAA;IAC7C,CAAC,CAAA,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAA6B,CAAA;AACrD,CAAC,CAAA;AAEM,gCAAU"}
|