emj 0.0.11 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +119 -46
- package/lib/characters.d.ts +165 -0
- package/lib/characters.js +169 -0
- package/lib/generator.d.ts +29 -0
- package/lib/generator.js +270 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.js +8 -0
- package/lib/json.d.ts +13 -0
- package/lib/json.js +3 -0
- package/lib/limits.d.ts +6 -0
- package/lib/limits.js +10 -0
- package/lib/parser.d.ts +26 -0
- package/lib/parser.js +364 -0
- package/package.json +29 -34
- package/lib/gen/grammar.js +0 -85
- package/lib/src/characters.js +0 -168
- package/lib/src/generator.js +0 -114
- package/lib/src/index.js +0 -8
- package/lib/src/lexer.js +0 -51
- package/lib/src/mapper.js +0 -51
- package/lib/src/parser.js +0 -66
- package/lib/src/patterns.js +0 -69
- package/lib/src/postprocessor.js +0 -89
- package/lib/src/typer.js +0 -32
- package/lib/src/utilities.js +0 -46
package/lib/src/parser.js
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.validateGrammar = exports.parse = exports.parser = void 0;
|
|
40
|
-
const nearley = __importStar(require("nearley"));
|
|
41
|
-
const grammar_1 = __importDefault(require("../gen/grammar"));
|
|
42
|
-
const compiledGrammar = nearley.Grammar.fromCompiled(grammar_1.default);
|
|
43
|
-
exports.parser = new nearley.Parser(compiledGrammar);
|
|
44
|
-
function clean(input) {
|
|
45
|
-
return input.replace(/\s/g, '');
|
|
46
|
-
}
|
|
47
|
-
const parse = (input) => {
|
|
48
|
-
const wrappedParser = new nearley.Parser(compiledGrammar);
|
|
49
|
-
const cleanedInput = clean(input);
|
|
50
|
-
wrappedParser.feed(cleanedInput);
|
|
51
|
-
return wrappedParser.results[0];
|
|
52
|
-
};
|
|
53
|
-
exports.parse = parse;
|
|
54
|
-
const validateGrammar = (input) => {
|
|
55
|
-
const wrappedParser = new nearley.Parser(compiledGrammar);
|
|
56
|
-
const cleanedInput = clean(input);
|
|
57
|
-
wrappedParser.feed(cleanedInput);
|
|
58
|
-
if (wrappedParser.results.length === 1) {
|
|
59
|
-
return true;
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
exports.validateGrammar = validateGrammar;
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpREFBbUM7QUFDbkMsNkRBQXFDO0FBRXJDLE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLGlCQUFPLENBQUMsQ0FBQztBQUVqRCxRQUFBLE1BQU0sR0FBRyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFMUQsU0FBUyxLQUFLLENBQUMsS0FBYTtJQUMxQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ2xDLENBQUM7QUFFTSxNQUFNLEtBQUssR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQ3JDLE1BQU0sYUFBYSxHQUFHLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMxRCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNqQyxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEMsQ0FBQyxDQUFDO0FBTFcsUUFBQSxLQUFLLFNBS2hCO0FBRUssTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTtJQUMvQyxNQUFNLGFBQWEsR0FBRyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDMUQsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDakMsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBVFcsUUFBQSxlQUFlLG1CQVMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG5lYXJsZXkgZnJvbSAnbmVhcmxleSc7XG5pbXBvcnQgZ3JhbW1hciBmcm9tICcuLi9nZW4vZ3JhbW1hcic7XG5cbmNvbnN0IGNvbXBpbGVkR3JhbW1hciA9IG5lYXJsZXkuR3JhbW1hci5mcm9tQ29tcGlsZWQoZ3JhbW1hcik7XG5cbmV4cG9ydCBjb25zdCBwYXJzZXIgPSBuZXcgbmVhcmxleS5QYXJzZXIoY29tcGlsZWRHcmFtbWFyKTtcblxuZnVuY3Rpb24gY2xlYW4oaW5wdXQ6IHN0cmluZykge1xuICByZXR1cm4gaW5wdXQucmVwbGFjZSgvXFxzL2csICcnKTtcbn1cblxuZXhwb3J0IGNvbnN0IHBhcnNlID0gKGlucHV0OiBzdHJpbmcpID0+IHtcbiAgY29uc3Qgd3JhcHBlZFBhcnNlciA9IG5ldyBuZWFybGV5LlBhcnNlcihjb21waWxlZEdyYW1tYXIpO1xuICBjb25zdCBjbGVhbmVkSW5wdXQgPSBjbGVhbihpbnB1dCk7XG4gIHdyYXBwZWRQYXJzZXIuZmVlZChjbGVhbmVkSW5wdXQpO1xuICByZXR1cm4gd3JhcHBlZFBhcnNlci5yZXN1bHRzWzBdO1xufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlR3JhbW1hciA9IChpbnB1dDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHdyYXBwZWRQYXJzZXIgPSBuZXcgbmVhcmxleS5QYXJzZXIoY29tcGlsZWRHcmFtbWFyKTtcbiAgY29uc3QgY2xlYW5lZElucHV0ID0gY2xlYW4oaW5wdXQpO1xuICB3cmFwcGVkUGFyc2VyLmZlZWQoY2xlYW5lZElucHV0KTtcbiAgaWYgKHdyYXBwZWRQYXJzZXIucmVzdWx0cy5sZW5ndGggPT09IDEpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn07XG4iXX0=
|
package/lib/src/patterns.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.unicodeTable = exports.conversionTable = exports.lookupTable = exports.patterns = void 0;
|
|
4
|
-
const characters_1 = require("./characters");
|
|
5
|
-
const utilities_1 = require("./utilities");
|
|
6
|
-
const lodash_1 = require("lodash");
|
|
7
|
-
exports.patterns = {
|
|
8
|
-
arrayClose: characters_1.characters.document.arrayClose,
|
|
9
|
-
arrayDelimit: characters_1.characters.document.arrayDelimit,
|
|
10
|
-
arrayOpen: characters_1.characters.document.arrayOpen,
|
|
11
|
-
documentEnd: characters_1.characters.document.end,
|
|
12
|
-
documentIndent: characters_1.characters.document.indent,
|
|
13
|
-
documentOutdent: characters_1.characters.document.outdent,
|
|
14
|
-
documentStart: characters_1.characters.document.start,
|
|
15
|
-
keyEmptyString: characters_1.characters.keys.other.empty,
|
|
16
|
-
keyLetter: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.keys.letters),
|
|
17
|
-
keyModifierUpper: characters_1.characters.keys.modifiers.upperCase,
|
|
18
|
-
keyModifierUnicode: characters_1.characters.keys.modifiers.unicode,
|
|
19
|
-
keyUnicodeNibble: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.keys.unicode),
|
|
20
|
-
keyNumeral: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.keys.numerals),
|
|
21
|
-
valueBool: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.values.booleans),
|
|
22
|
-
valueLetter: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.values.letters),
|
|
23
|
-
valueDecimal: characters_1.characters.values.numbers['.'],
|
|
24
|
-
valueEmptyString: characters_1.characters.values.other.emptyString,
|
|
25
|
-
valueModifierUpper: characters_1.characters.values.modifiers.upperCase,
|
|
26
|
-
valueModifierNegative: characters_1.characters.values.modifiers.negative,
|
|
27
|
-
valueModifierUnicode: characters_1.characters.values.modifiers.unicode,
|
|
28
|
-
valueUnicodeNibble: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.values.unicode),
|
|
29
|
-
valueNull: characters_1.characters.values.other.null,
|
|
30
|
-
valueNumber: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.values.numbers),
|
|
31
|
-
valueNumeral: (0, utilities_1.makeRegexpFromValuesInObject)(characters_1.characters.values.numerals),
|
|
32
|
-
};
|
|
33
|
-
exports.lookupTable = (0, utilities_1.switchKeysAndValuesInMultipleObjectsThenMerge)([
|
|
34
|
-
characters_1.characters.keys.letters,
|
|
35
|
-
characters_1.characters.keys.numerals,
|
|
36
|
-
characters_1.characters.keys.unicode,
|
|
37
|
-
characters_1.characters.values.letters,
|
|
38
|
-
characters_1.characters.values.numerals,
|
|
39
|
-
characters_1.characters.values.numbers,
|
|
40
|
-
characters_1.characters.values.other,
|
|
41
|
-
characters_1.characters.values.booleans,
|
|
42
|
-
characters_1.characters.values.unicode,
|
|
43
|
-
]);
|
|
44
|
-
const keyUpperLetters = {};
|
|
45
|
-
(0, lodash_1.forEach)(characters_1.characters.keys.letters, (value, key) => {
|
|
46
|
-
keyUpperLetters[key.toUpperCase()] =
|
|
47
|
-
characters_1.characters.keys.modifiers.upperCase + value;
|
|
48
|
-
});
|
|
49
|
-
const valueUpperLetters = {};
|
|
50
|
-
(0, lodash_1.forEach)(characters_1.characters.values.letters, (value, key) => {
|
|
51
|
-
valueUpperLetters[key.toUpperCase()] =
|
|
52
|
-
characters_1.characters.values.modifiers.upperCase + value;
|
|
53
|
-
});
|
|
54
|
-
exports.conversionTable = {
|
|
55
|
-
keys: (0, lodash_1.merge)({}, characters_1.characters.keys.letters, keyUpperLetters, characters_1.characters.keys.numerals),
|
|
56
|
-
numbers: (0, lodash_1.merge)({}, characters_1.characters.values.numbers, {
|
|
57
|
-
'-': characters_1.characters.values.modifiers.negative,
|
|
58
|
-
}),
|
|
59
|
-
strings: (0, lodash_1.merge)({}, characters_1.characters.values.letters, valueUpperLetters, characters_1.characters.values.numerals),
|
|
60
|
-
unicode: {
|
|
61
|
-
keys: characters_1.characters.keys.unicode,
|
|
62
|
-
values: characters_1.characters.values.unicode,
|
|
63
|
-
},
|
|
64
|
-
};
|
|
65
|
-
exports.unicodeTable = {
|
|
66
|
-
keys: characters_1.characters.keys.unicode,
|
|
67
|
-
values: characters_1.characters.values.unicode,
|
|
68
|
-
};
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGF0dGVybnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQTBDO0FBQzFDLDJDQUdxQjtBQUNyQixtQ0FBd0M7QUFFM0IsUUFBQSxRQUFRLEdBQUc7SUFDdEIsVUFBVSxFQUFFLHVCQUFVLENBQUMsUUFBUSxDQUFDLFVBQVU7SUFDMUMsWUFBWSxFQUFFLHVCQUFVLENBQUMsUUFBUSxDQUFDLFlBQVk7SUFDOUMsU0FBUyxFQUFFLHVCQUFVLENBQUMsUUFBUSxDQUFDLFNBQVM7SUFDeEMsV0FBVyxFQUFFLHVCQUFVLENBQUMsUUFBUSxDQUFDLEdBQUc7SUFDcEMsY0FBYyxFQUFFLHVCQUFVLENBQUMsUUFBUSxDQUFDLE1BQU07SUFDMUMsZUFBZSxFQUFFLHVCQUFVLENBQUMsUUFBUSxDQUFDLE9BQU87SUFDNUMsYUFBYSxFQUFFLHVCQUFVLENBQUMsUUFBUSxDQUFDLEtBQUs7SUFDeEMsY0FBYyxFQUFFLHVCQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLO0lBQzNDLFNBQVMsRUFBRSxJQUFBLHdDQUE0QixFQUFDLHVCQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUNoRSxnQkFBZ0IsRUFBRSx1QkFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUztJQUNyRCxrQkFBa0IsRUFBRSx1QkFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTztJQUNyRCxnQkFBZ0IsRUFBRSxJQUFBLHdDQUE0QixFQUFDLHVCQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN2RSxVQUFVLEVBQUUsSUFBQSx3Q0FBNEIsRUFBQyx1QkFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDbEUsU0FBUyxFQUFFLElBQUEsd0NBQTRCLEVBQUMsdUJBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO0lBQ25FLFdBQVcsRUFBRSxJ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RSx1QkFBVSxDQUFDLElBQUksQ0FBQyxPQUFPO1FBQzdCLE1BQU0sRUFBRSx1QkFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPO0tBQ2xDO0NBQ0YsQ0FBQztBQUVXLFFBQUEsWUFBWSxHQUFRO0lBQy9CLElBQUksRUFBRSx1QkFBVSxDQUFDLElBQUksQ0FBQyxPQUFPO0lBQzdCLE1BQU0sRUFBRSx1QkFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPO0NBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjaGFyYWN0ZXJzIH0gZnJvbSAnLi9jaGFyYWN0ZXJzJztcbmltcG9ydCB7XG4gIG1ha2VSZWdleHBGcm9tVmFsdWVzSW5PYmplY3QsXG4gIHN3aXRjaEtleXNBbmRWYWx1ZXNJbk11bHRpcGxlT2JqZWN0c1RoZW5NZXJnZSxcbn0gZnJvbSAnLi91dGlsaXRpZXMnO1xuaW1wb3J0IHsgZm9yRWFjaCwgbWVyZ2UgfSBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgY29uc3QgcGF0dGVybnMgPSB7XG4gIGFycmF5Q2xvc2U6IGNoYXJhY3RlcnMuZG9jdW1lbnQuYXJyYXlDbG9zZSxcbiAgYXJyYXlEZWxpbWl0OiBjaGFyYWN0ZXJzLmRvY3VtZW50LmFycmF5RGVsaW1pdCxcbiAgYXJyYXlPcGVuOiBjaGFyYWN0ZXJzLmRvY3VtZW50LmFycmF5T3BlbixcbiAgZG9jdW1lbnRFbmQ6IGNoYXJhY3RlcnMuZG9jdW1lbnQuZW5kLFxuICBkb2N1bWVudEluZGVudDogY2hhcmFjdGVycy5kb2N1bWVudC5pbmRlbnQsXG4gIGRvY3VtZW50T3V0ZGVudDogY2hhcmFjdGVycy5kb2N1bWVudC5vdXRkZW50LFxuICBkb2N1bWVudFN0YXJ0OiBjaGFyYWN0ZXJzLmRvY3VtZW50LnN0YXJ0LFxuICBrZXlFbXB0eVN0cmluZzogY2hhcmFjdGVycy5rZXlzLm90aGVyLmVtcHR5LFxuICBrZXlMZXR0ZXI6IG1ha2VSZWdleHBGcm9tVmFsdWVzSW5PYmplY3QoY2hhcmFjdGVycy5rZXlzLmxldHRlcnMpLFxuICBrZXlNb2RpZmllclVwcGVyOiBjaGFyYWN0ZXJzLmtleXMubW9kaWZpZXJzLnVwcGVyQ2FzZSxcbiAga2V5TW9kaWZpZXJVbmljb2RlOiBjaGFyYWN0ZXJzLmtleXMubW9kaWZpZXJzLnVuaWNvZGUsXG4gIGtleVVuaWNvZGVOaWJibGU6IG1ha2VSZWdleHBGcm9tVmFsdWVzSW5PYmplY3QoY2hhcmFjdGVycy5rZXlzLnVuaWNvZGUpLFxuICBrZXlOdW1lcmFsOiBtYWtlUmVnZXhwRnJvbVZhbHVlc0luT2JqZWN0KGNoYXJhY3RlcnMua2V5cy5udW1lcmFscyksXG4gIHZhbHVlQm9vbDogbWFrZVJlZ2V4cEZyb21WYWx1ZXNJbk9iamVjdChjaGFyYWN0ZXJzLnZhbHVlcy5ib29sZWFucyksXG4gIHZhbHVlTGV0dGVyOiBtYWtlUmVnZXhwRnJvbVZhbHVlc0luT2JqZWN0KGNoYXJhY3RlcnMudmFsdWVzLmxldHRlcnMpLFxuICB2YWx1ZURlY2ltYWw6IGNoYXJhY3RlcnMudmFsdWVzLm51bWJlcnNbJy4nXSxcbiAgdmFsdWVFbXB0eVN0cmluZzogY2hhcmFjdGVycy52YWx1ZXMub3RoZXIuZW1wdHlTdHJpbmcsXG4gIHZhbHVlTW9kaWZpZXJVcHBlcjogY2hhcmFjdGVycy52YWx1ZXMubW9kaWZpZXJzLnVwcGVyQ2FzZSxcbiAgdmFsdWVNb2RpZmllck5lZ2F0aXZlOiBjaGFyYWN0ZXJzLnZhbHVlcy5tb2RpZmllcnMubmVnYXRpdmUsXG4gIHZhbHVlTW9kaWZpZXJVbmljb2RlOiBjaGFyYWN0ZXJzLnZhbHVlcy5tb2RpZmllcnMudW5pY29kZSxcbiAgdmFsdWVVbmljb2RlTmliYmxlOiBtYWtlUmVnZXhwRnJvbVZhbHVlc0luT2JqZWN0KGNoYXJhY3RlcnMudmFsdWVzLnVuaWNvZGUpLFxuICB2YWx1ZU51bGw6IGNoYXJhY3RlcnMudmFsdWVzLm90aGVyLm51bGwsXG4gIHZhbHVlTnVtYmVyOiBtYWtlUmVnZXhwRnJvbVZhbHVlc0luT2JqZWN0KGNoYXJhY3RlcnMudmFsdWVzLm51bWJlcnMpLFxuICB2YWx1ZU51bWVyYWw6IG1ha2VSZWdleHBGcm9tVmFsdWVzSW5PYmplY3QoY2hhcmFjdGVycy52YWx1ZXMubnVtZXJhbHMpLFxufTtcblxuZXhwb3J0IGNvbnN0IGxvb2t1cFRhYmxlID0gc3dpdGNoS2V5c0FuZFZhbHVlc0luTXVsdGlwbGVPYmplY3RzVGhlbk1lcmdlKFtcbiAgY2hhcmFjdGVycy5rZXlzLmxldHRlcnMsXG4gIGNoYXJhY3RlcnMua2V5cy5udW1lcmFscyxcbiAgY2hhcmFjdGVycy5rZXlzLnVuaWNvZGUsXG4gIGNoYXJhY3RlcnMudmFsdWVzLmxldHRlcnMsXG4gIGNoYXJhY3RlcnMudmFsdWVzLm51bWVyYWxzLFxuICBjaGFyYWN0ZXJzLnZhbHVlcy5udW1iZXJzLFxuICBjaGFyYWN0ZXJzLnZhbHVlcy5vdGhlcixcbiAgY2hhcmFjdGVycy52YWx1ZXMuYm9vbGVhbnMsXG4gIGNoYXJhY3RlcnMudmFsdWVzLnVuaWNvZGUsXG5dKTtcblxuY29uc3Qga2V5VXBwZXJMZXR0ZXJzOiBhbnkgPSB7fTtcbmZvckVhY2goY2hhcmFjdGVycy5rZXlzLmxldHRlcnMsICh2YWx1ZSwga2V5KSA9PiB7XG4gIGtleVVwcGVyTGV0dGVyc1trZXkudG9VcHBlckNhc2UoKV0gPVxuICAgIGNoYXJhY3RlcnMua2V5cy5tb2RpZmllcnMudXBwZXJDYXNlICsgdmFsdWU7XG59KTtcblxuY29uc3QgdmFsdWVVcHBlckxldHRlcnM6IGFueSA9IHt9O1xuZm9yRWFjaChjaGFyYWN0ZXJzLnZhbHVlcy5sZXR0ZXJzLCAodmFsdWUsIGtleSkgPT4ge1xuICB2YWx1ZVVwcGVyTGV0dGVyc1trZXkudG9VcHBlckNhc2UoKV0gPVxuICAgIGNoYXJhY3RlcnMudmFsdWVzLm1vZGlmaWVycy51cHBlckNhc2UgKyB2YWx1ZTtcbn0pO1xuXG5leHBvcnQgY29uc3QgY29udmVyc2lvblRhYmxlOiBhbnkgPSB7XG4gIGtleXM6IG1lcmdlKFxuICAgIHt9LFxuICAgIGNoYXJhY3RlcnMua2V5cy5sZXR0ZXJzLFxuICAgIGtleVVwcGVyTGV0dGVycyxcbiAgICBjaGFyYWN0ZXJzLmtleXMubnVtZXJhbHNcbiAgKSxcbiAgbnVtYmVyczogbWVyZ2Uoe30sIGNoYXJhY3RlcnMudmFsdWVzLm51bWJlcnMsIHtcbiAgICAnLSc6IGNoYXJhY3RlcnMudmFsdWVzLm1vZGlmaWVycy5uZWdhdGl2ZSxcbiAgfSksXG4gIHN0cmluZ3M6IG1lcmdlKFxuICAgIHt9LFxuICAgIGNoYXJhY3RlcnMudmFsdWVzLmxldHRlcnMsXG4gICAgdmFsdWVVcHBlckxldHRlcnMsXG4gICAgY2hhcmFjdGVycy52YWx1ZXMubnVtZXJhbHNcbiAgKSxcbiAgdW5pY29kZToge1xuICAgIGtleXM6IGNoYXJhY3RlcnMua2V5cy51bmljb2RlLFxuICAgIHZhbHVlczogY2hhcmFjdGVycy52YWx1ZXMudW5pY29kZSxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCB1bmljb2RlVGFibGU6IGFueSA9IHtcbiAga2V5czogY2hhcmFjdGVycy5rZXlzLnVuaWNvZGUsXG4gIHZhbHVlczogY2hhcmFjdGVycy52YWx1ZXMudW5pY29kZSxcbn07XG4iXX0=
|
package/lib/src/postprocessor.js
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BUILDUNICODE = exports.CONVERTMULTIPLE = exports.ASSEMBLEOBJECT = exports.COLLAPSEARRAY = exports.TAKESECOND = exports.SELF = exports.CONCATWRAPSTRING = exports.BUILDFLOAT = exports.BUILDINT = exports.CONCATSECOND = exports.CONCAT = exports.CONVERTUPPER = exports.CONVERT = exports.EMPTYSTRING = exports.WRAPSTRING = exports.PAIR = exports.JOIN = exports.WRAPOBJECT = exports.EMPTYOBJECT = void 0;
|
|
4
|
-
const mapper_1 = require("./mapper");
|
|
5
|
-
const utilities_1 = require("./utilities");
|
|
6
|
-
const EMPTYOBJECT = () => {
|
|
7
|
-
return '{}';
|
|
8
|
-
};
|
|
9
|
-
exports.EMPTYOBJECT = EMPTYOBJECT;
|
|
10
|
-
const WRAPOBJECT = (d) => {
|
|
11
|
-
return '{' + d[0] + '}';
|
|
12
|
-
};
|
|
13
|
-
exports.WRAPOBJECT = WRAPOBJECT;
|
|
14
|
-
const JOIN = (d) => {
|
|
15
|
-
return d[0].join(',');
|
|
16
|
-
};
|
|
17
|
-
exports.JOIN = JOIN;
|
|
18
|
-
const PAIR = (d) => {
|
|
19
|
-
return d[0] + ':' + d[1];
|
|
20
|
-
};
|
|
21
|
-
exports.PAIR = PAIR;
|
|
22
|
-
const WRAPSTRING = (d) => {
|
|
23
|
-
return '"' + d[0].join('') + '"';
|
|
24
|
-
};
|
|
25
|
-
exports.WRAPSTRING = WRAPSTRING;
|
|
26
|
-
const EMPTYSTRING = () => {
|
|
27
|
-
return '\"\"';
|
|
28
|
-
};
|
|
29
|
-
exports.EMPTYSTRING = EMPTYSTRING;
|
|
30
|
-
const CONVERT = (d) => {
|
|
31
|
-
return (0, mapper_1.lookUp)(d[0]);
|
|
32
|
-
};
|
|
33
|
-
exports.CONVERT = CONVERT;
|
|
34
|
-
const CONVERTUPPER = (d) => {
|
|
35
|
-
return (0, mapper_1.lookUp)(d[1]).toUpperCase();
|
|
36
|
-
};
|
|
37
|
-
exports.CONVERTUPPER = CONVERTUPPER;
|
|
38
|
-
const CONCAT = (d) => {
|
|
39
|
-
return d[0].join('');
|
|
40
|
-
};
|
|
41
|
-
exports.CONCAT = CONCAT;
|
|
42
|
-
const CONCATSECOND = (d) => {
|
|
43
|
-
return d[1].join('');
|
|
44
|
-
};
|
|
45
|
-
exports.CONCATSECOND = CONCATSECOND;
|
|
46
|
-
const BUILDINT = (d) => {
|
|
47
|
-
const absolute = d[1].join('');
|
|
48
|
-
return d[0] ? '-' + absolute : absolute;
|
|
49
|
-
};
|
|
50
|
-
exports.BUILDINT = BUILDINT;
|
|
51
|
-
const BUILDFLOAT = (d) => {
|
|
52
|
-
const absolute = d[1].join('') + d[2] + d[3].join('');
|
|
53
|
-
return d[0] ? '-' + absolute : absolute;
|
|
54
|
-
};
|
|
55
|
-
exports.BUILDFLOAT = BUILDFLOAT;
|
|
56
|
-
const CONCATWRAPSTRING = (d) => {
|
|
57
|
-
return '"' + d[0].join('') + '"';
|
|
58
|
-
};
|
|
59
|
-
exports.CONCATWRAPSTRING = CONCATWRAPSTRING;
|
|
60
|
-
const SELF = (d) => {
|
|
61
|
-
return d[0];
|
|
62
|
-
};
|
|
63
|
-
exports.SELF = SELF;
|
|
64
|
-
const TAKESECOND = (d) => {
|
|
65
|
-
return d[1];
|
|
66
|
-
};
|
|
67
|
-
exports.TAKESECOND = TAKESECOND;
|
|
68
|
-
const COLLAPSEARRAY = (d) => {
|
|
69
|
-
if (d[2][0]) {
|
|
70
|
-
return '[' + d[1] + ',' + d[2].join(',') + ']';
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
return '[' + d[1] + ']';
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
exports.COLLAPSEARRAY = COLLAPSEARRAY;
|
|
77
|
-
const ASSEMBLEOBJECT = (d) => {
|
|
78
|
-
return '{' + d[0].join(',') + '}';
|
|
79
|
-
};
|
|
80
|
-
exports.ASSEMBLEOBJECT = ASSEMBLEOBJECT;
|
|
81
|
-
const CONVERTMULTIPLE = (d) => {
|
|
82
|
-
return d[0].map((x) => (0, mapper_1.lookUp)(x));
|
|
83
|
-
};
|
|
84
|
-
exports.CONVERTMULTIPLE = CONVERTMULTIPLE;
|
|
85
|
-
const BUILDUNICODE = (d) => {
|
|
86
|
-
return d[0].length > 0 ? (0, utilities_1.charFromCodePoint)(d[0].join('')) : null;
|
|
87
|
-
};
|
|
88
|
-
exports.BUILDUNICODE = BUILDUNICODE;
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zdHByb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wb3N0cHJvY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUFrQztBQUNsQywyQ0FBZ0Q7QUFFekMsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFO0lBQzlCLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBRlcsUUFBQSxXQUFXLGVBRXRCO0FBQ0ssTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUNuQyxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0FBQzFCLENBQUMsQ0FBQztBQUZXLFFBQUEsVUFBVSxjQUVyQjtBQUNLLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7SUFDN0IsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUZXLFFBQUEsSUFBSSxRQUVmO0FBQ0ssTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUM3QixPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzNCLENBQUMsQ0FBQztBQUZXLFFBQUEsSUFBSSxRQUVmO0FBQ0ssTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUNuQyxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztBQUNuQyxDQUFDLENBQUM7QUFGVyxRQUFBLFVBQVUsY0FFckI7QUFDSyxNQUFNLFdBQVcsR0FBRyxHQUFHLEVBQUU7SUFDOUIsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyxDQUFDO0FBRlcsUUFBQSxXQUFXLGVBRXRCO0FBQ0ssTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUNoQyxPQUFPLElBQUEsZUFBTSxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3RCLENBQUMsQ0FBQztBQUZXLFFBQUEsT0FBTyxXQUVsQjtBQUNLLE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7SUFDckMsT0FBTyxJQUFBLGVBQU0sRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztBQUNwQyxDQUFDLENBQUM7QUFGVyxRQUFBLFlBQVksZ0JBRXZCO0FBQ0ssTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUMvQixPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDdkIsQ0FBQyxDQUFDO0FBRlcsUUFBQSxNQUFNLFVBRWpCO0FBQ0ssTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUNyQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDdkIsQ0FBQyxDQUFDO0FBRlcsUUFBQSxZQUFZLGdCQUV2QjtBQUNLLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7SUFDakMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQixPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0FBQzFDLENBQUMsQ0FBQztBQUhXLFFBQUEsUUFBUSxZQUduQjtBQUNLLE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7SUFDbkMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN0RCxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO0FBQzFDLENBQUMsQ0FBQztBQUhXLFFBQUEsVUFBVSxjQUdyQjtBQUNLLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUN6QyxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztBQUNuQyxDQUFDLENBQUM7QUFGVyxRQUFBLGdCQUFnQixvQkFFM0I7QUFDSyxNQUFNLElBQUksR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFO0lBQzdCLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBRlcsUUFBQSxJQUFJLFFBRWY7QUFDSyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFO0lBQ25DLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBRlcsUUFBQSxVQUFVLGNBRXJCO0FBQ0ssTUFBTSxhQUFhLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUN0QyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ1osT0FBTyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUNqRCxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDMUIsQ0FBQztBQUNILENBQUMsQ0FBQztBQU5XLFFBQUEsYUFBYSxpQkFNeEI7QUFDSyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFO0lBQ3ZDLE9BQU8sR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDO0FBQ3BDLENBQUMsQ0FBQztBQUZXLFFBQUEsY0FBYyxrQkFFekI7QUFDSyxNQUFNLGVBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFO0lBQ3hDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsSUFBQSxlQUFNLEVBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN6QyxDQUFDLENBQUM7QUFGVyxRQUFBLGVBQWUsbUJBRTFCO0FBQ0ssTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRTtJQUNyQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLDZCQUFpQixFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ25FLENBQUMsQ0FBQztBQUZXLFFBQUEsWUFBWSxnQkFFdkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsb29rVXAgfSBmcm9tICcuL21hcHBlcic7XG5pbXBvcnQgeyBjaGFyRnJvbUNvZGVQb2ludCB9IGZyb20gJy4vdXRpbGl0aWVzJztcblxuZXhwb3J0IGNvbnN0IEVNUFRZT0JKRUNUID0gKCkgPT4ge1xuICByZXR1cm4gJ3t9Jztcbn07XG5leHBvcnQgY29uc3QgV1JBUE9CSkVDVCA9IChkOiBhbnkpID0+IHtcbiAgcmV0dXJuICd7JyArIGRbMF0gKyAnfSc7XG59O1xuZXhwb3J0IGNvbnN0IEpPSU4gPSAoZDogYW55KSA9PiB7XG4gIHJldHVybiBkWzBdLmpvaW4oJywnKTtcbn07XG5leHBvcnQgY29uc3QgUEFJUiA9IChkOiBhbnkpID0+IHtcbiAgcmV0dXJuIGRbMF0gKyAnOicgKyBkWzFdO1xufTtcbmV4cG9ydCBjb25zdCBXUkFQU1RSSU5HID0gKGQ6IGFueSkgPT4ge1xuICByZXR1cm4gJ1wiJyArIGRbMF0uam9pbignJykgKyAnXCInO1xufTtcbmV4cG9ydCBjb25zdCBFTVBUWVNUUklORyA9ICgpID0+IHtcbiAgcmV0dXJuICdcXFwiXFxcIic7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdXNlbGVzcy1lc2NhcGVcbn07XG5leHBvcnQgY29uc3QgQ09OVkVSVCA9IChkOiBhbnkpID0+IHtcbiAgcmV0dXJuIGxvb2tVcChkWzBdKTtcbn07XG5leHBvcnQgY29uc3QgQ09OVkVSVFVQUEVSID0gKGQ6IGFueSkgPT4ge1xuICByZXR1cm4gbG9va1VwKGRbMV0pLnRvVXBwZXJDYXNlKCk7XG59O1xuZXhwb3J0IGNvbnN0IENPTkNBVCA9IChkOiBhbnkpID0+IHtcbiAgcmV0dXJuIGRbMF0uam9pbignJyk7XG59O1xuZXhwb3J0IGNvbnN0IENPTkNBVFNFQ09ORCA9IChkOiBhbnkpID0+IHtcbiAgcmV0dXJuIGRbMV0uam9pbignJyk7XG59O1xuZXhwb3J0IGNvbnN0IEJVSUxESU5UID0gKGQ6IGFueSkgPT4ge1xuICBjb25zdCBhYnNvbHV0ZSA9IGRbMV0uam9pbignJyk7XG4gIHJldHVybiBkWzBdID8gJy0nICsgYWJzb2x1dGUgOiBhYnNvbHV0ZTtcbn07XG5leHBvcnQgY29uc3QgQlVJTERGTE9BVCA9IChkOiBhbnkpID0+IHtcbiAgY29uc3QgYWJzb2x1dGUgPSBkWzFdLmpvaW4oJycpICsgZFsyXSArIGRbM10uam9pbignJyk7XG4gIHJldHVybiBkWzBdID8gJy0nICsgYWJzb2x1dGUgOiBhYnNvbHV0ZTtcbn07XG5leHBvcnQgY29uc3QgQ09OQ0FUV1JBUFNUUklORyA9IChkOiBhbnkpID0+IHtcbiAgcmV0dXJuICdcIicgKyBkWzBdLmpvaW4oJycpICsgJ1wiJztcbn07XG5leHBvcnQgY29uc3QgU0VMRiA9IChkOiBhbnkpID0+IHtcbiAgcmV0dXJuIGRbMF07XG59O1xuZXhwb3J0IGNvbnN0IFRBS0VTRUNPTkQgPSAoZDogYW55KSA9PiB7XG4gIHJldHVybiBkWzFdO1xufTtcbmV4cG9ydCBjb25zdCBDT0xMQVBTRUFSUkFZID0gKGQ6IGFueSkgPT4ge1xuICBpZiAoZFsyXVswXSkge1xuICAgIHJldHVybiAnWycgKyBkWzFdICsgJywnICsgZFsyXS5qb2luKCcsJykgKyAnXSc7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuICdbJyArIGRbMV0gKyAnXSc7XG4gIH1cbn07XG5leHBvcnQgY29uc3QgQVNTRU1CTEVPQkpFQ1QgPSAoZDogYW55KSA9PiB7XG4gIHJldHVybiAneycgKyBkWzBdLmpvaW4oJywnKSArICd9Jztcbn07XG5leHBvcnQgY29uc3QgQ09OVkVSVE1VTFRJUExFID0gKGQ6IGFueSkgPT4ge1xuICByZXR1cm4gZFswXS5tYXAoKHg6IGFueSkgPT4gbG9va1VwKHgpKTtcbn07XG5leHBvcnQgY29uc3QgQlVJTERVTklDT0RFID0gKGQ6IGFueSkgPT4ge1xuICByZXR1cm4gZFswXS5sZW5ndGggPiAwID8gY2hhckZyb21Db2RlUG9pbnQoZFswXS5qb2luKCcnKSkgOiBudWxsO1xufTtcbiJdfQ==
|
package/lib/src/typer.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.typeOf = void 0;
|
|
4
|
-
const typeOf = (entity) => {
|
|
5
|
-
if (typeof entity === 'string') {
|
|
6
|
-
return 'string';
|
|
7
|
-
}
|
|
8
|
-
else if (typeof entity === 'number' && isFinite(entity)) {
|
|
9
|
-
return 'number';
|
|
10
|
-
}
|
|
11
|
-
else if (entity &&
|
|
12
|
-
typeof entity === 'object' &&
|
|
13
|
-
entity.constructor === Array) {
|
|
14
|
-
return 'array';
|
|
15
|
-
}
|
|
16
|
-
else if (entity &&
|
|
17
|
-
typeof entity === 'object' &&
|
|
18
|
-
entity.constructor === Object) {
|
|
19
|
-
return 'object';
|
|
20
|
-
}
|
|
21
|
-
else if (entity === null) {
|
|
22
|
-
return 'null';
|
|
23
|
-
}
|
|
24
|
-
else if (typeof entity === 'boolean') {
|
|
25
|
-
return 'boolean';
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
return 'undetermined';
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
exports.typeOf = typeOf;
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQU8sTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFXLEVBQUUsRUFBRTtJQUNwQyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQy9CLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7U0FBTSxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMxRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO1NBQU0sSUFDTCxNQUFNO1FBQ04sT0FBTyxNQUFNLEtBQUssUUFBUTtRQUMxQixNQUFNLENBQUMsV0FBVyxLQUFLLEtBQUssRUFDNUIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7U0FBTSxJQUNMLE1BQU07UUFDTixPQUFPLE1BQU0sS0FBSyxRQUFRO1FBQzFCLE1BQU0sQ0FBQyxXQUFXLEtBQUssTUFBTSxFQUM3QixDQUFDO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztTQUFNLElBQUksTUFBTSxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzNCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7U0FBTSxJQUFJLE9BQU8sTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztBQUNILENBQUMsQ0FBQztBQXhCVyxRQUFBLE1BQU0sVUF3QmpCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHR5cGVPZiA9IChlbnRpdHk6IGFueSkgPT4ge1xuICBpZiAodHlwZW9mIGVudGl0eSA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gJ3N0cmluZyc7XG4gIH0gZWxzZSBpZiAodHlwZW9mIGVudGl0eSA9PT0gJ251bWJlcicgJiYgaXNGaW5pdGUoZW50aXR5KSkge1xuICAgIHJldHVybiAnbnVtYmVyJztcbiAgfSBlbHNlIGlmIChcbiAgICBlbnRpdHkgJiZcbiAgICB0eXBlb2YgZW50aXR5ID09PSAnb2JqZWN0JyAmJlxuICAgIGVudGl0eS5jb25zdHJ1Y3RvciA9PT0gQXJyYXlcbiAgKSB7XG4gICAgcmV0dXJuICdhcnJheSc7XG4gIH0gZWxzZSBpZiAoXG4gICAgZW50aXR5ICYmXG4gICAgdHlwZW9mIGVudGl0eSA9PT0gJ29iamVjdCcgJiZcbiAgICBlbnRpdHkuY29uc3RydWN0b3IgPT09IE9iamVjdFxuICApIHtcbiAgICByZXR1cm4gJ29iamVjdCc7XG4gIH0gZWxzZSBpZiAoZW50aXR5ID09PSBudWxsKSB7XG4gICAgcmV0dXJuICdudWxsJztcbiAgfSBlbHNlIGlmICh0eXBlb2YgZW50aXR5ID09PSAnYm9vbGVhbicpIHtcbiAgICByZXR1cm4gJ2Jvb2xlYW4nO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiAndW5kZXRlcm1pbmVkJztcbiAgfVxufTtcbiJdfQ==
|
package/lib/src/utilities.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.charFromCodePoint = exports.switchKeysAndValuesInMultipleObjectsThenMerge = exports.switchKeysAndValuesInObject = exports.makeRegexpFromValuesInMultipleObjects = exports.makeRegexpFromValuesInObject = exports.makeRegexp = void 0;
|
|
4
|
-
const lodash_1 = require("lodash");
|
|
5
|
-
function concatValuesFromObject(dict) {
|
|
6
|
-
const values = Object.values(dict);
|
|
7
|
-
const concatenation = values.reduce((acc, val) => acc.concat(val));
|
|
8
|
-
return concatenation;
|
|
9
|
-
}
|
|
10
|
-
const makeRegexp = (characters) => {
|
|
11
|
-
const regexp = new RegExp(`[ ${characters}]`, 'u');
|
|
12
|
-
return regexp;
|
|
13
|
-
};
|
|
14
|
-
exports.makeRegexp = makeRegexp;
|
|
15
|
-
const makeRegexpFromValuesInObject = (dict) => {
|
|
16
|
-
const concatenation = concatValuesFromObject(dict);
|
|
17
|
-
const regexp = (0, exports.makeRegexp)(concatenation);
|
|
18
|
-
return regexp;
|
|
19
|
-
};
|
|
20
|
-
exports.makeRegexpFromValuesInObject = makeRegexpFromValuesInObject;
|
|
21
|
-
const makeRegexpFromValuesInMultipleObjects = (dicts) => {
|
|
22
|
-
const valuesArray = dicts.map((x) => concatValuesFromObject(x));
|
|
23
|
-
const concatenation = valuesArray.reduce((acc, val) => acc.concat(val));
|
|
24
|
-
const regexp = (0, exports.makeRegexp)(concatenation);
|
|
25
|
-
return regexp;
|
|
26
|
-
};
|
|
27
|
-
exports.makeRegexpFromValuesInMultipleObjects = makeRegexpFromValuesInMultipleObjects;
|
|
28
|
-
const switchKeysAndValuesInObject = (dict) => {
|
|
29
|
-
const flipped = (0, lodash_1.invert)(dict);
|
|
30
|
-
return flipped;
|
|
31
|
-
};
|
|
32
|
-
exports.switchKeysAndValuesInObject = switchKeysAndValuesInObject;
|
|
33
|
-
const switchKeysAndValuesInMultipleObjectsThenMerge = (dicts) => {
|
|
34
|
-
const flippedArray = dicts.map((x) => (0, exports.switchKeysAndValuesInObject)(x));
|
|
35
|
-
const merged = flippedArray.reduce((acc, val) => (0, lodash_1.merge)(acc, val));
|
|
36
|
-
return merged;
|
|
37
|
-
};
|
|
38
|
-
exports.switchKeysAndValuesInMultipleObjectsThenMerge = switchKeysAndValuesInMultipleObjectsThenMerge;
|
|
39
|
-
const charFromCodePoint = (hexNibblesAsString) => {
|
|
40
|
-
const hexNumberAsString = Number('0x' + hexNibblesAsString).toString();
|
|
41
|
-
const codePoint = parseInt(hexNumberAsString, 10);
|
|
42
|
-
const character = String.fromCodePoint(codePoint);
|
|
43
|
-
return character;
|
|
44
|
-
};
|
|
45
|
-
exports.charFromCodePoint = charFromCodePoint;
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBdUM7QUFFdkMsU0FBUyxzQkFBc0IsQ0FBQyxJQUFZO0lBQzFDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNuRSxPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDO0FBRU0sTUFBTSxVQUFVLEdBQUcsQ0FBQyxVQUFrQixFQUFFLEVBQUU7SUFDL0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsS0FBSyxVQUFVLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNuRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDLENBQUM7QUFIVyxRQUFBLFVBQVUsY0FHckI7QUFFSyxNQUFNLDRCQUE0QixHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUU7SUFDM0QsTUFBTSxhQUFhLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkQsTUFBTSxNQUFNLEdBQUcsSUFBQSxrQkFBVSxFQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pDLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUpXLFFBQUEsNEJBQTRCLGdDQUl2QztBQUVLLE1BQU0scUNBQXFDLEdBQUcsQ0FBQyxLQUFlLEVBQUUsRUFBRTtJQUN2RSxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLE1BQU0sYUFBYSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDeEUsTUFBTSxNQUFNLEdBQUcsSUFBQSxrQkFBVSxFQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pDLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUxXLFFBQUEscUNBQXFDLHlDQUtoRDtBQUVLLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUMxRCxNQUFNLE9BQU8sR0FBRyxJQUFBLGVBQU0sRUFBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7QUFIVyxRQUFBLDJCQUEyQiwrQkFHdEM7QUFFSyxNQUFNLDZDQUE2QyxHQUFHLENBQzNELEtBQWUsRUFDZixFQUFFO0lBQ0YsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBQSxtQ0FBMkIsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFBLGNBQUssRUFBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNsRSxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDLENBQUM7QUFOVyxRQUFBLDZDQUE2QyxpREFNeEQ7QUFFSyxNQUFNLGlCQUFpQixHQUFHLENBQUMsa0JBQTBCLEVBQUUsRUFBRTtJQUM5RCxNQUFNLGlCQUFpQixHQUFXLE1BQU0sQ0FDdEMsSUFBSSxHQUFHLGtCQUFrQixDQUMxQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2IsTUFBTSxTQUFTLEdBQVcsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzFELE1BQU0sU0FBUyxHQUFXLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDMUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBUFcsUUFBQSxpQkFBaUIscUJBTzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW52ZXJ0LCBtZXJnZSB9IGZyb20gJ2xvZGFzaCc7XG5cbmZ1bmN0aW9uIGNvbmNhdFZhbHVlc0Zyb21PYmplY3QoZGljdDogb2JqZWN0KSB7XG4gIGNvbnN0IHZhbHVlcyA9IE9iamVjdC52YWx1ZXMoZGljdCk7XG4gIGNvbnN0IGNvbmNhdGVuYXRpb24gPSB2YWx1ZXMucmVkdWNlKChhY2MsIHZhbCkgPT4gYWNjLmNvbmNhdCh2YWwpKTtcbiAgcmV0dXJuIGNvbmNhdGVuYXRpb247XG59XG5cbmV4cG9ydCBjb25zdCBtYWtlUmVnZXhwID0gKGNoYXJhY3RlcnM6IHN0cmluZykgPT4ge1xuICBjb25zdCByZWdleHAgPSBuZXcgUmVnRXhwKGBbICR7Y2hhcmFjdGVyc31dYCwgJ3UnKTtcbiAgcmV0dXJuIHJlZ2V4cDtcbn07XG5cbmV4cG9ydCBjb25zdCBtYWtlUmVnZXhwRnJvbVZhbHVlc0luT2JqZWN0ID0gKGRpY3Q6IG9iamVjdCkgPT4ge1xuICBjb25zdCBjb25jYXRlbmF0aW9uID0gY29uY2F0VmFsdWVzRnJvbU9iamVjdChkaWN0KTtcbiAgY29uc3QgcmVnZXhwID0gbWFrZVJlZ2V4cChjb25jYXRlbmF0aW9uKTtcbiAgcmV0dXJuIHJlZ2V4cDtcbn07XG5cbmV4cG9ydCBjb25zdCBtYWtlUmVnZXhwRnJvbVZhbHVlc0luTXVsdGlwbGVPYmplY3RzID0gKGRpY3RzOiBvYmplY3RbXSkgPT4ge1xuICBjb25zdCB2YWx1ZXNBcnJheSA9IGRpY3RzLm1hcCgoeCkgPT4gY29uY2F0VmFsdWVzRnJvbU9iamVjdCh4KSk7XG4gIGNvbnN0IGNvbmNhdGVuYXRpb24gPSB2YWx1ZXNBcnJheS5yZWR1Y2UoKGFjYywgdmFsKSA9PiBhY2MuY29uY2F0KHZhbCkpO1xuICBjb25zdCByZWdleHAgPSBtYWtlUmVnZXhwKGNvbmNhdGVuYXRpb24pO1xuICByZXR1cm4gcmVnZXhwO1xufTtcblxuZXhwb3J0IGNvbnN0IHN3aXRjaEtleXNBbmRWYWx1ZXNJbk9iamVjdCA9IChkaWN0OiBvYmplY3QpID0+IHtcbiAgY29uc3QgZmxpcHBlZCA9IGludmVydChkaWN0KTtcbiAgcmV0dXJuIGZsaXBwZWQ7XG59O1xuXG5leHBvcnQgY29uc3Qgc3dpdGNoS2V5c0FuZFZhbHVlc0luTXVsdGlwbGVPYmplY3RzVGhlbk1lcmdlID0gKFxuICBkaWN0czogb2JqZWN0W11cbikgPT4ge1xuICBjb25zdCBmbGlwcGVkQXJyYXkgPSBkaWN0cy5tYXAoKHgpID0+IHN3aXRjaEtleXNBbmRWYWx1ZXNJbk9iamVjdCh4KSk7XG4gIGNvbnN0IG1lcmdlZCA9IGZsaXBwZWRBcnJheS5yZWR1Y2UoKGFjYywgdmFsKSA9PiBtZXJnZShhY2MsIHZhbCkpO1xuICByZXR1cm4gbWVyZ2VkO1xufTtcblxuZXhwb3J0IGNvbnN0IGNoYXJGcm9tQ29kZVBvaW50ID0gKGhleE5pYmJsZXNBc1N0cmluZzogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGhleE51bWJlckFzU3RyaW5nOiBzdHJpbmcgPSBOdW1iZXIoXG4gICAgJzB4JyArIGhleE5pYmJsZXNBc1N0cmluZ1xuICApLnRvU3RyaW5nKCk7XG4gIGNvbnN0IGNvZGVQb2ludDogbnVtYmVyID0gcGFyc2VJbnQoaGV4TnVtYmVyQXNTdHJpbmcsIDEwKTtcbiAgY29uc3QgY2hhcmFjdGVyOiBzdHJpbmcgPSBTdHJpbmcuZnJvbUNvZGVQb2ludChjb2RlUG9pbnQpO1xuICByZXR1cm4gY2hhcmFjdGVyO1xufTtcbiJdfQ==
|