mirror of
https://github.com/thangisme/notes.git
synced 2025-11-23 13:12:25 -05:00
Initial commit
This commit is contained in:
73
node_modules/postcss-less/dist/tokenizer/tokenize-at-rule.js
generated
vendored
Normal file
73
node_modules/postcss-less/dist/tokenizer/tokenize-at-rule.js
generated
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = tokenizeAtRule;
|
||||
|
||||
var _globals = require('./globals');
|
||||
|
||||
var _unclosed = require('./unclosed');
|
||||
|
||||
var _unclosed2 = _interopRequireDefault(_unclosed);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
function tokenizeAtRule(state) {
|
||||
// it's an interpolation
|
||||
if (state.css.charCodeAt(state.pos + 1) === _globals.openedCurlyBracket) {
|
||||
state.nextPos = state.css.indexOf('}', state.pos + 2);
|
||||
|
||||
if (state.nextPos === -1) {
|
||||
(0, _unclosed2.default)(state, 'interpolation');
|
||||
}
|
||||
|
||||
state.cssPart = state.css.slice(state.pos, state.nextPos + 1);
|
||||
state.lines = state.cssPart.split('\n');
|
||||
state.lastLine = state.lines.length - 1;
|
||||
|
||||
if (state.lastLine > 0) {
|
||||
state.nextLine = state.line + state.lastLine;
|
||||
state.nextOffset = state.nextPos - state.lines[state.lastLine].length;
|
||||
} else {
|
||||
state.nextLine = state.line;
|
||||
state.nextOffset = state.offset;
|
||||
}
|
||||
|
||||
state.tokens.push(['word', state.cssPart, state.line, state.pos - state.offset, state.nextLine, state.nextPos - state.nextOffset]);
|
||||
|
||||
state.offset = state.nextOffset;
|
||||
state.line = state.nextLine;
|
||||
} else {
|
||||
_globals.atEndPattern.lastIndex = state.pos + 1;
|
||||
_globals.atEndPattern.test(state.css);
|
||||
|
||||
if (_globals.atEndPattern.lastIndex === 0) {
|
||||
state.nextPos = state.css.length - 1;
|
||||
} else {
|
||||
state.nextPos = _globals.atEndPattern.lastIndex - 2;
|
||||
}
|
||||
|
||||
state.cssPart = state.css.slice(state.pos, state.nextPos + 1);
|
||||
state.token = 'at-word';
|
||||
|
||||
// check if it's a variable
|
||||
if (_globals.variablePattern.test(state.cssPart)) {
|
||||
_globals.wordEndPattern.lastIndex = state.pos + 1;
|
||||
_globals.wordEndPattern.test(state.css);
|
||||
if (_globals.wordEndPattern.lastIndex === 0) {
|
||||
state.nextPos = state.css.length - 1;
|
||||
} else {
|
||||
state.nextPos = _globals.wordEndPattern.lastIndex - 2;
|
||||
}
|
||||
|
||||
state.cssPart = state.css.slice(state.pos, state.nextPos + 1);
|
||||
state.token = 'word';
|
||||
}
|
||||
|
||||
state.tokens.push([state.token, state.cssPart, state.line, state.pos - state.offset, state.line, state.nextPos - state.offset]);
|
||||
}
|
||||
|
||||
state.pos = state.nextPos;
|
||||
}
|
||||
module.exports = exports['default'];
|
||||
Reference in New Issue
Block a user