blend-kit 1.0.1 → 1.0.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 (70) hide show
  1. package/antlr.readme +1 -0
  2. package/dist/ai-models/api-label/APILabelHelper.js +76 -0
  3. package/dist/ai-models/api-label/APILabelHelper.ts +34 -0
  4. package/dist/ai-models/api-label/labels.json +1 -0
  5. package/dist/ai-models/api-label/model.json +1 -0
  6. package/dist/ai-models/api-label/weights.bin +0 -0
  7. package/dist/ai-models/api-label/wordIndex.json +1 -0
  8. package/dist/ai-models/tokenizer.js +18 -0
  9. package/dist/ai-models/tokenizer.ts +16 -0
  10. package/dist/commands/ui.js +15 -0
  11. package/dist/helper/ExpressHelper.js +18 -12
  12. package/dist/helper/FrontEndApiHelper.js +12 -14
  13. package/dist/helper/FrontEndReactApiHelper.js +6 -6
  14. package/dist/helper/MongoHelper.js +9 -2
  15. package/dist/helper/RNHelper.js +7 -0
  16. package/dist/helper/ReactHelper.js +10 -2
  17. package/dist/helper/grammarHelper/BlendApiGrammarHelper.js +44 -5
  18. package/dist/helper/grammarHelper/BlendMongoGrammarHelper.js +2 -1
  19. package/dist/index.js +2 -2
  20. package/dist/parser/blendExpress/src/grammar/BlendExpressLexer.js +201 -0
  21. package/dist/parser/blendExpress/src/grammar/BlendExpressListener.js +3 -0
  22. package/dist/parser/blendExpress/src/grammar/BlendExpressParser.js +961 -0
  23. package/dist/parser/blendReact/src/grammar/BlendReactLexer.js +1 -1
  24. package/dist/server.js +31 -0
  25. package/dist/types/apiOperationTypes.js +8 -1
  26. package/package.json +6 -3
  27. package/src/ai-models/api-label/APILabelHelper.ts +34 -0
  28. package/src/ai-models/api-label/labels.json +1 -0
  29. package/src/ai-models/api-label/model.json +1 -0
  30. package/src/ai-models/api-label/weights.bin +0 -0
  31. package/src/ai-models/api-label/wordIndex.json +1 -0
  32. package/src/ai-models/tokenizer.ts +16 -0
  33. package/src/grammar/.antlr/BlendApiLexer.java +2 -2
  34. package/src/grammar/.antlr/BlendExpress.interp +70 -0
  35. package/src/grammar/.antlr/BlendExpress.tokens +44 -0
  36. package/src/grammar/.antlr/BlendExpressLexer.interp +89 -0
  37. package/src/grammar/.antlr/BlendExpressLexer.java +237 -0
  38. package/src/grammar/.antlr/BlendExpressLexer.tokens +44 -0
  39. package/src/grammar/.antlr/BlendExpressParser.java +767 -0
  40. package/src/grammar/.antlr/BlendMongo.interp +3 -1
  41. package/src/grammar/.antlr/BlendMongo.tokens +5 -3
  42. package/src/grammar/.antlr/BlendMongoLexer.interp +4 -1
  43. package/src/grammar/.antlr/BlendMongoLexer.java +99 -95
  44. package/src/grammar/.antlr/BlendMongoLexer.tokens +5 -3
  45. package/src/grammar/.antlr/BlendMongoParser.java +11 -11
  46. package/src/grammar/.antlr/BlendReactLexer.interp +1 -1
  47. package/src/grammar/.antlr/BlendReactLexer.java +1 -1
  48. package/src/grammar/BlendExpress.g4 +26 -0
  49. package/src/grammar/BlendMongo.g4 +1 -1
  50. package/src/grammar/BlendReact.g4 +1 -1
  51. package/src/helper/ExpressHelper.ts +153 -141
  52. package/src/helper/FrontEndApiHelper.ts +13 -14
  53. package/src/helper/FrontEndReactApiHelper.ts +6 -6
  54. package/src/helper/MongoHelper.ts +9 -2
  55. package/src/helper/RNHelper.ts +76 -70
  56. package/src/helper/ReactHelper.ts +10 -2
  57. package/src/helper/grammarHelper/BlendApiGrammarHelper.ts +46 -6
  58. package/src/helper/grammarHelper/BlendMongoGrammarHelper.ts +4 -3
  59. package/src/index.ts +3 -2
  60. package/src/parser/blendExpress/src/grammar/BlendExpress.interp +70 -0
  61. package/src/parser/blendExpress/src/grammar/BlendExpress.tokens +44 -0
  62. package/src/parser/blendExpress/src/grammar/BlendExpressLexer.interp +89 -0
  63. package/src/parser/blendExpress/src/grammar/BlendExpressLexer.tokens +44 -0
  64. package/src/parser/blendExpress/src/grammar/BlendExpressLexer.ts +193 -0
  65. package/src/parser/blendExpress/src/grammar/BlendExpressListener.ts +145 -0
  66. package/src/parser/blendExpress/src/grammar/BlendExpressParser.ts +968 -0
  67. package/src/parser/blendReact/src/grammar/BlendReactLexer.interp +1 -1
  68. package/src/parser/blendReact/src/grammar/BlendReactLexer.ts +1 -1
  69. package/src/types/apiOperationTypes.ts +12 -0
  70. package/tsconfig.json +1 -0
@@ -19,6 +19,7 @@ null
19
19
  'Boolean'
20
20
  'any'
21
21
  'Object'
22
+ 'Date'
22
23
  null
23
24
  null
24
25
  null
@@ -44,6 +45,7 @@ null
44
45
  null
45
46
  null
46
47
  null
48
+ null
47
49
  IDENTIFIER
48
50
  CAPITAL_IDENTIFIER
49
51
  WS
@@ -62,4 +64,4 @@ primitiveType
62
64
 
63
65
 
64
66
  atn:
65
- [4, 1, 22, 94, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 1, 0, 1, 0, 4, 0, 23, 8, 0, 11, 0, 12, 0, 24, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 2, 36, 8, 2, 10, 2, 12, 2, 39, 9, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 2, 45, 8, 2, 10, 2, 12, 2, 48, 9, 2, 3, 2, 50, 8, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 59, 8, 3, 1, 4, 1, 4, 1, 4, 1, 4, 5, 4, 65, 8, 4, 10, 4, 12, 4, 68, 9, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 3, 5, 77, 8, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 3, 7, 88, 8, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1, 9, 0, 0, 10, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 0, 2, 1, 0, 11, 12, 1, 0, 15, 19, 92, 0, 20, 1, 0, 0, 0, 2, 26, 1, 0, 0, 0, 4, 29, 1, 0, 0, 0, 6, 53, 1, 0, 0, 0, 8, 60, 1, 0, 0, 0, 10, 71, 1, 0, 0, 0, 12, 78, 1, 0, 0, 0, 14, 87, 1, 0, 0, 0, 16, 89, 1, 0, 0, 0, 18, 91, 1, 0, 0, 0, 20, 22, 3, 2, 1, 0, 21, 23, 3, 4, 2, 0, 22, 21, 1, 0, 0, 0, 23, 24, 1, 0, 0, 0, 24, 22, 1, 0, 0, 0, 24, 25, 1, 0, 0, 0, 25, 1, 1, 0, 0, 0, 26, 27, 5, 1, 0, 0, 27, 28, 5, 21, 0, 0, 28, 3, 1, 0, 0, 0, 29, 30, 5, 2, 0, 0, 30, 31, 5, 21, 0, 0, 31, 32, 5, 3, 0, 0, 32, 37, 3, 6, 3, 0, 33, 34, 5, 4, 0, 0, 34, 36, 3, 6, 3, 0, 35, 33, 1, 0, 0, 0, 36, 39, 1, 0, 0, 0, 37, 35, 1, 0, 0, 0, 37, 38, 1, 0, 0, 0, 38, 49, 1, 0, 0, 0, 39, 37, 1, 0, 0, 0, 40, 41, 5, 4, 0, 0, 41, 46, 3, 10, 5, 0, 42, 43, 5, 4, 0, 0, 43, 45, 3, 10, 5, 0, 44, 42, 1, 0, 0, 0, 45, 48, 1, 0, 0, 0, 46, 44, 1, 0, 0, 0, 46, 47, 1, 0, 0, 0, 47, 50, 1, 0, 0, 0, 48, 46, 1, 0, 0, 0, 49, 40, 1, 0, 0, 0, 49, 50, 1, 0, 0, 0, 50, 51, 1, 0, 0, 0, 51, 52, 5, 5, 0, 0, 52, 5, 1, 0, 0, 0, 53, 54, 5, 6, 0, 0, 54, 55, 5, 20, 0, 0, 55, 56, 5, 7, 0, 0, 56, 58, 3, 14, 7, 0, 57, 59, 3, 8, 4, 0, 58, 57, 1, 0, 0, 0, 58, 59, 1, 0, 0, 0, 59, 7, 1, 0, 0, 0, 60, 61, 5, 8, 0, 0, 61, 66, 3, 12, 6, 0, 62, 63, 5, 4, 0, 0, 63, 65, 3, 12, 6, 0, 64, 62, 1, 0, 0, 0, 65, 68, 1, 0, 0, 0, 66, 64, 1, 0, 0, 0, 66, 67, 1, 0, 0, 0, 67, 69, 1, 0, 0, 0, 68, 66, 1, 0, 0, 0, 69, 70, 5, 9, 0, 0, 70, 9, 1, 0, 0, 0, 71, 72, 5, 10, 0, 0, 72, 73, 5, 20, 0, 0, 73, 74, 5, 7, 0, 0, 74, 76, 5, 21, 0, 0, 75, 77, 3, 8, 4, 0, 76, 75, 1, 0, 0, 0, 76, 77, 1, 0, 0, 0, 77, 11, 1, 0, 0, 0, 78, 79, 7, 0, 0, 0, 79, 13, 1, 0, 0, 0, 80, 88, 3, 16, 8, 0, 81, 82, 3, 16, 8, 0, 82, 83, 5, 13, 0, 0, 83, 88, 1, 0, 0, 0, 84, 85, 3, 16, 8, 0, 85, 86, 5, 14, 0, 0, 86, 88, 1, 0, 0, 0, 87, 80, 1, 0, 0, 0, 87, 81, 1, 0, 0, 0, 87, 84, 1, 0, 0, 0, 88, 15, 1, 0, 0, 0, 89, 90, 3, 18, 9, 0, 90, 17, 1, 0, 0, 0, 91, 92, 7, 1, 0, 0, 92, 19, 1, 0, 0, 0, 8, 24, 37, 46, 49, 58, 66, 76, 87]
67
+ [4, 1, 23, 94, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 1, 0, 1, 0, 4, 0, 23, 8, 0, 11, 0, 12, 0, 24, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 2, 36, 8, 2, 10, 2, 12, 2, 39, 9, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 2, 45, 8, 2, 10, 2, 12, 2, 48, 9, 2, 3, 2, 50, 8, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 59, 8, 3, 1, 4, 1, 4, 1, 4, 1, 4, 5, 4, 65, 8, 4, 10, 4, 12, 4, 68, 9, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 3, 5, 77, 8, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 1, 7, 3, 7, 88, 8, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1, 9, 0, 0, 10, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 0, 2, 1, 0, 11, 12, 1, 0, 15, 20, 92, 0, 20, 1, 0, 0, 0, 2, 26, 1, 0, 0, 0, 4, 29, 1, 0, 0, 0, 6, 53, 1, 0, 0, 0, 8, 60, 1, 0, 0, 0, 10, 71, 1, 0, 0, 0, 12, 78, 1, 0, 0, 0, 14, 87, 1, 0, 0, 0, 16, 89, 1, 0, 0, 0, 18, 91, 1, 0, 0, 0, 20, 22, 3, 2, 1, 0, 21, 23, 3, 4, 2, 0, 22, 21, 1, 0, 0, 0, 23, 24, 1, 0, 0, 0, 24, 22, 1, 0, 0, 0, 24, 25, 1, 0, 0, 0, 25, 1, 1, 0, 0, 0, 26, 27, 5, 1, 0, 0, 27, 28, 5, 22, 0, 0, 28, 3, 1, 0, 0, 0, 29, 30, 5, 2, 0, 0, 30, 31, 5, 22, 0, 0, 31, 32, 5, 3, 0, 0, 32, 37, 3, 6, 3, 0, 33, 34, 5, 4, 0, 0, 34, 36, 3, 6, 3, 0, 35, 33, 1, 0, 0, 0, 36, 39, 1, 0, 0, 0, 37, 35, 1, 0, 0, 0, 37, 38, 1, 0, 0, 0, 38, 49, 1, 0, 0, 0, 39, 37, 1, 0, 0, 0, 40, 41, 5, 4, 0, 0, 41, 46, 3, 10, 5, 0, 42, 43, 5, 4, 0, 0, 43, 45, 3, 10, 5, 0, 44, 42, 1, 0, 0, 0, 45, 48, 1, 0, 0, 0, 46, 44, 1, 0, 0, 0, 46, 47, 1, 0, 0, 0, 47, 50, 1, 0, 0, 0, 48, 46, 1, 0, 0, 0, 49, 40, 1, 0, 0, 0, 49, 50, 1, 0, 0, 0, 50, 51, 1, 0, 0, 0, 51, 52, 5, 5, 0, 0, 52, 5, 1, 0, 0, 0, 53, 54, 5, 6, 0, 0, 54, 55, 5, 21, 0, 0, 55, 56, 5, 7, 0, 0, 56, 58, 3, 14, 7, 0, 57, 59, 3, 8, 4, 0, 58, 57, 1, 0, 0, 0, 58, 59, 1, 0, 0, 0, 59, 7, 1, 0, 0, 0, 60, 61, 5, 8, 0, 0, 61, 66, 3, 12, 6, 0, 62, 63, 5, 4, 0, 0, 63, 65, 3, 12, 6, 0, 64, 62, 1, 0, 0, 0, 65, 68, 1, 0, 0, 0, 66, 64, 1, 0, 0, 0, 66, 67, 1, 0, 0, 0, 67, 69, 1, 0, 0, 0, 68, 66, 1, 0, 0, 0, 69, 70, 5, 9, 0, 0, 70, 9, 1, 0, 0, 0, 71, 72, 5, 10, 0, 0, 72, 73, 5, 21, 0, 0, 73, 74, 5, 7, 0, 0, 74, 76, 5, 22, 0, 0, 75, 77, 3, 8, 4, 0, 76, 75, 1, 0, 0, 0, 76, 77, 1, 0, 0, 0, 77, 11, 1, 0, 0, 0, 78, 79, 7, 0, 0, 0, 79, 13, 1, 0, 0, 0, 80, 88, 3, 16, 8, 0, 81, 82, 3, 16, 8, 0, 82, 83, 5, 13, 0, 0, 83, 88, 1, 0, 0, 0, 84, 85, 3, 16, 8, 0, 85, 86, 5, 14, 0, 0, 86, 88, 1, 0, 0, 0, 87, 80, 1, 0, 0, 0, 87, 81, 1, 0, 0, 0, 87, 84, 1, 0, 0, 0, 88, 15, 1, 0, 0, 0, 89, 90, 3, 18, 9, 0, 90, 17, 1, 0, 0, 0, 91, 92, 7, 1, 0, 0, 92, 19, 1, 0, 0, 0, 8, 24, 37, 46, 49, 58, 66, 76, 87]
@@ -17,9 +17,10 @@ T__15=16
17
17
  T__16=17
