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

Side by Side Diff: third_party/polymer/v0_8/components-chromium/polymer/src/lib/style-util-extracted.js

Issue 1082403004: Import Polymer 0.8 and several key elements. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rerun reproduce.sh Created 5 years, 8 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
OLDNEW
(Empty)
1
2
3 (function() {
4
5 function toCssText(rules, callback) {
6 if (typeof rules === 'string') {
7 rules = Polymer.CssParse.parse(rules);
8 }
9 if (callback) {
10 forEachStyleRule(rules, callback);
11 }
12 return Polymer.CssParse.stringify(rules);
13 }
14
15 function forEachStyleRule(node, cb) {
16 var s = node.selector;
17 var skipRules = false;
18 if (s) {
19 if ((s.indexOf(AT_RULE) !== 0) && (s.indexOf(MIXIN_SELECTOR) !== 0)) {
20 cb(node);
21 }
22 skipRules = (s.indexOf(KEYFRAME_RULE) >= 0) ||
23 (s.indexOf(MIXIN_SELECTOR) >= 0);
24 }
25 var r$ = node.rules;
26 if (r$ && !skipRules) {
27 for (var i=0, l=r$.length, r; (i<l) && (r=r$[i]); i++) {
28 forEachStyleRule(r, cb);
29 }
30 }
31 }
32
33 // add a string of cssText to the document.
34 function applyCss(cssText, moniker, target, lowPriority) {
35 var style = document.createElement('style');
36 if (moniker) {
37 style.setAttribute('scope', moniker);
38 }
39 style.textContent = cssText;
40 target = target || document.head;
41 if (lowPriority) {
42 var n$ = target.querySelectorAll('style[scope]');
43 var ref = n$.length ? n$[n$.length-1].nextSibling : target.firstChild;
44 target.insertBefore(style, ref);
45 } else {
46 target.appendChild(style);
47 }
48 return style;
49 }
50
51 var AT_RULE = '@';
52 var KEYFRAME_RULE = 'keyframe';
53 var MIXIN_SELECTOR = '--';
54
55 // exports
56 Polymer.StyleUtil = {
57 parser: Polymer.CssParse,
58 applyCss: applyCss,
59 forEachStyleRule: forEachStyleRule,
60 toCssText: toCssText
61 };
62
63 })();
64
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698