@acemir/cssom 0.9.19 → 0.9.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule
5
6
  };
6
7
  ///CommonJS
@@ -12,7 +13,6 @@ var CSSOM = {
12
13
  */
13
14
  CSSOM.CSSConditionRule = function CSSConditionRule() {
14
15
  CSSOM.CSSGroupingRule.call(this);
15
- this.cssRules = [];
16
16
  };
17
17
 
18
18
  CSSOM.CSSConditionRule.prototype = new CSSOM.CSSGroupingRule();
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule,
5
6
  CSSConditionRule: require("./CSSConditionRule").CSSConditionRule,
6
7
  };
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  MatcherList: require("./MatcherList").MatcherList
5
6
  };
6
7
  ///CommonJS
@@ -13,7 +14,7 @@ var CSSOM = {
13
14
  CSSOM.CSSDocumentRule = function CSSDocumentRule() {
14
15
  CSSOM.CSSRule.call(this);
15
16
  this.matcher = new CSSOM.MatcherList();
16
- this.cssRules = [];
17
+ this.cssRules = new CSSOM.CSSRuleList();
17
18
  };
18
19
 
19
20
  CSSOM.CSSDocumentRule.prototype = new CSSOM.CSSRule();
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  parse: require('./parse').parse
5
6
  };
6
7
  var errorUtils = require("./errorUtils").errorUtils;
@@ -13,7 +14,7 @@ var errorUtils = require("./errorUtils").errorUtils;
13
14
  */
14
15
  CSSOM.CSSGroupingRule = function CSSGroupingRule() {
15
16
  CSSOM.CSSRule.call(this);
16
- this.cssRules = [];
17
+ this.cssRules = new CSSOM.CSSRuleList();
17
18
  };
18
19
 
19
20
  CSSOM.CSSGroupingRule.prototype = new CSSOM.CSSRule();
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
- CSSRule: require("./CSSRule").CSSRule
3
+ CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList
4
5
  };
5
6
  ///CommonJS
6
7
 
@@ -11,7 +12,7 @@ var CSSOM = {
11
12
  */
12
13
  CSSOM.CSSHostRule = function CSSHostRule() {
13
14
  CSSOM.CSSRule.call(this);
14
- this.cssRules = [];
15
+ this.cssRules = new CSSOM.CSSRuleList();
15
16
  };
16
17
 
17
18
  CSSOM.CSSHostRule.prototype = new CSSOM.CSSRule();
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  parse: require("./parse").parse
5
6
  };
6
7
  var errorUtils = require("./errorUtils").errorUtils;
@@ -14,7 +15,7 @@ var errorUtils = require("./errorUtils").errorUtils;
14
15
  CSSOM.CSSKeyframesRule = function CSSKeyframesRule() {
15
16
  CSSOM.CSSRule.call(this);
16
17
  this.name = '';
17
- this.cssRules = [];
18
+ this.cssRules = new CSSOM.CSSRuleList();
18
19
 
19
20
  // Set up initial indexed access
20
21
  this._setupIndexedAccess();
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule,
5
6
  };
6
7
  ///CommonJS