18
18
  T__17=18
19
19
  T__18=19
20
- IDENTIFIER=20
21
- CAPITAL_IDENTIFIER=21
22
- WS=22
20
+ T__19=20
21
+ IDENTIFIER=21
22
+ CAPITAL_IDENTIFIER=22
23
+ WS=23
23
24
  'module'=1
24
25
  'collection'=2
25
26
  '{'=3
@@ -39,3 +40,4 @@ WS=22
39
40
  'Boolean'=17
40
41
  'any'=18
41
42
  'Object'=19
43
+ 'Date'=20
@@ -19,6 +19,7 @@ null
19
19
  'Boolean'
20
20
  'any'
21
21
  'Object'
22
+ 'Date'
22
23
  null
23
24
  null
24
25
  null
@@ -44,6 +45,7 @@ null
44
45
  null
45
46
  null
46
47
  null
48
+ null
47
49
  IDENTIFIER
48
50
  CAPITAL_IDENTIFIER
49
51
  WS
@@ -68,6 +70,7 @@ T__15
68
70
  T__16
69
71
  T__17
70
72
  T__18
73
+ T__19
71
74
  IDENTIFIER
72
75
  CAPITAL_IDENTIFIER
73
76
  WS
@@ -80,4 +83,4 @@ mode names:
80
83
  DEFAULT_MODE
81
84
 
82
85
  atn:
