UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

1 lines 3.29 kB
{"version":3,"sources":["template_resolver.js"],"names":[],"mappings":"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","file":"angular2/src/core/compiler/template_resolver.js","sourcesContent":["import {Injectable} from 'angular2/di';\nimport {View} from 'angular2/src/core/annotations/view';\n\nimport {Type, stringify, isBlank, BaseException} from 'angular2/src/facade/lang';\nimport {Map, MapWrapper, List, ListWrapper} from 'angular2/src/facade/collection';\n\nimport {reflector} from 'angular2/src/reflection/reflection';\n\n\n@Injectable()\nexport class TemplateResolver {\n _cache: Map;\n\n constructor() {\n this._cache = MapWrapper.create();\n }\n\n resolve(component: Type): View {\n var view = MapWrapper.get(this._cache, component);\n\n if (isBlank(view)) {\n view = this._resolve(component);\n MapWrapper.set(this._cache, component, view);\n }\n\n return view;\n }\n\n _resolve(component: Type) {\n var annotations = reflector.annotations(component);\n for (var i = 0; i < annotations.length; i++) {\n var annotation = annotations[i];\n if (annotation instanceof View) {\n return annotation;\n }\n }\n\n throw new BaseException(`No template found for ${stringify(component)}`);\n }\n}\n"]}