/** @license Copyright (c) 2017 The Polymer Project Authors. All rights reserved. This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt Code distributed by Google as part of the polymer project is also subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt */ 'use strict'; import CustomStyleInterface from '../src/custom-style-interface.js'; // prettier-ignore import {getComputedStyleValue, updateNativeProperties} from '../src/common-utils.js'; // prettier-ignore import {nativeCssVariables, nativeShadow, cssBuild, disableRuntime} from '../src/style-settings.js'; const customStyleInterface = new CustomStyleInterface(); if (!window.ShadyCSS) { window.ShadyCSS = { /** * @param {!HTMLTemplateElement} template * @param {string} elementName * @param {string=} elementExtends */ prepareTemplate(template, elementName, elementExtends) {}, // eslint-disable-line @typescript-eslint/no-unused-vars /** * @param {!HTMLTemplateElement} template * @param {string} elementName */ prepareTemplateDom(template, elementName) {}, // eslint-disable-line @typescript-eslint/no-unused-vars /** * @param {!HTMLTemplateElement} template * @param {string} elementName * @param {string=} elementExtends */ prepareTemplateStyles(template, elementName, elementExtends) {}, // eslint-disable-line @typescript-eslint/no-unused-vars /** * @param {Element} element * @param {Object=} properties */ styleSubtree(element, properties) { customStyleInterface.processStyles(); updateNativeProperties(element, properties); }, /** * @param {Element} element */ // eslint-disable-next-line @typescript-eslint/no-unused-vars styleElement(element) { customStyleInterface.processStyles(); }, /** * @param {Object=} properties */ styleDocument(properties) { customStyleInterface.processStyles(); updateNativeProperties(document.body, properties); }, /** * @param {Element} element * @param {string} property * @return {string} */ getComputedStyleValue(element, property) { return getComputedStyleValue(element, property); }, flushCustomStyles() {}, nativeCss: nativeCssVariables, nativeShadow: nativeShadow, cssBuild: cssBuild, disableRuntime: disableRuntime, }; } window.ShadyCSS.CustomStyleInterface = customStyleInterface;