{"version":3,"sources":["src/style-settings.js","src/css-parse.js","src/common-regex.js","src/unscoped-style-handler.js","src/style-util.js","src/apply-shim.js","src/common-utils.js","src/template-map.js","src/apply-shim-utils.js","entrypoints/apply-shim.js"],"names":["nativeShadow","window","nativeCssVariables_","calcCssVariables","settings","navigator","userAgent","match","CSS","supports","cssBuild","ShadyCSS","undefined","disableRuntime","nativeCss","nativeCssVariables","constructor","StyleNode","parse","text","replace","RX$$module$src$css_parse.comments","RX$$module$src$css_parse.port","root","length","n","i","l","OPEN_BRACE","p","previous","push","CLOSE_BRACE","parseCss","node","t","substring","trim","ss","_expandUnicodeEscapes","RX$$module$src$css_parse.multipleSpaces","lastIndexOf","s","indexOf","AT_START","MEDIA_START","types$$module$src$css_parse.MEDIA_RULE","RX$$module$src$css_parse.keyframesRule","types$$module$src$css_parse.KEYFRAMES_RULE","split","pop","VAR_START","types$$module$src$css_parse.MIXIN_RULE","types$$module$src$css_parse.STYLE_RULE","r$","r","code","repeat","stringify","preserveProperties","cssText","rules","RX$$module$src$css_parse.customProp","RX$$module$src$css_parse.mixinProp","RX$$module$src$css_parse.mixinApply","RX$$module$src$css_parse.varApply","STYLE_RULE","KEYFRAMES_RULE","MEDIA_RULE","MIXIN_RULE","comments","port","customProp","mixinProp","mixinApply","varApply","keyframesRule","multipleSpaces","VAR_ASSIGN","MIXIN_MATCH","MEDIA_MATCH","styleTextSet","Set","toCssText","rulesForStyle","style","textContent","forEachRule","styleRuleCallback","keyframesRuleCallback","onlyActiveRules","skipRules","type","matchMedia","matches","processVariableAndFallback","str","callback","start","level","inner","end","prefix","suffix","comma","value","fallback","getCssBuild","element","__cssBuild","attrValue","getAttribute","CSS_BUILD_ATTR","buildComment","localName","content","firstChild","Comment","commentParts","parentNode","removeChild","APPLY_NAME_CLEAN","INITIAL_INHERIT","IMPORTANT","MixinMap","_map","set","name","props","properties","dependants","get","invalidCallback","ApplyShim","_measureElement","_currentElement","detectMixin","has","test","lastIndex","transformTemplate","template","elementName","_gatheredStyle","styleTextParts","styles","querySelectorAll","hasAttribute","scopingAttribute","add","newStyle","cloneNode","document","head","appendChild","join","createElement","styleText","insertBefore","transformStyle","ast","transformRules","transformCustomStyle","rule","transformRule","transformCssText","matchText","propertyName","valueProperty","valueMixin","_produceCssProperties","_consumeCssProperties","_fallbacksFromPreviousRules","startRule","topRule","fallbacks","seenStartRule","Object","assign","_cssTextToMap","m","exec","mixinName","idx","index","textBeforeApply","slice","textAfterApply","defaults","_atApplyToCssProperties","vars","mixinEntry","f","parts","MIXIN_VAR_SEP","replacement","replaceInitialOrInherit","property","out","sp","_replaceInitialOrInherit","setAttribute","all","getComputedStyle","getPropertyValue","_invalidateMixinEntry","mixinAsProperties","combinedProps","mixinValues","oldProps","create","needToInvalidate","v","prototype","defineProperty","cb","templateMap","promise","Promise","resolve","invalidate","templateIsValid","startValidatingTemplate","_validating","then","applyShim","ApplyShimInterface","customStyleInterface","ensure","CustomStyleInterface","requestAnimationFrame","flushCustomStyles","prepareTemplate","cs","styleSubtree","removeProperty","setProperty","shadowRoot","styleElement","shadowChildren","children","childNodes","is","querySelector","styleDocument","body","ScopingShim","applyShimInterface","prepareTemplateStyles","elementExtends","prepareTemplateDom","getComputedStyleValue"],"mappings":"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","file":"apply-shim.min.js","sourcesContent":["/**\n@license\nCopyright (c) 2017 The Polymer Project Authors. All rights reserved.\nThis code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt\nThe complete set of authors may be found at http://polymer.github.io/AUTHORS.txt\nThe complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt\nCode distributed by Google as part of the polymer project is also\nsubject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt\n*/\n\n'use strict';\n\nexport const nativeShadow = !(window['ShadyDOM'] && window['ShadyDOM']['inUse']);\nlet nativeCssVariables_;\n\n/**\n * @param {(ShadyCSSOptions | ShadyCSSInterface)=} settings\n */\nfunction calcCssVariables(settings) {\n if (settings && settings['shimcssproperties']) {\n nativeCssVariables_ = false;\n } else {\n // chrome 49 has semi-working css vars, check if box-shadow works\n // safari 9.1 has a recalc bug: https://bugs.webkit.org/show_bug.cgi?id=155782\n // However, shim css custom properties are only supported with ShadyDOM enabled,\n // so fall back on native if we do not detect ShadyDOM\n // Edge 15: custom properties used in ::before and ::after will also be used in the parent element\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/12414257/\n nativeCssVariables_ = nativeShadow || Boolean(!navigator.userAgent.match(/AppleWebKit\\/601|Edge\\/15/) &&\n window.CSS && CSS.supports && CSS.supports('box-shadow', '0 0 0 var(--foo)'));\n }\n}\n\n/** @type {string | undefined} */\nexport let cssBuild;\nif (window.ShadyCSS && window.ShadyCSS.cssBuild !== undefined) {\n cssBuild = window.ShadyCSS.cssBuild;\n}\n\n/** @type {boolean} */\nexport const disableRuntime = Boolean(window.ShadyCSS && window.ShadyCSS.disableRuntime);\n\nif (window.ShadyCSS && window.ShadyCSS.nativeCss !== undefined) {\n nativeCssVariables_ = window.ShadyCSS.nativeCss;\n} else if (window.ShadyCSS) {\n calcCssVariables(window.ShadyCSS);\n // reset window variable to let ShadyCSS API take its place\n window.ShadyCSS = undefined;\n} else {\n calcCssVariables(window['WebComponents'] && window['WebComponents']['flags']);\n}\n\n// Hack for type error under new type inference which doesn't like that\n// nativeCssVariables is updated in a function and assigns the type\n// `function(): ?` instead of `boolean`.\nexport const nativeCssVariables = /** @type {boolean} */(nativeCssVariables_);","/**\n@license\nCopyright (c) 2017 The Polymer Project Authors. All rights reserved.\nThis code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt\nThe complete set of authors may be found at http://polymer.github.io/AUTHORS.txt\nThe complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt\nCode distributed by Google as part of the polymer project is also\nsubject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt\n*/\n\n/*\nExtremely simple css parser. Intended to be not more than what we need\nand definitely not necessarily correct =).\n*/\n\n'use strict';\n\n/** @unrestricted */\nclass StyleNode {\n constructor() {\n /** @type {number} */\n this['start'] = 0;\n /** @type {number} */\n this['end'] = 0;\n /** @type {StyleNode} */\n this['previous'] = null;\n /** @type {StyleNode} */\n this['parent'] = null;\n /** @type {Array} */\n this['rules'] = null;\n /** @type {string} */\n this['parsedCssText'] = '';\n /** @type {string} */\n this['cssText'] = '';\n /** @type {boolean} */\n this['atRule'] = false;\n /** @type {number} */\n this['type'] = 0;\n /** @type {string} */\n this['keyframesName'] = '';\n /** @type {string} */\n this['selector'] = '';\n /** @type {string} */\n this['parsedSelector'] = '';\n }\n}\n\nexport {StyleNode}\n\n// given a string of css, return a simple rule tree\n/**\n * @param {string} text\n * @return {StyleNode}\n */\nexport function parse(text) {\n text = clean(text);\n return parseCss(lex(text), text);\n}\n\n// remove stuff we don't care about that may hinder parsing\n/**\n * @param {string} cssText\n * @return {string}\n */\nfunction clean(cssText) {\n return cssText.replace(RX.comments, '').replace(RX.port, '');\n}\n\n// super simple {...} lexer that returns a node tree\n/**\n * @param {string} text\n * @return {StyleNode}\n */\nfunction lex(text) {\n let root = new StyleNode();\n root['start'] = 0;\n root['end'] = text.length\n let n = root;\n for (let i = 0, l = text.length; i < l; i++) {\n if (text[i] === OPEN_BRACE) {\n if (!n['rules']) {\n n['rules'] = [];\n }\n let p = n;\n let previous = p['rules'][p['rules'].length - 1] || null;\n n = new StyleNode();\n n['start'] = i + 1;\n n['parent'] = p;\n n['previous'] = previous;\n p['rules'].push(n);\n } else if (text[i] === CLOSE_BRACE) {\n n['end'] = i + 1;\n n = n['parent'] || root;\n }\n }\n return root;\n}\n\n// add selectors/cssText to node tree\n/**\n * @param {StyleNode} node\n * @param {string} text\n * @return {StyleNode}\n */\nfunction parseCss(node, text) {\n let t = text.substring(node['start'], node['end'] - 1);\n node['parsedCssText'] = node['cssText'] = t.trim();\n if (node['parent']) {\n let ss = node['previous'] ? node['previous']['end'] : node['parent']['start'];\n t = text.substring(ss, node['start'] - 1);\n t = _expandUnicodeEscapes(t);\n t = t.replace(RX.multipleSpaces, ' ');\n // TODO(sorvell): ad hoc; make selector include only after last ;\n // helps with mixin syntax\n t = t.substring(t.lastIndexOf(';') + 1);\n let s = node['parsedSelector'] = node['selector'] = t.trim();\n node['atRule'] = (s.indexOf(AT_START) === 0);\n // note, support a subset of rule types...\n if (node['atRule']) {\n if (s.indexOf(MEDIA_START) === 0) {\n node['type'] = types.MEDIA_RULE;\n } else if (s.match(RX.keyframesRule)) {\n node['type'] = types.KEYFRAMES_RULE;\n node['keyframesName'] =\n node['selector'].split(RX.multipleSpaces).pop();\n }\n } else {\n if (s.indexOf(VAR_START) === 0) {\n node['type'] = types.MIXIN_RULE;\n } else {\n node['type'] = types.STYLE_RULE;\n }\n }\n }\n let r$ = node['rules'];\n if (r$) {\n for (let i = 0, l = r$.length, r;\n (i < l) && (r = r$[i]); i++) {\n parseCss(r, text);\n }\n }\n return node;\n}\n\n/**\n * conversion of sort unicode escapes with spaces like `\\33 ` (and longer) into\n * expanded form that doesn't require trailing space `\\000033`\n * @param {string} s\n * @return {string}\n */\nfunction _expandUnicodeEscapes(s) {\n return s.replace(/\\\\([0-9a-f]{1,6})\\s/gi, function() {\n let code = arguments[1],\n repeat = 6 - code.length;\n while (repeat--) {\n code = '0' + code;\n }\n return '\\\\' + code;\n });\n}\n\n/**\n * stringify parsed css.\n * @param {StyleNode} node\n * @param {boolean=} preserveProperties\n * @param {string=} text\n * @return {string}\n */\nexport function stringify(node, preserveProperties, text = '') {\n // calc rule cssText\n let cssText = '';\n if (node['cssText'] || node['rules']) {\n let r$ = node['rules'];\n if (r$ && !_hasMixinRules(r$)) {\n for (let i = 0, l = r$.length, r;\n (i < l) && (r = r$[i]); i++) {\n cssText = stringify(r, preserveProperties, cssText);\n }\n } else {\n cssText = preserveProperties ? node['cssText'] :\n removeCustomProps(node['cssText']);\n cssText = cssText.trim();\n if (cssText) {\n cssText = ' ' + cssText + '\\n';\n }\n }\n }\n // emit rule if there is cssText\n if (cssText) {\n if (node['selector']) {\n text += node['selector'] + ' ' + OPEN_BRACE + '\\n';\n }\n text += cssText;\n if (node['selector']) {\n text += CLOSE_BRACE + '\\n\\n';\n }\n }\n return text;\n}\n\n/**\n * @param {Array} rules\n * @return {boolean}\n */\nfunction _hasMixinRules(rules) {\n let r = rules[0];\n return Boolean(r) && Boolean(r['selector']) && r['selector'].indexOf(VAR_START) === 0;\n}\n\n/**\n * @param {string} cssText\n * @return {string}\n */\nfunction removeCustomProps(cssText) {\n cssText = removeCustomPropAssignment(cssText);\n return removeCustomPropApply(cssText);\n}\n\n/**\n * @param {string} cssText\n * @return {string}\n */\nexport function removeCustomPropAssignment(cssText) {\n return cssText\n .replace(RX.customProp, '')\n .replace(RX.mixinProp, '');\n}\n\n/**\n * @param {string} cssText\n * @return {string}\n */\nfunction removeCustomPropApply(cssText) {\n return cssText\n .replace(RX.mixinApply, '')\n .replace(RX.varApply, '');\n}\n\n/** @enum {number} */\nexport const types = {\n STYLE_RULE: 1,\n KEYFRAMES_RULE: 7,\n MEDIA_RULE: 4,\n MIXIN_RULE: 1000\n}\n\nconst OPEN_BRACE = '{';\nconst CLOSE_BRACE = '}';\n\n// helper regexp's\nconst RX = {\n comments: /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//gim,\n port: /@import[^;]*;/gim,\n customProp: /(?:^[^;\\-\\s}]+)?--[^;{}]*?:[^{};]*?(?:[;\\n]|$)/gim,\n mixinProp: /(?:^[^;\\-\\s}]+)?--[^;{}]*?:[^{};]*?{[^}]*?}(?:[;\\n]|$)?/gim,\n mixinApply: /@apply\\s*\\(?[^);]*\\)?\\s*(?:[;\\n]|$)?/gim,\n varApply: /[^;:]*?:[^;]*?var\\([^;]*\\)(?:[;\\n]|$)?/gim,\n keyframesRule: /^@[^\\s]*keyframes/,\n multipleSpaces: /\\s+/g\n}\n\nconst VAR_START = '--';\nconst MEDIA_START = '@media';\nconst AT_START = '@';\n","/**\n@license\nCopyright (c) 2017 The Polymer Project Authors. All rights reserved.\nThis code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt\nThe complete set of authors may be found at http://polymer.github.io/AUTHORS.txt\nThe complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt\nCode distributed by Google as part of the polymer project is also\nsubject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt\n*/\n\nexport const VAR_ASSIGN = /(?:^|[;\\s{]\\s*)(--[\\w-]*?)\\s*:\\s*(?:((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};{])+)|\\{([^}]*)\\}(?:(?=[;\\s}])|$))/gi;\nexport const MIXIN_MATCH = /(?:^|\\W+)@apply\\s*\\(?([^);\\n]*)\\)?/gi;\nexport const VAR_CONSUMED = /(--[\\w-]+)\\s*([:,;)]|$)/gi;\nexport const ANIMATION_MATCH = /(animation\\s*:)|(animation-name\\s*:)/;\nexport const MEDIA_MATCH = /@media\\s(.*)/;\nexport const IS_VAR = /^--/;\nexport const BRACKETED = /\\{[^}]*\\}/g;\nexport const HOST_PREFIX = '(?:^|[^.#[:])';\nexport const HOST_SUFFIX = '($|[.:[\\\\s>+~])';\n","/**\n@license\nCopyright (c) 2017 The Polymer Project Authors. All rights reserved.\nThis code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt\nThe complete set of authors may be found at http://polymer.github.io/AUTHORS.txt\nThe complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt\nCode distributed by Google as part of the polymer project is also\nsubject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt\n*/\n\n'use strict';\n\n/** @type {!Set} */\nconst styleTextSet = new Set();\n\nexport const scopingAttribute = 'shady-unscoped';\n\n/**\n * Add a specifically-marked style to the document directly, and only one copy of that style.\n *\n * @param {!HTMLStyleElement} style\n * @return {undefined}\n */\nexport function processUnscopedStyle(style) {\n const text = style.textContent;\n if (!styleTextSet.has(text)) {\n styleTextSet.add(text);\n const newStyle = style.cloneNode(true);\n document.head.appendChild(newStyle);\n }\n}\n\n/**\n * Check if a style is supposed to be unscoped\n * @param {!HTMLStyleElement} style\n * @return {boolean} true if the style has the unscoping attribute\n */\nexport function isUnscopedStyle(style) {\n return style.hasAttribute(scopingAttribute);\n}","/**\n@license\nCopyright (c) 2017 The Polymer Project Authors. All rights reserved.\nThis code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt\nThe complete set of authors may be found at http://polymer.github.io/AUTHORS.txt\nThe complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt\nCode distributed by Google as part of the polymer project is also\nsubject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt\n*/\n\n'use strict';\n\nimport {nativeShadow, nativeCssVariables, cssBuild} from './style-settings.js';\nimport {parse, stringify, types, StyleNode} from './css-parse.js'; // eslint-disable-line no-unused-vars\nimport {MEDIA_MATCH} from './common-regex.js';\nimport {processUnscopedStyle, isUnscopedStyle} from './unscoped-style-handler.js';\n\n/**\n * @param {string|StyleNode} rules\n * @param {function(StyleNode)=} callback\n * @return {string}\n */\nexport function toCssText (rules, callback) {\n if (!rules) {\n return '';\n }\n if (typeof rules === 'string') {\n rules = parse(rules);\n }\n if (callback) {\n forEachRule(rules, callback);\n }\n return stringify(rules, nativeCssVariables);\n}\n\n/**\n * @param {HTMLStyleElement} style\n * @return {StyleNode}\n */\nexport function rulesForStyle(style) {\n if (!style['__cssRules'] && style.textContent) {\n style['__cssRules'] = parse(style.textContent);\n }\n return style['__cssRules'] || null;\n}\n\n// Tests if a rule is a keyframes selector, which looks almost exactly\n// like a normal selector but is not (it has nothing to do with scoping\n// for example).\n/**\n * @param {StyleNode} rule\n * @return {boolean}\n */\nexport function isKeyframesSelector(rule) {\n return Boolean(rule['parent']) &&\n rule['parent']['type'] === types.KEYFRAMES_RULE;\n}\n\n/**\n * @param {StyleNode} node\n * @param {Function=} styleRuleCallback\n * @param {Function=} keyframesRuleCallback\n * @param {boolean=} onlyActiveRules\n */\nexport function forEachRule(node, styleRuleCallback, keyframesRuleCallback, onlyActiveRules) {\n if (!node) {\n return;\n }\n let skipRules = false;\n let type = node['type'];\n if (onlyActiveRules) {\n if (type === types.MEDIA_RULE) {\n let matchMedia = node['selector'].match(MEDIA_MATCH);\n if (matchMedia) {\n // if rule is a non matching @media rule, skip subrules\n if (!window.matchMedia(matchMedia[1]).matches) {\n skipRules = true;\n }\n }\n }\n }\n if (type === types.STYLE_RULE) {\n styleRuleCallback(node);\n } else if (keyframesRuleCallback &&\n type === types.KEYFRAMES_RULE) {\n keyframesRuleCallback(node);\n } else if (type === types.MIXIN_RULE) {\n skipRules = true;\n }\n let r$ = node['rules'];\n if (r$ && !skipRules) {\n for (let i=0, l=r$.length, r; (i node);\n\n/**\n * @param {Element | {is: string, extends: string}} element\n * @return {{is: string, typeExtension: string}}\n */\nexport function getIsExtends(element) {\n let localName = element['localName'];\n let is = '', typeExtension = '';\n /*\n NOTE: technically, this can be wrong for certain svg elements\n with `-` in the name like ``\n */\n if (localName) {\n if (localName.indexOf('-') > -1) {\n is = localName;\n } else {\n typeExtension = localName;\n is = (element.getAttribute && element.getAttribute('is')) || '';\n }\n } else {\n is = /** @type {?} */(element).is;\n typeExtension = /** @type {?} */(element).extends;\n }\n return {is, typeExtension};\n}\n\n/**\n * @param {Element|DocumentFragment} element\n * @return {string}\n */\nexport function gatherStyleText(element) {\n /** @type {!Array} */\n const styleTextParts = [];\n const styles = /** @type {!NodeList} */(element.querySelectorAll('style'));\n for (let i = 0; i < styles.length; i++) {\n const style = styles[i];\n if (isUnscopedStyle(style)) {\n if (!nativeShadow) {\n processUnscopedStyle(style);\n style.parentNode.removeChild(style);\n }\n } else {\n styleTextParts.push(style.textContent);\n style.parentNode.removeChild(style);\n }\n }\n return styleTextParts.join('').trim();\n}\n\n/**\n * Split a selector separated by commas into an array in a smart way\n * @param {string} selector\n * @return {!Array}\n */\nexport function splitSelectorList(selector) {\n const parts = [];\n let part = '';\n for (let i = 0; i >= 0 && i < selector.length; i++) {\n // A selector with parentheses will be one complete part\n if (selector[i] === '(') {\n // find the matching paren\n const end = findMatchingParen(selector, i);\n // push the paren block into the part\n part += selector.slice(i, end + 1);\n // move the index to after the paren block\n i = end;\n } else if (selector[i] === ',') {\n parts.push(part);\n part = '';\n } else {\n part += selector[i];\n }\n }\n // catch any pieces after the last comma\n if (part) {\n parts.push(part);\n }\n return parts;\n}\n\nconst CSS_BUILD_ATTR = 'css-build';\n\n/**\n * Return the polymer-css-build \"build type\" applied to this element\n *\n * @param {!HTMLElement} element\n * @return {string} Can be \"\", \"shady\", or \"shadow\"\n */\nexport function getCssBuild(element) {\n if (cssBuild !== undefined) {\n return /** @type {string} */(cssBuild);\n }\n if (element.__cssBuild === undefined) {\n // try attribute first, as it is the common case\n const attrValue = element.getAttribute(CSS_BUILD_ATTR);\n if (attrValue) {\n element.__cssBuild = attrValue;\n } else {\n const buildComment = getBuildComment(element);\n if (buildComment !== '') {\n // remove build comment so it is not needlessly copied into every element instance\n removeBuildComment(element);\n }\n element.__cssBuild = buildComment;\n }\n }\n return element.__cssBuild || '';\n}\n\n/**\n * Check if the given element, either a