typescript-class-helpers 16.5.3 → 16.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/shared/shared_folder_info.txt +1 -1
- package/browser/esm2022/lib/classname.mjs +1 -23
- package/browser/esm2022/lib/describe-class.mjs +1 -4
- package/browser/esm2022/lib/index.mjs +1 -12
- package/browser/esm2022/lib/set-class-name.mjs +1 -10
- package/browser/fesm2022/typescript-class-helpers.mjs +0 -45
- package/browser/fesm2022/typescript-class-helpers.mjs.map +1 -1
- package/client/esm2022/lib/classname.mjs +1 -23
- package/client/esm2022/lib/describe-class.mjs +1 -4
- package/client/esm2022/lib/index.mjs +1 -12
- package/client/esm2022/lib/set-class-name.mjs +1 -10
- package/client/fesm2022/typescript-class-helpers.mjs +0 -45
- package/client/fesm2022/typescript-class-helpers.mjs.map +1 -1
- package/client/package.json +32 -32
- package/package.json +3 -3
- package/tmp-environment.json +36 -36
- package/websql/esm2022/lib/classname.mjs +1 -23
- package/websql/esm2022/lib/describe-class.mjs +1 -4
- package/websql/esm2022/lib/index.mjs +1 -12
- package/websql/esm2022/lib/set-class-name.mjs +1 -10
- package/websql/fesm2022/typescript-class-helpers.mjs +0 -45
- package/websql/fesm2022/typescript-class-helpers.mjs.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-class-helpers.mjs","sources":["../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/models.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/symbols.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/storage.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/set-class-name.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/registerd-db.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/errors-messages.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/classname.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/describe-class.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/index.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/typescript-class-helpers.ts"],"sourcesContent":["\n\nimport { ConfigModels } from 'tnp-config/browser';\n\nexport namespace Models {\n\n\n export type 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 export class ParamConfig {\n paramName: string;\n paramType: ConfigModels.ParamType;\n index: number;\n defaultType: any;\n expireInSeconds?: number;\n }\n\n export class 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: ConfigModels.HttpMethod;\n/* */\n/* */\n \n parameters: { [paramName: string]: ParamConfig } = {};\n }\n\n export interface ClassMeta {\n uniqueKey?: string;\n className?: string;\n classFamily?: string;\n classNameInBrowser?: string;\n target?: Function;\n }\n\n export class 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?: ClassConfig[] = [];\n vParent?: ClassConfig;\n classReference: Function;\n className?: string;\n uniqueKey?: string;\n classNameInBrowser?: string;\n methods: { [methodName: string]: MethodConfig } = {};\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/models.ts","\n\nexport const SYMBOL = {\n MODELS_MAPPING: Symbol(),\n DEFAULT_MODEL: Symbol(),\n STORAGE: 'classesstorage',\n CLASSES: 'classes',\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/symbols.ts","\n\nimport { Helpers } from 'tnp-core/browser';\nimport { SYMBOL } from './symbols';\nimport { _ } from 'tnp-core/browser';\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}\n\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/storage.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { SYMBOL } from './symbols';\nimport { Models } from './models';\nimport { getStorage } from './storage';\nimport { CLASSNAME } 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}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/set-class-name.ts","\n\nimport { Models } from './models';\nexport const registerd = {\n configs: [] as Models.ClassConfig[],\n classes: [] as Function[],\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/registerd-db.ts","\n\n\nexport 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 // @ts-ignore\nimport { CLASS } from '../lib';\n\n@CLASS.NAME('ExampleClass')\nclass ExampleClass {\n ...\n}\n`;\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/errors-messages.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { Models } from './models';\nimport { SYMBOL } from './symbols';\nimport { TchHelpers } from './index';\nimport { Helpers } from 'tnp-core/browser';\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}\nexport namespace CLASSNAME {\n\n export function getClassConfig(target: Function, configs: Models.ClassConfig[] = [], callerTarget?: Function): 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 = 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 = 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 ? getClassConfig(parentClass, configs, target) : 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: string,\n options?: Models.CLASSNAMEOptions) {\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 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.warn(`[typescript-class-helpers][getClassName] target is string: '${target}', produciton: ${production}`)\n return target;\n }\n if (!_.isFunction(target)) {\n console.log(target);\n Helpers.warn(`[typescript-class-helpers][getClassName] target is not a class`)\n return void 0;\n }\n\n const configs = 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 (className) {\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 return target.name;\n }\n\n // @ts-ignore\n export function 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 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 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 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 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') { // 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}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/classname.ts","\n\nimport { _ } from 'tnp-core/browser';\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}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/describe-class.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { CLASSNAME } from './classname';\nimport { describeFromClassStringify, describeByDefaultModelsAndMapping } from './describe-class';\nimport { Models } from './models';\nimport { setClassName } from './set-class-name';\n\nexport { Models } 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\n\nexport const CLASS = {\n NAME: CLASSNAME.CLASSNAME,\n setName: setClassName,\n getBy: TchHelpers.getBy,\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 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 getConfigs: TchHelpers.getConfigs,\n getConfig: (target: Function) => {\n return _.first(TchHelpers.getConfigs(target));\n },\n getFromObject: TchHelpers.getFromObject,\n getName: TchHelpers.getName,\n getNameFromObject: TchHelpers.getNameFromObject,\n describeProperites: TchHelpers.describeProperites,\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\nexport * from 'enum-values';\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/index.ts","/**\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.mjs","sources":["../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/models.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/symbols.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/storage.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/set-class-name.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/registerd-db.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/errors-messages.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/classname.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/describe-class.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/lib/index.ts","../../../tmp-libs-for-bundle/typescript-class-helpers/projects/typescript-class-helpers/src/typescript-class-helpers.ts"],"sourcesContent":["\n\nimport { ConfigModels } from 'tnp-config/browser';\n\nexport namespace Models {\n\n\n export type 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 export class ParamConfig {\n paramName: string;\n paramType: ConfigModels.ParamType;\n index: number;\n defaultType: any;\n expireInSeconds?: number;\n }\n\n export class 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: ConfigModels.HttpMethod;\n/* */\n/* */\n \n parameters: { [paramName: string]: ParamConfig } = {};\n }\n\n export interface ClassMeta {\n uniqueKey?: string;\n className?: string;\n classFamily?: string;\n classNameInBrowser?: string;\n target?: Function;\n }\n\n export class 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?: ClassConfig[] = [];\n vParent?: ClassConfig;\n classReference: Function;\n className?: string;\n uniqueKey?: string;\n classNameInBrowser?: string;\n methods: { [methodName: string]: MethodConfig } = {};\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/models.ts","\n\nexport const SYMBOL = {\n MODELS_MAPPING: Symbol(),\n DEFAULT_MODEL: Symbol(),\n STORAGE: 'classesstorage',\n CLASSES: 'classes',\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/symbols.ts","\n\nimport { Helpers } from 'tnp-core/browser';\nimport { SYMBOL } from './symbols';\nimport { _ } from 'tnp-core/browser';\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}\n\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/storage.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { SYMBOL } from './symbols';\nimport { Models } from './models';\nimport { getStorage } from './storage';\nimport { CLASSNAME } 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\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\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\n }\n else {\n\n }\n\n return context;\n }\n };\n\n\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\n\n return obj.decoratedConstructor;\n } else if (singleton === 'autoinstance') {\n\n\n const auto = new (Original as any)();\n CLASS.setSingletonObj(Original, auto)\n\n\n }\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/set-class-name.ts","\n\nimport { Models } from './models';\nexport const registerd = {\n configs: [] as Models.ClassConfig[],\n classes: [] as Function[],\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/registerd-db.ts","\n\n\nexport 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 // @ts-ignore\nimport { CLASS } from '../lib';\n\n@CLASS.NAME('ExampleClass')\nclass ExampleClass {\n ...\n}\n`;\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/errors-messages.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { Models } from './models';\nimport { SYMBOL } from './symbols';\nimport { TchHelpers } from './index';\nimport { Helpers } from 'tnp-core/browser';\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}\nexport namespace CLASSNAME {\n\n export function getClassConfig(target: Function, configs: Models.ClassConfig[] = [], callerTarget?: Function): 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 = 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 = 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 ? getClassConfig(parentClass, configs, target) : 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: string,\n options?: Models.CLASSNAMEOptions) {\n return function (target: Function) {\n\n return setClassName(target, className, options);\n } as any;\n }\n\n export function getClassName(target: Function, production = false) {\n if (_.isNil(target)) {\n\n\n return void 0;\n }\n if (_.isString(target)) {\n console.log(target);\n Helpers.warn(`[typescript-class-helpers][getClassName] target is string: '${target}', produciton: ${production}`)\n return target;\n }\n if (!_.isFunction(target)) {\n console.log(target);\n Helpers.warn(`[typescript-class-helpers][getClassName] target is not a class`)\n return void 0;\n }\n\n const configs = 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 (className) {\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\n\n\n\n\n\n\n\n\n\n\n\n }\n return target.name;\n }\n\n // @ts-ignore\n export function getObjectIndexPropertyValue(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n\n let c = getClasses().find(c => c.className === className);\n\n if (c) {\n return c.uniqueKey;\n }\n }\n\n // @ts-ignore\n export function getClassFamilyByClassName(className: string) {\n let c = getClasses().find(c => c.className === className);\n\n if (c) {\n return c.classFamily;\n }\n }\n\n // @ts-ignore\n export function getObjectClassFamily(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n\n let c = getClasses().find(c => c.className === className);\n\n if (c) {\n return c.classFamily;\n }\n }\n\n export function getObjectIndexValue(obj: any) {\n const className = TchHelpers.getNameFromObject(obj);\n\n let c = getClasses().find(c => c.className === className);\n\n if (c && _.isString(c.uniqueKey)) {\n return obj[c.uniqueKey];\n }\n }\n\n export function 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') { // 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\n // @ts-ignore\n return res;\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/classname.ts","\n\nimport { _ } from 'tnp-core/browser';\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\n\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}\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/describe-class.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { CLASSNAME } from './classname';\nimport { describeFromClassStringify, describeByDefaultModelsAndMapping } from './describe-class';\nimport { Models } from './models';\nimport { setClassName } from './set-class-name';\n\nexport { Models } 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\n\nexport const CLASS = {\n NAME: CLASSNAME.CLASSNAME,\n setName: setClassName,\n getBy: TchHelpers.getBy,\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\n\n return config.singleton as T;\n },\n setSingletonObj(target: Function, singletonObject: any) {\n\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\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 getConfigs: TchHelpers.getConfigs,\n getConfig: (target: Function) => {\n return _.first(TchHelpers.getConfigs(target));\n },\n getFromObject: TchHelpers.getFromObject,\n getName: TchHelpers.getName,\n getNameFromObject: TchHelpers.getNameFromObject,\n describeProperites: TchHelpers.describeProperites,\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\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\n if (isFamilyDiff) {\n\n return false;\n }\n if (!CLASS.OBJECT(obj).isClassObject || !CLASS.OBJECT(anotherObj).isClassObject) {\n\n return false\n }\n\n\n\n\n\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\nexport * from 'enum-values';\n\n ;({}); // @--end-of-file-for-module=typescript-class-helpers lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["getClasses"],"mappings":"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"}
|
|
@@ -49,15 +49,12 @@ export var CLASSNAME;
|
|
|
49
49
|
*/
|
|
50
50
|
function CLASSNAME(className, options) {
|
|
51
51
|
return function (target) {
|
|
52
|
-
/* \/\/ console\.log\(`CLASSNAME Inited \$\{className\}`\) */
|
|
53
52
|
return setClassName(target, className, options);
|
|
54
53
|
};
|
|
55
54
|
}
|
|
56
55
|
CLASSNAME_1.CLASSNAME = CLASSNAME;
|
|
57
56
|
function getClassName(target, production = false) {
|
|
58
57
|
if (_.isNil(target)) {
|
|
59
|
-
/* \/\/ console\.log\(target\); */
|
|
60
|
-
/* \/\/ Helpers\.warn\(`\[typescript\-class\-helpers\]\[getClassName\] target is nil`\) */
|
|
61
58
|
return void 0;
|
|
62
59
|
}
|
|
63
60
|
if (_.isString(target)) {
|
|
@@ -85,17 +82,6 @@ export var CLASSNAME;
|
|
|
85
82
|
throw new Error(ERROR_MSG_CLASS_WITHOUT_DECORATOR);
|
|
86
83
|
}
|
|
87
84
|
else {
|
|
88
|
-
/* \/\/ Helpers\.log\('check for ' \+ target\.name\) */
|
|
89
|
-
/* \/\/ setTimeout\(\(\) => \{ */
|
|
90
|
-
/* \/\/ \/\/ Helpers\.log\('check for ' \+ target\.name \+ ' === ' \+ config\.className\)\/ */
|
|
91
|
-
/* \/\/ \/\/ TODO this may work, but not yet in singleton\/morphi */
|
|
92
|
-
/* \/\/ if \(!config\.className\) \{ */
|
|
93
|
-
/* \/\/ if \(target\?\.name && target\.name !== 'Object'\) \{ */
|
|
94
|
-
/* \/\/ ConfigHelpers\.log\(`\[typescript\-class\-helpers\] Please use @CLASS\.NAME` */
|
|
95
|
-
/* \/\/ \+ `\('\$\{\(target\?\.name && !!target\.name\) \? target\.name : '\.\.\.'\}'\) decorator for class \$\{target\?\.name\}`\) */
|
|
96
|
-
/* \/\/ \} */
|
|
97
|
-
/* \/\/ \} */
|
|
98
|
-
/* \/\/ \}\) */
|
|
99
85
|
}
|
|
100
86
|
return target.name;
|
|
101
87
|
}
|
|
@@ -103,9 +89,7 @@ export var CLASSNAME;
|
|
|
103
89
|
// @ts-ignore
|
|
104
90
|
function getObjectIndexPropertyValue(obj) {
|
|
105
91
|
const className = TchHelpers.getNameFromObject(obj);
|
|
106
|
-
/* \/\/ console\.log\('className',className\) */
|
|
107
92
|
let c = getClasses().find(c => c.className === className);
|
|
108
|
-
/* \/\/ console\.log\('c',c\) */
|
|
109
93
|
if (c) {
|
|
110
94
|
return c.uniqueKey;
|
|
111
95
|
}
|
|
@@ -114,7 +98,6 @@ export var CLASSNAME;
|
|
|
114
98
|
// @ts-ignore
|
|
115
99
|
function getClassFamilyByClassName(className) {
|
|
116
100
|
let c = getClasses().find(c => c.className === className);
|
|
117
|
-
/* \/\/ console\.log\('getClasses\(\)', getClasses\(\)\) */
|
|
118
101
|
if (c) {
|
|
119
102
|
return c.classFamily;
|
|
120
103
|
}
|
|
@@ -123,9 +106,7 @@ export var CLASSNAME;
|
|
|
123
106
|
// @ts-ignore
|
|
124
107
|
function getObjectClassFamily(obj) {
|
|
125
108
|
const className = TchHelpers.getNameFromObject(obj);
|
|
126
|
-
/* \/\/ console\.log\('className',className\) */
|
|
127
109
|
let c = getClasses().find(c => c.className === className);
|
|
128
|
-
/* \/\/ console\.log\('c',c\) */
|
|
129
110
|
if (c) {
|
|
130
111
|
return c.classFamily;
|
|
131
112
|
}
|
|
@@ -133,9 +114,7 @@ export var CLASSNAME;
|
|
|
133
114
|
CLASSNAME_1.getObjectClassFamily = getObjectClassFamily;
|
|
134
115
|
function getObjectIndexValue(obj) {
|
|
135
116
|
const className = TchHelpers.getNameFromObject(obj);
|
|
136
|
-
/* \/\/ console\.log\('className',className\) */
|
|
137
117
|
let c = getClasses().find(c => c.className === className);
|
|
138
|
-
/* \/\/ console\.log\('c',c\) */
|
|
139
118
|
if (c && _.isString(c.uniqueKey)) {
|
|
140
119
|
return obj[c.uniqueKey];
|
|
141
120
|
}
|
|
@@ -168,7 +147,6 @@ export var CLASSNAME;
|
|
|
168
147
|
if (c) {
|
|
169
148
|
res = c.target;
|
|
170
149
|
}
|
|
171
|
-
/* \/\/ console\.log\(`getClassBy "\$\{className\} return \\n\\n \$\{res\} \\n\\n`\) */
|
|
172
150
|
// @ts-ignore
|
|
173
151
|
return res;
|
|
174
152
|
}
|
|
@@ -176,4 +154,4 @@ export var CLASSNAME;
|
|
|
176
154
|
})(CLASSNAME || (CLASSNAME = {}));
|
|
177
155
|
;
|
|
178
156
|
({}); // @--end-of-file-for-module=typescript-class-helpers lib/classname.ts
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3NuYW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvcHJvamVjdHMvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3NyYy9saWIvY2xhc3NuYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLEtBQUs7QUFDTCxLQUFLO0FBR0wsU0FBUyxVQUFVO0lBQ2pCLE1BQU0sQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDO0lBQ3ZCLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQVEsQ0FBQztBQUNsQyxDQUFDO0FBQ0QsTUFBTSxLQUFXLFNBQVMsQ0E4S3pCO0FBOUtELFdBQWlCLFdBQVM7SUFFeEIsU0FBZ0IsY0FBYyxDQUFDLE1BQWdCLEVBQUUsVUFBZ0MsRUFBRSxFQUFFLFlBQXVCO1FBQzFHLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3pCLE1BQU0sMkVBQTJFLE1BQU0sRUFBRSxDQUFBO1NBQzFGO1FB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QU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFSZSwrQkFBbUIsc0JBUWxDLENBQUE7SUFFRCxTQUFnQixVQUFVLENBQUMsU0FBNEI7UUFDckQsSUFBSSxHQUFHLENBQUM7UUFDUixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDMUIsTUFBTTs7Ozs7O1NBTUwsQ0FBQTthQUNGO1lBQ0QsU0FBUyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUN6QjtRQUNELElBQUksT0FBTyxTQUFTLEtBQUssVUFBVSxFQUFFLEVBQUUsaUJBQWlCO1lBQ3RELEdBQUcsR0FBRyxTQUFTLENBQUM7U0FDakI7UUFDRCxJQUFJLFNBQVMsS0FBSyxNQUFNLEVBQUU7WUFDeEIsR0FBRyxHQUFHLElBQUksQ0FBQztTQUNaO1FBRUQsSUFBSSxTQUFTLEtBQUssVUFBVSxFQUFFO1lBQzVCLEdBQUcsR0FBRyxRQUFRLENBQUM7U0FDaEI7UUFFRCxJQUFJLENBQUMsR0FBRyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxFQUFFO1lBQ0wsR0FBRyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7U0FDaEI7UUFDTCwyRkFBMkY7UUFDdkYsYUFBYTtRQUNiLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQWpDZSxzQkFBVSxhQWlDekIsQ0FBQTtBQUVILENBQUMsRUE5S2dCLFNBQVMsS0FBVCxTQUFTLFFBOEt6QjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsc0VBQXNFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IE1vZGVscyB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IFNZTUJPTCB9IGZyb20gJy4vc3ltYm9scyc7XG5pbXBvcnQgeyBUY2hIZWxwZXJzIH0gZnJvbSAnLi9pbmRleCc7XG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBnZXRTdG9yYWdlIH0gZnJvbSAnLi9zdG9yYWdlJztcbmltcG9ydCB7IHNldENsYXNzTmFtZSB9IGZyb20gJy4vc2V0LWNsYXNzLW5hbWUnO1xuaW1wb3J0IHsgcmVnaXN0ZXJkIH0gZnJvbSAnLi9yZWdpc3RlcmQtZGInO1xuaW1wb3J0IHsgRVJST1JfTVNHX0NMQVNTX1dJVEhPVVRfREVDT1JBVE9SIH0gZnJvbSAnLi9lcnJvcnMtbWVzc2FnZXMnO1xuLyogKi9cbi8qICovXG4gIFxuXG5mdW5jdGlvbiBnZXRDbGFzc2VzKCk6IE1vZGVscy5DbGFzc01ldGFbXSB7XG4gIGNvbnN0IHMgPSBnZXRTdG9yYWdlKCk7XG4gIHJldHVybiBzW1NZTUJPTC5DTEFTU0VTXSBhcyBhbnk7XG59XG5leHBvcnQgbmFtZXNwYWNlIENMQVNTTkFNRSB7XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldENsYXNzQ29uZmlnKHRhcmdldDogRnVuY3Rpb24sIGNvbmZpZ3M6IE1vZGVscy5DbGFzc0NvbmZpZ1tdID0gW10sIGNhbGxlclRhcmdldD86IEZ1bmN0aW9uKTogTW9kZWxzLkNsYXNzQ29uZmlnW10ge1xuICAgIGlmICghXy5pc0Z1bmN0aW9uKHRhcmdldCkpIHtcbiAgICAgIHRocm93IGBbdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJdW2dldENsYXNzQ29uZmlnXSBDYW5ub3QgZ2V0IGNsYXNzIGNvbmZpZyBmcm9tOiAke3RhcmdldH1gXG4gICAgfVxuXG4gICAgbGV0IGNvbmZpZzogTW9kZWxzLkNsYXNzQ29uZmlnO1xuICAgIGNvbnN0IHBhcmVudENsYXNzID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKHRhcmdldCk7XG4gICAgY29uc3QgaXNWYWxpZFBhcmVudCA9IChfLmlzRnVuY3Rpb24ocGFyZW50Q2xhc3MpICYmIHBhcmVudENsYXNzLm5hbWUgIT09ICcnKTtcblxuICAgIGlmIChyZWdpc3RlcmQuY2xhc3Nlcy5pbmNsdWRlcyh0YXJnZXQpKSB7XG4gICAgICBjb25maWcgPSByZWdpc3RlcmQuY29uZmlnc1tyZWdpc3RlcmQuY2xhc3Nlcy5maW5kSW5kZXgoYyA9PiBjID09PSB0YXJnZXQpXTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uZmlnID0gbmV3IE1vZGVscy5DbGFzc0NvbmZpZygpO1xuICAgICAgY29uZmlnLmNsYXNzUmVmZXJlbmNlID0gdGFyZ2V0O1xuICAgICAgcmVnaXN0ZXJkLmNsYXNzZXMucHVzaCh0YXJnZXQpO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyZC5jb25maWdzW3JlZ2lzdGVyZC5jbGFzc2VzLmZpbmRJbmRleChjID0+IGMgPT09IHRhcmdldCldID0gY29uZmlnO1xuICAgIGlmIChjYWxsZXJUYXJnZXQpIHtcbiAgICAgIGNvbnN0IGNhbGxlclRhcmdldENvbmZpZyA9IHJlZ2lzdGVyZC5jb25maWdzW3JlZ2lzdGVyZC5jbGFzc2VzLmZpbmRJbmRleChjID0+IGMgPT09IGNhbGxlclRhcmdldCldO1xuICAgICAgaWYgKCFjb25maWcudkNoaWxkcmVuLmluY2x1ZGVzKGNhbGxlclRhcmdldENvbmZpZykpIHtcbiAgICAgICAgY29uZmlnLnZDaGlsZHJlbi5wdXNoKGNhbGxlclRhcmdldENvbmZpZyk7XG4gICAgICB9XG4gICAgICBjYWxsZXJUYXJnZXRDb25maWcudlBhcmVudCA9IGNvbmZpZztcbiAgICB9XG5cbiAgICBjb25maWdzLnB1c2goY29uZmlnKTtcblxuICAgIHJldHVybiBpc1ZhbGlkUGFyZW50ID8gZ2V0Q2xhc3NDb25maWcocGFyZW50Q2xhc3MsIGNvbmZpZ3MsIHRhcmdldCkgOiBjb25maWdzO1xuICB9XG5cbiAgLyoqXG4gICAqIFBMRUFTRSBQUk9WSURFIE5BTUUgQVMgVFlQRUQgU1RSSU5HLCBOT1QgVkFSSUFCTEVcbiAgICogRGVjb3JhdG9yIHJlcXVyZWQgZm9yIHByb2R1Y3Rpb24gbW9kZVxuICAgKiBAcGFyYW0gbmFtZSBOYW1lIG9mIGNsYXNzXG4gICAqL1xuICBleHBvcnQgZnVuY3Rpb24gQ0xBU1NOQU1FKGNsYXNzTmFtZTogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBNb2RlbHMuQ0xBU1NOQU1FT3B0aW9ucykge1xuICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiBGdW5jdGlvbikge1xuLyogICAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXChgQ0xBU1NOQU1FIEluaXRlZCBcXCRcXHtjbGFzc05hbWVcXH1gXFwpICovXG4gICAgICByZXR1cm4gc2V0Q2xhc3NOYW1lKHRhcmdldCwgY2xhc3NOYW1lLCBvcHRpb25zKTtcbiAgICB9IGFzIGFueTtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRDbGFzc05hbWUodGFyZ2V0OiBGdW5jdGlvbiwgcHJvZHVjdGlvbiA9IGZhbHNlKSB7XG4gICAgaWYgKF8uaXNOaWwodGFyZ2V0KSkge1xuLyogICAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXCh0YXJnZXRcXCk7ICovXG4vKiAgICAgICBcXC9cXC8gSGVscGVyc1xcLndhcm5cXChgXFxbdHlwZXNjcmlwdFxcLWNsYXNzXFwtaGVscGVyc1xcXVxcW2dldENsYXNzTmFtZVxcXSB0YXJnZXQgaXMgbmlsYFxcKSAqL1xuICAgICAgcmV0dXJuIHZvaWQgMDtcbiAgICB9XG4gICAgaWYgKF8uaXNTdHJpbmcodGFyZ2V0KSkge1xuICAgICAgY29uc29sZS5sb2codGFyZ2V0KTtcbiAgICAgIEhlbHBlcnMud2FybihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bZ2V0Q2xhc3NOYW1lXSB0YXJnZXQgaXMgc3RyaW5nOiAnJHt0YXJnZXR9JywgcHJvZHVjaXRvbjogJHtwcm9kdWN0aW9ufWApXG4gICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH1cbiAgICBpZiAoIV8uaXNGdW5jdGlvbih0YXJnZXQpKSB7XG4gICAgICBjb25zb2xlLmxvZyh0YXJnZXQpO1xuICAgICAgSGVscGVycy53YXJuKGBbdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzXVtnZXRDbGFzc05hbWVdIHRhcmdldCBpcyBub3QgYSBjbGFzc2ApXG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbmZpZ3MgPSBnZXRDbGFzc0NvbmZpZyh0YXJnZXQpO1xuICAgIGNvbnN0IGNvbmZpZyA9IF8uZmlyc3QoY29uZmlncyk7XG5cbiAgICBjb25zdCBjbGFzc05hbWVJbkJyb3dzZXIgPSBjb25maWc/LmNsYXNzTmFtZUluQnJvd3NlcjtcblxuICAgIGlmIChIZWxwZXJzLmlzQnJvd3NlciAmJiBfLmlzU3RyaW5nKGNsYXNzTmFtZUluQnJvd3NlcikpIHtcbiAgICAgIHJldHVybiBjbGFzc05hbWVJbkJyb3dzZXI7XG4gICAgfVxuXG4gICAgY29uc3QgY2xhc3NOYW1lID0gY29uZmlnPy5jbGFzc05hbWU7XG5cbiAgICBpZiAoY2xhc3NOYW1lKSB7XG4gICAgICByZXR1cm4gY2xhc3NOYW1lO1xuICAgIH1cblxuICAgIGlmIChwcm9kdWN0aW9uKSB7XG4gICAgICBjb25zb2xlLmxvZygnY2xhc3Mgd2l0aG91dCBAQ0xBU1MuTkFNRSBkZW9jcmF0b3InLCB0YXJnZXQgYXMgYW55KVxuICAgICAgdGhyb3cgbmV3IEVycm9yKEVSUk9SX01TR19DTEFTU19XSVRIT1VUX0RFQ09SQVRPUik7XG4gICAgfSBlbHNlIHtcbi8qICAgICAgIFxcL1xcLyBIZWxwZXJzXFwubG9nXFwoJ2NoZWNrIGZvciAnIFxcKyB0YXJnZXRcXC5uYW1lXFwpICovXG4vKiAgICAgICBcXC9cXC8gc2V0VGltZW91dFxcKFxcKFxcKSA9PiBcXHsgKi9cbi8qICAgICAgIFxcL1xcLyAgIFxcL1xcLyBIZWxwZXJzXFwubG9nXFwoJ2NoZWNrIGZvciAnIFxcKyB0YXJnZXRcXC5uYW1lIFxcKyAnID09PSAnIFxcKyBjb25maWdcXC5jbGFzc05hbWVcXClcXC8gKi9cbi8qICAgICAgIFxcL1xcLyAgIFxcL1xcLyBUT0RPIHRoaXMgbWF5IHdvcmssIGJ1dCBub3QgeWV0IGluIHNpbmdsZXRvblxcL21vcnBoaSAqL1xuLyogICAgICAgXFwvXFwvICAgaWYgXFwoIWNvbmZpZ1xcLmNsYXNzTmFtZVxcKSBcXHsgKi9cbi8qICAgICAgIFxcL1xcLyAgICAgaWYgXFwodGFyZ2V0XFw/XFwubmFtZSAmJiB0YXJnZXRcXC5uYW1lICE9PSAnT2JqZWN0J1xcKSBcXHsgKi9cbi8qICAgICAgIFxcL1xcLyAgICAgICBDb25maWdIZWxwZXJzXFwubG9nXFwoYFxcW3R5cGVzY3JpcHRcXC1jbGFzc1xcLWhlbHBlcnNcXF0gUGxlYXNlIHVzZSBAQ0xBU1NcXC5OQU1FYCAqL1xuLyogICAgICAgXFwvXFwvICAgICAgICAgXFwrIGBcXCgnXFwkXFx7XFwodGFyZ2V0XFw/XFwubmFtZSAmJiAhIXRhcmdldFxcLm5hbWVcXCkgXFw/IHRhcmdldFxcLm5hbWUgOiAnXFwuXFwuXFwuJ1xcfSdcXCkgZGVjb3JhdG9yIGZvciBjbGFzcyBcXCRcXHt0YXJnZXRcXD9cXC5uYW1lXFx9YFxcKSAqL1xuLyogICAgICAgXFwvXFwvICAgICBcXH0gKi9cbi8qICAgICAgIFxcL1xcLyAgIFxcfSAqL1xuLyogICAgICAgXFwvXFwvIFxcfVxcKSAqL1xuXG4gICAgfVxuICAgIHJldHVybiB0YXJnZXQubmFtZTtcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdEluZGV4UHJvcGVydHlWYWx1ZShvYmo6IGFueSkge1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IFRjaEhlbHBlcnMuZ2V0TmFtZUZyb21PYmplY3Qob2JqKTtcbi8qICAgICBcXC9cXC8gY29uc29sZVxcLmxvZ1xcKCdjbGFzc05hbWUnLGNsYXNzTmFtZVxcKSAqL1xuICAgIGxldCBjID0gZ2V0Q2xhc3NlcygpLmZpbmQoYyA9PiBjLmNsYXNzTmFtZSA9PT0gY2xhc3NOYW1lKTtcbi8qICAgICBcXC9cXC8gY29uc29sZVxcLmxvZ1xcKCdjJyxjXFwpICovXG4gICAgaWYgKGMpIHtcbiAgICAgIHJldHVybiBjLnVuaXF1ZUtleTtcbiAgICB9XG4gIH1cblxuICAvLyBAdHMtaWdub3JlXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRDbGFzc0ZhbWlseUJ5Q2xhc3NOYW1lKGNsYXNzTmFtZTogc3RyaW5nKSB7XG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuLyogICAgIFxcL1xcLyBjb25zb2xlXFwubG9nXFwoJ2dldENsYXNzZXNcXChcXCknLCBnZXRDbGFzc2VzXFwoXFwpXFwpICovXG4gICAgaWYgKGMpIHtcbiAgICAgIHJldHVybiBjLmNsYXNzRmFtaWx5O1xuICAgIH1cbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdENsYXNzRmFtaWx5KG9iajogYW55KSB7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gVGNoSGVscGVycy5nZXROYW1lRnJvbU9iamVjdChvYmopO1xuLyogICAgIFxcL1xcLyBjb25zb2xlXFwubG9nXFwoJ2NsYXNzTmFtZScsY2xhc3NOYW1lXFwpICovXG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuLyogICAgIFxcL1xcLyBjb25zb2xlXFwubG9nXFwoJ2MnLGNcXCkgKi9cbiAgICBpZiAoYykge1xuICAgICAgcmV0dXJuIGMuY2xhc3NGYW1pbHk7XG4gICAgfVxuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdEluZGV4VmFsdWUob2JqOiBhbnkpIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSBUY2hIZWxwZXJzLmdldE5hbWVGcm9tT2JqZWN0KG9iaik7XG4vKiAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXCgnY2xhc3NOYW1lJyxjbGFzc05hbWVcXCkgKi9cbiAgICBsZXQgYyA9IGdldENsYXNzZXMoKS5maW5kKGMgPT4gYy5jbGFzc05hbWUgPT09IGNsYXNzTmFtZSk7XG4vKiAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXCgnYycsY1xcKSAqL1xuICAgIGlmIChjICYmIF8uaXNTdHJpbmcoYy51bmlxdWVLZXkpKSB7XG4gICAgICByZXR1cm4gb2JqW2MudW5pcXVlS2V5XTtcbiAgICB9XG4gIH1cblxuICBleHBvcnQgZnVuY3Rpb24gZ2V0Q2xhc3NCeShjbGFzc05hbWU6IHN0cmluZyB8IEZ1bmN0aW9uKTogRnVuY3Rpb24ge1xuICAgIGxldCByZXM7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoY2xhc3NOYW1lKSkge1xuICAgICAgaWYgKGNsYXNzTmFtZS5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgdGhyb3cgYE1hcHBpbmcgZXJyb3IuLi4gcGxlYXNlIHVzZSBwcm9wZXIgY2xhc3MgbmFtZXM6XG4gIHtcbiAgICBwcm9wZXJ0eU9iamVjdDogJ015Q2xhc3NOYW1lJyxcbiAgICBwcm9wZXJ0eVdpdGhBcnJheTogWydNeUNsYXNzTmFtZSddXG4gIH1cblxuICAgICAgICBgXG4gICAgICB9XG4gICAgICBjbGFzc05hbWUgPSBjbGFzc05hbWVbMF1cbiAgICB9XG4gICAgaWYgKHR5cGVvZiBjbGFzc05hbWUgPT09ICdmdW5jdGlvbicpIHsgLy8gVE9ETyBRVUlDS19GSVhcbiAgICAgIHJlcyA9IGNsYXNzTmFtZTtcbiAgICB9XG4gICAgaWYgKGNsYXNzTmFtZSA9PT0gJ0RhdGUnKSB7XG4gICAgICByZXMgPSBEYXRlO1xuICAgIH1cblxuICAgIGlmIChjbGFzc05hbWUgPT09ICdGb3JtRGF0YScpIHtcbiAgICAgIHJlcyA9IEZvcm1EYXRhO1xuICAgIH1cblxuICAgIGxldCBjID0gZ2V0Q2xhc3NlcygpLmZpbmQoYyA9PiBjLmNsYXNzTmFtZSA9PT0gY2xhc3NOYW1lKTtcblxuICAgIGlmIChjKSB7XG4gICAgICByZXMgPSBjLnRhcmdldDtcbiAgICB9XG4vKiAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXChgZ2V0Q2xhc3NCeSBcIlxcJFxce2NsYXNzTmFtZVxcfSByZXR1cm4gXFxcXG5cXFxcbiBcXCRcXHtyZXNcXH0gXFxcXG5cXFxcbmBcXCkgKi9cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMgbGliL2NsYXNzbmFtZS50cyJdfQ==
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3NuYW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvcHJvamVjdHMvdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3NyYy9saWIvY2xhc3NuYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLEtBQUs7QUFDTCxLQUFLO0FBR0wsU0FBUyxVQUFVO0lBQ2pCLE1BQU0sQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDO0lBQ3ZCLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQVEsQ0FBQztBQUNsQyxDQUFDO0FBQ0QsTUFBTSxLQUFXLFNBQVMsQ0E4S3pCO0FBOUtELFdBQWlCLFdBQVM7SUFFeEIsU0FBZ0IsY0FBYyxDQUFDLE1BQWdCLEVBQUUsVUFBZ0MsRUFBRSxFQUFFLFlBQXVCO1FBQzFHLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3pCLE1BQU0sMkVBQTJFLE1BQU0sRUFBRSxDQUFBO1NBQzFGO1FB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LENBQUMsQ0FBQTtTQUN6QjtRQUNELElBQUksT0FBTyxTQUFTLEtBQUssVUFBVSxFQUFFLEVBQUUsaUJBQWlCO1lBQ3RELEdBQUcsR0FBRyxTQUFTLENBQUM7U0FDakI7UUFDRCxJQUFJLFNBQVMsS0FBSyxNQUFNLEVBQUU7WUFDeEIsR0FBRyxHQUFHLElBQUksQ0FBQztTQUNaO1FBRUQsSUFBSSxTQUFTLEtBQUssVUFBVSxFQUFFO1lBQzVCLEdBQUcsR0FBRyxRQUFRLENBQUM7U0FDaEI7UUFFRCxJQUFJLENBQUMsR0FBRyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxFQUFFO1lBQ0wsR0FBRyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7U0FDaEI7UUFFRCxhQUFhO1FBQ2IsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBakNlLHNCQUFVLGFBaUN6QixDQUFBO0FBRUgsQ0FBQyxFQTlLZ0IsU0FBUyxLQUFULFNBQVMsUUE4S3pCO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxzRUFBc0UiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgTW9kZWxzIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgU1lNQk9MIH0gZnJvbSAnLi9zeW1ib2xzJztcbmltcG9ydCB7IFRjaEhlbHBlcnMgfSBmcm9tICcuL2luZGV4JztcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IGdldFN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2UnO1xuaW1wb3J0IHsgc2V0Q2xhc3NOYW1lIH0gZnJvbSAnLi9zZXQtY2xhc3MtbmFtZSc7XG5pbXBvcnQgeyByZWdpc3RlcmQgfSBmcm9tICcuL3JlZ2lzdGVyZC1kYic7XG5pbXBvcnQgeyBFUlJPUl9NU0dfQ0xBU1NfV0lUSE9VVF9ERUNPUkFUT1IgfSBmcm9tICcuL2Vycm9ycy1tZXNzYWdlcyc7XG4vKiAqL1xuLyogKi9cbiAgXG5cbmZ1bmN0aW9uIGdldENsYXNzZXMoKTogTW9kZWxzLkNsYXNzTWV0YVtdIHtcbiAgY29uc3QgcyA9IGdldFN0b3JhZ2UoKTtcbiAgcmV0dXJuIHNbU1lNQk9MLkNMQVNTRVNdIGFzIGFueTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgQ0xBU1NOQU1FIHtcblxuICBleHBvcnQgZnVuY3Rpb24gZ2V0Q2xhc3NDb25maWcodGFyZ2V0OiBGdW5jdGlvbiwgY29uZmlnczogTW9kZWxzLkNsYXNzQ29uZmlnW10gPSBbXSwgY2FsbGVyVGFyZ2V0PzogRnVuY3Rpb24pOiBNb2RlbHMuQ2xhc3NDb25maWdbXSB7XG4gICAgaWYgKCFfLmlzRnVuY3Rpb24odGFyZ2V0KSkge1xuICAgICAgdGhyb3cgYFt0eXBlc2NyaXB0LWNsYXNzLWhlbHBlcl1bZ2V0Q2xhc3NDb25maWddIENhbm5vdCBnZXQgY2xhc3MgY29uZmlnIGZyb206ICR7dGFyZ2V0fWBcbiAgICB9XG5cbiAgICBsZXQgY29uZmlnOiBNb2RlbHMuQ2xhc3NDb25maWc7XG4gICAgY29uc3QgcGFyZW50Q2xhc3MgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YodGFyZ2V0KTtcbiAgICBjb25zdCBpc1ZhbGlkUGFyZW50ID0gKF8uaXNGdW5jdGlvbihwYXJlbnRDbGFzcykgJiYgcGFyZW50Q2xhc3MubmFtZSAhPT0gJycpO1xuXG4gICAgaWYgKHJlZ2lzdGVyZC5jbGFzc2VzLmluY2x1ZGVzKHRhcmdldCkpIHtcbiAgICAgIGNvbmZpZyA9IHJlZ2lzdGVyZC5jb25maWdzW3JlZ2lzdGVyZC5jbGFzc2VzLmZpbmRJbmRleChjID0+IGMgPT09IHRhcmdldCldO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25maWcgPSBuZXcgTW9kZWxzLkNsYXNzQ29uZmlnKCk7XG4gICAgICBjb25maWcuY2xhc3NSZWZlcmVuY2UgPSB0YXJnZXQ7XG4gICAgICByZWdpc3RlcmQuY2xhc3Nlcy5wdXNoKHRhcmdldCk7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJkLmNvbmZpZ3NbcmVnaXN0ZXJkLmNsYXNzZXMuZmluZEluZGV4KGMgPT4gYyA9PT0gdGFyZ2V0KV0gPSBjb25maWc7XG4gICAgaWYgKGNhbGxlclRhcmdldCkge1xuICAgICAgY29uc3QgY2FsbGVyVGFyZ2V0Q29uZmlnID0gcmVnaXN0ZXJkLmNvbmZpZ3NbcmVnaXN0ZXJkLmNsYXNzZXMuZmluZEluZGV4KGMgPT4gYyA9PT0gY2FsbGVyVGFyZ2V0KV07XG4gICAgICBpZiAoIWNvbmZpZy52Q2hpbGRyZW4uaW5jbHVkZXMoY2FsbGVyVGFyZ2V0Q29uZmlnKSkge1xuICAgICAgICBjb25maWcudkNoaWxkcmVuLnB1c2goY2FsbGVyVGFyZ2V0Q29uZmlnKTtcbiAgICAgIH1cbiAgICAgIGNhbGxlclRhcmdldENvbmZpZy52UGFyZW50ID0gY29uZmlnO1xuICAgIH1cblxuICAgIGNvbmZpZ3MucHVzaChjb25maWcpO1xuXG4gICAgcmV0dXJuIGlzVmFsaWRQYXJlbnQgPyBnZXRDbGFzc0NvbmZpZyhwYXJlbnRDbGFzcywgY29uZmlncywgdGFyZ2V0KSA6IGNvbmZpZ3M7XG4gIH1cblxuICAvKipcbiAgICogUExFQVNFIFBST1ZJREUgTkFNRSBBUyBUWVBFRCBTVFJJTkcsIE5PVCBWQVJJQUJMRVxuICAgKiBEZWNvcmF0b3IgcmVxdXJlZCBmb3IgcHJvZHVjdGlvbiBtb2RlXG4gICAqIEBwYXJhbSBuYW1lIE5hbWUgb2YgY2xhc3NcbiAgICovXG4gIGV4cG9ydCBmdW5jdGlvbiBDTEFTU05BTUUoY2xhc3NOYW1lOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IE1vZGVscy5DTEFTU05BTUVPcHRpb25zKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQ6IEZ1bmN0aW9uKSB7XG5cbiAgICAgIHJldHVybiBzZXRDbGFzc05hbWUodGFyZ2V0LCBjbGFzc05hbWUsIG9wdGlvbnMpO1xuICAgIH0gYXMgYW55O1xuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldENsYXNzTmFtZSh0YXJnZXQ6IEZ1bmN0aW9uLCBwcm9kdWN0aW9uID0gZmFsc2UpIHtcbiAgICBpZiAoXy5pc05pbCh0YXJnZXQpKSB7XG5cblxuICAgICAgcmV0dXJuIHZvaWQgMDtcbiAgICB9XG4gICAgaWYgKF8uaXNTdHJpbmcodGFyZ2V0KSkge1xuICAgICAgY29uc29sZS5sb2codGFyZ2V0KTtcbiAgICAgIEhlbHBlcnMud2FybihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bZ2V0Q2xhc3NOYW1lXSB0YXJnZXQgaXMgc3RyaW5nOiAnJHt0YXJnZXR9JywgcHJvZHVjaXRvbjogJHtwcm9kdWN0aW9ufWApXG4gICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH1cbiAgICBpZiAoIV8uaXNGdW5jdGlvbih0YXJnZXQpKSB7XG4gICAgICBjb25zb2xlLmxvZyh0YXJnZXQpO1xuICAgICAgSGVscGVycy53YXJuKGBbdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzXVtnZXRDbGFzc05hbWVdIHRhcmdldCBpcyBub3QgYSBjbGFzc2ApXG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbmZpZ3MgPSBnZXRDbGFzc0NvbmZpZyh0YXJnZXQpO1xuICAgIGNvbnN0IGNvbmZpZyA9IF8uZmlyc3QoY29uZmlncyk7XG5cbiAgICBjb25zdCBjbGFzc05hbWVJbkJyb3dzZXIgPSBjb25maWc/LmNsYXNzTmFtZUluQnJvd3NlcjtcblxuICAgIGlmIChIZWxwZXJzLmlzQnJvd3NlciAmJiBfLmlzU3RyaW5nKGNsYXNzTmFtZUluQnJvd3NlcikpIHtcbiAgICAgIHJldHVybiBjbGFzc05hbWVJbkJyb3dzZXI7XG4gICAgfVxuXG4gICAgY29uc3QgY2xhc3NOYW1lID0gY29uZmlnPy5jbGFzc05hbWU7XG5cbiAgICBpZiAoY2xhc3NOYW1lKSB7XG4gICAgICByZXR1cm4gY2xhc3NOYW1lO1xuICAgIH1cblxuICAgIGlmIChwcm9kdWN0aW9uKSB7XG4gICAgICBjb25zb2xlLmxvZygnY2xhc3Mgd2l0aG91dCBAQ0xBU1MuTkFNRSBkZW9jcmF0b3InLCB0YXJnZXQgYXMgYW55KVxuICAgICAgdGhyb3cgbmV3IEVycm9yKEVSUk9SX01TR19DTEFTU19XSVRIT1VUX0RFQ09SQVRPUik7XG4gICAgfSBlbHNlIHtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cbiAgICB9XG4gICAgcmV0dXJuIHRhcmdldC5uYW1lO1xuICB9XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBleHBvcnQgZnVuY3Rpb24gZ2V0T2JqZWN0SW5kZXhQcm9wZXJ0eVZhbHVlKG9iajogYW55KSB7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gVGNoSGVscGVycy5nZXROYW1lRnJvbU9iamVjdChvYmopO1xuXG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuXG4gICAgaWYgKGMpIHtcbiAgICAgIHJldHVybiBjLnVuaXF1ZUtleTtcbiAgICB9XG4gIH1cblxuICAvLyBAdHMtaWdub3JlXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRDbGFzc0ZhbWlseUJ5Q2xhc3NOYW1lKGNsYXNzTmFtZTogc3RyaW5nKSB7XG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuXG4gICAgaWYgKGMpIHtcbiAgICAgIHJldHVybiBjLmNsYXNzRmFtaWx5O1xuICAgIH1cbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgZXhwb3J0IGZ1bmN0aW9uIGdldE9iamVjdENsYXNzRmFtaWx5KG9iajogYW55KSB7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gVGNoSGVscGVycy5nZXROYW1lRnJvbU9iamVjdChvYmopO1xuXG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuXG4gICAgaWYgKGMpIHtcbiAgICAgIHJldHVybiBjLmNsYXNzRmFtaWx5O1xuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRPYmplY3RJbmRleFZhbHVlKG9iajogYW55KSB7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gVGNoSGVscGVycy5nZXROYW1lRnJvbU9iamVjdChvYmopO1xuXG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuXG4gICAgaWYgKGMgJiYgXy5pc1N0cmluZyhjLnVuaXF1ZUtleSkpIHtcbiAgICAgIHJldHVybiBvYmpbYy51bmlxdWVLZXldO1xuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBnZXRDbGFzc0J5KGNsYXNzTmFtZTogc3RyaW5nIHwgRnVuY3Rpb24pOiBGdW5jdGlvbiB7XG4gICAgbGV0IHJlcztcbiAgICBpZiAoQXJyYXkuaXNBcnJheShjbGFzc05hbWUpKSB7XG4gICAgICBpZiAoY2xhc3NOYW1lLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICB0aHJvdyBgTWFwcGluZyBlcnJvci4uLiBwbGVhc2UgdXNlIHByb3BlciBjbGFzcyBuYW1lczpcbiAge1xuICAgIHByb3BlcnR5T2JqZWN0OiAnTXlDbGFzc05hbWUnLFxuICAgIHByb3BlcnR5V2l0aEFycmF5OiBbJ015Q2xhc3NOYW1lJ11cbiAgfVxuXG4gICAgICAgIGBcbiAgICAgIH1cbiAgICAgIGNsYXNzTmFtZSA9IGNsYXNzTmFtZVswXVxuICAgIH1cbiAgICBpZiAodHlwZW9mIGNsYXNzTmFtZSA9PT0gJ2Z1bmN0aW9uJykgeyAvLyBUT0RPIFFVSUNLX0ZJWFxuICAgICAgcmVzID0gY2xhc3NOYW1lO1xuICAgIH1cbiAgICBpZiAoY2xhc3NOYW1lID09PSAnRGF0ZScpIHtcbiAgICAgIHJlcyA9IERhdGU7XG4gICAgfVxuXG4gICAgaWYgKGNsYXNzTmFtZSA9PT0gJ0Zvcm1EYXRhJykge1xuICAgICAgcmVzID0gRm9ybURhdGE7XG4gICAgfVxuXG4gICAgbGV0IGMgPSBnZXRDbGFzc2VzKCkuZmluZChjID0+IGMuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpO1xuXG4gICAgaWYgKGMpIHtcbiAgICAgIHJlcyA9IGMudGFyZ2V0O1xuICAgIH1cblxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXR5cGVzY3JpcHQtY2xhc3MtaGVscGVycyBsaWIvY2xhc3NuYW1lLnRzIl19
|
|
@@ -17,9 +17,6 @@ export function describeFromClassStringify(target, parent = false) {
|
|
|
17
17
|
}
|
|
18
18
|
const classString = target.toString();
|
|
19
19
|
const matches = classString.match(FRegEx) || [];
|
|
20
|
-
/* \/\/ console\.log\(\{ */
|
|
21
|
-
/* \/\/ classString, */
|
|
22
|
-
/* \/\/ \}\); */
|
|
23
20
|
result = result.concat(matches);
|
|
24
21
|
return result.map(prop => prop
|
|
25
22
|
.replace('this.', '')
|
|
@@ -72,4 +69,4 @@ export function describeByDefaultModelsAndMapping(target) {
|
|
|
72
69
|
}
|
|
73
70
|
;
|
|
74
71
|
({}); // @--end-of-file-for-module=typescript-class-helpers lib/describe-class.ts
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpYmUtY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9wcm9qZWN0cy90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvc3JjL2xpYi9kZXNjcmliZS1jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUluQzs7O0lBR0k7QUFDSixNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBQ25ELE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxNQUFnQixFQUFFLE1BQU0sR0FBRyxLQUFLO0lBQ3pFLGFBQWE7SUFDYixJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7SUFDaEIsSUFBSSxNQUFNLEVBQUU7UUFDVixJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwRCxJQUFJLEtBQUssRUFBRTtZQUNULGFBQWE7WUFDYixNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDL0U7S0FDRjtJQUNELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN0QyxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUsvQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJO1NBQzNCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1NBQ3BCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO1NBQ2hCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO1NBQ2hCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQ2xCLENBQUE7QUFFSCxDQUFDO0FBRUQ7OztLQUdLO0FBQ0wsTUFBTSxVQUFVLGlDQUFpQyxDQUFDLE1BQWdCO0lBQ2hFLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQTtJQUNaLElBQUksTUFBTSxFQUFFO1FBQ1YsYUFBYTtRQUNiLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNoQyxhQUFhO1lBQ2IsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2lCQUN0QyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ1osYUFBYTtnQkFDYixPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUQsQ0FBQyxDQUFDO2lCQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDYixhQUFhO2dCQUNiLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztZQUN6QixDQUFDLENBQUMsQ0FBQztTQUNOO1FBQ0QsYUFBYTtRQUNiLElBQUksT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RCLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2xCLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO3FCQUNYLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDYixhQUFhO29CQUNiLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7Z0JBQ2xCLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDLENBQUE7U0FDSDthQUFNLElBQUksT0FBTyxFQUFFO1lBRWxCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2IsYUFBYTtnQkFDYixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLENBQUMsQ0FBQyxDQUFDO1NBQ047S0FDRjtJQUVELElBQUksU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xELFNBQVMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hFLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDJFQUEyRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBfIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBTWU1CT0wgfSBmcm9tICcuL3N5bWJvbHMnO1xuXG5cblxuLyoqXG4gICogQERFUFJFQ0FURURcbiAgKiBEZXNjcmliZSBmaWVsZHMgYXNzaWduZWQgaW4gY2xhc3NcbiAgKi9cbmNvbnN0IEZSZWdFeCA9IG5ldyBSZWdFeHAoLyg/OnRoaXNcXC4pKC4rPyg/PSApKS9nKTtcbmV4cG9ydCBmdW5jdGlvbiBkZXNjcmliZUZyb21DbGFzc1N0cmluZ2lmeSh0YXJnZXQ6IEZ1bmN0aW9uLCBwYXJlbnQgPSBmYWxzZSk6IHN0cmluZ1tdIHtcbiAgLy8gQHRzLWlnbm9yZVxuICB2YXIgcmVzdWx0ID0gW107XG4gIGlmIChwYXJlbnQpIHtcbiAgICB2YXIgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YodGFyZ2V0LnByb3RvdHlwZSk7XG4gICAgaWYgKHByb3RvKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICByZXN1bHQgPSByZXN1bHQuY29uY2F0KGRlc2NyaWJlRnJvbUNsYXNzU3RyaW5naWZ5KHByb3RvLmNvbnN0cnVjdG9yLCBwYXJlbnQpKTtcbiAgICB9XG4gIH1cbiAgY29uc3QgY2xhc3NTdHJpbmcgPSB0YXJnZXQudG9TdHJpbmcoKTtcbiAgY29uc3QgbWF0Y2hlcyA9IGNsYXNzU3RyaW5nLm1hdGNoKEZSZWdFeCkgfHwgW11cblxuXG5cblxuICByZXN1bHQgPSByZXN1bHQuY29uY2F0KG1hdGNoZXMpO1xuICByZXR1cm4gcmVzdWx0Lm1hcChwcm9wID0+IHByb3BcbiAgICAucmVwbGFjZSgndGhpcy4nLCAnJylcbiAgICAucmVwbGFjZSgnLicsICcnKVxuICAgIC5yZXBsYWNlKCcpJywgJycpXG4gICAgLnJlcGxhY2UoJygnLCAnJylcbiAgKVxuXG59XG5cbi8qKlxuICAgKiBEZXNjcmliZSBmaWVsZHMgYXNzaWduZSB0aHJvdWdoIEBEZWZhdWx0TW9kZWxXaXRoTWFwcGluZyBkZWNvcmF0b3JcbiAgICogd2l0aG91dCBmdW5jdGlvbnNcbiAgICovXG5leHBvcnQgZnVuY3Rpb24gZGVzY3JpYmVCeURlZmF1bHRNb2RlbHNBbmRNYXBwaW5nKHRhcmdldDogRnVuY3Rpb24pOiBzdHJpbmdbXSB7XG4gIGxldCByZXMgPSB7fVxuICBpZiAodGFyZ2V0KSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGlmICh0YXJnZXRbU1lNQk9MLkRFRkFVTFRfTU9ERUxdKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBPYmplY3Qua2V5cyh0YXJnZXRbU1lNQk9MLkRFRkFVTFRfTU9ERUxdKVxuICAgICAgICAuZmlsdGVyKGtleSA9PiB7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHJldHVybiAhXy5pc0Z1bmN0aW9uKHRhcmdldFtTWU1CT0wuREVGQVVMVF9NT0RFTF1ba2V5XSk7XG4gICAgICAgIH0pXG4gICAgICAgIC5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHJldHVybiByZXNba2V5XSA9IG51bGw7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgbGV0IG1hcHBpbmcgPSB0YXJnZXRbU1lNQk9MLk1PREVMU19NQVBQSU5HXTtcbiAgICBpZiAoXy5pc0FycmF5KG1hcHBpbmcpKSB7XG4gICAgICBtYXBwaW5nLmZvckVhY2gobSA9PiB7XG4gICAgICAgIE9iamVjdC5rZXlzKG0pXG4gICAgICAgICAgLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHJlc1trZXldID0gbnVsbDtcbiAgICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmIChtYXBwaW5nKSB7XG5cbiAgICAgIE9iamVjdC5rZXlzKG1hcHBpbmcpXG4gICAgICAgIC5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHJlc1trZXldID0gbnVsbDtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbGV0IHByb3BOYW1lcyA9IE9iamVjdC5rZXlzKHJlcykuZmlsdGVyKGYgPT4gISFmKTtcbiAgcHJvcE5hbWVzID0gKCFwcm9wTmFtZXMuaW5jbHVkZXMoJ2lkJykgPyBbJ2lkJ10gOiBbXSkuY29uY2F0KHByb3BOYW1lcyk7XG4gIHJldHVybiBwcm9wTmFtZXM7XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMgbGliL2Rlc2NyaWJlLWNsYXNzLnRzIl19
|
|
@@ -49,11 +49,9 @@ export const CLASS = {
|
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
51
51
|
const config = TchHelpers.getConfigs(target)[0];
|
|
52
|
-
/* \/\/ console\.log\(`getSingleton for \$\{target\.name\}: `, config\.singleton\) */
|
|
53
52
|
return config.singleton;
|
|
54
53
|
},
|
|
55
54
|
setSingletonObj(target, singletonObject) {
|
|
56
|
-
/* \/\/ console\.log\('SET SINGLETON', singletonObject\) */
|
|
57
55
|
if (typeof target !== 'function') {
|
|
58
56
|
console.error(`[typescript-class-helpers][setSingletonObj] Type of target is not a function`);
|
|
59
57
|
return;
|
|
@@ -67,7 +65,6 @@ export const CLASS = {
|
|
|
67
65
|
return;
|
|
68
66
|
}
|
|
69
67
|
const className = CLASS.getName(target);
|
|
70
|
-
/* \/\/ console\.log\(`SINGLETON SET for TARGET \$\{className\}`\) */
|
|
71
68
|
const config = TchHelpers.getConfigs(target)[0];
|
|
72
69
|
if (config.singleton) {
|
|
73
70
|
console.warn(`[typescript-class-helpers] You are trying to set singleton of "${className}" second time with different object.`);
|
|
@@ -106,7 +103,6 @@ export const CLASS = {
|
|
|
106
103
|
return false;
|
|
107
104
|
}
|
|
108
105
|
if (obj === anotherObj) {
|
|
109
|
-
/* \/\/ console\.log\(`EQ v1: , v2: \- class1 \$\{CLASS\.getNameFromObject\(obj\)\}, class2 \$\{CLASS\.getNameFromObject\(anotherObj\)\}`, obj, anotherObj\) */
|
|
110
106
|
return true;
|
|
111
107
|
}
|
|
112
108
|
const v1 = CLASSNAME.getObjectIndexValue(obj);
|
|
@@ -114,19 +110,12 @@ export const CLASS = {
|
|
|
114
110
|
const f1 = CLASSNAME.getObjectClassFamily(obj);
|
|
115
111
|
const f2 = CLASSNAME.getObjectClassFamily(anotherObj);
|
|
116
112
|
const isFamilyDiff = (!_.isString(f1) || !_.isString(f2) || (f1 !== f2));
|
|
117
|
-
/* \/\/ console\.log\(`DIFF FAMILY \$\{isFamilyDiff\} v1: \$\{CLASSNAME\.getObjectClassFamily\(obj\)\}, v2: \$\{CLASSNAME\.getObjectClassFamily\(anotherObj\)\} \- class1 \$\{CLASS\.getNameFromObject\(obj\)\}, class2 \$\{CLASS\.getNameFromObject\(anotherObj\)\}`\) */
|
|
118
113
|
if (isFamilyDiff) {
|
|
119
|
-
/* \/\/ console\.log\(`DIFF v1: \$\{v1\}, v2: \$\{v2\} \- class1 \$\{CLASS\.getNameFromObject\(obj\)\}, class2 \$\{CLASS\.getNameFromObject\(anotherObj\)\}`\) */
|
|
120
114
|
return false;
|
|
121
115
|
}
|
|
122
116
|
if (!CLASS.OBJECT(obj).isClassObject || !CLASS.OBJECT(anotherObj).isClassObject) {
|
|
123
|
-
/* \/\/ console\.log\(`NOT CLASS v1: \$\{v1\}, v2: \$\{v2\} \- class1 \$\{CLASS\.getNameFromObject\(obj\)\}, class2 \$\{CLASS\.getNameFromObject\(anotherObj\)\}`\) */
|
|
124
117
|
return false;
|
|
125
118
|
}
|
|
126
|
-
/* \/\/ console\.log\(`v1: \$\{v1\} ,class \$\{CLASS\.getNameFromObject\(obj\)\} ,prop: \$\{CLASS\.OBJECT\(obj\)\.indexProperty\}`\) */
|
|
127
|
-
/* \/\/ console\.log\(`v2: \$\{v2\} ,class \$\{CLASS\.getNameFromObject\(anotherObj\)\} ,prop: \$\{CLASS\.OBJECT\(anotherObj\)\.indexProperty\}`\) */
|
|
128
|
-
/* \/\/ console\.log\(`v1: \$\{v1\}, v2: \$\{v2\} \- class1 \$\{CLASS\.getNameFromObject\(obj\)\}, class2 \$\{CLASS\.getNameFromObject\(anotherObj\)\}`\) */
|
|
129
|
-
/* \/\/ console\.log\(''\) */
|
|
130
119
|
if ((_.isNumber(v1) && _.isNumber(v2)) || (_.isString(v1) && _.isString(v2))) {
|
|
131
120
|
const res = (v1 === v2);
|
|
132
121
|
// @ts-ignore
|
|
@@ -143,4 +132,4 @@ export const CLASS = {
|
|
|
143
132
|
export * from 'enum-values';
|
|
144
133
|
;
|
|
145
134
|
({}); // @--end-of-file-for-module=typescript-class-helpers lib/index.ts
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9wcm9qZWN0cy90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRW5DLE1BQU0sT0FBTyxVQUFVO0lBRXJCLE1BQU0sQ0FBQyxLQUFLLENBQUMsU0FBNEI7UUFDdkMsT0FBTyxTQUFTLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLENBQVM7UUFDNUIsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDbkMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxDQUFDLFdBQVcsQ0FBQztTQUN0QjtRQUNELE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFnQixF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QzdKLG9LQUFvSztnQkFDcEsscUNBQXFDO2dCQUM3QixJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRTtvQkFFNUUsTUFBTSxHQUFHLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7b0JBQ3hCLGFBQWE7b0JBQ2IsT0FBTyxHQUFHLENBQUM7aUJBQ1o7Z0JBQ0QsSUFBSSxXQUFXLEVBQUU7b0JBQ2YsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQTtpQkFDekI7Z0JBQ0QsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1NBQ0YsQ0FBQTtJQUNILENBQUM7Q0FDRixDQUFBO0FBRUQsY0FBYyxhQUFhLENBQUM7QUFFM0IsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxrRUFBa0UiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgQ0xBU1NOQU1FIH0gZnJvbSAnLi9jbGFzc25hbWUnO1xuaW1wb3J0IHsgZGVzY3JpYmVGcm9tQ2xhc3NTdHJpbmdpZnksIGRlc2NyaWJlQnlEZWZhdWx0TW9kZWxzQW5kTWFwcGluZyB9IGZyb20gJy4vZGVzY3JpYmUtY2xhc3MnO1xuaW1wb3J0IHsgTW9kZWxzIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgc2V0Q2xhc3NOYW1lIH0gZnJvbSAnLi9zZXQtY2xhc3MtbmFtZSc7XG5cbmV4cG9ydCB7IE1vZGVscyB9IGZyb20gJy4vbW9kZWxzJztcbmV4cG9ydCB7IFNZTUJPTCB9IGZyb20gJy4vc3ltYm9scyc7XG5cbmV4cG9ydCBjbGFzcyBUY2hIZWxwZXJzIHtcblxuICBzdGF0aWMgZ2V0QnkoY2xhc3NOYW1lOiBzdHJpbmcgfCBGdW5jdGlvbikge1xuICAgIHJldHVybiBDTEFTU05BTUUuZ2V0Q2xhc3NCeShjbGFzc05hbWUpO1xuICB9XG5cbiAgc3RhdGljIGdldEZyb21PYmplY3QobzogT2JqZWN0KSB7XG4gICAgaWYgKF8uaXNVbmRlZmluZWQobykgfHwgXy5pc051bGwobykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKG8uY29uc3RydWN0b3IpIHtcbiAgICAgIHJldHVybiBvLmNvbnN0cnVjdG9yO1xuICAgIH1cbiAgICBjb25zdCBwID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pXG4gICAgcmV0dXJuIHAgJiYgcC5jb25zdHJ1Y3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXROYW1lKHRhcmdldDogRnVuY3Rpb24sIHByb2R1Y3Rpb24gPSBmYWxzZSkge1xuICAgIHJldHVybiBDTEFTU05BTUUuZ2V0Q2xhc3NOYW1lKHRhcmdldCwgcHJvZHVjdGlvbikgYXMgc3RyaW5nO1xuICB9XG5cbiAgc3RhdGljIGdldE5hbWVGcm9tT2JqZWN0KG86IE9iamVjdCkge1xuICAgIGNvbnN0IGZuQ0xhc3MgPSB0aGlzLmdldEZyb21PYmplY3Qobyk7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmFtZShmbkNMYXNzKTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRDb25maWdzKHRhcmdldDogRnVuY3Rpb24pOiBNb2RlbHMuQ2xhc3NDb25maWdbXSB7XG4gICAgcmV0dXJuIENMQVNTTkFNRS5nZXRDbGFzc0NvbmZpZyh0YXJnZXQpXG4gIH1cblxuICBzdGF0aWMgZGVzY3JpYmVQcm9wZXJpdGVzKHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBjb25zdCBkMSA9IGRlc2NyaWJlRnJvbUNsYXNzU3RyaW5naWZ5KHRhcmdldCk7XG4gICAgY29uc3QgZDIgPSBkZXNjcmliZUJ5RGVmYXVsdE1vZGVsc0FuZE1hcHBpbmcodGFyZ2V0KTtcbiAgICBsZXQgdW5pcSA9IHt9O1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBkMS5jb25jYXQoZDIpLmZvckVhY2gocCA9PiB1bmlxW3BdID0gcCk7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHVuaXEpXG4gICAgICAuZmlsdGVyKGQgPT4gISFkKVxuICAgICAgLmZpbHRlcihkID0+IHR5cGVvZiB0YXJnZXQucHJvdG90eXBlW2RdICE9PSAnZnVuY3Rpb24nKVxuICB9XG5cbn1cblxuXG5leHBvcnQgY29uc3QgQ0xBU1MgPSB7XG4gIE5BTUU6IENMQVNTTkFNRS5DTEFTU05BTUUsXG4gIHNldE5hbWU6IHNldENsYXNzTmFtZSxcbiAgZ2V0Qnk6IFRjaEhlbHBlcnMuZ2V0QnksXG4gIGdldFNpbmdsZXRvbjxUID0gYW55Pih0YXJnZXQ6IEZ1bmN0aW9uKSB7XG4gICAgaWYgKHR5cGVvZiB0YXJnZXQgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFt0eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnNdW3NldFNpbmdsZXRvbk9ial0gVHlwZSBvZiB0YXJnZXQgaXMgbm90IGEgZnVuY3Rpb25gKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IGNvbmZpZyA9IFRjaEhlbHBlcnMuZ2V0Q29uZmlncyh0YXJnZXQpWzBdXG4vKiAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXChgZ2V0U2luZ2xldG9uIGZvciBcXCRcXHt0YXJnZXRcXC5uYW1lXFx9OiBgLCBjb25maWdcXC5zaW5nbGV0b25cXCkgKi9cblxuICAgIHJldHVybiBjb25maWcuc2luZ2xldG9uIGFzIFQ7XG4gIH0sXG4gIHNldFNpbmdsZXRvbk9iaih0YXJnZXQ6IEZ1bmN0aW9uLCBzaW5nbGV0b25PYmplY3Q6IGFueSkge1xuLyogICAgIFxcL1xcLyBjb25zb2xlXFwubG9nXFwoJ1NFVCBTSU5HTEVUT04nLCBzaW5nbGV0b25PYmplY3RcXCkgKi9cbiAgICBpZiAodHlwZW9mIHRhcmdldCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uc29sZS5lcnJvcihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bc2V0U2luZ2xldG9uT2JqXSBUeXBlIG9mIHRhcmdldCBpcyBub3QgYSBmdW5jdGlvbmApXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShzaW5nbGV0b25PYmplY3QpKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBbdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzXVtzZXRTaW5nbGV0b25PYmpdIFNpbmdsZXRvbiBpbnN0YW5jZSBjYW50IGJlIGFuIGFycmF5YClcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygc2luZ2xldG9uT2JqZWN0ICE9PSAnb2JqZWN0Jykge1xuICAgICAgY29uc29sZS5lcnJvcihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bc2V0U2luZ2xldG9uT2JqXSBTaW5nbGV0b24gaW5zdGFuY2UgY2FudCBtdXN0IGJlIGEgb2JqZWN0YClcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGNsYXNzTmFtZSA9IENMQVNTLmdldE5hbWUodGFyZ2V0KTtcblxuXG4vKiAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXChgU0lOR0xFVE9OIFNFVCBmb3IgVEFSR0VUIFxcJFxce2NsYXNzTmFtZVxcfWBcXCkgKi9cbiAgICBjb25zdCBjb25maWcgPSBUY2hIZWxwZXJzLmdldENvbmZpZ3ModGFyZ2V0KVswXVxuXG4gICAgaWYgKGNvbmZpZy5zaW5nbGV0b24pIHtcbiAgICAgIGNvbnNvbGUud2FybihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc10gWW91IGFyZSB0cnlpbmcgdG8gc2V0IHNpbmdsZXRvbiBvZiBcIiR7Y2xhc3NOYW1lfVwiIHNlY29uZCB0aW1lIHdpdGggZGlmZmVyZW50IG9iamVjdC5gKVxuICAgIH1cblxuICAgIGNvbmZpZy5zaW5nbGV0b24gPSBzaW5nbGV0b25PYmplY3Q7XG4gIH0sXG4gIGdldENvbmZpZ3M6IFRjaEhlbHBlcnMuZ2V0Q29uZmlncyxcbiAgZ2V0Q29uZmlnOiAodGFyZ2V0OiBGdW5jdGlvbikgPT4ge1xuICAgIHJldHVybiBfLmZpcnN0KFRjaEhlbHBlcnMuZ2V0Q29uZmlncyh0YXJnZXQpKTtcbiAgfSxcbiAgZ2V0RnJvbU9iamVjdDogVGNoSGVscGVycy5nZXRGcm9tT2JqZWN0LFxuICBnZXROYW1lOiBUY2hIZWxwZXJzLmdldE5hbWUsXG4gIGdldE5hbWVGcm9tT2JqZWN0OiBUY2hIZWxwZXJzLmdldE5hbWVGcm9tT2JqZWN0LFxuICBkZXNjcmliZVByb3Blcml0ZXM6IFRjaEhlbHBlcnMuZGVzY3JpYmVQcm9wZXJpdGVzLFxuICBPQkpFQ1Q6IChvYmo6IGFueSkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBnZXQgaW5kZXhWYWx1ZSgpIHtcbiAgICAgICAgcmV0dXJuIENMQVNTTkFNRS5nZXRPYmplY3RJbmRleFZhbHVlKG9iaik7XG4gICAgICB9LFxuICAgICAgZ2V0IGluZGV4UHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiBDTEFTU05BTUUuZ2V0T2JqZWN0SW5kZXhQcm9wZXJ0eVZhbHVlKG9iaik7XG4gICAgICB9LFxuICAgICAgZ2V0IGlzQ2xhc3NPYmplY3QoKSB7XG5cbiAgICAgICAgaWYgKCFfLmlzT2JqZWN0KG9iaikgfHwgXy5pc0FycmF5KG9iaikgfHwgXy5pc1JlZ0V4cChvYmopIHx8XG4gICAgICAgICAgXy5pc0J1ZmZlcihvYmopIHx8IF8uaXNBcnJheUJ1ZmZlcihvYmopKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChfLmlzRGF0ZShvYmopKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY2xhc3NOYW1lID0gQ0xBU1MuZ2V0TmFtZUZyb21PYmplY3Qob2JqKVxuICAgICAgICByZXR1cm4gXy5pc1N0cmluZyhjbGFzc05hbWUpICYmIGNsYXNzTmFtZSAhPT0gJ09iamVjdCc7XG4gICAgICB9LFxuICAgICAgaXNFcXVhbDogKGFub3RoZXJPYmo6IGFueSwgY29tcGFyZURlZXAgPSBmYWxzZSkgPT4ge1xuICAgICAgICBpZiAoIUNMQVNTLk9CSkVDVChvYmopLmlzQ2xhc3NPYmplY3QgfHwgIUNMQVNTLk9CSkVDVChhbm90aGVyT2JqKS5pc0NsYXNzT2JqZWN0KSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvYmogPT09IGFub3RoZXJPYmopIHtcbi8qICAgICAgICAgICBcXC9cXC8gY29uc29sZVxcLmxvZ1xcKGBFUSB2MTogLCB2MjogIFxcLSBjbGFzczEgXFwkXFx7Q0xBU1NcXC5nZXROYW1lRnJvbU9iamVjdFxcKG9ialxcKVxcfSwgY2xhc3MyIFxcJFxce0NMQVNTXFwuZ2V0TmFtZUZyb21PYmplY3RcXChhbm90aGVyT2JqXFwpXFx9YCwgb2JqLCBhbm90aGVyT2JqXFwpICovXG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdjEgPSBDTEFTU05BTUUuZ2V0T2JqZWN0SW5kZXhWYWx1ZShvYmopO1xuICAgICAgICBjb25zdCB2MiA9IENMQVNTTkFNRS5nZXRPYmplY3RJbmRleFZhbHVlKGFub3RoZXJPYmopO1xuICAgICAgICBjb25zdCBmMSA9IENMQVNTTkFNRS5nZXRPYmplY3RDbGFzc0ZhbWlseShvYmopXG4gICAgICAgIGNvbnN0IGYyID0gQ0xBU1NOQU1FLmdldE9iamVjdENsYXNzRmFtaWx5KGFub3RoZXJPYmopXG4gICAgICAgIGNvbnN0IGlzRmFtaWx5RGlmZiA9ICghXy5pc1N0cmluZyhmMSkgfHwgIV8uaXNTdHJpbmcoZjIpIHx8IChmMSAhPT0gZjIpKTtcbi8qICAgICAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXChgRElGRiBGQU1JTFkgXFwkXFx7aXNGYW1pbHlEaWZmXFx9IHYxOiBcXCRcXHtDTEFTU05BTUVcXC5nZXRPYmplY3RDbGFzc0ZhbWlseVxcKG9ialxcKVxcfSwgdjI6IFxcJFxce0NMQVNTTkFNRVxcLmdldE9iamVjdENsYXNzRmFtaWx5XFwoYW5vdGhlck9ialxcKVxcfSBcXC0gY2xhc3MxIFxcJFxce0NMQVNTXFwuZ2V0TmFtZUZyb21PYmplY3RcXChvYmpcXClcXH0sIGNsYXNzMiBcXCRcXHtDTEFTU1xcLmdldE5hbWVGcm9tT2JqZWN0XFwoYW5vdGhlck9ialxcKVxcfWBcXCkgKi9cbiAgICAgICAgaWYgKGlzRmFtaWx5RGlmZikge1xuLyogICAgICAgICAgIFxcL1xcLyBjb25zb2xlXFwubG9nXFwoYERJRkYgdjE6IFxcJFxce3YxXFx9LCB2MjogXFwkXFx7djJcXH0gXFwtIGNsYXNzMSBcXCRcXHtDTEFTU1xcLmdldE5hbWVGcm9tT2JqZWN0XFwob2JqXFwpXFx9LCBjbGFzczIgXFwkXFx7Q0xBU1NcXC5nZXROYW1lRnJvbU9iamVjdFxcKGFub3RoZXJPYmpcXClcXH1gXFwpICovXG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghQ0xBU1MuT0JKRUNUKG9iaikuaXNDbGFzc09iamVjdCB8fCAhQ0xBU1MuT0JKRUNUKGFub3RoZXJPYmopLmlzQ2xhc3NPYmplY3QpIHtcbi8qICAgICAgICAgICBcXC9cXC8gY29uc29sZVxcLmxvZ1xcKGBOT1QgQ0xBU1MgdjE6IFxcJFxce3YxXFx9LCB2MjogXFwkXFx7djJcXH0gXFwtIGNsYXNzMSBcXCRcXHtDTEFTU1xcLmdldE5hbWVGcm9tT2JqZWN0XFwob2JqXFwpXFx9LCBjbGFzczIgXFwkXFx7Q0xBU1NcXC5nZXROYW1lRnJvbU9iamVjdFxcKGFub3RoZXJPYmpcXClcXH1gXFwpICovXG4gICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cblxuLyogICAgICAgICBcXC9cXC8gY29uc29sZVxcLmxvZ1xcKGB2MTogXFwkXFx7djFcXH0gLGNsYXNzIFxcJFxce0NMQVNTXFwuZ2V0TmFtZUZyb21PYmplY3RcXChvYmpcXClcXH0gLHByb3A6IFxcJFxce0NMQVNTXFwuT0JKRUNUXFwob2JqXFwpXFwuaW5kZXhQcm9wZXJ0eVxcfWBcXCkgKi9cbi8qICAgICAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXChgdjI6IFxcJFxce3YyXFx9ICxjbGFzcyBcXCRcXHtDTEFTU1xcLmdldE5hbWVGcm9tT2JqZWN0XFwoYW5vdGhlck9ialxcKVxcfSAscHJvcDogXFwkXFx7Q0xBU1NcXC5PQkpFQ1RcXChhbm90aGVyT2JqXFwpXFwuaW5kZXhQcm9wZXJ0eVxcfWBcXCkgKi9cbi8qICAgICAgICAgXFwvXFwvIGNvbnNvbGVcXC5sb2dcXChgdjE6IFxcJFxce3YxXFx9LCB2MjogXFwkXFx7djJcXH0gXFwtIGNsYXNzMSBcXCRcXHtDTEFTU1xcLmdldE5hbWVGcm9tT2JqZWN0XFwob2JqXFwpXFx9LCBjbGFzczIgXFwkXFx7Q0xBU1NcXC5nZXROYW1lRnJvbU9iamVjdFxcKGFub3RoZXJPYmpcXClcXH1gXFwpICovXG4vKiAgICAgICAgIFxcL1xcLyBjb25zb2xlXFwubG9nXFwoJydcXCkgKi9cbiAgICAgICAgaWYgKChfLmlzTnVtYmVyKHYxKSAmJiBfLmlzTnVtYmVyKHYyKSkgfHwgKF8uaXNTdHJpbmcodjEpICYmIF8uaXNTdHJpbmcodjIpKSkge1xuXG4gICAgICAgICAgY29uc3QgcmVzID0gKHYxID09PSB2Mik7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbXBhcmVEZWVwKSB7XG4gICAgICAgICAgcmV0dXJuIF8uaXNFcXVhbCh2MSwgdjIpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgKiBmcm9tICdlbnVtLXZhbHVlcyc7XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMgbGliL2luZGV4LnRzIl19
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9wcm9qZWN0cy90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRW5DLE1BQU0sT0FBTyxVQUFVO0lBRXJCLE1BQU0sQ0FBQyxLQUFLLENBQUMsU0FBNEI7UUFDdkMsT0FBTyxTQUFTLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLENBQVM7UUFDNUIsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDbkMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxDQUFDLFdBQVcsQ0FBQztTQUN0QjtRQUNELE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbEMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFnQixFQUFFLFVBQVUsR0FBRyxLQUFLO1FBQ2pELE9BQU8sU0FBUyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFXLENBQUM7SUFDOUQsQ0FBQztJQUVELE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFTO1FBQ2hDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQWdCO1FBQ2hDLE9BQU8sU0FBUyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBRUQsTUFBTSxDQUFDLGtCQUFrQixDQUFDLE1BQWdCO1FBQ3hDLE1BQU0sRUFBRSxHQUFHLDBCQUEwQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLE1BQU0sRUFBRSxHQUFHLGlDQUFpQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JELElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNkLGFBQWE7UUFDYixFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN4QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ3JCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDaEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLFVBQVUsQ0FBQyxDQUFBO0lBQzNELENBQUM7Q0FFRjtBQUdELE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRztJQUNuQixJQUFJLEVBQUUsU0FBUyxDQUFDLFNBQVM7SUFDekIsT0FBTyxFQUFFLFlBQVk7SUFDckIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO0lBQ3ZCLFlBQVksQ0FBVSxNQUFnQjtRQUNwQyxJQUFJLE9BQU8sTUFBTSxLQUFLLFVBQVUsRUFBRTtZQUNoQyxPQUFPLENBQUMsS0FBSyxDQUFDLDhFQUE4RSxDQUFDLENBQUE7WUFDN0YsT0FBTTtTQUNQO1FBQ0QsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUcvQyxPQUFPLE1BQU0sQ0FBQyxTQUFjLENBQUM7SUFDL0IsQ0FBQztJQUNELGVBQWUsQ0FBQyxNQUFnQixFQUFFLGVBQW9CO1FBRXBELElBQUksT0FBTyxNQUFNLEtBQUssVUFBVSxFQUFFO1lBQ2hDLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEVBQThFLENBQUMsQ0FBQTtZQUM3RixPQUFNO1NBQ1A7UUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDbEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxpRkFBaUYsQ0FBQyxDQUFBO1lBQ2hHLE9BQU07U0FDUDtRQUVELElBQUksT0FBTyxlQUFlLEtBQUssUUFBUSxFQUFFO1lBQ3ZDLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0ZBQXNGLENBQUMsQ0FBQTtZQUNyRyxPQUFNO1NBQ1A7UUFFRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBSXhDLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFFL0MsSUFBSSxNQUFNLENBQUMsU0FBUyxFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsa0VBQWtFLFNBQVMsc0NBQXNDLENBQUMsQ0FBQTtTQUNoSTtRQUVELE1BQU0sQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDO0lBQ3JDLENBQUM7SUFDRCxVQUFVLEVBQUUsVUFBVSxDQUFDLFVBQVU7SUFDakMsU0FBUyxFQUFFLENBQUMsTUFBZ0IsRUFBRSxFQUFFO1FBQzlCLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUNELGFBQWEsRUFBRSxVQUFVLENBQUMsYUFBYTtJQUN2QyxPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU87SUFDM0IsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLGlCQUFpQjtJQUMvQyxrQkFBa0IsRUFBRSxVQUFVLENBQUMsa0JBQWtCO0lBQ2pELE1BQU0sRUFBRSxDQUFDLEdBQVEsRUFBRSxFQUFFO1FBQ25CLE9BQU87WUFDTCxJQUFJLFVBQVU7Z0JBQ1osT0FBTyxTQUFTLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUMsQ0FBQztZQUNELElBQUksYUFBYTtnQkFDZixPQUFPLFNBQVMsQ0FBQywyQkFBMkIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwRCxDQUFDO1lBQ0QsSUFBSSxhQUFhO2dCQUVmLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7b0JBQ3ZELENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDekMsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNqQixPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFDRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBQzlDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLEtBQUssUUFBUSxDQUFDO1lBQ3pELENBQUM7WUFDRCxPQUFPLEVBQUUsQ0FBQyxVQUFlLEVBQUUsV0FBVyxHQUFHLEtBQUssRUFBRSxFQUFFO2dCQUNoRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxhQUFhLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsRUFBRTtvQkFDL0UsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsSUFBSSxHQUFHLEtBQUssVUFBVSxFQUFFO29CQUV0QixPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFDRCxNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzlDLE1BQU0sRUFBRSxHQUFHLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDckQsTUFBTSxFQUFFLEdBQUcsU0FBUyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFBO2dCQUM5QyxNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLENBQUE7Z0JBQ3JELE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUV6RSxJQUFJLFlBQVksRUFBRTtvQkFFaEIsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsYUFBYSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUFhLEVBQUU7b0JBRS9FLE9BQU8sS0FBSyxDQUFBO2lCQUNiO2dCQU1ELElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFO29CQUU1RSxNQUFNLEdBQUcsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztvQkFDeEIsYUFBYTtvQkFDYixPQUFPLEdBQUcsQ0FBQztpQkFDWjtnQkFDRCxJQUFJLFdBQVcsRUFBRTtvQkFDZixPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFBO2lCQUN6QjtnQkFDRCxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7U0FDRixDQUFBO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUFFRCxjQUFjLGFBQWEsQ0FBQztBQUUzQixDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGtFQUFrRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBfIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBDTEFTU05BTUUgfSBmcm9tICcuL2NsYXNzbmFtZSc7XG5pbXBvcnQgeyBkZXNjcmliZUZyb21DbGFzc1N0cmluZ2lmeSwgZGVzY3JpYmVCeURlZmF1bHRNb2RlbHNBbmRNYXBwaW5nIH0gZnJvbSAnLi9kZXNjcmliZS1jbGFzcyc7XG5pbXBvcnQgeyBNb2RlbHMgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBzZXRDbGFzc05hbWUgfSBmcm9tICcuL3NldC1jbGFzcy1uYW1lJztcblxuZXhwb3J0IHsgTW9kZWxzIH0gZnJvbSAnLi9tb2RlbHMnO1xuZXhwb3J0IHsgU1lNQk9MIH0gZnJvbSAnLi9zeW1ib2xzJztcblxuZXhwb3J0IGNsYXNzIFRjaEhlbHBlcnMge1xuXG4gIHN0YXRpYyBnZXRCeShjbGFzc05hbWU6IHN0cmluZyB8IEZ1bmN0aW9uKSB7XG4gICAgcmV0dXJuIENMQVNTTkFNRS5nZXRDbGFzc0J5KGNsYXNzTmFtZSk7XG4gIH1cblxuICBzdGF0aWMgZ2V0RnJvbU9iamVjdChvOiBPYmplY3QpIHtcbiAgICBpZiAoXy5pc1VuZGVmaW5lZChvKSB8fCBfLmlzTnVsbChvKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoby5jb25zdHJ1Y3Rvcikge1xuICAgICAgcmV0dXJuIG8uY29uc3RydWN0b3I7XG4gICAgfVxuICAgIGNvbnN0IHAgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YobylcbiAgICByZXR1cm4gcCAmJiBwLmNvbnN0cnVjdG9yO1xuICB9XG5cbiAgc3RhdGljIGdldE5hbWUodGFyZ2V0OiBGdW5jdGlvbiwgcHJvZHVjdGlvbiA9IGZhbHNlKSB7XG4gICAgcmV0dXJuIENMQVNTTkFNRS5nZXRDbGFzc05hbWUodGFyZ2V0LCBwcm9kdWN0aW9uKSBhcyBzdHJpbmc7XG4gIH1cblxuICBzdGF0aWMgZ2V0TmFtZUZyb21PYmplY3QobzogT2JqZWN0KSB7XG4gICAgY29uc3QgZm5DTGFzcyA9IHRoaXMuZ2V0RnJvbU9iamVjdChvKTtcbiAgICByZXR1cm4gdGhpcy5nZXROYW1lKGZuQ0xhc3MpO1xuICB9XG5cbiAgc3RhdGljIGdldENvbmZpZ3ModGFyZ2V0OiBGdW5jdGlvbik6IE1vZGVscy5DbGFzc0NvbmZpZ1tdIHtcbiAgICByZXR1cm4gQ0xBU1NOQU1FLmdldENsYXNzQ29uZmlnKHRhcmdldClcbiAgfVxuXG4gIHN0YXRpYyBkZXNjcmliZVByb3Blcml0ZXModGFyZ2V0OiBGdW5jdGlvbikge1xuICAgIGNvbnN0IGQxID0gZGVzY3JpYmVGcm9tQ2xhc3NTdHJpbmdpZnkodGFyZ2V0KTtcbiAgICBjb25zdCBkMiA9IGRlc2NyaWJlQnlEZWZhdWx0TW9kZWxzQW5kTWFwcGluZyh0YXJnZXQpO1xuICAgIGxldCB1bmlxID0ge307XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGQxLmNvbmNhdChkMikuZm9yRWFjaChwID0+IHVuaXFbcF0gPSBwKTtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModW5pcSlcbiAgICAgIC5maWx0ZXIoZCA9PiAhIWQpXG4gICAgICAuZmlsdGVyKGQgPT4gdHlwZW9mIHRhcmdldC5wcm90b3R5cGVbZF0gIT09ICdmdW5jdGlvbicpXG4gIH1cblxufVxuXG5cbmV4cG9ydCBjb25zdCBDTEFTUyA9IHtcbiAgTkFNRTogQ0xBU1NOQU1FLkNMQVNTTkFNRSxcbiAgc2V0TmFtZTogc2V0Q2xhc3NOYW1lLFxuICBnZXRCeTogVGNoSGVscGVycy5nZXRCeSxcbiAgZ2V0U2luZ2xldG9uPFQgPSBhbnk+KHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBpZiAodHlwZW9mIHRhcmdldCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uc29sZS5lcnJvcihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bc2V0U2luZ2xldG9uT2JqXSBUeXBlIG9mIHRhcmdldCBpcyBub3QgYSBmdW5jdGlvbmApXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3QgY29uZmlnID0gVGNoSGVscGVycy5nZXRDb25maWdzKHRhcmdldClbMF1cblxuXG4gICAgcmV0dXJuIGNvbmZpZy5zaW5nbGV0b24gYXMgVDtcbiAgfSxcbiAgc2V0U2luZ2xldG9uT2JqKHRhcmdldDogRnVuY3Rpb24sIHNpbmdsZXRvbk9iamVjdDogYW55KSB7XG5cbiAgICBpZiAodHlwZW9mIHRhcmdldCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uc29sZS5lcnJvcihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bc2V0U2luZ2xldG9uT2JqXSBUeXBlIG9mIHRhcmdldCBpcyBub3QgYSBmdW5jdGlvbmApXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShzaW5nbGV0b25PYmplY3QpKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBbdHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzXVtzZXRTaW5nbGV0b25PYmpdIFNpbmdsZXRvbiBpbnN0YW5jZSBjYW50IGJlIGFuIGFycmF5YClcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygc2luZ2xldG9uT2JqZWN0ICE9PSAnb2JqZWN0Jykge1xuICAgICAgY29uc29sZS5lcnJvcihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc11bc2V0U2luZ2xldG9uT2JqXSBTaW5nbGV0b24gaW5zdGFuY2UgY2FudCBtdXN0IGJlIGEgb2JqZWN0YClcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGNsYXNzTmFtZSA9IENMQVNTLmdldE5hbWUodGFyZ2V0KTtcblxuXG5cbiAgICBjb25zdCBjb25maWcgPSBUY2hIZWxwZXJzLmdldENvbmZpZ3ModGFyZ2V0KVswXVxuXG4gICAgaWYgKGNvbmZpZy5zaW5nbGV0b24pIHtcbiAgICAgIGNvbnNvbGUud2FybihgW3R5cGVzY3JpcHQtY2xhc3MtaGVscGVyc10gWW91IGFyZSB0cnlpbmcgdG8gc2V0IHNpbmdsZXRvbiBvZiBcIiR7Y2xhc3NOYW1lfVwiIHNlY29uZCB0aW1lIHdpdGggZGlmZmVyZW50IG9iamVjdC5gKVxuICAgIH1cblxuICAgIGNvbmZpZy5zaW5nbGV0b24gPSBzaW5nbGV0b25PYmplY3Q7XG4gIH0sXG4gIGdldENvbmZpZ3M6IFRjaEhlbHBlcnMuZ2V0Q29uZmlncyxcbiAgZ2V0Q29uZmlnOiAodGFyZ2V0OiBGdW5jdGlvbikgPT4ge1xuICAgIHJldHVybiBfLmZpcnN0KFRjaEhlbHBlcnMuZ2V0Q29uZmlncyh0YXJnZXQpKTtcbiAgfSxcbiAgZ2V0RnJvbU9iamVjdDogVGNoSGVscGVycy5nZXRGcm9tT2JqZWN0LFxuICBnZXROYW1lOiBUY2hIZWxwZXJzLmdldE5hbWUsXG4gIGdldE5hbWVGcm9tT2JqZWN0OiBUY2hIZWxwZXJzLmdldE5hbWVGcm9tT2JqZWN0LFxuICBkZXNjcmliZVByb3Blcml0ZXM6IFRjaEhlbHBlcnMuZGVzY3JpYmVQcm9wZXJpdGVzLFxuICBPQkpFQ1Q6IChvYmo6IGFueSkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBnZXQgaW5kZXhWYWx1ZSgpIHtcbiAgICAgICAgcmV0dXJuIENMQVNTTkFNRS5nZXRPYmplY3RJbmRleFZhbHVlKG9iaik7XG4gICAgICB9LFxuICAgICAgZ2V0IGluZGV4UHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiBDTEFTU05BTUUuZ2V0T2JqZWN0SW5kZXhQcm9wZXJ0eVZhbHVlKG9iaik7XG4gICAgICB9LFxuICAgICAgZ2V0IGlzQ2xhc3NPYmplY3QoKSB7XG5cbiAgICAgICAgaWYgKCFfLmlzT2JqZWN0KG9iaikgfHwgXy5pc0FycmF5KG9iaikgfHwgXy5pc1JlZ0V4cChvYmopIHx8XG4gICAgICAgICAgXy5pc0J1ZmZlcihvYmopIHx8IF8uaXNBcnJheUJ1ZmZlcihvYmopKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChfLmlzRGF0ZShvYmopKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY2xhc3NOYW1lID0gQ0xBU1MuZ2V0TmFtZUZyb21PYmplY3Qob2JqKVxuICAgICAgICByZXR1cm4gXy5pc1N0cmluZyhjbGFzc05hbWUpICYmIGNsYXNzTmFtZSAhPT0gJ09iamVjdCc7XG4gICAgICB9LFxuICAgICAgaXNFcXVhbDogKGFub3RoZXJPYmo6IGFueSwgY29tcGFyZURlZXAgPSBmYWxzZSkgPT4ge1xuICAgICAgICBpZiAoIUNMQVNTLk9CSkVDVChvYmopLmlzQ2xhc3NPYmplY3QgfHwgIUNMQVNTLk9CSkVDVChhbm90aGVyT2JqKS5pc0NsYXNzT2JqZWN0KSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvYmogPT09IGFub3RoZXJPYmopIHtcblxuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHYxID0gQ0xBU1NOQU1FLmdldE9iamVjdEluZGV4VmFsdWUob2JqKTtcbiAgICAgICAgY29uc3QgdjIgPSBDTEFTU05BTUUuZ2V0T2JqZWN0SW5kZXhWYWx1ZShhbm90aGVyT2JqKTtcbiAgICAgICAgY29uc3QgZjEgPSBDTEFTU05BTUUuZ2V0T2JqZWN0Q2xhc3NGYW1pbHkob2JqKVxuICAgICAgICBjb25zdCBmMiA9IENMQVNTTkFNRS5nZXRPYmplY3RDbGFzc0ZhbWlseShhbm90aGVyT2JqKVxuICAgICAgICBjb25zdCBpc0ZhbWlseURpZmYgPSAoIV8uaXNTdHJpbmcoZjEpIHx8ICFfLmlzU3RyaW5nKGYyKSB8fCAoZjEgIT09IGYyKSk7XG5cbiAgICAgICAgaWYgKGlzRmFtaWx5RGlmZikge1xuXG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghQ0xBU1MuT0JKRUNUKG9iaikuaXNDbGFzc09iamVjdCB8fCAhQ0xBU1MuT0JKRUNUKGFub3RoZXJPYmopLmlzQ2xhc3NPYmplY3QpIHtcblxuICAgICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgICB9XG5cblxuXG5cblxuICAgICAgICBpZiAoKF8uaXNOdW1iZXIodjEpICYmIF8uaXNOdW1iZXIodjIpKSB8fCAoXy5pc1N0cmluZyh2MSkgJiYgXy5pc1N0cmluZyh2MikpKSB7XG5cbiAgICAgICAgICBjb25zdCByZXMgPSAodjEgPT09IHYyKTtcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29tcGFyZURlZXApIHtcbiAgICAgICAgICByZXR1cm4gXy5pc0VxdWFsKHYxLCB2MilcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCAqIGZyb20gJ2VudW0tdmFsdWVzJztcblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXR5cGVzY3JpcHQtY2xhc3MtaGVscGVycyBsaWIvaW5kZXgudHMiXX0=
|
|
@@ -27,7 +27,6 @@ export function setClassName(target, className, options) {
|
|
|
27
27
|
config.className = className;
|
|
28
28
|
config.uniqueKey = uniqueKey;
|
|
29
29
|
config.classNameInBrowser = classNameInBrowser;
|
|
30
|
-
/* \/\/ console\.log\(`Setting class Name to "\$\{target\.name\}"`\) */
|
|
31
30
|
}
|
|
32
31
|
const existed = getClasses()
|
|
33
32
|
.find(f => f.className === className);
|
|
@@ -61,21 +60,17 @@ export function setClassName(target, className, options) {
|
|
|
61
60
|
const obj = {
|
|
62
61
|
// @ts-ignore
|
|
63
62
|
decoratedConstructor: function (...args) {
|
|
64
|
-
/* \/\/ console\.log\(`DECORATED CONSTRUCTOR OF \$\{Original\.name\}`\) */
|
|
65
63
|
const context = Original.apply(this, args);
|
|
66
64
|
const existedSingleton = CLASS.getSingleton(Original);
|
|
67
65
|
if (!existedSingleton || singleton === 'last-instance') {
|
|
68
66
|
CLASS.setSingletonObj(Original, this);
|
|
69
67
|
CLASS.setSingletonObj(obj.decoratedConstructor, this);
|
|
70
|
-
/* \/\/ console\.log\(`Singleton created for "\$\{className\}", mode: \$\{singleton\} `\); */
|
|
71
68
|
}
|
|
72
69
|
else {
|
|
73
|
-
/* \/\/ console\.log\('ingleton exists'\) */
|
|
74
70
|
}
|
|
75
71
|
return context;
|
|
76
72
|
}
|
|
77
73
|
};
|
|
78
|
-
/* \/\/ copy prototype so intanceof operator still works */
|
|
79
74
|
obj.decoratedConstructor.prototype = Original.prototype;
|
|
80
75
|
// @ts-ignore
|
|
81
76
|
Object.keys(Original).forEach((name) => { obj.decoratedConstructor[name] = Original[name]; });
|
|
@@ -83,17 +78,13 @@ export function setClassName(target, className, options) {
|
|
|
83
78
|
value: className,
|
|
84
79
|
configurable: true,
|
|
85
80
|
});
|
|
86
|
-
/* \/\/ \(obj\.decoratedConstructor as any\)\.name = className; */
|
|
87
|
-
/* \/\/ console\.log\('return new contruor', decoratedConstructor\) */
|
|
88
81
|
return obj.decoratedConstructor;
|
|
89
82
|
}
|
|
90
83
|
else if (singleton === 'autoinstance') {
|
|
91
|
-
/* \/\/ console\.log\(`AUTOINSTANCE FOR \$\{target\.name\}`\) */
|
|
92
84
|
const auto = new Original();
|
|
93
85
|
CLASS.setSingletonObj(Original, auto);
|
|
94
|
-
/* \/\/ console\.log\(`Singleton created for "\$\{className\}", mode: \$\{singleton\} `\) */
|
|
95
86
|
}
|
|
96
87
|
}
|
|
97
88
|
;
|
|
98
89
|
({}); // @--end-of-file-for-module=typescript-class-helpers lib/set-class-name.ts
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWNsYXNzLW5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9wcm9qZWN0cy90eXBlc2NyaXB0LWNsYXNzLWhlbHBlcnMvc3JjL2xpYi9zZXQtY2xhc3MtbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVuQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUdoQyxTQUFTLFVBQVU7SUFDakIsTUFBTSxDQUFDLEdBQUcsVUFBVSxFQUFFLENBQUM7SUFDdkIsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBUSxDQUFDO0FBQ2xDLENBQUM7QUFFRCxhQUFhO0FBQ2IsTUFBTSxVQUFVLFlBQVksQ0FBQyxNQUFnQixFQUFFLFNBQWlCLEVBQUUsT0FBaUM7SUFFakcsSUFBSSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFFLEdBQUcsT0FBTyxJQUFJO1FBQ3pFLFdBQVcsRUFBRSxLQUFLLENBQUM7UUFDbkIsU0FBUyxFQUFFLElBQUk7UUFDZixrQkFBa0IsRUFBRSxLQUFLLENBQUM7UUFDMUIsU0FBUyxFQUFFLEtBQUssQ0FBQztRQUNqQixZQUFZLEVBQUUsS0FBSztLQUNPLENBQUM7SUFFN0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLEVBQUU7UUFDcEUsU0FBUyxH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b0JBQW9CLEVBQUUsTUFBTSxFQUFFO1lBQ3RELEtBQUssRUFBRSxTQUFTO1lBQ2hCLFlBQVksRUFBRSxJQUFJO1NBQ25CLENBQUMsQ0FBQTtRQUdGLE9BQU8sR0FBRyxDQUFDLG9CQUFvQixDQUFDO0tBQ2pDO1NBQU0sSUFBSSxTQUFTLEtBQUssY0FBYyxFQUFFO1FBR3ZDLE1BQU0sSUFBSSxHQUFHLElBQUssUUFBZ0IsRUFBRSxDQUFDO1FBQ3JDLEtBQUssQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFBO0tBR3RDO0FBQ0gsQ0FBQztBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMkVBQTJFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IFNZTUJPTCB9IGZyb20gJy4vc3ltYm9scyc7XG5pbXBvcnQgeyBNb2RlbHMgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBnZXRTdG9yYWdlIH0gZnJvbSAnLi9zdG9yYWdlJztcbmltcG9ydCB7IENMQVNTTkFNRSB9IGZyb20gJy4vY2xhc3NuYW1lJztcbmltcG9ydCB7IENMQVNTIH0gZnJvbSAnLi9pbmRleCc7XG5cblxuZnVuY3Rpb24gZ2V0Q2xhc3NlcygpOiBNb2RlbHMuQ2xhc3NNZXRhW10ge1xuICBjb25zdCBzID0gZ2V0U3RvcmFnZSgpO1xuICByZXR1cm4gc1tTWU1CT0wuQ0xBU1NFU10gYXMgYW55O1xufVxuXG4vLyBAdHMtaWdub3JlXG5leHBvcnQgZnVuY3Rpb24gc2V0Q2xhc3NOYW1lKHRhcmdldDogRnVuY3Rpb24sIGNsYXNzTmFtZTogc3RyaW5nLCBvcHRpb25zPzogTW9kZWxzLkNMQVNTTkFNRU9wdGlvbnMpIHtcblxuICBsZXQgeyBjbGFzc0ZhbWlseSwgdW5pcXVlS2V5LCBjbGFzc05hbWVJbkJyb3dzZXIsIHNpbmdsZXRvbiB9ID0gb3B0aW9ucyB8fCB7XG4gICAgY2xhc3NGYW1pbHk6IHZvaWQgMCxcbiAgICB1bmlxdWVLZXk6ICdpZCcsXG4gICAgY2xhc3NOYW1lSW5Ccm93c2VyOiB2b2lkIDAsXG4gICAgc2luZ2xldG9uOiB2b2lkIDAsXG4gICAgYXV0b2luc3RhbmNlOiBmYWxzZVxuICB9IGFzIE1vZGVscy5DTEFTU05BTUVPcHRpb25zO1xuXG4gIGlmICghXy5pc1VuZGVmaW5lZChzaW5nbGV0b24pICYmIF8uaXNCb29sZWFuKHNpbmdsZXRvbikgJiYgc2luZ2xldG9uKSB7XG4gICAgc2luZ2xldG9uID0gJ2ZpcnN0LWluc3RhbmNlJ1xuICB9XG5cbiAgaWYgKCF1bmlxdWVLZXkpIHtcbiAgICB1bmlxdWVLZXkgPSAnaWQnXG4gIH1cblxuICBpZiAodGFyZ2V0KSB7XG4gICAgY29uc3QgY29uZmlnID0gXy5maXJzdChDTEFTU05BTUUuZ2V0Q2xhc3NDb25maWcodGFyZ2V0KSk7XG4gICAgY29uZmlnLmNsYXNzTmFtZSA9IGNsYXNzTmFtZTtcbiAgICBjb25maWcudW5pcXVlS2V5ID0gdW5pcXVlS2V5O1xuICAgIGNvbmZpZy5jbGFzc05hbWVJbkJyb3dzZXIgPSBjbGFzc05hbWVJbkJyb3dzZXI7XG5cbiAgfVxuXG4gIGNvbnN0IGV4aXN0ZWQgPSAoZ2V0Q2xhc3NlcygpIGFzIHsgY2xhc3NOYW1lOiBzdHJpbmc7IHRhcmdldDogRnVuY3Rpb247IH1bXSlcbiAgICAuZmluZChmID0+IGYuY2xhc3NOYW1lID09PSBjbGFzc05hbWUpXG5cbiAgaWYgKGV4aXN0ZWQpIHtcbiAgICBleGlzdGVkLnRhcmdldCA9IHRhcmdldDtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCByZXMgPSB7XG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjbGFzc05hbWVJbkJyb3dzZXIsXG4gICAgICB0YXJnZXQsXG4gICAgICB1bmlxdWVLZXksXG4gICAgICBjbGFzc0ZhbWlseVxuICAgIH1cblxuICAgIGlmIChfLmlzVW5kZWZpbmVkKGNsYXNzRmFtaWx5KSkge1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlcywgJ2NsYXNzRmFtaWx5Jywge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBjb25zdCBwYXJlbnQgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YodGFyZ2V0KTtcbiAgICAgICAgICBpZiAoIV8uaXNGdW5jdGlvbihwYXJlbnQpIHx8IHBhcmVudC5uYW1lID09PSAnT2JqZWN0JyB8fCBwYXJlbnQubmFtZSA9PT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiBjbGFzc05hbWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGNsYXNzTmFtZU5ldyA9IENMQVNTTkFNRS5nZXRDbGFzc05hbWUocGFyZW50KVxuICAgICAgICAgIHJldHVybiBDTEFTU05BTUUuZ2V0Q2xhc3NGYW1pbHlCeUNsYXNzTmFtZShjbGFzc05hbWVOZXcpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICAgIGdldENsYXNzZXMoKS5wdXNoKHJlcylcbiAgfVxuICBjb25zdCBPcmlnaW5hbCA9IHRhcmdldDtcblxuXG4gIGlmIChzaW5nbGV0b24gPT09ICdmaXJzdC1pbnN0YW5jZScgfHwgc2luZ2xldG9uID09PSAnbGFzdC1pbnN0YW5jZScpIHtcbiAgICBjb25zdCBvYmogPSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBkZWNvcmF0ZWRDb25zdHJ1Y3RvcjogZnVuY3Rpb24gKC4uLmFyZ3MpIHtcblxuICAgICAgICBjb25zdCBjb250ZXh0ID0gT3JpZ2luYWwuYXBwbHkodGhpcywgYXJncyk7XG5cbiAgICAgICAgY29uc3QgZXhpc3RlZFNpbmdsZXRvbiA9IENMQVNTLmdldFNpbmdsZXRvbihPcmlnaW5hbClcbiAgICAgICAgaWYgKCFleGlzdGVkU2luZ2xldG9uIHx8IHNpbmdsZXRvbiA9PT0gJ2xhc3QtaW5zdGFuY2UnKSB7XG4gICAgICAgICAgQ0xBU1Muc2V0U2luZ2xldG9uT2JqKE9yaWdpbmFsLCB0aGlzKVxuICAgICAgICAgIENMQVNTLnNldFNpbmdsZXRvbk9iaihvYmouZGVjb3JhdGVkQ29uc3RydWN0b3IsIHRoaXMpXG5cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcblxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbnRleHQ7XG4gICAgICB9XG4gICAgfTtcblxuXG4gICAgb2JqLmRlY29yYXRlZENvbnN0cnVjdG9yLnByb3RvdHlwZSA9IE9yaWdpbmFsLnByb3RvdHlwZTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgT2JqZWN0LmtleXMoT3JpZ2luYWwpLmZvckVhY2goKG5hbWU6IHN0cmluZykgPT4geyBvYmouZGVjb3JhdGVkQ29uc3RydWN0b3JbbmFtZV0gPSAoPGFueT5PcmlnaW5hbClbbmFtZV07IH0pO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmouZGVjb3JhdGVkQ29uc3RydWN0b3IsICduYW1lJywge1xuICAgICAgdmFsdWU6IGNsYXNzTmFtZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICB9KVxuXG5cbiAgICByZXR1cm4gb2JqLmRlY29yYXRlZENvbnN0cnVjdG9yO1xuICB9IGVsc2UgaWYgKHNpbmdsZXRvbiA9PT0gJ2F1dG9pbnN0YW5jZScpIHtcblxuXG4gICAgY29uc3QgYXV0byA9IG5ldyAoT3JpZ2luYWwgYXMgYW55KSgpO1xuICAgIENMQVNTLnNldFNpbmdsZXRvbk9iaihPcmlnaW5hbCwgYXV0bylcblxuXG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXR5cGVzY3JpcHQtY2xhc3MtaGVscGVycyBsaWIvc2V0LWNsYXNzLW5hbWUudHMiXX0=
|