Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(200)

Side by Side Diff: pkg/web_components/lib/platform.concat.js

Issue 420673002: Roll polymer packages to version 0.3.4 (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « pkg/web_components/lib/platform.js ('k') | pkg/web_components/lib/platform.concat.js.map » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /** 1 /**
2 * Copyright (c) 2014 The Polymer Project Authors. All rights reserved. 2 * Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
3 * This code may only be used under the BSD style license found at http://polyme r.github.io/LICENSE.txt 3 * This code may only be used under the BSD style license found at http://polyme r.github.io/LICENSE.txt
4 * The complete set of authors may be found at http://polymer.github.io/AUTHORS. txt 4 * The complete set of authors may be found at http://polymer.github.io/AUTHORS. txt
5 * The complete set of contributors may be found at http://polymer.github.io/CON TRIBUTORS.txt 5 * The complete set of contributors may be found at http://polymer.github.io/CON TRIBUTORS.txt
6 * Code distributed by Google as part of the polymer project is also 6 * Code distributed by Google as part of the polymer project is also
7 * subject to an additional IP rights grant found at http://polymer.github.io/PA TENTS.txt 7 * subject to an additional IP rights grant found at http://polymer.github.io/PA TENTS.txt
8 */ 8 */
9 9
10 window.Platform = window.Platform || {}; 10 window.Platform = window.Platform || {};
(...skipping 389 matching lines...) Expand 10 before | Expand all | Expand 10 after
400 function isIdent(s) { 400 function isIdent(s) {
401 return identRegExp.test(s); 401 return identRegExp.test(s);
402 } 402 }
403 403
404 var constructorIsPrivate = {}; 404 var constructorIsPrivate = {};
405 405
406 function Path(parts, privateToken) { 406 function Path(parts, privateToken) {
407 if (privateToken !== constructorIsPrivate) 407 if (privateToken !== constructorIsPrivate)
408 throw Error('Use Path.get to retrieve path objects'); 408 throw Error('Use Path.get to retrieve path objects');
409 409
410 if (parts.length) 410 for (var i = 0; i < parts.length; i++) {
411 Array.prototype.push.apply(this, parts.slice()); 411 this.push(String(parts[i]));
412 }
412 413
413 if (hasEval && this.length) { 414 if (hasEval && this.length) {
414 this.getValueFrom = this.compiledGetValueFromFn(); 415 this.getValueFrom = this.compiledGetValueFromFn();
415 } 416 }
416 } 417 }
417 418
418 // TODO(rafaelw): Make simple LRU cache 419 // TODO(rafaelw): Make simple LRU cache
419 var pathCache = {}; 420 var pathCache = {};
420 421
421 function getPath(pathString) { 422 function getPath(pathString) {
(...skipping 465 matching lines...) Expand 10 before | Expand all | Expand 10 after
887 888
888 allObservers.push(observer); 889 allObservers.push(observer);
889 } 890 }
890 891
891 function removeFromAll(observer) { 892 function removeFromAll(observer) {
892 Observer._allObserversCount--; 893 Observer._allObserversCount--;
893 } 894 }
894 895
895 var runningMicrotaskCheckpoint = false; 896 var runningMicrotaskCheckpoint = false;
896 897
897 var hasDebugForceFullDelivery = hasObserve && (function() { 898 var hasDebugForceFullDelivery = hasObserve && hasEval && (function() {
898 try { 899 try {
899 eval('%RunMicrotasks()'); 900 eval('%RunMicrotasks()');
900 return true; 901 return true;
901 } catch (ex) { 902 } catch (ex) {
902 return false; 903 return false;
903 } 904 }
904 })(); 905 })();
905 906
906 global.Platform = global.Platform || {}; 907 global.Platform = global.Platform || {};
907 908
(...skipping 4539 matching lines...) Expand 10 before | Expand all | Expand 10 after
5447 */ 5448 */
5448 5449
5449 (function(scope) { 5450 (function(scope) {
5450 'use strict'; 5451 'use strict';
5451 5452
5452 var HTMLElement = scope.wrappers.HTMLElement; 5453 var HTMLElement = scope.wrappers.HTMLElement;
5453 var mixin = scope.mixin; 5454 var mixin = scope.mixin;
5454 var registerWrapper = scope.registerWrapper; 5455 var registerWrapper = scope.registerWrapper;
5455 var wrapHTMLCollection = scope.wrapHTMLCollection; 5456 var wrapHTMLCollection = scope.wrapHTMLCollection;
5456 var unwrap = scope.unwrap; 5457 var unwrap = scope.unwrap;
5457 var wrap = scope.wrap;
5458 5458
5459 var OriginalHTMLFormElement = window.HTMLFormElement; 5459 var OriginalHTMLFormElement = window.HTMLFormElement;
5460 5460
5461 function HTMLFormElement(node) { 5461 function HTMLFormElement(node) {
5462 HTMLElement.call(this, node); 5462 HTMLElement.call(this, node);
5463 } 5463 }
5464 HTMLFormElement.prototype = Object.create(HTMLElement.prototype); 5464 HTMLFormElement.prototype = Object.create(HTMLElement.prototype);
5465 mixin(HTMLFormElement.prototype, { 5465 mixin(HTMLFormElement.prototype, {
5466 get elements() { 5466 get elements() {
5467 // Note: technically this should be an HTMLFormControlsCollection, but 5467 // Note: technically this should be an HTMLFormControlsCollection, but
(...skipping 1217 matching lines...) Expand 10 before | Expand all | Expand 10 after
6685 this.dirty = false; 6685 this.dirty = false;
6686 }, 6686 },
6687 6687
6688 get parentRenderer() { 6688 get parentRenderer() {
6689 return getTreeScope(this.host).renderer; 6689 return getTreeScope(this.host).renderer;
6690 }, 6690 },
6691 6691
6692 invalidate: function() { 6692 invalidate: function() {
6693 if (!this.dirty) { 6693 if (!this.dirty) {
6694 this.dirty = true; 6694 this.dirty = true;
6695 var parentRenderer = this.parentRenderer;
6696 if (parentRenderer)
6697 parentRenderer.invalidate();
6695 pendingDirtyRenderers.push(this); 6698 pendingDirtyRenderers.push(this);
6696 if (renderTimer) 6699 if (renderTimer)
6697 return; 6700 return;
6698 renderTimer = window[request](handleRequestAnimationFrame, 0); 6701 renderTimer = window[request](handleRequestAnimationFrame, 0);
6699 } 6702 }
6700 }, 6703 },
6701 6704
6702 // http://w3c.github.io/webcomponents/spec/shadow/#distribution-algorithms 6705 // http://w3c.github.io/webcomponents/spec/shadow/#distribution-algorithms
6703 distribution: function(root) { 6706 distribution: function(root) {
6704 this.resetAll(root); 6707 this.resetAll(root);
(...skipping 893 matching lines...) Expand 10 before | Expand all | Expand 10 after
7598 var unwrap = scope.unwrap; 7601 var unwrap = scope.unwrap;
7599 7602
7600 // DataTransfer (Clipboard in old Blink/WebKit) has a single method that 7603 // DataTransfer (Clipboard in old Blink/WebKit) has a single method that
7601 // requires wrapping. Since it is only a method we do not need a real wrapper, 7604 // requires wrapping. Since it is only a method we do not need a real wrapper,
7602 // we can just override the method. 7605 // we can just override the method.
7603 7606
7604 var OriginalDataTransfer = window.DataTransfer || window.Clipboard; 7607 var OriginalDataTransfer = window.DataTransfer || window.Clipboard;
7605 var OriginalDataTransferSetDragImage = 7608 var OriginalDataTransferSetDragImage =
7606 OriginalDataTransfer.prototype.setDragImage; 7609 OriginalDataTransfer.prototype.setDragImage;
7607 7610
7608 OriginalDataTransfer.prototype.setDragImage = function(image, x, y) { 7611 if (OriginalDataTransferSetDragImage) {
7609 OriginalDataTransferSetDragImage.call(this, unwrap(image), x, y); 7612 OriginalDataTransfer.prototype.setDragImage = function(image, x, y) {
7610 }; 7613 OriginalDataTransferSetDragImage.call(this, unwrap(image), x, y);
7614 };
7615 }
7611 7616
7612 })(window.ShadowDOMPolyfill); 7617 })(window.ShadowDOMPolyfill);
7613 7618
7619 /**
7620 * Copyright 2014 The Polymer Authors. All rights reserved.
7621 * Use of this source code is goverened by a BSD-style
7622 * license that can be found in the LICENSE file.
7623 */
7624
7625 (function(scope) {
7626 'use strict';
7627
7628 var registerWrapper = scope.registerWrapper;
7629 var unwrap = scope.unwrap;
7630
7631 var OriginalFormData = window.FormData;
7632
7633 function FormData(formElement) {
7634 this.impl = new OriginalFormData(formElement && unwrap(formElement));
7635 }
7636
7637 registerWrapper(OriginalFormData, FormData, new OriginalFormData());
7638
7639 scope.wrappers.FormData = FormData;
7640
7641 })(window.ShadowDOMPolyfill);
7642
7614 // Copyright 2013 The Polymer Authors. All rights reserved. 7643 // Copyright 2013 The Polymer Authors. All rights reserved.
7615 // Use of this source code is goverened by a BSD-style 7644 // Use of this source code is goverened by a BSD-style
7616 // license that can be found in the LICENSE file. 7645 // license that can be found in the LICENSE file.
7617 7646
7618 (function(scope) { 7647 (function(scope) {
7619 'use strict'; 7648 'use strict';
7620 7649
7621 var isWrapperFor = scope.isWrapperFor; 7650 var isWrapperFor = scope.isWrapperFor;
7622 7651
7623 // This is a list of the elements we currently override the global constructor 7652 // This is a list of the elements we currently override the global constructor
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after
8106 * 8135 *
8107 * and converts this to 8136 * and converts this to
8108 * 8137 *
8109 * scopeName .foo { ... } 8138 * scopeName .foo { ... }
8110 */ 8139 */
8111 scopeCssText: function(cssText, scopeSelector) { 8140 scopeCssText: function(cssText, scopeSelector) {
8112 var unscoped = this.extractUnscopedRulesFromCssText(cssText); 8141 var unscoped = this.extractUnscopedRulesFromCssText(cssText);
8113 cssText = this.insertPolyfillHostInCssText(cssText); 8142 cssText = this.insertPolyfillHostInCssText(cssText);
8114 cssText = this.convertColonHost(cssText); 8143 cssText = this.convertColonHost(cssText);
8115 cssText = this.convertColonHostContext(cssText); 8144 cssText = this.convertColonHostContext(cssText);
8116 cssText = this.convertCombinators(cssText); 8145 cssText = this.convertShadowDOMSelectors(cssText);
8117 if (scopeSelector) { 8146 if (scopeSelector) {
8118 var self = this, cssText; 8147 var self = this, cssText;
8119 withCssRules(cssText, function(rules) { 8148 withCssRules(cssText, function(rules) {
8120 cssText = self.scopeRules(rules, scopeSelector); 8149 cssText = self.scopeRules(rules, scopeSelector);
8121 }); 8150 });
8122 8151
8123 } 8152 }
8124 cssText = cssText + '\n' + unscoped; 8153 cssText = cssText + '\n' + unscoped;
8125 return cssText.trim(); 8154 return cssText.trim();
8126 }, 8155 },
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
8199 if (part.match(polyfillHost)) { 8228 if (part.match(polyfillHost)) {
8200 return this.colonHostPartReplacer(host, part, suffix); 8229 return this.colonHostPartReplacer(host, part, suffix);
8201 } else { 8230 } else {
8202 return host + part + suffix + ', ' + part + ' ' + host + suffix; 8231 return host + part + suffix + ', ' + part + ' ' + host + suffix;
8203 } 8232 }
8204 }, 8233 },
8205 colonHostPartReplacer: function(host, part, suffix) { 8234 colonHostPartReplacer: function(host, part, suffix) {
8206 return host + part.replace(polyfillHost, '') + suffix; 8235 return host + part.replace(polyfillHost, '') + suffix;
8207 }, 8236 },
8208 /* 8237 /*
8209 * Convert ^ and ^^ combinators by replacing with space. 8238 * Convert combinators like ::shadow and pseudo-elements like ::content
8239 * by replacing with space.
8210 */ 8240 */
8211 convertCombinators: function(cssText) { 8241 convertShadowDOMSelectors: function(cssText) {
8212 for (var i=0; i < combinatorsRe.length; i++) { 8242 for (var i=0; i < shadowDOMSelectorsRe.length; i++) {
8213 cssText = cssText.replace(combinatorsRe[i], ' '); 8243 cssText = cssText.replace(shadowDOMSelectorsRe[i], ' ');
8214 } 8244 }
8215 return cssText; 8245 return cssText;
8216 }, 8246 },
8217 // change a selector like 'div' to 'name div' 8247 // change a selector like 'div' to 'name div'
8218 scopeRules: function(cssRules, scopeSelector) { 8248 scopeRules: function(cssRules, scopeSelector) {
8219 var cssText = ''; 8249 var cssText = '';
8220 if (cssRules) { 8250 if (cssRules) {
8221 Array.prototype.forEach.call(cssRules, function(rule) { 8251 Array.prototype.forEach.call(cssRules, function(rule) {
8222 if (rule.selectorText && (rule.style && rule.style.cssText !== undefined )) { 8252 if (rule.selectorText && (rule.style && rule.style.cssText !== undefined )) {
8223 cssText += this.scopeSelector(rule.selectorText, scopeSelector, 8253 cssText += this.scopeSelector(rule.selectorText, scopeSelector,
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
8358 } else { 8388 } else {
8359 addCssToDocument(cssText); 8389 addCssToDocument(cssText);
8360 } 8390 }
8361 } 8391 }
8362 }; 8392 };
8363 8393
8364 var selectorRe = /([^{]*)({[\s\S]*?})/gim, 8394 var selectorRe = /([^{]*)({[\s\S]*?})/gim,
8365 cssCommentRe = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim, 8395 cssCommentRe = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,
8366 // TODO(sorvell): remove either content or comment 8396 // TODO(sorvell): remove either content or comment
8367 cssCommentNextSelectorRe = /\/\*\s*@polyfill ([^*]*\*+([^/*][^*]*\*+)*\/)([^ {]*?){/gim, 8397 cssCommentNextSelectorRe = /\/\*\s*@polyfill ([^*]*\*+([^/*][^*]*\*+)*\/)([^ {]*?){/gim,
8368 cssContentNextSelectorRe = /polyfill-next-selector[^}]*content\:[\s]*'([^']* )'[^}]*}([^{]*?){/gim, 8398 cssContentNextSelectorRe = /polyfill-next-selector[^}]*content\:[\s]*['|"]([ ^'"]*)['|"][^}]*}([^{]*?){/gim,
8369 // TODO(sorvell): remove either content or comment 8399 // TODO(sorvell): remove either content or comment
8370 cssCommentRuleRe = /\/\*\s@polyfill-rule([^*]*\*+([^/*][^*]*\*+)*)\//gim, 8400 cssCommentRuleRe = /\/\*\s@polyfill-rule([^*]*\*+([^/*][^*]*\*+)*)\//gim,
8371 cssContentRuleRe = /(polyfill-rule)[^}]*(content\:[\s]*'([^']*)'[^;]*;)[^}]* }/gim, 8401 cssContentRuleRe = /(polyfill-rule)[^}]*(content\:[\s]*['|"]([^'"]*)['|"][^; ]*;)[^}]*}/gim,
8372 // TODO(sorvell): remove either content or comment 8402 // TODO(sorvell): remove either content or comment
8373 cssCommentUnscopedRuleRe = /\/\*\s@polyfill-unscoped-rule([^*]*\*+([^/*][^*] *\*+)*)\//gim, 8403 cssCommentUnscopedRuleRe = /\/\*\s@polyfill-unscoped-rule([^*]*\*+([^/*][^*] *\*+)*)\//gim,
8374 cssContentUnscopedRuleRe = /(polyfill-unscoped-rule)[^}]*(content\:[\s]*'([^ ']*)'[^;]*;)[^}]*}/gim, 8404 cssContentUnscopedRuleRe = /(polyfill-unscoped-rule)[^}]*(content\:[\s]*['|" ]([^'"]*)['|"][^;]*;)[^}]*}/gim,
8375 cssPseudoRe = /::(x-[^\s{,(]*)/gim, 8405 cssPseudoRe = /::(x-[^\s{,(]*)/gim,
8376 cssPartRe = /::part\(([^)]*)\)/gim, 8406 cssPartRe = /::part\(([^)]*)\)/gim,
8377 // note: :host pre-processed to -shadowcsshost. 8407 // note: :host pre-processed to -shadowcsshost.
8378 polyfillHost = '-shadowcsshost', 8408 polyfillHost = '-shadowcsshost',
8379 // note: :host-context pre-processed to -shadowcsshostcontext. 8409 // note: :host-context pre-processed to -shadowcsshostcontext.
8380 polyfillHostContext = '-shadowcsscontext', 8410 polyfillHostContext = '-shadowcsscontext',
8381 parenSuffix = ')(?:\\((' + 8411 parenSuffix = ')(?:\\((' +
8382 '(?:\\([^)(]*\\)|[^)(]*)+?' + 8412 '(?:\\([^)(]*\\)|[^)(]*)+?' +
8383 ')\\))?([^,{]*)'; 8413 ')\\))?([^,{]*)';
8384 cssColonHostRe = new RegExp('(' + polyfillHost + parenSuffix, 'gim'), 8414 cssColonHostRe = new RegExp('(' + polyfillHost + parenSuffix, 'gim'),
8385 cssColonHostContextRe = new RegExp('(' + polyfillHostContext + parenSuffix, 'gim'), 8415 cssColonHostContextRe = new RegExp('(' + polyfillHostContext + parenSuffix, 'gim'),
8386 selectorReSuffix = '([>\\s~+\[.,{:][\\s\\S]*)?$', 8416 selectorReSuffix = '([>\\s~+\[.,{:][\\s\\S]*)?$',
8387 colonHostRe = /\:host/gim, 8417 colonHostRe = /\:host/gim,
8388 colonHostContextRe = /\:host-context/gim, 8418 colonHostContextRe = /\:host-context/gim,
8389 /* host name without combinator */ 8419 /* host name without combinator */
8390 polyfillHostNoCombinator = polyfillHost + '-no-combinator', 8420 polyfillHostNoCombinator = polyfillHost + '-no-combinator',
8391 polyfillHostRe = new RegExp(polyfillHost, 'gim'), 8421 polyfillHostRe = new RegExp(polyfillHost, 'gim'),
8392 polyfillHostContextRe = new RegExp(polyfillHostContext, 'gim'), 8422 polyfillHostContextRe = new RegExp(polyfillHostContext, 'gim'),
8393 combinatorsRe = [ 8423 shadowDOMSelectorsRe = [
8394 /\^\^/g, 8424 /\^\^/g,
8395 /\^/g, 8425 /\^/g,
8396 /\/shadow\//g, 8426 /\/shadow\//g,
8397 /\/shadow-deep\//g, 8427 /\/shadow-deep\//g,
8398 /::shadow/g, 8428 /::shadow/g,
8399 /\/deep\//g 8429 /\/deep\//g,
8430 /::content/g
8400 ]; 8431 ];
8401 8432
8402 function stylesToCssText(styles, preserveComments) { 8433 function stylesToCssText(styles, preserveComments) {
8403 var cssText = ''; 8434 var cssText = '';
8404 Array.prototype.forEach.call(styles, function(s) { 8435 Array.prototype.forEach.call(styles, function(s) {
8405 cssText += s.textContent + '\n\n'; 8436 cssText += s.textContent + '\n\n';
8406 }); 8437 });
8407 // strip comments for easier processing 8438 // strip comments for easier processing
8408 if (!preserveComments) { 8439 if (!preserveComments) {
8409 cssText = cssText.replace(cssCommentRe, ''); 8440 cssText = cssText.replace(cssCommentRe, '');
(...skipping 2441 matching lines...) Expand 10 before | Expand all | Expand 10 after
10851 } 10882 }
10852 return true; 10883 return true;
10853 } 10884 }
10854 }; 10885 };
10855 10886
10856 function nodeIsImport(elt) { 10887 function nodeIsImport(elt) {
10857 return (elt.localName === 'link') && (elt.rel === IMPORT_LINK_TYPE); 10888 return (elt.localName === 'link') && (elt.rel === IMPORT_LINK_TYPE);
10858 } 10889 }
10859 10890
10860 function generateScriptDataUrl(script) { 10891 function generateScriptDataUrl(script) {
10861 var scriptContent = generateScriptContent(script), b64; 10892 var scriptContent = generateScriptContent(script);
10893 var b64 = 'data:text/javascript';
10894 // base64 may be smaller, but does not handle unicode characters
10895 // attempt base64 first, fall back to escaped text
10862 try { 10896 try {
10863 b64 = btoa(scriptContent); 10897 b64 += (';base64,' + btoa(scriptContent));
10864 } catch(e) { 10898 } catch(e) {
10865 b64 = btoa(unescape(encodeURIComponent(scriptContent))); 10899 b64 += (';charset=utf-8,' + encodeURIComponent(scriptContent));
10866 console.warn('Script contained non-latin characters that were forced ' +
10867 'to latin. Some characters may be wrong.', script);
10868 } 10900 }
10869 return 'data:text/javascript;base64,' + b64; 10901 return b64;
10870 } 10902 }
10871 10903
10872 function generateScriptContent(script) { 10904 function generateScriptContent(script) {
10873 return script.textContent + generateSourceMapHint(script); 10905 return script.textContent + generateSourceMapHint(script);
10874 } 10906 }
10875 10907
10876 // calculate source map hint 10908 // calculate source map hint
10877 function generateSourceMapHint(script) { 10909 function generateSourceMapHint(script) {
10878 var moniker = script.__nodeUrl; 10910 var moniker = script.__nodeUrl;
10879 if (!moniker) { 10911 if (!moniker) {
(...skipping 337 matching lines...) Expand 10 before | Expand all | Expand 10 after
11217 function markTargetLoaded(event) { 11249 function markTargetLoaded(event) {
11218 event.target.__loaded = true; 11250 event.target.__loaded = true;
11219 } 11251 }
11220 11252
11221 } 11253 }
11222 11254
11223 // exports 11255 // exports
11224 scope.hasNative = hasNative; 11256 scope.hasNative = hasNative;
11225 scope.useNative = useNative; 11257 scope.useNative = useNative;
11226 scope.importer = importer; 11258 scope.importer = importer;
11227 scope.whenImportsReady = whenImportsReady;
11228 scope.IMPORT_LINK_TYPE = IMPORT_LINK_TYPE; 11259 scope.IMPORT_LINK_TYPE = IMPORT_LINK_TYPE;
11229 scope.isImportLoaded = isImportLoaded; 11260 scope.isImportLoaded = isImportLoaded;
11230 scope.importLoader = importLoader; 11261 scope.importLoader = importLoader;
11262 scope.whenReady = whenImportsReady;
11263
11264 // deprecated
11265 scope.whenImportsReady = whenImportsReady;
11231 11266
11232 })(window.HTMLImports); 11267 })(window.HTMLImports);
11233 11268
11234 /* 11269 /*
11235 Copyright 2013 The Polymer Authors. All rights reserved. 11270 Copyright 2013 The Polymer Authors. All rights reserved.
11236 Use of this source code is governed by a BSD-style 11271 Use of this source code is governed by a BSD-style
11237 license that can be found in the LICENSE file. 11272 license that can be found in the LICENSE file.
11238 */ 11273 */
11239 11274
11240 (function(scope){ 11275 (function(scope){
(...skipping 2952 matching lines...) Expand 10 before | Expand all | Expand 10 after
14193 } 14228 }
14194 } 14229 }
14195 14230
14196 // exports 14231 // exports
14197 scope.flush = flush; 14232 scope.flush = flush;
14198 14233
14199 })(window.Platform); 14234 })(window.Platform);
14200 14235
14201 14236
14202 //# sourceMappingURL=platform.concat.js.map 14237 //# sourceMappingURL=platform.concat.js.map
OLDNEW
« no previous file with comments | « pkg/web_components/lib/platform.js ('k') | pkg/web_components/lib/platform.concat.js.map » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698