typescript-class-helpers 18.0.21 → 18.0.22
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/client/README.md +24 -24
- package/index.js +15 -2
- package/index.js.map +1 -1
- package/lib/build-info._auto-generated_.js.map +1 -1
- package/lib/classname.js +43 -40
- package/lib/classname.js.map +1 -1
- package/lib/describe-class.js +16 -17
- package/lib/describe-class.js.map +1 -1
- package/lib/errors-messages.js +11 -1
- package/lib/errors-messages.js.map +1 -1
- package/lib/index._auto-generated_.js.map +1 -1
- package/lib/index.js +77 -66
- package/lib/index.js.map +1 -1
- package/lib/models.js +44 -22
- package/lib/models.js.map +1 -1
- package/lib/registerd-db.js.map +1 -1
- package/lib/set-class-name.js +30 -34
- package/lib/set-class-name.js.map +1 -1
- package/lib/storage.js +8 -9
- package/lib/storage.js.map +1 -1
- package/lib/symbols.js.map +1 -1
- package/migrations/index.js +15 -2
- package/migrations/index.js.map +1 -1
- package/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/package.json +17 -65
- package/src.d.ts +1 -1
- package/taon.jsonc +31 -44
- package/tmp-environment.json +8 -402
- package/websql/README.md +24 -24
- package/browser/package.json +0 -25
- package/websql/package.json +0 -25
package/browser/README.md
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
# MyLib
|
|
2
|
-
|
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
-
|
|
5
|
-
## Code scaffolding
|
|
6
|
-
|
|
7
|
-
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
-
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
-
|
|
10
|
-
## Build
|
|
11
|
-
|
|
12
|
-
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
-
|
|
14
|
-
## Publishing
|
|
15
|
-
|
|
16
|
-
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
-
|
|
18
|
-
## Running unit tests
|
|
19
|
-
|
|
20
|
-
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
-
|
|
22
|
-
## Further help
|
|
23
|
-
|
|
24
|
-
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
1
|
+
# MyLib
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
+
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
package/client/README.md
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
# MyLib
|
|
2
|
-
|
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
-
|
|
5
|
-
## Code scaffolding
|
|
6
|
-
|
|
7
|
-
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
-
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
-
|
|
10
|
-
## Build
|
|
11
|
-
|
|
12
|
-
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
-
|
|
14
|
-
## Publishing
|
|
15
|
-
|
|
16
|
-
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
-
|
|
18
|
-
## Running unit tests
|
|
19
|
-
|
|
20
|
-
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
-
|
|
22
|
-
## Further help
|
|
23
|
-
|
|
24
|
-
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
1
|
+
# MyLib
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
+
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
package/index.js
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
tslib_1.__exportStar(require("./lib"), exports);
|
|
17
|
+
__exportStar(require("./lib"), exports);
|
|
5
18
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":[""],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AACa,QAAA,wBAAwB,GAAG,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/build-info._auto-generated_.ts"],"names":[],"mappings":";;;AACa,QAAA,wBAAwB,GAAG,KAAK,CAAC"}
|
package/lib/classname.js
CHANGED
|
@@ -1,44 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CLASSNAME = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
4
|
+
const tnp_core_1 = require("tnp-core");
|
|
5
|
+
const models_1 = require("./models");
|
|
6
|
+
const symbols_1 = require("./symbols");
|
|
7
|
+
const index_1 = require("./index");
|
|
8
|
+
const tnp_core_2 = require("tnp-core");
|
|
9
|
+
const storage_1 = require("./storage");
|
|
10
|
+
const set_class_name_1 = require("./set-class-name");
|
|
11
|
+
const registerd_db_1 = require("./registerd-db");
|
|
12
|
+
const errors_messages_1 = require("./errors-messages");
|
|
13
13
|
//#region @backend
|
|
14
|
-
|
|
14
|
+
const FormData = require("form-data");
|
|
15
15
|
//#endregion
|
|
16
16
|
function getClasses() {
|
|
17
|
-
|
|
17
|
+
const s = (0, storage_1.getStorage)();
|
|
18
18
|
return s[symbols_1.SYMBOL.CLASSES];
|
|
19
19
|
}
|
|
20
20
|
var CLASSNAME;
|
|
21
21
|
(function (CLASSNAME_1) {
|
|
22
|
-
function getClassConfig(target, configs, callerTarget) {
|
|
23
|
-
if (configs === void 0) { configs = []; }
|
|
22
|
+
function getClassConfig(target, configs = [], callerTarget) {
|
|
24
23
|
if (!tnp_core_1._.isFunction(target)) {
|
|
25
|
-
throw
|
|
24
|
+
throw `[typescript-class-helper][getClassConfig] Cannot get class config from: ${target}`;
|
|
26
25
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
let config;
|
|
27
|
+
const parentClass = Object.getPrototypeOf(target);
|
|
28
|
+
const isValidParent = tnp_core_1._.isFunction(parentClass) && parentClass.name !== '';
|
|
30
29
|
if (registerd_db_1.registerd.classes.includes(target)) {
|
|
31
30
|
config =
|
|
32
|
-
registerd_db_1.registerd.configs[registerd_db_1.registerd.classes.findIndex(
|
|
31
|
+
registerd_db_1.registerd.configs[registerd_db_1.registerd.classes.findIndex(c => c === target)];
|
|
33
32
|
}
|
|
34
33
|
else {
|
|
35
34
|
config = new models_1.Models.ClassConfig();
|
|
36
35
|
config.classReference = target;
|
|
37
36
|
registerd_db_1.registerd.classes.push(target);
|
|
38
37
|
}
|
|
39
|
-
registerd_db_1.registerd.configs[registerd_db_1.registerd.classes.findIndex(
|
|
38
|
+
registerd_db_1.registerd.configs[registerd_db_1.registerd.classes.findIndex(c => c === target)] = config;
|
|
40
39
|
if (callerTarget) {
|
|
41
|
-
|
|
40
|
+
const callerTargetConfig = registerd_db_1.registerd.configs[registerd_db_1.registerd.classes.findIndex(c => c === callerTarget)];
|
|
42
41
|
if (!config.vChildren.includes(callerTargetConfig)) {
|
|
43
42
|
config.vChildren.push(callerTargetConfig);
|
|
44
43
|
}
|
|
@@ -62,9 +61,7 @@ var CLASSNAME;
|
|
|
62
61
|
};
|
|
63
62
|
}
|
|
64
63
|
CLASSNAME_1.CLASSNAME = CLASSNAME;
|
|
65
|
-
function getClassName(target, production) {
|
|
66
|
-
var _a;
|
|
67
|
-
if (production === void 0) { production = false; }
|
|
64
|
+
function getClassName(target, production = false) {
|
|
68
65
|
if (tnp_core_1._.isNil(target)) {
|
|
69
66
|
// console.log(target);
|
|
70
67
|
// Helpers.warn(`[typescript-class-helpers][getClassName] target is nil`)
|
|
@@ -72,24 +69,24 @@ var CLASSNAME;
|
|
|
72
69
|
}
|
|
73
70
|
if (tnp_core_1._.isString(target)) {
|
|
74
71
|
// console.log(target);
|
|
75
|
-
tnp_core_2.Helpers.log(
|
|
72
|
+
tnp_core_2.Helpers.log(`[typescript-class-helpers][getClassName] target is string: '${target}', produciton: ${production}`);
|
|
76
73
|
return target;
|
|
77
74
|
}
|
|
78
75
|
if (!tnp_core_1._.isFunction(target)) {
|
|
79
76
|
// console.log(target);
|
|
80
|
-
tnp_core_2.Helpers.log(
|
|
77
|
+
tnp_core_2.Helpers.log(`[typescript-class-helpers][getClassName] target is not a class`);
|
|
81
78
|
return void 0;
|
|
82
79
|
}
|
|
83
80
|
if (target[symbols_1.SYMBOL.ClassNameStaticProperty]) {
|
|
84
81
|
return target[symbols_1.SYMBOL.ClassNameStaticProperty];
|
|
85
82
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
83
|
+
const configs = getClassConfig(target);
|
|
84
|
+
const config = tnp_core_1._.first(configs);
|
|
85
|
+
const classNameInBrowser = config?.classNameInBrowser;
|
|
89
86
|
if (tnp_core_2.Helpers.isBrowser && tnp_core_1._.isString(classNameInBrowser)) {
|
|
90
87
|
return classNameInBrowser;
|
|
91
88
|
}
|
|
92
|
-
|
|
89
|
+
const className = config?.className;
|
|
93
90
|
if (typeof className === 'string') {
|
|
94
91
|
return className;
|
|
95
92
|
}
|
|
@@ -111,7 +108,7 @@ var CLASSNAME;
|
|
|
111
108
|
// })
|
|
112
109
|
}
|
|
113
110
|
// special thing when cloning classes
|
|
114
|
-
if (
|
|
111
|
+
if (target.name?.startsWith('class_')) {
|
|
115
112
|
return '';
|
|
116
113
|
}
|
|
117
114
|
return target.name;
|
|
@@ -119,9 +116,9 @@ var CLASSNAME;
|
|
|
119
116
|
CLASSNAME_1.getClassName = getClassName;
|
|
120
117
|
// @ts-ignore
|
|
121
118
|
function getObjectIndexPropertyValue(obj) {
|
|
122
|
-
|
|
119
|
+
const className = index_1.TchHelpers.getNameFromObject(obj);
|
|
123
120
|
// console.log('className',className)
|
|
124
|
-
|
|
121
|
+
let c = getClasses().find(c => c.className === className);
|
|
125
122
|
// console.log('c',c)
|
|
126
123
|
if (c) {
|
|
127
124
|
return c.uniqueKey;
|
|
@@ -130,7 +127,7 @@ var CLASSNAME;
|
|
|
130
127
|
CLASSNAME_1.getObjectIndexPropertyValue = getObjectIndexPropertyValue;
|
|
131
128
|
// @ts-ignore
|
|
132
129
|
function getClassFamilyByClassName(className) {
|
|
133
|
-
|
|
130
|
+
let c = getClasses().find(c => c.className === className);
|
|
134
131
|
// console.log('getClasses()', getClasses())
|
|
135
132
|
if (c) {
|
|
136
133
|
return c.classFamily;
|
|
@@ -139,9 +136,9 @@ var CLASSNAME;
|
|
|
139
136
|
CLASSNAME_1.getClassFamilyByClassName = getClassFamilyByClassName;
|
|
140
137
|
// @ts-ignore
|
|
141
138
|
function getObjectClassFamily(obj) {
|
|
142
|
-
|
|
139
|
+
const className = index_1.TchHelpers.getNameFromObject(obj);
|
|
143
140
|
// console.log('className',className)
|
|
144
|
-
|
|
141
|
+
let c = getClasses().find(c => c.className === className);
|
|
145
142
|
// console.log('c',c)
|
|
146
143
|
if (c) {
|
|
147
144
|
return c.classFamily;
|
|
@@ -149,9 +146,9 @@ var CLASSNAME;
|
|
|
149
146
|
}
|
|
150
147
|
CLASSNAME_1.getObjectClassFamily = getObjectClassFamily;
|
|
151
148
|
function getObjectIndexValue(obj) {
|
|
152
|
-
|
|
149
|
+
const className = index_1.TchHelpers.getNameFromObject(obj);
|
|
153
150
|
// console.log('className',className)
|
|
154
|
-
|
|
151
|
+
let c = getClasses().find(c => c.className === className);
|
|
155
152
|
// console.log('c',c)
|
|
156
153
|
if (c && tnp_core_1._.isString(c.uniqueKey)) {
|
|
157
154
|
return obj[c.uniqueKey];
|
|
@@ -159,10 +156,16 @@ var CLASSNAME;
|
|
|
159
156
|
}
|
|
160
157
|
CLASSNAME_1.getObjectIndexValue = getObjectIndexValue;
|
|
161
158
|
function getClassBy(className) {
|
|
162
|
-
|
|
159
|
+
let res;
|
|
163
160
|
if (Array.isArray(className)) {
|
|
164
161
|
if (className.length !== 1) {
|
|
165
|
-
throw
|
|
162
|
+
throw `Mapping error... please use proper class names:
|
|
163
|
+
{
|
|
164
|
+
propertyObject: 'MyClassName',
|
|
165
|
+
propertyWithArray: ['MyClassName']
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
`;
|
|
166
169
|
}
|
|
167
170
|
className = className[0];
|
|
168
171
|
}
|
|
@@ -176,7 +179,7 @@ var CLASSNAME;
|
|
|
176
179
|
if (className === 'FormData') {
|
|
177
180
|
res = FormData;
|
|
178
181
|
}
|
|
179
|
-
|
|
182
|
+
let c = getClasses().find(c => c.className === className);
|
|
180
183
|
if (c) {
|
|
181
184
|
res = c.target;
|
|
182
185
|
}
|
package/lib/classname.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classname.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"classname.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/classname.ts"],"names":[],"mappings":"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"}
|
package/lib/describe-class.js
CHANGED
|
@@ -2,15 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.describeFromClassStringify = describeFromClassStringify;
|
|
4
4
|
exports.describeByDefaultModelsAndMapping = describeByDefaultModelsAndMapping;
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
const tnp_core_1 = require("tnp-core");
|
|
6
|
+
const symbols_1 = require("./symbols");
|
|
7
7
|
/**
|
|
8
8
|
* @DEPRECATED
|
|
9
9
|
* Describe fields assigned in class
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
function describeFromClassStringify(target, parent) {
|
|
13
|
-
if (parent === void 0) { parent = false; }
|
|
11
|
+
const FRegEx = new RegExp(/(?:this\.)(.+?(?= ))/g);
|
|
12
|
+
function describeFromClassStringify(target, parent = false) {
|
|
14
13
|
// @ts-ignore
|
|
15
14
|
var result = [];
|
|
16
15
|
if (parent) {
|
|
@@ -20,44 +19,44 @@ function describeFromClassStringify(target, parent) {
|
|
|
20
19
|
result = result.concat(describeFromClassStringify(proto.constructor, parent));
|
|
21
20
|
}
|
|
22
21
|
}
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
const classString = target.toString();
|
|
23
|
+
const matches = classString.match(FRegEx) || [];
|
|
25
24
|
// console.log({
|
|
26
25
|
// classString,
|
|
27
26
|
// });
|
|
28
27
|
result = result.concat(matches);
|
|
29
|
-
return result.map(
|
|
28
|
+
return result.map(prop => prop
|
|
30
29
|
.replace('this.', '')
|
|
31
30
|
.replace('.', '')
|
|
32
31
|
.replace(')', '')
|
|
33
|
-
.replace('(', '')
|
|
32
|
+
.replace('(', ''));
|
|
34
33
|
}
|
|
35
34
|
/**
|
|
36
35
|
* Describe fields assigne through @DefaultModelWithMapping decorator
|
|
37
36
|
* without functions
|
|
38
37
|
*/
|
|
39
38
|
function describeByDefaultModelsAndMapping(target) {
|
|
40
|
-
|
|
39
|
+
let res = {};
|
|
41
40
|
if (target) {
|
|
42
41
|
// @ts-ignore
|
|
43
42
|
if (target[symbols_1.SYMBOL.DEFAULT_MODEL]) {
|
|
44
43
|
// @ts-ignore
|
|
45
44
|
Object.keys(target[symbols_1.SYMBOL.DEFAULT_MODEL])
|
|
46
|
-
.filter(
|
|
45
|
+
.filter(key => {
|
|
47
46
|
// @ts-ignore
|
|
48
47
|
return !tnp_core_1._.isFunction(target[symbols_1.SYMBOL.DEFAULT_MODEL][key]);
|
|
49
48
|
})
|
|
50
|
-
.forEach(
|
|
49
|
+
.forEach(key => {
|
|
51
50
|
// @ts-ignore
|
|
52
51
|
return res[key] = null;
|
|
53
52
|
});
|
|
54
53
|
}
|
|
55
54
|
// @ts-ignore
|
|
56
|
-
|
|
55
|
+
let mapping = target[symbols_1.SYMBOL.MODELS_MAPPING];
|
|
57
56
|
if (tnp_core_1._.isArray(mapping)) {
|
|
58
|
-
mapping.forEach(
|
|
57
|
+
mapping.forEach(m => {
|
|
59
58
|
Object.keys(m)
|
|
60
|
-
.forEach(
|
|
59
|
+
.forEach(key => {
|
|
61
60
|
// @ts-ignore
|
|
62
61
|
res[key] = null;
|
|
63
62
|
});
|
|
@@ -65,13 +64,13 @@ function describeByDefaultModelsAndMapping(target) {
|
|
|
65
64
|
}
|
|
66
65
|
else if (mapping) {
|
|
67
66
|
Object.keys(mapping)
|
|
68
|
-
.forEach(
|
|
67
|
+
.forEach(key => {
|
|
69
68
|
// @ts-ignore
|
|
70
69
|
res[key] = null;
|
|
71
70
|
});
|
|
72
71
|
}
|
|
73
72
|
}
|
|
74
|
-
|
|
73
|
+
let propNames = Object.keys(res).filter(f => !!f);
|
|
75
74
|
propNames = (!propNames.includes('id') ? ['id'] : []).concat(propNames);
|
|
76
75
|
return propNames;
|
|
77
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"describe-class.js","sourceRoot":"","sources":[""],"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":";;AAUA,gEAwBC;AAMD,8EAuCC;AA/ED,uCAA6B;AAC7B,uCAAmC;AAInC;;;IAGI;AACJ,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,uBAAuB,CAAC,CAAC;AACnD,SAAgB,0BAA0B,CAAC,MAAgB,EAAE,MAAM,GAAG,KAAK;IACzE,aAAa;IACb,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,KAAK,EAAE,CAAC;YACV,aAAa;YACb,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,0BAA0B,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;IAC/C,gBAAgB;IAChB,iBAAiB;IAEjB,MAAM;IACN,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChC,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI;SAC3B,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;SAChB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;SAChB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAClB,CAAA;AAEH,CAAC;AAED;;;KAGK;AACL,SAAgB,iCAAiC,CAAC,MAAgB;IAChE,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,IAAI,MAAM,EAAE,CAAC;QACX,aAAa;QACb,IAAI,MAAM,CAAC,gBAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,aAAa;YACb,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAM,CAAC,aAAa,CAAC,CAAC;iBACtC,MAAM,CAAC,GAAG,CAAC,EAAE;gBACZ,aAAa;gBACb,OAAO,CAAC,YAAC,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC,CAAC;iBACD,OAAO,CAAC,GAAG,CAAC,EAAE;gBACb,aAAa;gBACb,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACzB,CAAC,CAAC,CAAC;QACP,CAAC;QACD,aAAa;QACb,IAAI,OAAO,GAAG,MAAM,CAAC,gBAAM,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,YAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAClB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;qBACX,OAAO,CAAC,GAAG,CAAC,EAAE;oBACb,aAAa;oBACb,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;gBAClB,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAA;QACJ,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YAEnB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;iBACjB,OAAO,CAAC,GAAG,CAAC,EAAE;gBACb,aAAa;gBACb,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YAClB,CAAC,CAAC,CAAC;QACP,CAAC;IACH,CAAC;IAED,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACxE,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/lib/errors-messages.js
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ERROR_MSG_CLASS_WITHOUT_DECORATOR = void 0;
|
|
4
|
-
exports.ERROR_MSG_CLASS_WITHOUT_DECORATOR =
|
|
4
|
+
exports.ERROR_MSG_CLASS_WITHOUT_DECORATOR = `[typescript-class-helpers][getClassName(...)](PRODUCTION MODE ERROR)
|
|
5
|
+
Please use decoartor @CLASSNAME for each entity or controller
|
|
6
|
+
This is preventing class name problem in minified code.
|
|
7
|
+
|
|
8
|
+
import { CLASS } from '../lib';
|
|
9
|
+
|
|
10
|
+
@CLASS.NAME('ExampleClass')
|
|
11
|
+
class ExampleClass {
|
|
12
|
+
...
|
|
13
|
+
}
|
|
14
|
+
`;
|
|
5
15
|
//# sourceMappingURL=errors-messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors-messages.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AACa,QAAA,iCAAiC,GAAG,
|
|
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":";;;AACa,QAAA,iCAAiC,GAAG;;;;;;;;;;CAUhD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":"AAAA,cAAc;AACd,8CAA8C;AAC9C,2BAA2B;AAC3B,uDAAuD;AACvD,2CAA2C"}
|
|
1
|
+
{"version":3,"file":"index._auto-generated_.js","sourceRoot":"","sources":["c:/Users/darek/projects/npm/taon-dev/typescript-class-helpers/src/lib/index._auto-generated_.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,8CAA8C;AAC9C,2BAA2B;AAC3B,uDAAuD;AACvD,2CAA2C"}
|