83
- [4, 0, 22, 166, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7, 20, 2, 21, 7, 21, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 1, 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 12, 1, 12, 1, 12, 1, 13, 1, 13, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 17, 1, 17, 1, 17, 1, 17, 1, 18, 1, 18, 1, 18, 1, 18, 1, 18, 1, 18, 1, 18, 1, 19, 1, 19, 5, 19, 148, 8, 19, 10, 19, 12, 19, 151, 9, 19, 1, 20, 1, 20, 5, 20, 155, 8, 20, 10, 20, 12, 20, 158, 9, 20, 1, 21, 4, 21, 161, 8, 21, 11, 21, 12, 21, 162, 1, 21, 1, 21, 0, 0, 22, 1, 1, 3, 2, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16, 33, 17, 35, 18, 37, 19, 39, 20, 41, 21, 43, 22, 1, 0, 4, 2, 0, 95, 95, 97, 122, 4, 0, 48, 57, 65, 90, 95, 95, 97, 122, 1, 0, 65, 90, 3, 0, 9, 10, 13, 13, 32, 32, 168, 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 5, 1, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0, 13, 1, 0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0, 21, 1, 0, 0, 0, 0, 23, 1, 0, 0, 0, 0, 25, 1, 0, 0, 0, 0, 27, 1, 0, 0, 0, 0, 29, 1, 0, 0, 0, 0, 31, 1, 0, 0, 0, 0, 33, 1, 0, 0, 0, 0, 35, 1, 0, 0, 0, 0, 37, 1, 0, 0, 0, 0, 39, 1, 0, 0, 0, 0, 41, 1, 0, 0, 0, 0, 43, 1, 0, 0, 0, 1, 45, 1, 0, 0, 0, 3, 52, 1, 0, 0, 0, 5, 63, 1, 0, 0, 0, 7, 65, 1, 0, 0, 0, 9, 67, 1, 0, 0, 0, 11, 69, 1, 0, 0, 0, 13, 78, 1, 0, 0, 0, 15, 80, 1, 0, 0, 0, 17, 82, 1, 0, 0, 0, 19, 84, 1, 0, 0, 0, 21, 94, 1, 0, 0, 0, 23, 101, 1, 0, 0, 0, 25, 107, 1, 0, 0, 0, 27, 110, 1, 0, 0, 0, 29, 112, 1, 0, 0, 0, 31, 119, 1, 0, 0, 0, 33, 126, 1, 0, 0, 0, 35, 134, 1, 0, 0, 0, 37, 138, 1, 0, 0, 0, 39, 145, 1, 0, 0, 0, 41, 152, 1, 0, 0, 0, 43, 160, 1, 0, 0, 0, 45, 46, 5, 109, 0, 0, 46, 47, 5, 111, 0, 0, 47, 48, 5, 100, 0, 0, 48, 49, 5, 117, 0, 0, 49, 50, 5, 108, 0, 0, 50, 51, 5, 101, 0, 0, 51, 2, 1, 0, 0, 0, 52, 53, 5, 99, 0, 0, 53, 54, 5, 111, 0, 0, 54, 55, 5, 108, 0, 0, 55, 56, 5, 108, 0, 0, 56, 57, 5, 101, 0, 0, 57, 58, 5, 99, 0, 0, 58, 59, 5, 116, 0, 0, 59, 60, 5, 105, 0, 0, 60, 61, 5, 111, 0, 0, 61, 62, 5, 110, 0, 0, 62, 4, 1, 0, 0, 0, 63, 64, 5, 123, 0, 0, 64, 6, 1, 0, 0, 0, 65, 66, 5, 44, 0, 0, 66, 8, 1, 0, 0, 0, 67, 68, 5, 125, 0, 0, 68, 10, 1, 0, 0, 0, 69, 70, 5, 112, 0, 0, 70, 71, 5, 114, 0, 0, 71, 72, 5, 111, 0, 0, 72, 73, 5, 112, 0, 0, 73, 74, 5, 101, 0, 0, 74, 75, 5, 114, 0, 0, 75, 76, 5, 116, 0, 0, 76, 77, 5, 121, 0, 0, 77, 12, 1, 0, 0, 0, 78, 79, 5, 58, 0, 0, 79, 14, 1, 0, 0, 0, 80, 81, 5, 40, 0, 0, 81, 16, 1, 0, 0, 0, 82, 83, 5, 41, 0, 0, 83, 18, 1, 0, 0, 0, 84, 85, 5, 114, 0, 0, 85, 86, 5, 101, 0, 0, 86, 87, 5, 102, 0, 0, 87, 88, 5, 101, 0, 0, 88, 89, 5, 114, 0, 0, 89, 90, 5, 101, 0, 0, 90, 91, 5, 110, 0, 0, 91, 92, 5, 99, 0, 0, 92, 93, 5, 101, 0, 0, 93, 20, 1, 0, 0, 0, 94, 95, 5, 117, 0, 0, 95, 96, 5, 110, 0, 0, 96, 97, 5, 105, 0, 0, 97, 98, 5, 113, 0, 0, 98, 99, 5, 117, 0, 0, 99, 100, 5, 101, 0, 0, 100, 22, 1, 0, 0, 0, 101, 102, 5, 105, 0, 0, 102, 103, 5, 110, 0, 0, 103, 104, 5, 100, 0, 0, 104, 105, 5, 101, 0, 0, 105, 106, 5, 120, 0, 0, 106, 24, 1, 0, 0, 0, 107, 108, 5, 91, 0, 0, 108, 109, 5, 93, 0, 0, 109, 26, 1, 0, 0, 0, 110, 111, 5, 63, 0, 0, 111, 28, 1, 0, 0, 0, 112, 113, 5, 83, 0, 0, 113, 114, 5, 116, 0, 0, 114, 115, 5, 114, 0, 0, 115, 116, 5, 105, 0, 0, 116, 117, 5, 110, 0, 0, 117, 118, 5, 103, 0, 0, 118, 30, 1, 0, 0, 0, 119, 120, 5, 78, 0, 0, 120, 121, 5, 117, 0, 0, 121, 122, 5, 109, 0, 0, 122, 123, 5, 98, 0, 0, 123, 124, 5, 101, 0, 0, 124, 125, 5, 114, 0, 0, 125, 32, 1, 0, 0, 0, 126, 127, 5, 66, 0, 0, 127, 128, 5, 111, 0, 0, 128, 129, 5, 111, 0, 0, 129, 130, 5, 108, 0, 0, 130, 131, 5, 101, 0, 0, 131, 132, 5, 97, 0, 0, 132, 133, 5, 110, 0, 0, 133, 34, 1, 0, 0, 0, 134, 135, 5, 97, 0, 0, 135, 136, 5, 110, 0, 0, 136, 137, 5, 121, 0, 0, 137, 36, 1, 0, 0, 0, 138, 139, 5, 79, 0, 0, 139, 140, 5, 98, 0, 0, 140, 141, 5, 106, 0, 0, 141, 142, 5, 101, 0, 0, 142, 143, 5, 99, 0, 0, 143, 144, 5, 116, 0, 0, 144, 38, 1, 0, 0, 0, 145, 149, 7, 0, 0, 0, 146, 148, 7, 1, 0, 0, 147, 146, 1, 0, 0, 0, 148, 151, 1, 0, 0, 0, 149, 147, 1, 0, 0, 0, 149, 150, 1, 0, 0, 0, 150, 40, 1, 0, 0, 0, 151, 149, 1, 0, 0, 0, 152, 156, 7, 2, 0, 0, 153, 155, 7, 1, 0, 0, 154, 153, 1, 0, 0, 0, 155, 158, 1, 0, 0, 0, 156, 154, 1, 0, 0, 0, 156, 157, 1, 0, 0, 0, 157, 42, 1, 0, 0, 0, 158, 156, 1, 0, 0, 0, 159, 161, 7, 3, 0, 0, 160, 159, 1, 0, 0, 0, 161, 162, 1, 0, 0, 0, 162, 160, 1, 0, 0, 0, 162, 163, 1, 0, 0, 0, 163, 164, 1, 0, 0, 0, 164, 165, 6, 21, 0, 0, 165, 44, 1, 0, 0, 0, 4, 0, 149, 156, 162, 1, 6, 0, 0]
86
+ [4, 0, 23, 173, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 1, 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 12, 1, 12, 1, 12, 1, 13, 1, 13, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 14, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 1, 17, 1, 17, 1, 17, 1, 17, 1, 18, 1, 18, 1, 18, 1, 18, 1, 18, 1, 18, 1, 18, 1, 19, 1, 19, 1, 19, 1, 19, 1, 19, 1, 20, 1, 20, 5, 20, 155, 8, 20, 10, 20, 12, 20, 158, 9, 20, 1, 21, 1, 21, 5, 21, 162, 8, 21, 10, 21, 12, 21, 165, 9, 21, 1, 22, 4, 22, 168, 8, 22, 11, 22, 12, 22, 169, 1, 22, 1, 22, 0, 0, 23, 1, 1, 3, 2, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16, 33, 17, 35, 18, 37, 19, 39, 20, 41, 21, 43, 22, 45, 23, 1, 0, 4, 2, 0, 95, 95, 97, 122, 4, 0, 48, 57, 65, 90, 95, 95, 97, 122, 1, 0, 65, 90, 3, 0, 9, 10, 13, 13, 32, 32, 175, 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 5, 1, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0, 13, 1, 0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0, 21, 1, 0, 0, 0, 0, 23, 1, 0, 0, 0, 0, 25, 1, 0, 0, 0, 0, 27, 1, 0, 0, 0, 0, 29, 1, 0, 0, 0, 0, 31, 1, 0, 0, 0, 0, 33, 1, 0, 0, 0, 0, 35, 1, 0, 0, 0, 0, 37, 1, 0, 0, 0, 0, 39, 1, 0, 0, 0, 0, 41, 1, 0, 0, 0, 0, 43, 1, 0, 0, 0, 0, 45, 1, 0, 0, 0, 1, 47, 1, 0, 0, 0, 3, 54, 1, 0, 0, 0, 5, 65, 1, 0, 0, 0, 7, 67, 1, 0, 0, 0, 9, 69, 1, 0, 0, 0, 11, 71, 1, 0, 0, 0, 13, 80, 1, 0, 0, 0, 15, 82, 1, 0, 0, 0, 17, 84, 1, 0, 0, 0, 19, 86, 1, 0, 0, 0, 21, 96, 1, 0, 0, 0, 23, 103, 1, 0, 0, 0, 25, 109, 1, 0, 0, 0, 27, 112, 1, 0, 0, 0, 29, 114, 1, 0, 0, 0, 31, 121, 1, 0, 0, 0, 33, 128, 1, 0, 0, 0, 35, 136, 1, 0, 0, 0, 37, 140, 1, 0, 0, 0, 39, 147, 1, 0, 0, 0, 41, 152, 1, 0, 0, 0, 43, 159, 1, 0, 0, 0, 45, 167, 1, 0, 0, 0, 47, 48, 5, 109, 0, 0, 48, 49, 5, 111, 0, 0, 49, 50, 5, 100, 0, 0, 50, 51, 5, 117, 0, 0, 51, 52, 5, 108, 0, 0, 52, 53, 5, 101, 0, 0, 53, 2, 1, 0, 0, 0, 54, 55, 5, 99, 0, 0, 55, 56, 5, 111, 0, 0, 56, 57, 5, 108, 0, 0, 57, 58, 5, 108, 0, 0, 58, 59, 5, 101, 0, 0, 59, 60, 5, 99, 0, 0, 60, 61, 5, 116, 0, 0, 61, 62, 5, 105, 0, 0, 62, 63, 5, 111, 0, 0, 63, 64, 5, 110, 0, 0, 64, 4, 1, 0, 0, 0, 65, 66, 5, 123, 0, 0, 66, 6, 1, 0, 0, 0, 67, 68, 5, 44, 0, 0, 68, 8, 1, 0, 0, 0, 69, 70, 5, 125, 0, 0, 70, 10, 1, 0, 0, 0, 71, 72, 5, 112, 0, 0, 72, 73, 5, 114, 0, 0, 73, 74, 5, 111, 0, 0, 74, 75, 5, 112, 0, 0, 75, 76, 5, 101, 0, 0, 76, 77, 5, 114, 0, 0, 77, 78, 5, 116, 0, 0, 78, 79, 5, 121, 0, 0, 79, 12, 1, 0, 0, 0, 80, 81, 5, 58, 0, 0, 81, 14, 1, 0, 0, 0, 82, 83, 5, 40, 0, 0, 83, 16, 1, 0, 0, 0, 84, 85, 5, 41, 0, 0, 85, 18, 1, 0, 0, 0, 86, 87, 5, 114, 0, 0, 87, 88, 5, 101, 0, 0, 88, 89, 5, 102, 0, 0, 89, 90, 5, 101, 0, 0, 90, 91, 5, 114, 0, 0, 91, 92, 5, 101, 0, 0, 92, 93, 5, 110, 0, 0, 93, 94, 5, 99, 0, 0, 94, 95, 5, 101, 0, 0, 95, 20, 1, 0, 0, 0, 96, 97, 5, 117, 0, 0, 97, 98, 5, 110, 0, 0, 98, 99, 5, 105, 0, 0, 99, 100, 5, 113, 0, 0, 100, 101, 5, 117, 0, 0, 101, 102, 5, 101, 0, 0, 102, 22, 1, 0, 0, 0, 103, 104, 5, 105, 0, 0, 104, 105, 5, 110, 0, 0, 105, 106, 5, 100, 0, 0, 106, 107, 5, 101, 0, 0, 107, 108, 5, 120, 0, 0, 108, 24, 1, 0, 0, 0, 109, 110, 5, 91, 0, 0, 110, 111, 5, 93, 0, 0, 111, 26, 1, 0, 0, 0, 112, 113, 5, 63, 0, 0, 113, 28, 1, 0, 0, 0, 114, 115, 5, 83, 0, 0, 115, 116, 5, 116, 0, 0, 116, 117, 5, 114, 0, 0, 117, 118, 5, 105, 0, 0, 118, 119, 5, 110, 0, 0, 119, 120, 5, 103, 0, 0, 120, 30, 1, 0, 0, 0, 121, 122, 5, 78, 0, 0, 122, 123, 5, 117, 0, 0, 123, 124, 5, 109, 0, 0, 124, 125, 5, 98, 0, 0, 125, 126, 5, 101, 0, 0, 126, 127, 5, 114, 0, 0, 127, 32, 1, 0, 0, 0, 128, 129, 5, 66, 0, 0, 129, 130, 5, 111, 0, 0, 130, 131, 5, 111, 0, 0, 131, 132, 5, 108, 0, 0, 132, 133, 5, 101, 0, 0, 133, 134, 5, 97, 0, 0, 134, 135, 5, 110, 0, 0, 135, 34, 1, 0, 0, 0, 136, 137, 5, 97, 0, 0, 137, 138, 5, 110, 0, 0, 138, 139, 5, 121, 0, 0, 139, 36, 1, 0, 0, 0, 140, 141, 5, 79, 0, 0, 141, 142, 5, 98, 0, 0, 142, 143, 5, 106, 0, 0, 143, 144, 5, 101, 0, 0, 144, 145, 5, 99, 0, 0, 145, 146, 5, 116, 0, 0, 146, 38, 1, 0, 0, 0, 147, 148, 5, 68, 0, 0, 148, 149, 5, 97, 0, 0, 149, 150, 5, 116, 0, 0, 150, 151, 5, 101, 0, 0, 151, 40, 1, 0, 0, 0, 152, 156, 7, 0, 0, 0, 153, 155, 7, 1, 0, 0, 154, 153, 1, 0, 0, 0, 155, 158, 1, 0, 0, 0, 156, 154, 1, 0, 0, 0, 156, 157, 1, 0, 0, 0, 157, 42, 1, 0, 0, 0, 158, 156, 1, 0, 0, 0, 159, 163, 7, 2, 0, 0, 160, 162, 7, 1, 0, 0, 161, 160, 1, 0, 0, 0, 162, 165, 1, 0, 0, 0, 163, 161, 1, 0, 0, 0, 163, 164, 1, 0, 0, 0, 164, 44, 1, 0, 0, 0, 165, 163, 1, 0, 0, 0, 166, 168, 7, 3, 0, 0, 167, 166, 1, 0, 0, 0, 168, 169, 1, 0, 0, 0, 169, 167, 1, 0, 0, 0, 169, 170, 1, 0, 0, 0, 170, 171, 1, 0, 0, 0, 171, 172, 6, 22, 0, 0, 172, 46, 1, 0, 0, 0, 4, 0, 156, 163, 169, 1, 6, 0, 0]
@@ -18,7 +18,7 @@ public class BlendMongoLexer extends Lexer {
18
18
  public static final int
19
19
  T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9,
20
20
  T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17,
21
- T__17=18, T__18=19, IDENTIFIER=20, CAPITAL_IDENTIFIER=21, WS=22;
21
+ T__17=18, T__18=19, T__19=20, IDENTIFIER=21, CAPITAL_IDENTIFIER=22, WS=23;
22
22
  public static String[] channelNames = {
23
23
  "DEFAULT_TOKEN_CHANNEL", "HIDDEN"
24
24
  };
@@ -31,7 +31,7 @@ public class BlendMongoLexer extends Lexer {
31
31
  return new String[] {
32
32
  "T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "T__6", "T__7", "T__8",
33
33
  "T__9", "T__10", "T__11", "T__12", "T__13", "T__14", "T__15", "T__16",
34
- "T__17", "T__18", "IDENTIFIER", "CAPITAL_IDENTIFIER", "WS"
34
+ "T__17", "T__18", "T__19", "IDENTIFIER", "CAPITAL_IDENTIFIER", "WS"
35
35
  };
36
36
  }
37
37
  public static final String[] ruleNames = makeRuleNames();
@@ -40,14 +40,14 @@ public class BlendMongoLexer extends Lexer {
40
40
  return new String[] {
41
41
  null, "'module'", "'collection'", "'{'", "','", "'}'", "'property'",
42
42
  "':'", "'('", "')'", "'reference'", "'unique'", "'index'", "'[]'", "'?'",
43
- "'String'", "'Number'", "'Boolean'", "'any'", "'Object'"
43
+ "'String'", "'Number'", "'Boolean'", "'any'", "'Object'", "'Date'"
44
44
  };
45
45
  }
46
46
  private static final String[] _LITERAL_NAMES = makeLiteralNames();
47
47
  private static String[] makeSymbolicNames() {
48
48
  return new String[] {
49
49
  null, null, null, null, null, null, null, null, null, null, null, null,
50
- null, null, null, null, null, null, null, null, "IDENTIFIER", "CAPITAL_IDENTIFIER",
50
+ null, null, null, null, null, null, null, null, null, "IDENTIFIER", "CAPITAL_IDENTIFIER",
51
51
  "WS"
52
52
  };
53
53
  }
@@ -110,104 +110,108 @@ public class BlendMongoLexer extends Lexer {
110
110
  public ATN getATN() { return _ATN; }
111
111
 
112
112
  public static final String _serializedATN =
113
- "\u0004\u0000\u0016\u00a6\u0006\uffff\uffff\u0002\u0000\u0007\u0000\u0002"+
113
+ "\u0004\u0000\u0017\u00ad\u0006\uffff\uffff\u0002\u0000\u0007\u0000\u0002"+
114
114
  "\u0001\u0007\u0001\u0002\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002"+
115
115
  "\u0004\u0007\u0004\u0002\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002"+
116
116
  "\u0007\u0007\u0007\u0002\b\u0007\b\u0002\t\u0007\t\u0002\n\u0007\n\u0002"+
117
117
  "\u000b\u0007\u000b\u0002\f\u0007\f\u0002\r\u0007\r\u0002\u000e\u0007\u000e"+
118
118
  "\u0002\u000f\u0007\u000f\u0002\u0010\u0007\u0010\u0002\u0011\u0007\u0011"+
119
119
  "\u0002\u0012\u0007\u0012\u0002\u0013\u0007\u0013\u0002\u0014\u0007\u0014"+
120
- "\u0002\u0015\u0007\u0015\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0000"+
121
- "\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0001\u0001\u0001\u0001\u0001"+
120
+ "\u0002\u0015\u0007\u0015\u0002\u0016\u0007\u0016\u0001\u0000\u0001\u0000"+
121
+ "\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0000\u0001\u0001"+
122
122
  "\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001"+
123
- "\u0001\u0001\u0001\u0001\u0001\u0002\u0001\u0002\u0001\u0003\u0001\u0003"+
124
- "\u0001\u0004\u0001\u0004\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0005"+
125
- "\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0006"+
126
- "\u0001\u0006\u0001\u0007\u0001\u0007\u0001\b\u0001\b\u0001\t\u0001\t\u0001"+
127
- "\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\n\u0001"+
128
- "\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\u000b\u0001\u000b\u0001"+
129
- "\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\f\u0001\f\u0001\f\u0001"+
130
- "\r\u0001\r\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e"+
131
- "\u0001\u000e\u0001\u000e\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f"+
132
- "\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u0010\u0001\u0010\u0001\u0010"+
133
- "\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0011"+
134
- "\u0001\u0011\u0001\u0011\u0001\u0011\u0001\u0012\u0001\u0012\u0001\u0012"+
135
- "\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0013\u0001\u0013"+
136
- "\u0005\u0013\u0094\b\u0013\n\u0013\f\u0013\u0097\t\u0013\u0001\u0014\u0001"+
137
- "\u0014\u0005\u0014\u009b\b\u0014\n\u0014\f\u0014\u009e\t\u0014\u0001\u0015"+
138
- "\u0004\u0015\u00a1\b\u0015\u000b\u0015\f\u0015\u00a2\u0001\u0015\u0001"+
139
- "\u0015\u0000\u0000\u0016\u0001\u0001\u0003\u0002\u0005\u0003\u0007\u0004"+
140
- "\t\u0005\u000b\u0006\r\u0007\u000f\b\u0011\t\u0013\n\u0015\u000b\u0017"+
141
- "\f\u0019\r\u001b\u000e\u001d\u000f\u001f\u0010!\u0011#\u0012%\u0013\'"+
142
- "\u0014)\u0015+\u0016\u0001\u0000\u0004\u0002\u0000__az\u0004\u000009A"+
143
- "Z__az\u0001\u0000AZ\u0003\u0000\t\n\r\r \u00a8\u0000\u0001\u0001\u0000"+
144
- "\u0000\u0000\u0000\u0003\u0001\u0000\u0000\u0000\u0000\u0005\u0001\u0000"+
145
- "\u0000\u0000\u0000\u0007\u0001\u0000\u0000\u0000\u0000\t\u0001\u0000\u0000"+
146
- "\u0000\u0000\u000b\u0001\u0000\u0000\u0000\u0000\r\u0001\u0000\u0000\u0000"+
147
- "\u0000\u000f\u0001\u0000\u0000\u0000\u0000\u0011\u0001\u0000\u0000\u0000"+
148
- "\u0000\u0013\u0001\u0000\u0000\u0000\u0000\u0015\u0001\u0000\u0000\u0000"+
149
- "\u0000\u0017\u0001\u0000\u0000\u0000\u0000\u0019\u0001\u0000\u0000\u0000"+
150
- "\u0000\u001b\u0001\u0000\u0000\u0000\u0000\u001d\u0001\u0000\u0000\u0000"+
151
- "\u0000\u001f\u0001\u0000\u0000\u0000\u0000!\u0001\u0000\u0000\u0000\u0000"+
152
- "#\u0001\u0000\u0000\u0000\u0000%\u0001\u0000\u0000\u0000\u0000\'\u0001"+
153
- "\u0000\u0000\u0000\u0000)\u0001\u0000\u0000\u0000\u0000+\u0001\u0000\u0000"+
154
- "\u0000\u0001-\u0001\u0000\u0000\u0000\u00034\u0001\u0000\u0000\u0000\u0005"+
155
- "?\u0001\u0000\u0000\u0000\u0007A\u0001\u0000\u0000\u0000\tC\u0001\u0000"+
156
- "\u0000\u0000\u000bE\u0001\u0000\u0000\u0000\rN\u0001\u0000\u0000\u0000"+
157
- "\u000fP\u0001\u0000\u0000\u0000\u0011R\u0001\u0000\u0000\u0000\u0013T"+
158
- "\u0001\u0000\u0000\u0000\u0015^\u0001\u0000\u0000\u0000\u0017e\u0001\u0000"+
159
- "\u0000\u0000\u0019k\u0001\u0000\u0000\u0000\u001bn\u0001\u0000\u0000\u0000"+
160
- "\u001dp\u0001\u0000\u0000\u0000\u001fw\u0001\u0000\u0000\u0000!~\u0001"+
161
- "\u0000\u0000\u0000#\u0086\u0001\u0000\u0000\u0000%\u008a\u0001\u0000\u0000"+
162
- "\u0000\'\u0091\u0001\u0000\u0000\u0000)\u0098\u0001\u0000\u0000\u0000"+
163
- "+\u00a0\u0001\u0000\u0000\u0000-.\u0005m\u0000\u0000./\u0005o\u0000\u0000"+
164
- "/0\u0005d\u0000\u000001\u0005u\u0000\u000012\u0005l\u0000\u000023\u0005"+
165
- "e\u0000\u00003\u0002\u0001\u0000\u0000\u000045\u0005c\u0000\u000056\u0005"+
166
- "o\u0000\u000067\u0005l\u0000\u000078\u0005l\u0000\u000089\u0005e\u0000"+
167
- "\u00009:\u0005c\u0000\u0000:;\u0005t\u0000\u0000;<\u0005i\u0000\u0000"+
168
- "<=\u0005o\u0000\u0000=>\u0005n\u0000\u0000>\u0004\u0001\u0000\u0000\u0000"+
169
- "?@\u0005{\u0000\u0000@\u0006\u0001\u0000\u0000\u0000AB\u0005,\u0000\u0000"+
170
- "B\b\u0001\u0000\u0000\u0000CD\u0005}\u0000\u0000D\n\u0001\u0000\u0000"+
171
- "\u0000EF\u0005p\u0000\u0000FG\u0005r\u0000\u0000GH\u0005o\u0000\u0000"+
172
- "HI\u0005p\u0000\u0000IJ\u0005e\u0000\u0000JK\u0005r\u0000\u0000KL\u0005"+
173
- "t\u0000\u0000LM\u0005y\u0000\u0000M\f\u0001\u0000\u0000\u0000NO\u0005"+
174
- ":\u0000\u0000O\u000e\u0001\u0000\u0000\u0000PQ\u0005(\u0000\u0000Q\u0010"+
175
- "\u0001\u0000\u0000\u0000RS\u0005)\u0000\u0000S\u0012\u0001\u0000\u0000"+
176
- "\u0000TU\u0005r\u0000\u0000UV\u0005e\u0000\u0000VW\u0005f\u0000\u0000"+
177
- "WX\u0005e\u0000\u0000XY\u0005r\u0000\u0000YZ\u0005e\u0000\u0000Z[\u0005"+
178
- "n\u0000\u0000[\\\u0005c\u0000\u0000\\]\u0005e\u0000\u0000]\u0014\u0001"+
179
- "\u0000\u0000\u0000^_\u0005u\u0000\u0000_`\u0005n\u0000\u0000`a\u0005i"+
180
- "\u0000\u0000ab\u0005q\u0000\u0000bc\u0005u\u0000\u0000cd\u0005e\u0000"+
181
- "\u0000d\u0016\u0001\u0000\u0000\u0000ef\u0005i\u0000\u0000fg\u0005n\u0000"+
182
- "\u0000gh\u0005d\u0000\u0000hi\u0005e\u0000\u0000ij\u0005x\u0000\u0000"+
183
- "j\u0018\u0001\u0000\u0000\u0000kl\u0005[\u0000\u0000lm\u0005]\u0000\u0000"+
184
- "m\u001a\u0001\u0000\u0000\u0000no\u0005?\u0000\u0000o\u001c\u0001\u0000"+
185
- "\u0000\u0000pq\u0005S\u0000\u0000qr\u0005t\u0000\u0000rs\u0005r\u0000"+
186
- "\u0000st\u0005i\u0000\u0000tu\u0005n\u0000\u0000uv\u0005g\u0000\u0000"+
187
- "v\u001e\u0001\u0000\u0000\u0000wx\u0005N\u0000\u0000xy\u0005u\u0000\u0000"+
188
- "yz\u0005m\u0000\u0000z{\u0005b\u0000\u0000{|\u0005e\u0000\u0000|}\u0005"+
189
- "r\u0000\u0000} \u0001\u0000\u0000\u0000~\u007f\u0005B\u0000\u0000\u007f"+
190
- "\u0080\u0005o\u0000\u0000\u0080\u0081\u0005o\u0000\u0000\u0081\u0082\u0005"+
191
- "l\u0000\u0000\u0082\u0083\u0005e\u0000\u0000\u0083\u0084\u0005a\u0000"+
192
- "\u0000\u0084\u0085\u0005n\u0000\u0000\u0085\"\u0001\u0000\u0000\u0000"+
193
- "\u0086\u0087\u0005a\u0000\u0000\u0087\u0088\u0005n\u0000\u0000\u0088\u0089"+
194
- "\u0005y\u0000\u0000\u0089$\u0001\u0000\u0000\u0000\u008a\u008b\u0005O"+
195
- "\u0000\u0000\u008b\u008c\u0005b\u0000\u0000\u008c\u008d\u0005j\u0000\u0000"+
196
- "\u008d\u008e\u0005e\u0000\u0000\u008e\u008f\u0005c\u0000\u0000\u008f\u0090"+
197
- "\u0005t\u0000\u0000\u0090&\u0001\u0000\u0000\u0000\u0091\u0095\u0007\u0000"+
198
- "\u0000\u0000\u0092\u0094\u0007\u0001\u0000\u0000\u0093\u0092\u0001\u0000"+
199
- "\u0000\u0000\u0094\u0097\u0001\u0000\u0000\u0000\u0095\u0093\u0001\u0000"+
200
- "\u0000\u0000\u0095\u0096\u0001\u0000\u0000\u0000\u0096(\u0001\u0000\u0000"+
201
- "\u0000\u0097\u0095\u0001\u0000\u0000\u0000\u0098\u009c\u0007\u0002\u0000"+
202
- "\u0000\u0099\u009b\u0007\u0001\u0000\u0000\u009a\u0099\u0001\u0000\u0000"+
203
- "\u0000\u009b\u009e\u0001\u0000\u0000\u0000\u009c\u009a\u0001\u0000\u0000"+
204
- "\u0000\u009c\u009d\u0001\u0000\u0000\u0000\u009d*\u0001\u0000\u0000\u0000"+
205
- "\u009e\u009c\u0001\u0000\u0000\u0000\u009f\u00a1\u0007\u0003\u0000\u0000"+
206
- "\u00a0\u009f\u0001\u0000\u0000\u0000\u00a1\u00a2\u0001\u0000\u0000\u0000"+
207
- "\u00a2\u00a0\u0001\u0000\u0000\u0000\u00a2\u00a3\u0001\u0000\u0000\u0000"+
208
- "\u00a3\u00a4\u0001\u0000\u0000\u0000\u00a4\u00a5\u0006\u0015\u0000\u0000"+
209
- "\u00a5,\u0001\u0000\u0000\u0000\u0004\u0000\u0095\u009c\u00a2\u0001\u0006"+
210
- "\u0000\u0000";
123
+ "\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0002\u0001\u0002"+
124
+ "\u0001\u0003\u0001\u0003\u0001\u0004\u0001\u0004\u0001\u0005\u0001\u0005"+
125
+ "\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0005\u0001\u0005"+
126
+ "\u0001\u0005\u0001\u0006\u0001\u0006\u0001\u0007\u0001\u0007\u0001\b\u0001"+
127
+ "\b\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001\t\u0001"+
128
+ "\t\u0001\t\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001\n\u0001"+
129
+ "\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001\u000b\u0001"+
130
+ "\f\u0001\f\u0001\f\u0001\r\u0001\r\u0001\u000e\u0001\u000e\u0001\u000e"+
131
+ "\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000e\u0001\u000f\u0001\u000f"+
132
+ "\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u000f\u0001\u0010"+
133
+ "\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0010\u0001\u0010"+
134
+ "\u0001\u0010\u0001\u0011\u0001\u0011\u0001\u0011\u0001\u0011\u0001\u0012"+
135
+ "\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012\u0001\u0012"+
136
+ "\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0013\u0001\u0014"+
137
+ "\u0001\u0014\u0005\u0014\u009b\b\u0014\n\u0014\f\u0014\u009e\t\u0014\u0001"+
138
+ "\u0015\u0001\u0015\u0005\u0015\u00a2\b\u0015\n\u0015\f\u0015\u00a5\t\u0015"+
139
+ "\u0001\u0016\u0004\u0016\u00a8\b\u0016\u000b\u0016\f\u0016\u00a9\u0001"+
140
+ "\u0016\u0001\u0016\u0000\u0000\u0017\u0001\u0001\u0003\u0002\u0005\u0003"+
141
+ "\u0007\u0004\t\u0005\u000b\u0006\r\u0007\u000f\b\u0011\t\u0013\n\u0015"+
142
+ "\u000b\u0017\f\u0019\r\u001b\u000e\u001d\u000f\u001f\u0010!\u0011#\u0012"+
143
+ "%\u0013\'\u0014)\u0015+\u0016-\u0017\u0001\u0000\u0004\u0002\u0000__a"+
144
+ "z\u0004\u000009AZ__az\u0001\u0000AZ\u0003\u0000\t\n\r\r \u00af\u0000"+
145
+ "\u0001\u0001\u0000\u0000\u0000\u0000\u0003\u0001\u0000\u0000\u0000\u0000"+
146
+ "\u0005\u0001\u0000\u0000\u0000\u0000\u0007\u0001\u0000\u0000\u0000\u0000"+
147
+ "\t\u0001\u0000\u0000\u0000\u0000\u000b\u0001\u0000\u0000\u0000\u0000\r"+
148
+ "\u0001\u0000\u0000\u0000\u0000\u000f\u0001\u0000\u0000\u0000\u0000\u0011"+
149
+ "\u0001\u0000\u0000\u0000\u0000\u0013\u0001\u0000\u0000\u0000\u0000\u0015"+
150
+ "\u0001\u0000\u0000\u0000\u0000\u0017\u0001\u0000\u0000\u0000\u0000\u0019"+
151
+ "\u0001\u0000\u0000\u0000\u0000\u001b\u0001\u0000\u0000\u0000\u0000\u001d"+
152
+ "\u0001\u0000\u0000\u0000\u0000\u001f\u0001\u0000\u0000\u0000\u0000!\u0001"+
153
+ "\u0000\u0000\u0000\u0000#\u0001\u0000\u0000\u0000\u0000%\u0001\u0000\u0000"+
154
+ "\u0000\u0000\'\u0001\u0000\u0000\u0000\u0000)\u0001\u0000\u0000\u0000"+
155
+ "\u0000+\u0001\u0000\u0000\u0000\u0000-\u0001\u0000\u0000\u0000\u0001/"+
156
+ "\u0001\u0000\u0000\u0000\u00036\u0001\u0000\u0000\u0000\u0005A\u0001\u0000"+
157
+ "\u0000\u0000\u0007C\u0001\u0000\u0000\u0000\tE\u0001\u0000\u0000\u0000"+
158
+ "\u000bG\u0001\u0000\u0000\u0000\rP\u0001\u0000\u0000\u0000\u000fR\u0001"+
159
+ "\u0000\u0000\u0000\u0011T\u0001\u0000\u0000\u0000\u0013V\u0001\u0000\u0000"+
160
+ "\u0000\u0015`\u0001\u0000\u0000\u0000\u0017g\u0001\u0000\u0000\u0000\u0019"+
161
+ "m\u0001\u0000\u0000\u0000\u001bp\u0001\u0000\u0000\u0000\u001dr\u0001"+
162
+ "\u0000\u0000\u0000\u001fy\u0001\u0000\u0000\u0000!\u0080\u0001\u0000\u0000"+
163
+ "\u0000#\u0088\u0001\u0000\u0000\u0000%\u008c\u0001\u0000\u0000\u0000\'"+
164
+ "\u0093\u0001\u0000\u0000\u0000)\u0098\u0001\u0000\u0000\u0000+\u009f\u0001"+
165
+ "\u0000\u0000\u0000-\u00a7\u0001\u0000\u0000\u0000/0\u0005m\u0000\u0000"+
166
+ "01\u0005o\u0000\u000012\u0005d\u0000\u000023\u0005u\u0000\u000034\u0005"+
167
+ "l\u0000\u000045\u0005e\u0000\u00005\u0002\u0001\u0000\u0000\u000067\u0005"+
168
+ "c\u0000\u000078\u0005o\u0000\u000089\u0005l\u0000\u00009:\u0005l\u0000"+
169
+ "\u0000:;\u0005e\u0000\u0000;<\u0005c\u0000\u0000<=\u0005t\u0000\u0000"+
170
+ "=>\u0005i\u0000\u0000>?\u0005o\u0000\u0000?@\u0005n\u0000\u0000@\u0004"+
171
+ "\u0001\u0000\u0000\u0000AB\u0005{\u0000\u0000B\u0006\u0001\u0000\u0000"+
172
+ "\u0000CD\u0005,\u0000\u0000D\b\u0001\u0000\u0000\u0000EF\u0005}\u0000"+
173
+ "\u0000F\n\u0001\u0000\u0000\u0000GH\u0005p\u0000\u0000HI\u0005r\u0000"+
174
+ "\u0000IJ\u0005o\u0000\u0000JK\u0005p\u0000\u0000KL\u0005e\u0000\u0000"+
175
+ "LM\u0005r\u0000\u0000MN\u0005t\u0000\u0000NO\u0005y\u0000\u0000O\f\u0001"+
176
+ "\u0000\u0000\u0000PQ\u0005:\u0000\u0000Q\u000e\u0001\u0000\u0000\u0000"+
177
+ "RS\u0005(\u0000\u0000S\u0010\u0001\u0000\u0000\u0000TU\u0005)\u0000\u0000"+
178
+ "U\u0012\u0001\u0000\u0000\u0000VW\u0005r\u0000\u0000WX\u0005e\u0000\u0000"+
179
+ "XY\u0005f\u0000\u0000YZ\u0005e\u0000\u0000Z[\u0005r\u0000\u0000[\\\u0005"+
180
+ "e\u0000\u0000\\]\u0005n\u0000\u0000]^\u0005c\u0000\u0000^_\u0005e\u0000"+
181
+ "\u0000_\u0014\u0001\u0000\u0000\u0000`a\u0005u\u0000\u0000ab\u0005n\u0000"+
182
+ "\u0000bc\u0005i\u0000\u0000cd\u0005q\u0000\u0000de\u0005u\u0000\u0000"+
183
+ "ef\u0005e\u0000\u0000f\u0016\u0001\u0000\u0000\u0000gh\u0005i\u0000\u0000"+
184
+ "hi\u0005n\u0000\u0000ij\u0005d\u0000\u0000jk\u0005e\u0000\u0000kl\u0005"+
185
+ "x\u0000\u0000l\u0018\u0001\u0000\u0000\u0000mn\u0005[\u0000\u0000no\u0005"+
186
+ "]\u0000\u0000o\u001a\u0001\u0000\u0000\u0000pq\u0005?\u0000\u0000q\u001c"+
187
+ "\u0001\u0000\u0000\u0000rs\u0005S\u0000\u0000st\u0005t\u0000\u0000tu\u0005"+
188
+ "r\u0000\u0000uv\u0005i\u0000\u0000vw\u0005n\u0000\u0000wx\u0005g\u0000"+
189
+ "\u0000x\u001e\u0001\u0000\u0000\u0000yz\u0005N\u0000\u0000z{\u0005u\u0000"+
190
+ "\u0000{|\u0005m\u0000\u0000|}\u0005b\u0000\u0000}~\u0005e\u0000\u0000"+
191
+ "~\u007f\u0005r\u0000\u0000\u007f \u0001\u0000\u0000\u0000\u0080\u0081"+
192
+ "\u0005B\u0000\u0000\u0081\u0082\u0005o\u0000\u0000\u0082\u0083\u0005o"+
193
+ "\u0000\u0000\u0083\u0084\u0005l\u0000\u0000\u0084\u0085\u0005e\u0000\u0000"+
194
+ "\u0085\u0086\u0005a\u0000\u0000\u0086\u0087\u0005n\u0000\u0000\u0087\""+
195
+ "\u0001\u0000\u0000\u0000\u0088\u0089\u0005a\u0000\u0000\u0089\u008a\u0005"+
196
+ "n\u0000\u0000\u008a\u008b\u0005y\u0000\u0000\u008b$\u0001\u0000\u0000"+
197
+ "\u0000\u008c\u008d\u0005O\u0000\u0000\u008d\u008e\u0005b\u0000\u0000\u008e"+
198
+ "\u008f\u0005j\u0000\u0000\u008f\u0090\u0005e\u0000\u0000\u0090\u0091\u0005"+
199
+ "c\u0000\u0000\u0091\u0092\u0005t\u0000\u0000\u0092&\u0001\u0000\u0000"+
200
+ "\u0000\u0093\u0094\u0005D\u0000\u0000\u0094\u0095\u0005a\u0000\u0000\u0095"+
201
+ "\u0096\u0005t\u0000\u0000\u0096\u0097\u0005e\u0000\u0000\u0097(\u0001"+
202
+ "\u0000\u0000\u0000\u0098\u009c\u0007\u0000\u0000\u0000\u0099\u009b\u0007"+
203
+ "\u0001\u0000\u0000\u009a\u0099\u0001\u0000\u0000\u0000\u009b\u009e\u0001"+
204
+ "\u0000\u0000\u0000\u009c\u009a\u0001\u0000\u0000\u0000\u009c\u009d\u0001"+
205
+ "\u0000\u0000\u0000\u009d*\u0001\u0000\u0000\u0000\u009e\u009c\u0001\u0000"+
206
+ "\u0000\u0000\u009f\u00a3\u0007\u0002\u0000\u0000\u00a0\u00a2\u0007\u0001"+
207
+ "\u0000\u0000\u00a1\u00a0\u0001\u0000\u0000\u0000\u00a2\u00a5\u0001\u0000"+
208
+ "\u0000\u0000\u00a3\u00a1\u0001\u0000\u0000\u0000\u00a3\u00a4\u0001\u0000"+
209
+ "\u0000\u0000\u00a4,\u0001\u0000\u0000\u0000\u00a5\u00a3\u0001\u0000\u0000"+
210
+ "\u0000\u00a6\u00a8\u0007\u0003\u0000\u0000\u00a7\u00a6\u0001\u0000\u0000"+
211
+ "\u0000\u00a8\u00a9\u0001\u0000\u0000\u0000\u00a9\u00a7\u0001\u0000\u0000"+
212
+ "\u0000\u00a9\u00aa\u0001\u0000\u0000\u0000\u00aa\u00ab\u0001\u0000\u0000"+
213
+ "\u0000\u00ab\u00ac\u0006\u0016\u0000\u0000\u00ac.\u0001\u0000\u0000\u0000"+
214
+ "\u0004\u0000\u009c\u00a3\u00a9\u0001\u0006\u0000\u0000";
211
215
  public static final ATN _ATN =
212
216
  new ATNDeserializer().deserialize(_serializedATN.toCharArray());
213
217
  static {
@@ -17,9 +17,10 @@ T__15=16
17
17
  T__16=17
18
18
  T__17=18
19
19
  T__18=19
20
- IDENTIFIER=20
21
- CAPITAL_IDENTIFIER=21
22
- WS=22
20
+ T__19=20
21
+ IDENTIFIER=21
22
+ CAPITAL_IDENTIFIER=22
23
+ WS=23
23
24
  'module'=1
24
25
  'collection'=2
25
26
  '{'=3
@@ -39,3 +40,4 @@ WS=22
39
40
  'Boolean'=17
40
41
  'any'=18
41
42
  'Object'=19
43
+ 'Date'=20
@@ -18,7 +18,7 @@ public class BlendMongoParser extends Parser {
18
18
  public static final int
19
19
  T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9,
20
20
  T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17,
21
- T__17=18, T__18=19, IDENTIFIER=20, CAPITAL_IDENTIFIER=21, WS=22;
21
+ T__17=18, T__18=19, T__19=20, IDENTIFIER=21, CAPITAL_IDENTIFIER=22, WS=23;
22
22
  public static final int
23
23
  RULE_program = 0, RULE_moduleDefinition = 1, RULE_collectionDefinition = 2,
24
24
  RULE_property = 3, RULE_propertyChars = 4, RULE_reference = 5, RULE_mongoChars = 6,
@@ -35,14 +35,14 @@ public class BlendMongoParser extends Parser {
35
35
  return new String[] {
36
36
  null, "'module'", "'collection'", "'{'", "','", "'}'", "'property'",
37
37
  "':'", "'('", "')'", "'reference'", "'unique'", "'index'", "'[]'", "'?'",
38
- "'String'", "'Number'", "'Boolean'", "'any'", "'Object'"
38
+ "'String'", "'Number'", "'Boolean'", "'any'", "'Object'", "'Date'"
39
39
  };
40
40
  }
41
41
  private static final String[] _LITERAL_NAMES = makeLiteralNames();
42
42
  private static String[] makeSymbolicNames() {
43
43
  return new String[] {
44
44
  null, null, null, null, null, null, null, null, null, null, null, null,
45
- null, null, null, null, null, null, null, null, "IDENTIFIER", "CAPITAL_IDENTIFIER",
45
+ null, null, null, null, null, null, null, null, null, "IDENTIFIER", "CAPITAL_IDENTIFIER",
46
46
  "WS"
47
47
  };
48
48
  }
@@ -583,7 +583,7 @@ public class BlendMongoParser extends Parser {
583
583
  {
584
584
  setState(91);
585
585
  _la = _input.LA(1);
586
- if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 1015808L) != 0)) ) {
586
+ if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & 2064384L) != 0)) ) {
587
587
  _errHandler.recoverInline(this);
588
588
  }
