typescript-class-helpers 21.0.17 → 21.0.18

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.
Files changed (48) hide show
  1. package/browser/package.json +1 -1
  2. package/browser-prod/fesm2022/typescript-class-helpers-browser.mjs +31 -31
  3. package/browser-prod/fesm2022/typescript-class-helpers-browser.mjs.map +1 -1
  4. package/browser-prod/package.json +1 -1
  5. package/browser-prod/types/typescript-class-helpers-browser.d.ts +19 -19
  6. package/browser-prod.split-namespaces.json +26 -26
  7. package/lib/build-info._auto-generated_.d.ts +1 -1
  8. package/lib/build-info._auto-generated_.js +1 -1
  9. package/lib/package.json +1 -1
  10. package/lib-prod/build-info._auto-generated_.d.ts +1 -1
  11. package/lib-prod/build-info._auto-generated_.js +1 -1
  12. package/lib-prod/classname.d.ts +9 -9
  13. package/lib-prod/classname.js +19 -19
  14. package/lib-prod/classname.js.map +1 -1
  15. package/lib-prod/index.d.ts +6 -6
  16. package/lib-prod/index.js +15 -15
  17. package/lib-prod/index.js.map +1 -1
  18. package/lib-prod/models.d.ts +12 -12
  19. package/lib-prod/models.js +7 -7
  20. package/lib-prod/models.js.map +1 -1
  21. package/lib-prod/package.json +1 -1
  22. package/lib-prod/registerd-db.d.ts +2 -2
  23. package/lib-prod/registerd-db.js.map +1 -1
  24. package/lib-prod/set-class-name.d.ts +2 -2
  25. package/lib-prod/set-class-name.js +3 -3
  26. package/lib-prod/set-class-name.js.map +1 -1
  27. package/lib-prod/symbols.js +1 -1
  28. package/lib-prod/symbols.js.map +1 -1
  29. package/lib-prod.split-namespaces.json +26 -26
  30. package/package.json +1 -1
  31. package/websql/package.json +1 -1
  32. package/websql-prod/fesm2022/typescript-class-helpers-websql.mjs +31 -31
  33. package/websql-prod/fesm2022/typescript-class-helpers-websql.mjs.map +1 -1
  34. package/websql-prod/package.json +1 -1
  35. package/websql-prod/types/typescript-class-helpers-websql.d.ts +19 -19
  36. package/websql-prod.split-namespaces.json +26 -26
  37. package/lib/migrations/index.d.ts +0 -1
  38. package/lib/migrations/index.js +0 -19
  39. package/lib/migrations/index.js.map +0 -1
  40. package/lib/migrations/migrations_index._auto-generated_.d.ts +0 -0
  41. package/lib/migrations/migrations_index._auto-generated_.js +0 -4
  42. package/lib/migrations/migrations_index._auto-generated_.js.map +0 -1
  43. package/lib-prod/migrations/index.d.ts +0 -1
  44. package/lib-prod/migrations/index.js +0 -19
  45. package/lib-prod/migrations/index.js.map +0 -1
  46. package/lib-prod/migrations/migrations_index._auto-generated_.d.ts +0 -0
  47. package/lib-prod/migrations/migrations_index._auto-generated_.js +0 -4
  48. package/lib-prod/migrations/migrations_index._auto-generated_.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typescript-class-helpers/browser",
3
- "version": "21.0.17",
3
+ "version": "21.0.18",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.0.0",
6
6
  "@angular/core": "^21.0.0"
@@ -1,14 +1,14 @@
1
- import { CoreModels_ClassNameStaticProperty, _, Helpers } from 'tnp-core/browser-prod';
1
+ import { CoreModels__NS__ClassNameStaticProperty, _, Helpers } from 'tnp-core/browser-prod';
2
2
 
3
3
  /**
4
4
  * @deprecated
5
5
  */
