UNPKG

inversify

Version:

A powerful and lightweight inversion of control container for JavaScript and Node.js apps powered by TypeScript.

1 lines 791 kB
{"X:\\Code\\InversifyJS\\src\\annotation\\decorator_utils.ts":{"path":"X:\\Code\\InversifyJS\\src\\annotation\\decorator_utils.ts","statementMap":{"0":{"start":{"line":2,"column":22},"end":{"line":8,"column":3}},"1":{"start":{"line":3,"column":4},"end":{"line":3,"column":33}},"2":{"start":{"line":3,"column":26},"end":{"line":3,"column":33}},"3":{"start":{"line":4,"column":4},"end":{"line":4,"column":89}},"4":{"start":{"line":4,"column":71},"end":{"line":4,"column":83}},"5":{"start":{"line":6,"column":4},"end":{"line":6,"column":33}},"6":{"start":{"line":6,"column":26},"end":{"line":6,"column":33}},"7":{"start":{"line":7,"column":4},"end":{"line":7,"column":17}},"8":{"start":{"line":9,"column":25},"end":{"line":13,"column":2}},"9":{"start":{"line":10,"column":4},"end":{"line":10,"column":72}},"10":{"start":{"line":12,"column":4},"end":{"line":12,"column":21}},"11":{"start":{"line":14,"column":19},"end":{"line":20,"column":1}},"12":{"start":{"line":15,"column":4},"end":{"line":15,"column":42}},"13":{"start":{"line":15,"column":31},"end":{"line":15,"column":42}},"14":{"start":{"line":16,"column":17},"end":{"line":16,"column":19}},"15":{"start":{"line":17,"column":4},"end":{"line":17,"column":141}},"16":{"start":{"line":17,"column":21},"end":{"line":17,"column":141}},"17":{"start":{"line":17,"column":40},"end":{"line":17,"column":141}},"18":{"start":{"line":17,"column":109},"end":{"line":17,"column":141}},"19":{"start":{"line":18,"column":4},"end":{"line":18,"column":36}},"20":{"start":{"line":19,"column":4},"end":{"line":19,"column":18}},"21":{"start":{"line":21,"column":0},"end":{"line":21,"column":62}},"22":{"start":{"line":22,"column":0},"end":{"line":22,"column":103}},"23":{"start":{"line":23,"column":17},"end":{"line":23,"column":65}},"24":{"start":{"line":24,"column":19},"end":{"line":24,"column":70}},"25":{"start":{"line":25,"column":11},"end":{"line":25,"column":33}},"26":{"start":{"line":27,"column":4},"end":{"line":27,"column":42}},"27":{"start":{"line":30,"column":4},"end":{"line":32,"column":5}},"28":{"start":{"line":31,"column":8},"end":{"line":31,"column":64}},"29":{"start":{"line":35,"column":4},"end":{"line":35,"column":43}},"30":{"start":{"line":36,"column":4},"end":{"line":36,"column":104}},"31":{"start":{"line":38,"column":0},"end":{"line":38,"column":36}},"32":{"start":{"line":40,"column":4},"end":{"line":42,"column":5}},"33":{"start":{"line":41,"column":8},"end":{"line":41,"column":64}},"34":{"start":{"line":43,"column":4},"end":{"line":43,"column":108}},"35":{"start":{"line":45,"column":0},"end":{"line":45,"column":34}},"36":{"start":{"line":47,"column":20},"end":{"line":47,"column":22}},"37":{"start":{"line":48,"column":4},"end":{"line":57,"column":5}},"38":{"start":{"line":49,"column":8},"end":{"line":49,"column":29}},"39":{"start":{"line":50,"column":24},"end":{"line":50,"column":105}},"40":{"start":{"line":50,"column":87},"end":{"line":50,"column":101}},"41":{"start":{"line":51,"column":8},"end":{"line":53,"column":9}},"42":{"start":{"line":52,"column":12},"end":{"line":52,"column":89}},"43":{"start":{"line":56,"column":8},"end":{"line":56,"column":31}},"44":{"start":{"line":58,"column":4},"end":{"line":58,"column":21}},"45":{"start":{"line":61,"column":20},"end":{"line":61,"column":60}},"46":{"start":{"line":62,"column":37},"end":{"line":62,"column":39}},"47":{"start":{"line":63,"column":4},"end":{"line":65,"column":5}},"48":{"start":{"line":64,"column":8},"end":{"line":64,"column":88}},"49":{"start":{"line":66,"column":34},"end":{"line":66,"column":65}},"50":{"start":{"line":67,"column":4},"end":{"line":80,"column":5}},"51":{"start":{"line":68,"column":8},"end":{"line":68,"column":37}},"52":{"start":{"line":71,"column":22},"end":{"line":75,"column":9}},"53":{"start":{"line":72,"column":12},"end":{"line":74,"column":13}},"54":{"start":{"line":72,"column":47},"end":{"line":72,"column":71}},"55":{"start":{"line":73,"column":16},"end":{"line":73,"column":89}},"56":{"start":{"line":76,"column":8},"end":{"line":79,"column":9}},"57":{"start":{"line":76,"column":22},"end":{"line":76,"column":23}},"58":{"start":{"line":76,"column":53},"end":{"line":76,"column":76}},"59":{"start":{"line":77,"column":20},"end":{"line":77,"column":49}},"60":{"start":{"line":78,"column":12},"end":{"line":78,"column":23}},"61":{"start":{"line":81,"column":4},"end":{"line":81,"column":75}},"62":{"start":{"line":82,"column":4},"end":{"line":82,"column":62}},"63":{"start":{"line":83,"column":4},"end":{"line":83,"column":86}},"64":{"start":{"line":86,"column":4},"end":{"line":93,"column":6}},"65":{"start":{"line":87,"column":8},"end":{"line":92,"column":9}},"66":{"start":{"line":88,"column":12},"end":{"line":88,"column":81}},"67":{"start":{"line":91,"column":12},"end":{"line":91,"column":53}},"68":{"start":{"line":95,"column":0},"end":{"line":95,"column":54}},"69":{"start":{"line":97,"column":4},"end":{"line":97,"column":41}},"70":{"start":{"line":100,"column":4},"end":{"line":100,"column":74}},"71":{"start":{"line":100,"column":36},"end":{"line":100,"column":71}},"72":{"start":{"line":103,"column":4},"end":{"line":111,"column":5}},"73":{"start":{"line":104,"column":8},"end":{"line":104,"column":73}},"74":{"start":{"line":106,"column":9},"end":{"line":111,"column":5}},"75":{"start":{"line":107,"column":8},"end":{"line":107,"column":72}},"76":{"start":{"line":110,"column":8},"end":{"line":110,"column":39}},"77":{"start":{"line":113,"column":0},"end":{"line":113,"column":28}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":2,"column":74},"end":{"line":2,"column":75}},"loc":{"start":{"line":2,"column":96},"end":{"line":5,"column":1}},"line":2},"1":{"name":"(anonymous_1)","decl":{"start":{"line":4,"column":58},"end":{"line":4,"column":59}},"loc":{"start":{"line":4,"column":69},"end":{"line":4,"column":85}},"line":4},"2":{"name":"(anonymous_2)","decl":{"start":{"line":5,"column":6},"end":{"line":5,"column":7}},"loc":{"start":{"line":5,"column":28},"end":{"line":8,"column":1}},"line":5},"3":{"name":"(anonymous_3)","decl":{"start":{"line":9,"column":80},"end":{"line":9,"column":81}},"loc":{"start":{"line":9,"column":95},"end":{"line":11,"column":1}},"line":9},"4":{"name":"(anonymous_4)","decl":{"start":{"line":11,"column":5},"end":{"line":11,"column":6}},"loc":{"start":{"line":11,"column":20},"end":{"line":13,"column":1}},"line":11},"5":{"name":"(anonymous_5)","decl":{"start":{"line":14,"column":50},"end":{"line":14,"column":51}},"loc":{"start":{"line":14,"column":65},"end":{"line":20,"column":1}},"line":14},"6":{"name":"targetIsConstructorFunction","decl":{"start":{"line":26,"column":9},"end":{"line":26,"column":36}},"loc":{"start":{"line":26,"column":45},"end":{"line":28,"column":1}},"line":26},"7":{"name":"_throwIfMethodParameter","decl":{"start":{"line":29,"column":9},"end":{"line":29,"column":32}},"loc":{"start":{"line":29,"column":48},"end":{"line":33,"column":1}},"line":29},"8":{"name":"tagParameter","decl":{"start":{"line":34,"column":9},"end":{"line":34,"column":21}},"loc":{"start":{"line":34,"column":81},"end":{"line":37,"column":1}},"line":34},"9":{"name":"tagProperty","decl":{"start":{"line":39,"column":9},"end":{"line":39,"column":20}},"loc":{"start":{"line":39,"column":63},"end":{"line":44,"column":1}},"line":39},"10":{"name":"_ensureNoMetadataKeyDuplicates","decl":{"start":{"line":46,"column":9},"end":{"line":46,"column":39}},"loc":{"start":{"line":46,"column":50},"end":{"line":59,"column":1}},"line":46},"11":{"name":"(anonymous_11)","decl":{"start":{"line":50,"column":71},"end":{"line":50,"column":72}},"loc":{"start":{"line":50,"column":85},"end":{"line":50,"column":103}},"line":50},"12":{"name":"_tagParameterOrProperty","decl":{"start":{"line":60,"column":9},"end":{"line":60,"column":32}},"loc":{"start":{"line":60,"column":79},"end":{"line":84,"column":1}},"line":60},"13":{"name":"(anonymous_13)","decl":{"start":{"line":71,"column":22},"end":{"line":71,"column":23}},"loc":{"start":{"line":71,"column":35},"end":{"line":75,"column":9}},"line":71},"14":{"name":"(anonymous_14)","decl":{"start":{"line":72,"column":31},"end":{"line":72,"column":32}},"loc":{"start":{"line":72,"column":45},"end":{"line":72,"column":73}},"line":72},"15":{"name":"createTaggedDecorator","decl":{"start":{"line":85,"column":9},"end":{"line":85,"column":30}},"loc":{"start":{"line":85,"column":41},"end":{"line":94,"column":1}},"line":85},"16":{"name":"(anonymous_16)","decl":{"start":{"line":86,"column":11},"end":{"line":86,"column":12}},"loc":{"start":{"line":86,"column":67},"end":{"line":93,"column":5}},"line":86},"17":{"name":"_decorate","decl":{"start":{"line":96,"column":9},"end":{"line":96,"column":18}},"loc":{"start":{"line":96,"column":39},"end":{"line":98,"column":1}},"line":96},"18":{"name":"_param","decl":{"start":{"line":99,"column":9},"end":{"line":99,"column":15}},"loc":{"start":{"line":99,"column":39},"end":{"line":101,"column":1}},"line":99},"19":{"name":"(anonymous_19)","decl":{"start":{"line":100,"column":11},"end":{"line":100,"column":12}},"loc":{"start":{"line":100,"column":34},"end":{"line":100,"column":73}},"line":100},"20":{"name":"decorate","decl":{"start":{"line":102,"column":9},"end":{"line":102,"column":17}},"loc":{"start":{"line":102,"column":63},"end":{"line":112,"column":1}},"line":102}},"branchMap":{"0":{"loc":{"start":{"line":2,"column":22},"end":{"line":8,"column":3}},"type":"binary-expr","locations":[{"start":{"line":2,"column":23},"end":{"line":2,"column":27}},{"start":{"line":2,"column":31},"end":{"line":2,"column":51}},{"start":{"line":2,"column":57},"end":{"line":8,"column":2}}],"line":2},"1":{"loc":{"start":{"line":2,"column":57},"end":{"line":8,"column":2}},"type":"cond-expr","locations":[{"start":{"line":2,"column":74},"end":{"line":5,"column":1}},{"start":{"line":5,"column":6},"end":{"line":8,"column":1}}],"line":2},"2":{"loc":{"start":{"line":3,"column":4},"end":{"line":3,"column":33}},"type":"if","locations":[{"start":{"line":3,"column":4},"end":{"line":3,"column":33}},{"start":{"line":3,"column":4},"end":{"line":3,"column":33}}],"line":3},"3":{"loc":{"start":{"line":6,"column":4},"end":{"line":6,"column":33}},"type":"if","locations":[{"start":{"line":6,"column":4},"end":{"line":6,"column":33}},{"start":{"line":6,"column":4},"end":{"line":6,"column":33}}],"line":6},"4":{"loc":{"start":{"line":9,"column":25},"end":{"line":13,"column":2}},"type":"binary-expr","locations":[{"start":{"line":9,"column":26},"end":{"line":9,"column":30}},{"start":{"line":9,"column":34},"end":{"line":9,"column":57}},{"start":{"line":9,"column":63},"end":{"line":13,"column":1}}],"line":9},"5":{"loc":{"start":{"line":9,"column":63},"end":{"line":13,"column":1}},"type":"cond-expr","locations":[{"start":{"line":9,"column":80},"end":{"line":11,"column":1}},{"start":{"line":11,"column":5},"end":{"line":13,"column":1}}],"line":9},"6":{"loc":{"start":{"line":14,"column":19},"end":{"line":20,"column":1}},"type":"binary-expr","locations":[{"start":{"line":14,"column":20},"end":{"line":14,"column":24}},{"start":{"line":14,"column":28},"end":{"line":14,"column":45}},{"start":{"line":14,"column":50},"end":{"line":20,"column":1}}],"line":14},"7":{"loc":{"start":{"line":15,"column":4},"end":{"line":15,"column":42}},"type":"if","locations":[{"start":{"line":15,"column":4},"end":{"line":15,"column":42}},{"start":{"line":15,"column":4},"end":{"line":15,"column":42}}],"line":15},"8":{"loc":{"start":{"line":15,"column":8},"end":{"line":15,"column":29}},"type":"binary-expr","locations":[{"start":{"line":15,"column":8},"end":{"line":15,"column":11}},{"start":{"line":15,"column":15},"end":{"line":15,"column":29}}],"line":15},"9":{"loc":{"start":{"line":17,"column":4},"end":{"line":17,"column":141}},"type":"if","locations":[{"start":{"line":17,"column":4},"end":{"line":17,"column":141}},{"start":{"line":17,"column":4},"end":{"line":17,"column":141}}],"line":17},"10":{"loc":{"start":{"line":17,"column":40},"end":{"line":17,"column":141}},"type":"if","locations":[{"start":{"line":17,"column":40},"end":{"line":17,"column":141}},{"start":{"line":17,"column":40},"end":{"line":17,"column":141}}],"line":17},"11":{"loc":{"start":{"line":17,"column":44},"end":{"line":17,"column":107}},"type":"binary-expr","locations":[{"start":{"line":17,"column":44},"end":{"line":17,"column":59}},{"start":{"line":17,"column":63},"end":{"line":17,"column":107}}],"line":17},"12":{"loc":{"start":{"line":30,"column":4},"end":{"line":32,"column":5}},"type":"if","locations":[{"start":{"line":30,"column":4},"end":{"line":32,"column":5}},{"start":{"line":30,"column":4},"end":{"line":32,"column":5}}],"line":30},"13":{"loc":{"start":{"line":40,"column":4},"end":{"line":42,"column":5}},"type":"if","locations":[{"start":{"line":40,"column":4},"end":{"line":42,"column":5}},{"start":{"line":40,"column":4},"end":{"line":42,"column":5}}],"line":40},"14":{"loc":{"start":{"line":48,"column":4},"end":{"line":57,"column":5}},"type":"if","locations":[{"start":{"line":48,"column":4},"end":{"line":57,"column":5}},{"start":{"line":48,"column":4},"end":{"line":57,"column":5}}],"line":48},"15":{"loc":{"start":{"line":51,"column":8},"end":{"line":53,"column":9}},"type":"if","locations":[{"start":{"line":51,"column":8},"end":{"line":53,"column":9}},{"start":{"line":51,"column":8},"end":{"line":53,"column":9}}],"line":51},"16":{"loc":{"start":{"line":63,"column":4},"end":{"line":65,"column":5}},"type":"if","locations":[{"start":{"line":63,"column":4},"end":{"line":65,"column":5}},{"start":{"line":63,"column":4},"end":{"line":65,"column":5}}],"line":63},"17":{"loc":{"start":{"line":67,"column":4},"end":{"line":80,"column":5}},"type":"if","locations":[{"start":{"line":67,"column":4},"end":{"line":80,"column":5}},{"start":{"line":67,"column":4},"end":{"line":80,"column":5}}],"line":67},"18":{"loc":{"start":{"line":72,"column":12},"end":{"line":74,"column":13}},"type":"if","locations":[{"start":{"line":72,"column":12},"end":{"line":74,"column":13}},{"start":{"line":72,"column":12},"end":{"line":74,"column":13}}],"line":72},"19":{"loc":{"start":{"line":87,"column":8},"end":{"line":92,"column":9}},"type":"if","locations":[{"start":{"line":87,"column":8},"end":{"line":92,"column":9}},{"start":{"line":87,"column":8},"end":{"line":92,"column":9}}],"line":87},"20":{"loc":{"start":{"line":103,"column":4},"end":{"line":111,"column":5}},"type":"if","locations":[{"start":{"line":103,"column":4},"end":{"line":111,"column":5}},{"start":{"line":103,"column":4},"end":{"line":111,"column":5}}],"line":103},"21":{"loc":{"start":{"line":106,"column":9},"end":{"line":111,"column":5}},"type":"if","locations":[{"start":{"line":106,"column":9},"end":{"line":111,"column":5}},{"start":{"line":106,"column":9},"end":{"line":111,"column":5}}],"line":106}},"s":{"0":1,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":1,"9":0,"10":0,"11":1,"12":2,"13":2,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":1,"22":1,"23":1,"24":1,"25":1,"26":41,"27":357,"28":4,"29":357,"30":353,"31":1,"32":41,"33":1,"34":40,"35":1,"36":393,"37":393,"38":3,"39":3,"40":6,"41":3,"42":2,"43":390,"44":391,"45":393,"46":391,"47":391,"48":190,"49":391,"50":391,"51":284,"52":107,"53":113,"54":114,"55":4,"56":107,"57":107,"58":107,"59":113,"60":113,"61":387,"62":387,"63":387,"64":329,"65":329,"66":291,"67":38,"68":1,"69":18,"70":11,"71":11,"72":20,"73":11,"74":9,"75":2,"76":7,"77":1},"f":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":2,"6":41,"7":357,"8":357,"9":41,"10":393,"11":6,"12":393,"13":113,"14":114,"15":329,"16":329,"17":18,"18":11,"19":11,"20":20},"b":{"0":[1,1,1],"1":[1,0],"2":[0,0],"3":[0,0],"4":[1,1,1],"5":[1,0],"6":[1,1,1],"7":[2,0],"8":[2,2],"9":[0,0],"10":[0,0],"11":[0,0],"12":[4,353],"13":[1,40],"14":[3,390],"15":[2,1],"16":[190,201],"17":[284,107],"18":[4,109],"19":[291,38],"20":[11,9],"21":[2,7]},"inputSourceMap":{"version":3,"file":"X:/Code/InversifyJS/src/annotation/decorator_utils.ts","sources":["X:/Code/InversifyJS/src/annotation/decorator_utils.ts"],"names":[],"mappings":"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","sourcesContent":["import * as ERROR_MSGS from '../constants/error_msgs';\r\nimport * as METADATA_KEY from '../constants/metadata_keys';\r\nimport { interfaces } from '../interfaces/interfaces';\r\nimport { getFirstArrayDuplicate } from '../utils/js';\r\n\r\nfunction targetIsConstructorFunction<T = Object>(target: DecoratorTarget<T>): target is ConstructorFunction<T> {\r\n return (target as ConstructorFunction<T>).prototype !== undefined;\r\n}\r\n\r\ntype Prototype<T> = {\r\n [Property in keyof T]:\r\n T[Property] extends NewableFunction ?\r\n T[Property] :\r\n T[Property] | undefined\r\n} & { constructor: NewableFunction }\r\n\r\ninterface ConstructorFunction<T = Record<string, unknown>> {\r\n new(...args: unknown[]): T,\r\n prototype: Prototype<T>\r\n}\r\n\r\nexport type DecoratorTarget<T = unknown> = ConstructorFunction<T> | Prototype<T>\r\n\r\nfunction _throwIfMethodParameter(parameterName: string | symbol | undefined): void {\r\n if (parameterName !== undefined) {\r\n throw new Error(ERROR_MSGS.INVALID_DECORATOR_OPERATION);\r\n }\r\n}\r\n\r\n\r\nfunction tagParameter(\r\n annotationTarget: DecoratorTarget,\r\n parameterName: string | symbol | undefined,\r\n parameterIndex: number,\r\n metadata: interfaces.MetadataOrMetadataArray\r\n) {\r\n _throwIfMethodParameter(parameterName);\r\n _tagParameterOrProperty(METADATA_KEY.TAGGED, annotationTarget as ConstructorFunction, parameterIndex.toString(), metadata);\r\n}\r\n\r\nfunction tagProperty(\r\n annotationTarget: DecoratorTarget,\r\n propertyName: string | symbol,\r\n metadata: interfaces.MetadataOrMetadataArray\r\n) {\r\n if (targetIsConstructorFunction(annotationTarget)) {\r\n throw new Error(ERROR_MSGS.INVALID_DECORATOR_OPERATION);\r\n }\r\n _tagParameterOrProperty(METADATA_KEY.TAGGED_PROP, annotationTarget.constructor, propertyName, metadata);\r\n}\r\n\r\nfunction _ensureNoMetadataKeyDuplicates(metadata: interfaces.MetadataOrMetadataArray): interfaces.Metadata[] {\r\n let metadatas: interfaces.Metadata[] = [];\r\n if (Array.isArray(metadata)) {\r\n metadatas = metadata;\r\n const duplicate = getFirstArrayDuplicate(metadatas.map(md => md.key));\r\n if (duplicate !== undefined) {\r\n throw new Error(`${ERROR_MSGS.DUPLICATED_METADATA} ${duplicate.toString()}`);\r\n }\r\n } else {\r\n metadatas = [metadata];\r\n }\r\n return metadatas;\r\n}\r\n\r\nfunction _tagParameterOrProperty(\r\n metadataKey: string,\r\n annotationTarget: NewableFunction,\r\n key: string | symbol,\r\n metadata: interfaces.MetadataOrMetadataArray,\r\n) {\r\n const metadatas: interfaces.Metadata[] = _ensureNoMetadataKeyDuplicates(metadata);\r\n\r\n let paramsOrPropertiesMetadata: Record<string | symbol, interfaces.Metadata[] | undefined> = {};\r\n // read metadata if available\r\n if (Reflect.hasOwnMetadata(metadataKey, annotationTarget)) {\r\n paramsOrPropertiesMetadata = Reflect.getMetadata(metadataKey, annotationTarget);\r\n }\r\n\r\n let paramOrPropertyMetadata: interfaces.Metadata[] | undefined = paramsOrPropertiesMetadata[key as string];\r\n\r\n if (paramOrPropertyMetadata === undefined) {\r\n paramOrPropertyMetadata = [];\r\n } else {\r\n for (const m of paramOrPropertyMetadata) {\r\n if (metadatas.some(md => md.key === m.key)) {\r\n throw new Error(`${ERROR_MSGS.DUPLICATED_METADATA} ${m.key.toString()}`);\r\n }\r\n }\r\n }\r\n\r\n // set metadata\r\n paramOrPropertyMetadata.push(...metadatas);\r\n paramsOrPropertiesMetadata[key] = paramOrPropertyMetadata;\r\n Reflect.defineMetadata(metadataKey, paramsOrPropertiesMetadata, annotationTarget);\r\n\r\n}\r\n\r\n\r\n\r\nfunction createTaggedDecorator(\r\n metadata: interfaces.MetadataOrMetadataArray,\r\n) {\r\n return <T>(\r\n target: DecoratorTarget,\r\n targetKey?: string | symbol,\r\n indexOrPropertyDescriptor?: number | TypedPropertyDescriptor<T>,\r\n ) => {\r\n if (typeof indexOrPropertyDescriptor === 'number') {\r\n tagParameter(target, targetKey, indexOrPropertyDescriptor, metadata);\r\n } else {\r\n tagProperty(target, targetKey as string | symbol, metadata);\r\n }\r\n };\r\n}\r\n\r\nfunction _decorate(\r\n decorators: (DecoratorTarget | ParameterDecorator | MethodDecorator)[],\r\n target: object | NewableFunction,\r\n): void {\r\n Reflect.decorate(decorators as ClassDecorator[], target as NewableFunction);\r\n}\r\n\r\nfunction _param(paramIndex: number, decorator: ParameterDecorator) {\r\n return function (target: string, key: string) { decorator(target, key, paramIndex); };\r\n}\r\n\r\n// Allows VanillaJS developers to use decorators:\r\n// decorate(injectable(), FooBar);\r\n// decorate(targetName('foo', 'bar'), FooBar);\r\n// decorate(named('foo'), FooBar, 0);\r\n// decorate(tagged('bar'), FooBar, 1);\r\nfunction decorate(\r\n decorator: (DecoratorTarget | ParameterDecorator | MethodDecorator),\r\n target: object,\r\n parameterIndexOrProperty?: number | string): void {\r\n\r\n if (typeof parameterIndexOrProperty === 'number') {\r\n _decorate([_param(parameterIndexOrProperty, decorator as ParameterDecorator)], target);\r\n } else if (typeof parameterIndexOrProperty === 'string') {\r\n Reflect.decorate([decorator as MethodDecorator], target, parameterIndexOrProperty);\r\n } else {\r\n _decorate([decorator], target);\r\n }\r\n}\r\n\r\nexport { decorate, tagParameter, tagProperty, createTaggedDecorator };\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"f063cdf689cb9690ced65b9fb566c115c60f29d6","contentHash":"3b20f790b5cf47fcc88c1a3e29514ff8c346f1cba34895d20652510b1f9094c1"},"X:\\Code\\InversifyJS\\src\\constants\\error_msgs.ts":{"path":"X:\\Code\\InversifyJS\\src\\constants\\error_msgs.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":1116}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":95}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":85}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":40}},"5":{"start":{"line":7,"column":0},"end":{"line":7,"column":40}},"6":{"start":{"line":8,"column":0},"end":{"line":8,"column":73}},"7":{"start":{"line":9,"column":0},"end":{"line":9,"column":62}},"8":{"start":{"line":10,"column":0},"end":{"line":10,"column":77}},"9":{"start":{"line":11,"column":0},"end":{"line":11,"column":86}},"10":{"start":{"line":12,"column":0},"end":{"line":12,"column":94}},"11":{"start":{"line":13,"column":34},"end":{"line":17,"column":1}},"12":{"start":{"line":14,"column":4},"end":{"line":16,"column":36}},"13":{"start":{"line":18,"column":0},"end":{"line":18,"column":66}},"14":{"start":{"line":19,"column":0},"end":{"line":19,"column":59}},"15":{"start":{"line":20,"column":0},"end":{"line":20,"column":78}},"16":{"start":{"line":21,"column":0},"end":{"line":21,"column":55}},"17":{"start":{"line":22,"column":0},"end":{"line":22,"column":74}},"18":{"start":{"line":23,"column":0},"end":{"line":23,"column":97}},"19":{"start":{"line":24,"column":0},"end":{"line":24,"column":92}},"20":{"start":{"line":25,"column":19},"end":{"line":25,"column":154}},"21":{"start":{"line":25,"column":36},"end":{"line":25,"column":152}},"22":{"start":{"line":26,"column":0},"end":{"line":26,"column":36}},"23":{"start":{"line":27,"column":0},"end":{"line":28,"column":33}},"24":{"start":{"line":29,"column":0},"end":{"line":30,"column":84}},"25":{"start":{"line":31,"column":32},"end":{"line":38,"column":1}},"26":{"start":{"line":32,"column":17},"end":{"line":32,"column":19}},"27":{"start":{"line":33,"column":4},"end":{"line":35,"column":5}},"28":{"start":{"line":33,"column":18},"end":{"line":33,"column":19}},"29":{"start":{"line":34,"column":8},"end":{"line":34,"column":35}},"30":{"start":{"line":36,"column":4},"end":{"line":37,"column":96}},"31":{"start":{"line":39,"column":0},"end":{"line":39,"column":62}},"32":{"start":{"line":40,"column":0},"end":{"line":41,"column":25}},"33":{"start":{"line":42,"column":0},"end":{"line":43,"column":48}},"34":{"start":{"line":44,"column":0},"end":{"line":45,"column":19}},"35":{"start":{"line":46,"column":0},"end":{"line":47,"column":19}},"36":{"start":{"line":48,"column":0},"end":{"line":48,"column":109}},"37":{"start":{"line":49,"column":0},"end":{"line":49,"column":115}},"38":{"start":{"line":50,"column":0},"end":{"line":50,"column":128}},"39":{"start":{"line":51,"column":27},"end":{"line":51,"column":132}},"40":{"start":{"line":51,"column":60},"end":{"line":51,"column":130}},"41":{"start":{"line":52,"column":0},"end":{"line":52,"column":52}},"42":{"start":{"line":53,"column":24},"end":{"line":53,"column":126}},"43":{"start":{"line":53,"column":57},"end":{"line":53,"column":124}},"44":{"start":{"line":54,"column":0},"end":{"line":54,"column":46}},"45":{"start":{"line":55,"column":28},"end":{"line":55,"column":135}},"46":{"start":{"line":55,"column":61},"end":{"line":55,"column":133}},"47":{"start":{"line":56,"column":0},"end":{"line":56,"column":54}},"48":{"start":{"line":57,"column":37},"end":{"line":60,"column":1}},"49":{"start":{"line":58,"column":4},"end":{"line":59,"column":60}},"50":{"start":{"line":61,"column":0},"end":{"line":61,"column":72}},"51":{"start":{"line":62,"column":0},"end":{"line":62,"column":60}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":13,"column":34},"end":{"line":13,"column":35}},"loc":{"start":{"line":13,"column":50},"end":{"line":17,"column":1}},"line":13},"1":{"name":"(anonymous_1)","decl":{"start":{"line":25,"column":19},"end":{"line":25,"column":20}},"loc":{"start":{"line":25,"column":34},"end":{"line":25,"column":154}},"line":25},"2":{"name":"(anonymous_2)","decl":{"start":{"line":31,"column":32},"end":{"line":31,"column":33}},"loc":{"start":{"line":31,"column":44},"end":{"line":38,"column":1}},"line":31},"3":{"name":"(anonymous_3)","decl":{"start":{"line":51,"column":27},"end":{"line":51,"column":28}},"loc":{"start":{"line":51,"column":58},"end":{"line":51,"column":132}},"line":51},"4":{"name":"(anonymous_4)","decl":{"start":{"line":53,"column":24},"end":{"line":53,"column":25}},"loc":{"start":{"line":53,"column":55},"end":{"line":53,"column":126}},"line":53},"5":{"name":"(anonymous_5)","decl":{"start":{"line":55,"column":28},"end":{"line":55,"column":29}},"loc":{"start":{"line":55,"column":59},"end":{"line":55,"column":135}},"line":55},"6":{"name":"(anonymous_6)","decl":{"start":{"line":57,"column":37},"end":{"line":57,"column":38}},"loc":{"start":{"line":57,"column":79},"end":{"line":60,"column":1}},"line":57}},"branchMap":{},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":6,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":5,"22":1,"23":1,"24":1,"25":1,"26":6,"27":6,"28":6,"29":6,"30":6,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":2,"41":1,"42":1,"43":2,"44":1,"45":1,"46":6,"47":1,"48":1,"49":3,"50":1,"51":1},"f":{"0":6,"1":5,"2":6,"3":2,"4":2,"5":6,"6":3},"b":{},"inputSourceMap":{"version":3,"file":"X:/Code/InversifyJS/src/constants/error_msgs.ts","sources":["X:/Code/InversifyJS/src/constants/error_msgs.ts"],"names":[],"mappings":";;;AAAa,QAAA,+BAA+B,GAAG,oDAAoD,CAAC;AACvF,QAAA,mBAAmB,GAAG,sDAAsD,CAAC;AAC7E,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,eAAe,GAAG,8CAA8C,CAAC;AACjE,QAAA,aAAa,GAAG,qCAAqC,CAAC;AACtD,QAAA,cAAc,GAAG,mDAAmD,CAAC;AACrE,QAAA,6BAA6B,GAAG,6CAA6C,CAAC;AAC9E,QAAA,yBAAyB,GAAG,yDAAyD,CAAC;AAC5F,IAAM,2BAA2B,GAAG,UAAC,IAAY;IACtD,OAAA,kEAAgE,IAAI,UAAO;QAC3E,yEAAyE;QACzE,2BAA2B;AAF3B,CAE2B,CAAC;AAHjB,QAAA,2BAA2B,+BAGV;AACjB,QAAA,mBAAmB,GAAG,4BAA4B,CAAC;AACnD,QAAA,eAAe,GAAG,mDAAmD,CAAC;AACtE,QAAA,oBAAoB,GAAG,uBAAuB,CAAC;AAC/C,QAAA,2BAA2B,GAAG,mCAAmC,CAAC;AAClE,QAAA,yBAAyB,GAAG,4DAA4D,CAAC;AACzF,QAAA,wBAAwB,GAAG,wDAAwD,CAAC;AAC1F,IAAM,YAAY,GAAG,UAAC,GAAY,IAAK,OAAA,sCAAoC,GAAG,mEAC9C,EADO,CACP,CAAC;AAD3B,QAAA,YAAY,gBACe;AAE3B,QAAA,qBAAqB,GAAG,gEAAgE;IACnG,4BAA4B,CAAC;AAElB,QAAA,2BAA2B,GAAG,yDAAyD;IAClG,+EAA+E,CAAC;AAE3E,IAAM,yBAAyB,GAAG;IAAC,gBAAoB;SAApB,UAAoB,EAApB,qBAAoB,EAApB,IAAoB;QAApB,2BAAoB;;IAAK,OAAA,2DAA2D;SACzH,MAAM,CAAC,CAAC,CAAC,4EAAyE,CAAA;AADpB,CACoB,CAAC;AAD3E,QAAA,yBAAyB,6BACkD;AAE3E,QAAA,mCAAmC,GAAG,4DAA4D;IAC7G,oBAAoB,CAAC;AAEV,QAAA,uCAAuC,GAAG,+CAA+C;IACpG,2CAA2C,CAAC;AAEjC,QAAA,8CAA8C,GAAG,sDAAsD;IAClH,cAAc,CAAC;AAEJ,QAAA,yCAAyC,GAAG,iDAAiD;IACxG,cAAc,CAAC;AAEJ,QAAA,4BAA4B,GAAG,qEAAqE,CAAC;AACrG,QAAA,+BAA+B,GAAG,wEAAwE,CAAC;AAC3G,QAAA,qBAAqB,GAAG,+FAA+F,CAAC;AAC9H,IAAM,oBAAoB,GAAG,UAAC,KAAa,EAAE,YAAoB,IAAK,OAAA,mCAAiC,KAAK,UAAK,YAAc,EAAzD,CAAyD,CAAC;AAA1H,QAAA,oBAAoB,wBAAsG;AAChI,IAAM,iBAAiB,GAAG,UAAC,KAAa,EAAE,YAAoB,IAAK,OAAA,gCAA8B,KAAK,UAAK,YAAc,EAAtD,CAAsD,CAAC;AAApH,QAAA,iBAAiB,qBAAmG;AAC1H,IAAM,qBAAqB,GAAG,UAAC,KAAa,EAAE,YAAoB,IAAK,OAAA,qCAAmC,KAAK,UAAK,YAAc,EAA3D,CAA2D,CAAC;AAA7H,QAAA,qBAAqB,yBAAwG;AAEnI,IAAM,8BAA8B,GAAG,UAAC,WAAmB,EAAE,iBAAyB;IAC3F,OAAA,iEAA+D,WAAW,kDAA+C;SACzH,yBAAuB,iBAAiB,OAAI,CAAA;AAD5C,CAC4C,CAAC;AAFlC,QAAA,8BAA8B,kCAEI;AAElC,QAAA,cAAc,GAAG,kCAAkC,CAAC","sourcesContent":["export const DUPLICATED_INJECTABLE_DECORATOR = 'Cannot apply @injectable decorator multiple times.';\r\nexport const DUPLICATED_METADATA = 'Metadata key was used more than once in a parameter:';\r\nexport const NULL_ARGUMENT = 'NULL argument';\r\nexport const KEY_NOT_FOUND = 'Key Not Found';\r\nexport const AMBIGUOUS_MATCH = 'Ambiguous match found for serviceIdentifier:';\r\nexport const CANNOT_UNBIND = 'Could not unbind serviceIdentifier:';\r\nexport const NOT_REGISTERED = 'No matching bindings found for serviceIdentifier:';\r\nexport const MISSING_INJECTABLE_ANNOTATION = 'Missing required @injectable annotation in:';\r\nexport const MISSING_INJECT_ANNOTATION = 'Missing required @inject or @multiInject annotation in:';\r\nexport const UNDEFINED_INJECT_ANNOTATION = (name: string) =>\r\n `@inject called with undefined this could mean that the class ${name} has ` +\r\n 'a circular dependency problem. You can use a LazyServiceIdentifier to ' +\r\n 'overcome this limitation.';\r\nexport const CIRCULAR_DEPENDENCY = 'Circular dependency found:';\r\nexport const NOT_IMPLEMENTED = 'Sorry, this feature is not fully implemented yet.';\r\nexport const INVALID_BINDING_TYPE = 'Invalid binding type:';\r\nexport const NO_MORE_SNAPSHOTS_AVAILABLE = 'No snapshot available to restore.';\r\nexport const INVALID_MIDDLEWARE_RETURN = 'Invalid return type in middleware. Middleware must return!';\r\nexport const INVALID_FUNCTION_BINDING = 'Value provided to function binding must be a function!';\r\nexport const LAZY_IN_SYNC = (key: unknown) => `You are attempting to construct '${key}' in a synchronous way\r\n but it has asynchronous dependencies.`;\r\n\r\nexport const INVALID_TO_SELF_VALUE = 'The toSelf function can only be applied when a constructor is ' +\r\n 'used as service identifier';\r\n\r\nexport const INVALID_DECORATOR_OPERATION = 'The @inject @multiInject @tagged and @named decorators ' +\r\n 'must be applied to the parameters of a class constructor or a class property.';\r\n\r\nexport const ARGUMENTS_LENGTH_MISMATCH = (...values: unknown[]) => 'The number of constructor arguments in the derived class ' +\r\n `${values[0]} must be >= than the number of constructor arguments of its base class.`;\r\n\r\nexport const CONTAINER_OPTIONS_MUST_BE_AN_OBJECT = 'Invalid Container constructor argument. Container options ' +\r\n 'must be an object.';\r\n\r\nexport const CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE = 'Invalid Container option. Default scope must ' +\r\n 'be a string (\"singleton\" or \"transient\").';\r\n\r\nexport const CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE = 'Invalid Container option. Auto bind injectable must ' +\r\n 'be a boolean';\r\n\r\nexport const CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK = 'Invalid Container option. Skip base check must ' +\r\n 'be a boolean';\r\n\r\nexport const MULTIPLE_PRE_DESTROY_METHODS = 'Cannot apply @preDestroy decorator multiple times in the same class';\r\nexport const MULTIPLE_POST_CONSTRUCT_METHODS = 'Cannot apply @postConstruct decorator multiple times in the same class';\r\nexport const ASYNC_UNBIND_REQUIRED = 'Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)';\r\nexport const POST_CONSTRUCT_ERROR = (clazz: string, errorMessage: string) => `@postConstruct error in class ${clazz}: ${errorMessage}`;\r\nexport const PRE_DESTROY_ERROR = (clazz: string, errorMessage: string) => `@preDestroy error in class ${clazz}: ${errorMessage}`;\r\nexport const ON_DEACTIVATION_ERROR = (clazz: string, errorMessage: string) => `onDeactivation() error in class ${clazz}: ${errorMessage}`;\r\n\r\nexport const CIRCULAR_DEPENDENCY_IN_FACTORY = (factoryType: string, serviceIdentifier: string) =>\r\n `It looks like there is a circular dependency in one of the '${factoryType}' bindings. Please investigate bindings with ` +\r\n `service identifier '${serviceIdentifier}'.`;\r\n\r\nexport const STACK_OVERFLOW = 'Maximum call stack size exceeded';\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"1b6016c6fa7158b46694c2f19b28a86247ff117f","contentHash":"7fc3375da6ca6319013b4f8278a696185514f77b302738085e426962e64c0f56"},"X:\\Code\\InversifyJS\\src\\constants\\metadata_keys.ts":{"path":"X:\\Code\\InversifyJS\\src\\constants\\metadata_keys.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":308}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":28}},"3":{"start":{"line":5,"column":0},"end":{"line":5,"column":26}},"4":{"start":{"line":6,"column":0},"end":{"line":6,"column":36}},"5":{"start":{"line":7,"column":0},"end":{"line":7,"column":34}},"6":{"start":{"line":8,"column":0},"end":{"line":8,"column":30}},"7":{"start":{"line":9,"column":0},"end":{"line":9,"column":42}},"8":{"start":{"line":10,"column":0},"end":{"line":10,"column":36}},"9":{"start":{"line":11,"column":0},"end":{"line":11,"column":47}},"10":{"start":{"line":12,"column":0},"end":{"line":12,"column":45}},"11":{"start":{"line":13,"column":0},"end":{"line":13,"column":49}},"12":{"start":{"line":14,"column":0},"end":{"line":14,"column":42}},"13":{"start":{"line":15,"column":0},"end":{"line":15,"column":36}},"14":{"start":{"line":17,"column":4},"end":{"line":24,"column":6}},"15":{"start":{"line":26,"column":0},"end":{"line":26,"column":52}}},"fnMap":{"0":{"name":"getNonCustomTagKeys","decl":{"start":{"line":16,"column":9},"end":{"line":16,"column":28}},"loc":{"start":{"line":16,"column":31},"end":{"line":25,"column":1}},"line":16}},"branchMap":{},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1},"f":{"0":1},"b":{},"inputSourceMap":{"version":3,"file":"X:/Code/InversifyJS/src/constants/metadata_keys.ts","sources":["X:/Code/InversifyJS/src/constants/metadata_keys.ts"],"names":[],"mappings":";;;AACa,QAAA,SAAS,GAAG,OAAO,CAAC;AAGpB,QAAA,QAAQ,GAAG,MAAM,CAAC;AAGlB,QAAA,aAAa,GAAG,WAAW,CAAC;AAG5B,QAAA,YAAY,GAAG,UAAU,CAAC;AAG1B,QAAA,UAAU,GAAG,QAAQ,CAAC;AAGtB,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAGlC,QAAA,MAAM,GAAG,kBAAkB,CAAC;AAG5B,QAAA,WAAW,GAAG,wBAAwB,CAAC;AAGvC,QAAA,WAAW,GAAG,sBAAsB,CAAC;AAGrC,QAAA,kBAAkB,GAAG,mBAAmB,CAAC;AAGzC,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAGlC,QAAA,WAAW,GAAG,aAAa,CAAC;AAEzC,SAAS,mBAAmB;IAC1B,OAAO;QACL,kBAAU;QACV,wBAAgB;QAChB,gBAAQ;QACR,qBAAa;QACb,iBAAS;QACT,oBAAY;KACb,CAAC;AACJ,CAAC;AAEY,QAAA,mBAAmB,GAAa,mBAAmB,EAAE,CAAC","sourcesContent":["// Used for named bindings\r\nexport const NAMED_TAG = 'named';\r\n\r\n// The name of the target at design time\r\nexport const NAME_TAG = 'name';\r\n\r\n// The for unmanaged injections (in base classes when using inheritance)\r\nexport const UNMANAGED_TAG = 'unmanaged';\r\n\r\n// The for optional injections\r\nexport const OPTIONAL_TAG = 'optional';\r\n\r\n// The type of the binding at design time\r\nexport const INJECT_TAG = 'inject';\r\n\r\n// The type of the binding at design type for multi-injections\r\nexport const MULTI_INJECT_TAG = 'multi_inject';\r\n\r\n// used to store constructor arguments tags\r\nexport const TAGGED = 'inversify:tagged';\r\n\r\n// used to store class properties tags\r\nexport const TAGGED_PROP = 'inversify:tagged_props';\r\n\r\n// used to store types to be injected\r\nexport const PARAM_TYPES = 'inversify:paramtypes';\r\n\r\n// used to access design time types\r\nexport const DESIGN_PARAM_TYPES = 'design:paramtypes';\r\n\r\n// used to identify postConstruct functions\r\nexport const POST_CONSTRUCT = 'post_construct';\r\n\r\n// used to identify preDestroy functions\r\nexport const PRE_DESTROY = 'pre_destroy';\r\n\r\nfunction getNonCustomTagKeys(): string[] {\r\n return [\r\n INJECT_TAG,\r\n MULTI_INJECT_TAG,\r\n NAME_TAG,\r\n UNMANAGED_TAG,\r\n NAMED_TAG,\r\n OPTIONAL_TAG,\r\n ];\r\n}\r\n\r\nexport const NON_CUSTOM_TAG_KEYS: string[] = getNonCustomTagKeys();\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"bcbbf88613fab3c485771a379b886f0aae53747a","contentHash":"d076678d737da59f02b468d023ce7aaac5ff1b1c8cad58686ff9c5ea2cdd3cf0"},"X:\\Code\\InversifyJS\\src\\utils\\js.ts":{"path":"X:\\Code\\InversifyJS\\src\\utils\\js.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":40}},"2":{"start":{"line":5,"column":21},"end":{"line":5,"column":30}},"3":{"start":{"line":6,"column":4},"end":{"line":14,"column":5}},"4":{"start":{"line":6,"column":18},"end":{"line":6,"column":19}},"5":{"start":{"line":6,"column":31},"end":{"line":6,"column":36}},"6":{"start":{"line":7,"column":20},"end":{"line":7,"column":31}},"7":{"start":{"line":8,"column":8},"end":{"line":13,"column":9}},"8":{"start":{"line":9,"column":12},"end":{"line":9,"column":25}},"9":{"start":{"line":12,"column":12},"end":{"line":12,"column":34}},"10":{"start":{"line":15,"column":4},"end":{"line":15,"column":21}},"11":{"start":{"line":17,"column":0},"end":{"line":17,"column":56}}},"fnMap":{"0":{"name":"getFirstArrayDuplicate","decl":{"start":{"line":4,"column":9},"end":{"line":4,"column":31}},"loc":{"start":{"line":4,"column":39},"end":{"line":16,"column":1}},"line":4}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":8},"end":{"line":13,"column":9}},"type":"if","locations":[{"start":{"line":8,"column":8},"end":{"line":13,"column":9}},{"start":{"line":8,"column":8},"end":{"line":13,"column":9}}],"line":8}},"s":{"0":1,"1":1,"2":3,"3":3,"4":3,"5":3,"6":6,"7":6,"8":2,"9":4,"10":1,"11":1},"f":{"0":3},"b":{"0":[2,4]},"inputSourceMap":{"version":3,"file":"X:/Code/InversifyJS/src/utils/js.ts","sources":["X:/Code/InversifyJS/src/utils/js.ts"],"names":[],"mappings":";;;AAAA,SAAgB,sBAAsB,CAAI,KAAU;IAClD,IAAM,UAAU,GAAG,IAAI,GAAG,EAAK,CAAA;IAE/B,KAAoB,UAAK,EAAL,eAAK,EAAL,mBAAK,EAAL,IAAK,EAAE;QAAtB,IAAM,KAAK,cAAA;QACd,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,KAAK,CAAC;SACd;aAAM;YACL,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACvB;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAXD,wDAWC","sourcesContent":["export function getFirstArrayDuplicate<T>(array: T[]): T | undefined {\r\n const seenValues = new Set<T>()\r\n\r\n for (const entry of array) {\r\n if (seenValues.has(entry)) {\r\n return entry;\r\n } else {\r\n seenValues.add(entry);\r\n }\r\n }\r\n return undefined;\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"bd657abc11d2d14a76809de391a064027c73a02f","contentHash":"cb25042f0def1c1b75aa24dcf826e3bb0d1cb21bf2d64adbc66d972f3b72441d"},"X:\\Code\\InversifyJS\\src\\inversify.ts":{"path":"X:\\Code\\InversifyJS\\src\\inversify.ts","statementMap":{"0":{"start":{"line":2,"column":22},"end":{"line":8,"column":3}},"1":{"start":{"line":3,"column":4},"end":{"line":3,"column":33}},"2":{"start":{"line":3,"column":26},"end":{"line":3,"column":33}},"3":{"start":{"line":4,"column":4},"end":{"line":4,"column":89}},"4":{"start":{"line":4,"column":71},"end":{"line":4,"column":83}},"5":{"start":{"line":6,"column":4},"end":{"line":6,"column":33}},"6":{"start":{"line":6,"column":26},"end":{"line":6,"column":33}},"7":{"start":{"line":7,"column":4},"end":{"line":7,"column":17}},"8":{"start":{"line":9,"column":25},"end":{"line":13,"column":2}},"9":{"start":{"line":10,"column":4},"end":{"line":10,"column":72}},"10":{"start":{"line":12,"column":4},"end":{"line":12,"column":21}},"11":{"start":{"line":14,"column":19},"end":{"line":20,"column":1}},"12":{"start":{"line":15,"column":4},"end":{"line":15,"column":42}},"13":{"start":{"line":15,"column":31},"end":{"line":15,"column":42}},"14":{"start":{"line":16,"column":17},"end":{"line":16,"column":19}},"15":{"start":{"line":17,"column":4},"end":{"line":17,"column":141}},"16":{"start":{"line":17,"column":21},"end":{"line":17,"column":141}},"17":{"start":{"line":17,"column":40},"end":{"line":17,"column":141}},"18":{"start":{"line":17,"column":109},"end":{"line":17,"column":141}},"19":{"start":{"line":18,"column":4},"end":{"line":18,"column":36}},"20":{"start":{"line":19,"column":4},"end":{"line":19,"column":18}},"21":{"start":{"line":21,"column":0},"end":{"line":21,"column":62}},"22":{"start":{"line":22,"column":0},"end":{"line":22,"column":731}},"23":{"start":{"line":23,"column":11},"end":{"line":23,"column":61}},"24":{"start":{"line":24,"column":0},"end":{"line":24,"column":28}},"25":{"start":{"line":25,"column":18},"end":{"line":25,"column":50}},"26":{"start":{"line":26,"column":0},"end":{"line":26,"column":118}},"27":{"start":{"line":26,"column":83},"end":{"line":26,"column":112}},"28":{"start":{"line":27,"column":22},"end":{"line":27,"column":58}},"29":{"start":{"line":28,"column":0},"end":{"line":28,"column":136}},"30":{"start":{"line":28,"column":90},"end":{"line":28,"column":130}},"31":{"start":{"line":29,"column":0},"end":{"line":29,"column":134}},"32":{"start":{"line":29,"column":89},"end":{"line":29,"column":128}},"33":{"start":{"line":30,"column":0},"end":{"line":30,"column":132}},"34":{"start":{"line":30,"column":88},"end":{"line":30,"column":126}},"35":{"start":{"line":31,"column":25},"end":{"line":31,"column":64}},"36":{"start":{"line":32,"column":0},"end":{"line":32,"column":147}},"37":{"start":{"line":32,"column":94},"end":{"line":32,"column":141}},"38":{"start":{"line":33,"column":0},"end":{"line":33,"column":137}},"39":{"start":{"line":33,"column":89},"end":{"line":33,"column":131}},"40":{"start":{"line":34,"column":24},"end":{"line":34,"column":63}},"41":{"start":{"line":35,"column":0},"end":{"line":35,"column":148}},"42":{"start":{"line":35,"column":95},"end":{"line":35,"column":142}},"43":{"start":{"line":36,"column":19},"end":{"line":36,"column":53}},"44":{"start":{"line":37,"column":0},"end":{"line":37,"column":121}},"45":{"start":{"line":37,"column":84},"end":{"line":37,"column":115}},"46":{"start":{"line":38,"column":15},"end":{"line":38,"column":45}},"47":{"start":{"line":39,"column":0},"end":{"line":39,"column":109}},"48":{"start":{"line":39,"column":80},"end":{"line":39,"column":103}},"49":{"start":{"line":40,"column":14},"end":{"line":40,"column":43}},"50":{"start":{"line":41,"column":0},"end":{"line":41,"column":106}},"51":{"start":{"line":41,"column":79},"end":{"line":41,"column":100}},"52":{"start":{"line":42,"column":15},"end":{"line":42,"column":45}},"53":{"start":{"line":43,"column":0},"end":{"line":43,"column":109}},"54":{"start":{"line":43,"column":80},"end":{"line":43,"column":103}},"55":{"start":{"line":44,"column":32},"end":{"line":44,"column":79}},"56":{"start":{"line":45,"column":0},"end":{"line":45,"column":156}},"57":{"start":{"line":45,"column":95},"end":{"line":45,"column":150}},"58":{"start":{"line":46,"column":32},"end":{"line":46,"column":79}},"59":{"start":{"line":47,"column":0},"end":{"line":47,"column":155}},"60":{"start":{"line":47,"column":94},"end":{"line":47,"column":149}},"61":{"start":{"line":48,"column":17},"end":{"line":48,"column":49}},"62":{"start":{"line":49,"column":0},"end":{"line":49,"column":115}},"63":{"start":{"line":49,"column":82},"end":{"line":49,"column":109}},"64":{"start":{"line":50,"column":18},"end":{"line":50,"column":51}},"65":{"start":{"line":51,"column":0},"end":{"line":51,"column":118}},"66":{"start":{"line":51,"column":83},"end":{"line":51,"column":112}},"67":{"start":{"line":52,"column":21},"end":{"line":52,"column":57}},"68":{"start":{"line":53,"column":0},"end":{"line":53,"column":125}},"69":{"start":{"line":53,"column":85},"end":{"line":53,"column":119}},"70":{"start":{"line":54,"column":20},"end":{"line":54,"column":55}},"71":{"start":{"line":55,"column":0},"end":{"line":55,"column":122}},"72":{"start":{"line":55,"column":84},"end":{"line":55,"column":116}},"73":{"start":{"line":56,"column":23},"end":{"line":56,"column":61}},"74":{"start":{"line":57,"column":0},"end":{"line":57,"column":131}},"75":{"start":{"line":57,"column":87},"end":{"line":57,"column":125}},"76":{"start":{"line":58,"column":20},"end":{"line":58,"column":55}},"77":{"start":{"line":59,"column":0},"end":{"line":59,"column":122}},"78":{"start":{"line":59,"column":84},"end":{"line":59,"column":116}},"79":{"start":{"line":60,"column":24},"end":{"line":60,"column":61}},"80":{"start":{"line":61,"column":0},"end":{"line":61,"column":134}},"81":{"start":{"line":61,"column":88},"end":{"line":61,"column":128}},"82":{"start":{"line":62,"column":11},"end":{"line":62,"column":32}},"83":{"start":{"line":63,"column":0},"end":{"line":63,"column":97}},"84":{"start":{"line":63,"column":76},"end":{"line":63,"column":91}},"85":{"start":{"line":64,"column":19},"end":{"line":64,"column":53}},"86":{"start":{"line":65,"column":0},"end":{"line":65,"column":121}},"87":{"start":{"line":65,"column":84},"end":{"line":65,"column":115}},"88":{"start":{"line":66,"column":24},"end":{"line":66,"column":63}},"89":{"start":{"line":67,"column":0},"end":{"line":67,"column":122}},"90":{"start":{"line":67,"column":82},"end":{"line":67,"column":116}},"91":{"start":{"line":68,"column":27},"end":{"line":68,"column":65}},"92":{"start":{"line":69,"column":0},"end":{"line":69,"column":145}},"93":{"start":{"line":69,"column":92},"end":{"line":69,"column":139}},"94":{"start":{"line":70,"column":0},"end":{"line":70,"column":141}},"95":{"start":{"line":70,"column":90},"end":{"line":70,"column":135}},"96":{"start":{"line":71,"column":0},"end":{"line":71,"column":139}},"97":{"start":{"line":71,"column":89},"end":{"line":71,"column":133}},"98":{"start":{"line":72,"column":0},"end":{"line":72,"column":137}},"99":{"start":{"line":72,"column":88},"end":{"line":72,"column":131}},"100":{"start":{"line":73,"column":22},"end":{"line":73,"column":54}},"101":{"start":{"line":74,"column":0},"end":{"line":74,"column":160}},"102":{"start":{"line":74,"column":102},"end":{"line":74,"column":154}},"103":{"start":{"line":75,"column":22},"end":{"line":75,"column":54}},"104":{"start":{"line":76,"column":0},"end":{"line":76,"column":140}},"105":{"start":{"line":76,"column":92},"end":{"line":76,"column":134}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":2,"column":74},"end":{"line":2,"