@@ -12,7 +13,6 @@ var CSSOM = {
12
13
  CSSOM.CSSLayerBlockRule = function CSSLayerBlockRule() {
13
14
  CSSOM.CSSGroupingRule.call(this);
14
15
  this.name = "";
15
- this.cssRules = [];
16
16
  };
17
17
 
18
18
  CSSOM.CSSLayerBlockRule.prototype = new CSSOM.CSSGroupingRule();
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule,
5
6
  CSSConditionRule: require("./CSSConditionRule").CSSConditionRule,
6
7
  MediaList: require("./MediaList").MediaList
@@ -0,0 +1,26 @@
1
+ //.CommonJS
2
+ var CSSOM = {};
3
+ ///CommonJS
4
+
5
+
6
+ /**
7
+ * @constructor
8
+ * @see https://drafts.csswg.org/cssom/#the-cssrulelist-interface
9
+ */
10
+ CSSOM.CSSRuleList = function CSSRuleList(){
11
+ const arr = new Array();
12
+ Object.setPrototypeOf(arr, CSSOM.CSSRuleList.prototype);
13
+ return arr;
14
+ };
15
+
16
+ CSSOM.CSSRuleList.prototype = Object.create(Array.prototype);
17
+ CSSOM.CSSRuleList.prototype.constructor = CSSOM.CSSRuleList;
18
+
19
+ CSSOM.CSSRuleList.prototype.item = function(index) {
20
+ return this[index] || null;
21
+ };
22
+
23
+
24
+ //.CommonJS
25
+ exports.CSSRuleList = CSSOM.CSSRuleList;
26
+ ///CommonJS
@@ -0,0 +1,53 @@
1
+ //.CommonJS
2
+ var CSSOM = {
3
+ CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
5
+ CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule,
6
+ };
7
+ ///CommonJS
8
+
9
+ /**
10
+ * @constructor
11
+ * @see https://drafts.csswg.org/css-cascade-6/#cssscoperule
12
+ */
13
+ CSSOM.CSSScopeRule = function CSSScopeRule() {
14
+ CSSOM.CSSGroupingRule.call(this);
15
+ this.__start = null;
16
+ this.__end = null;
17
+ };
18
+
19
+ CSSOM.CSSScopeRule.prototype = new CSSOM.CSSGroupingRule();
20
+ CSSOM.CSSScopeRule.prototype.constructor = CSSOM.CSSScopeRule;
21
+
22
+
23
+ Object.defineProperties(CSSOM.CSSScopeRule.prototype, {
24
+ type: {
25
+ value: 0,
26
+ writable: false,
27
+ },
28
+ cssText: {
29
+ get: function () {
30
+ var cssTexts = [];
31
+ for (var i = 0, length = this.cssRules.length; i < length; i++) {
32
+ cssTexts.push(this.cssRules[i].cssText);
33
+ }
34
+ return "@scope " + (this.start ? "(" + this.start + ") " : "") + (this.end ? "to (" + this.end + ") " : "") + "{" + (cssTexts.length ? "\n " + cssTexts.join("\n ") : "") + "\n}";
35
+ },
36
+ configurable: true,
37
+ enumerable: true,
38
+ },
39
+ start: {
40
+ get: function () {
41
+ return this.__start;
42
+ }
43
+ },
44
+ end: {
45
+ get: function () {
46
+ return this.__end;
47
+ }
48
+ }
49
+ });
50
+
51
+ //.CommonJS
52
+ exports.CSSScopeRule = CSSOM.CSSScopeRule;
53
+ ///CommonJS
@@ -1,6 +1,8 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
- CSSRule: require("./CSSRule").CSSRule
3
+ CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
5
+ CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule
4
6
  };
5
7
  ///CommonJS
6
8
 
@@ -10,11 +12,10 @@ var CSSOM = {
10
12
  * @see http://www.w3.org/TR/shadow-dom/#host-at-rule
11
13
  */
12
14
  CSSOM.CSSStartingStyleRule = function CSSStartingStyleRule() {
13
- CSSOM.CSSRule.call(this);
14
- this.cssRules = [];
15
+ CSSOM.CSSGroupingRule.call(this);
15
16
  };
16
17
 
17
- CSSOM.CSSStartingStyleRule.prototype = new CSSOM.CSSRule();
18
+ CSSOM.CSSStartingStyleRule.prototype = new CSSOM.CSSGroupingRule();
18
19
  CSSOM.CSSStartingStyleRule.prototype.constructor = CSSOM.CSSStartingStyleRule;
19
20
  CSSOM.CSSStartingStyleRule.prototype.type = 1002;
20
21
  //FIXME
@@ -1,8 +1,9 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSStyleDeclaration: require("./CSSStyleDeclaration").CSSStyleDeclaration,
4
+ CSSRule: require("./CSSRule").CSSRule,
5
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
6
  CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule,
5
- CSSRule: require("./CSSRule").CSSRule
6
7
  };
7
8
  // Use cssstyle if available
8
9
  try {
@@ -1,7 +1,8 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  StyleSheet: require("./StyleSheet").StyleSheet,
4
- CSSStyleRule: require("./CSSStyleRule").CSSStyleRule
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
5
+ CSSStyleRule: require("./CSSStyleRule").CSSStyleRule,
5
6
  };
6
7
  var errorUtils = require("./errorUtils").errorUtils;
7
8
  ///CommonJS
@@ -13,13 +14,18 @@ var errorUtils = require("./errorUtils").errorUtils;
13
14
  */
14
15
  CSSOM.CSSStyleSheet = function CSSStyleSheet() {
15
16
  CSSOM.StyleSheet.call(this);
16
- this.cssRules = [];
17
+ this.cssRules = new CSSOM.CSSRuleList();
17
18
  };