6
- class Models_ParamConfig {
6
+ class Models__NS__ParamConfig {
7
7
  }
8
8
  /**
9
9
  * @deprecated
10
10
  */
11
- class Models_MethodConfig {
11
+ class Models__NS__MethodConfig {
12
12
  constructor() {
13
13
  /* */
14
14
  /* */
@@ -18,7 +18,7 @@ class Models_MethodConfig {
18
18
  /**
19
19
  * @deprecated
20
20
  */
21
- class Models_ClassConfig {
21
+ class Models__NS__ClassConfig {
22
22
  constructor() {
23
23
  // @ts-ignore
24
24
  this.singleton = void 0;
@@ -34,7 +34,7 @@ const SYMBOL = {
34
34
  DEFAULT_MODEL: Symbol(),
35
35
  STORAGE: 'classesstorage',
36
36
  CLASSES: 'classes',
37
- ClassNameStaticProperty: CoreModels_ClassNameStaticProperty,
37
+ ClassNameStaticProperty: CoreModels__NS__ClassNameStaticProperty,
38
38
  };
39
39
 
40
40
  function defaultValues() {
@@ -77,7 +77,7 @@ function setClassName(target, className, options) {
77
77
  uniqueKey = 'id';
78
78
  }
79
79
  if (target) {
80
- const config = _.first(CLASSNAME_getClassConfig(target));
80
+ const config = _.first(CLASSNAME__NS__getClassConfig(target));
81
81
  config.className = className;
82
82
  config.uniqueKey = uniqueKey;
83
83
  config.classNameInBrowser = classNameInBrowser;
@@ -103,8 +103,8 @@ function setClassName(target, className, options) {
103
103
  if (!_.isFunction(parent) || parent.name === 'Object' || parent.name === '') {
104
104
  return className;
105
105
  }
106
- const classNameNew = CLASSNAME_getClassName(parent);
107
- return CLASSNAME_getClassFamilyByClassName(classNameNew);
106
+ const classNameNew = CLASSNAME__NS__getClassName(parent);
107
+ return CLASSNAME__NS__getClassFamilyByClassName(classNameNew);
108
108
  }
109
109
  });
110
110
  }
@@ -173,7 +173,7 @@ function getClasses() {
173
173
  return s[SYMBOL.CLASSES];
174
174
  }
175
175
  //namespace CLASSNAME
176
- function CLASSNAME_getClassConfig(target, configs = [], callerTarget) {
176
+ function CLASSNAME__NS__getClassConfig(target, configs = [], callerTarget) {
177
177
  if (!_.isFunction(target)) {
178
178
  throw `[typescript-class-helper][getClassConfig] Cannot get class config from: ${target}`;
179
179
  }
@@ -185,7 +185,7 @@ function CLASSNAME_getClassConfig(target, configs = [], callerTarget) {
185
185
  registerd.configs[registerd.classes.findIndex(c => c === target)];
186
186
  }
187
187
  else {
188
- config = new Models_ClassConfig();
188
+ config = new Models__NS__ClassConfig();
189
189
  config.classReference = target;
190
190
  registerd.classes.push(target);
191
191
  }
@@ -199,7 +199,7 @@ function CLASSNAME_getClassConfig(target, configs = [], callerTarget) {
199
199
  }
200
200
  configs.push(config);
201
201
  return isValidParent
202
- ? CLASSNAME_getClassConfig(parentClass, configs, target)
202
+ ? CLASSNAME__NS__getClassConfig(parentClass, configs, target)
203
203
  : configs;
204
204
  }
205
205
  /**
@@ -207,13 +207,13 @@ function CLASSNAME_getClassConfig(target, configs = [], callerTarget) {
207
207
  * Decorator requred for production mode
208
208
  * @param name Name of class
209
209
  */
210
- function CLASSNAME_CLASSNAME(className, options) {
210
+ function CLASSNAME__NS__CLASSNAME(className, options) {
211
211
  return function (target) {
212
212
  // console.log(`CLASSNAME Inited ${className}`)
213
213
  return setClassName(target, className, options);
214
214
  };
215
215
  }
216
- function CLASSNAME_getClassName(target, production = false) {
216
+ function CLASSNAME__NS__getClassName(target, production = false) {
217
217
  if (_.isNil(target)) {
218
218
  // console.log(target);
219
219
  // Helpers.warn(`[typescript-class-helpers][getClassName] target is nil`)
@@ -238,7 +238,7 @@ function CLASSNAME_getClassName(target, production = false) {
238
238
  if (target[SYMBOL.ClassNameStaticProperty]) {
239
239
  return target[SYMBOL.ClassNameStaticProperty];
240
240
  }
241
- const configs = CLASSNAME_getClassConfig(target);
241
+ const configs = CLASSNAME__NS__getClassConfig(target);
242
242
  const config = _.first(configs);
243
243
  const classNameInBrowser = config?.classNameInBrowser;
244
244
  if (Helpers.isBrowser && _.isString(classNameInBrowser)) {
@@ -272,7 +272,7 @@ function CLASSNAME_getClassName(target, production = false) {
272
272
  return target.name;
273
273
  }
274
274
  // @ts-ignore
275
- function CLASSNAME_getObjectIndexPropertyValue(obj) {
275
+ function CLASSNAME__NS__getObjectIndexPropertyValue(obj) {
276
276
  const className = TchHelpers.getNameFromObject(obj);
277
277
  // console.log('className',className)
278
278
  let c = getClasses().find(c => c.className === className);
@@ -282,7 +282,7 @@ function CLASSNAME_getObjectIndexPropertyValue(obj) {
282
282
  }
283
283
  }
284
284
  // @ts-ignore
285
- function CLASSNAME_getClassFamilyByClassName(className) {
285
+ function CLASSNAME__NS__getClassFamilyByClassName(className) {
286
286
  let c = getClasses().find(c => c.className === className);
287
287
  // console.log('getClasses()', getClasses())
288
288
  if (c) {
@@ -290,7 +290,7 @@ function CLASSNAME_getClassFamilyByClassName(className) {
290
290
  }
291
291
  }
292
292
  // @ts-ignore
293
- function CLASSNAME_getObjectClassFamily(obj) {
293
+ function CLASSNAME__NS__getObjectClassFamily(obj) {
294
294
  const className = TchHelpers.getNameFromObject(obj);
295
295
  // console.log('className',className)
296
296
  let c = getClasses().find(c => c.className === className);
@@ -299,7 +299,7 @@ function CLASSNAME_getObjectClassFamily(obj) {
299
299
  return c.classFamily;
300
300
  }
301
301
  }
302
- function CLASSNAME_getObjectIndexValue(obj) {
302
+ function CLASSNAME__NS__getObjectIndexValue(obj) {
303
303
  const className = TchHelpers.getNameFromObject(obj);
304
304
  // console.log('className',className)
305
305
  let c = getClasses().find(c => c.className === className);
@@ -308,7 +308,7 @@ function CLASSNAME_getObjectIndexValue(obj) {
308
308
  return obj[c.uniqueKey];
309
309
  }
310
310
  }
311
- function CLASSNAME_getClassBy(className) {
311
+ function CLASSNAME__NS__getClassBy(className) {
312
312
  let res;
313
313
  if (Array.isArray(className)) {
314
314
  if (className.length !== 1) {
@@ -415,7 +415,7 @@ function describeByDefaultModelsAndMapping(target) {
415
415
 
416
416
  class TchHelpers {
417
417
  static getBy(className) {
418
- return CLASSNAME_getClassBy(className);
418
+ return CLASSNAME__NS__getClassBy(className);
419
419
  }
420
420
  static getFromObject(o) {
421
421
  if (_.isUndefined(o) || _.isNull(o)) {
@@ -428,14 +428,14 @@ class TchHelpers {
428
428
  return p && p.constructor;
429
429
  }
430
430
  static getName(target, production = false) {
431
- return CLASSNAME_getClassName(target, production);
431
+ return CLASSNAME__NS__getClassName(target, production);
432
432
  }
433
433
  static getNameFromObject(o) {
434
434
  const fnCLass = this.getFromObject(o);
435
435
  return this.getName(fnCLass);
436
436
  }
437
437
  static getConfigs(target) {
438
- return CLASSNAME_getClassConfig(target);
438
+ return CLASSNAME__NS__getClassConfig(target);
439
439
  }
440
440
  static describeProperites(target) {
441
441
  const d1 = describeFromClassStringify(target);
@@ -482,7 +482,7 @@ const getMethodsNames = (classOrClassInstance, allMethodsNames = []) => {
482
482
  return getMethodsNames(Object.getPrototypeOf(classFun), allMethodsNames);
483
483
  };
484
484
  const CLASS = {
485
- NAME: CLASSNAME_CLASSNAME,
485
+ NAME: CLASSNAME__NS__CLASSNAME,
486
486
  setName: setClassName,
487
487
  getBy: TchHelpers.getBy,
488
488
  /**
@@ -545,10 +545,10 @@ const CLASS = {
545
545
  OBJECT: (obj) => {
546
546
  return {
547
547
  get indexValue() {
548
- return CLASSNAME_getObjectIndexValue(obj);
548
+ return CLASSNAME__NS__getObjectIndexValue(obj);
549
549
  },
550
550
  get indexProperty() {
551
- return CLASSNAME_getObjectIndexPropertyValue(obj);
551
+ return CLASSNAME__NS__getObjectIndexPropertyValue(obj);
552
552
  },
553
553
  get isClassObject() {
554
554
  if (!_.isObject(obj) || _.isArray(obj) || _.isRegExp(obj) ||
@@ -569,12 +569,12 @@ const CLASS = {
569
569
  // console.log(`EQ v1: , v2: - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`, obj, anotherObj)
570
570
  return true;
571
571
  }
572
- const v1 = CLASSNAME_getObjectIndexValue(obj);
573
- const v2 = CLASSNAME_getObjectIndexValue(anotherObj);
574
- const f1 = CLASSNAME_getObjectClassFamily(obj);
575
- const f2 = CLASSNAME_getObjectClassFamily(anotherObj);
572
+ const v1 = CLASSNAME__NS__getObjectIndexValue(obj);
573
+ const v2 = CLASSNAME__NS__getObjectIndexValue(anotherObj);
574
+ const f1 = CLASSNAME__NS__getObjectClassFamily(obj);
575
+ const f2 = CLASSNAME__NS__getObjectClassFamily(anotherObj);
576
576
  const isFamilyDiff = (!_.isString(f1) || !_.isString(f2) || (f1 !== f2));
577
- // console.log(`DIFF FAMILY ${isFamilyDiff} v1: ${CLASSNAME_getObjectClassFamily(obj)}, v2: ${CLASSNAME_getObjectClassFamily(anotherObj)} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
577
+ // console.log(`DIFF FAMILY ${isFamilyDiff} v1: ${CLASSNAME__NS__getObjectClassFamily(obj)}, v2: ${CLASSNAME__NS__getObjectClassFamily(anotherObj)} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
578
578
  if (isFamilyDiff) {
579
579
  // console.log(`DIFF v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)
580
580
  return false;
@@ -605,5 +605,5 @@ const CLASS = {
605
605
  * Generated bundle index. Do not edit.
606
606
  */
607
607
 
608
- export { CLASS, Models_ClassConfig, Models_MethodConfig, Models_ParamConfig, SYMBOL, TchHelpers };
608
+ export { CLASS, Models__NS__ClassConfig, Models__NS__MethodConfig, Models__NS__ParamConfig, SYMBOL, TchHelpers };
609
609
  //# sourceMappingURL=typescript-class-helpers-browser.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"typescript-class-helpers-browser.mjs","sources":["../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/models.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/symbols.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/storage.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/set-class-name.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/registerd-db.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/errors-messages.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/classname.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/describe-class.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/index.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/typescript-class-helpers-browser.ts"],"sourcesContent":["import { CoreModels_BaseProjectType, CoreModels_BaseProjectTypeArr, CoreModels_CfontAlign, CoreModels_CfontStyle, CoreModels_ClassNameStaticProperty, CoreModels_ContentType, CoreModels_ContentTypeKeys, CoreModels_CoreLibCategory, CoreModels_CutableFileExt, CoreModels_DatabaseType, CoreModels_EnvironmentName, CoreModels_EnvironmentNameTaon, CoreModels_ExecuteOptions, CoreModels_FileEvent, CoreModels_FileExtension, CoreModels_FrameworkVersion, CoreModels_GlobalDependencies, CoreModels_HttpMethod, CoreModels_ImageFileExtension, CoreModels_ImageFileExtensionArr, CoreModels_InstalationType, CoreModels_InstalationTypeArr, CoreModels_LibType, CoreModels_localhostDomain, CoreModels_localhostIp127, CoreModels_ManifestIcon, CoreModels_MediaType, CoreModels_MediaTypeAllArr, CoreModels_MimeType, CoreModels_mimeTypes, CoreModels_MimeTypesObj, CoreModels_NewFactoryType, CoreModels_NpmInstallOptions, CoreModels_NpmSpecialVersions, CoreModels_OrignalClassKey, CoreModels_OutFolder, CoreModels_Package, CoreModels_ParamType, CoreModels_parentLocation, CoreModels_pathToChildren, CoreModels_Position, CoreModels_PreReleaseVersionTag, CoreModels_PROGRESS_DATA_TYPE, CoreModels_PUSHTYPE, CoreModels_PwaManifest, CoreModels_ReleaseVersionType, CoreModels_ReleaseVersionTypeEnum, CoreModels_RunOptions, CoreModels_Size, CoreModels_SPECIAL_APP_READY_MESSAGE, CoreModels_SPECIAL_WORKER_READY_MESSAGE, CoreModels_tagForTaskName, CoreModels_TaonHttpErrorCustomProp, CoreModels_TsUsage, CoreModels_UIFramework, CoreModels_UploadedBackendFile, CoreModels_VSCodeSettings } from 'tnp-core/browser-prod';\n\n//namespace Models\n\n\n /**\n * @deprecated\n */\n export type Models_CLASSNAMEOptions = {\n uniqueKey?: string,\n /**\n * autoinstance - create instance of singleton automaticly inside decorator\n * first-instance - use first instace of created class as decorator\n */\n singleton?: 'autoinstance' | 'first-instance' | 'last-instance' | boolean,\n classFamily?: string,\n classNameInBrowser?: string,\n }\n\n /**\n * @deprecated\n */\n export class Models_ParamConfig {\n paramName: string;\n paramType: CoreModels_ParamType;\n index: number;\n defaultType: any;\n expireInSeconds?: number;\n }\n\n /**\n * @deprecated\n */\n export class Models_MethodConfig {\n methodName: string;\n /**\n * path is global in express app\n */\n global?: boolean;\n /**\n * override default content type\n */\n contentType?: any;\n /**\n * override default axiso response type\n */\n responseType?: any;\n path: string;\n descriptor: PropertyDescriptor;\n type: CoreModels_HttpMethod;\n/* */\n/* */\n \n parameters: { [paramName: string]: Models_ParamConfig } = {};\n }\n\n /**\n * @deprecated\n */\n export interface Models_ClassMeta {\n uniqueKey?: string;\n className?: string;\n classFamily?: string;\n classNameInBrowser?: string;\n target?: Function;\n }\n\n /**\n * @deprecated\n */\n export class Models_ClassConfig {\n browserTransformFn?: (entity: any) => any;\n // @ts-ignore\n singleton: Object = void 0;\n injections: { getter: Function, propertyName: string; }[] = [];\n calculatedPath: string;\n path: string;\n vChildren?: Models_ClassConfig[] = [];\n vParent?: Models_ClassConfig;\n classReference: Function;\n className?: string;\n uniqueKey?: string;\n classNameInBrowser?: string;\n methods: { [methodName: string]: Models_MethodConfig } = {};\n }\n\n\n//end of namespace Models","import { CoreModels_BaseProjectType, CoreModels_BaseProjectTypeArr, CoreModels_CfontAlign, CoreModels_CfontStyle, CoreModels_ClassNameStaticProperty, CoreModels_ContentType, CoreModels_ContentTypeKeys, CoreModels_CoreLibCategory, CoreModels_CutableFileExt, CoreModels_DatabaseType, CoreModels_EnvironmentName, CoreModels_EnvironmentNameTaon, CoreModels_ExecuteOptions, CoreModels_FileEvent, CoreModels_FileExtension, CoreModels_FrameworkVersion, CoreModels_GlobalDependencies, CoreModels_HttpMethod, CoreModels_ImageFileExtension, CoreModels_ImageFileExtensionArr, CoreModels_InstalationType, CoreModels_InstalationTypeArr, CoreModels_LibType, CoreModels_localhostDomain, CoreModels_localhostIp127, CoreModels_ManifestIcon, CoreModels_MediaType, CoreModels_MediaTypeAllArr, CoreModels_MimeType, CoreModels_mimeTypes, CoreModels_MimeTypesObj, CoreModels_NewFactoryType, CoreModels_NpmInstallOptions, CoreModels_NpmSpecialVersions, CoreModels_OrignalClassKey, CoreModels_OutFolder, CoreModels_Package, CoreModels_ParamType, CoreModels_parentLocation, CoreModels_pathToChildren, CoreModels_Position, CoreModels_PreReleaseVersionTag, CoreModels_PROGRESS_DATA_TYPE, CoreModels_PUSHTYPE, CoreModels_PwaManifest, CoreModels_ReleaseVersionType, CoreModels_ReleaseVersionTypeEnum, CoreModels_RunOptions, CoreModels_Size, CoreModels_SPECIAL_APP_READY_MESSAGE, CoreModels_SPECIAL_WORKER_READY_MESSAGE, CoreModels_tagForTaskName, CoreModels_TaonHttpErrorCustomProp, CoreModels_TsUsage, CoreModels_UIFramework, CoreModels_UploadedBackendFile, CoreModels_VSCodeSettings } from \"tnp-core/browser-prod\"\n\nexport const SYMBOL = {\n MODELS_MAPPING: Symbol(),\n DEFAULT_MODEL: Symbol(),\n STORAGE: 'classesstorage',\n CLASSES: 'classes',\n ClassNameStaticProperty : CoreModels_ClassNameStaticProperty,\n}","import { Helpers } from 'tnp-core/browser-prod';\nimport { SYMBOL } from './symbols';\nimport { _ } from 'tnp-core/browser-prod';\n\nfunction defaultValues() {\n return _.cloneDeep({\n [SYMBOL.CLASSES]: []\n })\n}\n\nexport function getStorage<T = any>(property?: string): T {\n\n/* */\n/* */\n/* */\n/* */\n \n\n if (typeof property === 'string') {\n\n const storageInClassStaticProp = getStorage();\n return storageInClassStaticProp[property]\n }\n\n if (typeof defaultValues.prototype[SYMBOL.STORAGE] === 'undefined') {\n defaultValues.prototype[SYMBOL.STORAGE] = defaultValues()\n }\n return defaultValues.prototype[SYMBOL.STORAGE]\n}","import { _ } from 'tnp-core/browser-prod';\nimport { SYMBOL } from './symbols';\nimport { Models_ClassConfig, Models_ClassMeta, Models_CLASSNAMEOptions, Models_MethodConfig, Models_ParamConfig } from './models';\nimport { getStorage } from './storage';\nimport { CLASSNAME_CLASSNAME, CLASSNAME_getClassBy, CLASSNAME_getClassConfig, CLASSNAME_getClassFamilyByClassName, CLASSNAME_getClassName, CLASSNAME_getObjectClassFamily, CLASSNAME_getObjectIndexPropertyValue, CLASSNAME_getObjectIndexValue } from './classname';\nimport { CLASS } from './index';\n\n\nfunction getClasses(): Models_ClassMeta[] {\n const s = getStorage();\n return s[SYMBOL.CLASSES] as any;\n}\n\n// @ts-ignore\nexport function setClassName(target: Function, className: string, options?: Models_CLASSNAMEOptions) {\n\n let { classFamily, uniqueKey, classNameInBrowser, singleton } = options || {\n classFamily: void 0,\n uniqueKey: 'id',\n classNameInBrowser: void 0,\n singleton: void 0,\n autoinstance: false\n } as Models_CLASSNAMEOptions;\n\n if (!_.isUndefined(singleton) && _.isBoolean(singleton) && singleton) {\n singleton = 'first-instance'\n }\n\n if (!uniqueKey) {\n uniqueKey = 'id'\n }\n\n if (target) {\n const config = _.first(CLASSNAME_getClassConfig(target));\n config.className = className;\n config.uniqueKey = uniqueKey;\n config.classNameInBrowser = classNameInBrowser;\n // console.log(`Setting class Name to \"${target.name}\"`)\n }\n\n const existed = (getClasses() as { className: string; target: Function; }[])\n .find(f => f.className === className)\n\n if (existed) {\n existed.target = target;\n } else {\n const res = {\n className,\n classNameInBrowser,\n target,\n uniqueKey,\n classFamily\n }\n\n if (_.isUndefined(classFamily)) {\n Object.defineProperty(res, 'classFamily', {\n get: function () {\n const parent = Object.getPrototypeOf(target);\n if (!_.isFunction(parent) || parent.name === 'Object' || parent.name === '') {\n return className;\n }\n const classNameNew = CLASSNAME_getClassName(parent)\n return CLASSNAME_getClassFamilyByClassName(classNameNew)\n }\n })\n }\n getClasses().push(res)\n }\n const Original = target;\n\n\n if (singleton === 'first-instance' || singleton === 'last-instance') {\n const obj = {\n // @ts-ignore\n decoratedConstructor: function (...args) {\n // console.log(`DECORATED CONSTRUCTOR OF ${Original.name}`)\n const context = Original.apply(this, args);\n\n const existedSingleton = CLASS.getSingleton(Original)\n if (!existedSingleton || singleton === 'last-instance') {\n CLASS.setSingletonObj(Original, this)\n CLASS.setSingletonObj(obj.decoratedConstructor, this)\n // console.log(`Singleton created for \"${className}\", mode: ${singleton} `);\n }\n else {\n // console.log('ingleton exists')\n }\n\n return context;\n }\n };\n\n // copy prototype so intanceof operator still works\n obj.decoratedConstructor.prototype = Original.prototype;\n // @ts-ignore\n Object.keys(Original).forEach((name: string) => { obj.decoratedConstructor[name] = (<any>Original)[name]; });\n Object.defineProperty(obj.decoratedConstructor, 'name', {\n value: className,\n configurable: true,\n })\n // (obj.decoratedConstructor as any).name = className;\n // console.log('return new contruor', decoratedConstructor)\n return obj.decoratedConstructor;\n } else if (singleton === 'autoinstance') {\n\n // console.log(`AUTOINSTANCE FOR ${target.name}`)\n const auto = new (Original as any)();\n CLASS.setSingletonObj(Original, auto)\n // console.log(`Singleton created for \"${className}\", mode: ${singleton} `)\n\n }\n}","import { Models_ClassConfig, Models_ClassMeta, Models_CLASSNAMEOptions, Models_MethodConfig, Models_ParamConfig } from './models';\nexport const registerd = {\n configs: [] as Models_ClassConfig[],\n classes: [] as Function[],\n}","export 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`;","import { _ } from 'tnp-core/browser-prod';\nimport { Models_ClassConfig, Models_ClassMeta, Models_CLASSNAMEOptions, Models_MethodConfig, Models_ParamConfig } from './models';\nimport { SYMBOL } from './symbols';\nimport { TchHelpers } from './index';\nimport { Helpers } from 'tnp-core/browser-prod';\nimport { getStorage } from './storage';\nimport { setClassName } from './set-class-name';\nimport { registerd } from './registerd-db';\nimport { ERROR_MSG_CLASS_WITHOUT_DECORATOR } from './errors-messages';\n/* */\n/* */\n \n\nfunction getClasses(): Models_ClassMeta[] {\n const s = getStorage();\n return s[SYMBOL.CLASSES] as any;\n}\n//namespace CLASSNAME\n\n export function CLASSNAME_getClassConfig(\n target: Function,\n configs: Models_ClassConfig[] = [],\n callerTarget?: Function,\n ): Models_ClassConfig[] {\n if (!_.isFunction(target)) {\n throw `[typescript-class-helper][getClassConfig] Cannot get class config from: ${target}`;\n }\n\n let config: Models_ClassConfig;\n const parentClass = Object.getPrototypeOf(target);\n const isValidParent = _.isFunction(parentClass) && parentClass.name !== '';\n\n if (registerd.classes.includes(target)) {\n config =\n registerd.configs[registerd.classes.findIndex(c => c === target)];\n } else {\n config = new Models_ClassConfig();\n config.classReference = target;\n registerd.classes.push(target);\n }\n\n registerd.configs[registerd.classes.findIndex(c => c === target)] = config;\n if (callerTarget) {\n const callerTargetConfig =\n registerd.configs[registerd.classes.findIndex(c => c === callerTarget)];\n if (!config.vChildren.includes(callerTargetConfig)) {\n config.vChildren.push(callerTargetConfig);\n }\n callerTargetConfig.vParent = config;\n }\n\n configs.push(config);\n\n return isValidParent\n ? CLASSNAME_getClassConfig(parentClass, configs, target)\n : configs;\n }\n\n /**\n * PLEASE PROVIDE NAME AS TYPED STRING, NOT VARIABLE\n * Decorator requred for production mode\n * @param name Name of class\n */\n export function CLASSNAME_CLASSNAME(\n className: string,\n options?: Models_CLASSNAMEOptions,\n ) {\n return function (target: Function) {\n // console.log(`CLASSNAME Inited ${className}`)\n return setClassName(target, className, options);\n } as any;\n }\n\n export function CLASSNAME_getClassName(target: Function, production = false) {\n if (_.isNil(target)) {\n // console.log(target);\n // Helpers.warn(`[typescript-class-helpers][getClassName] target is nil`)\n return void 0;\n }\n if (_.isString(target)) {\n // console.log(target);\n Helpers.log(\n `[typescript-class-helpers][getClassName] target is string: '${target}', produciton: ${production}`,\n );\n return target;\n }\n\n if (target === Date) {\n return 'Date';\n }\n\n if ((target as any) === FormData) {\n return 'FormData';\n }\n\n if (!_.isFunction(target)) {\n // console.log(target);\n Helpers.log(\n `[typescript-class-helpers][getClassName] target is not a class`,\n );\n return void 0;\n }\n\n if (target[SYMBOL.ClassNameStaticProperty]) {\n return target[SYMBOL.ClassNameStaticProperty];\n }\n\n const configs = CLASSNAME_getClassConfig(target);\n const config = _.first(configs);\n\n const classNameInBrowser = config?.classNameInBrowser;\n\n if (Helpers.isBrowser && _.isString(classNameInBrowser)) {\n return classNameInBrowser;\n }\n\n const className = config?.className;\n\n if (typeof className === 'string') {\n return className;\n }\n\n if (production) {\n console.log('class without @CLASS.NAME deocrator', target as any);\n throw new Error(ERROR_MSG_CLASS_WITHOUT_DECORATOR);\n } else {\n // Helpers.log('check for ' + target.name)\n // setTimeout(() => {\n // // Helpers.log('check for ' + target.name + ' === ' + config.className)/\n // // TODO this may work, but not yet in singleton/morphi\n // if (!config.className) {\n // if (target?.name && target.name !== 'Object') {\n // ConfigHelpers.log(`[typescript-class-helpers] Please use @CLASS.NAME`\n // + `('${(target?.name && !!target.name) ? target.name : '...'}') decorator for class ${target?.name}`)\n // }\n // }\n // })\n }\n\n // special thing when cloning classes\n if (target.name?.startsWith('class_')) {\n return '';\n }\n\n return target.name;\n }\n\n // @ts-ignore\n export function CLASSNAME_getObjectIndexPropertyValue(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n // console.log('className',className)\n let c = getClasses().find(c => c.className === className);\n // console.log('c',c)\n if (c) {\n return c.uniqueKey;\n }\n }\n\n // @ts-ignore\n export function CLASSNAME_getClassFamilyByClassName(className: string) {\n let c = getClasses().find(c => c.className === className);\n // console.log('getClasses()', getClasses())\n if (c) {\n return c.classFamily;\n }\n }\n\n // @ts-ignore\n export function CLASSNAME_getObjectClassFamily(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n // console.log('className',className)\n let c = getClasses().find(c => c.className === className);\n // console.log('c',c)\n if (c) {\n return c.classFamily;\n }\n }\n\n export function CLASSNAME_getObjectIndexValue(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n // console.log('className',className)\n let c = getClasses().find(c => c.className === className);\n // console.log('c',c)\n if (c && _.isString(c.uniqueKey)) {\n return obj[c.uniqueKey];\n }\n }\n\n export function CLASSNAME_getClassBy(className: string | Function): Function {\n let res;\n if (Array.isArray(className)) {\n if (className.length !== 1) {\n throw `Mapping error... please use proper class names:\n {\n propertyObject: 'MyClassName',\n propertyWithArray: ['MyClassName']\n }\n\n `;\n }\n className = className[0];\n }\n if (typeof className === 'function') {\n // TODO QUICK_FIX\n res = className;\n }\n if (className === 'Date') {\n res = Date;\n }\n\n if (className === 'FormData') {\n res = FormData;\n }\n\n let c = getClasses().find(c => c.className === className);\n\n if (c) {\n res = c.target;\n }\n // console.log(`getClassBy \"${className} return \\n\\n ${res} \\n\\n`)\n // @ts-ignore\n return res;\n }\n\n//end of namespace CLASSNAME","import { _ } from 'tnp-core/browser-prod';\nimport { SYMBOL } from './symbols';\n\n\n\n/**\n * @DEPRECATED\n * Describe fields assigned in class\n */\nconst FRegEx = new RegExp(/(?:this\\.)(.+?(?= ))/g);\nexport function describeFromClassStringify(target: Function, parent = false): string[] {\n // @ts-ignore\n var result = [];\n if (parent) {\n var proto = Object.getPrototypeOf(target.prototype);\n if (proto) {\n // @ts-ignore\n result = result.concat(describeFromClassStringify(proto.constructor, parent));\n }\n }\n const classString = target.toString();\n const matches = classString.match(FRegEx) || []\n // console.log({\n // classString,\n\n // });\n result = result.concat(matches);\n return result.map(prop => prop\n .replace('this.', '')\n .replace('.', '')\n .replace(')', '')\n .replace('(', '')\n )\n\n}\n\n/**\n * Describe fields assigne through @DefaultModelWithMapping decorator\n * without functions\n */\nexport function describeByDefaultModelsAndMapping(target: Function): string[] {\n let res = {}\n if (target) {\n // @ts-ignore\n if (target[SYMBOL.DEFAULT_MODEL]) {\n // @ts-ignore\n Object.keys(target[SYMBOL.DEFAULT_MODEL])\n .filter(key => {\n // @ts-ignore\n return !_.isFunction(target[SYMBOL.DEFAULT_MODEL][key]);\n })\n .forEach(key => {\n // @ts-ignore\n return res[key] = null;\n });\n }\n // @ts-ignore\n let mapping = target[SYMBOL.MODELS_MAPPING];\n if (_.isArray(mapping)) {\n mapping.forEach(m => {\n Object.keys(m)\n .forEach(key => {\n // @ts-ignore\n res[key] = null;\n });\n })\n } else if (mapping) {\n\n Object.keys(mapping)\n .forEach(key => {\n // @ts-ignore\n res[key] = null;\n });\n }\n }\n\n let propNames = Object.keys(res).filter(f => !!f);\n propNames = (!propNames.includes('id') ? ['id'] : []).concat(propNames);\n return propNames;\n}","import { _ } from 'tnp-core/browser-prod';\nimport { CLASSNAME_CLASSNAME, CLASSNAME_getClassBy, CLASSNAME_getClassConfig, CLASSNAME_getClassFamilyByClassName, CLASSNAME_getClassName, CLASSNAME_getObjectClassFamily, CLASSNAME_getObjectIndexPropertyValue, CLASSNAME_getObjectIndexValue } from './classname';\nimport { describeFromClassStringify, describeByDefaultModelsAndMapping } from './describe-class';\nimport { Models_ClassConfig, Models_ClassMeta, Models_CLASSNAMEOptions, Models_MethodConfig, Models_ParamConfig } from './models';\nimport { setClassName } from './set-class-name';\n\nexport { Models_ClassConfig, Models_ClassMeta, Models_CLASSNAMEOptions, Models_MethodConfig, Models_ParamConfig } from './models';\nexport { SYMBOL } from './symbols';\n\nexport class TchHelpers {\n\n static getBy(className: string | Function) {\n return CLASSNAME_getClassBy(className);\n }\n\n static getFromObject(o: Object) {\n if (_.isUndefined(o) || _.isNull(o)) {\n return;\n }\n if (o.constructor) {\n return o.constructor;\n }\n const p = Object.getPrototypeOf(o);\n return p && p.constructor;\n }\n\n static getName(target: Function, production = false) {\n return CLASSNAME_getClassName(target, production) as string;\n }\n\n static getNameFromObject(o: Object) {\n const fnCLass = this.getFromObject(o);\n return this.getName(fnCLass);\n }\n\n static getConfigs(target: Function): Models_ClassConfig[] {\n return CLASSNAME_getClassConfig(target)\n }\n\n static describeProperites(target: Function) {\n const d1 = describeFromClassStringify(target);\n const d2 = describeByDefaultModelsAndMapping(target);\n let uniq = {};\n // @ts-ignore\n d1.concat(d2).forEach(p => uniq[p] = p);\n return Object.keys(uniq)\n .filter(d => !!d)\n .filter(d => typeof target.prototype[d] !== 'function')\n }\n\n}\n\nconst notAllowedAsMethodName = [\n 'length', 'name',\n 'arguments', 'caller',\n 'constructor', 'apply',\n 'bind', 'call',\n 'toString',\n '__defineGetter__',\n '__defineSetter__', 'hasOwnProperty',\n '__lookupGetter__', '__lookupSetter__',\n 'isPrototypeOf', 'propertyIsEnumerable',\n 'valueOf', '__proto__', 'toLocaleString',\n];\n\nconst getMethodsNames = (classOrClassInstance: any, allMethodsNames = []): string[] => {\n if (!classOrClassInstance) {\n return allMethodsNames;\n }\n\n const isClassFunction = _.isFunction(classOrClassInstance);\n const classFun = (isClassFunction ? classOrClassInstance : Object.getPrototypeOf(classOrClassInstance));\n const objectToCheck = isClassFunction ? (classOrClassInstance as Function)?.prototype : classOrClassInstance;\n const prototypeObj = Object.getPrototypeOf(objectToCheck || {});\n\n const properties = _.uniq([\n ...Object.getOwnPropertyNames(objectToCheck || {}),\n ...Object.getOwnPropertyNames(prototypeObj || {}),\n ...Object.keys(objectToCheck || {}),\n ...Object.keys(prototypeObj || {}),\n ])\n .filter(f => !!f && !notAllowedAsMethodName.includes(f));\n\n properties.filter((methodName) => typeof objectToCheck[methodName] === 'function').forEach(p => allMethodsNames.push(p));\n\n if (!classFun || !classFun.constructor || classFun?.constructor?.name === 'Object') {\n return allMethodsNames;\n }\n return getMethodsNames(Object.getPrototypeOf(classFun), allMethodsNames);\n};\n\nexport const CLASS = {\n NAME: CLASSNAME_CLASSNAME,\n setName: setClassName,\n getBy: TchHelpers.getBy,\n /**\n * @deprecated\n */\n getSingleton<T = any>(target: Function) {\n if (typeof target !== 'function') {\n console.error(`[typescript-class-helpers][setSingletonObj] Type of target is not a function`)\n return\n }\n const config = TchHelpers.getConfigs(target)[0]\n // console.log(`getSingleton for ${target.name}: `, config.singleton)\n\n return config.singleton as T;\n },\n /**\n * @deprecated\n */\n setSingletonObj(target: Function, singletonObject: any) {\n // console.log('SET SINGLETON', singletonObject)\n if (typeof target !== 'function') {\n console.error(`[typescript-class-helpers][setSingletonObj] Type of target is not a function`)\n return\n }\n\n if (Array.isArray(singletonObject)) {\n console.error(`[typescript-class-helpers][setSingletonObj] Singleton instance cant be an array`)\n return\n }\n\n if (typeof singletonObject !== 'object') {\n console.error(`[typescript-class-helpers][setSingletonObj] Singleton instance cant must be a object`)\n return\n }\n\n const className = CLASS.getName(target);\n\n\n // console.log(`SINGLETON SET for TARGET ${className}`)\n const config = TchHelpers.getConfigs(target)[0]\n\n if (config.singleton) {\n console.warn(`[typescript-class-helpers] You are trying to set singleton of \"${className}\" second time with different object.`)\n }\n\n config.singleton = singletonObject;\n },\n /**\n * @deprecated\n */\n getConfigs: TchHelpers.getConfigs,\n /**\n * @deprecated\n */\n getConfig: (target: Function) => {\n return _.first(TchHelpers.getConfigs(target));\n },\n\n\n getMethodsNames(classOrClassInstance: any): string[] {\n return getMethodsNames(classOrClassInstance);\n },\n getFromObject: TchHelpers.getFromObject,\n getName: TchHelpers.getName,\n getNameFromObject: TchHelpers.getNameFromObject,\n describeProperites: TchHelpers.describeProperites,\n /**\n * @deprecated\n */\n OBJECT: (obj: any) => {\n return {\n get indexValue() {\n return CLASSNAME_getObjectIndexValue(obj);\n },\n get indexProperty() {\n return CLASSNAME_getObjectIndexPropertyValue(obj);\n },\n get isClassObject() {\n\n if (!_.isObject(obj) || _.isArray(obj) || _.isRegExp(obj) ||\n _.isBuffer(obj) || _.isArrayBuffer(obj)) {\n return false;\n }\n if (_.isDate(obj)) {\n return true;\n }\n const className = CLASS.getNameFromObject(obj)\n return _.isString(className) && className !== 'Object';\n },\n isEqual: (anotherObj: any, compareDeep = false) => {\n if (!CLASS.OBJECT(obj).isClassObject || !CLASS.OBJECT(anotherObj).isClassObject) {\n return false;\n }\n if (obj === anotherObj) {\n // console.log(`EQ v1: , v2: - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`, obj, anotherObj)\n return true;\n }\n const v1 = CLASSNAME_getObjectIndexValue(obj);\n const v2 = CLASSNAME_getObjectIndexValue(anotherObj);\n const f1 = CLASSNAME_getObjectClassFamily(obj)\n const f2 = CLASSNAME_getObjectClassFamily(anotherObj)\n const isFamilyDiff = (!_.isString(f1) || !_.isString(f2) || (f1 !== f2));\n // console.log(`DIFF FAMILY ${isFamilyDiff} v1: ${CLASSNAME_getObjectClassFamily(obj)}, v2: ${CLASSNAME_getObjectClassFamily(anotherObj)} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n if (isFamilyDiff) {\n // console.log(`DIFF v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n return false;\n }\n if (!CLASS.OBJECT(obj).isClassObject || !CLASS.OBJECT(anotherObj).isClassObject) {\n // console.log(`NOT CLASS v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n return false\n }\n\n // console.log(`v1: ${v1} ,class ${CLASS.getNameFromObject(obj)} ,prop: ${CLASS.OBJECT(obj).indexProperty}`)\n // console.log(`v2: ${v2} ,class ${CLASS.getNameFromObject(anotherObj)} ,prop: ${CLASS.OBJECT(anotherObj).indexProperty}`)\n // console.log(`v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n // console.log('')\n if ((_.isNumber(v1) && _.isNumber(v2)) || (_.isString(v1) && _.isString(v2))) {\n\n const res = (v1 === v2);\n // @ts-ignore\n return res;\n }\n if (compareDeep) {\n return _.isEqual(v1, v2)\n }\n return false;\n }\n }\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["getClasses"],"mappings":"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"}
1
+ {"version":3,"file":"typescript-class-helpers-browser.mjs","sources":["../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/models.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/symbols.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/storage.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/set-class-name.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/registerd-db.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/errors-messages.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/classname.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/describe-class.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/lib/index.ts","../../../tmp-libs-for-dist-prod/typescript-class-helpers/projects/typescript-class-helpers/src/typescript-class-helpers-browser.ts"],"sourcesContent":["import { CoreModels__NS__BaseProjectType, CoreModels__NS__BaseProjectTypeArr, CoreModels__NS__CfontAlign, CoreModels__NS__CfontStyle, CoreModels__NS__ClassNameStaticProperty, CoreModels__NS__ContentType, CoreModels__NS__ContentTypeKeys, CoreModels__NS__CoreLibCategory, CoreModels__NS__CutableFileExt, CoreModels__NS__DatabaseType, CoreModels__NS__EnvironmentName, CoreModels__NS__EnvironmentNameTaon, CoreModels__NS__ExecuteOptions, CoreModels__NS__FileEvent, CoreModels__NS__FileExtension, CoreModels__NS__FrameworkVersion, CoreModels__NS__GlobalDependencies, CoreModels__NS__HttpMethod, CoreModels__NS__ImageFileExtension, CoreModels__NS__ImageFileExtensionArr, CoreModels__NS__InstalationType, CoreModels__NS__InstalationTypeArr, CoreModels__NS__LibType, CoreModels__NS__localhostDomain, CoreModels__NS__localhostIp127, CoreModels__NS__ManifestIcon, CoreModels__NS__MediaType, CoreModels__NS__MediaTypeAllArr, CoreModels__NS__MimeType, CoreModels__NS__mimeTypes, CoreModels__NS__MimeTypesObj, CoreModels__NS__NewFactoryType, CoreModels__NS__NpmInstallOptions, CoreModels__NS__NpmSpecialVersions, CoreModels__NS__OrignalClassKey, CoreModels__NS__OutFolder, CoreModels__NS__Package, CoreModels__NS__ParamType, CoreModels__NS__parentLocation, CoreModels__NS__pathToChildren, CoreModels__NS__Position, CoreModels__NS__PreReleaseVersionTag, CoreModels__NS__PROGRESS_DATA_TYPE, CoreModels__NS__PUSHTYPE, CoreModels__NS__PwaManifest, CoreModels__NS__ReleaseVersionType, CoreModels__NS__ReleaseVersionTypeEnum, CoreModels__NS__RunOptions, CoreModels__NS__Size, CoreModels__NS__SPECIAL_APP_READY_MESSAGE, CoreModels__NS__SPECIAL_WORKER_READY_MESSAGE, CoreModels__NS__tagForTaskName, CoreModels__NS__TaonHttpErrorCustomProp, CoreModels__NS__TsUsage, CoreModels__NS__UIFramework, CoreModels__NS__UploadedBackendFile, CoreModels__NS__VSCodeSettings } from 'tnp-core/browser-prod';\n\n//namespace Models\n\n\n /**\n * @deprecated\n */\n export type Models__NS__CLASSNAMEOptions = {\n uniqueKey?: string,\n /**\n * autoinstance - create instance of singleton automaticly inside decorator\n * first-instance - use first instace of created class as decorator\n */\n singleton?: 'autoinstance' | 'first-instance' | 'last-instance' | boolean,\n classFamily?: string,\n classNameInBrowser?: string,\n }\n\n /**\n * @deprecated\n */\n export class Models__NS__ParamConfig {\n paramName: string;\n paramType: CoreModels__NS__ParamType;\n index: number;\n defaultType: any;\n expireInSeconds?: number;\n }\n\n /**\n * @deprecated\n */\n export class Models__NS__MethodConfig {\n methodName: string;\n /**\n * path is global in express app\n */\n global?: boolean;\n /**\n * override default content type\n */\n contentType?: any;\n /**\n * override default axiso response type\n */\n responseType?: any;\n path: string;\n descriptor: PropertyDescriptor;\n type: CoreModels__NS__HttpMethod;\n/* */\n/* */\n \n parameters: { [paramName: string]: Models__NS__ParamConfig } = {};\n }\n\n /**\n * @deprecated\n */\n export interface Models__NS__ClassMeta {\n uniqueKey?: string;\n className?: string;\n classFamily?: string;\n classNameInBrowser?: string;\n target?: Function;\n }\n\n /**\n * @deprecated\n */\n export class Models__NS__ClassConfig {\n browserTransformFn?: (entity: any) => any;\n // @ts-ignore\n singleton: Object = void 0;\n injections: { getter: Function, propertyName: string; }[] = [];\n calculatedPath: string;\n path: string;\n vChildren?: Models__NS__ClassConfig[] = [];\n vParent?: Models__NS__ClassConfig;\n classReference: Function;\n className?: string;\n uniqueKey?: string;\n classNameInBrowser?: string;\n methods: { [methodName: string]: Models__NS__MethodConfig } = {};\n }\n\n\n//end of namespace Models","import { CoreModels__NS__BaseProjectType, CoreModels__NS__BaseProjectTypeArr, CoreModels__NS__CfontAlign, CoreModels__NS__CfontStyle, CoreModels__NS__ClassNameStaticProperty, CoreModels__NS__ContentType, CoreModels__NS__ContentTypeKeys, CoreModels__NS__CoreLibCategory, CoreModels__NS__CutableFileExt, CoreModels__NS__DatabaseType, CoreModels__NS__EnvironmentName, CoreModels__NS__EnvironmentNameTaon, CoreModels__NS__ExecuteOptions, CoreModels__NS__FileEvent, CoreModels__NS__FileExtension, CoreModels__NS__FrameworkVersion, CoreModels__NS__GlobalDependencies, CoreModels__NS__HttpMethod, CoreModels__NS__ImageFileExtension, CoreModels__NS__ImageFileExtensionArr, CoreModels__NS__InstalationType, CoreModels__NS__InstalationTypeArr, CoreModels__NS__LibType, CoreModels__NS__localhostDomain, CoreModels__NS__localhostIp127, CoreModels__NS__ManifestIcon, CoreModels__NS__MediaType, CoreModels__NS__MediaTypeAllArr, CoreModels__NS__MimeType, CoreModels__NS__mimeTypes, CoreModels__NS__MimeTypesObj, CoreModels__NS__NewFactoryType, CoreModels__NS__NpmInstallOptions, CoreModels__NS__NpmSpecialVersions, CoreModels__NS__OrignalClassKey, CoreModels__NS__OutFolder, CoreModels__NS__Package, CoreModels__NS__ParamType, CoreModels__NS__parentLocation, CoreModels__NS__pathToChildren, CoreModels__NS__Position, CoreModels__NS__PreReleaseVersionTag, CoreModels__NS__PROGRESS_DATA_TYPE, CoreModels__NS__PUSHTYPE, CoreModels__NS__PwaManifest, CoreModels__NS__ReleaseVersionType, CoreModels__NS__ReleaseVersionTypeEnum, CoreModels__NS__RunOptions, CoreModels__NS__Size, CoreModels__NS__SPECIAL_APP_READY_MESSAGE, CoreModels__NS__SPECIAL_WORKER_READY_MESSAGE, CoreModels__NS__tagForTaskName, CoreModels__NS__TaonHttpErrorCustomProp, CoreModels__NS__TsUsage, CoreModels__NS__UIFramework, CoreModels__NS__UploadedBackendFile, CoreModels__NS__VSCodeSettings } from \"tnp-core/browser-prod\"\n\nexport const SYMBOL = {\n MODELS_MAPPING: Symbol(),\n DEFAULT_MODEL: Symbol(),\n STORAGE: 'classesstorage',\n CLASSES: 'classes',\n ClassNameStaticProperty : CoreModels__NS__ClassNameStaticProperty,\n}","import { Helpers } from 'tnp-core/browser-prod';\nimport { SYMBOL } from './symbols';\nimport { _ } from 'tnp-core/browser-prod';\n\nfunction defaultValues() {\n return _.cloneDeep({\n [SYMBOL.CLASSES]: []\n })\n}\n\nexport function getStorage<T = any>(property?: string): T {\n\n/* */\n/* */\n/* */\n/* */\n \n\n if (typeof property === 'string') {\n\n const storageInClassStaticProp = getStorage();\n return storageInClassStaticProp[property]\n }\n\n if (typeof defaultValues.prototype[SYMBOL.STORAGE] === 'undefined') {\n defaultValues.prototype[SYMBOL.STORAGE] = defaultValues()\n }\n return defaultValues.prototype[SYMBOL.STORAGE]\n}","import { _ } from 'tnp-core/browser-prod';\nimport { SYMBOL } from './symbols';\nimport { Models__NS__ClassConfig, Models__NS__ClassMeta, Models__NS__CLASSNAMEOptions, Models__NS__MethodConfig, Models__NS__ParamConfig } from './models';\nimport { getStorage } from './storage';\nimport { CLASSNAME__NS__CLASSNAME, CLASSNAME__NS__getClassBy, CLASSNAME__NS__getClassConfig, CLASSNAME__NS__getClassFamilyByClassName, CLASSNAME__NS__getClassName, CLASSNAME__NS__getObjectClassFamily, CLASSNAME__NS__getObjectIndexPropertyValue, CLASSNAME__NS__getObjectIndexValue } from './classname';\nimport { CLASS } from './index';\n\n\nfunction getClasses(): Models__NS__ClassMeta[] {\n const s = getStorage();\n return s[SYMBOL.CLASSES] as any;\n}\n\n// @ts-ignore\nexport function setClassName(target: Function, className: string, options?: Models__NS__CLASSNAMEOptions) {\n\n let { classFamily, uniqueKey, classNameInBrowser, singleton } = options || {\n classFamily: void 0,\n uniqueKey: 'id',\n classNameInBrowser: void 0,\n singleton: void 0,\n autoinstance: false\n } as Models__NS__CLASSNAMEOptions;\n\n if (!_.isUndefined(singleton) && _.isBoolean(singleton) && singleton) {\n singleton = 'first-instance'\n }\n\n if (!uniqueKey) {\n uniqueKey = 'id'\n }\n\n if (target) {\n const config = _.first(CLASSNAME__NS__getClassConfig(target));\n config.className = className;\n config.uniqueKey = uniqueKey;\n config.classNameInBrowser = classNameInBrowser;\n // console.log(`Setting class Name to \"${target.name}\"`)\n }\n\n const existed = (getClasses() as { className: string; target: Function; }[])\n .find(f => f.className === className)\n\n if (existed) {\n existed.target = target;\n } else {\n const res = {\n className,\n classNameInBrowser,\n target,\n uniqueKey,\n classFamily\n }\n\n if (_.isUndefined(classFamily)) {\n Object.defineProperty(res, 'classFamily', {\n get: function () {\n const parent = Object.getPrototypeOf(target);\n if (!_.isFunction(parent) || parent.name === 'Object' || parent.name === '') {\n return className;\n }\n const classNameNew = CLASSNAME__NS__getClassName(parent)\n return CLASSNAME__NS__getClassFamilyByClassName(classNameNew)\n }\n })\n }\n getClasses().push(res)\n }\n const Original = target;\n\n\n if (singleton === 'first-instance' || singleton === 'last-instance') {\n const obj = {\n // @ts-ignore\n decoratedConstructor: function (...args) {\n // console.log(`DECORATED CONSTRUCTOR OF ${Original.name}`)\n const context = Original.apply(this, args);\n\n const existedSingleton = CLASS.getSingleton(Original)\n if (!existedSingleton || singleton === 'last-instance') {\n CLASS.setSingletonObj(Original, this)\n CLASS.setSingletonObj(obj.decoratedConstructor, this)\n // console.log(`Singleton created for \"${className}\", mode: ${singleton} `);\n }\n else {\n // console.log('ingleton exists')\n }\n\n return context;\n }\n };\n\n // copy prototype so intanceof operator still works\n obj.decoratedConstructor.prototype = Original.prototype;\n // @ts-ignore\n Object.keys(Original).forEach((name: string) => { obj.decoratedConstructor[name] = (<any>Original)[name]; });\n Object.defineProperty(obj.decoratedConstructor, 'name', {\n value: className,\n configurable: true,\n })\n // (obj.decoratedConstructor as any).name = className;\n // console.log('return new contruor', decoratedConstructor)\n return obj.decoratedConstructor;\n } else if (singleton === 'autoinstance') {\n\n // console.log(`AUTOINSTANCE FOR ${target.name}`)\n const auto = new (Original as any)();\n CLASS.setSingletonObj(Original, auto)\n // console.log(`Singleton created for \"${className}\", mode: ${singleton} `)\n\n }\n}","import { Models__NS__ClassConfig, Models__NS__ClassMeta, Models__NS__CLASSNAMEOptions, Models__NS__MethodConfig, Models__NS__ParamConfig } from './models';\nexport const registerd = {\n configs: [] as Models__NS__ClassConfig[],\n classes: [] as Function[],\n}","export 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`;","import { _ } from 'tnp-core/browser-prod';\nimport { Models__NS__ClassConfig, Models__NS__ClassMeta, Models__NS__CLASSNAMEOptions, Models__NS__MethodConfig, Models__NS__ParamConfig } from './models';\nimport { SYMBOL } from './symbols';\nimport { TchHelpers } from './index';\nimport { Helpers } from 'tnp-core/browser-prod';\nimport { getStorage } from './storage';\nimport { setClassName } from './set-class-name';\nimport { registerd } from './registerd-db';\nimport { ERROR_MSG_CLASS_WITHOUT_DECORATOR } from './errors-messages';\n/* */\n/* */\n \n\nfunction getClasses(): Models__NS__ClassMeta[] {\n const s = getStorage();\n return s[SYMBOL.CLASSES] as any;\n}\n//namespace CLASSNAME\n\n export function CLASSNAME__NS__getClassConfig(\n target: Function,\n configs: Models__NS__ClassConfig[] = [],\n callerTarget?: Function,\n ): Models__NS__ClassConfig[] {\n if (!_.isFunction(target)) {\n throw `[typescript-class-helper][getClassConfig] Cannot get class config from: ${target}`;\n }\n\n let config: Models__NS__ClassConfig;\n const parentClass = Object.getPrototypeOf(target);\n const isValidParent = _.isFunction(parentClass) && parentClass.name !== '';\n\n if (registerd.classes.includes(target)) {\n config =\n registerd.configs[registerd.classes.findIndex(c => c === target)];\n } else {\n config = new Models__NS__ClassConfig();\n config.classReference = target;\n registerd.classes.push(target);\n }\n\n registerd.configs[registerd.classes.findIndex(c => c === target)] = config;\n if (callerTarget) {\n const callerTargetConfig =\n registerd.configs[registerd.classes.findIndex(c => c === callerTarget)];\n if (!config.vChildren.includes(callerTargetConfig)) {\n config.vChildren.push(callerTargetConfig);\n }\n callerTargetConfig.vParent = config;\n }\n\n configs.push(config);\n\n return isValidParent\n ? CLASSNAME__NS__getClassConfig(parentClass, configs, target)\n : configs;\n }\n\n /**\n * PLEASE PROVIDE NAME AS TYPED STRING, NOT VARIABLE\n * Decorator requred for production mode\n * @param name Name of class\n */\n export function CLASSNAME__NS__CLASSNAME(\n className: string,\n options?: Models__NS__CLASSNAMEOptions,\n ) {\n return function (target: Function) {\n // console.log(`CLASSNAME Inited ${className}`)\n return setClassName(target, className, options);\n } as any;\n }\n\n export function CLASSNAME__NS__getClassName(target: Function, production = false) {\n if (_.isNil(target)) {\n // console.log(target);\n // Helpers.warn(`[typescript-class-helpers][getClassName] target is nil`)\n return void 0;\n }\n if (_.isString(target)) {\n // console.log(target);\n Helpers.log(\n `[typescript-class-helpers][getClassName] target is string: '${target}', produciton: ${production}`,\n );\n return target;\n }\n\n if (target === Date) {\n return 'Date';\n }\n\n if ((target as any) === FormData) {\n return 'FormData';\n }\n\n if (!_.isFunction(target)) {\n // console.log(target);\n Helpers.log(\n `[typescript-class-helpers][getClassName] target is not a class`,\n );\n return void 0;\n }\n\n if (target[SYMBOL.ClassNameStaticProperty]) {\n return target[SYMBOL.ClassNameStaticProperty];\n }\n\n const configs = CLASSNAME__NS__getClassConfig(target);\n const config = _.first(configs);\n\n const classNameInBrowser = config?.classNameInBrowser;\n\n if (Helpers.isBrowser && _.isString(classNameInBrowser)) {\n return classNameInBrowser;\n }\n\n const className = config?.className;\n\n if (typeof className === 'string') {\n return className;\n }\n\n if (production) {\n console.log('class without @CLASS.NAME deocrator', target as any);\n throw new Error(ERROR_MSG_CLASS_WITHOUT_DECORATOR);\n } else {\n // Helpers.log('check for ' + target.name)\n // setTimeout(() => {\n // // Helpers.log('check for ' + target.name + ' === ' + config.className)/\n // // TODO this may work, but not yet in singleton/morphi\n // if (!config.className) {\n // if (target?.name && target.name !== 'Object') {\n // ConfigHelpers.log(`[typescript-class-helpers] Please use @CLASS.NAME`\n // + `('${(target?.name && !!target.name) ? target.name : '...'}') decorator for class ${target?.name}`)\n // }\n // }\n // })\n }\n\n // special thing when cloning classes\n if (target.name?.startsWith('class_')) {\n return '';\n }\n\n return target.name;\n }\n\n // @ts-ignore\n export function CLASSNAME__NS__getObjectIndexPropertyValue(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n // console.log('className',className)\n let c = getClasses().find(c => c.className === className);\n // console.log('c',c)\n if (c) {\n return c.uniqueKey;\n }\n }\n\n // @ts-ignore\n export function CLASSNAME__NS__getClassFamilyByClassName(className: string) {\n let c = getClasses().find(c => c.className === className);\n // console.log('getClasses()', getClasses())\n if (c) {\n return c.classFamily;\n }\n }\n\n // @ts-ignore\n export function CLASSNAME__NS__getObjectClassFamily(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n // console.log('className',className)\n let c = getClasses().find(c => c.className === className);\n // console.log('c',c)\n if (c) {\n return c.classFamily;\n }\n }\n\n export function CLASSNAME__NS__getObjectIndexValue(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n // console.log('className',className)\n let c = getClasses().find(c => c.className === className);\n // console.log('c',c)\n if (c && _.isString(c.uniqueKey)) {\n return obj[c.uniqueKey];\n }\n }\n\n export function CLASSNAME__NS__getClassBy(className: string | Function): Function {\n let res;\n if (Array.isArray(className)) {\n if (className.length !== 1) {\n throw `Mapping error... please use proper class names:\n {\n propertyObject: 'MyClassName',\n propertyWithArray: ['MyClassName']\n }\n\n `;\n }\n className = className[0];\n }\n if (typeof className === 'function') {\n // TODO QUICK_FIX\n res = className;\n }\n if (className === 'Date') {\n res = Date;\n }\n\n if (className === 'FormData') {\n res = FormData;\n }\n\n let c = getClasses().find(c => c.className === className);\n\n if (c) {\n res = c.target;\n }\n // console.log(`getClassBy \"${className} return \\n\\n ${res} \\n\\n`)\n // @ts-ignore\n return res;\n }\n\n//end of namespace CLASSNAME","import { _ } from 'tnp-core/browser-prod';\nimport { SYMBOL } from './symbols';\n\n\n\n/**\n * @DEPRECATED\n * Describe fields assigned in class\n */\nconst FRegEx = new RegExp(/(?:this\\.)(.+?(?= ))/g);\nexport function describeFromClassStringify(target: Function, parent = false): string[] {\n // @ts-ignore\n var result = [];\n if (parent) {\n var proto = Object.getPrototypeOf(target.prototype);\n if (proto) {\n // @ts-ignore\n result = result.concat(describeFromClassStringify(proto.constructor, parent));\n }\n }\n const classString = target.toString();\n const matches = classString.match(FRegEx) || []\n // console.log({\n // classString,\n\n // });\n result = result.concat(matches);\n return result.map(prop => prop\n .replace('this.', '')\n .replace('.', '')\n .replace(')', '')\n .replace('(', '')\n )\n\n}\n\n/**\n * Describe fields assigne through @DefaultModelWithMapping decorator\n * without functions\n */\nexport function describeByDefaultModelsAndMapping(target: Function): string[] {\n let res = {}\n if (target) {\n // @ts-ignore\n if (target[SYMBOL.DEFAULT_MODEL]) {\n // @ts-ignore\n Object.keys(target[SYMBOL.DEFAULT_MODEL])\n .filter(key => {\n // @ts-ignore\n return !_.isFunction(target[SYMBOL.DEFAULT_MODEL][key]);\n })\n .forEach(key => {\n // @ts-ignore\n return res[key] = null;\n });\n }\n // @ts-ignore\n let mapping = target[SYMBOL.MODELS_MAPPING];\n if (_.isArray(mapping)) {\n mapping.forEach(m => {\n Object.keys(m)\n .forEach(key => {\n // @ts-ignore\n res[key] = null;\n });\n })\n } else if (mapping) {\n\n Object.keys(mapping)\n .forEach(key => {\n // @ts-ignore\n res[key] = null;\n });\n }\n }\n\n let propNames = Object.keys(res).filter(f => !!f);\n propNames = (!propNames.includes('id') ? ['id'] : []).concat(propNames);\n return propNames;\n}","import { _ } from 'tnp-core/browser-prod';\nimport { CLASSNAME__NS__CLASSNAME, CLASSNAME__NS__getClassBy, CLASSNAME__NS__getClassConfig, CLASSNAME__NS__getClassFamilyByClassName, CLASSNAME__NS__getClassName, CLASSNAME__NS__getObjectClassFamily, CLASSNAME__NS__getObjectIndexPropertyValue, CLASSNAME__NS__getObjectIndexValue } from './classname';\nimport { describeFromClassStringify, describeByDefaultModelsAndMapping } from './describe-class';\nimport { Models__NS__ClassConfig, Models__NS__ClassMeta, Models__NS__CLASSNAMEOptions, Models__NS__MethodConfig, Models__NS__ParamConfig } from './models';\nimport { setClassName } from './set-class-name';\n\nexport { Models__NS__ClassConfig, Models__NS__ClassMeta, Models__NS__CLASSNAMEOptions, Models__NS__MethodConfig, Models__NS__ParamConfig } from './models';\nexport { SYMBOL } from './symbols';\n\nexport class TchHelpers {\n\n static getBy(className: string | Function) {\n return CLASSNAME__NS__getClassBy(className);\n }\n\n static getFromObject(o: Object) {\n if (_.isUndefined(o) || _.isNull(o)) {\n return;\n }\n if (o.constructor) {\n return o.constructor;\n }\n const p = Object.getPrototypeOf(o);\n return p && p.constructor;\n }\n\n static getName(target: Function, production = false) {\n return CLASSNAME__NS__getClassName(target, production) as string;\n }\n\n static getNameFromObject(o: Object) {\n const fnCLass = this.getFromObject(o);\n return this.getName(fnCLass);\n }\n\n static getConfigs(target: Function): Models__NS__ClassConfig[] {\n return CLASSNAME__NS__getClassConfig(target)\n }\n\n static describeProperites(target: Function) {\n const d1 = describeFromClassStringify(target);\n const d2 = describeByDefaultModelsAndMapping(target);\n let uniq = {};\n // @ts-ignore\n d1.concat(d2).forEach(p => uniq[p] = p);\n return Object.keys(uniq)\n .filter(d => !!d)\n .filter(d => typeof target.prototype[d] !== 'function')\n }\n\n}\n\nconst notAllowedAsMethodName = [\n 'length', 'name',\n 'arguments', 'caller',\n 'constructor', 'apply',\n 'bind', 'call',\n 'toString',\n '__defineGetter__',\n '__defineSetter__', 'hasOwnProperty',\n '__lookupGetter__', '__lookupSetter__',\n 'isPrototypeOf', 'propertyIsEnumerable',\n 'valueOf', '__proto__', 'toLocaleString',\n];\n\nconst getMethodsNames = (classOrClassInstance: any, allMethodsNames = []): string[] => {\n if (!classOrClassInstance) {\n return allMethodsNames;\n }\n\n const isClassFunction = _.isFunction(classOrClassInstance);\n const classFun = (isClassFunction ? classOrClassInstance : Object.getPrototypeOf(classOrClassInstance));\n const objectToCheck = isClassFunction ? (classOrClassInstance as Function)?.prototype : classOrClassInstance;\n const prototypeObj = Object.getPrototypeOf(objectToCheck || {});\n\n const properties = _.uniq([\n ...Object.getOwnPropertyNames(objectToCheck || {}),\n ...Object.getOwnPropertyNames(prototypeObj || {}),\n ...Object.keys(objectToCheck || {}),\n ...Object.keys(prototypeObj || {}),\n ])\n .filter(f => !!f && !notAllowedAsMethodName.includes(f));\n\n properties.filter((methodName) => typeof objectToCheck[methodName] === 'function').forEach(p => allMethodsNames.push(p));\n\n if (!classFun || !classFun.constructor || classFun?.constructor?.name === 'Object') {\n return allMethodsNames;\n }\n return getMethodsNames(Object.getPrototypeOf(classFun), allMethodsNames);\n};\n\nexport const CLASS = {\n NAME: CLASSNAME__NS__CLASSNAME,\n setName: setClassName,\n getBy: TchHelpers.getBy,\n /**\n * @deprecated\n */\n getSingleton<T = any>(target: Function) {\n if (typeof target !== 'function') {\n console.error(`[typescript-class-helpers][setSingletonObj] Type of target is not a function`)\n return\n }\n const config = TchHelpers.getConfigs(target)[0]\n // console.log(`getSingleton for ${target.name}: `, config.singleton)\n\n return config.singleton as T;\n },\n /**\n * @deprecated\n */\n setSingletonObj(target: Function, singletonObject: any) {\n // console.log('SET SINGLETON', singletonObject)\n if (typeof target !== 'function') {\n console.error(`[typescript-class-helpers][setSingletonObj] Type of target is not a function`)\n return\n }\n\n if (Array.isArray(singletonObject)) {\n console.error(`[typescript-class-helpers][setSingletonObj] Singleton instance cant be an array`)\n return\n }\n\n if (typeof singletonObject !== 'object') {\n console.error(`[typescript-class-helpers][setSingletonObj] Singleton instance cant must be a object`)\n return\n }\n\n const className = CLASS.getName(target);\n\n\n // console.log(`SINGLETON SET for TARGET ${className}`)\n const config = TchHelpers.getConfigs(target)[0]\n\n if (config.singleton) {\n console.warn(`[typescript-class-helpers] You are trying to set singleton of \"${className}\" second time with different object.`)\n }\n\n config.singleton = singletonObject;\n },\n /**\n * @deprecated\n */\n getConfigs: TchHelpers.getConfigs,\n /**\n * @deprecated\n */\n getConfig: (target: Function) => {\n return _.first(TchHelpers.getConfigs(target));\n },\n\n\n getMethodsNames(classOrClassInstance: any): string[] {\n return getMethodsNames(classOrClassInstance);\n },\n getFromObject: TchHelpers.getFromObject,\n getName: TchHelpers.getName,\n getNameFromObject: TchHelpers.getNameFromObject,\n describeProperites: TchHelpers.describeProperites,\n /**\n * @deprecated\n */\n OBJECT: (obj: any) => {\n return {\n get indexValue() {\n return CLASSNAME__NS__getObjectIndexValue(obj);\n },\n get indexProperty() {\n return CLASSNAME__NS__getObjectIndexPropertyValue(obj);\n },\n get isClassObject() {\n\n if (!_.isObject(obj) || _.isArray(obj) || _.isRegExp(obj) ||\n _.isBuffer(obj) || _.isArrayBuffer(obj)) {\n return false;\n }\n if (_.isDate(obj)) {\n return true;\n }\n const className = CLASS.getNameFromObject(obj)\n return _.isString(className) && className !== 'Object';\n },\n isEqual: (anotherObj: any, compareDeep = false) => {\n if (!CLASS.OBJECT(obj).isClassObject || !CLASS.OBJECT(anotherObj).isClassObject) {\n return false;\n }\n if (obj === anotherObj) {\n // console.log(`EQ v1: , v2: - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`, obj, anotherObj)\n return true;\n }\n const v1 = CLASSNAME__NS__getObjectIndexValue(obj);\n const v2 = CLASSNAME__NS__getObjectIndexValue(anotherObj);\n const f1 = CLASSNAME__NS__getObjectClassFamily(obj)\n const f2 = CLASSNAME__NS__getObjectClassFamily(anotherObj)\n const isFamilyDiff = (!_.isString(f1) || !_.isString(f2) || (f1 !== f2));\n // console.log(`DIFF FAMILY ${isFamilyDiff} v1: ${CLASSNAME__NS__getObjectClassFamily(obj)}, v2: ${CLASSNAME__NS__getObjectClassFamily(anotherObj)} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n if (isFamilyDiff) {\n // console.log(`DIFF v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n return false;\n }\n if (!CLASS.OBJECT(obj).isClassObject || !CLASS.OBJECT(anotherObj).isClassObject) {\n // console.log(`NOT CLASS v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n return false\n }\n\n // console.log(`v1: ${v1} ,class ${CLASS.getNameFromObject(obj)} ,prop: ${CLASS.OBJECT(obj).indexProperty}`)\n // console.log(`v2: ${v2} ,class ${CLASS.getNameFromObject(anotherObj)} ,prop: ${CLASS.OBJECT(anotherObj).indexProperty}`)\n // console.log(`v1: ${v1}, v2: ${v2} - class1 ${CLASS.getNameFromObject(obj)}, class2 ${CLASS.getNameFromObject(anotherObj)}`)\n // console.log('')\n if ((_.isNumber(v1) && _.isNumber(v2)) || (_.isString(v1) && _.isString(v2))) {\n\n const res = (v1 === v2);\n // @ts-ignore\n return res;\n }\n if (compareDeep) {\n return _.isEqual(v1, v2)\n }\n return false;\n }\n }\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["getClasses"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typescript-class-helpers/browser-prod",
3
- "version": "21.0.17",
3
+ "version": "21.0.18",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.0.0",
6
6
  "@angular/core": "^21.0.0"
@@ -1,10 +1,10 @@
1
1
  // @ts-nocheck
2
- import { CoreModels_HttpMethod, CoreModels_ParamType } from 'tnp-core/browser-prod';
2
+ import { CoreModels__NS__HttpMethod, CoreModels__NS__ParamType } from 'tnp-core/browser-prod';
3
3
 
4
4
  /**
5
5
  * @deprecated
6
6
  */
7
- type Models_CLASSNAMEOptions = {
7
+ type Models__NS__CLASSNAMEOptions = {
8
8
  uniqueKey?: string;
9
9
  /**
10
10
  * autoinstance - create instance of singleton automaticly inside decorator
@@ -17,9 +17,9 @@ type Models_CLASSNAMEOptions = {
17
17
  /**
18
18
  * @deprecated
19
19
  */
20
- declare class Models_ParamConfig {
20
+ declare class Models__NS__ParamConfig {
21
21
  paramName: string;
22
- paramType: CoreModels_ParamType;
22
+ paramType: CoreModels__NS__ParamType;
23
23
  index: number;
24
24
  defaultType: any;
25
25
  expireInSeconds?: number;
@@ -27,7 +27,7 @@ declare class Models_ParamConfig {
27
27
  /**
28
28
  * @deprecated
29
29
  */
30
- declare class Models_MethodConfig {
30
+ declare class Models__NS__MethodConfig {
31
31
  methodName: string;
32
32
  /**
33
33
  * path is global in express app
@@ -43,15 +43,15 @@ declare class Models_MethodConfig {
43
43
  responseType?: any;
44
44
  path: string;
45
45
  descriptor: PropertyDescriptor;
46
- type: CoreModels_HttpMethod;
46
+ type: CoreModels__NS__HttpMethod;
47
47
  parameters: {
48
- [paramName: string]: Models_ParamConfig;
48
+ [paramName: string]: Models__NS__ParamConfig;
49
49
  };
50
50
  }
51
51
  /**
52
52
  * @deprecated
53
53
  */
54
- interface Models_ClassMeta {
54
+ interface Models__NS__ClassMeta {
55
55
  uniqueKey?: string;
56
56
  className?: string;
57
57
  classFamily?: string;
@@ -61,7 +61,7 @@ interface Models_ClassMeta {
61
61
  /**
62
62
  * @deprecated
63
63
  */
64
- declare class Models_ClassConfig {
64
+ declare class Models__NS__ClassConfig {
65
65
  browserTransformFn?: (entity: any) => any;
66
66
  singleton: Object;
67
67
  injections: {
@@ -70,14 +70,14 @@ declare class Models_ClassConfig {
70
70
  }[];
71
71
  calculatedPath: string;
72
72
  path: string;
73
- vChildren?: Models_ClassConfig[];
74
- vParent?: Models_ClassConfig;
73
+ vChildren?: Models__NS__ClassConfig[];
74
+ vParent?: Models__NS__ClassConfig;
75
75
  classReference: Function;
76
76
  className?: string;
77
77
  uniqueKey?: string;
78
78
  classNameInBrowser?: string;
79
79
  methods: {
80
- [methodName: string]: Models_MethodConfig;
80
+ [methodName: string]: Models__NS__MethodConfig;
81
81
  };
82
82
  }
83
83
 
@@ -86,9 +86,9 @@ declare class Models_ClassConfig {
86
86
  * Decorator requred for production mode
87
87
  * @param name Name of class
88
88
  */
89
- declare function CLASSNAME_CLASSNAME(className: string, options?: Models_CLASSNAMEOptions): any;
89
+ declare function CLASSNAME__NS__CLASSNAME(className: string, options?: Models__NS__CLASSNAMEOptions): any;
90
90
 
91
- declare function setClassName(target: Function, className: string, options?: Models_CLASSNAMEOptions): (...args: any[]) => any;
91
+ declare function setClassName(target: Function, className: string, options?: Models__NS__CLASSNAMEOptions): (...args: any[]) => any;
92
92
 
93
93
  declare const SYMBOL: {
94
94
  MODELS_MAPPING: symbol;
@@ -103,11 +103,11 @@ declare class TchHelpers {
103
103
  static getFromObject(o: Object): any;
104
104
  static getName(target: Function, production?: boolean): string;
105
105
  static getNameFromObject(o: Object): string;
106
- static getConfigs(target: Function): Models_ClassConfig[];
106
+ static getConfigs(target: Function): Models__NS__ClassConfig[];
107
107
  static describeProperites(target: Function): string[];
108
108
  }
109
109
  declare const CLASS: {
110
- NAME: typeof CLASSNAME_CLASSNAME;
110
+ NAME: typeof CLASSNAME__NS__CLASSNAME;
111
111
  setName: typeof setClassName;
112
112
  getBy: typeof TchHelpers.getBy;
113
113
  /**
@@ -125,7 +125,7 @@ declare const CLASS: {
125
125
  /**
126
126
  * @deprecated
127
127
  */
128
- getConfig: (target: Function) => Models_ClassConfig;
128
+ getConfig: (target: Function) => Models__NS__ClassConfig;
129
129
  getMethodsNames(classOrClassInstance: any): string[];
130
130
  getFromObject: typeof TchHelpers.getFromObject;
131
131
  getName: typeof TchHelpers.getName;
@@ -142,5 +142,5 @@ declare const CLASS: {
142
142
  };
143
143
  };
144
144
 
145
- export { CLASS, Models_ClassConfig, Models_MethodConfig, Models_ParamConfig, SYMBOL, TchHelpers };
146
- export type { Models_CLASSNAMEOptions, Models_ClassMeta };
145
+ export { CLASS, Models__NS__ClassConfig, Models__NS__MethodConfig, Models__NS__ParamConfig, SYMBOL, TchHelpers };
146
+ export type { Models__NS__CLASSNAMEOptions, Models__NS__ClassMeta };