Skip to content

Commit d46609d

Browse files
committed
Actually fix CSSOM.CSSStyleSheet.prototype.insertRule
Fixes #40
1 parent d0b9ee1 commit d46609d

2 files changed

Lines changed: 13 additions & 11 deletions

File tree

lib/CSSStyleSheet.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@ CSSOM.CSSStyleSheet.prototype.insertRule = function(rule, index) {
4040
if (index < 0 || index > this.cssRules.length) {
4141
throw new RangeError("INDEX_SIZE_ERR");
4242
}
43-
this.cssRules.splice(index, 0, require('./parse').parse(rule));
43+
var cssRule = CSSOM.parse(rule).cssRules[0];
44+
this.cssRules.splice(index, 0, cssRule);
4445
return index;
4546
};
4647

@@ -82,4 +83,5 @@ CSSOM.CSSStyleSheet.prototype.toString = function() {
8283

8384
//.CommonJS
8485
exports.CSSStyleSheet = CSSOM.CSSStyleSheet;
86+
CSSOM.parse = require('./parse').parse; // Cannot be included sooner due to the mutual dependency between parse.js and CSSStyleSheet.js
8587
///CommonJS

lib/parse.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,5 @@
11
//.CommonJS
2-
var CSSOM = {
3-
CSSStyleSheet: require("./CSSStyleSheet").CSSStyleSheet,
4-
CSSStyleRule: require("./CSSStyleRule").CSSStyleRule,
5-
CSSImportRule: require("./CSSImportRule").CSSImportRule,
6-
CSSMediaRule: require("./CSSMediaRule").CSSMediaRule,
7-
CSSFontFaceRule: require("./CSSFontFaceRule").CSSFontFaceRule,
8-
CSSStyleDeclaration: require('./CSSStyleDeclaration').CSSStyleDeclaration,
9-
CSSKeyframeRule: require('./CSSKeyframeRule').CSSKeyframeRule,
10-
CSSKeyframesRule: require('./CSSKeyframesRule').CSSKeyframesRule
11-
};
2+
var CSSOM = {};
123
///CommonJS
134

145

@@ -335,4 +326,13 @@ CSSOM.parse = function parse(token) {
335326

336327
//.CommonJS
337328
exports.parse = CSSOM.parse;
329+
// The following modules cannot be included sooner due to the mutual dependency with parse.js
330+
CSSOM.CSSStyleSheet = require("./CSSStyleSheet").CSSStyleSheet;
331+
CSSOM.CSSStyleRule = require("./CSSStyleRule").CSSStyleRule;
332+
CSSOM.CSSImportRule = require("./CSSImportRule").CSSImportRule;
333+
CSSOM.CSSMediaRule = require("./CSSMediaRule").CSSMediaRule;
334+
CSSOM.CSSFontFaceRule = require("./CSSFontFaceRule").CSSFontFaceRule;
335+
CSSOM.CSSStyleDeclaration = require('./CSSStyleDeclaration').CSSStyleDeclaration;
336+
CSSOM.CSSKeyframeRule = require('./CSSKeyframeRule').CSSKeyframeRule;
337+
CSSOM.CSSKeyframesRule = require('./CSSKeyframesRule').CSSKeyframesRule;
338338
///CommonJS

0 commit comments

Comments
 (0)