2021-04-23 19:08:34 -04:00

32 lines
1.2 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var IPropertyDescriptor_1 = require("../IPropertyDescriptor");
var parser_1 = require("../syntax/parser");
var tokenizer_1 = require("../syntax/tokenizer");
exports.counterIncrement = {
name: 'counter-increment',
initialValue: 'none',
prefix: true,
type: IPropertyDescriptor_1.PropertyDescriptorParsingType.LIST,
parse: function (tokens) {
if (tokens.length === 0) {
return null;
}
var first = tokens[0];
if (first.type === tokenizer_1.TokenType.IDENT_TOKEN && first.value === 'none') {
return null;
}
var increments = [];
var filtered = tokens.filter(parser_1.nonWhiteSpace);
for (var i = 0; i < filtered.length; i++) {
var counter = filtered[i];
var next = filtered[i + 1];
if (counter.type === tokenizer_1.TokenType.IDENT_TOKEN) {
var increment = next && parser_1.isNumberToken(next) ? next.number : 1;
increments.push({ counter: counter.value, increment: increment });
}
}
return increments;
}
};
//# sourceMappingURL=counter-increment.js.map