typescript-class-helpers 19.0.4 → 19.0.6
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/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/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/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.js +12 -12
- package/lib/index.js.map +1 -1
- package/lib/models.d.ts +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/package.json +1 -1
- package/tmp-environment.json +4 -4
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"describe-class.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/describe-class.ts"],"names":[],"mappings":";;AAUA,gEAwBC;AAMD,8EAuCC;AA/ED,
|
|
1
|
+
{"version":3,"file":"describe-class.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/describe-class.ts"],"names":[],"mappings":"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"}
|
package/lib/errors-messages.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const ERROR_MSG_CLASS_WITHOUT_DECORATOR = "[typescript-class-helpers][getClassName(...)](PRODUCTION MODE ERROR)\nPlease use decoartor @CLASSNAME for each entity or controller\nThis is preventing class name problem in minified code.\n\nimport { CLASS } from 'typescript-class-helpers';\n\n@CLASS.NAME('ExampleClass')\nclass ExampleClass {\n ...\n}\n";
|
|
1
|
+
export declare const ERROR_MSG_CLASS_WITHOUT_DECORATOR = "[typescript-class-helpers][getClassName(...)](PRODUCTION MODE ERROR)\nPlease use decoartor @CLASSNAME for each entity or controller\nThis is preventing class name problem in minified code.\n\nimport { CLASS } from 'typescript-class-helpers';\n\n@CLASS.NAME('ExampleClass')\nclass ExampleClass {\n ...\n}\n";
|
package/lib/errors-messages.js
CHANGED
|
@@ -5,7 +5,7 @@ exports.ERROR_MSG_CLASS_WITHOUT_DECORATOR = `[typescript-class-helpers][getClass
|
|
|
5
5
|
Please use decoartor @CLASSNAME for each entity or controller
|
|
6
6
|
This is preventing class name problem in minified code.
|
|
7
7
|
|
|
8
|
-
import { CLASS } from '
|
|
8
|
+
import { CLASS } from 'typescript-class-helpers';
|
|
9
9
|
|
|
10
10
|
@CLASS.NAME('ExampleClass')
|
|
11
11
|
class ExampleClass {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors-messages.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/errors-messages.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"errors-messages.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/errors-messages.ts"],"names":[],"mappings":";;;AAAa,QAAA,iCAAiC,GAAG;;;;;;;;;;CAUhD,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.CLASS = exports.TchHelpers = exports.SYMBOL = exports.Models = void 0;
|
|
18
|
-
const
|
|
18
|
+
const lib_1 = require("tnp-core/lib");
|
|
19
19
|
const classname_1 = require("./classname");
|
|
20
20
|
const describe_class_1 = require("./describe-class");
|
|
21
21
|
const set_class_name_1 = require("./set-class-name");
|
|
@@ -28,7 +28,7 @@ class TchHelpers {
|
|
|
28
28
|
return classname_1.CLASSNAME.getClassBy(className);
|
|
29
29
|
}
|
|
30
30
|
static getFromObject(o) {
|
|
31
|
-
if (
|
|
31
|
+
if (lib_1._.isUndefined(o) || lib_1._.isNull(o)) {
|
|
32
32
|
return;
|
|
33
33
|
}
|
|
34
34
|
if (o.constructor) {
|
|
@@ -75,11 +75,11 @@ const getMethodsNames = (classOrClassInstance, allMethodsNames = []) => {
|
|
|
75
75
|
if (!classOrClassInstance) {
|
|
76
76
|
return allMethodsNames;
|
|
77
77
|
}
|
|
78
|
-
const isClassFunction =
|
|
78
|
+
const isClassFunction = lib_1._.isFunction(classOrClassInstance);
|
|
79
79
|
const classFun = (isClassFunction ? classOrClassInstance : Object.getPrototypeOf(classOrClassInstance));
|
|
80
80
|
const objectToCheck = isClassFunction ? classOrClassInstance?.prototype : classOrClassInstance;
|
|
81
81
|
const prototypeObj = Object.getPrototypeOf(objectToCheck || {});
|
|
82
|
-
const properties =
|
|
82
|
+
const properties = lib_1._.uniq([
|
|
83
83
|
...Object.getOwnPropertyNames(objectToCheck || {}),
|
|
84
84
|
...Object.getOwnPropertyNames(prototypeObj || {}),
|
|
85
85
|
...Object.keys(objectToCheck || {}),
|
|
@@ -141,7 +141,7 @@ exports.CLASS = {
|
|
|
141
141
|
* @deprecated
|
|
142
142
|
*/
|
|
143
143
|
getConfig: (target) => {
|
|
144
|
-
return
|
|
144
|
+
return lib_1._.first(TchHelpers.getConfigs(target));
|
|
145
145
|
},
|
|
146
146
|
getMethodsNames(classOrClassInstance) {
|
|
147
147
|
return getMethodsNames(classOrClassInstance);
|
|
@@ -162,15 +162,15 @@ exports.CLASS = {
|
|
|
162
162
|
return classname_1.CLASSNAME.getObjectIndexPropertyValue(obj);
|
|
163
163
|
},
|
|
164
164
|
get isClassObject() {
|
|
165
|
-
if (!
|
|
166
|
-
|
|
165
|
+
if (!lib_1._.isObject(obj) || lib_1._.isArray(obj) || lib_1._.isRegExp(obj) ||
|
|
166
|
+
lib_1._.isBuffer(obj) || lib_1._.isArrayBuffer(obj)) {
|
|
167
167
|
return false;
|
|
168
168
|
}
|
|
169
|
-
if (
|
|
169
|
+
if (lib_1._.isDate(obj)) {
|
|
170
170
|
return true;
|
|
171
171
|
}
|
|
172
172
|
const className = exports.CLASS.getNameFromObject(obj);
|
|
173
|
-
return
|
|
173
|
+
return lib_1._.isString(className) && className !== 'Object';
|
|
174
174
|
},
|
|
175
175
|
isEqual: (anotherObj, compareDeep = false) => {
|
|
176
176
|
if (!exports.CLASS.OBJECT(obj).isClassObject || !exports.CLASS.OBJECT(anotherObj).isClassObject) {
|
|
@@ -184,7 +184,7 @@ exports.CLASS = {
|
|
|
184
184
|
const v2 = classname_1.CLASSNAME.getObjectIndexValue(anotherObj);
|
|
185
185
|
const f1 = classname_1.CLASSNAME.getObjectClassFamily(obj);
|
|
186
186
|
const f2 = classname_1.CLASSNAME.getObjectClassFamily(anotherObj);
|
|
187
|
-
const isFamilyDiff = (!
|
|
187
|
+
const isFamilyDiff = (!lib_1._.isString(f1) || !lib_1._.isString(f2) || (f1 !== f2));
|
|
188
188
|
// console.log(`DIFF FAMILY ${isFamilyDiff} v1: ${CLASSNAME.getObjectClassFamily(obj)}, v2: ${CLASSNAME.getObjectClassFamily(anotherObj)} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
|
|
189
189
|
if (isFamilyDiff) {
|
|
190
190
|
// console.log(`DIFF v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
|
|
@@ -198,13 +198,13 @@ exports.CLASS = {
|
|
|
198
198
|
// console.log(`v2: ${v2} ,class ${CLASS.getNameFromObject(anotherObj)} ,prop: ${CLASS.OBJECT(anotherObj).indexProperty}`)
|
|
199
199
|
// console.log(`v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
|
|
200
200
|
// console.log('')
|
|
201
|
-
if ((
|
|
201
|
+
if ((lib_1._.isNumber(v1) && lib_1._.isNumber(v2)) || (lib_1._.isString(v1) && lib_1._.isString(v2))) {
|
|
202
202
|
const res = (v1 === v2);
|
|
203
203
|
// @ts-ignore
|
|
204
204
|
return res;
|
|
205
205
|
}
|
|
206
206
|
if (compareDeep) {
|
|
207
|
-
return
|
|
207
|
+
return lib_1._.isEqual(v1, v2);
|
|
208
208
|
}
|
|
209
209
|
return false;
|
|
210
210
|
}
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/index.ts"],"names":[],"mappings":"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"}
|
package/lib/models.d.ts
CHANGED
package/lib/set-class-name.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.setClassName = setClassName;
|
|
4
|
-
const
|
|
4
|
+
const lib_1 = require("tnp-core/lib");
|
|
5
5
|
const symbols_1 = require("./symbols");
|
|
6
6
|
const storage_1 = require("./storage");
|
|
7
7
|
const classname_1 = require("./classname");
|
|
@@ -19,14 +19,14 @@ function setClassName(target, className, options) {
|
|
|
19
19
|
singleton: void 0,
|
|
20
20
|
autoinstance: false
|
|
21
21
|
};
|
|
22
|
-
if (!
|
|
22
|
+
if (!lib_1._.isUndefined(singleton) && lib_1._.isBoolean(singleton) && singleton) {
|
|
23
23
|
singleton = 'first-instance';
|
|
24
24
|
}
|
|
25
25
|
if (!uniqueKey) {
|
|
26
26
|
uniqueKey = 'id';
|
|
27
27
|
}
|
|
28
28
|
if (target) {
|
|
29
|
-
const config =
|
|
29
|
+
const config = lib_1._.first(classname_1.CLASSNAME.getClassConfig(target));
|
|
30
30
|
config.className = className;
|
|
31
31
|
config.uniqueKey = uniqueKey;
|
|
32
32
|
config.classNameInBrowser = classNameInBrowser;
|
|
@@ -45,11 +45,11 @@ function setClassName(target, className, options) {
|
|
|
45
45
|
uniqueKey,
|
|
46
46
|
classFamily
|
|
47
47
|
};
|
|
48
|
-
if (
|
|
48
|
+
if (lib_1._.isUndefined(classFamily)) {
|
|
49
49
|
Object.defineProperty(res, 'classFamily', {
|
|
50
50
|
get: function () {
|
|
51
51
|
const parent = Object.getPrototypeOf(target);
|
|
52
|
-
if (!
|
|
52
|
+
if (!lib_1._.isFunction(parent) || parent.name === 'Object' || parent.name === '') {
|
|
53
53
|
return className;
|
|
54
54
|
}
|
|
55
55
|
const classNameNew = classname_1.CLASSNAME.getClassName(parent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-class-name.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/set-class-name.ts"],"names":[],"mappings":";;AAcA,oCAiGC;AA/GD,
|
|
1
|
+
{"version":3,"file":"set-class-name.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/set-class-name.ts"],"names":[],"mappings":"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"}
|
package/lib/storage.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getStorage = getStorage;
|
|
4
|
-
const
|
|
4
|
+
const lib_1 = require("tnp-core/lib");
|
|
5
5
|
const symbols_1 = require("./symbols");
|
|
6
|
-
const
|
|
6
|
+
const lib_2 = require("tnp-core/lib");
|
|
7
7
|
function defaultValues() {
|
|
8
|
-
return
|
|
8
|
+
return lib_2._.cloneDeep({
|
|
9
9
|
[symbols_1.SYMBOL.CLASSES]: []
|
|
10
10
|
});
|
|
11
11
|
}
|
|
12
12
|
function getStorage(property) {
|
|
13
13
|
//#region @backend
|
|
14
|
-
if (
|
|
14
|
+
if (lib_1.Helpers.isBrowser) {
|
|
15
15
|
console.trace(`[typescript-class-helpers][getStorage] You bundle contains backend files`);
|
|
16
16
|
}
|
|
17
17
|
//#endregion
|
package/lib/storage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/storage.ts"],"names":[],"mappings":";;AAUA,gCAkBC;AA5BD,
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/storage.ts"],"names":[],"mappings":";;AAUA,gCAkBC;AA5BD,sCAAuC;AACvC,uCAAmC;AACnC,sCAAiC;AAEjC,SAAS,aAAa;IACpB,OAAO,OAAC,CAAC,SAAS,CAAC;QACjB,CAAC,gBAAM,CAAC,OAAO,CAAC,EAAE,EAAE;KACrB,CAAC,CAAA;AACJ,CAAC;AAED,SAAgB,UAAU,CAAU,QAAiB;IAEnD,kBAAkB;IAClB,IAAI,aAAO,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,0EAA0E,CAAC,CAAA;IAC3F,CAAC;IACD,YAAY;IAEZ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAEjC,MAAM,wBAAwB,GAAG,UAAU,EAAE,CAAC;QAC9C,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,OAAO,aAAa,CAAC,SAAS,CAAC,gBAAM,CAAC,OAAO,CAAC,KAAK,WAAW,EAAE,CAAC;QACnE,aAAa,CAAC,SAAS,CAAC,gBAAM,CAAC,OAAO,CAAC,GAAG,aAAa,EAAE,CAAA;IAC3D,CAAC;IACD,OAAO,aAAa,CAAC,SAAS,CAAC,gBAAM,CAAC,OAAO,CAAC,CAAA;AAChD,CAAC"}
|
package/package.json
CHANGED
package/tmp-environment.json
CHANGED
|
@@ -24,14 +24,14 @@
|
|
|
24
24
|
"releaseType": "manual",
|
|
25
25
|
"targetArtifact": "npm-lib-and-cli-tool",
|
|
26
26
|
"envName": "__",
|
|
27
|
-
"resolvedNewVersion": "19.0.
|
|
27
|
+
"resolvedNewVersion": "19.0.6"
|
|
28
28
|
},
|
|
29
29
|
"copyToManager": {},
|
|
30
30
|
"buildInfo": {
|
|
31
|
-
"date": "2025-
|
|
32
|
-
"hash": "
|
|
31
|
+
"date": "2025-05-02T20:21:16.000Z",
|
|
32
|
+
"hash": "2a13698402eed5ca68a21e8841ef5dcca07abe15"
|
|
33
33
|
},
|
|
34
34
|
"currentProjectName": "typescript-class-helpers",
|
|
35
35
|
"currentProjectType": "isomorphic-lib",
|
|
36
|
-
"pathsTsconfig": "\"paths\": {\"typescript-class-helpers\":[\"./src/lib\"],\"typescript-class-helpers/*\":[\"./src/lib/*\"]},"
|
|
36
|
+
"pathsTsconfig": "\"paths\": {\"@lib\":[\"./src/lib\"],\"@lib/*\":[\"./src/lib/*\"],\"typescript-class-helpers/src\":[\"./src/lib\"],\"typescript-class-helpers/src/*\":[\"./src/lib/*\"]},"
|
|
37
37
|
}
|
|
@@ -14,6 +14,7 @@ var Models;
|
|
|
14
14
|
*/
|
|
15
15
|
class MethodConfig {
|
|
16
16
|
constructor() {
|
|
17
|
+
//#endregion
|
|
17
18
|
this.parameters = {};
|
|
18
19
|
}
|
|
19
20
|
}
|
|
@@ -32,8 +33,6 @@ var Models;
|
|
|
32
33
|
}
|
|
33
34
|
Models.ClassConfig = ClassConfig;
|
|
34
35
|
})(Models || (Models = {}));
|
|
35
|
-
;
|
|
36
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/models.ts
|
|
37
36
|
|
|
38
37
|
const SYMBOL = {
|
|
39
38
|
MODELS_MAPPING: Symbol(),
|
|
@@ -42,7 +41,6 @@ const SYMBOL = {
|
|
|
42
41
|
CLASSES: 'classes',
|
|
43
42
|
ClassNameStaticProperty: '$$className$$'
|
|
44
43
|
};
|
|
45
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/symbols.ts
|
|
46
44
|
|
|
47
45
|
function defaultValues() {
|
|
48
46
|
return _.cloneDeep({
|
|
@@ -63,8 +61,6 @@ function getStorage(property) {
|
|
|
63
61
|
}
|
|
64
62
|
return defaultValues.prototype[SYMBOL.STORAGE];
|
|
65
63
|
}
|
|
66
|
-
;
|
|
67
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/storage.ts
|
|
68
64
|
|
|
69
65
|
function getClasses$1() {
|
|
70
66
|
const s = getStorage();
|
|
@@ -90,6 +86,7 @@ function setClassName(target, className, options) {
|
|
|
90
86
|
config.className = className;
|
|
91
87
|
config.uniqueKey = uniqueKey;
|
|
92
88
|
config.classNameInBrowser = classNameInBrowser;
|
|
89
|
+
// console.log(`Setting class Name to "${target.name}"`)
|
|
93
90
|
}
|
|
94
91
|
const existed = getClasses$1()
|
|
95
92
|
.find(f => f.className === className);
|
|
@@ -123,17 +120,21 @@ function setClassName(target, className, options) {
|
|
|
123
120
|
const obj = {
|
|
124
121
|
// @ts-ignore
|
|
125
122
|
decoratedConstructor: function (...args) {
|
|
123
|
+
// console.log(`DECORATED CONSTRUCTOR OF ${Original.name}`)
|
|
126
124
|
const context = Original.apply(this, args);
|
|
127
125
|
const existedSingleton = CLASS.getSingleton(Original);
|
|
128
126
|
if (!existedSingleton || singleton === 'last-instance') {
|
|
129
127
|
CLASS.setSingletonObj(Original, this);
|
|
130
128
|
CLASS.setSingletonObj(obj.decoratedConstructor, this);
|
|
129
|
+
// console.log(`Singleton created for "${className}", mode: ${singleton} `);
|
|
131
130
|
}
|
|
132
131
|
else {
|
|
132
|
+
// console.log('ingleton exists')
|
|
133
133
|
}
|
|
134
134
|
return context;
|
|
135
135
|
}
|
|
136
136
|
};
|
|
137
|
+
// copy prototype so intanceof operator still works
|
|
137
138
|
obj.decoratedConstructor.prototype = Original.prototype;
|
|
138
139
|
// @ts-ignore
|
|
139
140
|
Object.keys(Original).forEach((name) => { obj.decoratedConstructor[name] = Original[name]; });
|
|
@@ -141,35 +142,34 @@ function setClassName(target, className, options) {
|
|
|
141
142
|
value: className,
|
|
142
143
|
configurable: true,
|
|
143
144
|
});
|
|
145
|
+
// (obj.decoratedConstructor as any).name = className;
|
|
146
|
+
// console.log('return new contruor', decoratedConstructor)
|
|
144
147
|
return obj.decoratedConstructor;
|
|
145
148
|
}
|
|
146
149
|
else if (singleton === 'autoinstance') {
|
|
150
|
+
// console.log(`AUTOINSTANCE FOR ${target.name}`)
|
|
147
151
|
const auto = new Original();
|
|
148
152
|
CLASS.setSingletonObj(Original, auto);
|
|
153
|
+
// console.log(`Singleton created for "${className}", mode: ${singleton} `)
|
|
149
154
|
}
|
|
150
155
|
}
|
|
151
|
-
;
|
|
152
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/set-class-name.ts
|
|
153
156
|
|
|
154
157
|
const registerd = {
|
|
155
158
|
configs: [],
|
|
156
159
|
classes: [],
|
|
157
160
|
};
|
|
158
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/registerd-db.ts
|
|
159
161
|
|
|
160
162
|
const ERROR_MSG_CLASS_WITHOUT_DECORATOR = `[typescript-class-helpers][getClassName(...)](PRODUCTION MODE ERROR)
|
|
161
163
|
Please use decoartor @CLASSNAME for each entity or controller
|
|
162
164
|
This is preventing class name problem in minified code.
|
|
163
|
-
|
|
164
|
-
import { CLASS } from '
|
|
165
|
+
|
|
166
|
+
import { CLASS } from 'typescript-class-helpers';
|
|
165
167
|
|
|
166
168
|
@CLASS.NAME('ExampleClass')
|
|
167
169
|
class ExampleClass {
|
|
168
170
|
...
|
|
169
171
|
}
|
|
170
172
|
`;
|
|
171
|
-
;
|
|
172
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/errors-messages.ts
|
|
173
173
|
|
|
174
174
|
/* */
|
|
175
175
|
/* */
|
|
@@ -216,19 +216,24 @@ var CLASSNAME;
|
|
|
216
216
|
*/
|
|
217
217
|
function CLASSNAME(className, options) {
|
|
218
218
|
return function (target) {
|
|
219
|
+
// console.log(`CLASSNAME Inited ${className}`)
|
|
219
220
|
return setClassName(target, className, options);
|
|
220
221
|
};
|
|
221
222
|
}
|
|
222
223
|
CLASSNAME_1.CLASSNAME = CLASSNAME;
|
|
223
224
|
function getClassName(target, production = false) {
|
|
224
225
|
if (_.isNil(target)) {
|
|
226
|
+
// console.log(target);
|
|
227
|
+
// Helpers.warn(`[typescript-class-helpers][getClassName] target is nil`)
|
|
225
228
|
return void 0;
|
|
226
229
|
}
|
|
227
230
|
if (_.isString(target)) {
|
|
231
|
+
// console.log(target);
|
|
228
232
|
Helpers.log(`[typescript-class-helpers][getClassName] target is string: '${target}', produciton: ${production}`);
|
|
229
233
|
return target;
|
|
230
234
|
}
|
|
231
235
|
if (!_.isFunction(target)) {
|
|
236
|
+
// console.log(target);
|
|
232
237
|
Helpers.log(`[typescript-class-helpers][getClassName] target is not a class`);
|
|
233
238
|
return void 0;
|
|
234
239
|
}
|
|
@@ -250,7 +255,19 @@ var CLASSNAME;
|
|
|
250
255
|
throw new Error(ERROR_MSG_CLASS_WITHOUT_DECORATOR);
|
|
251
256
|
}
|
|
252
257
|
else {
|
|
253
|
-
|
|
258
|
+
// Helpers.log('check for ' + target.name)
|
|
259
|
+
// setTimeout(() => {
|
|
260
|
+
// // Helpers.log('check for ' + target.name + ' === ' + config.className)/
|
|
261
|
+
// // TODO this may work, but not yet in singleton/morphi
|
|
262
|
+
// if (!config.className) {
|
|
263
|
+
// if (target?.name && target.name !== 'Object') {
|
|
264
|
+
// ConfigHelpers.log(`[typescript-class-helpers] Please use @CLASS.NAME`
|
|
265
|
+
// + `('${(target?.name && !!target.name) ? target.name : '...'}') decorator for class ${target?.name}`)
|
|
266
|
+
// }
|
|
267
|
+
// }
|
|
268
|
+
// })
|
|
269
|
+
}
|
|
270
|
+
// special thing when cloning classes
|
|
254
271
|
if (target.name?.startsWith('class_')) {
|
|
255
272
|
return '';
|
|
256
273
|
}
|
|
@@ -260,7 +277,9 @@ var CLASSNAME;
|
|
|
260
277
|
// @ts-ignore
|
|
261
278
|
function getObjectIndexPropertyValue(obj) {
|
|
262
279
|
const className = TchHelpers.getNameFromObject(obj);
|
|
280
|
+
// console.log('className',className)
|
|
263
281
|
let c = getClasses().find(c => c.className === className);
|
|
282
|
+
// console.log('c',c)
|
|
264
283
|
if (c) {
|
|
265
284
|
return c.uniqueKey;
|
|
266
285
|
}
|
|
@@ -269,6 +288,7 @@ var CLASSNAME;
|
|
|
269
288
|
// @ts-ignore
|
|
270
289
|
function getClassFamilyByClassName(className) {
|
|
271
290
|
let c = getClasses().find(c => c.className === className);
|
|
291
|
+
// console.log('getClasses()', getClasses())
|
|
272
292
|
if (c) {
|
|
273
293
|
return c.classFamily;
|
|
274
294
|
}
|
|
@@ -277,7 +297,9 @@ var CLASSNAME;
|
|
|
277
297
|
// @ts-ignore
|
|
278
298
|
function getObjectClassFamily(obj) {
|
|
279
299
|
const className = TchHelpers.getNameFromObject(obj);
|
|
300
|
+
// console.log('className',className)
|
|
280
301
|
let c = getClasses().find(c => c.className === className);
|
|
302
|
+
// console.log('c',c)
|
|
281
303
|
if (c) {
|
|
282
304
|
return c.classFamily;
|
|
283
305
|
}
|
|
@@ -285,7 +307,9 @@ var CLASSNAME;
|
|
|
285
307
|
CLASSNAME_1.getObjectClassFamily = getObjectClassFamily;
|
|
286
308
|
function getObjectIndexValue(obj) {
|
|
287
309
|
const className = TchHelpers.getNameFromObject(obj);
|
|
310
|
+
// console.log('className',className)
|
|
288
311
|
let c = getClasses().find(c => c.className === className);
|
|
312
|
+
// console.log('c',c)
|
|
289
313
|
if (c && _.isString(c.uniqueKey)) {
|
|
290
314
|
return obj[c.uniqueKey];
|
|
291
315
|
}
|
|
@@ -306,6 +330,7 @@ var CLASSNAME;
|
|
|
306
330
|
className = className[0];
|
|
307
331
|
}
|
|
308
332
|
if (typeof className === 'function') {
|
|
333
|
+
// TODO QUICK_FIX
|
|
309
334
|
res = className;
|
|
310
335
|
}
|
|
311
336
|
if (className === 'Date') {
|
|
@@ -318,13 +343,12 @@ var CLASSNAME;
|
|
|
318
343
|
if (c) {
|
|
319
344
|
res = c.target;
|
|
320
345
|
}
|
|
346
|
+
// console.log(`getClassBy "${className} return \n\n ${res} \n\n`)
|
|
321
347
|
// @ts-ignore
|
|
322
348
|
return res;
|
|
323
349
|
}
|
|
324
350
|
CLASSNAME_1.getClassBy = getClassBy;
|
|
325
351
|
})(CLASSNAME || (CLASSNAME = {}));
|
|
326
|
-
;
|
|
327
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/classname.ts
|
|
328
352
|
|
|
329
353
|
/**
|
|
330
354
|
* @DEPRECATED
|
|
@@ -343,6 +367,9 @@ function describeFromClassStringify(target, parent = false) {
|
|
|
343
367
|
}
|
|
344
368
|
const classString = target.toString();
|
|
345
369
|
const matches = classString.match(FRegEx) || [];
|
|
370
|
+
// console.log({
|
|
371
|
+
// classString,
|
|
372
|
+
// });
|
|
346
373
|
result = result.concat(matches);
|
|
347
374
|
return result.map(prop => prop
|
|
348
375
|
.replace('this.', '')
|
|
@@ -393,8 +420,6 @@ function describeByDefaultModelsAndMapping(target) {
|
|
|
393
420
|
propNames = (!propNames.includes('id') ? ['id'] : []).concat(propNames);
|
|
394
421
|
return propNames;
|
|
395
422
|
}
|
|
396
|
-
;
|
|
397
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/describe-class.ts
|
|
398
423
|
|
|
399
424
|
class TchHelpers {
|
|
400
425
|
static getBy(className) {
|
|
@@ -477,12 +502,14 @@ const CLASS = {
|
|
|
477
502
|
return;
|
|
478
503
|
}
|
|
479
504
|
const config = TchHelpers.getConfigs(target)[0];
|
|
505
|
+
// console.log(`getSingleton for ${target.name}: `, config.singleton)
|
|
480
506
|
return config.singleton;
|
|
481
507
|
},
|
|
482
508
|
/**
|
|
483
509
|
* @deprecated
|
|
484
510
|
*/
|
|
485
511
|
setSingletonObj(target, singletonObject) {
|
|
512
|
+
// console.log('SET SINGLETON', singletonObject)
|
|
486
513
|
if (typeof target !== 'function') {
|
|
487
514
|
console.error(`[typescript-class-helpers][setSingletonObj] Type of target is not a function`);
|
|
488
515
|
return;
|
|
@@ -496,6 +523,7 @@ const CLASS = {
|
|
|
496
523
|
return;
|
|
497
524
|
}
|
|
498
525
|
const className = CLASS.getName(target);
|
|
526
|
+
// console.log(`SINGLETON SET for TARGET ${className}`)
|
|
499
527
|
const config = TchHelpers.getConfigs(target)[0];
|
|
500
528
|
if (config.singleton) {
|
|
501
529
|
console.warn(`[typescript-class-helpers] You are trying to set singleton of "${className}" second time with different object.`);
|
|
@@ -546,6 +574,7 @@ const CLASS = {
|
|
|
546
574
|
return false;
|
|
547
575
|
}
|
|
548
576
|
if (obj === anotherObj) {
|
|
577
|
+
// console.log(`EQ v1: , v2: - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`, obj, anotherObj)
|
|
549
578
|
return true;
|
|
550
579
|
}
|
|
551
580
|
const v1 = CLASSNAME.getObjectIndexValue(obj);
|
|
@@ -553,12 +582,19 @@ const CLASS = {
|
|
|
553
582
|
const f1 = CLASSNAME.getObjectClassFamily(obj);
|
|
554
583
|
const f2 = CLASSNAME.getObjectClassFamily(anotherObj);
|
|
555
584
|
const isFamilyDiff = (!_.isString(f1) || !_.isString(f2) || (f1 !== f2));
|
|
585
|
+
// console.log(`DIFF FAMILY ${isFamilyDiff} v1: ${CLASSNAME.getObjectClassFamily(obj)}, v2: ${CLASSNAME.getObjectClassFamily(anotherObj)} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
|
|
556
586
|
if (isFamilyDiff) {
|
|
587
|
+
// console.log(`DIFF v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
|
|
557
588
|
return false;
|
|
558
589
|
}
|
|
559
590
|
if (!CLASS.OBJECT(obj).isClassObject || !CLASS.OBJECT(anotherObj).isClassObject) {
|
|
591
|
+
// console.log(`NOT CLASS v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
|
|
560
592
|
return false;
|
|
561
593
|
}
|
|
594
|
+
// console.log(`v1: ${v1} ,class ${CLASS.getNameFromObject(obj)} ,prop: ${CLASS.OBJECT(obj).indexProperty}`)
|
|
595
|
+
// console.log(`v2: ${v2} ,class ${CLASS.getNameFromObject(anotherObj)} ,prop: ${CLASS.OBJECT(anotherObj).indexProperty}`)
|
|
596
|
+
// console.log(`v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
|
|
597
|
+
// console.log('')
|
|
562
598
|
if ((_.isNumber(v1) && _.isNumber(v2)) || (_.isString(v1) && _.isString(v2))) {
|
|
563
599
|
const res = (v1 === v2);
|
|
564
600
|
// @ts-ignore
|
|
@@ -572,8 +608,6 @@ const CLASS = {
|
|
|
572
608
|
};
|
|
573
609
|
}
|
|
574
610
|
};
|
|
575
|
-
;
|
|
576
|
-
({}); // @--end-of-file-for-module=typescript-class-helpers lib/index.ts
|
|
577
611
|
|
|
578
612
|
/**
|
|
579
613
|
* Generated bundle index. Do not edit.
|