@opra/common 0.17.1 → 0.17.2

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.
Files changed (62) hide show
  1. package/browser.js +12220 -0
  2. package/cjs/document/data-type/complex-type.js +1 -1
  3. package/cjs/document/resource/collection.js +13 -7
  4. package/cjs/filter/antlr/OpraFilterLexer.js +209 -238
  5. package/cjs/filter/antlr/OpraFilterListener.js +1 -1
  6. package/cjs/filter/antlr/OpraFilterParser.js +795 -1482
  7. package/cjs/filter/antlr/OpraFilterVisitor.js +1 -1
  8. package/cjs/filter/ast/expressions/logical-expression.js +4 -0
  9. package/cjs/filter/ast/expressions/{parentheses-expression.js → negative-expression.js} +3 -3
  10. package/cjs/filter/ast/expressions/parenthesized-expression.js +14 -0
  11. package/cjs/filter/ast/index.js +2 -1
  12. package/cjs/filter/build.js +1 -1
  13. package/cjs/filter/filter-tree-visitor.js +44 -66
  14. package/cjs/filter/index.js +2 -5
  15. package/cjs/filter/opra-filter.ns.js +8 -0
  16. package/cjs/filter/parse.js +5 -6
  17. package/cjs/http/codecs/filter-codec.js +2 -2
  18. package/cjs/http/http-message.host.js +6 -6
  19. package/cjs/http/http-request-message.js +3 -3
  20. package/cjs/http/http-response-message.js +2 -2
  21. package/cjs/http/multipart/batch-multipart.js +1 -1
  22. package/cjs/i18n/i18n.js +1 -1
  23. package/esm/document/data-type/complex-type.js +1 -1
  24. package/esm/document/resource/collection.js +14 -8
  25. package/esm/filter/antlr/OpraFilterLexer.js +209 -238
  26. package/esm/filter/antlr/OpraFilterListener.js +1 -1
  27. package/esm/filter/antlr/OpraFilterParser.js +775 -1448
  28. package/esm/filter/antlr/OpraFilterVisitor.js +1 -1
  29. package/esm/filter/ast/expressions/logical-expression.js +4 -0
  30. package/esm/filter/ast/expressions/{parentheses-expression.js → negative-expression.js} +1 -1
  31. package/esm/filter/ast/expressions/parenthesized-expression.js +10 -0
  32. package/esm/filter/ast/index.js +2 -1
  33. package/esm/filter/build.js +2 -2
  34. package/esm/filter/filter-tree-visitor.js +46 -68
  35. package/esm/filter/index.js +1 -5
  36. package/esm/filter/opra-filter.ns.js +5 -0
  37. package/esm/filter/parse.js +3 -4
  38. package/esm/http/codecs/filter-codec.js +2 -2
  39. package/esm/http/http-message.host.js +1 -1
  40. package/esm/http/http-request-message.js +1 -1
  41. package/esm/http/http-response-message.js +1 -1
  42. package/esm/http/multipart/batch-multipart.js +1 -1
  43. package/esm/i18n/i18n.js +1 -1
  44. package/package.json +29 -17
  45. package/types/document/resource/collection.d.ts +2 -2
  46. package/types/filter/antlr/OpraFilterLexer.d.ts +9 -22
  47. package/types/filter/antlr/OpraFilterListener.d.ts +89 -217
  48. package/types/filter/antlr/OpraFilterParser.d.ts +91 -206
  49. package/types/filter/antlr/OpraFilterVisitor.d.ts +49 -124
  50. package/types/filter/ast/expressions/{parentheses-expression.d.ts → negative-expression.d.ts} +1 -1
  51. package/types/filter/ast/expressions/parenthesized-expression.d.ts +6 -0
  52. package/types/filter/ast/index.d.ts +2 -1
  53. package/types/filter/build.d.ts +2 -2
  54. package/types/filter/filter-tree-visitor.d.ts +10 -11
  55. package/types/filter/index.d.ts +1 -5
  56. package/types/filter/opra-filter.ns.d.ts +5 -0
  57. package/types/filter/parse.d.ts +1 -1
  58. package/types/http/http-message.host.d.ts +1 -1
  59. package/types/i18n/i18n.d.ts +2 -2
  60. package/types/i18n/translate.d.ts +1 -1
  61. package/types/schema/data-type/complex-type.interface.d.ts +1 -1
  62. package/types/schema/resource/endpoint.interface.d.ts +2 -2
