Addnew sheets (armor, weapons, malefica) and v13 support
This commit is contained in:
113
node_modules/comment-parser/lib/util.cjs
generated
vendored
Normal file
113
node_modules/comment-parser/lib/util.cjs
generated
vendored
Normal file
@@ -0,0 +1,113 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.rewireSpecs = exports.rewireSource = exports.seedTokens = exports.seedSpec = exports.seedBlock = exports.splitLines = exports.splitSpace = exports.splitCR = exports.hasCR = exports.isSpace = void 0;
|
||||
|
||||
function isSpace(source) {
|
||||
return /^\s+$/.test(source);
|
||||
}
|
||||
|
||||
exports.isSpace = isSpace;
|
||||
|
||||
function hasCR(source) {
|
||||
return /\r$/.test(source);
|
||||
}
|
||||
|
||||
exports.hasCR = hasCR;
|
||||
|
||||
function splitCR(source) {
|
||||
const matches = source.match(/\r+$/);
|
||||
return matches == null ? ['', source] : [source.slice(-matches[0].length), source.slice(0, -matches[0].length)];
|
||||
}
|
||||
|
||||
exports.splitCR = splitCR;
|
||||
|
||||
function splitSpace(source) {
|
||||
const matches = source.match(/^\s+/);
|
||||
return matches == null ? ['', source] : [source.slice(0, matches[0].length), source.slice(matches[0].length)];
|
||||
}
|
||||
|
||||
exports.splitSpace = splitSpace;
|
||||
|
||||
function splitLines(source) {
|
||||
return source.split(/\n/);
|
||||
}
|
||||
|
||||
exports.splitLines = splitLines;
|
||||
|
||||
function seedBlock(block = {}) {
|
||||
return Object.assign({
|
||||
description: '',
|
||||
tags: [],
|
||||
source: [],
|
||||
problems: []
|
||||
}, block);
|
||||
}
|
||||
|
||||
exports.seedBlock = seedBlock;
|
||||
|
||||
function seedSpec(spec = {}) {
|
||||
return Object.assign({
|
||||
tag: '',
|
||||
name: '',
|
||||
type: '',
|
||||
optional: false,
|
||||
description: '',
|
||||
problems: [],
|
||||
source: []
|
||||
}, spec);
|
||||
}
|
||||
|
||||
exports.seedSpec = seedSpec;
|
||||
|
||||
function seedTokens(tokens = {}) {
|
||||
return Object.assign({
|
||||
start: '',
|
||||
delimiter: '',
|
||||
postDelimiter: '',
|
||||
tag: '',
|
||||
postTag: '',
|
||||
name: '',
|
||||
postName: '',
|
||||
type: '',
|
||||
postType: '',
|
||||
description: '',
|
||||
end: '',
|
||||
lineEnd: ''
|
||||
}, tokens);
|
||||
}
|
||||
|
||||
exports.seedTokens = seedTokens;
|
||||
/**
|
||||
* Assures Block.tags[].source contains references to the Block.source items,
|
||||
* using Block.source as a source of truth. This is a counterpart of rewireSpecs
|
||||
* @param block parsed coments block
|
||||
*/
|
||||
|
||||
function rewireSource(block) {
|
||||
const source = block.source.reduce((acc, line) => acc.set(line.number, line), new Map());
|
||||
|
||||
for (const spec of block.tags) {
|
||||
spec.source = spec.source.map(line => source.get(line.number));
|
||||
}
|
||||
|
||||
return block;
|
||||
}
|
||||
|
||||
exports.rewireSource = rewireSource;
|
||||
/**
|
||||
* Assures Block.source contains references to the Block.tags[].source items,
|
||||
* using Block.tags[].source as a source of truth. This is a counterpart of rewireSource
|
||||
* @param block parsed coments block
|
||||
*/
|
||||
|
||||
function rewireSpecs(block) {
|
||||
const source = block.tags.reduce((acc, spec) => spec.source.reduce((acc, line) => acc.set(line.number, line), acc), new Map());
|
||||
block.source = block.source.map(line => source.get(line.number) || line);
|
||||
return block;
|
||||
}
|
||||
|
||||
exports.rewireSpecs = rewireSpecs;
|
||||
//# sourceMappingURL=util.cjs.map
|
||||
Reference in New Issue
Block a user