typescript-class-helpers 19.0.3 → 19.0.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/browser/README.md +24 -24
- package/browser/fesm2022/typescript-class-helpers.mjs +52 -19
- package/browser/fesm2022/typescript-class-helpers.mjs.map +1 -1
- package/browser/lib/errors-messages.d.ts +1 -1
- package/browser/package.json +1 -1
- package/client/README.md +24 -24
- package/client/fesm2022/typescript-class-helpers.mjs +52 -19
- package/client/fesm2022/typescript-class-helpers.mjs.map +1 -1
- package/client/lib/errors-messages.d.ts +1 -1
- package/client/package.json +1 -1
- package/index.js.map +1 -1
- package/lib/build-info._auto-generated_.d.ts +2 -1
- package/lib/build-info._auto-generated_.js +3 -2
- package/lib/build-info._auto-generated_.js.map +1 -1
- package/lib/classname.js +12 -12
- package/lib/classname.js.map +1 -1
- package/lib/describe-class.js +3 -3
- package/lib/describe-class.js.map +1 -1
- package/lib/errors-messages.d.ts +1 -1
- package/lib/errors-messages.js +1 -1
- package/lib/errors-messages.js.map +1 -1
- package/lib/index._auto-generated_.js.map +1 -1
- package/lib/index.js +12 -12
- package/lib/index.js.map +1 -1
- package/lib/models.d.ts +1 -1
- package/lib/models.js.map +1 -1
- package/lib/registerd-db.js.map +1 -1
- package/lib/set-class-name.js +5 -5
- package/lib/set-class-name.js.map +1 -1
- package/lib/storage.js +4 -4
- package/lib/storage.js.map +1 -1
- package/lib/symbols.js.map +1 -1
- package/migrations/index.js.map +1 -1
- package/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/package.json +1 -1
- package/tmp-environment.json +4 -4
- package/websql/README.md +24 -24
- package/websql/fesm2022/typescript-class-helpers.mjs +53 -19
- package/websql/fesm2022/typescript-class-helpers.mjs.map +1 -1
- package/websql/lib/errors-messages.d.ts +1 -1
- package/websql/package.json +1 -1
- package/browser/esm2022/lib/classname.mjs +0 -164
- package/browser/esm2022/lib/describe-class.mjs +0 -72
- package/browser/esm2022/lib/errors-messages.mjs +0 -14
- package/browser/esm2022/lib/index.mjs +0 -186
- package/browser/esm2022/lib/models.mjs +0 -36
- package/browser/esm2022/lib/registerd-db.mjs +0 -6
- package/browser/esm2022/lib/set-class-name.mjs +0 -90
- package/browser/esm2022/lib/storage.mjs +0 -24
- package/browser/esm2022/lib/symbols.mjs +0 -9
- package/browser/esm2022/public-api.mjs +0 -2
- package/browser/esm2022/typescript-class-helpers.mjs +0 -5
- package/client/esm2022/lib/classname.mjs +0 -164
- package/client/esm2022/lib/describe-class.mjs +0 -72
- package/client/esm2022/lib/errors-messages.mjs +0 -14
- package/client/esm2022/lib/index.mjs +0 -186
- package/client/esm2022/lib/models.mjs +0 -36
- package/client/esm2022/lib/registerd-db.mjs +0 -6
- package/client/esm2022/lib/set-class-name.mjs +0 -90
- package/client/esm2022/lib/storage.mjs +0 -24
- package/client/esm2022/lib/symbols.mjs +0 -9
- package/client/esm2022/public-api.mjs +0 -2
- package/client/esm2022/typescript-class-helpers.mjs +0 -5
- package/websql/esm2022/lib/classname.mjs +0 -164
- package/websql/esm2022/lib/describe-class.mjs +0 -72
- package/websql/esm2022/lib/errors-messages.mjs +0 -14
- package/websql/esm2022/lib/index.mjs +0 -186
- package/websql/esm2022/lib/models.mjs +0 -34
- package/websql/esm2022/lib/registerd-db.mjs +0 -6
- package/websql/esm2022/lib/set-class-name.mjs +0 -90
- package/websql/esm2022/lib/storage.mjs +0 -24
- package/websql/esm2022/lib/symbols.mjs +0 -9
- package/websql/esm2022/public-api.mjs +0 -2
- package/websql/esm2022/typescript-class-helpers.mjs +0 -5
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { _ } from 'tnp-core/browser';
|
|
2
|
-
import { SYMBOL } from './symbols';
|
|
3
|
-
import { getStorage } from './storage';
|
|
4
|
-
import { CLASSNAME } from './classname';
|
|
5
|
-
import { CLASS } from './index';
|
|
6
|
-
function getClasses() {
|
|
7
|
-
const s = getStorage();
|
|
8
|
-
return s[SYMBOL.CLASSES];
|
|
9
|
-
}
|
|
10
|
-
// @ts-ignore
|
|
11
|
-
export function setClassName(target, className, options) {
|
|
12
|
-
let { classFamily, uniqueKey, classNameInBrowser, singleton } = options || {
|
|
13
|
-
classFamily: void 0,
|
|
14
|
-
uniqueKey: 'id',
|
|
15
|
-
classNameInBrowser: void 0,
|
|
16
|
-
singleton: void 0,
|
|
17
|
-
autoinstance: false
|
|
18
|
-
};
|
|
19
|
-
if (!_.isUndefined(singleton) && _.isBoolean(singleton) && singleton) {
|
|
20
|
-
singleton = 'first-instance';
|
|
21
|
-
}
|
|
22
|
-
if (!uniqueKey) {
|
|
23
|
-
uniqueKey = 'id';
|
|
24
|
-
}
|
|
25
|
-
if (target) {
|
|
26
|
-
const config = _.first(CLASSNAME.getClassConfig(target));
|
|
27
|
-
config.className = className;
|
|
28
|
-
config.uniqueKey = uniqueKey;
|
|
29
|
-
config.classNameInBrowser = classNameInBrowser;
|
|
30
|
-
}
|
|
31
|
-
const existed = getClasses()
|
|
32
|
-
.find(f => f.className === className);
|
|
33
|
-
if (existed) {
|
|
34
|
-
existed.target = target;
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
const res = {
|
|
38
|
-
className,
|
|
39
|
-
classNameInBrowser,
|
|
40
|
-
target,
|
|
41
|
-
uniqueKey,
|
|
42
|
-
classFamily
|
|
43
|
-
};
|
|
44
|
-
if (_.isUndefined(classFamily)) {
|
|
45
|
-
Object.defineProperty(res, 'classFamily', {
|
|
46
|
-
get: function () {
|
|
47
|
-
const parent = Object.getPrototypeOf(target);
|
|
48
|
-
if (!_.isFunction(parent) || parent.name === 'Object' || parent.name === '') {
|
|
49
|
-
return className;
|
|
50
|
-
}
|
|
51
|
-
const classNameNew = CLASSNAME.getClassName(parent);
|
|
52
|
-
return CLASSNAME.getClassFamilyByClassName(classNameNew);
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
getClasses().push(res);
|
|
57
|
-
}
|
|
58
|
-
const Original = target;
|
|
59
|
-
if (singleton === 'first-instance' || singleton === 'last-instance') {
|
|
60
|
-
const obj = {
|
|
61
|
-
// @ts-ignore
|
|
62
|
-
decoratedConstructor: function (...args) {
|
|
63
|
-
const context = Original.apply(this, args);
|
|
64
|
-
const existedSingleton = CLASS.getSingleton(Original);
|
|
65
|
-
if (!existedSingleton || singleton === 'last-instance') {
|
|
66
|
-
CLASS.setSingletonObj(Original, this);
|
|
67
|
-
CLASS.setSingletonObj(obj.decoratedConstructor, this);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
}
|
|
71
|
-
return context;
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
obj.decoratedConstructor.prototype = Original.prototype;
|
|
75
|
-
// @ts-ignore
|
|
76
|
-
Object.keys(Original).forEach((name) => { obj.decoratedConstructor[name] = Original[name]; });
|
|
77
|
-
Object.defineProperty(obj.decoratedConstructor, 'name', {
|
|
78
|
-
value: className,
|
|
79
|
-
configurable: true,
|
|
80
|
-
});
|
|
81
|
-
return obj.decoratedConstructor;
|
|
82
|
-
}
|
|
83
|
-
else if (singleton === 'autoinstance') {
|
|
84
|
-
const auto = new Original();
|
|
85
|
-
CLASS.setSingletonObj(Original, auto);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
;
|
|
89
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/set-class-name.ts
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWNsYXNzLW5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvcHJvamVjdHMvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3NyYy9saWIvc2V0LWNsYXNzLW5hbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHaEMsU0FBUyxVQUFVO0lBQ2pCLE1BQU0sQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDO0lBQ3ZCLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQVEsQ0FBQztBQUNsQyxDQUFDO0FBRUQsYUFBYTtBQUNiLE1BQU0sVUFBVSxZQUFZLENBQUMsTUFBZ0IsRUFBRSxTQUFpQixFQUFFLE9BQWlDO0lBRWpHLElBQUksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxHQUFHLE9BQU8sSUFBSTtRQUN6RSxXQUFXLEVBQUUsS0FBSyxDQUFDO1FBQ25CLFNBQVMsRUFBRSxJQUFJO1FBQ2Ysa0JBQWtCLEVBQUUsS0FBSyxDQUFDO1FBQzFCLFNBQVMsRUFBRSxLQUFLLENBQUM7UUFDakIsWUFBWSxFQUFFLEtBQUs7S0FDTyxDQUFDO0lBRTdCLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxFQUFFLENBQUM7UUFDckUsU0FB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SSxDQUFDLEdBQVMsUUFBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0csTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFO1lBQ3RELEtBQUssRUFBRSxTQUFTO1lBQ2hCLFlBQVksRUFBRSxJQUFJO1NBQ25CLENBQUMsQ0FBQTtRQUdGLE9BQU8sR0FBRyxDQUFDLG9CQUFvQixDQUFDO0lBQ2xDLENBQUM7U0FBTSxJQUFJLFNBQVMsS0FBSyxjQUFjLEVBQUUsQ0FBQztRQUd4QyxNQUFNLElBQUksR0FBRyxJQUFLLFFBQWdCLEVBQUUsQ0FBQztRQUNyQyxLQUFLLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUd2QyxDQUFDO0FBQ0gsQ0FBQztBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMkVBQTJFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IFNZTUJPTCB9IGZyb20gJy4vc3ltYm9scyc7XG5pbXBvcnQgeyBNb2RlbHMgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBnZXRTdG9yYWdlIH0gZnJvbSAnLi9zdG9yYWdlJztcbmltcG9ydCB7IENMQVNTTkFNRSB9IGZyb20gJy4vY2xhc3NuYW1lJztcbmltcG9ydCB7IENMQVNTIH0gZnJvbSAnLi9pbmRleCc7XG5cblxuZnVuY3Rpb24gZ2V0Q2xhc3NlcygpOiBNb2RlbHMuQ2xhc3NNZXRhW10ge1xuICBjb25zdCBzID0gZ2V0U3RvcmFnZSgpO1xuICByZXR1cm4gc1tTWU1CT0wuQ0xBU1NFU10gYXMgYW55O1xufVxuXG4vLyBAdHMtaWdub3JlXG5leHBvcnQgZnVuY3Rpb24gc2V0Q2xhc3NOYW1lKHRhcmdldDogRnVuY3Rpb24sIGNsYXNzTmFtZTogc3RyaW5nLCBvcHRpb25zPzogTW9kZWxzLkNMQVNTTkFNRU9wdGlvbnMpIHtcblxuICBsZXQgeyBjbGFzc0ZhbWlseSwgdW5pcXVlS2V5LCBjbGFzc05hbWVJbkJyb3dzZXIsIHNpbmdsZXRvbiB9ID0gb3B0aW9ucyB8fCB7XG4gICAgY2xhc3NGYW1pbHk6IHZvaWQgMCxcbiAgICB1bmlxdWVLZXk6ICdpZCcsXG4gICAgY2xhc3NOYW1lSW5Ccm93c2VyOiB2b2lkIDAsXG4gICAgc2luZ2xldG9uOiB2b2lkIDAsXG4gICAgYXV0b2luc3RhbmNlOiBmYWxzZVxuICB9IGFzIE1vZGVscy5DTEFTU05BTUVPcHRpb25zO1xuXG4gIGlmICghXy5pc1VuZGVmaW5lZChzaW5nbGV0b24pICYmIF8uaXNCb29sZWFuKHNpbmdsZXRvbikgJiYgc2luZ2xldG9uKSB7XG4gICAgc2luZ2xldG9uID0gJ2ZpcnN0LWluc3RhbmNlJ1xuICB9XG5cbiAgaWYgKCF1bmlxdWVLZXkpIHtcbiAgICB1bmlxdWVLZXkgPSAnaWQnXG4gIH1cblxuICBpZiAodGFyZ2V0KSB7XG4gICAgY29uc3QgY29uZmlnID0gXy5maXJzdChDTEFTU05BTUUuZ2V0Q2xhc3NDb25maWcodGFyZ2V0KSk7XG4gICAgY29uZmlnLmNsYXNzTmFtZSA9IGNsYXNzTmFtZTtcbiAgICBjb25maWcudW5pcXVlS2V5ID0gdW5pcXVlS2V5O1xuICAgIGNvbmZpZy5jbGFzc05hbWVJbkJyb3dzZXIgPSBjbGFzc05hbWVJbkJyb3dzZXI7XG5cbiAgfVxuXG4gIGNvbnN0IGV4aXN0ZWQgPSAoZ2V0Q2xhc3NlcygpIGFzIHsgY2xhc3NOYW1lOiBzdHJpbmc7IHRhcmdldDogRnVuY3Rpb247IH1bXSlcbiAgICAuZmluZChmID0+IGYuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpXG5cbiAgaWYgKGV4aXN0ZWQpIHtcbiAgICBleGlzdGVkLnRhcmdldCA9IHRhcmdldDtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCByZXMgPSB7XG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjbGFzc05hbWVJbkJyb3dzZXIsXG4gICAgICB0YXJnZXQsXG4gICAgICB1bmlxdWVLZXksXG4gICAgICBjbGFzc0ZhbWlseVxuICAgIH1cblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKGNsYXNzRmFtaWx5KSkge1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlcywgJ2NsYXNzRmFtaWx5Jywge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBjb25zdCBwYXJlbnQgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YodGFyZ2V0KTtcbiAgICAgICAgICBpZiAoIV8uaXNGdW5jdGlvbihwYXJlbnQpIHx8IHBhcmVudC5uYW1lID09PSAnT2JqZWN0JyB8fCBwYXJlbnQubmFtZSA9PT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiBjbGFzc05hbWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGNsYXNzTmFtZU5ldyA9IENMQVNTTkFNRS5nZXRDbGFzc05hbWUocGFyZW50KVxuICAgICAgICAgIHJldHVybiBDTEFTU05BTUUuZ2V0Q2xhc3NGYW1pbHlCeUNsYXNzTmFtZShjbGFzc05hbWVOZXcpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICAgIGdldENsYXNzZXMoKS5wdXNoKHJlcylcbiAgfVxuICBjb25zdCBPcmlnaW5hbCA9IHRhcmdldDtcblxuXG4gIGlmIChzaW5nbGV0b24gPT09ICdmaXJzdC1pbnN0YW5jZScgfHwgc2luZ2xldG9uID09PSAnbGFzdC1pbnN0YW5jZScpIHtcbiAgICBjb25zdCBvYmogPSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBkZWNvcmF0ZWRDb25zdHJ1Y3RvcjogZnVuY3Rpb24gKC4uLmFyZ3MpIHtcblxuICAgICAgICBjb25zdCBjb250ZXh0ID0gT3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG5cbiAgICAgICAgY29uc3QgZXhpc3RlZFNpbmdsZXRvbiA9IENMQVNTLmdldFNpbmdsZXRvbihPcmlnaW5hbClcbiAgICAgICAgaWYgKCFleGlzdGVkU2luZ2xldG9uIHx8IHNpbmdsZXRvbiA9PT0gJ2xhc3QtaW5zdGFuY2UnKSB7XG4gICAgICAgICAgQ0xBU1Muc2V0U2luZ2xldG9uT2JqKE9yaWdpbmFsLCB0aGlzKVxuICAgICAgICAgIENMQVNTLnNldFNpbmdsZXRvbk9iaihvYmouZGVjb3JhdGVkQ29uc3RydWN0b3IsIHRoaXMpXG5cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcblxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbnRleHQ7XG4gICAgICB9XG4gICAgfTtcblxuXG4gICAgb2JqLmRlY29yYXRlZENvbnN0cnVjdG9yLnByb3RvdHlwZSA9IE9yaWdpbmFsLnByb3RvdHlwZTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgT2JqZWN0LmtleXMoT3JpZ2luYWwpLmZvckVhY2goKG5hbWU6IHN0cmluZykgPT4geyBvYmouZGVjb3JhdGVkQ29uc3RydWN0b3JbbmFtZV0gPSAoPGFueT5PcmlnaW5hbClbbmFtZV07IH0pO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmouZGVjb3JhdGVkQ29uc3RydWN0b3IsICduYW1lJywge1xuICAgICAgdmFsdWU6IGNsYXNzTmFtZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB9KVxuXG5cbiAgICByZXR1cm4gb2JqLmRlY29yYXRlZENvbnN0cnVjdG9yO1xuICB9IGVsc2UgaWYgKHNpbmdsZXRvbiA9PT0gJ2F1dG9pbnN0YW5jZScpIHtcblxuXG4gICAgY29uc3QgYXV0byA9IG5ldyAoT3JpZ2luYWwgYXMgYW55KSgpO1xuICAgIENMQVNTLnNldFNpbmdsZXRvbk9iaihPcmlnaW5hbCwgYXV0bylcblxuXG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXR5cGVzY3JpcHQtY2xhc3MtaGVscGVycyBsaWIvc2V0LWNsYXNzLW5hbWUudHMiXX0=
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { SYMBOL } from './symbols';
|
|
2
|
-
import { _ } from 'tnp-core/browser';
|
|
3
|
-
function defaultValues() {
|
|
4
|
-
return _.cloneDeep({
|
|
5
|
-
[SYMBOL.CLASSES]: []
|
|
6
|
-
});
|
|
7
|
-
}
|
|
8
|
-
export function getStorage(property) {
|
|
9
|
-
/* */
|
|
10
|
-
/* */
|
|
11
|
-
/* */
|
|
12
|
-
/* */
|
|
13
|
-
if (typeof property === 'string') {
|
|
14
|
-
const storageInClassStaticProp = getStorage();
|
|
15
|
-
return storageInClassStaticProp[property];
|
|
16
|
-
}
|
|
17
|
-
if (typeof defaultValues.prototype[SYMBOL.STORAGE] === 'undefined') {
|
|
18
|
-
defaultValues.prototype[SYMBOL.STORAGE] = defaultValues();
|
|
19
|
-
}
|
|
20
|
-
return defaultValues.prototype[SYMBOL.STORAGE];
|
|
21
|
-
}
|
|
22
|
-
;
|
|
23
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/storage.ts
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9wcm9qZWN0cy90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvc3JjL2xpYi9zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXJDLFNBQVMsYUFBYTtJQUNwQixPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDakIsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtLQUNyQixDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FBVSxRQUFpQjtJQUVyRCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBR0gsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUVqQyxNQUFNLHdCQUF3QixHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzlDLE9BQU8sd0JBQXdCLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDM0MsQ0FBQztJQUVELElBQUksT0FBTyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUNuRSxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxhQUFhLEVBQUUsQ0FBQTtJQUMzRCxDQUFDO0lBQ0QsT0FBTyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQTtBQUNoRCxDQUFDO0FBR0EsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxvRUFBb0UiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgU1lNQk9MIH0gZnJvbSAnLi9zeW1ib2xzJztcbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcblxuZnVuY3Rpb24gZGVmYXVsdFZhbHVlcygpIHtcbiAgcmV0dXJuIF8uY2xvbmVEZWVwKHtcbiAgICBbU1lNQk9MLkNMQVNTRVNdOiBbXVxuICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3RvcmFnZTxUID0gYW55Pihwcm9wZXJ0eT86IHN0cmluZyk6IFQge1xuXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcblxuICBpZiAodHlwZW9mIHByb3BlcnR5ID09PSAnc3RyaW5nJykge1xuXG4gICAgY29uc3Qgc3RvcmFnZUluQ2xhc3NTdGF0aWNQcm9wID0gZ2V0U3RvcmFnZSgpO1xuICAgIHJldHVybiBzdG9yYWdlSW5DbGFzc1N0YXRpY1Byb3BbcHJvcGVydHldXG4gIH1cblxuICBpZiAodHlwZW9mIGRlZmF1bHRWYWx1ZXMucHJvdG90eXBlW1NZTUJPTC5TVE9SQUdFXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBkZWZhdWx0VmFsdWVzLnByb3RvdHlwZVtTWU1CT0wuU1RPUkFHRV0gPSBkZWZhdWx0VmFsdWVzKClcbiAgfVxuICByZXR1cm4gZGVmYXVsdFZhbHVlcy5wcm90b3R5cGVbU1lNQk9MLlNUT1JBR0VdXG59XG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXR5cGVzY3JpcHQtY2xhc3MtaGVscGVycyBsaWIvc3RvcmFnZS50cyJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export const SYMBOL = {
|
|
2
|
-
MODELS_MAPPING: Symbol(),
|
|
3
|
-
DEFAULT_MODEL: Symbol(),
|
|
4
|
-
STORAGE: 'classesstorage',
|
|
5
|
-
CLASSES: 'classes',
|
|
6
|
-
ClassNameStaticProperty: '$$className$$'
|
|
7
|
-
};
|
|
8
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/symbols.ts
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9wcm9qZWN0cy90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvc3JjL2xpYi9zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRztJQUNwQixjQUFjLEVBQUUsTUFBTSxFQUFFO0lBQ3hCLGFBQWEsRUFBRSxNQUFNLEVBQUU7SUFDdkIsT0FBTyxFQUFFLGdCQUFnQjtJQUN6QixPQUFPLEVBQUUsU0FBUztJQUNsQix1QkFBdUIsRUFBRyxlQUFlO0NBQzFDLENBRUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsb0VBQW9FIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmV4cG9ydCBjb25zdCBTWU1CT0wgPSB7XG4gIE1PREVMU19NQVBQSU5HOiBTeW1ib2woKSxcbiAgREVGQVVMVF9NT0RFTDogU3ltYm9sKCksXG4gIFNUT1JBR0U6ICdjbGFzc2Vzc3RvcmFnZScsXG4gIENMQVNTRVM6ICdjbGFzc2VzJyxcbiAgQ2xhc3NOYW1lU3RhdGljUHJvcGVydHkgOiAnJCRjbGFzc05hbWUkJCdcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXR5cGVzY3JpcHQtY2xhc3MtaGVscGVycyBsaWIvc3ltYm9scy50cyJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './lib';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9wcm9qZWN0cy90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYic7XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3Byb2plY3RzL3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9zcmMvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import { _ } from 'tnp-core/browser';
|
|
2
|
-
import { Models } from './models';
|
|
3
|
-
import { SYMBOL } from './symbols';
|
|
4
|
-
import { TchHelpers } from './index';
|
|
5
|
-
import { Helpers } from 'tnp-core/browser';
|
|
6
|
-
import { getStorage } from './storage';
|
|
7
|
-
import { setClassName } from './set-class-name';
|
|
8
|
-
import { registerd } from './registerd-db';
|
|
9
|
-
import { ERROR_MSG_CLASS_WITHOUT_DECORATOR } from './errors-messages';
|
|
10
|
-
/* */
|
|
11
|
-
/* */
|
|
12
|
-
function getClasses() {
|
|
13
|
-
const s = getStorage();
|
|
14
|
-
return s[SYMBOL.CLASSES];
|
|
15
|
-
}
|
|
16
|
-
export var CLASSNAME;
|
|
17
|
-
(function (CLASSNAME_1) {
|
|
18
|
-
function getClassConfig(target, configs = [], callerTarget) {
|
|
19
|
-
if (!_.isFunction(target)) {
|
|
20
|
-
throw `[typescript-class-helper][getClassConfig] Cannot get class config from: ${target}`;
|
|
21
|
-
}
|
|
22
|
-
let config;
|
|
23
|
-
const parentClass = Object.getPrototypeOf(target);
|
|
24
|
-
const isValidParent = _.isFunction(parentClass) && parentClass.name !== '';
|
|
25
|
-
if (registerd.classes.includes(target)) {
|
|
26
|
-
config =
|
|
27
|
-
registerd.configs[registerd.classes.findIndex(c => c === target)];
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
config = new Models.ClassConfig();
|
|
31
|
-
config.classReference = target;
|
|
32
|
-
registerd.classes.push(target);
|
|
33
|
-
}
|
|
34
|
-
registerd.configs[registerd.classes.findIndex(c => c === target)] = config;
|
|
35
|
-
if (callerTarget) {
|
|
36
|
-
const callerTargetConfig = registerd.configs[registerd.classes.findIndex(c => c === callerTarget)];
|
|
37
|
-
if (!config.vChildren.includes(callerTargetConfig)) {
|
|
38
|
-
config.vChildren.push(callerTargetConfig);
|
|
39
|
-
}
|
|
40
|
-
callerTargetConfig.vParent = config;
|
|
41
|
-
}
|
|
42
|
-
configs.push(config);
|
|
43
|
-
return isValidParent
|
|
44
|
-
? getClassConfig(parentClass, configs, target)
|
|
45
|
-
: configs;
|
|
46
|
-
}
|
|
47
|
-
CLASSNAME_1.getClassConfig = getClassConfig;
|
|
48
|
-
/**
|
|
49
|
-
* PLEASE PROVIDE NAME AS TYPED STRING, NOT VARIABLE
|
|
50
|
-
* Decorator requred for production mode
|
|
51
|
-
* @param name Name of class
|
|
52
|
-
*/
|
|
53
|
-
function CLASSNAME(className, options) {
|
|
54
|
-
return function (target) {
|
|
55
|
-
return setClassName(target, className, options);
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
CLASSNAME_1.CLASSNAME = CLASSNAME;
|
|
59
|
-
function getClassName(target, production = false) {
|
|
60
|
-
if (_.isNil(target)) {
|
|
61
|
-
return void 0;
|
|
62
|
-
}
|
|
63
|
-
if (_.isString(target)) {
|
|
64
|
-
Helpers.log(`[typescript-class-helpers][getClassName] target is string: '${target}', produciton: ${production}`);
|
|
65
|
-
return target;
|
|
66
|
-
}
|
|
67
|
-
if (!_.isFunction(target)) {
|
|
68
|
-
Helpers.log(`[typescript-class-helpers][getClassName] target is not a class`);
|
|
69
|
-
return void 0;
|
|
70
|
-
}
|
|
71
|
-
if (target[SYMBOL.ClassNameStaticProperty]) {
|
|
72
|
-
return target[SYMBOL.ClassNameStaticProperty];
|
|
73
|
-
}
|
|
74
|
-
const configs = getClassConfig(target);
|
|
75
|
-
const config = _.first(configs);
|
|
76
|
-
const classNameInBrowser = config?.classNameInBrowser;
|
|
77
|
-
if (Helpers.isBrowser && _.isString(classNameInBrowser)) {
|
|
78
|
-
return classNameInBrowser;
|
|
79
|
-
}
|
|
80
|
-
const className = config?.className;
|
|
81
|
-
if (typeof className === 'string') {
|
|
82
|
-
return className;
|
|
83
|
-
}
|
|
84
|
-
if (production) {
|
|
85
|
-
console.log('class without @CLASS.NAME deocrator', target);
|
|
86
|
-
throw new Error(ERROR_MSG_CLASS_WITHOUT_DECORATOR);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
}
|
|
90
|
-
if (target.name?.startsWith('class_')) {
|
|
91
|
-
return '';
|
|
92
|
-
}
|
|
93
|
-
return target.name;
|
|
94
|
-
}
|
|
95
|
-
CLASSNAME_1.getClassName = getClassName;
|
|
96
|
-
// @ts-ignore
|
|
97
|
-
function getObjectIndexPropertyValue(obj) {
|
|
98
|
-
const className = TchHelpers.getNameFromObject(obj);
|
|
99
|
-
let c = getClasses().find(c => c.className === className);
|
|
100
|
-
if (c) {
|
|
101
|
-
return c.uniqueKey;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
CLASSNAME_1.getObjectIndexPropertyValue = getObjectIndexPropertyValue;
|
|
105
|
-
// @ts-ignore
|
|
106
|
-
function getClassFamilyByClassName(className) {
|
|
107
|
-
let c = getClasses().find(c => c.className === className);
|
|
108
|
-
if (c) {
|
|
109
|
-
return c.classFamily;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
CLASSNAME_1.getClassFamilyByClassName = getClassFamilyByClassName;
|
|
113
|
-
// @ts-ignore
|
|
114
|
-
function getObjectClassFamily(obj) {
|
|
115
|
-
const className = TchHelpers.getNameFromObject(obj);
|
|
116
|
-
let c = getClasses().find(c => c.className === className);
|
|
117
|
-
if (c) {
|
|
118
|
-
return c.classFamily;
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
CLASSNAME_1.getObjectClassFamily = getObjectClassFamily;
|
|
122
|
-
function getObjectIndexValue(obj) {
|
|
123
|
-
const className = TchHelpers.getNameFromObject(obj);
|
|
124
|
-
let c = getClasses().find(c => c.className === className);
|
|
125
|
-
if (c && _.isString(c.uniqueKey)) {
|
|
126
|
-
return obj[c.uniqueKey];
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
CLASSNAME_1.getObjectIndexValue = getObjectIndexValue;
|
|
130
|
-
function getClassBy(className) {
|
|
131
|
-
let res;
|
|
132
|
-
if (Array.isArray(className)) {
|
|
133
|
-
if (className.length !== 1) {
|
|
134
|
-
throw `Mapping error... please use proper class names:
|
|
135
|
-
{
|
|
136
|
-
propertyObject: 'MyClassName',
|
|
137
|
-
propertyWithArray: ['MyClassName']
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
`;
|
|
141
|
-
}
|
|
142
|
-
className = className[0];
|
|
143
|
-
}
|
|
144
|
-
if (typeof className === 'function') {
|
|
145
|
-
res = className;
|
|
146
|
-
}
|
|
147
|
-
if (className === 'Date') {
|
|
148
|
-
res = Date;
|
|
149
|
-
}
|
|
150
|
-
if (className === 'FormData') {
|
|
151
|
-
res = FormData;
|
|
152
|
-
}
|
|
153
|
-
let c = getClasses().find(c => c.className === className);
|
|
154
|
-
if (c) {
|
|
155
|
-
res = c.target;
|
|
156
|
-
}
|
|
157
|
-
// @ts-ignore
|
|
158
|
-
return res;
|
|
159
|
-
}
|
|
160
|
-
CLASSNAME_1.getClassBy = getClassBy;
|
|
161
|
-
})(CLASSNAME || (CLASSNAME = {}));
|
|
162
|
-
;
|
|
163
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/classname.ts
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3NuYW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3Byb2plY3RzL3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9zcmMvbGliL2NsYXNzbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RSxLQUFLO0FBQ0wsS0FBSztBQUdMLFNBQVMsVUFBVTtJQUNqQixNQUFNLENBQUMsR0FBRyxVQUFVLEVBQUUsQ0FBQztJQUN2QixPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFRLENBQUM7QUFDbEMsQ0FBQztBQUNELE1BQU0sS0FBVyxTQUFTLENBb016QjtBQXBNRCxXQUFpQixXQUFTO0lBQ3hCLFNBQWdCLGNBQWMsQ0FDNUIsTUFBZ0IsRUFDaEIsVUFBZ0MsRUFBRSxFQUNsQyxZQUF1QjtRQUV2QixJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQzFCLE1BQU0sMkVBQTJFLE1BQU0sRUFBRSxDQUFDO1FB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b3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgTW9kZWxzIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgU1lNQk9MIH0gZnJvbSAnLi9zeW1ib2xzJztcbmltcG9ydCB7IFRjaEhlbHBlcnMgfSBmcm9tICcuL2luZGV4JztcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IGdldFN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2UnO1xuaW1wb3J0IHsgc2V0Q2xhc3NOYW1lIH0gZnJvbSAnLi9zZXQtY2xhc3MtbmFtZSc7XG5pbXBvcnQgeyByZWdpc3RlcmQgfSBmcm9tICcuL3JlZ2lzdGVyZC1kYic7XG5pbXBvcnQgeyBFUlJPUl9NU0dfQ0xBU1NfV0lUSE9VVF9ERUNPUkFUT1IgfSBmcm9tICcuL2Vycm9ycy1tZXNzYWdlcyc7XG4vKiAqL1xuLyogKi9cbiAgXG5cbmZ1bmN0aW9uIGdldENsYXNzZXMoKTogTW9kZWxzLkNsYXNzTWV0YVtdIHtcbiAgY29uc3QgcyA9IGdldFN0b3JhZ2UoKTtcbiAgcmV0dXJuIHNbU1lNQk9MLkNMQVNTRVNdIGFzIGFueTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgQ0xBU1NOQU1FIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIGdldENsYXNzQ29uZmlnKFxuICAgIHRhcmdldDogRnVuY3Rpb24sXG4gICAgY29uZmlnczogTW9kZWxzLkNsYXNzQ29uZmlnW10gPSBbXSxcbiAgICBjYWxsZXJUYXJnZXQ/OiBGdW5jdGlvbixcbiAgKTogTW9kZWxzLkNsYXNzQ29uZmlnW10ge1xuICAgIGlmICghXy5pc0Z1bmN0aW9uKHRhcmdldCkpIHtcbiAgICAgIHRocm93IGBbdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJdW2dldENsYXNzQ29uZmlnXSBDYW5ub3QgZ2V0IGNsYXNzIGNvbmZpZyBmcm9tOiAke3RhcmdldH1gO1xuICAgIH1cblxuICAgIGxldCBjb25maWc6IE1vZGVscy5DbGFzc0NvbmZpZztcbiAgICBjb25zdCBwYXJlbnRDbGFzcyA9IE9iamVjdC5nZXRQcm90b3R5cGVPZih0YXJnZXQpO1xuICAgIGNvbnN0IGlzVmFsaWRQYXJlbnQgPSBfLmlzRnVuY3Rpb24ocGFyZW50Q2xhc3MpICYmIHBhcmVudENsYXNzLm5hbWUgIT09ICcnO1xuXG4gICAgaWYgKHJlZ2lzdGVyZC5jbGFzc2VzLmluY2x1ZGVzKHRhcmdldCkpIHtcbiAgICAgIGNvbmZpZyA9XG4gICAgICAgIHJlZ2lzdGVyZC5jb25maWdzW3JlZ2lzdGVyZC5jbGFzc2VzLmZpbmRJbmRleChjID0+IGMgPT09IHRhcmdldCldO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25maWcgPSBuZXcgTW9kZWxzLkNsYXNzQ29uZmlnKCk7XG4gICAgICBjb25maWcuY2xhc3NSZWZlcmVuY2UgPSB0YXJnZXQ7XG4gICAgICByZWdpc3RlcmQuY2xhc3Nlcy5wdXNoKHRhcmdldCk7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJkLmNvbmZpZ3NbcmVnaXN0ZXJkLmNsYXNzZXMuZmluZEluZGV4KGMgPT4gYyA9PT0gdGFyZ2V0KV0gPSBjb25maWc7XG4gICAgaWYgKGNhbGxlclRhcmdldCkge1xuICAgICAgY29uc3QgY2FsbGVyVGFyZ2V0Q29uZmlnID1cbiAgICAgICAgcmVnaXN0ZXJkLmNvbmZpZ3NbcmVnaXN0ZXJkLmNsYXNzZXMuZmluZEluZGV4KGMgPT4gYyA9PT0gY2FsbGVyVGFyZ2V0KV07XG4gICAgICBpZiAoIWNvbmZpZy52Q2hpbGRyZW4uaW5jbHVkZXMoY2FsbGVyVGFyZ2V0Q29uZmlnKSkge1xuICAgICAgICBjb25maWcudkNoaWxkcmVuLnB1c2goY2FsbGVyVGFyZ2V0Q29uZmlnKTtcbiAgICAgIH1cbiAgICAgIGNhbGxlclRhcmdldENvbmZpZy52UGFyZW50ID0gY29uZmlnO1xuICAgIH1cblxuICAgIGNvbmZpZ3MucHVzaChjb25maWcpO1xuXG4gICAgcmV0dXJuIGlzVmFsaWRQYXJlbnRcbiAgICAgID8gZ2V0Q2xhc3NDb25maWcocGFyZW50Q2xhc3MsIGNvbmZpZ3MsIHRhcmdldClcbiAgICAgIDogY29uZmlncztcbiAgfVxuXG4gIC8qKlxuICAgKiBQTEVBU0UgUFJPVklERSBOQU1FIEFTIFRZUEVEIFNUUklORywgTk9UIFZBUklBQkxFXG4gICAqIERlY29yYXRvciByZXF1cmVkIGZvciBwcm9kdWN0aW9uIG1vZGVcbiAgICogQHBhcmFtIG5hbWUgTmFtZSBvZiBjbGFzc1xuICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIENMQVNTTkFNRShcbiAgICBjbGFzc05hbWU6IHN0cmluZyxcbiAgICBvcHRpb25zPzogTW9kZWxzLkNMQVNTTkFNRU9wdGlvbnMsXG4gICkge1xuICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiBGdW5jdGlvbikge1xuXG4gICAgICByZXR1cm4gc2V0Q2xhc3NOYW1lKHRhcmdldCwgY2xhc3NOYW1lLCBvcHRpb25zKTtcbiAgICB9IGFzIGFueTtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRDbGFzc05hbWUodGFyZ2V0OiBGdW5jdGlvbiwgcHJvZHVjdGlvbiA9IGZhbHNlKSB7XG4gICAgaWYgKF8uaXNOaWwodGFyZ2V0KSkge1xuXG5cbiAgICAgIHJldHVybiB2b2lkIDA7XG4gICAgfVxuICAgIGlmIChfLmlzU3RyaW5nKHRhcmdldCkpIHtcblxuICAgICAgSGVscGVycy5sb2coXG4gICAgICAgIGBbdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzXVtnZXRDbGFzc05hbWVdIHRhcmdldCBpcyBzdHJpbmc6ICcke3RhcmdldH0nLCBwcm9kdWNpdG9uOiAke3Byb2R1Y3Rpb259YCxcbiAgICAgICk7XG4gICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH1cbiAgICBpZiAoIV8uaXNGdW5jdGlvbih0YXJnZXQpKSB7XG5cbiAgICAgIEhlbHBlcnMubG9nKFxuICAgICAgICBgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bZ2V0Q2xhc3NOYW1lXSB0YXJnZXQgaXMgbm90IGEgY2xhc3NgLFxuICAgICAgKTtcbiAgICAgIHJldHVybiB2b2lkIDA7XG4gICAgfVxuXG4gICAgaWYgKHRhcmdldFtTWU1CT0wuQ2xhc3NOYW1lU3RhdGljUHJvcGVydHldKSB7XG4gICAgICByZXR1cm4gdGFyZ2V0W1NZTUJPTC5DbGFzc05hbWVTdGF0aWNQcm9wZXJ0eV07XG4gICAgfVxuXG4gICAgY29uc3QgY29uZmlncyA9IGdldENsYXNzQ29uZmlnKHRhcmdldCk7XG4gICAgY29uc3QgY29uZmlnID0gXy5maXJzdChjb25maWdzKTtcblxuICAgIGNvbnN0IGNsYXNzTmFtZUluQnJvd3NlciA9IGNvbmZpZz8uY2xhc3NOYW1lSW5Ccm93c2VyO1xuXG4gICAgaWYgKEhlbHBlcnMuaXNCcm93c2VyICYmIF8uaXNTdHJpbmcoY2xhc3NOYW1lSW5Ccm93c2VyKSkge1xuICAgICAgcmV0dXJuIGNsYXNzTmFtZUluQnJvd3NlcjtcbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc05hbWUgPSBjb25maWc/LmNsYXNzTmFtZTtcblxuICAgIGlmICh0eXBlb2YgY2xhc3NOYW1lID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGNsYXNzTmFtZTtcbiAgICB9XG5cbiAgICBpZiAocHJvZHVjdGlvbikge1xuICAgICAgY29uc29sZS5sb2coJ2NsYXNzIHdpdGhvdXQgQENMQVNTLk5BTUUgZGVvY3JhdG9yJywgdGFyZ2V0IGFzIGFueSk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoRVJST1JfTVNHX0NMQVNTX1dJVEhPVVRfREVDT1JBVE9SKTtcbiAgICB9IGVsc2Uge1xuXG5cblxuXG5cblxuXG5cblxuXG5cbiAgICB9XG5cblxuICAgIGlmICh0YXJnZXQubmFtZT8uc3RhcnRzV2l0aCgnY2xhc3NfJykpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICByZXR1cm4gdGFyZ2V0Lm5hbWU7XG4gIH1cblxuICAvLyBAdHMtaWdub3JlXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRPYmplY3RJbmRleFByb3BlcnR5VmFsdWUob2JqOiBhbnkpIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSBUY2hIZWxwZXJzLmdldE5hbWVGcm9tT2JqZWN0KG9iaik7XG5cbiAgICBsZXQgYyA9IGdldENsYXNzZXMoKS5maW5kKGMgPT4gYy5jbGFzc05hbWUgPT09IGNsYXNzTmFtZSk7XG5cbiAgICBpZiAoYykge1xuICAgICAgcmV0dXJuIGMudW5pcXVlS2V5O1xuICAgIH1cbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgZXhwb3J0IGZ1bmN0aW9uIGdldENsYXNzRmFtaWx5QnlDbGFzc05hbWUoY2xhc3NOYW1lOiBzdHJpbmcpIHtcbiAgICBsZXQgYyA9IGdldENsYXNzZXMoKS5maW5kKGMgPT4gYy5jbGFzc05hbWUgPT09IGNsYXNzTmFtZSk7XG5cbiAgICBpZiAoYykge1xuICAgICAgcmV0dXJuIGMuY2xhc3NGYW1pbHk7XG4gICAgfVxuICB9XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBleHBvcnQgZnVuY3Rpb24gZ2V0T2JqZWN0Q2xhc3NGYW1pbHkob2JqOiBhbnkpIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSBUY2hIZWxwZXJzLmdldE5hbWVGcm9tT2JqZWN0KG9iaik7XG5cbiAgICBsZXQgYyA9IGdldENsYXNzZXMoKS5maW5kKGMgPT4gYy5jbGFzc05hbWUgPT09IGNsYXNzTmFtZSk7XG5cbiAgICBpZiAoYykge1xuICAgICAgcmV0dXJuIGMuY2xhc3NGYW1pbHk7XG4gICAgfVxuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdEluZGV4VmFsdWUob2JqOiBhbnkpIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSBUY2hIZWxwZXJzLmdldE5hbWVGcm9tT2JqZWN0KG9iaik7XG5cbiAgICBsZXQgYyA9IGdldENsYXNzZXMoKS5maW5kKGMgPT4gYy5jbGFzc05hbWUgPT09IGNsYXNzTmFtZSk7XG5cbiAgICBpZiAoYyAmJiBfLmlzU3RyaW5nKGMudW5pcXVlS2V5KSkge1xuICAgICAgcmV0dXJuIG9ialtjLnVuaXF1ZUtleV07XG4gICAgfVxuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldENsYXNzQnkoY2xhc3NOYW1lOiBzdHJpbmcgfCBGdW5jdGlvbik6IEZ1bmN0aW9uIHtcbiAgICBsZXQgcmVzO1xuICAgIGlmIChBcnJheS5pc0FycmF5KGNsYXNzTmFtZSkpIHtcbiAgICAgIGlmIChjbGFzc05hbWUubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgIHRocm93IGBNYXBwaW5nIGVycm9yLi4uIHBsZWFzZSB1c2UgcHJvcGVyIGNsYXNzIG5hbWVzOlxuICB7XG4gICAgcHJvcGVydHlPYmplY3Q6ICdNeUNsYXNzTmFtZScsXG4gICAgcHJvcGVydHlXaXRoQXJyYXk6IFsnTXlDbGFzc05hbWUnXVxuICB9XG5cbiAgICAgICAgYDtcbiAgICAgIH1cbiAgICAgIGNsYXNzTmFtZSA9IGNsYXNzTmFtZVswXTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBjbGFzc05hbWUgPT09ICdmdW5jdGlvbicpIHtcblxuICAgICAgcmVzID0gY2xhc3NOYW1lO1xuICAgIH1cbiAgICBpZiAoY2xhc3NOYW1lID09PSAnRGF0ZScpIHtcbiAgICAgIHJlcyA9IERhdGU7XG4gICAgfVxuXG4gICAgaWYgKGNsYXNzTmFtZSA9PT0gJ0Zvcm1EYXRhJykge1xuICAgICAgcmVzID0gRm9ybURhdGE7XG4gICAgfVxuXG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuXG4gICAgaWYgKGMpIHtcbiAgICAgIHJlcyA9IGMudGFyZ2V0O1xuICAgIH1cblxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMgbGliL2NsYXNzbmFtZS50cyJdfQ==
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { _ } from 'tnp-core/browser';
|
|
2
|
-
import { SYMBOL } from './symbols';
|
|
3
|
-
/**
|
|
4
|
-
* @DEPRECATED
|
|
5
|
-
* Describe fields assigned in class
|
|
6
|
-
*/
|
|
7
|
-
const FRegEx = new RegExp(/(?:this\.)(.+?(?= ))/g);
|
|
8
|
-
export function describeFromClassStringify(target, parent = false) {
|
|
9
|
-
// @ts-ignore
|
|
10
|
-
var result = [];
|
|
11
|
-
if (parent) {
|
|
12
|
-
var proto = Object.getPrototypeOf(target.prototype);
|
|
13
|
-
if (proto) {
|
|
14
|
-
// @ts-ignore
|
|
15
|
-
result = result.concat(describeFromClassStringify(proto.constructor, parent));
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
const classString = target.toString();
|
|
19
|
-
const matches = classString.match(FRegEx) || [];
|
|
20
|
-
result = result.concat(matches);
|
|
21
|
-
return result.map(prop => prop
|
|
22
|
-
.replace('this.', '')
|
|
23
|
-
.replace('.', '')
|
|
24
|
-
.replace(')', '')
|
|
25
|
-
.replace('(', ''));
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Describe fields assigne through @DefaultModelWithMapping decorator
|
|
29
|
-
* without functions
|
|
30
|
-
*/
|
|
31
|
-
export function describeByDefaultModelsAndMapping(target) {
|
|
32
|
-
let res = {};
|
|
33
|
-
if (target) {
|
|
34
|
-
// @ts-ignore
|
|
35
|
-
if (target[SYMBOL.DEFAULT_MODEL]) {
|
|
36
|
-
// @ts-ignore
|
|
37
|
-
Object.keys(target[SYMBOL.DEFAULT_MODEL])
|
|
38
|
-
.filter(key => {
|
|
39
|
-
// @ts-ignore
|
|
40
|
-
return !_.isFunction(target[SYMBOL.DEFAULT_MODEL][key]);
|
|
41
|
-
})
|
|
42
|
-
.forEach(key => {
|
|
43
|
-
// @ts-ignore
|
|
44
|
-
return res[key] = null;
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
// @ts-ignore
|
|
48
|
-
let mapping = target[SYMBOL.MODELS_MAPPING];
|
|
49
|
-
if (_.isArray(mapping)) {
|
|
50
|
-
mapping.forEach(m => {
|
|
51
|
-
Object.keys(m)
|
|
52
|
-
.forEach(key => {
|
|
53
|
-
// @ts-ignore
|
|
54
|
-
res[key] = null;
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
else if (mapping) {
|
|
59
|
-
Object.keys(mapping)
|
|
60
|
-
.forEach(key => {
|
|
61
|
-
// @ts-ignore
|
|
62
|
-
res[key] = null;
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
let propNames = Object.keys(res).filter(f => !!f);
|
|
67
|
-
propNames = (!propNames.includes('id') ? ['id'] : []).concat(propNames);
|
|
68
|
-
return propNames;
|
|
69
|
-
}
|
|
70
|
-
;
|
|
71
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/describe-class.ts
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpYmUtY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvcHJvamVjdHMvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3NyYy9saWIvZGVzY3JpYmUtY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFJbkM7OztJQUdJO0FBQ0osTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQUNuRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsTUFBZ0IsRUFBRSxNQUFNLEdBQUcsS0FBSztJQUN6RSxhQUFhO0lBQ2IsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLElBQUksTUFBTSxFQUFFLENBQUM7UUFDWCxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwRCxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsYUFBYTtZQUNiLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNoRixDQUFDO0lBQ0gsQ0FBQztJQUNELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN0QyxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUsvQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJO1NBQzNCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1NBQ3BCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO1NBQ2hCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO1NBQ2hCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQ2xCLENBQUE7QUFFSCxDQUFDO0FBRUQ7OztLQUdLO0FBQ0wsTUFBTSxVQUFVLGlDQUFpQyxDQUFDLE1BQWdCO0lBQ2hFLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQTtJQUNaLElBQUksTUFBTSxFQUFFLENBQUM7UUFDWCxhQUFhO1FBQ2IsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDakMsYUFBYTtZQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztpQkFDdEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNaLGFBQWE7Z0JBQ2IsT0FBTyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFELENBQUMsQ0FBQztpQkFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2IsYUFBYTtnQkFDYixPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDekIsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO1FBQ0QsYUFBYTtRQUNiLElBQUksT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDdkIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDbEIsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7cUJBQ1gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNiLGFBQWE7b0JBQ2IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztnQkFDbEIsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUM7YUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBRW5CLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2IsYUFBYTtnQkFDYixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRCxTQUFTLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4RSxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgU1lNQk9MIH0gZnJvbSAnLi9zeW1ib2xzJztcblxuXG5cbi8qKlxuICAqIEBERVBSRUNBVEVEXG4gICogRGVzY3JpYmUgZmllbGRzIGFzc2lnbmVkIGluIGNsYXNzXG4gICovXG5jb25zdCBGUmVnRXggPSBuZXcgUmVnRXhwKC8oPzp0aGlzXFwuKSguKz8oPz0gKSkvZyk7XG5leHBvcnQgZnVuY3Rpb24gZGVzY3JpYmVGcm9tQ2xhc3NTdHJpbmdpZnkodGFyZ2V0OiBGdW5jdGlvbiwgcGFyZW50ID0gZmFsc2UpOiBzdHJpbmdbXSB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgdmFyIHJlc3VsdCA9IFtdO1xuICBpZiAocGFyZW50KSB7XG4gICAgdmFyIHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKHRhcmdldC5wcm90b3R5cGUpO1xuICAgIGlmIChwcm90bykge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdChkZXNjcmliZUZyb21DbGFzc1N0cmluZ2lmeShwcm90by5jb25zdHJ1Y3RvciwgcGFyZW50KSk7XG4gICAgfVxuICB9XG4gIGNvbnN0IGNsYXNzU3RyaW5nID0gdGFyZ2V0LnRvU3RyaW5nKCk7XG4gIGNvbnN0IG1hdGNoZXMgPSBjbGFzc1N0cmluZy5tYXRjaChGUmVnRXgpIHx8IFtdXG5cblxuXG5cbiAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdChtYXRjaGVzKTtcbiAgcmV0dXJuIHJlc3VsdC5tYXAocHJvcCA9PiBwcm9wXG4gICAgLnJlcGxhY2UoJ3RoaXMuJywgJycpXG4gICAgLnJlcGxhY2UoJy4nLCAnJylcbiAgICAucmVwbGFjZSgnKScsICcnKVxuICAgIC5yZXBsYWNlKCcoJywgJycpXG4gIClcblxufVxuXG4vKipcbiAgICogRGVzY3JpYmUgZmllbGRzIGFzc2lnbmUgdGhyb3VnaCBARGVmYXVsdE1vZGVsV2l0aE1hcHBpbmcgZGVjb3JhdG9yXG4gICAqIHdpdGhvdXQgZnVuY3Rpb25zXG4gICAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlc2NyaWJlQnlEZWZhdWx0TW9kZWxzQW5kTWFwcGluZyh0YXJnZXQ6IEZ1bmN0aW9uKTogc3RyaW5nW10ge1xuICBsZXQgcmVzID0ge31cbiAgaWYgKHRhcmdldCkge1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBpZiAodGFyZ2V0W1NZTUJPTC5ERUZBVUxUX01PREVMXSkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgT2JqZWN0LmtleXModGFyZ2V0W1NZTUJPTC5ERUZBVUxUX01PREVMXSlcbiAgICAgICAgLmZpbHRlcihrZXkgPT4ge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICByZXR1cm4gIV8uaXNGdW5jdGlvbih0YXJnZXRbU1lNQk9MLkRFRkFVTFRfTU9ERUxdW2tleV0pO1xuICAgICAgICB9KVxuICAgICAgICAuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICByZXR1cm4gcmVzW2tleV0gPSBudWxsO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGxldCBtYXBwaW5nID0gdGFyZ2V0W1NZTUJPTC5NT0RFTFNfTUFQUElOR107XG4gICAgaWYgKF8uaXNBcnJheShtYXBwaW5nKSkge1xuICAgICAgbWFwcGluZy5mb3JFYWNoKG0gPT4ge1xuICAgICAgICBPYmplY3Qua2V5cyhtKVxuICAgICAgICAgIC5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICByZXNba2V5XSA9IG51bGw7XG4gICAgICAgICAgfSk7XG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAobWFwcGluZykge1xuXG4gICAgICBPYmplY3Qua2V5cyhtYXBwaW5nKVxuICAgICAgICAuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICByZXNba2V5XSA9IG51bGw7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGxldCBwcm9wTmFtZXMgPSBPYmplY3Qua2V5cyhyZXMpLmZpbHRlcihmID0+ICEhZik7XG4gIHByb3BOYW1lcyA9ICghcHJvcE5hbWVzLmluY2x1ZGVzKCdpZCcpID8gWydpZCddIDogW10pLmNvbmNhdChwcm9wTmFtZXMpO1xuICByZXR1cm4gcHJvcE5hbWVzO1xufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzIGxpYi9kZXNjcmliZS1jbGFzcy50cyJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export const ERROR_MSG_CLASS_WITHOUT_DECORATOR = `[typescript-class-helpers][getClassName(...)](PRODUCTION MODE ERROR)
|
|
2
|
-
Please use decoartor @CLASSNAME for each entity or controller
|
|
3
|
-
This is preventing class name problem in minified code.
|
|
4
|
-
// @ts-ignore
|
|
5
|
-
import { CLASS } from '../lib';
|
|
6
|
-
|
|
7
|
-
@CLASS.NAME('ExampleClass')
|
|
8
|
-
class ExampleClass {
|
|
9
|
-
...
|
|
10
|
-
}
|
|
11
|
-
`;
|
|
12
|
-
;
|
|
13
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/errors-messages.ts
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLW1lc3NhZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3Byb2plY3RzL3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9zcmMvbGliL2Vycm9ycy1tZXNzYWdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBRzs7Ozs7Ozs7OztDQVVoRCxDQUFDO0FBRUQsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw0RUFBNEUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5leHBvcnQgY29uc3QgRVJST1JfTVNHX0NMQVNTX1dJVEhPVVRfREVDT1JBVE9SID0gYFt0eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnNdW2dldENsYXNzTmFtZSguLi4pXShQUk9EVUNUSU9OIE1PREUgRVJST1IpXG5QbGVhc2UgdXNlIGRlY29hcnRvciBAQ0xBU1NOQU1FIGZvciBlYWNoIGVudGl0eSBvciBjb250cm9sbGVyXG5UaGlzIGlzIHByZXZlbnRpbmcgY2xhc3MgbmFtZSBwcm9ibGVtIGluIG1pbmlmaWVkIGNvZGUuXG4gLy8gQHRzLWlnbm9yZVxuaW1wb3J0IHsgQ0xBU1MgfSBmcm9tICcuLi9saWInO1xuXG5AQ0xBU1MuTkFNRSgnRXhhbXBsZUNsYXNzJylcbmNsYXNzIEV4YW1wbGVDbGFzcyB7XG4gIC4uLlxufVxuYDtcblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXR5cGVzY3JpcHQtY2xhc3MtaGVscGVycyBsaWIvZXJyb3JzLW1lc3NhZ2VzLnRzIl19
|