@@ -1,4 +1,4 @@
1
- // Generated from ./src/filter/antlr/OpraFilter.g4 by ANTLR 4.11.2-SNAPSHOT
1
+ // Generated from ./src/filter/antlr/OpraFilter.g4 by ANTLR 4.12.0
2
2
  import { ParseTreeVisitor } from '@browsery/antlr4';
3
3
  /**
4
4
  * This interface defines a complete generic visitor for a parse tree produced
@@ -3,6 +3,10 @@ export class LogicalExpression extends Expression {
3
3
  constructor(o) {
4
4
  super();
5
5
  Object.assign(this, o);
6
+ if (this.op === '&&')
7
+ this.op = 'and';
8
+ if (this.op === '||')
9
+ this.op = 'or';
6
10
  }
7
11
  toString() {
8
12
  return this.items
@@ -1,5 +1,5 @@
1
1
  import { Expression } from '../abstract/expression.js';
2
- export class ParenthesesExpression extends Expression {
2
+ export class NegativeExpression extends Expression {
3
3
  constructor(expression) {
4
4
  super();
5
5
  this.expression = expression;
@@ -0,0 +1,10 @@
1
+ import { Expression } from '../abstract/expression.js';
2
+ export class ParenthesizedExpression extends Expression {
3
+ constructor(expression) {
4
+ super();
5
+ this.expression = expression;
6
+ }
7
+ toString() {
8
+ return `(${this.expression})`;
9
+ }
10
+ }
@@ -6,7 +6,8 @@ export * from './expressions/arithmetic-expression.js';
6
6
  export * from './expressions/array-expression.js';
7
7
  export * from './expressions/comparison-expression.js';
8
8
  export * from './expressions/logical-expression.js';
9
- export * from './expressions/parentheses-expression.js';
9
+ export * from './expressions/parenthesized-expression.js';
10
+ export * from './expressions/negative-expression.js';
10
11
  export * from './terms/boolean-literal.js';
11
12
  export * from './terms/date-literal.js';
12
13
  export * from './terms/null-literal.js';
@@ -1,4 +1,4 @@
1
- import { ArithmeticExpression, ArrayExpression, BooleanLiteral, ComparisonExpression, DateLiteral, Expression, LogicalExpression, NullLiteral, NumberLiteral, ParenthesesExpression, QualifiedIdentifier, StringLiteral, TimeLiteral } from './ast/index.js';
1
+ import { ArithmeticExpression, ArrayExpression, BooleanLiteral, ComparisonExpression, DateLiteral, Expression, LogicalExpression, NullLiteral, NumberLiteral, ParenthesizedExpression, QualifiedIdentifier, StringLiteral, TimeLiteral } from './ast/index.js';
2
2
  export function $or(...items) {
3
3
  return new LogicalExpression({ op: 'or', items });
4
4
  }
@@ -57,7 +57,7 @@ export function $notILike(left, right) {
57
57
  return comparisonExpression('!ilike', left, right);
58
58
  }
59
59
  export function $paren(expression) {
60
- return new ParenthesesExpression(expression);
60
+ return new ParenthesizedExpression(expression);
61
61
  }
62
62
  export function $arithmetic(n) {
63
63
  const exp = new ArithmeticExpression();
@@ -1,8 +1,7 @@
1
1
  import antlr4 from '@browsery/antlr4';
2
- import { ArithmeticExpressionContext, LogicalExpressionContext, } from './antlr/OpraFilterParser.js';
3
- import { ArithmeticExpression, ArrayExpression, BooleanLiteral, ComparisonExpression, DateLiteral, LogicalExpression, NullLiteral, NumberLiteral, ParenthesesExpression, QualifiedIdentifier, StringLiteral, TimeLiteral } from './ast/index.js';
2
+ import { LogicalExpressionContext, } from './antlr/OpraFilterParser.js';
3
+ import { ArrayExpression, BooleanLiteral, ComparisonExpression, DateLiteral, LogicalExpression, NegativeExpression, NullLiteral, NumberLiteral, ParenthesizedExpression, QualifiedIdentifier, StringLiteral, TimeLiteral } from './ast/index.js';
4
4
  import { ExternalConstant } from './ast/terms/external-constant.js';
5
- import { SyntaxError } from './errors.js';
6
5
  import { unquoteFilterString } from './utils.js';
7
6
  // Fix: antlr4 d.ts files are invalid
8
7
  const ParseTreeVisitor = antlr4.tree.ParseTreeVisitor;
@@ -15,7 +14,7 @@ export class FilterTreeVisitor extends ParseTreeVisitor {
15
14
  const result = super.visitChildren(node);
16
15
  if (Array.isArray(result) && result.length < 2)
17
16
  return result[0];
18
- return result;
17
+ return result ?? node.getText();
19
18
  }
20
19
  defaultResult() {
21
20
  return undefined;
@@ -23,8 +22,47 @@ export class FilterTreeVisitor extends ParseTreeVisitor {
23
22
  visitRoot(ctx) {
24
23
  return this.visit(ctx.expression());
25
24
  }
26
- visitIdentifier(ctx) {
27
- return ctx.getText();
25
+ visitParenthesizedExpression(ctx) {
26
+ const expression = this.visit(ctx.parenthesizedItem());
27
+ return new ParenthesizedExpression(expression);
28
+ }
29
+ visitParenthesizedItem(ctx) {
30
+ return this.visit(ctx.expression());
31
+ }
32
+ visitNegativeExpression(ctx) {
33
+ const expression = this.visit(ctx.expression());
34
+ return new NegativeExpression(expression);
35
+ }
36
+ visitComparisonExpression(ctx) {
37
+ return new ComparisonExpression({
38
+ op: ctx.comparisonOperator().getText(),
39
+ left: this.visit(ctx.comparisonLeft()),
40
+ right: this.visit(ctx.comparisonRight())
41
+ });
42
+ }
43
+ visitLogicalExpression(ctx) {
44
+ const items = [];
45
+ const wrapChildren = (arr, op) => {
46
+ for (const c of arr) {
47
+ if (c instanceof LogicalExpressionContext && c.logicalOperator().getText() === op) {
48
+ wrapChildren(c.expression_list(), c.logicalOperator().getText());
49
+ continue;
50
+ }
51
+ const o = this.visit(c);
52
+ items.push(o);
53
+ }
54
+ };
55
+ wrapChildren(ctx.expression_list(), ctx.logicalOperator().getText());
56
+ return new LogicalExpression({
57
+ op: ctx.logicalOperator().getText(),
58
+ items
59
+ });
60
+ }
61
+ visitQualifiedIdentifier(ctx) {
62
+ return new QualifiedIdentifier(ctx.getText());
63
+ }
64
+ visitExternalConstant(ctx) {
65
+ return new ExternalConstant(ctx.identifier().getText());
28
66
  }
29
67
  visitNullLiteral() {
30
68
  return new NullLiteral();
@@ -50,67 +88,7 @@ export class FilterTreeVisitor extends ParseTreeVisitor {
50
88
  visitTimeLiteral(ctx) {
51
89
  return new TimeLiteral(unquoteFilterString(ctx.getText()));
52
90
  }
53
- visitQualifiedIdentifierTerm(ctx) {
54
- return new QualifiedIdentifier(ctx.getText());
55
- }
56
- visitPolarityExpression(ctx) {
57
- const x = this.visit(ctx.expression());
58
- if (x.kind === 'NumberLiteral') {
59
- if (ctx.polarOp().getText() === '-')
60
- x.value *= -1;
61
- return x;
62
- }
63
- throw new SyntaxError('Unexpected token "' + ctx.getText() + '"');
64
- }
65
- visitExternalConstantTerm(ctx) {
66
- return new ExternalConstant(ctx.externalConstant().getText().substring(1));
67
- }
68
- visitParenthesizedExpression(ctx) {
69
- const expression = this.visit(ctx.expression());
70
- return new ParenthesesExpression(expression);
71
- }
72
- visitArrayExpression(ctx) {
73
- return new ArrayExpression(ctx.expression_list().map(child => this.visit(child)));
74
- }
75
- visitComparisonExpression(ctx) {
76
- return new ComparisonExpression({
77
- op: ctx.compOp().getText(),
78
- left: this.visit(ctx.expression(0)),
79
- right: this.visit(ctx.expression(1))
80
- });
81
- }
82
- visitLogicalExpression(ctx) {
83
- const items = [];
84
- const wrapChildren = (arr, op) => {
85
- for (const c of arr) {
86
- if (c instanceof LogicalExpressionContext && c.logOp().getText() === op) {
87
- wrapChildren(c.expression_list(), c.logOp().getText());
88
- continue;
89
- }
90
- const o = this.visit(c);
91
- items.push(o);
92
- }
93
- };
94
- wrapChildren(ctx.expression_list(), ctx.logOp().getText());
95
- return new LogicalExpression({
96
- op: ctx.logOp().getText(),
97
- items
98
- });
99
- }
100
- visitArithmeticExpression(ctx) {
101
- const exp = new ArithmeticExpression();
102
- const wrapChildren = (children, op) => {
103
- for (let i = 0, len = children.length; i < len; i++) {
104
- const child = children[i];
105
- if (child instanceof ArithmeticExpressionContext) {
106
- wrapChildren(child.expression_list(), child.arthOp().getText());
107
- continue;
108
- }
109
- const value = this.visit(child);
110
- exp.append(op || '+', value);
111
- }
112
- };
113
- wrapChildren(ctx.expression_list(), ctx.arthOp().getText());
114
- return exp;
91
+ visitArrayValue(ctx) {
92
+ return new ArrayExpression(ctx.value_list().map(child => this.visit(child)));
115
93
  }
116
94
  }
@@ -1,5 +1 @@
1
- export * from './ast/index.js';
2
- export * from './parse.js';
3
- export * from './build.js';
4
- export * from './opra-error-listener.js';
5
- export * from './filter-tree-visitor.js';
1
+ export * as OpraFilter from './opra-filter.ns.js';
@@ -0,0 +1,5 @@
1
+ export * from './ast/index.js';
2
+ export * from './parse.js';
3
+ export * from './build.js';
4
+ export * from './opra-error-listener.js';
5
+ export * from './filter-tree-visitor.js';
@@ -4,7 +4,7 @@ import OpraFilterParser from './antlr/OpraFilterParser.js';
4
4
  import { SyntaxError } from './errors.js';
5
5
  import { FilterTreeVisitor } from './filter-tree-visitor.js';
6
6
  import { OpraErrorListener } from './opra-error-listener.js';
7
- export function parseFilter(text, visitor) {
7
+ export function parse(text, visitor) {
8
8
  const chars = new CharStream(text);
9
9
  const lexer = new OpraFilterLexer(chars);
10
10
  const tokenStream = new CommonTokenStream(lexer);
@@ -17,8 +17,6 @@ export function parseFilter(text, visitor) {
17
17
  parser.removeErrorListeners();
18
18
  parser.addErrorListener(errorListener);
19
19
  const tree = parser.root();
20
- visitor = visitor || new FilterTreeVisitor();
21
- const result = visitor.visit(tree);
22
20
  if (errors.length) {
23
21
  const errMsgs = [];
24
22
  for (const err of errors) {
@@ -31,5 +29,6 @@ export function parseFilter(text, visitor) {
31
29
  e.errors = errors;
32
30
  throw e;
33
31
  }
34
- return result;
32
+ visitor = visitor || new FilterTreeVisitor();
33
+ return visitor.visit(tree);
35
34
  }
@@ -1,10 +1,10 @@
1
1
  import { Expression } from '../../filter/ast/index.js';
2
- import { parseFilter } from '../../filter/parse.js';
2
+ import { OpraFilter } from '../../filter/index.js';
3
3
  export class FilterCodec {
4
4
  decode(value) {
5
5
  if (value instanceof Expression)
6
6
  return value;
7
- return parseFilter(value);
7
+ return OpraFilter.parse(value);
8
8
  }
9
9
  encode(value) {
10
10
  // @ts-ignore
@@ -1,5 +1,5 @@
1
- import { HTTPParser } from 'http-parser-js';
2
1
  import stream from 'stream';
2
+ import { HTTPParser } from '@browsery/http-parser';
3
3
  import { HttpHeaders } from './http-headers.js';
4
4
  const kHeaders = Symbol('kHeaders');
5
5
  const kHeadersProxy = Symbol('kHeadersProxy');
@@ -1,6 +1,6 @@
1
1
  import accepts from 'accepts';
2
- import { HTTPParser } from 'http-parser-js';
3
2
  import typeIs from 'type-is';
3
+ import { HTTPParser } from '@browsery/http-parser';
4
4
  import { HttpMessageHost } from './http-message.host.js';
5
5
  import { HttpParams } from './http-params.js';
6
6
  const HTTP_VERSION_PATTERN = /^(\d)\.(\d)$/;
@@ -2,9 +2,9 @@ import contentDisposition from 'content-disposition';
2
2
  import cookie from 'cookie';
3
3
  import cookieSignature from 'cookie-signature';
4
4
  import encodeUrl from 'encodeurl';
5
- import { HTTPParser } from 'http-parser-js';
6
5
  import mime from 'mime-types';
7
6
  import path from 'path';
7
+ import { HTTPParser } from '@browsery/http-parser';
8
8
  import { HttpStatusMessages } from './enums/http-status-messages.js';
9
9
  import { HttpMessageHost } from './http-message.host.js';
10
10
  /**
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- // import Highland from 'highland';
2
+ // import Highland from '@browsery/highland';
3
3
  // import { Readable } from 'stream';
4
4
  // import { uid } from 'uid';
5
5
  // import { isReadable } from '../../helpers/index.js';
package/esm/i18n/i18n.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { splitString, tokenize } from 'fast-tokenizer';
2
2
  import fs from 'fs';
3
- import i18next from 'i18next';
4
3
  import path from 'path';
4
+ import i18next from '@browsery/i18next';
5
5
  import { isUrl } from '../helpers/index.js';
6
6
  import { unescapeString } from './string-utils.js';
7
7
  export const BaseI18n = Object.getPrototypeOf(i18next).constructor;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opra/common",
3
- "version": "0.17.1",
3
+ "version": "0.17.2",
4
4
  "description": "Opra internationalization package",
5
5
  "author": "Panates",
6
6
  "license": "MIT",
@@ -9,12 +9,26 @@
9
9
  "url": "https://github.com/panates/opra.git",
10
10
  "directory": "packages/common"
11
11
  },
12
+ "type": "module",
13
+ "module": "./esm/index.mjs",
14
+ "main": "./cjs/index.cjs",
15
+ "browser": "./browser.js",
16
+ "types": "./types/index.d.ts",
17
+ "typings": "./types/index.d.ts",
18
+ "exports": {
19
+ ".": {
20
+ "require": "./cjs/index.js",
21
+ "default": "./esm/index.js",
22
+ "browser": "./browser.js"
23
+ }
24
+ },
12
25
  "scripts": {
13
26
  "compile": "tsc",
14
27
  "prebuild": "npm run check && npm run lint && npm run clean",
15
- "build": "npm run build:cjs && npm run build:esm",
28
+ "build": "npm run build:cjs && npm run build:esm && npm run build:browser",
16
29
  "build:cjs": "tsc -b tsconfig-build-cjs.json",
17
30
  "build:esm": "tsc -b tsconfig-build-esm.json",
31
+ "build:browser": "node esbuild.mjs",
18
32
  "postbuild": "cp package.json ../../LICENSE ../../build/common && cp ../../package.cjs.json ../../build/common/cjs/package.json",
19
33
  "lint": "eslint . --max-warnings=0",
20
34
  "check": "madge --circular src/**",
@@ -24,10 +38,13 @@
24
38
  "clean:src": "ts-cleanup -s src --all && ts-cleanup -s test --all",
25
39
  "clean:dist": "rimraf ../../build/common",
26
40
  "clean:cover": "rimraf ../../coverage/common",
27
- "antlr4": "java -jar ./tools/antlr4-4.11.2-SNAPSHOT-complete.jar -Dlanguage=TypeScript ./src/filter/antlr/OpraFilter.g4 -visitor"
41
+ "antlr4": "java -jar ./tools/antlr4-4.12.1-SNAPSHOT-complete.jar -Dlanguage=TypeScript ./src/filter/antlr/OpraFilter.g4 -visitor"
28
42
  },
29
43
  "dependencies": {
30
- "@browsery/antlr4": "^0.2.0",
44
+ "@browsery/antlr4": "^0.5.0",
45
+ "@browsery/highland": "^0.3.0",
46
+ "@browsery/http-parser": "^0.3.2",
47
+ "@browsery/i18next": "^0.4.0",
31
48
  "accepts": "^1.3.8",
32
49
  "content-disposition": "^0.5.4",
33
50
  "cookie": "^0.5.0",
@@ -35,9 +52,6 @@
35
52
  "dayjs": "^1.11.7",
36
53
  "encodeurl": "^1.0.2",
37
54
  "fast-tokenizer": "^1.2.2",
38
- "highland": "^2.13.5",
39
- "http-parser-js": "^0.5.8",
40
- "i18next": "^22.4.15",
41
55
  "lodash.omit": "^4.5.0",
42
56
  "mime-types": "^2.1.35",
43
57
  "putil-isplainobject": "^1.1.5",
@@ -56,15 +70,12 @@
56
70
  "@types/encodeurl": "^1.0.0",
57
71
  "@types/mime-types": "^2.1.1",
58
72
  "@types/type-is": "^1.6.3",
59
- "ts-gems": "^2.3.0"
60
- },
61
- "type": "module",
62
- "types": "types/index.d.ts",
63
- "exports": {
64
- ".": {
65
- "require": "./cjs/index.js",
66
- "default": "./esm/index.js"
67
- }
73
+ "@browsery/fs": "^0.3.0",
74
+ "@browsery/stream": "^0.3.0",
75
+ "@browsery/util": "^0.3.0",
76
+ "crypto-browserify": "^3.12.0",
77
+ "path-browserify": "^1.0.1",
78
+ "ts-gems": "^2.4.0"
68
79
  },
69
80
  "engines": {
70
81
  "node": ">=16.0",
@@ -77,7 +88,8 @@
77
88
  "umd/",
78
89
  "types/",
79
90
  "LICENSE",
80
- "README.md"
91
+ "README.md",
92
+ "browser.js"
81
93
  ],
82
94
  "keywords": [
83
95
  "opra",
@@ -1,5 +1,5 @@
1
1
  import { StrictOmit } from 'ts-gems';
2
- import { Expression } from '../../filter/index.js';
2
+ import { OpraFilter } from '../../filter/index.js';
3
3
  import { OpraSchema } from '../../schema/index.js';
4
4
  import type { TypeThunkAsync } from '../../types.js';
5
5
  import type { ApiDocument } from '../api-document.js';
@@ -48,7 +48,7 @@ export interface Collection extends StrictOmit<Resource, 'exportSchema' | '_cons
48
48
  normalizeFieldPath(fields: string[]): string[];
49
49
  normalizeFieldPath(fields: string | string[]): string | string[];
50
50
  normalizeSortFields(fields: string | string[]): string[];
51
- normalizeFilter(ast: Expression): Expression;
51
+ normalizeFilter(ast: string | OpraFilter.Expression): OpraFilter.Expression | undefined;
52
52
  _construct(init: Collection.InitArguments): void;
53
53
  }
54
54
  export interface CollectionConstructor {
@@ -34,28 +34,15 @@ export default class OpraFilterLexer extends Lexer {
34
34
  static readonly T__31 = 32;
35
35
  static readonly T__32 = 33;
36
36
  static readonly T__33 = 34;
37
- static readonly T__34 = 35;
38
- static readonly T__35 = 36;
39
- static readonly T__36 = 37;
40
- static readonly T__37 = 38;
41
- static readonly T__38 = 39;
42
- static readonly T__39 = 40;
43
- static readonly T__40 = 41;
44
- static readonly T__41 = 42;
45
- static readonly T__42 = 43;
46
- static readonly T__43 = 44;
47
- static readonly T__44 = 45;
48
- static readonly T__45 = 46;
49
- static readonly DATE = 47;
50
- static readonly DATETIME = 48;
51
- static readonly TIME = 49;
52
- static readonly IDENTIFIER = 50;
53
- static readonly STRING = 51;
54
- static readonly NUMBER = 52;
55
- static readonly INTEGER = 53;
56
- static readonly WHITESPACE = 54;
57
- static readonly COMMENT = 55;
58
- static readonly LINE_COMMENT = 56;
37
+ static readonly IDENTIFIER = 35;
38
+ static readonly POLAR_OP = 36;
39
+ static readonly DATE = 37;
40
+ static readonly DATETIME = 38;
41
+ static readonly TIME = 39;
42
+ static readonly NUMBER = 40;
43
+ static readonly INTEGER = 41;
44
+ static readonly STRING = 42;
45
+ static readonly WHITESPACE = 43;
59
46
  static readonly EOF: number;
60
47
  static readonly channelNames: string[];
61
48
  static readonly literalNames: (string | null)[];