{"version":3,"sources":["emulated_unscoped_shadow_dom_strategy.js"],"names":[],"mappings":"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","file":"angular2/src/render/dom/shadow_dom/emulated_unscoped_shadow_dom_strategy.js","sourcesContent":["import {Promise} from 'angular2/src/facade/async';\n\nimport {DOM} from 'angular2/src/dom/dom_adapter';\n\nimport * as viewModule from '../view/view';\n\nimport {LightDom} from './light_dom';\nimport {ShadowDomStrategy} from './shadow_dom_strategy';\nimport {StyleUrlResolver} from './style_url_resolver';\nimport {moveViewNodesIntoParent} from './util';\nimport {insertSharedStyleText} from './util';\n\n/**\n * This strategy emulates the Shadow DOM for the templates, styles **excluded**:\n * - components templates are added as children of their component element,\n * - styles are moved from the templates to the styleHost (i.e. the document head).\n *\n * Notes:\n * - styles are **not** scoped to their component and will apply to the whole document,\n * - you can **not** use shadow DOM specific selectors in the styles\n */\nexport class EmulatedUnscopedShadowDomStrategy extends ShadowDomStrategy {\n  styleUrlResolver: StyleUrlResolver;\n  styleHost;\n\n  constructor(styleUrlResolver: StyleUrlResolver, styleHost) {\n    super();\n    this.styleUrlResolver = styleUrlResolver;\n    this.styleHost = styleHost;\n  }\n\n  hasNativeContentElement():boolean {\n    return false;\n  }\n\n  attachTemplate(el, view:viewModule.RenderView) {\n    moveViewNodesIntoParent(el, view);\n  }\n\n  constructLightDom(lightDomView:viewModule.RenderView, shadowDomView:viewModule.RenderView, el): LightDom {\n    return new LightDom(lightDomView, shadowDomView, el);\n  }\n\n  processStyleElement(hostComponentId:string, templateUrl:string, styleEl):Promise {\n    var cssText = DOM.getText(styleEl);\n    cssText = this.styleUrlResolver.resolveUrls(cssText, templateUrl);\n    DOM.setText(styleEl, cssText);\n    DOM.remove(styleEl);\n\n    insertSharedStyleText(cssText, this.styleHost, styleEl);\n    return null;\n  }\n}\n"]}