@apexdevtools/apex-parser 4.2.0 → 4.3.1

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.
@@ -13,27 +13,36 @@ Object.defineProperty(exports, "__esModule", { value: true });
13
13
  3. The name of the author may not be used to endorse or promote products
14
14
  derived from this software without specific prior written permission.
15
15
  */
16
- const ApexLexer_1 = require("../ApexLexer");
17
- const CaseInsensitiveInputStream_1 = require("../CaseInsensitiveInputStream");
18
16
  const antlr4ts_1 = require("antlr4ts");
19
- test('Lexer generates tokens', () => {
20
- const lexer = new ApexLexer_1.ApexLexer(antlr4ts_1.CharStreams.fromString("public class Hello {}"));
17
+ const SyntaxErrorCounter_1 = require("./SyntaxErrorCounter");
18
+ test("Lexer generates tokens", () => {
19
+ const [lexer, errorCounter] = (0, SyntaxErrorCounter_1.createLexer)("public class Hello {}", false);
21
20
  const tokens = new antlr4ts_1.CommonTokenStream(lexer);
22
21
  expect(tokens.getNumberOfOnChannelTokens()).toBe(6);
22
+ expect(errorCounter.getNumErrors()).toEqual(0);
23
23
  });
24
- test('Case insensitivity', () => {
25
- const lexer = new ApexLexer_1.ApexLexer(new CaseInsensitiveInputStream_1.CaseInsensitiveInputStream(antlr4ts_1.CharStreams.fromString("public")));
24
+ test("Case insensitivity", () => {
25
+ const [lexer, errorCounter] = (0, SyntaxErrorCounter_1.createLexer)("public");
26
26
  const tokens = new antlr4ts_1.CommonTokenStream(lexer);
27
27
  expect(tokens.getNumberOfOnChannelTokens()).toBe(2);
28
+ expect(errorCounter.getNumErrors()).toEqual(0);
28
29
  });
29
- test('Case insensitivity (upper case)', () => {
30
- const lexer = new ApexLexer_1.ApexLexer(new CaseInsensitiveInputStream_1.CaseInsensitiveInputStream(antlr4ts_1.CharStreams.fromString("PUBLIC")));
30
+ test("Case insensitivity (upper case)", () => {
31
+ const [lexer, errorCounter] = (0, SyntaxErrorCounter_1.createLexer)("PUBLIC");
31
32
  const tokens = new antlr4ts_1.CommonTokenStream(lexer);
32
33
  expect(tokens.getNumberOfOnChannelTokens()).toBe(2);
34
+ expect(errorCounter.getNumErrors()).toEqual(0);
33
35
  });
34
- test('Case insensitivity (mixed case)', () => {
35
- const lexer = new ApexLexer_1.ApexLexer(new CaseInsensitiveInputStream_1.CaseInsensitiveInputStream(antlr4ts_1.CharStreams.fromString("PuBliC")));
36
+ test("Case insensitivity (mixed case)", () => {
37
+ const [lexer, errorCounter] = (0, SyntaxErrorCounter_1.createLexer)("PuBliC");
36
38
  const tokens = new antlr4ts_1.CommonTokenStream(lexer);
37
39
  expect(tokens.getNumberOfOnChannelTokens()).toBe(2);
40
+ expect(errorCounter.getNumErrors()).toEqual(0);
41
+ });
42
+ test("Lexer unicode escapes", () => {
43
+ const [lexer, errorCounter] = (0, SyntaxErrorCounter_1.createLexer)("'Fran\\u00E7ois'", false);
44
+ const tokens = new antlr4ts_1.CommonTokenStream(lexer);
45
+ expect(tokens.getNumberOfOnChannelTokens()).toBe(2);
46
+ expect(errorCounter.getNumErrors()).toEqual(0);
38
47
  });
39
48
  //# sourceMappingURL=ApexLexerTest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApexLexerTest.js","sourceRoot":"","sources":["../../src/__tests__/ApexLexerTest.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;GAYG;AACH,4CAAyC;AACzC,8EAA0E;AAC1E,uCAA0D;AAE1D,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;IAChC,MAAM,KAAK,GAAG,IAAI,qBAAS,CAAC,sBAAW,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAI,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACvD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAC5B,MAAM,KAAK,GAAG,IAAI,qBAAS,CAAC,IAAI,uDAA0B,CAAC,sBAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9F,MAAM,MAAM,GAAI,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACvD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IACzC,MAAM,KAAK,GAAG,IAAI,qBAAS,CAAC,IAAI,uDAA0B,CAAC,sBAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9F,MAAM,MAAM,GAAI,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACvD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IACzC,MAAM,KAAK,GAAG,IAAI,qBAAS,CAAC,IAAI,uDAA0B,CAAC,sBAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9F,MAAM,MAAM,GAAI,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACvD,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"ApexLexerTest.js","sourceRoot":"","sources":["../../src/__tests__/ApexLexerTest.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;GAYG;AACH,uCAA6C;AAC7C,6DAAmD;AAEnD,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;IAChC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,IAAA,gCAAW,EAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAC5B,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,IAAA,gCAAW,EAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IACzC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,IAAA,gCAAW,EAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IACzC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,IAAA,gCAAW,EAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;IAC/B,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,GAAG,IAAA,gCAAW,EAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC"}
@@ -90,4 +90,26 @@ test("Grouping function", () => {
90
90
  expect(context).toBeInstanceOf(ApexParser_1.QueryContext);
91
91
  expect(errorCounter.getNumErrors()).toEqual(0);
92
92
  });
93
+ test("Convert Currency function", () => {
94
+ const [parser, errorCounter] = (0, SyntaxErrorCounter_1.createParser)('[ SELECT convertCurrency(Amount) FROM Opportunity ]');
95
+ const context = parser.soqlLiteral();
96
+ expect(context).toBeInstanceOf(ApexParser_1.SoqlLiteralContext);
97
+ expect(errorCounter.getNumErrors()).toEqual(0);
98
+ });
99
+ test("Convert Currency with format", () => {
100
+ const [parser, errorCounter] = (0, SyntaxErrorCounter_1.createParser)(`[
101
+ SELECT Amount, FORMAT(amount) Amt, convertCurrency(amount) convertedAmount,
102
+ FORMAT(convertCurrency(amount)) convertedCurrency
103
+ FROM Opportunity where id = '006R00000024gDtIAI'
104
+ ]`);
105
+ const context = parser.soqlLiteral();
106
+ expect(context).toBeInstanceOf(ApexParser_1.SoqlLiteralContext);
107
+ expect(errorCounter.getNumErrors()).toEqual(0);
108
+ });
109
+ test("Format function with aggregate", () => {
110
+ const [parser, errorCounter] = (0, SyntaxErrorCounter_1.createParser)('[ SELECT FORMAT(MIN(closedate)) Amt FROM opportunity ]');
111
+ const context = parser.soqlLiteral();
112
+ expect(context).toBeInstanceOf(ApexParser_1.SoqlLiteralContext);
113
+ expect(errorCounter.getNumErrors()).toEqual(0);
114
+ });
93
115
  //# sourceMappingURL=SOQLParserTest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SOQLParserTest.js","sourceRoot":"","sources":["../../src/__tests__/SOQLParserTest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SOQLParserTest.js","sourceRoot":"","sources":["../../src/__tests__/SOQLParserTest.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;GAYG;AACH,8CAAmF;AACnF,6DAAoD;AAEpD,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE;IACtB,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EAAC,wBAAwB,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC3C,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,iCAAiC,CAClC,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC3B,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,qEAAqE,CACtE,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAClD,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EAAC,uBAAuB,CAAC,CAAC;IAErE,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IAEnC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,6BAAgB,CAAC,CAAC;IACjD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC3B,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,iGAAiG,CAClG,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACtC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,qDAAqD,CACtD,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;IAClC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,qDAAqD,CACtD,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAChC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,yJAAyJ,CAC1J,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,4FAA4F,CAC7F,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;IACpB,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACzC,gIAAgI,CACjI,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC7B,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EAC1C;;;;;;;;;8CAS2C,CAC3C,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,yBAAY,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACvC,qDAAqD,CACxD,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,+BAAkB,CAAC,CAAC;IACnD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACvC;;;;UAIE,CACL,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,+BAAkB,CAAC,CAAC;IACnD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;IACxC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,IAAA,iCAAY,EACvC,wDAAwD,CAC3D,CAAA;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,+BAAkB,CAAC,CAAC;IACnD,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC"}
@@ -63,4 +63,39 @@ test('testToLabel', () => {
63
63
  expect(context).toBeInstanceOf(ApexParser_1.SoslLiteralContext);
64
64
  expect(errorCounter.getNumErrors()).toEqual(0);
65
65
  });
66
+ test('testToLabelWithAlias', () => {
67
+ const [parser, errorCounter] = (0, SyntaxErrorCounter_1.createParser)("[FIND :searchTerm IN ALL FIELDS RETURNING Account(Id, toLabel(Name) AliasName) LIMIT 10]");
68
+ const context = parser.soslLiteral();
69
+ expect(context).toBeInstanceOf(ApexParser_1.SoslLiteralContext);
70
+ expect(errorCounter.getNumErrors()).toEqual(0);
71
+ });
72
+ test('testConvertCurrency', () => {
73
+ const [parser, errorCounter] = (0, SyntaxErrorCounter_1.createParser)(`[
74
+ FIND 'test' RETURNING Opportunity(
75
+ Name,
76
+ convertCurrency(Amount),
77
+ convertCurrency(Amount) AliasCurrency
78
+ )
79
+ ]`);
80
+ const context = parser.soslLiteral();
81
+ expect(context).toBeInstanceOf(ApexParser_1.SoslLiteralContext);
82
+ expect(errorCounter.getNumErrors()).toEqual(0);
83
+ });
84
+ test('testConvertCurrencyWithFormat', () => {
85
+ const [parser, errorCounter] = (0, SyntaxErrorCounter_1.createParser)(`[
86
+ FIND 'Acme' RETURNING Account(
87
+ AnnualRevenue,
88
+ FORMAT(convertCurrency(AnnualRevenue)) convertedCurrency
89
+ )
90
+ ]`);
91
+ const context = parser.soslLiteral();
92
+ expect(context).toBeInstanceOf(ApexParser_1.SoslLiteralContext);
93
+ expect(errorCounter.getNumErrors()).toEqual(0);
94
+ });
95
+ test('testFormatWithAggregate', () => {
96
+ const [parser, errorCounter] = (0, SyntaxErrorCounter_1.createParser)("[ FIND 'Acme' RETURNING Account(AnnualRevenue, FORMAT(MIN(CloseDate))) ]");
97
+ const context = parser.soslLiteral();
98
+ expect(context).toBeInstanceOf(ApexParser_1.SoslLiteralContext);
99
+ expect(errorCounter.getNumErrors()).toEqual(0);
100
+ });
66
101
  //# sourceMappingURL=SOSLParserTest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SOSLParserTest.js","sourceRoot":"","sources":["../../src/__tests__/SOSLParserTest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SOSLParserTest.js","sourceRoot":"","sources":["../../src/__tests__/SOSLParserTest.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import { ANTLRErrorListener, RecognitionException, Recognizer, Token } from "antlr4ts";
2
+ import { ApexLexer } from "../ApexLexer";
2
3
  import { ApexParser } from "../ApexParser";
3
- export declare class SyntaxErrorCounter implements ANTLRErrorListener<Token> {
4
+ export declare class SyntaxErrorCounter<T = Token> implements ANTLRErrorListener<T> {
4
5
  numErrors: number;
5
- syntaxError(recognizer: Recognizer<Token, any>, offendingSymbol: Token, line: number, charPositionInLine: number, msg: string, e: RecognitionException | undefined): any;
6
+ syntaxError(recognizer: Recognizer<T, any>, offendingSymbol: T, line: number, charPositionInLine: number, msg: string, e: RecognitionException | undefined): any;
6
7
  getNumErrors(): number;
7
8
  }
9
+ export declare function createLexer(input: string, caseInsensitive?: boolean): [ApexLexer, SyntaxErrorCounter<number>];
8
10
  export declare function createParser(input: string): [ApexParser, SyntaxErrorCounter];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createParser = exports.SyntaxErrorCounter = void 0;
3
+ exports.createParser = exports.createLexer = exports.SyntaxErrorCounter = void 0;
4
4
  /*
5
5
  Copyright (c) 2021 Kevin Jones, All rights reserved.
6
6
  Redistribution and use in source and binary forms, with or without
@@ -30,6 +30,15 @@ class SyntaxErrorCounter {
30
30
  }
31
31
  }
32
32
  exports.SyntaxErrorCounter = SyntaxErrorCounter;
33
+ function createLexer(input, caseInsensitive = true) {
34
+ const stream = antlr4ts_1.CharStreams.fromString(input);
35
+ const lexer = new ApexLexer_1.ApexLexer(caseInsensitive ? new CaseInsensitiveInputStream_1.CaseInsensitiveInputStream(stream) : stream);
36
+ lexer.removeErrorListeners();
37
+ const errorCounter = new SyntaxErrorCounter();
38
+ lexer.addErrorListener(errorCounter);
39
+ return [lexer, errorCounter];
40
+ }
41
+ exports.createLexer = createLexer;
33
42
  function createParser(input) {
34
43
  const lexer = new ApexLexer_1.ApexLexer(new CaseInsensitiveInputStream_1.CaseInsensitiveInputStream(antlr4ts_1.CharStreams.fromString(input)));
35
44
  const tokens = new antlr4ts_1.CommonTokenStream(lexer);
@@ -1 +1 @@
1
- {"version":3,"file":"SyntaxErrorCounter.js","sourceRoot":"","sources":["../../src/__tests__/SyntaxErrorCounter.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;GAYG;AACH,uCAAuH;AACvH,4CAAyC;AACzC,8CAA2C;AAC3C,8EAA2E;AAE3E,MAAa,kBAAkB;IAA/B;QACI,cAAS,GAAG,CAAC,CAAA;IAWjB,CAAC;IATG,WAAW,CAAC,UAAkC,EAC1C,eAAsB,EAAE,IAAY,EAAE,kBAA0B,EAAE,GAAW,EAC7E,CAAmC;QACnC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;CACJ;AAZD,gDAYC;AAED,SAAgB,YAAY,CAAC,KAAa;IACtC,MAAM,KAAK,GAAG,IAAI,qBAAS,CAAC,IAAI,uDAA0B,CAAC,sBAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC1F,MAAM,MAAM,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,uBAAU,CAAC,MAAM,CAAC,CAAA;IAErC,MAAM,CAAC,oBAAoB,EAAE,CAAA;IAC7B,MAAM,YAAY,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC9C,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAEtC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAClC,CAAC;AAVD,oCAUC"}
1
+ {"version":3,"file":"SyntaxErrorCounter.js","sourceRoot":"","sources":["../../src/__tests__/SyntaxErrorCounter.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;GAYG;AACH,uCAOkB;AAClB,4CAAyC;AACzC,8CAA2C;AAC3C,8EAA2E;AAE3E,MAAa,kBAAkB;IAA/B;QACI,cAAS,GAAG,CAAC,CAAC;IAgBlB,CAAC;IAdG,WAAW,CACP,UAA8B,EAC9B,eAAkB,EAClB,IAAY,EACZ,kBAA0B,EAC1B,GAAW,EACX,CAAmC;QAEnC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;CACJ;AAjBD,gDAiBC;AAED,SAAgB,WAAW,CACvB,KAAa,EACb,kBAA2B,IAAI;IAE/B,MAAM,MAAM,GAAG,sBAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,IAAI,qBAAS,CACvB,eAAe,CAAC,CAAC,CAAC,IAAI,uDAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CACpE,CAAC;IAEF,KAAK,CAAC,oBAAoB,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAI,kBAAkB,EAAU,CAAC;IACtD,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAErC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AACjC,CAAC;AAdD,kCAcC;AAED,SAAgB,YAAY,CAAC,KAAa;IACtC,MAAM,KAAK,GAAG,IAAI,qBAAS,CACvB,IAAI,uDAA0B,CAAC,sBAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAChE,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,4BAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,uBAAU,CAAC,MAAM,CAAC,CAAC;IAEtC,MAAM,CAAC,oBAAoB,EAAE,CAAC;IAC9B,MAAM,YAAY,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC9C,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAEtC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAClC,CAAC;AAZD,oCAYC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apexdevtools/apex-parser",
3
- "version": "4.2.0",
3
+ "version": "4.3.1",
4
4
  "author": "Apex Dev Tools Team <apexdevtools@gmail.com> (https://github.com/apex-dev-tools)",
5
5
  "bugs": "https://github.com/apex-dev-tools/apex-parser/issues",
6
6
  "description": "Javascript parser for Salesforce Apex Language",
package/CHANGELOG.md DELETED
@@ -1,48 +0,0 @@
1
- # apex-parser - Changelog
2
-
3
- ## 4.2.0 - 2024-09-02
4
-
5
- - Add support for multiple nested SOQL sub queries
6
- - Add support for `GROUPING` in SOQL query
7
- - Add support for `toLabel` in SOSL query
8
-
9
- ## 4.1.0 - 2024-05-12
10
-
11
- - Allow WITH USER_MODE or SYSTEM_MODE on SOSL queries
12
-
13
- ## 4.0.0 - 2024-03-28
14
-
15
- - Correct trigger body parsing to allow member declarations
16
- - Add support for TYPEOF in SOQL subqueries
17
- - Change com.nawforce.apexparser packages to io.github.apexdevtools.apexparser
18
-
19
- ## 3.6.0 - 2024-02-15
20
-
21
- - Add null coalesce operator and expression
22
-
23
- ## 3.5.0 - 2023-10-15
24
-
25
- - Correct do-while to require block rather than statement
26
-
27
- ## 3.4.0 - 2023-08-22
28
-
29
- - Support +/- sequences on numeric literals in switch 'when' expressions
30
-
31
- ## 3.3.0 - 2023-04-30
32
-
33
- - Update to ANTLR 4.9.1
34
-
35
- ## 3.2.0 - 2023-01-24
36
-
37
- - Adds user/system mode on DML and within SOQL queries
38
-
39
- ## 3.1.0 - 2022-11-17
40
-
41
- - Adds DISTANCE and GEOLOCATION literals for SOQL.
42
- - Removes support for modulus operator to match apex.
43
- - Use of `void.class` no longer causes syntax error.
44
- - Now supports newer Date literals from API 55.
45
-
46
- ## 3.0.0 - 2022-06-14
47
-
48
- - Initial github release.