18
19
 
19
20
 
20
21
  CSSOM.CSSStyleSheet.prototype = new CSSOM.StyleSheet();
21
22
  CSSOM.CSSStyleSheet.prototype.constructor = CSSOM.CSSStyleSheet;
22
23
 
24
+ Object.defineProperty(CSSOM.CSSStyleSheet.prototype, "rules", {
25
+ get: function() {
26
+ return this.cssRules;
27
+ }
28
+ });
23
29
 
24
30
  /**
25
31
  * Used to insert a new rule into the style sheet. The new rule now becomes part of the cascade.
@@ -150,6 +156,13 @@ CSSOM.CSSStyleSheet.prototype.insertRule = function(rule, index) {
150
156
  return index;
151
157
  };
152
158
 
159
+ CSSOM.CSSStyleSheet.prototype.addRule = function(selector, styleBlock, index) {
160
+ if (index === void 0) {
161
+ index = this.cssRules.length;
162
+ }
163
+ this.insertRule(selector + "{" + styleBlock + "}", index);
164
+ return -1;
165
+ };
153
166
 
154
167
  /**
155
168
  * Used to delete a rule from the style sheet.
@@ -186,6 +199,9 @@ CSSOM.CSSStyleSheet.prototype.deleteRule = function(index) {
186
199
  this.cssRules.splice(index, 1);
187
200
  };
188
201
 
202
+ CSSOM.CSSStyleSheet.prototype.removeRule = function(index) {
203
+ this.deleteRule(index);
204
+ };
189
205
 
190
206
  /**
191
207
  * NON-STANDARD
@@ -1,6 +1,7 @@
1
1
  //.CommonJS
2
2
  var CSSOM = {
3
3
  CSSRule: require("./CSSRule").CSSRule,
4
+ CSSRuleList: require("./CSSRuleList").CSSRuleList,
4
5
  CSSGroupingRule: require("./CSSGroupingRule").CSSGroupingRule,
5
6
  CSSConditionRule: require("./CSSConditionRule").CSSConditionRule
6
7
  };
package/lib/clone.js CHANGED
@@ -12,6 +12,7 @@ var CSSOM = {
12
12
  CSSStyleDeclaration: require("./CSSStyleDeclaration").CSSStyleDeclaration,
13
13
  CSSKeyframeRule: require('./CSSKeyframeRule').CSSKeyframeRule,
14
14
  CSSKeyframesRule: require('./CSSKeyframesRule').CSSKeyframesRule,
15
+ CSSScopeRule: require('./CSSScopeRule').CSSScopeRule,
15
16
  CSSLayerBlockRule: require('./CSSLayerBlockRule').CSSLayerBlockRule,
16
17
  CSSLayerStatementRule: require('./CSSLayerStatementRule').CSSLayerStatementRule
17
18
  };
package/lib/index.js CHANGED
@@ -7,6 +7,7 @@ exports.CSSStyleDeclaration = require('./CSSStyleDeclaration').CSSStyleDeclarati
7
7
  require('./cssstyleTryCatchBlock');
8
8
 
9
9
  exports.CSSRule = require('./CSSRule').CSSRule;
10
+ exports.CSSRuleList = require('./CSSRuleList').CSSRuleList;
10
11
  exports.CSSNestedDeclarations = require('./CSSNestedDeclarations').CSSNestedDeclarations;
11
12
  exports.CSSGroupingRule = require('./CSSGroupingRule').CSSGroupingRule;
12
13
  exports.CSSCounterStyleRule = require('./CSSCounterStyleRule').CSSCounterStyleRule;
@@ -29,6 +30,7 @@ exports.MatcherList = require('./MatcherList').MatcherList;
29
30
  exports.CSSDocumentRule = require('./CSSDocumentRule').CSSDocumentRule;
30
31
  exports.CSSValue = require('./CSSValue').CSSValue;
31
32
  exports.CSSValueExpression = require('./CSSValueExpression').CSSValueExpression;
33
+ exports.CSSScopeRule = require('./CSSScopeRule').CSSScopeRule;
32
34
  exports.CSSLayerBlockRule = require('./CSSLayerBlockRule').CSSLayerBlockRule;
33
35
  exports.CSSLayerStatementRule = require('./CSSLayerStatementRule').CSSLayerStatementRule;
34
36
  exports.parse = require('./parse').parse;