initial commit
This commit is contained in:
3
node_modules/css-tree/lib/syntax/scope/atrulePrelude.js
generated
vendored
Normal file
3
node_modules/css-tree/lib/syntax/scope/atrulePrelude.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
module.exports = {
|
||||
getNode: require('./default')
|
||||
};
|
||||
88
node_modules/css-tree/lib/syntax/scope/default.js
generated
vendored
Normal file
88
node_modules/css-tree/lib/syntax/scope/default.js
generated
vendored
Normal file
@@ -0,0 +1,88 @@
|
||||
var cmpChar = require('../../tokenizer').cmpChar;
|
||||
var cmpStr = require('../../tokenizer').cmpStr;
|
||||
var TYPE = require('../../tokenizer').TYPE;
|
||||
var CHARCODE = require('../../tokenizer').CHARCODE;
|
||||
|
||||
var IDENT = TYPE.Ident;
|
||||
var STRING = TYPE.String;
|
||||
var NUMBER = TYPE.Number;
|
||||
var FUNCTION = TYPE.Function;
|
||||
var URL = TYPE.Url;
|
||||
var HASH = TYPE.Hash;
|
||||
var DIMENSION = TYPE.Dimension;
|
||||
var PERCENTAGE = TYPE.Percentage;
|
||||
var LEFTPARENTHESIS = TYPE.LeftParenthesis;
|
||||
var LEFTSQUAREBRACKET = TYPE.LeftSquareBracket;
|
||||
var COMMA = TYPE.Comma;
|
||||
var DELIM = TYPE.Delim;
|
||||
var PLUSSIGN = CHARCODE.PlusSign;
|
||||
var HYPHENMINUS = CHARCODE.HyphenMinus;
|
||||
var SOLIDUS = CHARCODE.Solidus;
|
||||
var ASTERISK = CHARCODE.Asterisk;
|
||||
var NUMBERSIGN = CHARCODE.NumberSign;
|
||||
var U = 117; // 'u'.charCodeAt(0)
|
||||
|
||||
module.exports = function defaultRecognizer(context) {
|
||||
switch (this.scanner.tokenType) {
|
||||
case HASH:
|
||||
return this.HexColor();
|
||||
|
||||
case COMMA:
|
||||
context.space = null;
|
||||
context.ignoreWSAfter = true;
|
||||
return this.Operator();
|
||||
|
||||
case LEFTPARENTHESIS:
|
||||
return this.Parentheses(this.readSequence, context.recognizer);
|
||||
|
||||
case LEFTSQUAREBRACKET:
|
||||
return this.Brackets(this.readSequence, context.recognizer);
|
||||
|
||||
case STRING:
|
||||
return this.String();
|
||||
|
||||
case DIMENSION:
|
||||
return this.Dimension();
|
||||
|
||||
case PERCENTAGE:
|
||||
return this.Percentage();
|
||||
|
||||
case NUMBER:
|
||||
return this.Number();
|
||||
|
||||
case FUNCTION:
|
||||
return cmpStr(this.scanner.source, this.scanner.tokenStart, this.scanner.tokenEnd, 'url(')
|
||||
? this.Url()
|
||||
: this.Function(this.readSequence, context.recognizer);
|
||||
|
||||
case URL:
|
||||
return this.Url();
|
||||
|
||||
case IDENT:
|
||||
// check for unicode range, it should start with u+ or U+
|
||||
if (cmpChar(this.scanner.source, this.scanner.tokenStart, U) &&
|
||||
cmpChar(this.scanner.source, this.scanner.tokenStart + 1, PLUSSIGN)) {
|
||||
return this.UnicodeRange();
|
||||
} else {
|
||||
return this.Identifier();
|
||||
}
|
||||
|
||||
case DELIM:
|
||||
var code = this.scanner.source.charCodeAt(this.scanner.tokenStart);
|
||||
|
||||
if (code === SOLIDUS ||
|
||||
code === ASTERISK ||
|
||||
code === PLUSSIGN ||
|
||||
code === HYPHENMINUS) {
|
||||
return this.Operator(); // TODO: replace with Delim
|
||||
}
|
||||
|
||||
// TODO: produce a node with Delim node type
|
||||
|
||||
if (code === NUMBERSIGN) {
|
||||
this.error('Hex or identifier is expected', this.scanner.tokenStart + 1);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
};
|
||||
5
node_modules/css-tree/lib/syntax/scope/index.js
generated
vendored
Normal file
5
node_modules/css-tree/lib/syntax/scope/index.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
module.exports = {
|
||||
AtrulePrelude: require('./atrulePrelude'),
|
||||
Selector: require('./selector'),
|
||||
Value: require('./value')
|
||||
};
|
||||
81
node_modules/css-tree/lib/syntax/scope/selector.js
generated
vendored
Normal file
81
node_modules/css-tree/lib/syntax/scope/selector.js
generated
vendored
Normal file
@@ -0,0 +1,81 @@
|
||||
var TYPE = require('../../tokenizer').TYPE;
|
||||
var CHARCODE = require('../../tokenizer').CHARCODE;
|
||||
|
||||
var DELIM = TYPE.Delim;
|
||||
var IDENT = TYPE.Ident;
|
||||
var DIMENSION = TYPE.Dimension;
|
||||
var PERCENTAGE = TYPE.Percentage;
|
||||
var NUMBER = TYPE.Number;
|
||||
var HASH = TYPE.Hash;
|
||||
var COLON = TYPE.Colon;
|
||||
var LEFTSQUAREBRACKET = TYPE.LeftSquareBracket;
|
||||
var NUMBERSIGN = CHARCODE.NumberSign;
|
||||
var PLUSSIGN = CHARCODE.PlusSign;
|
||||
var SOLIDUS = CHARCODE.Solidus;
|
||||
var ASTERISK = CHARCODE.Asterisk;
|
||||
var FULLSTOP = CHARCODE.FullStop;
|
||||
var GREATERTHANSIGN = CHARCODE.GreaterThanSign;
|
||||
var VERTICALLINE = CHARCODE.VerticalLine;
|
||||
var TILDE = CHARCODE.Tilde;
|
||||
|
||||
function getNode(context) {
|
||||
switch (this.scanner.tokenType) {
|
||||
case LEFTSQUAREBRACKET:
|
||||
return this.AttributeSelector();
|
||||
|
||||
case HASH:
|
||||
return this.IdSelector();
|
||||
|
||||
case COLON:
|
||||
if (this.scanner.lookupType(1) === COLON) {
|
||||
return this.PseudoElementSelector();
|
||||
} else {
|
||||
return this.PseudoClassSelector();
|
||||
}
|
||||
|
||||
case IDENT:
|
||||
return this.TypeSelector();
|
||||
|
||||
case NUMBER:
|
||||
case PERCENTAGE:
|
||||
return this.Percentage();
|
||||
|
||||
case DIMENSION:
|
||||
// throws when .123ident
|
||||
if (this.scanner.source.charCodeAt(this.scanner.tokenStart) === FULLSTOP) {
|
||||
this.error('Identifier is expected', this.scanner.tokenStart + 1);
|
||||
}
|
||||
break;
|
||||
|
||||
case DELIM:
|
||||
var code = this.scanner.source.charCodeAt(this.scanner.tokenStart);
|
||||
|
||||
switch (code) {
|
||||
case PLUSSIGN:
|
||||
case GREATERTHANSIGN:
|
||||
case TILDE:
|
||||
context.space = null;
|
||||
context.ignoreWSAfter = true;
|
||||
return this.Combinator();
|
||||
|
||||
case SOLIDUS: // /deep/
|
||||
return this.Combinator();
|
||||
|
||||
case FULLSTOP:
|
||||
return this.ClassSelector();
|
||||
|
||||
case ASTERISK:
|
||||
case VERTICALLINE:
|
||||
return this.TypeSelector();
|
||||
|
||||
case NUMBERSIGN:
|
||||
return this.IdSelector();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
getNode: getNode
|
||||
};
|
||||
7
node_modules/css-tree/lib/syntax/scope/value.js
generated
vendored
Normal file
7
node_modules/css-tree/lib/syntax/scope/value.js
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
module.exports = {
|
||||
getNode: require('./default'),
|
||||
'-moz-element': require('../function/element'),
|
||||
'element': require('../function/element'),
|
||||
'expression': require('../function/expression'),
|
||||
'var': require('../function/var')
|
||||
};
|
||||
Reference in New Issue
Block a user