@malloydata/malloy-filter 0.0.237-dev250225213433 → 0.0.237
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/package.json +1 -1
- package/dist/a_simple_parser.d.ts +0 -1
- package/dist/a_simple_parser.js +0 -29
- package/dist/a_simple_parser.js.map +0 -1
- package/dist/base_parser.d.ts +0 -11
- package/dist/base_parser.js +0 -39
- package/dist/base_parser.js.map +0 -1
- package/dist/boolean_parser.d.ts +0 -7
- package/dist/boolean_parser.js +0 -76
- package/dist/boolean_parser.js.map +0 -1
- package/dist/boolean_serializer.d.ts +0 -8
- package/dist/boolean_serializer.js +0 -45
- package/dist/boolean_serializer.js.map +0 -1
- package/dist/clause_types.d.ts +0 -68
- package/dist/clause_types.js +0 -9
- package/dist/clause_types.js.map +0 -1
- package/dist/date_parser.d.ts +0 -25
- package/dist/date_parser.js +0 -434
- package/dist/date_parser.js.map +0 -1
- package/dist/date_serializer.d.ts +0 -11
- package/dist/date_serializer.js +0 -94
- package/dist/date_serializer.js.map +0 -1
- package/dist/date_types.d.ts +0 -75
- package/dist/date_types.js +0 -9
- package/dist/date_types.js.map +0 -1
- package/dist/generate_samples.d.ts +0 -1
- package/dist/generate_samples.js +0 -334
- package/dist/generate_samples.js.map +0 -1
- package/dist/index.d.ts +0 -10
- package/dist/index.js +0 -42
- package/dist/index.js.map +0 -1
- package/dist/number_parser.d.ts +0 -17
- package/dist/number_parser.js +0 -252
- package/dist/number_parser.js.map +0 -1
- package/dist/number_serializer.d.ts +0 -11
- package/dist/number_serializer.js +0 -85
- package/dist/number_serializer.js.map +0 -1
- package/dist/string_parser.d.ts +0 -17
- package/dist/string_parser.js +0 -166
- package/dist/string_parser.js.map +0 -1
- package/dist/string_serializer.d.ts +0 -13
- package/dist/string_serializer.js +0 -107
- package/dist/string_serializer.js.map +0 -1
- package/dist/token_types.d.ts +0 -7
- package/dist/token_types.js +0 -9
- package/dist/token_types.js.map +0 -1
- package/dist/tokenizer.d.ts +0 -52
- package/dist/tokenizer.js +0 -269
- package/dist/tokenizer.js.map +0 -1
- package/dist/tokenizer.spec.d.ts +0 -1
- package/dist/tokenizer.spec.js +0 -261
- package/dist/tokenizer.spec.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"number_parser.js","sourceRoot":"","sources":["../src/number_parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { NumberClause } from './clause_types';
|
|
2
|
-
export declare class NumberSerializer {
|
|
3
|
-
private clauses;
|
|
4
|
-
constructor(clauses: NumberClause[]);
|
|
5
|
-
serialize(): string;
|
|
6
|
-
private static numberConditionToString;
|
|
7
|
-
private static getNegatedType;
|
|
8
|
-
private static isNumberOperator;
|
|
9
|
-
private static rangeToString;
|
|
10
|
-
private static clauseToString;
|
|
11
|
-
}
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the MIT license found in the
|
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.NumberSerializer = void 0;
|
|
10
|
-
class NumberSerializer {
|
|
11
|
-
constructor(clauses) {
|
|
12
|
-
this.clauses = clauses;
|
|
13
|
-
this.clauses = clauses;
|
|
14
|
-
}
|
|
15
|
-
serialize() {
|
|
16
|
-
const result = NumberSerializer.clauseToString(this.clauses);
|
|
17
|
-
return result.trim().replace(/,$/, '');
|
|
18
|
-
}
|
|
19
|
-
// NumberOperator = '<=' | '>=' | '!=' | '=' | '>' | '<'
|
|
20
|
-
static numberConditionToString(operator, value) {
|
|
21
|
-
// Remove operator for eg "5, 7, 9".
|
|
22
|
-
const operatorString = operator === '=' ? '' : operator;
|
|
23
|
-
return operatorString + value;
|
|
24
|
-
}
|
|
25
|
-
static getNegatedType(operator) {
|
|
26
|
-
switch (operator) {
|
|
27
|
-
case '<':
|
|
28
|
-
return '>=';
|
|
29
|
-
case '<=':
|
|
30
|
-
return '>';
|
|
31
|
-
case '>':
|
|
32
|
-
return '<=';
|
|
33
|
-
case '>=':
|
|
34
|
-
return '<';
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
static isNumberOperator(value) {
|
|
38
|
-
return ['<=', '>=', '!=', '=', '>', '<'].includes(value);
|
|
39
|
-
}
|
|
40
|
-
static rangeToString(clause) {
|
|
41
|
-
const negated = clause.startOperator === '<' || clause.startOperator === '<=' ? '!=' : '';
|
|
42
|
-
const startOperator = negated
|
|
43
|
-
? NumberSerializer.getNegatedType(clause.startOperator)
|
|
44
|
-
: clause.startOperator;
|
|
45
|
-
const endOperator = negated
|
|
46
|
-
? NumberSerializer.getNegatedType(clause.endOperator)
|
|
47
|
-
: clause.endOperator;
|
|
48
|
-
const leftBracket = startOperator === '>' ? '(' : '[';
|
|
49
|
-
const rightBracket = endOperator === '<' ? ')' : ']';
|
|
50
|
-
return (negated +
|
|
51
|
-
leftBracket +
|
|
52
|
-
clause.startValue +
|
|
53
|
-
', ' +
|
|
54
|
-
clause.endValue +
|
|
55
|
-
rightBracket);
|
|
56
|
-
}
|
|
57
|
-
static clauseToString(clauses) {
|
|
58
|
-
let result = '';
|
|
59
|
-
for (const clause of clauses) {
|
|
60
|
-
if (!('operator' in clause)) {
|
|
61
|
-
throw new Error('Invalid number clause ' + JSON.stringify(clause));
|
|
62
|
-
}
|
|
63
|
-
if (clause.operator === 'range') {
|
|
64
|
-
result += NumberSerializer.rangeToString(clause);
|
|
65
|
-
result += ', ';
|
|
66
|
-
}
|
|
67
|
-
else if (clause.operator === 'null') {
|
|
68
|
-
result += 'null, ';
|
|
69
|
-
}
|
|
70
|
-
else if (clause.operator === 'not_null') {
|
|
71
|
-
result += '-null, ';
|
|
72
|
-
}
|
|
73
|
-
else if (NumberSerializer.isNumberOperator(clause.operator)) {
|
|
74
|
-
const numberClause = clause;
|
|
75
|
-
for (const value of numberClause.values) {
|
|
76
|
-
result += NumberSerializer.numberConditionToString(numberClause.operator, value);
|
|
77
|
-
result += ', ';
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
return result;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
exports.NumberSerializer = NumberSerializer;
|
|
85
|
-
//# sourceMappingURL=number_serializer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"number_serializer.js","sourceRoot":"","sources":["../src/number_serializer.ts"],"names":[],"mappings":"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"}
|
package/dist/string_parser.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { StringParserResponse } from './clause_types';
|
|
2
|
-
import { BaseParser } from './base_parser';
|
|
3
|
-
export declare class StringParser extends BaseParser {
|
|
4
|
-
private static readonly percentRegex;
|
|
5
|
-
private static readonly underscoreRegex;
|
|
6
|
-
private static readonly percentStartRegex;
|
|
7
|
-
private static readonly percentEndRegex;
|
|
8
|
-
private static readonly negatedStartRegex;
|
|
9
|
-
private static readonly singleBackslashRegex;
|
|
10
|
-
constructor(input: string);
|
|
11
|
-
private tokenize;
|
|
12
|
-
parse(): StringParserResponse;
|
|
13
|
-
private static groupClauses;
|
|
14
|
-
private static percentInMiddle;
|
|
15
|
-
private static removeBackslashes;
|
|
16
|
-
private checkSimpleWord;
|
|
17
|
-
}
|
package/dist/string_parser.js
DELETED
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the MIT license found in the
|
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.StringParser = void 0;
|
|
10
|
-
const tokenizer_1 = require("./tokenizer");
|
|
11
|
-
const base_parser_1 = require("./base_parser");
|
|
12
|
-
class StringParser extends base_parser_1.BaseParser {
|
|
13
|
-
constructor(input) {
|
|
14
|
-
super(input);
|
|
15
|
-
}
|
|
16
|
-
tokenize() {
|
|
17
|
-
const specialSubstrings = [{ type: ',', value: ',' }];
|
|
18
|
-
const specialWords = [
|
|
19
|
-
{ type: 'null', value: 'null', ignoreCase: true },
|
|
20
|
-
{ type: 'empty', value: 'empty', ignoreCase: true },
|
|
21
|
-
{ type: 'not_null', value: '-null', ignoreCase: true },
|
|
22
|
-
{ type: 'not_empty', value: '-empty', ignoreCase: true },
|
|
23
|
-
];
|
|
24
|
-
const params = {
|
|
25
|
-
trimWordWhitespace: true,
|
|
26
|
-
combineAdjacentWords: true,
|
|
27
|
-
specialSubstrings,
|
|
28
|
-
specialWords: specialWords,
|
|
29
|
-
};
|
|
30
|
-
const tokenizer = new tokenizer_1.Tokenizer(this.inputString, params);
|
|
31
|
-
this.tokens = tokenizer.parse();
|
|
32
|
-
this.tokens = tokenizer_1.Tokenizer.convertSpecialWords(this.tokens, specialWords);
|
|
33
|
-
}
|
|
34
|
-
parse() {
|
|
35
|
-
this.index = 0;
|
|
36
|
-
this.tokenize();
|
|
37
|
-
let clauses = [];
|
|
38
|
-
const logs = [];
|
|
39
|
-
while (this.index < this.tokens.length) {
|
|
40
|
-
const token = this.getNext();
|
|
41
|
-
if (token.type === ',') {
|
|
42
|
-
if (this.index > 0 && this.tokens[this.index - 1].type === ',') {
|
|
43
|
-
logs.push({
|
|
44
|
-
severity: 'warn',
|
|
45
|
-
message: 'Empty clause',
|
|
46
|
-
startIndex: token.startIndex,
|
|
47
|
-
endIndex: token.endIndex,
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
this.index++;
|
|
51
|
-
}
|
|
52
|
-
else if (token.type === 'null' ||
|
|
53
|
-
token.type === 'not_null' ||
|
|
54
|
-
token.type === 'empty' ||
|
|
55
|
-
token.type === 'not_empty') {
|
|
56
|
-
clauses.push({ operator: token.type });
|
|
57
|
-
this.index++;
|
|
58
|
-
}
|
|
59
|
-
else if (this.checkSimpleWord(clauses)) {
|
|
60
|
-
this.index++;
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
logs.push({
|
|
64
|
-
severity: 'warn',
|
|
65
|
-
message: 'Empty clause',
|
|
66
|
-
startIndex: token.startIndex,
|
|
67
|
-
endIndex: token.endIndex,
|
|
68
|
-
});
|
|
69
|
-
this.index++;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
clauses = StringParser.groupClauses(clauses);
|
|
73
|
-
return {
|
|
74
|
-
clauses,
|
|
75
|
-
logs,
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
static groupClauses(clauses) {
|
|
79
|
-
if (clauses.length < 2) {
|
|
80
|
-
return clauses;
|
|
81
|
-
}
|
|
82
|
-
let previous = clauses[0];
|
|
83
|
-
const outputs = [previous];
|
|
84
|
-
for (let i = 1; i < clauses.length; i++) {
|
|
85
|
-
const current = clauses[i];
|
|
86
|
-
if (previous.operator === current.operator &&
|
|
87
|
-
'values' in previous &&
|
|
88
|
-
'values' in current) {
|
|
89
|
-
previous.values.push(...current.values);
|
|
90
|
-
}
|
|
91
|
-
else if (previous.operator === current.operator &&
|
|
92
|
-
'escaped_values' in previous &&
|
|
93
|
-
'escaped_values' in current) {
|
|
94
|
-
previous.escaped_values.push(...current.escaped_values);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
previous = current;
|
|
98
|
-
outputs.push(current);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
return outputs;
|
|
102
|
-
}
|
|
103
|
-
static percentInMiddle(word) {
|
|
104
|
-
if (word.length < 3)
|
|
105
|
-
return false;
|
|
106
|
-
word = word.substring(1, word.length - 1);
|
|
107
|
-
return StringParser.percentRegex.test(word);
|
|
108
|
-
}
|
|
109
|
-
static removeBackslashes(word) {
|
|
110
|
-
StringParser.singleBackslashRegex.lastIndex = 0;
|
|
111
|
-
return word.replace(StringParser.singleBackslashRegex, _match => '');
|
|
112
|
-
}
|
|
113
|
-
checkSimpleWord(clauses) {
|
|
114
|
-
const token = this.getNext();
|
|
115
|
-
if (token.type !== 'word') {
|
|
116
|
-
return false;
|
|
117
|
-
}
|
|
118
|
-
const negatedMatch = StringParser.negatedStartRegex.exec(token.value);
|
|
119
|
-
let word = negatedMatch ? negatedMatch[1] : token.value;
|
|
120
|
-
const isPercentStart = StringParser.percentStartRegex.test(word);
|
|
121
|
-
const isPercentEnd = StringParser.percentEndRegex.test(word);
|
|
122
|
-
const isPercentBoth = isPercentStart && isPercentEnd;
|
|
123
|
-
const isUnderscore = StringParser.underscoreRegex.test(word);
|
|
124
|
-
const isPercentMiddle = StringParser.percentInMiddle(word);
|
|
125
|
-
let operator = negatedMatch ? '!=' : '=';
|
|
126
|
-
if (isUnderscore || isPercentMiddle || (isPercentBoth && word.length < 3)) {
|
|
127
|
-
// Special handling for string match
|
|
128
|
-
const matchOperator = negatedMatch ? '!~' : '~';
|
|
129
|
-
if (word.length === 0) {
|
|
130
|
-
return false;
|
|
131
|
-
}
|
|
132
|
-
clauses.push({ operator: matchOperator, escaped_values: [word] });
|
|
133
|
-
return true;
|
|
134
|
-
}
|
|
135
|
-
else if (isPercentBoth && word.length > 2) {
|
|
136
|
-
operator = negatedMatch ? 'not_contains' : 'contains';
|
|
137
|
-
word = word.substring(1, word.length - 1);
|
|
138
|
-
}
|
|
139
|
-
else if (isPercentStart) {
|
|
140
|
-
operator = negatedMatch ? 'not_ends' : 'ends';
|
|
141
|
-
word = word.substring(1, word.length);
|
|
142
|
-
}
|
|
143
|
-
else if (isPercentEnd) {
|
|
144
|
-
operator = negatedMatch ? 'not_starts' : 'starts';
|
|
145
|
-
word = word.substring(0, word.length - 1);
|
|
146
|
-
}
|
|
147
|
-
else {
|
|
148
|
-
// = or !=
|
|
149
|
-
}
|
|
150
|
-
word = StringParser.removeBackslashes(word);
|
|
151
|
-
if (word.length === 0) {
|
|
152
|
-
return false;
|
|
153
|
-
}
|
|
154
|
-
const clause = { operator: operator, values: [word] };
|
|
155
|
-
clauses.push(clause);
|
|
156
|
-
return true;
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
exports.StringParser = StringParser;
|
|
160
|
-
StringParser.percentRegex = /(?<!\\)%/;
|
|
161
|
-
StringParser.underscoreRegex = /(?<!\\)_/;
|
|
162
|
-
StringParser.percentStartRegex = /^%/;
|
|
163
|
-
StringParser.percentEndRegex = /(?<!\\)%$/;
|
|
164
|
-
StringParser.negatedStartRegex = /^-(.+)$/;
|
|
165
|
-
StringParser.singleBackslashRegex = /(?<!\\)\\(?!\\)/g;
|
|
166
|
-
//# sourceMappingURL=string_parser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"string_parser.js","sourceRoot":"","sources":["../src/string_parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { StringClause } from './clause_types';
|
|
2
|
-
export declare class StringSerializer {
|
|
3
|
-
private clauses;
|
|
4
|
-
constructor(clauses: StringClause[]);
|
|
5
|
-
serialize(): string;
|
|
6
|
-
private static isNegated;
|
|
7
|
-
private static escapeSpecialCharacters;
|
|
8
|
-
private static escapeWildcardCharacters;
|
|
9
|
-
private static StringConditionWordToString;
|
|
10
|
-
private static StringMatchWordToString;
|
|
11
|
-
private static StringClauseToString;
|
|
12
|
-
private static clauseToString;
|
|
13
|
-
}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the MIT license found in the
|
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.StringSerializer = void 0;
|
|
10
|
-
class StringSerializer {
|
|
11
|
-
constructor(clauses) {
|
|
12
|
-
this.clauses = clauses;
|
|
13
|
-
this.clauses = clauses;
|
|
14
|
-
}
|
|
15
|
-
serialize() {
|
|
16
|
-
const result = StringSerializer.clauseToString(this.clauses);
|
|
17
|
-
return result.trim().replace(/,$/, '');
|
|
18
|
-
}
|
|
19
|
-
static isNegated(operator) {
|
|
20
|
-
return (operator === '!=' ||
|
|
21
|
-
operator === 'not_starts' ||
|
|
22
|
-
operator === 'not_ends' ||
|
|
23
|
-
operator === 'not_contains');
|
|
24
|
-
}
|
|
25
|
-
static escapeSpecialCharacters(input) {
|
|
26
|
-
return input.replace(/[,\\]/g, match => `\\${match}`);
|
|
27
|
-
}
|
|
28
|
-
static escapeWildcardCharacters(input) {
|
|
29
|
-
return input.replace(/[_%]/g, match => `\\${match}`);
|
|
30
|
-
}
|
|
31
|
-
// export type StringConditionOperator =
|
|
32
|
-
// | 'starts' | 'ends' | 'contains' | 'notStarts' | 'notEnds' | 'notContains'
|
|
33
|
-
// | '='| '!=';
|
|
34
|
-
static StringConditionWordToString(operator, value) {
|
|
35
|
-
const negated = StringSerializer.isNegated(operator);
|
|
36
|
-
if (value === 'null' || value === '-null') {
|
|
37
|
-
return (negated ? '-' : '') + '\\' + value;
|
|
38
|
-
}
|
|
39
|
-
value = StringSerializer.escapeSpecialCharacters(value);
|
|
40
|
-
value = StringSerializer.escapeWildcardCharacters(value);
|
|
41
|
-
if (operator === 'starts' || operator === 'not_starts') {
|
|
42
|
-
return (negated ? '-' : '') + value + '%';
|
|
43
|
-
}
|
|
44
|
-
else if (operator === 'ends' || operator === 'not_ends') {
|
|
45
|
-
return (negated ? '-' : '') + '%' + value;
|
|
46
|
-
}
|
|
47
|
-
else if (operator === 'contains' || operator === 'not_contains') {
|
|
48
|
-
return (negated ? '-' : '') + '%' + value + '%';
|
|
49
|
-
}
|
|
50
|
-
return (negated ? '-' : '') + value;
|
|
51
|
-
}
|
|
52
|
-
// export type StringMatchOperator = '~' | '!~';
|
|
53
|
-
static StringMatchWordToString(operator, value) {
|
|
54
|
-
const negated = operator === '!~' ? true : false;
|
|
55
|
-
if (value === 'null' || value === '-null') {
|
|
56
|
-
return (negated ? '-' : '') + '\\' + value;
|
|
57
|
-
}
|
|
58
|
-
value = StringSerializer.escapeSpecialCharacters(value);
|
|
59
|
-
return (negated ? '-' : '') + value;
|
|
60
|
-
}
|
|
61
|
-
static StringClauseToString(operator, clause) {
|
|
62
|
-
if (operator === 'empty') {
|
|
63
|
-
return 'empty';
|
|
64
|
-
}
|
|
65
|
-
else if (operator === 'not_empty') {
|
|
66
|
-
return '-empty';
|
|
67
|
-
}
|
|
68
|
-
else if (operator === 'null') {
|
|
69
|
-
return 'null';
|
|
70
|
-
}
|
|
71
|
-
else if (operator === 'not_null') {
|
|
72
|
-
return '-null';
|
|
73
|
-
}
|
|
74
|
-
let result = '';
|
|
75
|
-
if ('values' in clause && clause.values.length > 0) {
|
|
76
|
-
const condition = clause;
|
|
77
|
-
for (const value of condition.values) {
|
|
78
|
-
const word = StringSerializer.StringConditionWordToString(condition.operator, value);
|
|
79
|
-
if (word) {
|
|
80
|
-
result += word + ', ';
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
else if ('escaped_values' in clause && clause.escaped_values.length > 0) {
|
|
85
|
-
const condition = clause;
|
|
86
|
-
for (const value of condition.escaped_values) {
|
|
87
|
-
const word = StringSerializer.StringMatchWordToString(condition.operator, value);
|
|
88
|
-
if (word) {
|
|
89
|
-
result += word + ', ';
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
return result.trim().replace(/,$/, '');
|
|
94
|
-
}
|
|
95
|
-
static clauseToString(clauses) {
|
|
96
|
-
let result = '';
|
|
97
|
-
for (const clause of clauses) {
|
|
98
|
-
const words = StringSerializer.StringClauseToString(clause.operator, clause);
|
|
99
|
-
if (words) {
|
|
100
|
-
result += words + ', ';
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
return result;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
exports.StringSerializer = StringSerializer;
|
|
107
|
-
//# sourceMappingURL=string_serializer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"string_serializer.js","sourceRoot":"","sources":["../src/string_serializer.ts"],"names":[],"mappings":"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"}
|
package/dist/token_types.d.ts
DELETED
package/dist/token_types.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the MIT license found in the
|
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
//# sourceMappingURL=token_types.js.map
|
package/dist/token_types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"token_types.js","sourceRoot":"","sources":["../src/token_types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
|
package/dist/tokenizer.d.ts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Token } from './token_types';
|
|
2
|
-
export interface SpecialToken {
|
|
3
|
-
type: string;
|
|
4
|
-
value: string | RegExp;
|
|
5
|
-
ignoreCase?: boolean;
|
|
6
|
-
}
|
|
7
|
-
export interface TokenizerParams {
|
|
8
|
-
specialSubstrings: SpecialToken[];
|
|
9
|
-
specialWords: SpecialToken[];
|
|
10
|
-
combineAdjacentWords?: boolean;
|
|
11
|
-
splitOnWhitespace?: boolean;
|
|
12
|
-
trimWordWhitespace?: boolean;
|
|
13
|
-
separators?: RegExp;
|
|
14
|
-
}
|
|
15
|
-
export declare class Tokenizer {
|
|
16
|
-
private input;
|
|
17
|
-
private index;
|
|
18
|
-
private specialSubstrings;
|
|
19
|
-
private specialWords;
|
|
20
|
-
private params;
|
|
21
|
-
constructor(input: string, params: TokenizerParams);
|
|
22
|
-
private tokenize;
|
|
23
|
-
parse(): Token[];
|
|
24
|
-
private hasMoreInput;
|
|
25
|
-
private isWhitespace;
|
|
26
|
-
private consumeWhitespace;
|
|
27
|
-
private maybeConsumeWord;
|
|
28
|
-
private isSpecialSubstring;
|
|
29
|
-
private consumeSpecialSubstring;
|
|
30
|
-
static combineAdjacentWords(tokens: Token[]): Token[];
|
|
31
|
-
static trimWordWhitespace(tokens: Token[]): Token[];
|
|
32
|
-
static isSpecialWord(token: Token, specials: SpecialToken[]): Token | undefined;
|
|
33
|
-
static convertSpecialWords(tokens: Token[], specials: SpecialToken[]): Token[];
|
|
34
|
-
/**
|
|
35
|
-
* Checks if the token types starting at the given index match the types in the input string.
|
|
36
|
-
*
|
|
37
|
-
* @param types - A string of types separated by '|'. Eg 'TYPEA|TYPEB|TYPEC'
|
|
38
|
-
* @param tokens - An array of tokens.
|
|
39
|
-
* @param index - The index into the token array to start checking from.
|
|
40
|
-
* @returns True if the token types match, false otherwise.
|
|
41
|
-
*/
|
|
42
|
-
static matchTypes(types: string, tokens: Token[], index: number): Token[] | undefined;
|
|
43
|
-
/**
|
|
44
|
-
* Merges tokens that match a given type string into a single token with a specified merge type.
|
|
45
|
-
*
|
|
46
|
-
* @param types - A string of types separated by '|'.
|
|
47
|
-
* @param tokens - An array of tokens.
|
|
48
|
-
* @param mergeType - The type to use for the merged token.
|
|
49
|
-
* @returns The updated token list with merged tokens.
|
|
50
|
-
*/
|
|
51
|
-
static mergeTypes(types: string, tokens: Token[], mergeType: string): Token[];
|
|
52
|
-
}
|