589
589
  else {
@@ -605,7 +605,7 @@ public class BlendMongoParser extends Parser {
605
605
  }
606
606
 
607
607
  public static final String _serializedATN =
608
- "\u0004\u0001\u0016^\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001\u0002"+
608
+ "\u0004\u0001\u0017^\u0002\u0000\u0007\u0000\u0002\u0001\u0007\u0001\u0002"+
609
609
  "\u0002\u0007\u0002\u0002\u0003\u0007\u0003\u0002\u0004\u0007\u0004\u0002"+
610
610
  "\u0005\u0007\u0005\u0002\u0006\u0007\u0006\u0002\u0007\u0007\u0007\u0002"+
611
611
  "\b\u0007\b\u0002\t\u0007\t\u0001\u0000\u0001\u0000\u0004\u0000\u0017\b"+
@@ -621,7 +621,7 @@ public class BlendMongoParser extends Parser {
621
621
  "\u0007\u0001\u0007\u0001\u0007\u0001\u0007\u0001\u0007\u0001\u0007\u0001"+
622
622
  "\u0007\u0003\u0007X\b\u0007\u0001\b\u0001\b\u0001\t\u0001\t\u0001\t\u0000"+
623
623
  "\u0000\n\u0000\u0002\u0004\u0006\b\n\f\u000e\u0010\u0012\u0000\u0002\u0001"+
624
- "\u0000\u000b\f\u0001\u0000\u000f\u0013\\\u0000\u0014\u0001\u0000\u0000"+
624
+ "\u0000\u000b\f\u0001\u0000\u000f\u0014\\\u0000\u0014\u0001\u0000\u0000"+
625
625
  "\u0000\u0002\u001a\u0001\u0000\u0000\u0000\u0004\u001d\u0001\u0000\u0000"+
626
626
  "\u0000\u00065\u0001\u0000\u0000\u0000\b<\u0001\u0000\u0000\u0000\nG\u0001"+
627
627
  "\u0000\u0000\u0000\fN\u0001\u0000\u0000\u0000\u000eW\u0001\u0000\u0000"+
@@ -630,8 +630,8 @@ public class BlendMongoParser extends Parser {
630
630
  "\u0015\u0001\u0000\u0000\u0000\u0017\u0018\u0001\u0000\u0000\u0000\u0018"+
631
631
  "\u0016\u0001\u0000\u0000\u0000\u0018\u0019\u0001\u0000\u0000\u0000\u0019"+
632
632
  "\u0001\u0001\u0000\u0000\u0000\u001a\u001b\u0005\u0001\u0000\u0000\u001b"+
633
- "\u001c\u0005\u0015\u0000\u0000\u001c\u0003\u0001\u0000\u0000\u0000\u001d"+
634
- "\u001e\u0005\u0002\u0000\u0000\u001e\u001f\u0005\u0015\u0000\u0000\u001f"+
633
+ "\u001c\u0005\u0016\u0000\u0000\u001c\u0003\u0001\u0000\u0000\u0000\u001d"+
634
+ "\u001e\u0005\u0002\u0000\u0000\u001e\u001f\u0005\u0016\u0000\u0000\u001f"+
635
635
  " \u0005\u0003\u0000\u0000 %\u0003\u0006\u0003\u0000!\"\u0005\u0004\u0000"+
636
636
  "\u0000\"$\u0003\u0006\u0003\u0000#!\u0001\u0000\u0000\u0000$\'\u0001\u0000"+
637
637
  "\u0000\u0000%#\u0001\u0000\u0000\u0000%&\u0001\u0000\u0000\u0000&1\u0001"+
@@ -641,15 +641,15 @@ public class BlendMongoParser extends Parser {
641
641
  "\u0000./\u0001\u0000\u0000\u0000/2\u0001\u0000\u0000\u00000.\u0001\u0000"+
642
642
  "\u0000\u00001(\u0001\u0000\u0000\u000012\u0001\u0000\u0000\u000023\u0001"+
643
643
  "\u0000\u0000\u000034\u0005\u0005\u0000\u00004\u0005\u0001\u0000\u0000"+
644
- "\u000056\u0005\u0006\u0000\u000067\u0005\u0014\u0000\u000078\u0005\u0007"+
644
+ "\u000056\u0005\u0006\u0000\u000067\u0005\u0015\u0000\u000078\u0005\u0007"+
645
645
  "\u0000\u00008:\u0003\u000e\u0007\u00009;\u0003\b\u0004\u0000:9\u0001\u0000"+
646
646
  "\u0000\u0000:;\u0001\u0000\u0000\u0000;\u0007\u0001\u0000\u0000\u0000"+
647
647
  "<=\u0005\b\u0000\u0000=B\u0003\f\u0006\u0000>?\u0005\u0004\u0000\u0000"+
648
648
  "?A\u0003\f\u0006\u0000@>\u0001\u0000\u0000\u0000AD\u0001\u0000\u0000\u0000"+
649
649
  "B@\u0001\u0000\u0000\u0000BC\u0001\u0000\u0000\u0000CE\u0001\u0000\u0000"+
650
650
  "\u0000DB\u0001\u0000\u0000\u0000EF\u0005\t\u0000\u0000F\t\u0001\u0000"+
651
- "\u0000\u0000GH\u0005\n\u0000\u0000HI\u0005\u0014\u0000\u0000IJ\u0005\u0007"+
652
- "\u0000\u0000JL\u0005\u0015\u0000\u0000KM\u0003\b\u0004\u0000LK\u0001\u0000"+
651
+ "\u0000\u0000GH\u0005\n\u0000\u0000HI\u0005\u0015\u0000\u0000IJ\u0005\u0007"+
652
+ "\u0000\u0000JL\u0005\u0016\u0000\u0000KM\u0003\b\u0004\u0000LK\u0001\u0000"+
653
653
  "\u0000\u0000LM\u0001\u0000\u0000\u0000M\u000b\u0001\u0000\u0000\u0000"+
654
654
  "NO\u0007\u0000\u0000\u0000O\r\u0001\u0000\u0000\u0000PX\u0003\u0010\b"+
655
655
  "\u0000QR\u0003\u0010\b\u0000RS\u0005\r\u0000\u0000SX\u0001\u0000\u0000"+
@@ -62,4 +62,4 @@ mode names:
62
62
  DEFAULT_MODE
63
63
 
64
64
  atn:
65
- [4, 0, 16, 120, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 12, 1, 12, 5, 12, 93, 8, 12, 10, 12, 12, 12, 96, 9, 12, 1, 12, 1, 12, 1, 13, 1, 13, 5, 13, 102, 8, 13, 10, 13, 12, 13, 105, 9, 13, 1, 14, 1, 14, 5, 14, 109, 8, 14, 10, 14, 12, 14, 112, 9, 14, 1, 15, 4, 15, 115, 8, 15, 11, 15, 12, 15, 116, 1, 15, 1, 15, 0, 0, 16, 1, 1, 3, 2, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16, 1, 0, 5, 4, 0, 47, 57, 65, 90, 95, 95, 97, 122, 2, 0, 95, 95, 97, 122, 4, 0, 48, 57, 65, 90, 95, 95, 97, 122, 1, 0, 65, 90, 3, 0, 9, 10, 13, 13, 32, 32, 123, 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 5, 1, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0, 13, 1, 0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0, 21, 1, 0, 0, 0, 0, 23, 1, 0, 0, 0, 0, 25, 1, 0, 0, 0, 0, 27, 1, 0, 0, 0, 0, 29, 1, 0, 0, 0, 0, 31, 1, 0, 0, 0, 1, 33, 1, 0, 0, 0, 3, 40, 1, 0, 0, 0, 5, 47, 1, 0, 0, 0, 7, 49, 1, 0, 0, 0, 9, 55, 1, 0, 0, 0, 11, 65, 1, 0, 0, 0, 13, 72, 1, 0, 0, 0, 15, 74, 1, 0, 0, 0, 17, 76, 1, 0, 0, 0, 19, 78, 1, 0, 0, 0, 21, 80, 1, 0, 0, 0, 23, 85, 1, 0, 0, 0, 25, 90, 1, 0, 0, 0, 27, 99, 1, 0, 0, 0, 29, 106, 1, 0, 0, 0, 31, 114, 1, 0, 0, 0, 33, 34, 5, 109, 0, 0, 34, 35, 5, 111, 0, 0, 35, 36, 5, 100, 0, 0, 36, 37, 5, 117, 0, 0, 37, 38, 5, 108, 0, 0, 38, 39, 5, 101, 0, 0, 39, 2, 1, 0, 0, 0, 40, 41, 5, 115, 0, 0, 41, 42, 5, 99, 0, 0, 42, 43, 5, 114, 0, 0, 43, 44, 5, 101, 0, 0, 44, 45, 5, 101, 0, 0, 45, 46, 5, 110, 0, 0, 46, 4, 1, 0, 0, 0, 47, 48, 5, 44, 0, 0, 48, 6, 1, 0, 0, 0, 49, 50, 5, 117, 0, 0, 50, 51, 5, 110, 0, 0, 51, 52, 5, 100, 0, 0, 52, 53, 5, 101, 0, 0, 53, 54, 5, 114, 0, 0, 54, 8, 1, 0, 0, 0, 55, 56, 5, 99, 0, 0, 56, 57, 5, 111, 0, 0, 57, 58, 5, 109, 0, 0, 58, 59, 5, 112, 0, 0, 59, 60, 5, 111, 0, 0, 60, 61, 5, 110, 0, 0, 61, 62, 5, 101, 0, 0, 62, 63, 5, 110, 0, 0, 63, 64, 5, 116, 0, 0, 64, 10, 1, 0, 0, 0, 65, 66, 5, 108, 0, 0, 66, 67, 5, 97, 0, 0, 67, 68, 5, 121, 0, 0, 68, 69, 5, 111, 0, 0, 69, 70, 5, 117, 0, 0, 70, 71, 5, 116, 0, 0, 71, 12, 1, 0, 0, 0, 72, 73, 5, 40, 0, 0, 73, 14, 1, 0, 0, 0, 74, 75, 5, 41, 0, 0, 75, 16, 1, 0, 0, 0, 76, 77, 5, 123, 0, 0, 77, 18, 1, 0, 0, 0, 78, 79, 5, 125, 0, 0, 79, 20, 1, 0, 0, 0, 80, 81, 5, 112, 0, 0, 81, 82, 5, 97, 0, 0, 82, 83, 5, 103, 0, 0, 83, 84, 5, 101, 0, 0, 84, 22, 1, 0, 0, 0, 85, 86, 5, 118, 0, 0, 86, 87, 5, 105, 0, 0, 87, 88, 5, 101, 0, 0, 88, 89, 5, 119, 0, 0, 89, 24, 1, 0, 0, 0, 90, 94, 5, 34, 0, 0, 91, 93, 7, 0, 0, 0, 92, 91, 1, 0, 0, 0, 93, 96, 1, 0, 0, 0, 94, 92, 1, 0, 0, 0, 94, 95, 1, 0, 0, 0, 95, 97, 1, 0, 0, 0, 96, 94, 1, 0, 0, 0, 97, 98, 5, 34, 0, 0, 98, 26, 1, 0, 0, 0, 99, 103, 7, 1, 0, 0, 100, 102, 7, 2, 0, 0, 101, 100, 1, 0, 0, 0, 102, 105, 1, 0, 0, 0, 103, 101, 1, 0, 0, 0, 103, 104, 1, 0, 0, 0, 104, 28, 1, 0, 0, 0, 105, 103, 1, 0, 0, 0, 106, 110, 7, 3, 0, 0, 107, 109, 7, 2, 0, 0, 108, 107, 1, 0, 0, 0, 109, 112, 1, 0, 0, 0, 110, 108, 1, 0, 0, 0, 110, 111, 1, 0, 0, 0, 111, 30, 1, 0, 0, 0, 112, 110, 1, 0, 0, 0, 113, 115, 7, 4, 0, 0, 114, 113, 1, 0, 0, 0, 115, 116, 1, 0, 0, 0, 116, 114, 1, 0, 0, 0, 116, 117, 1, 0, 0, 0, 117, 118, 1, 0, 0, 0, 118, 119, 6, 15, 0, 0, 119, 32, 1, 0, 0, 0, 5, 0, 94, 103, 110, 116, 1, 6, 0, 0]
65
+ [4, 0, 16, 120, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 9, 1, 9, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 12, 1, 12, 5, 12, 93, 8, 12, 10, 12, 12, 12, 96, 9, 12, 1, 12, 1, 12, 1, 13, 1, 13, 5, 13, 102, 8, 13, 10, 13, 12, 13, 105, 9, 13, 1, 14, 1, 14, 5, 14, 109, 8, 14, 10, 14, 12, 14, 112, 9, 14, 1, 15, 4, 15, 115, 8, 15, 11, 15, 12, 15, 116, 1, 15, 1, 15, 0, 0, 16, 1, 1, 3, 2, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16, 1, 0, 5, 4, 0, 47, 58, 65, 90, 95, 95, 97, 122, 2, 0, 95, 95, 97, 122, 4, 0, 48, 57, 65, 90, 95, 95, 97, 122, 1, 0, 65, 90, 3, 0, 9, 10, 13, 13, 32, 32, 123, 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 5, 1, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0, 13, 1, 0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0, 21, 1, 0, 0, 0, 0, 23, 1, 0, 0, 0, 0, 25, 1, 0, 0, 0, 0, 27, 1, 0, 0, 0, 0, 29, 1, 0, 0, 0, 0, 31, 1, 0, 0, 0, 1, 33, 1, 0, 0, 0, 3, 40, 1, 0, 0, 0, 5, 47, 1, 0, 0, 0, 7, 49, 1, 0, 0, 0, 9, 55, 1, 0, 0, 0, 11, 65, 1, 0, 0, 0, 13, 72, 1, 0, 0, 0, 15, 74, 1, 0, 0, 0, 17, 76, 1, 0, 0, 0, 19, 78, 1, 0, 0, 0, 21, 80, 1, 0, 0, 0, 23, 85, 1, 0, 0, 0, 25, 90, 1, 0, 0, 0, 27, 99, 1, 0, 0, 0, 29, 106, 1, 0, 0, 0, 31, 114, 1, 0, 0, 0, 33, 34, 5, 109, 0, 0, 34, 35, 5, 111, 0, 0, 35, 36, 5, 100, 0, 0, 36, 37, 5, 117, 0, 0, 37, 38, 5, 108, 0, 0, 38, 39, 5, 101, 0, 0, 39, 2, 1, 0, 0, 0, 40, 41, 5, 115, 0, 0, 41, 42, 5, 99, 0, 0, 42, 43, 5, 114, 0, 0, 43, 44, 5, 101, 0, 0, 44, 45, 5, 101, 0, 0, 45, 46, 5, 110, 0, 0, 46, 4, 1, 0, 0, 0, 47, 48, 5, 44, 0, 0, 48, 6, 1, 0, 0, 0, 49, 50, 5, 117, 0, 0, 50, 51, 5, 110, 0, 0, 51, 52, 5, 100, 0, 0, 52, 53, 5, 101, 0, 0, 53, 54, 5, 114, 0, 0, 54, 8, 1, 0, 0, 0, 55, 56, 5, 99, 0, 0, 56, 57, 5, 111, 0, 0, 57, 58, 5, 109, 0, 0, 58, 59, 5, 112, 0, 0, 59, 60, 5, 111, 0, 0, 60, 61, 5, 110, 0, 0, 61, 62, 5, 101, 0, 0, 62, 63, 5, 110, 0, 0, 63, 64, 5, 116, 0, 0, 64, 10, 1, 0, 0, 0, 65, 66, 5, 108, 0, 0, 66, 67, 5, 97, 0, 0, 67, 68, 5, 121, 0, 0, 68, 69, 5, 111, 0, 0, 69, 70, 5, 117, 0, 0, 70, 71, 5, 116, 0, 0, 71, 12, 1, 0, 0, 0, 72, 73, 5, 40, 0, 0, 73, 14, 1, 0, 0, 0, 74, 75, 5, 41, 0, 0, 75, 16, 1, 0, 0, 0, 76, 77, 5, 123, 0, 0, 77, 18, 1, 0, 0, 0, 78, 79, 5, 125, 0, 0, 79, 20, 1, 0, 0, 0, 80, 81, 5, 112, 0, 0, 81, 82, 5, 97, 0, 0, 82, 83, 5, 103, 0, 0, 83, 84, 5, 101, 0, 0, 84, 22, 1, 0, 0, 0, 85, 86, 5, 118, 0, 0, 86, 87, 5, 105, 0, 0, 87, 88, 5, 101, 0, 0, 88, 89, 5, 119, 0, 0, 89, 24, 1, 0, 0, 0, 90, 94, 5, 34, 0, 0, 91, 93, 7, 0, 0, 0, 92, 91, 1, 0, 0, 0, 93, 96, 1, 0, 0, 0, 94, 92, 1, 0, 0, 0, 94, 95, 1, 0, 0, 0, 95, 97, 1, 0, 0, 0, 96, 94, 1, 0, 0, 0, 97, 98, 5, 34, 0, 0, 98, 26, 1, 0, 0, 0, 99, 103, 7, 1, 0, 0, 100, 102, 7, 2, 0, 0, 101, 100, 1, 0, 0, 0, 102, 105, 1, 0, 0, 0, 103, 101, 1, 0, 0, 0, 103, 104, 1, 0, 0, 0, 104, 28, 1, 0, 0, 0, 105, 103, 1, 0, 0, 0, 106, 110, 7, 3, 0, 0, 107, 109, 7, 2, 0, 0, 108, 107, 1, 0, 0, 0, 109, 112, 1, 0, 0, 0, 110, 108, 1, 0, 0, 0, 110, 111, 1, 0, 0, 0, 111, 30, 1, 0, 0, 0, 112, 110, 1, 0, 0, 0, 113, 115, 7, 4, 0, 0, 114, 113, 1, 0, 0, 0, 115, 116, 1, 0, 0, 0, 116, 114, 1, 0, 0, 0, 116, 117, 1, 0, 0, 0, 117, 118, 1, 0, 0, 0, 118, 119, 6, 15, 0, 0, 119, 32, 1, 0, 0, 0, 5, 0, 94, 103, 110, 116, 1, 6, 0, 0]
@@ -128,7 +128,7 @@ public class BlendReactLexer extends Lexer {
128
128
  "\u000b\u000f\f\u000ft\u0001\u000f\u0001\u000f\u0000\u0000\u0010\u0001"+
129
129
  "\u0001\u0003\u0002\u0005\u0003\u0007\u0004\t\u0005\u000b\u0006\r\u0007"+
130
130
  "\u000f\b\u0011\t\u0013\n\u0015\u000b\u0017\f\u0019\r\u001b\u000e\u001d"+
131
- "\u000f\u001f\u0010\u0001\u0000\u0005\u0004\u0000/9AZ__az\u0002\u0000_"+
131
+ "\u000f\u001f\u0010\u0001\u0000\u0005\u0004\u0000/:AZ__az\u0002\u0000_"+
132
132
  "_az\u0004\u000009AZ__az\u0001\u0000AZ\u0003\u0000\t\n\r\r {\u0000\u0001"+
133
133
  "\u0001\u0000\u0000\u0000\u0000\u0003\u0001\u0000\u0000\u0000\u0000\u0005"+
134
134
  "\u0001\u0000\u0000\u0000\u0000\u0007\u0001\u0000\u0000\u0000\u0000\t\u0001"+
@@ -0,0 +1,26 @@
1
+ grammar BlendExpress;
2
+ program: moduleDefinition sectionDefinition*;
3
+ sectionDefinition: 'section' CAPITAL_IDENTIFIER '{' apiDefinition* '}';
4
+ moduleDefinition: 'module' CAPITAL_IDENTIFIER;
5
+ apiDefinition: 'api' IDENTIFIER '(' HTTP_METHOD ')' '{' authenticated? inputDefinition? outputDefinition? '}';
6
+
7
+ authenticated: 'authenticated';
8
+ inputDefinition: 'input(' field (',' field)* ')';
9
+ outputDefinition: 'output(' field (',' field)* ')' | 'output(' directOutputDefenition ')';
10
+ directOutputDefenition: type;
11
+
12
+ field: IDENTIFIER ':' type;
13
+ type: primitiveType
14
+ | primitiveType '[]'
15
+ | primitiveType '?'
16
+ | CAPITAL_IDENTIFIER '->' CAPITAL_IDENTIFIER
17
+ | CAPITAL_IDENTIFIER '->' CAPITAL_IDENTIFIER '?'
18
+ | CAPITAL_IDENTIFIER '->' CAPITAL_IDENTIFIER '[]';
19
+
20
+ primitiveType: 'string' | 'number' | 'boolean' | 'any' | 'object';
21
+
22
+ HTTP_METHOD: 'GET' | 'POST'|'DELETE' | 'PUT';
23
+ IDENTIFIER: [a-z_][a-zA-Z0-9_]*;
24
+ CAPITAL_IDENTIFIER: [A-Z][a-zA-Z0-9_]*;
25
+
26
+ WS: [ \t\r\n]+ -> skip;
@@ -17,7 +17,7 @@ type: baseType
17
17
 
18
18
  baseType: primitiveType;
19
19
 
20
- primitiveType: 'String' | 'Number' | 'Boolean' | 'any' | 'Object';
20
+ primitiveType: 'String' | 'Number' | 'Boolean' | 'any' | 'Object' | 'Date';
21
21
 
22
22
  IDENTIFIER: [a-z_][a-zA-Z0-9_]*;
23
23
  CAPITAL_IDENTIFIER: [A-Z][a-zA-Z0-9_]*;
@@ -10,7 +10,7 @@ componentDefenition: 'component' CAPITAL_IDENTIFIER (',' CAPITAL_IDENTIFIER)* 'u
10
10
  layoutDefinition: 'layout' CAPITAL_IDENTIFIER '(' PATH_IDENTIFIER ')' '{' pageDefinition* layoutDefinition* '}';
11
11
  pageDefinition: 'page' CAPITAL_IDENTIFIER '(' PATH_IDENTIFIER ')' 'view' '(' CAPITAL_IDENTIFIER ')';
12
12
 
13
- PATH_IDENTIFIER: '"' [a-zA-Z0-9_/]* '"';
13
+ PATH_IDENTIFIER: '"' [a-zA-Z0-9_/:]* '"';
14
14
  IDENTIFIER: [a-z_][a-zA-Z0-9_]*;
15
15
  CAPITAL_IDENTIFIER: [A-Z][a-zA-Z0-9_]*;
16
16
  WS: [ \t\r\n]+ -> skip;