@allgemein/mango-expressions 1.3.3 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/AExpr.d.ts +11 -0
  2. package/AExpr.js +37 -0
  3. package/AExpr.js.map +1 -0
  4. package/Constants.d.ts +3 -0
  5. package/Constants.js +2 -5
  6. package/Constants.js.map +1 -1
  7. package/IWalker.d.ts +19 -0
  8. package/IWalker.js +2 -0
  9. package/IWalker.js.map +1 -0
  10. package/README.md +69 -1
  11. package/_Expr.d.ts +1 -0
  12. package/_Expr.js +52 -0
  13. package/_Expr.js.map +1 -0
  14. package/ast/AbstractValue.d.ts +7 -0
  15. package/ast/AbstractValue.js +27 -0
  16. package/ast/AbstractValue.js.map +1 -0
  17. package/ast/Bindings.d.ts +1 -2
  18. package/ast/Bindings.js +1 -5
  19. package/ast/Bindings.js.map +1 -1
  20. package/ast/Constan.d.ts +11 -0
  21. package/ast/Constan.js +2 -0
  22. package/ast/Constan.js.map +1 -0
  23. package/ast/Context.js +8 -12
  24. package/ast/Context.js.map +1 -1
  25. package/ast/Expr.d.ts +23 -0
  26. package/ast/Expr.js +90 -0
  27. package/ast/Expr.js.map +1 -0
  28. package/ast/IExpr.d.ts +16 -0
  29. package/ast/IExpr.js +2 -0
  30. package/ast/IExpr.js.map +1 -0
  31. package/ast/IParser.d.ts +14 -0
  32. package/ast/IParser.js +2 -0
  33. package/ast/IParser.js.map +1 -0
  34. package/ast/IStackEntry.d.ts +13 -0
  35. package/ast/IStackEntry.js +2 -0
  36. package/ast/IStackEntry.js.map +1 -0
  37. package/ast/JsonParser.d.ts +25 -0
  38. package/ast/JsonParser.js +60 -0
  39. package/ast/JsonParser.js.map +1 -0
  40. package/ast/KeyDesc.d.ts +2 -4
  41. package/ast/KeyDesc.js +4 -9
  42. package/ast/KeyDesc.js.map +1 -1
  43. package/ast/MultiArgs.js +1 -5
  44. package/ast/MultiArgs.js.map +1 -1
  45. package/ast/PArray.d.ts +1 -10
  46. package/ast/PArray.js +67 -53
  47. package/ast/PArray.js.map +1 -1
  48. package/ast/PObject.d.ts +1 -17
  49. package/ast/PObject.js +130 -108
  50. package/ast/PObject.js.map +1 -1
  51. package/ast/RefDesc.d.ts +5 -0
  52. package/ast/RefDesc.js +12 -0
  53. package/ast/RefDesc.js.map +1 -0
  54. package/ast/Selector.d.ts +19 -5
  55. package/ast/Selector.js +31 -9
  56. package/ast/Selector.js.map +1 -1
  57. package/ast/StackEntry.d.ts +24 -0
  58. package/ast/StackEntry.js +121 -0
  59. package/ast/StackEntry.js.map +1 -0
  60. package/ast/StringParser.d.ts +16 -0
  61. package/ast/StringParser.js +303 -0
  62. package/ast/StringParser.js.map +1 -0
  63. package/ast/Unset.d.ts +2 -2
  64. package/ast/Unset.js +2 -6
  65. package/ast/Unset.js.map +1 -1
  66. package/ast/ValueDesc.d.ts +4 -0
  67. package/ast/ValueDesc.js +9 -0
  68. package/ast/ValueDesc.js.map +1 -0
  69. package/ast/functions.d.ts +1 -0
  70. package/ast/functions.js +8 -0
  71. package/ast/functions.js.map +1 -0
  72. package/browser.d.ts +52 -55
  73. package/browser.js +53 -117
  74. package/browser.js.map +1 -1
  75. package/errors/InvalidValueError.d.ts +4 -0
  76. package/errors/InvalidValueError.js +6 -0
  77. package/errors/InvalidValueError.js.map +1 -0
  78. package/errors/NotYetImplementedError.d.ts +3 -0
  79. package/errors/NotYetImplementedError.js +6 -0
  80. package/errors/NotYetImplementedError.js.map +1 -0
  81. package/errors/UnsupportedInputError.d.ts +3 -0
  82. package/errors/UnsupportedInputError.js +6 -0
  83. package/errors/UnsupportedInputError.js.map +1 -0
  84. package/functions.d.ts +9 -0
  85. package/functions.js +107 -0
  86. package/functions.js.map +1 -0
  87. package/index.d.ts +1 -1
  88. package/index.js +5 -64
  89. package/index.js.map +1 -1
  90. package/operators/AbstractCompare.d.ts +23 -0
  91. package/operators/AbstractCompare.js +100 -0
  92. package/operators/AbstractCompare.js.map +1 -0
  93. package/operators/AbstractFunction.d.ts +6 -0
  94. package/operators/AbstractFunction.js +10 -0
  95. package/operators/AbstractFunction.js.map +1 -0
  96. package/operators/AbstractJunctor.d.ts +13 -0
  97. package/operators/AbstractJunctor.js +31 -0
  98. package/operators/AbstractJunctor.js.map +1 -0
  99. package/operators/AbstractJunctorArray.d.ts +18 -0
  100. package/operators/AbstractJunctorArray.js +63 -0
  101. package/operators/AbstractJunctorArray.js.map +1 -0
  102. package/operators/AbstractOperator.d.ts +6 -6
  103. package/operators/AbstractOperator.js +12 -31
  104. package/operators/AbstractOperator.js.map +1 -1
  105. package/operators/Components.d.ts +30 -0
  106. package/operators/Components.js +140 -0
  107. package/operators/Components.js.map +1 -0
  108. package/operators/arithmetic/Avg.d.ts +2 -2
  109. package/operators/arithmetic/Avg.js +2 -6
  110. package/operators/arithmetic/Avg.js.map +1 -1
  111. package/operators/arithmetic/Count.d.ts +2 -2
  112. package/operators/arithmetic/Count.js +2 -6
  113. package/operators/arithmetic/Count.js.map +1 -1
  114. package/operators/arithmetic/Max.d.ts +2 -2
  115. package/operators/arithmetic/Max.js +2 -6
  116. package/operators/arithmetic/Max.js.map +1 -1
  117. package/operators/arithmetic/Min.d.ts +2 -2
  118. package/operators/arithmetic/Min.js +2 -6
  119. package/operators/arithmetic/Min.js.map +1 -1
  120. package/operators/arithmetic/Multiply.d.ts +2 -2
  121. package/operators/arithmetic/Multiply.js +2 -6
  122. package/operators/arithmetic/Multiply.js.map +1 -1
  123. package/operators/arithmetic/Sum.d.ts +2 -2
  124. package/operators/arithmetic/Sum.js +2 -6
  125. package/operators/arithmetic/Sum.js.map +1 -1
  126. package/operators/array/First.d.ts +2 -4
  127. package/operators/array/First.js +9 -15
  128. package/operators/array/First.js.map +1 -1
  129. package/operators/array/Last.d.ts +2 -4
  130. package/operators/array/Last.js +9 -15
  131. package/operators/array/Last.js.map +1 -1
  132. package/operators/array/Map.d.ts +5 -6
  133. package/operators/array/Map.js +14 -20
  134. package/operators/array/Map.js.map +1 -1
  135. package/operators/compare/EqualDesc.d.ts +6 -7
  136. package/operators/compare/EqualDesc.js +13 -11
  137. package/operators/compare/EqualDesc.js.map +1 -1
  138. package/operators/compare/EqualDescLookup.d.ts +2 -2
  139. package/operators/compare/EqualDescLookup.js +24 -31
  140. package/operators/compare/EqualDescLookup.js.map +1 -1
  141. package/operators/compare/GreaterThen.d.ts +3 -4
  142. package/operators/compare/GreaterThen.js +3 -7
  143. package/operators/compare/GreaterThen.js.map +1 -1
  144. package/operators/compare/GreaterThenEqual.d.ts +3 -4
  145. package/operators/compare/GreaterThenEqual.js +3 -7
  146. package/operators/compare/GreaterThenEqual.js.map +1 -1
  147. package/operators/compare/In.d.ts +3 -4
  148. package/operators/compare/In.js +3 -7
  149. package/operators/compare/In.js.map +1 -1
  150. package/operators/compare/IsNotNull.d.ts +3 -3
  151. package/operators/compare/IsNotNull.js +3 -7
  152. package/operators/compare/IsNotNull.js.map +1 -1
  153. package/operators/compare/IsNull.d.ts +3 -3
  154. package/operators/compare/IsNull.js +3 -7
  155. package/operators/compare/IsNull.js.map +1 -1
  156. package/operators/compare/LessThen.d.ts +3 -3
  157. package/operators/compare/LessThen.js +3 -6
  158. package/operators/compare/LessThen.js.map +1 -1
  159. package/operators/compare/LessThenEqual.d.ts +3 -4
  160. package/operators/compare/LessThenEqual.js +3 -7
  161. package/operators/compare/LessThenEqual.js.map +1 -1
  162. package/operators/compare/Like.d.ts +3 -4
  163. package/operators/compare/Like.js +3 -7
  164. package/operators/compare/Like.js.map +1 -1
  165. package/operators/compare/NotEqual.d.ts +3 -4
  166. package/operators/compare/NotEqual.js +3 -7
  167. package/operators/compare/NotEqual.js.map +1 -1
  168. package/operators/compare/NotIn.d.ts +3 -4
  169. package/operators/compare/NotIn.js +3 -7
  170. package/operators/compare/NotIn.js.map +1 -1
  171. package/operators/compare/Regex.d.ts +2 -6
  172. package/operators/compare/Regex.js +28 -33
  173. package/operators/compare/Regex.js.map +1 -1
  174. package/operators/date/Date.d.ts +2 -2
  175. package/operators/date/Date.js +3 -6
  176. package/operators/date/Date.js.map +1 -1
  177. package/operators/date/DateToString.d.ts +4 -5
  178. package/operators/date/DateToString.js +15 -20
  179. package/operators/date/DateToString.js.map +1 -1
  180. package/operators/date/Day.d.ts +2 -2
  181. package/operators/date/Day.js +2 -6
  182. package/operators/date/Day.js.map +1 -1
  183. package/operators/date/Month.d.ts +2 -2
  184. package/operators/date/Month.js +2 -6
  185. package/operators/date/Month.js.map +1 -1
  186. package/operators/date/Year.d.ts +2 -2
  187. package/operators/date/Year.js +2 -6
  188. package/operators/date/Year.js.map +1 -1
  189. package/operators/logic/AndDesc.d.ts +5 -7
  190. package/operators/logic/AndDesc.js +16 -21
  191. package/operators/logic/AndDesc.js.map +1 -1
  192. package/operators/logic/AndDescLookup.d.ts +2 -2
  193. package/operators/logic/AndDescLookup.js +1 -5
  194. package/operators/logic/AndDescLookup.js.map +1 -1
  195. package/operators/logic/NotDesc.d.ts +8 -0
  196. package/operators/logic/NotDesc.js +21 -0
  197. package/operators/logic/NotDesc.js.map +1 -0
  198. package/operators/logic/OrDesc.d.ts +5 -7
  199. package/operators/logic/OrDesc.js +5 -21
  200. package/operators/logic/OrDesc.js.map +1 -1
  201. package/operators/stage/AbstractSection.d.ts +7 -0
  202. package/operators/stage/AbstractSection.js +11 -0
  203. package/operators/stage/AbstractSection.js.map +1 -0
  204. package/operators/stage/Group.d.ts +4 -10
  205. package/operators/stage/Group.js +33 -39
  206. package/operators/stage/Group.js.map +1 -1
  207. package/operators/stage/Limit.d.ts +2 -2
  208. package/operators/stage/Limit.js +2 -6
  209. package/operators/stage/Limit.js.map +1 -1
  210. package/operators/stage/Match.d.ts +2 -8
  211. package/operators/stage/Match.js +2 -20
  212. package/operators/stage/Match.js.map +1 -1
  213. package/operators/stage/Project.d.ts +2 -8
  214. package/operators/stage/Project.js +17 -21
  215. package/operators/stage/Project.js.map +1 -1
  216. package/operators/stage/Query..d.ts +1 -0
  217. package/operators/stage/Query..js +3 -0
  218. package/operators/stage/Query..js.map +1 -0
  219. package/operators/stage/Skip.d.ts +2 -6
  220. package/operators/stage/Skip.js +6 -11
  221. package/operators/stage/Skip.js.map +1 -1
  222. package/operators/stage/Sort.d.ts +2 -6
  223. package/operators/stage/Sort.js +6 -11
  224. package/operators/stage/Sort.js.map +1 -1
  225. package/operators/string/Substr.d.ts +2 -4
  226. package/operators/string/Substr.js +19 -22
  227. package/operators/string/Substr.js.map +1 -1
  228. package/operators/string/ToFloat.d.ts +2 -3
  229. package/operators/string/ToFloat.js +9 -15
  230. package/operators/string/ToFloat.js.map +1 -1
  231. package/operators/string/ToInt.d.ts +2 -3
  232. package/operators/string/ToInt.js +9 -15
  233. package/operators/string/ToInt.js.map +1 -1
  234. package/operators/string/ToLower.d.ts +2 -3
  235. package/operators/string/ToLower.js +9 -15
  236. package/operators/string/ToLower.js.map +1 -1
  237. package/operators/string/ToUpper.d.ts +2 -4
  238. package/operators/string/ToUpper.js +9 -15
  239. package/operators/string/ToUpper.js.map +1 -1
  240. package/package.json +2 -1
  241. package/walker/lookup/ILookupFn.d.ts +2 -2
  242. package/walker/lookup/ILookupFn.js +1 -2
  243. package/walker/lookup/LookupWalker.d.ts +11 -11
  244. package/walker/lookup/LookupWalker.js +19 -23
  245. package/walker/lookup/LookupWalker.js.map +1 -1
  246. package/IMangoWalker.d.ts +0 -19
  247. package/IMangoWalker.js +0 -3
  248. package/IMangoWalker.js.map +0 -1
  249. package/MangoExpression.d.ts +0 -15
  250. package/MangoExpression.js +0 -88
  251. package/MangoExpression.js.map +0 -1
  252. package/ast/PAst.d.ts +0 -42
  253. package/ast/PAst.js +0 -158
  254. package/ast/PAst.js.map +0 -1
  255. package/ast/PValue.d.ts +0 -10
  256. package/ast/PValue.js +0 -22
  257. package/ast/PValue.js.map +0 -1
  258. package/ast/Value.d.ts +0 -3
  259. package/ast/Value.js +0 -8
  260. package/ast/Value.js.map +0 -1
  261. package/ast/ValueRef.d.ts +0 -4
  262. package/ast/ValueRef.js +0 -11
  263. package/ast/ValueRef.js.map +0 -1
  264. package/operators/Operators.d.ts +0 -35
  265. package/operators/Operators.js +0 -149
  266. package/operators/Operators.js.map +0 -1
  267. package/operators/compare/AbstractCompare.d.ts +0 -5
  268. package/operators/compare/AbstractCompare.js +0 -14
  269. package/operators/compare/AbstractCompare.js.map +0 -1
  270. package/operators/logic/AbstractLogic.d.ts +0 -3
  271. package/operators/logic/AbstractLogic.js +0 -8
  272. package/operators/logic/AbstractLogic.js.map +0 -1
  273. package/operators/logic/Not.d.ts +0 -8
  274. package/operators/logic/Not.js +0 -22
  275. package/operators/logic/Not.js.map +0 -1
package/browser.d.ts CHANGED
@@ -1,55 +1,52 @@
1
- export { Context } from './ast/Context';
2
- export { MultiArgs } from './ast/MultiArgs';
3
- export { PArray } from './ast/PArray';
4
- export { PAst } from './ast/PAst';
5
- export { PObject } from './ast/PObject';
6
- export { PValue } from './ast/PValue';
7
- export { Unset } from './ast/Unset';
8
- export { Value } from './ast/Value';
9
- export { ValueRef } from './ast/ValueRef';
10
- export { AUTO_EQUAL_CONV_SUPPORT, NUMBER_PROJECT_SUPPORT } from './Constants';
11
- export { IMangoWalker, IMangoWalkerControl } from './IMangoWalker';
12
- export { MangoExpression } from './MangoExpression';
13
- export { AbstractOperator } from './operators/AbstractOperator';
14
- export { Avg } from './operators/arithmetic/Avg';
15
- export { Count } from './operators/arithmetic/Count';
16
- export { Max } from './operators/arithmetic/Max';
17
- export { Min } from './operators/arithmetic/Min';
18
- export { Multiply } from './operators/arithmetic/Multiply';
19
- export { Sum } from './operators/arithmetic/Sum';
20
- export { First } from './operators/array/First';
21
- export { Last } from './operators/array/Last';
22
- export { Map } from './operators/array/Map';
23
- export { AbstractCompare } from './operators/compare/AbstractCompare';
24
- export { EqualDesc, Eq } from './operators/compare/EqualDesc';
25
- export { GreaterThen } from './operators/compare/GreaterThen';
26
- export { GreaterThenEqual } from './operators/compare/GreaterThenEqual';
27
- export { In } from './operators/compare/In';
28
- export { IsNotNull } from './operators/compare/IsNotNull';
29
- export { IsNull } from './operators/compare/IsNull';
30
- export { LessThen } from './operators/compare/LessThen';
31
- export { LessThenEqual } from './operators/compare/LessThenEqual';
32
- export { Like } from './operators/compare/Like';
33
- export { NotEqual } from './operators/compare/NotEqual';
34
- export { NotIn } from './operators/compare/NotIn';
35
- export { Regex } from './operators/compare/Regex';
36
- export { Date } from './operators/date/Date';
37
- export { DateToString } from './operators/date/DateToString';
38
- export { Day } from './operators/date/Day';
39
- export { Month } from './operators/date/Month';
40
- export { Year } from './operators/date/Year';
41
- export { AndDesc, And } from './operators/logic/AndDesc';
42
- export { Not } from './operators/logic/Not';
43
- export { OrDesc, Or } from './operators/logic/OrDesc';
44
- export { Operators } from './operators/Operators';
45
- export { Group, GROUP_ID } from './operators/stage/Group';
46
- export { Limit } from './operators/stage/Limit';
47
- export { Match } from './operators/stage/Match';
48
- export { Project } from './operators/stage/Project';
49
- export { Skip } from './operators/stage/Skip';
50
- export { Sort } from './operators/stage/Sort';
51
- export { Substr } from './operators/string/Substr';
52
- export { ToFloat } from './operators/string/ToFloat';
53
- export { ToInt } from './operators/string/ToInt';
54
- export { ToLower } from './operators/string/ToLower';
55
- export { ToUpper } from './operators/string/ToUpper';
1
+ export { Context } from './ast/Context.js';
2
+ export { MultiArgs } from './ast/MultiArgs.js';
3
+ export { Expr } from './ast/Expr.js';
4
+ export { AbstractValue } from './ast/AbstractValue.js';
5
+ export { Unset } from './ast/Unset.js';
6
+ export { ValueDesc } from './ast/ValueDesc.js';
7
+ export { RefDesc } from './ast/RefDesc.js';
8
+ export { AUTO_EQUAL_CONV_SUPPORT, NUMBER_PROJECT_SUPPORT } from './Constants.js';
9
+ export { IWalker, IWalkerControl } from './IWalker.js';
10
+ export { AbstractOperator } from './operators/AbstractOperator.js';
11
+ export { Avg } from './operators/arithmetic/Avg.js';
12
+ export { Count } from './operators/arithmetic/Count.js';
13
+ export { Max } from './operators/arithmetic/Max.js';
14
+ export { Min } from './operators/arithmetic/Min.js';
15
+ export { Multiply } from './operators/arithmetic/Multiply.js';
16
+ export { Sum } from './operators/arithmetic/Sum.js';
17
+ export { First } from './operators/array/First.js';
18
+ export { Last } from './operators/array/Last.js';
19
+ export { Map } from './operators/array/Map.js';
20
+ export { AbstractCompare } from './operators/AbstractCompare.js';
21
+ export { EqualDesc, Eq } from './operators/compare/EqualDesc.js';
22
+ export { GreaterThen } from './operators/compare/GreaterThen.js';
23
+ export { GreaterThenEqual } from './operators/compare/GreaterThenEqual.js';
24
+ export { In } from './operators/compare/In.js';
25
+ export { IsNotNull } from './operators/compare/IsNotNull.js';
26
+ export { IsNull } from './operators/compare/IsNull.js';
27
+ export { LessThen } from './operators/compare/LessThen.js';
28
+ export { LessThenEqual } from './operators/compare/LessThenEqual.js';
29
+ export { Like } from './operators/compare/Like.js';
30
+ export { NotEqual } from './operators/compare/NotEqual.js';
31
+ export { NotIn } from './operators/compare/NotIn.js';
32
+ export { Regex } from './operators/compare/Regex.js';
33
+ export { Date } from './operators/date/Date.js';
34
+ export { DateToString } from './operators/date/DateToString.js';
35
+ export { Day } from './operators/date/Day.js';
36
+ export { Month } from './operators/date/Month.js';
37
+ export { Year } from './operators/date/Year.js';
38
+ export { AndDesc, And } from './operators/logic/AndDesc.js';
39
+ export { NotDesc } from './operators/logic/NotDesc.js';
40
+ export { OrDesc, Or } from './operators/logic/OrDesc.js';
41
+ export { Components } from './operators/Components.js';
42
+ export { Group, GROUP_ID } from './operators/stage/Group.js';
43
+ export { Limit } from './operators/stage/Limit.js';
44
+ export { Match } from './operators/stage/Match.js';
45
+ export { Project } from './operators/stage/Project.js';
46
+ export { Skip } from './operators/stage/Skip.js';
47
+ export { Sort } from './operators/stage/Sort.js';
48
+ export { Substr } from './operators/string/Substr.js';
49
+ export { ToFloat } from './operators/string/ToFloat.js';
50
+ export { ToInt } from './operators/string/ToInt.js';
51
+ export { ToLower } from './operators/string/ToLower.js';
52
+ export { ToUpper } from './operators/string/ToUpper.js';
package/browser.js CHANGED
@@ -1,118 +1,54 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Limit = exports.GROUP_ID = exports.Group = exports.Operators = exports.Or = exports.OrDesc = exports.Not = exports.And = exports.AndDesc = exports.Year = exports.Month = exports.Day = exports.DateToString = exports.Date = exports.Regex = exports.NotIn = exports.NotEqual = exports.Like = exports.LessThenEqual = exports.LessThen = exports.IsNull = exports.IsNotNull = exports.In = exports.GreaterThenEqual = exports.GreaterThen = exports.Eq = exports.EqualDesc = exports.AbstractCompare = exports.Map = exports.Last = exports.First = exports.Sum = exports.Multiply = exports.Min = exports.Max = exports.Count = exports.Avg = exports.AbstractOperator = exports.MangoExpression = exports.NUMBER_PROJECT_SUPPORT = exports.AUTO_EQUAL_CONV_SUPPORT = exports.ValueRef = exports.Value = exports.Unset = exports.PValue = exports.PObject = exports.PAst = exports.PArray = exports.MultiArgs = exports.Context = void 0;
4
- exports.ToUpper = exports.ToLower = exports.ToInt = exports.ToFloat = exports.Substr = exports.Sort = exports.Skip = exports.Project = exports.Match = void 0;
5
- var Context_1 = require("./ast/Context");
6
- Object.defineProperty(exports, "Context", { enumerable: true, get: function () { return Context_1.Context; } });
7
- var MultiArgs_1 = require("./ast/MultiArgs");
8
- Object.defineProperty(exports, "MultiArgs", { enumerable: true, get: function () { return MultiArgs_1.MultiArgs; } });
9
- var PArray_1 = require("./ast/PArray");
10
- Object.defineProperty(exports, "PArray", { enumerable: true, get: function () { return PArray_1.PArray; } });
11
- var PAst_1 = require("./ast/PAst");
12
- Object.defineProperty(exports, "PAst", { enumerable: true, get: function () { return PAst_1.PAst; } });
13
- var PObject_1 = require("./ast/PObject");
14
- Object.defineProperty(exports, "PObject", { enumerable: true, get: function () { return PObject_1.PObject; } });
15
- var PValue_1 = require("./ast/PValue");
16
- Object.defineProperty(exports, "PValue", { enumerable: true, get: function () { return PValue_1.PValue; } });
17
- var Unset_1 = require("./ast/Unset");
18
- Object.defineProperty(exports, "Unset", { enumerable: true, get: function () { return Unset_1.Unset; } });
19
- var Value_1 = require("./ast/Value");
20
- Object.defineProperty(exports, "Value", { enumerable: true, get: function () { return Value_1.Value; } });
21
- var ValueRef_1 = require("./ast/ValueRef");
22
- Object.defineProperty(exports, "ValueRef", { enumerable: true, get: function () { return ValueRef_1.ValueRef; } });
23
- var Constants_1 = require("./Constants");
24
- Object.defineProperty(exports, "AUTO_EQUAL_CONV_SUPPORT", { enumerable: true, get: function () { return Constants_1.AUTO_EQUAL_CONV_SUPPORT; } });
25
- Object.defineProperty(exports, "NUMBER_PROJECT_SUPPORT", { enumerable: true, get: function () { return Constants_1.NUMBER_PROJECT_SUPPORT; } });
26
- var MangoExpression_1 = require("./MangoExpression");
27
- Object.defineProperty(exports, "MangoExpression", { enumerable: true, get: function () { return MangoExpression_1.MangoExpression; } });
28
- var AbstractOperator_1 = require("./operators/AbstractOperator");
29
- Object.defineProperty(exports, "AbstractOperator", { enumerable: true, get: function () { return AbstractOperator_1.AbstractOperator; } });
30
- var Avg_1 = require("./operators/arithmetic/Avg");
31
- Object.defineProperty(exports, "Avg", { enumerable: true, get: function () { return Avg_1.Avg; } });
32
- var Count_1 = require("./operators/arithmetic/Count");
33
- Object.defineProperty(exports, "Count", { enumerable: true, get: function () { return Count_1.Count; } });
34
- var Max_1 = require("./operators/arithmetic/Max");
35
- Object.defineProperty(exports, "Max", { enumerable: true, get: function () { return Max_1.Max; } });
36
- var Min_1 = require("./operators/arithmetic/Min");
37
- Object.defineProperty(exports, "Min", { enumerable: true, get: function () { return Min_1.Min; } });
38
- var Multiply_1 = require("./operators/arithmetic/Multiply");
39
- Object.defineProperty(exports, "Multiply", { enumerable: true, get: function () { return Multiply_1.Multiply; } });
40
- var Sum_1 = require("./operators/arithmetic/Sum");
41
- Object.defineProperty(exports, "Sum", { enumerable: true, get: function () { return Sum_1.Sum; } });
42
- var First_1 = require("./operators/array/First");
43
- Object.defineProperty(exports, "First", { enumerable: true, get: function () { return First_1.First; } });
44
- var Last_1 = require("./operators/array/Last");
45
- Object.defineProperty(exports, "Last", { enumerable: true, get: function () { return Last_1.Last; } });
46
- var Map_1 = require("./operators/array/Map");
47
- Object.defineProperty(exports, "Map", { enumerable: true, get: function () { return Map_1.Map; } });
48
- var AbstractCompare_1 = require("./operators/compare/AbstractCompare");
49
- Object.defineProperty(exports, "AbstractCompare", { enumerable: true, get: function () { return AbstractCompare_1.AbstractCompare; } });
50
- var EqualDesc_1 = require("./operators/compare/EqualDesc");
51
- Object.defineProperty(exports, "EqualDesc", { enumerable: true, get: function () { return EqualDesc_1.EqualDesc; } });
52
- Object.defineProperty(exports, "Eq", { enumerable: true, get: function () { return EqualDesc_1.Eq; } });
53
- var GreaterThen_1 = require("./operators/compare/GreaterThen");
54
- Object.defineProperty(exports, "GreaterThen", { enumerable: true, get: function () { return GreaterThen_1.GreaterThen; } });
55
- var GreaterThenEqual_1 = require("./operators/compare/GreaterThenEqual");
56
- Object.defineProperty(exports, "GreaterThenEqual", { enumerable: true, get: function () { return GreaterThenEqual_1.GreaterThenEqual; } });
57
- var In_1 = require("./operators/compare/In");
58
- Object.defineProperty(exports, "In", { enumerable: true, get: function () { return In_1.In; } });
59
- var IsNotNull_1 = require("./operators/compare/IsNotNull");
60
- Object.defineProperty(exports, "IsNotNull", { enumerable: true, get: function () { return IsNotNull_1.IsNotNull; } });
61
- var IsNull_1 = require("./operators/compare/IsNull");
62
- Object.defineProperty(exports, "IsNull", { enumerable: true, get: function () { return IsNull_1.IsNull; } });
63
- var LessThen_1 = require("./operators/compare/LessThen");
64
- Object.defineProperty(exports, "LessThen", { enumerable: true, get: function () { return LessThen_1.LessThen; } });
65
- var LessThenEqual_1 = require("./operators/compare/LessThenEqual");
66
- Object.defineProperty(exports, "LessThenEqual", { enumerable: true, get: function () { return LessThenEqual_1.LessThenEqual; } });
67
- var Like_1 = require("./operators/compare/Like");
68
- Object.defineProperty(exports, "Like", { enumerable: true, get: function () { return Like_1.Like; } });
69
- var NotEqual_1 = require("./operators/compare/NotEqual");
70
- Object.defineProperty(exports, "NotEqual", { enumerable: true, get: function () { return NotEqual_1.NotEqual; } });
71
- var NotIn_1 = require("./operators/compare/NotIn");
72
- Object.defineProperty(exports, "NotIn", { enumerable: true, get: function () { return NotIn_1.NotIn; } });
73
- var Regex_1 = require("./operators/compare/Regex");
74
- Object.defineProperty(exports, "Regex", { enumerable: true, get: function () { return Regex_1.Regex; } });
75
- var Date_1 = require("./operators/date/Date");
76
- Object.defineProperty(exports, "Date", { enumerable: true, get: function () { return Date_1.Date; } });
77
- var DateToString_1 = require("./operators/date/DateToString");
78
- Object.defineProperty(exports, "DateToString", { enumerable: true, get: function () { return DateToString_1.DateToString; } });
79
- var Day_1 = require("./operators/date/Day");
80
- Object.defineProperty(exports, "Day", { enumerable: true, get: function () { return Day_1.Day; } });
81
- var Month_1 = require("./operators/date/Month");
82
- Object.defineProperty(exports, "Month", { enumerable: true, get: function () { return Month_1.Month; } });
83
- var Year_1 = require("./operators/date/Year");
84
- Object.defineProperty(exports, "Year", { enumerable: true, get: function () { return Year_1.Year; } });
85
- var AndDesc_1 = require("./operators/logic/AndDesc");
86
- Object.defineProperty(exports, "AndDesc", { enumerable: true, get: function () { return AndDesc_1.AndDesc; } });
87
- Object.defineProperty(exports, "And", { enumerable: true, get: function () { return AndDesc_1.And; } });
88
- var Not_1 = require("./operators/logic/Not");
89
- Object.defineProperty(exports, "Not", { enumerable: true, get: function () { return Not_1.Not; } });
90
- var OrDesc_1 = require("./operators/logic/OrDesc");
91
- Object.defineProperty(exports, "OrDesc", { enumerable: true, get: function () { return OrDesc_1.OrDesc; } });
92
- Object.defineProperty(exports, "Or", { enumerable: true, get: function () { return OrDesc_1.Or; } });
93
- var Operators_1 = require("./operators/Operators");
94
- Object.defineProperty(exports, "Operators", { enumerable: true, get: function () { return Operators_1.Operators; } });
95
- var Group_1 = require("./operators/stage/Group");
96
- Object.defineProperty(exports, "Group", { enumerable: true, get: function () { return Group_1.Group; } });
97
- Object.defineProperty(exports, "GROUP_ID", { enumerable: true, get: function () { return Group_1.GROUP_ID; } });
98
- var Limit_1 = require("./operators/stage/Limit");
99
- Object.defineProperty(exports, "Limit", { enumerable: true, get: function () { return Limit_1.Limit; } });
100
- var Match_1 = require("./operators/stage/Match");
101
- Object.defineProperty(exports, "Match", { enumerable: true, get: function () { return Match_1.Match; } });
102
- var Project_1 = require("./operators/stage/Project");
103
- Object.defineProperty(exports, "Project", { enumerable: true, get: function () { return Project_1.Project; } });
104
- var Skip_1 = require("./operators/stage/Skip");
105
- Object.defineProperty(exports, "Skip", { enumerable: true, get: function () { return Skip_1.Skip; } });
106
- var Sort_1 = require("./operators/stage/Sort");
107
- Object.defineProperty(exports, "Sort", { enumerable: true, get: function () { return Sort_1.Sort; } });
108
- var Substr_1 = require("./operators/string/Substr");
109
- Object.defineProperty(exports, "Substr", { enumerable: true, get: function () { return Substr_1.Substr; } });
110
- var ToFloat_1 = require("./operators/string/ToFloat");
111
- Object.defineProperty(exports, "ToFloat", { enumerable: true, get: function () { return ToFloat_1.ToFloat; } });
112
- var ToInt_1 = require("./operators/string/ToInt");
113
- Object.defineProperty(exports, "ToInt", { enumerable: true, get: function () { return ToInt_1.ToInt; } });
114
- var ToLower_1 = require("./operators/string/ToLower");
115
- Object.defineProperty(exports, "ToLower", { enumerable: true, get: function () { return ToLower_1.ToLower; } });
116
- var ToUpper_1 = require("./operators/string/ToUpper");
117
- Object.defineProperty(exports, "ToUpper", { enumerable: true, get: function () { return ToUpper_1.ToUpper; } });
1
+ export { Context } from './ast/Context.js';
2
+ export { MultiArgs } from './ast/MultiArgs.js';
3
+ // export {PArray} from './ast/PArray.js';
4
+ export { Expr } from './ast/Expr.js';
5
+ // export {PObject} from './ast/PObject.js';
6
+ export { AbstractValue } from './ast/AbstractValue.js';
7
+ export { Unset } from './ast/Unset.js';
8
+ export { ValueDesc } from './ast/ValueDesc.js';
9
+ export { RefDesc } from './ast/RefDesc.js';
10
+ export { AUTO_EQUAL_CONV_SUPPORT, NUMBER_PROJECT_SUPPORT } from './Constants.js';
11
+ export { AbstractOperator } from './operators/AbstractOperator.js';
12
+ export { Avg } from './operators/arithmetic/Avg.js';
13
+ export { Count } from './operators/arithmetic/Count.js';
14
+ export { Max } from './operators/arithmetic/Max.js';
15
+ export { Min } from './operators/arithmetic/Min.js';
16
+ export { Multiply } from './operators/arithmetic/Multiply.js';
17
+ export { Sum } from './operators/arithmetic/Sum.js';
18
+ export { First } from './operators/array/First.js';
19
+ export { Last } from './operators/array/Last.js';
20
+ export { Map } from './operators/array/Map.js';
21
+ export { AbstractCompare } from './operators/AbstractCompare.js';
22
+ export { EqualDesc, Eq } from './operators/compare/EqualDesc.js';
23
+ export { GreaterThen } from './operators/compare/GreaterThen.js';
24
+ export { GreaterThenEqual } from './operators/compare/GreaterThenEqual.js';
25
+ export { In } from './operators/compare/In.js';
26
+ export { IsNotNull } from './operators/compare/IsNotNull.js';
27
+ export { IsNull } from './operators/compare/IsNull.js';
28
+ export { LessThen } from './operators/compare/LessThen.js';
29
+ export { LessThenEqual } from './operators/compare/LessThenEqual.js';
30
+ export { Like } from './operators/compare/Like.js';
31
+ export { NotEqual } from './operators/compare/NotEqual.js';
32
+ export { NotIn } from './operators/compare/NotIn.js';
33
+ export { Regex } from './operators/compare/Regex.js';
34
+ export { Date } from './operators/date/Date.js';
35
+ export { DateToString } from './operators/date/DateToString.js';
36
+ export { Day } from './operators/date/Day.js';
37
+ export { Month } from './operators/date/Month.js';
38
+ export { Year } from './operators/date/Year.js';
39
+ export { AndDesc, And } from './operators/logic/AndDesc.js';
40
+ export { NotDesc } from './operators/logic/NotDesc.js';
41
+ export { OrDesc, Or } from './operators/logic/OrDesc.js';
42
+ export { Components } from './operators/Components.js';
43
+ export { Group, GROUP_ID } from './operators/stage/Group.js';
44
+ export { Limit } from './operators/stage/Limit.js';
45
+ export { Match } from './operators/stage/Match.js';
46
+ export { Project } from './operators/stage/Project.js';
47
+ export { Skip } from './operators/stage/Skip.js';
48
+ export { Sort } from './operators/stage/Sort.js';
49
+ export { Substr } from './operators/string/Substr.js';
50
+ export { ToFloat } from './operators/string/ToFloat.js';
51
+ export { ToInt } from './operators/string/ToInt.js';
52
+ export { ToLower } from './operators/string/ToLower.js';
53
+ export { ToUpper } from './operators/string/ToUpper.js';
118
54
  //# sourceMappingURL=browser.js.map
package/browser.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":";;;;AAAA,yCAAsC;AAA9B,kGAAA,OAAO,OAAA;AACf,6CAA0C;AAAlC,sGAAA,SAAS,OAAA;AACjB,uCAAoC;AAA5B,gGAAA,MAAM,OAAA;AACd,mCAAgC;AAAxB,4FAAA,IAAI,OAAA;AACZ,yCAAsC;AAA9B,kGAAA,OAAO,OAAA;AACf,uCAAoC;AAA5B,gGAAA,MAAM,OAAA;AACd,qCAAkC;AAA1B,8FAAA,KAAK,OAAA;AACb,qCAAkC;AAA1B,8FAAA,KAAK,OAAA;AACb,2CAAwC;AAAhC,oGAAA,QAAQ,OAAA;AAChB,yCAA4E;AAApE,oHAAA,uBAAuB,OAAA;AAAE,mHAAA,sBAAsB,OAAA;AAEvD,qDAAkD;AAA1C,kHAAA,eAAe,OAAA;AACvB,iEAA8D;AAAtD,oHAAA,gBAAgB,OAAA;AACxB,kDAA+C;AAAvC,0FAAA,GAAG,OAAA;AACX,sDAAmD;AAA3C,8FAAA,KAAK,OAAA;AACb,kDAA+C;AAAvC,0FAAA,GAAG,OAAA;AACX,kDAA+C;AAAvC,0FAAA,GAAG,OAAA;AACX,4DAAyD;AAAjD,oGAAA,QAAQ,OAAA;AAChB,kDAA+C;AAAvC,0FAAA,GAAG,OAAA;AACX,iDAA8C;AAAtC,8FAAA,KAAK,OAAA;AACb,+CAA4C;AAApC,4FAAA,IAAI,OAAA;AACZ,6CAA0C;AAAlC,0FAAA,GAAG,OAAA;AACX,uEAAoE;AAA5D,kHAAA,eAAe,OAAA;AACvB,2DAA4D;AAApD,sGAAA,SAAS,OAAA;AAAE,+FAAA,EAAE,OAAA;AACrB,+DAA4D;AAApD,0GAAA,WAAW,OAAA;AACnB,yEAAsE;AAA9D,oHAAA,gBAAgB,OAAA;AACxB,6CAA0C;AAAlC,wFAAA,EAAE,OAAA;AACV,2DAAwD;AAAhD,sGAAA,SAAS,OAAA;AACjB,qDAAkD;AAA1C,gGAAA,MAAM,OAAA;AACd,yDAAsD;AAA9C,oGAAA,QAAQ,OAAA;AAChB,mEAAgE;AAAxD,8GAAA,aAAa,OAAA;AACrB,iDAA8C;AAAtC,4FAAA,IAAI,OAAA;AACZ,yDAAsD;AAA9C,oGAAA,QAAQ,OAAA;AAChB,mDAAgD;AAAxC,8FAAA,KAAK,OAAA;AACb,mDAAgD;AAAxC,8FAAA,KAAK,OAAA;AACb,8CAA2C;AAAnC,4FAAA,IAAI,OAAA;AACZ,8DAA2D;AAAnD,4GAAA,YAAY,OAAA;AACpB,4CAAyC;AAAjC,0FAAA,GAAG,OAAA;AACX,gDAA6C;AAArC,8FAAA,KAAK,OAAA;AACb,8CAA2C;AAAnC,4FAAA,IAAI,OAAA;AACZ,qDAAuD;AAA/C,kGAAA,OAAO,OAAA;AAAE,8FAAA,GAAG,OAAA;AACpB,6CAA0C;AAAlC,0FAAA,GAAG,OAAA;AACX,mDAAoD;AAA5C,gGAAA,MAAM,OAAA;AAAE,4FAAA,EAAE,OAAA;AAClB,mDAAgD;AAAxC,sGAAA,SAAS,OAAA;AACjB,iDAAwD;AAAhD,8FAAA,KAAK,OAAA;AAAE,iGAAA,QAAQ,OAAA;AACvB,iDAA8C;AAAtC,8FAAA,KAAK,OAAA;AACb,iDAA8C;AAAtC,8FAAA,KAAK,OAAA;AACb,qDAAkD;AAA1C,kGAAA,OAAO,OAAA;AACf,+CAA4C;AAApC,4FAAA,IAAI,OAAA;AACZ,+CAA4C;AAApC,4FAAA,IAAI,OAAA;AACZ,oDAAiD;AAAzC,gGAAA,MAAM,OAAA;AACd,sDAAmD;AAA3C,kGAAA,OAAO,OAAA;AACf,kDAA+C;AAAvC,8FAAA,KAAK,OAAA;AACb,sDAAmD;AAA3C,kGAAA,OAAO,OAAA;AACf,sDAAmD;AAA3C,kGAAA,OAAO,OAAA"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAC7C,0CAA0C;AAC1C,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,4CAA4C;AAC5C,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAC,uBAAuB,EAAE,sBAAsB,EAAC,MAAM,gBAAgB,CAAC;AAE/E,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAC,GAAG,EAAC,MAAM,+BAA+B,CAAC;AAClD,OAAO,EAAC,KAAK,EAAC,MAAM,iCAAiC,CAAC;AACtD,OAAO,EAAC,GAAG,EAAC,MAAM,+BAA+B,CAAC;AAClD,OAAO,EAAC,GAAG,EAAC,MAAM,+BAA+B,CAAC;AAClD,OAAO,EAAC,QAAQ,EAAC,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAC,GAAG,EAAC,MAAM,+BAA+B,CAAC;AAClD,OAAO,EAAC,KAAK,EAAC,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAC,IAAI,EAAC,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAC,GAAG,EAAC,MAAM,0BAA0B,CAAC;AAC7C,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,SAAS,EAAE,EAAE,EAAC,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAC,WAAW,EAAC,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAC,EAAE,EAAC,MAAM,2BAA2B,CAAC;AAC7C,OAAO,EAAC,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAC,QAAQ,EAAC,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAC,aAAa,EAAC,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAC,IAAI,EAAC,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAC,QAAQ,EAAC,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAC,KAAK,EAAC,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAC,KAAK,EAAC,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAC,IAAI,EAAC,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAC,GAAG,EAAC,MAAM,yBAAyB,CAAC;AAC5C,OAAO,EAAC,KAAK,EAAC,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAC,IAAI,EAAC,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAE,GAAG,EAAC,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAC,OAAO,EAAC,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAC,MAAM,EAAE,EAAE,EAAC,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAC,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAC,KAAK,EAAC,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAC,KAAK,EAAC,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAC,OAAO,EAAC,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAC,IAAI,EAAC,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAC,IAAI,EAAC,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAC,MAAM,EAAC,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAC,OAAO,EAAC,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAC,KAAK,EAAC,MAAM,6BAA6B,CAAC;AAClD,OAAO,EAAC,OAAO,EAAC,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAC,OAAO,EAAC,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { PATH_KEY } from "../ast/Constan.js";
2
+ export declare class InvalidValueError extends Error {
3
+ constructor(keys: PATH_KEY[], value: any);
4
+ }
@@ -0,0 +1,6 @@
1
+ export class InvalidValueError extends Error {
2
+ constructor(keys, value) {
3
+ super(`Invalid value error on ${keys.join('.')}: ` + JSON.stringify(value));
4
+ }
5
+ }
6
+ //# sourceMappingURL=InvalidValueError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InvalidValueError.js","sourceRoot":"","sources":["../../../src/errors/InvalidValueError.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C,YAAY,IAAgB,EAAE,KAAU;QACtC,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9E,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ export declare class NotYetImplementedError extends Error {
2
+ constructor();
3
+ }
@@ -0,0 +1,6 @@
1
+ export class NotYetImplementedError extends Error {
2
+ constructor() {
3
+ super("Not yet implemented");
4
+ }
5
+ }
6
+ //# sourceMappingURL=NotYetImplementedError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotYetImplementedError.js","sourceRoot":"","sources":["../../../src/errors/NotYetImplementedError.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C;QACE,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/B,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ export declare class UnsupportedInputError extends Error {
2
+ constructor(value: any);
3
+ }
@@ -0,0 +1,6 @@
1
+ export class UnsupportedInputError extends Error {
2
+ constructor(value) {
3
+ super("Not supported input: " + JSON.stringify(value));
4
+ }
5
+ }
6
+ //# sourceMappingURL=UnsupportedInputError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnsupportedInputError.js","sourceRoot":"","sources":["../../../src/errors/UnsupportedInputError.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,KAAU;QACpB,KAAK,CAAC,uBAAuB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,CAAC;CACF"}
package/functions.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ import { Expr } from "./ast/Expr.js";
2
+ import { ClassType } from './Constants.js';
3
+ /**
4
+ * Parse mango expressions (mongo-db style)
5
+ *
6
+ * @param partial
7
+ */
8
+ export declare function expr(partial: any): import("./ast/IExpr.js").IExpr;
9
+ export declare function create<X extends Expr>(createClass: ClassType<X>): Expr;
package/functions.js ADDED
@@ -0,0 +1,107 @@
1
+ import { JsonParser } from "./ast/JsonParser.js";
2
+ /**
3
+ * Parse mango expressions (mongo-db style)
4
+ *
5
+ * @param partial
6
+ */
7
+ export function expr(partial) {
8
+ const p = new JsonParser(partial);
9
+ return p.parse();
10
+ }
11
+ // const context = ctxt ? ctxt : new Context();
12
+ // if (leftSide) {
13
+ // context.key = ctxt.key;
14
+ // context.merge(leftSide.getContext());
15
+ // }
16
+ //
17
+ // const hasSelector = leftSide && leftSide instanceof Selector;
18
+ // const hasOperator = leftSide && leftSide instanceof AbstractOperator;
19
+ //
20
+ //
21
+ // let result: Expr = null;
22
+ // if (isString(parital) ||
23
+ // isNumber(parital) ||
24
+ // isDate(parital) ||
25
+ // isNull(parital) ||
26
+ // isBoolean(parital)) {
27
+ //
28
+ // // TODO reference can also have a lookup like $some_lookup.id this demands a $lookup reference
29
+ // const isRef = isString(parital) && parital.match(/^\$(.+)/);
30
+ // if (isRef) {
31
+ // result = create(ValueRef).interprete(isRef[1], leftSide, rightSide, context);
32
+ // } else {
33
+ // result = create(Value).interprete(parital, leftSide, rightSide, context);
34
+ // }
35
+ //
36
+ // } else if (isArray(parital)) {
37
+ // result = this.create(PArray).interprete(parital, leftSide, context);
38
+ // } else if (isObjectLike(parital)) {
39
+ // const partialKeys = Object.keys(parital);
40
+ //
41
+ // // const leftFromSelector = leftSide && leftSide instanceof Selector;
42
+ //
43
+ // // TODO make multiple $registry work
44
+ // // if (leftFromSelector) {
45
+ // const foundOperators = partialKeys.filter(x => /^\$/.test(x) && Components.has(x.substr(1)));
46
+ // if (foundOperators.length === 1) {
47
+ // // for example {key: {$eq: 1}} KeyRef is the left side and
48
+ // const operatorKey = foundOperators[0];
49
+ // // const follow = parital[operatorKey];
50
+ // const operator = Components.create(operatorKey);
51
+ // result = operator.interprete(parital, leftSide, rightSide, context);
52
+ // } else if (foundOperators.length > 1) {
53
+ // throw new Error(`mutliple operators currently not supported ${foundOperators}`);
54
+ // } else {
55
+ // // No operator, maybe is simplified $eq like {x: 1} <=> {x: {$eq: 1}}
56
+ // // check if rightSide is plain value
57
+ // // and operator when {x: 1, y: 2} <=> {$and:[ {x: {$eq: 1}}, {y: {$eq: 2}} ]}
58
+ //
59
+ // if (partialKeys.length > 1) {
60
+ // // and
61
+ // const junktor = And()
62
+ // result = junktor;
63
+ // for (let partialKey in partialKeys) {
64
+ // const keyDesc = Key(partialKey);
65
+ // const context = new Context(partialKey);
66
+ // context.set("checking_for_value", true);
67
+ // let partialValue = parital[partialKey];
68
+ // let res = expr(partialValue, keyDesc, null, context);
69
+ // if (res instanceof AbstractOperator) {
70
+ // // expr operator
71
+ // junktor.add(res)
72
+ // } else {
73
+ // // create eq operator
74
+ // let op = Components.create("eq");
75
+ // op = op.interprete(null, keyDesc, res, context) as AbstractOperator;
76
+ // junktor.add(op)
77
+ // }
78
+ // }
79
+ // } else {
80
+ // const partialKey = partialKeys[0];
81
+ // const keyDesc = Key(partialKey);
82
+ // let partialValue = parital[partialKey];
83
+ // result = expr(partialValue, keyDesc, null, context);
84
+ // }
85
+ // }
86
+ // // } else {
87
+ // // result = create(PObject).interprete(parital, leftSide, null, context);
88
+ // // }
89
+ // }
90
+ //
91
+ // if (!result) {
92
+ // throw new Error(`not yet implemented for ${parital}`);
93
+ // }
94
+ //
95
+ // if(hasSelector && !(result instanceof AbstractOperator)) {
96
+ // // create default operator
97
+ // const op = Components.create('eq')
98
+ // result = op.interprete(null, leftSide, result, context);
99
+ // }
100
+ //
101
+ //
102
+ // return result;
103
+ // }
104
+ export function create(createClass /*, partial: any, leftSide?: Expr, ctxt?: Context*/) {
105
+ return Reflect.construct(createClass, []);
106
+ }
107
+ //# sourceMappingURL=functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/functions.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAK/C;;;;GAIG;AACH,MAAM,UAAU,IAAI,CAAC,OAAY;IAC/B,MAAM,CAAC,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;AACnB,CAAC;AACD,iDAAiD;AACjD,oBAAoB;AACpB,8BAA8B;AAC9B,4CAA4C;AAC5C,MAAM;AACN,EAAE;AACF,kEAAkE;AAClE,0EAA0E;AAC1E,EAAE;AACF,EAAE;AACF,6BAA6B;AAC7B,6BAA6B;AAC7B,2BAA2B;AAC3B,yBAAyB;AACzB,yBAAyB;AACzB,4BAA4B;AAC5B,EAAE;AACF,qGAAqG;AACrG,mEAAmE;AACnE,mBAAmB;AACnB,sFAAsF;AACtF,eAAe;AACf,kFAAkF;AAClF,QAAQ;AACR,EAAE;AACF,mCAAmC;AACnC,2EAA2E;AAC3E,wCAAwC;AACxC,gDAAgD;AAChD,EAAE;AACF,4EAA4E;AAC5E,EAAE;AACF,2CAA2C;AAC3C,iCAAiC;AACjC,oGAAoG;AACpG,yCAAyC;AACzC,mEAAmE;AACnE,+CAA+C;AAC/C,gDAAgD;AAChD,yDAAyD;AACzD,6EAA6E;AAC7E,8CAA8C;AAC9C,yFAAyF;AACzF,eAAe;AACf,8EAA8E;AAC9E,6CAA6C;AAC7C,sFAAsF;AACtF,EAAE;AACF,sCAAsC;AACtC,iBAAiB;AACjB,gCAAgC;AAChC,4BAA4B;AAC5B,gDAAgD;AAChD,6CAA6C;AAC7C,qDAAqD;AACrD,qDAAqD;AACrD,oDAAoD;AACpD,kEAAkE;AAClE,mDAAmD;AACnD,+BAA+B;AAC/B,+BAA+B;AAC/B,qBAAqB;AACrB,oCAAoC;AACpC,gDAAgD;AAChD,mFAAmF;AACnF,8BAA8B;AAC9B,cAAc;AACd,YAAY;AACZ,iBAAiB;AACjB,6CAA6C;AAC7C,2CAA2C;AAC3C,kDAAkD;AAClD,+DAA+D;AAC/D,UAAU;AACV,QAAQ;AACR,kBAAkB;AAClB,kFAAkF;AAClF,WAAW;AACX,MAAM;AACN,EAAE;AACF,mBAAmB;AACnB,6DAA6D;AAC7D,MAAM;AACN,EAAE;AACF,+DAA+D;AAC/D,iCAAiC;AACjC,yCAAyC;AACzC,+DAA+D;AAC/D,MAAM;AACN,EAAE;AACF,EAAE;AACF,mBAAmB;AACnB,IAAI;AAEJ,MAAM,UAAU,MAAM,CAAiB,WAAyB,CAAC,mDAAmD;IAClH,OAAO,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAM,CAAC;AACjD,CAAC"}
package/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { NUMBER_PROJECT_SUPPORT, AUTO_EQUAL_CONV_SUPPORT, Context, MangoExpression, Like, In, AndDesc, Date, PAst, Not, PValue, AbstractCompare, PObject, AbstractOperator, Avg, Count, DateToString, Day, EqualDesc, First, GreaterThen, GreaterThenEqual, Group, IMangoWalker, IsNotNull, IsNull, Last, LessThen, LessThenEqual, Limit, Map, Match, Max, Min, Month, MultiArgs, Multiply, NotEqual, NotIn, Operators, OrDesc, PArray, Project, Regex, Skip, Sort, Substr, Sum, ToFloat, ToInt, ToLower, ToUpper, Unset, Value, ValueRef, Year, IMangoWalkerControl, Eq, And, GROUP_ID, Or } from './browser';
1
+ export { NUMBER_PROJECT_SUPPORT, AUTO_EQUAL_CONV_SUPPORT, Context, Like, In, AndDesc, Date, Expr, NotDesc, AbstractValue, AbstractCompare, AbstractOperator, Avg, Count, DateToString, Day, EqualDesc, First, GreaterThen, GreaterThenEqual, Group, IWalker, IsNotNull, IsNull, Last, LessThen, LessThenEqual, Limit, Map, Match, Max, Min, Month, MultiArgs, Multiply, NotEqual, NotIn, Components, OrDesc, Project, Regex, Skip, Sort, Substr, Sum, ToFloat, ToInt, ToLower, ToUpper, Unset, ValueDesc, RefDesc, Year, IWalkerControl, Eq, And, GROUP_ID, Or } from './browser.js';
package/index.js CHANGED
@@ -1,66 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ToLower = exports.ToInt = exports.ToFloat = exports.Sum = exports.Substr = exports.Sort = exports.Skip = exports.Regex = exports.Project = exports.PArray = exports.OrDesc = exports.Operators = exports.NotIn = exports.NotEqual = exports.Multiply = exports.MultiArgs = exports.Month = exports.Min = exports.Max = exports.Match = exports.Map = exports.Limit = exports.LessThenEqual = exports.LessThen = exports.Last = exports.IsNull = exports.IsNotNull = exports.Group = exports.GreaterThenEqual = exports.GreaterThen = exports.First = exports.EqualDesc = exports.Day = exports.DateToString = exports.Count = exports.Avg = exports.AbstractOperator = exports.PObject = exports.AbstractCompare = exports.PValue = exports.Not = exports.PAst = exports.Date = exports.AndDesc = exports.In = exports.Like = exports.MangoExpression = exports.Context = exports.AUTO_EQUAL_CONV_SUPPORT = exports.NUMBER_PROJECT_SUPPORT = void 0;
4
- exports.Or = exports.GROUP_ID = exports.And = exports.Eq = exports.Year = exports.ValueRef = exports.Value = exports.Unset = exports.ToUpper = void 0;
5
1
  // ---- Generated by gulp taskRef ----
6
- var browser_1 = require("./browser");
7
- Object.defineProperty(exports, "NUMBER_PROJECT_SUPPORT", { enumerable: true, get: function () { return browser_1.NUMBER_PROJECT_SUPPORT; } });
8
- Object.defineProperty(exports, "AUTO_EQUAL_CONV_SUPPORT", { enumerable: true, get: function () { return browser_1.AUTO_EQUAL_CONV_SUPPORT; } });
9
- Object.defineProperty(exports, "Context", { enumerable: true, get: function () { return browser_1.Context; } });
10
- Object.defineProperty(exports, "MangoExpression", { enumerable: true, get: function () { return browser_1.MangoExpression; } });
11
- Object.defineProperty(exports, "Like", { enumerable: true, get: function () { return browser_1.Like; } });
12
- Object.defineProperty(exports, "In", { enumerable: true, get: function () { return browser_1.In; } });
13
- Object.defineProperty(exports, "AndDesc", { enumerable: true, get: function () { return browser_1.AndDesc; } });
14
- Object.defineProperty(exports, "Date", { enumerable: true, get: function () { return browser_1.Date; } });
15
- Object.defineProperty(exports, "PAst", { enumerable: true, get: function () { return browser_1.PAst; } });
16
- Object.defineProperty(exports, "Not", { enumerable: true, get: function () { return browser_1.Not; } });
17
- Object.defineProperty(exports, "PValue", { enumerable: true, get: function () { return browser_1.PValue; } });
18
- Object.defineProperty(exports, "AbstractCompare", { enumerable: true, get: function () { return browser_1.AbstractCompare; } });
19
- Object.defineProperty(exports, "PObject", { enumerable: true, get: function () { return browser_1.PObject; } });
20
- Object.defineProperty(exports, "AbstractOperator", { enumerable: true, get: function () { return browser_1.AbstractOperator; } });
21
- Object.defineProperty(exports, "Avg", { enumerable: true, get: function () { return browser_1.Avg; } });
22
- Object.defineProperty(exports, "Count", { enumerable: true, get: function () { return browser_1.Count; } });
23
- Object.defineProperty(exports, "DateToString", { enumerable: true, get: function () { return browser_1.DateToString; } });
24
- Object.defineProperty(exports, "Day", { enumerable: true, get: function () { return browser_1.Day; } });
25
- Object.defineProperty(exports, "EqualDesc", { enumerable: true, get: function () { return browser_1.EqualDesc; } });
26
- Object.defineProperty(exports, "First", { enumerable: true, get: function () { return browser_1.First; } });
27
- Object.defineProperty(exports, "GreaterThen", { enumerable: true, get: function () { return browser_1.GreaterThen; } });
28
- Object.defineProperty(exports, "GreaterThenEqual", { enumerable: true, get: function () { return browser_1.GreaterThenEqual; } });
29
- Object.defineProperty(exports, "Group", { enumerable: true, get: function () { return browser_1.Group; } });
30
- Object.defineProperty(exports, "IsNotNull", { enumerable: true, get: function () { return browser_1.IsNotNull; } });
31
- Object.defineProperty(exports, "IsNull", { enumerable: true, get: function () { return browser_1.IsNull; } });
32
- Object.defineProperty(exports, "Last", { enumerable: true, get: function () { return browser_1.Last; } });
33
- Object.defineProperty(exports, "LessThen", { enumerable: true, get: function () { return browser_1.LessThen; } });
34
- Object.defineProperty(exports, "LessThenEqual", { enumerable: true, get: function () { return browser_1.LessThenEqual; } });
35
- Object.defineProperty(exports, "Limit", { enumerable: true, get: function () { return browser_1.Limit; } });
36
- Object.defineProperty(exports, "Map", { enumerable: true, get: function () { return browser_1.Map; } });
37
- Object.defineProperty(exports, "Match", { enumerable: true, get: function () { return browser_1.Match; } });
38
- Object.defineProperty(exports, "Max", { enumerable: true, get: function () { return browser_1.Max; } });
39
- Object.defineProperty(exports, "Min", { enumerable: true, get: function () { return browser_1.Min; } });
40
- Object.defineProperty(exports, "Month", { enumerable: true, get: function () { return browser_1.Month; } });
41
- Object.defineProperty(exports, "MultiArgs", { enumerable: true, get: function () { return browser_1.MultiArgs; } });
42
- Object.defineProperty(exports, "Multiply", { enumerable: true, get: function () { return browser_1.Multiply; } });
43
- Object.defineProperty(exports, "NotEqual", { enumerable: true, get: function () { return browser_1.NotEqual; } });
44
- Object.defineProperty(exports, "NotIn", { enumerable: true, get: function () { return browser_1.NotIn; } });
45
- Object.defineProperty(exports, "Operators", { enumerable: true, get: function () { return browser_1.Operators; } });
46
- Object.defineProperty(exports, "OrDesc", { enumerable: true, get: function () { return browser_1.OrDesc; } });
47
- Object.defineProperty(exports, "PArray", { enumerable: true, get: function () { return browser_1.PArray; } });
48
- Object.defineProperty(exports, "Project", { enumerable: true, get: function () { return browser_1.Project; } });
49
- Object.defineProperty(exports, "Regex", { enumerable: true, get: function () { return browser_1.Regex; } });
50
- Object.defineProperty(exports, "Skip", { enumerable: true, get: function () { return browser_1.Skip; } });
51
- Object.defineProperty(exports, "Sort", { enumerable: true, get: function () { return browser_1.Sort; } });
52
- Object.defineProperty(exports, "Substr", { enumerable: true, get: function () { return browser_1.Substr; } });
53
- Object.defineProperty(exports, "Sum", { enumerable: true, get: function () { return browser_1.Sum; } });
54
- Object.defineProperty(exports, "ToFloat", { enumerable: true, get: function () { return browser_1.ToFloat; } });
55
- Object.defineProperty(exports, "ToInt", { enumerable: true, get: function () { return browser_1.ToInt; } });
56
- Object.defineProperty(exports, "ToLower", { enumerable: true, get: function () { return browser_1.ToLower; } });
57
- Object.defineProperty(exports, "ToUpper", { enumerable: true, get: function () { return browser_1.ToUpper; } });
58
- Object.defineProperty(exports, "Unset", { enumerable: true, get: function () { return browser_1.Unset; } });
59
- Object.defineProperty(exports, "Value", { enumerable: true, get: function () { return browser_1.Value; } });
60
- Object.defineProperty(exports, "ValueRef", { enumerable: true, get: function () { return browser_1.ValueRef; } });
61
- Object.defineProperty(exports, "Year", { enumerable: true, get: function () { return browser_1.Year; } });
62
- Object.defineProperty(exports, "Eq", { enumerable: true, get: function () { return browser_1.Eq; } });
63
- Object.defineProperty(exports, "And", { enumerable: true, get: function () { return browser_1.And; } });
64
- Object.defineProperty(exports, "GROUP_ID", { enumerable: true, get: function () { return browser_1.GROUP_ID; } });
65
- Object.defineProperty(exports, "Or", { enumerable: true, get: function () { return browser_1.Or; } });
2
+ export { NUMBER_PROJECT_SUPPORT, AUTO_EQUAL_CONV_SUPPORT, Context, Like, In, AndDesc, Date, Expr, NotDesc, AbstractValue, AbstractCompare,
3
+ // PObject,
4
+ AbstractOperator, Avg, Count, DateToString, Day, EqualDesc, First, GreaterThen, GreaterThenEqual, Group, IsNotNull, IsNull, Last, LessThen, LessThenEqual, Limit, Map, Match, Max, Min, Month, MultiArgs, Multiply, NotEqual, NotIn, Components, OrDesc,
5
+ // PArray,
6
+ Project, Regex, Skip, Sort, Substr, Sum, ToFloat, ToInt, ToLower, ToUpper, Unset, ValueDesc, RefDesc, Year, Eq, And, GROUP_ID, Or } from './browser.js';
66
7
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,sCAAsC;AACtC,qCAmDmB;AAlDjB,iHAAA,sBAAsB,OAAA;AACtB,kHAAA,uBAAuB,OAAA;AACvB,kGAAA,OAAO,OAAA;AACP,0GAAA,eAAe,OAAA;AACf,+FAAA,IAAI,OAAA;AACJ,6FAAA,EAAE,OAAA;AACF,kGAAA,OAAO,OAAA;AACP,+FAAA,IAAI,OAAA;AACJ,+FAAA,IAAI,OAAA;AACJ,8FAAA,GAAG,OAAA;AACH,iGAAA,MAAM,OAAA;AACN,0GAAA,eAAe,OAAA;AACf,kGAAA,OAAO,OAAA;AACP,2GAAA,gBAAgB,OAAA;AAChB,8FAAA,GAAG,OAAA;AACH,gGAAA,KAAK,OAAA;AACL,uGAAA,YAAY,OAAA;AACZ,8FAAA,GAAG,OAAA;AACH,oGAAA,SAAS,OAAA;AACT,gGAAA,KAAK,OAAA;AACL,sGAAA,WAAW,OAAA;AACX,2GAAA,gBAAgB,OAAA;AAChB,gGAAA,KAAK,OAAA;AAEL,oGAAA,SAAS,OAAA;AACT,iGAAA,MAAM,OAAA;AACN,+FAAA,IAAI,OAAA;AACJ,mGAAA,QAAQ,OAAA;AACR,wGAAA,aAAa,OAAA;AACb,gGAAA,KAAK,OAAA;AACL,8FAAA,GAAG,OAAA;AACH,gGAAA,KAAK,OAAA;AACL,8FAAA,GAAG,OAAA;AACH,8FAAA,GAAG,OAAA;AACH,gGAAA,KAAK,OAAA;AACL,oGAAA,SAAS,OAAA;AACT,mGAAA,QAAQ,OAAA;AACR,mGAAA,QAAQ,OAAA;AACR,gGAAA,KAAK,OAAA;AACL,oGAAA,SAAS,OAAA;AACT,iGAAA,MAAM,OAAA;AACN,iGAAA,MAAM,OAAA;AACN,kGAAA,OAAO,OAAA;AACP,gGAAA,KAAK,OAAA;AACL,+FAAA,IAAI,OAAA;AACJ,+FAAA,IAAI,OAAA;AACJ,iGAAA,MAAM,OAAA;AACN,8FAAA,GAAG,OAAA;AACH,kGAAA,OAAO,OAAA;AACP,gGAAA,KAAK,OAAA;AAAE,kGAAA,OAAO,OAAA;AAAE,kGAAA,OAAO,OAAA;AAAE,gGAAA,KAAK,OAAA;AAAE,gGAAA,KAAK,OAAA;AAAE,mGAAA,QAAQ,OAAA;AAAE,+FAAA,IAAI,OAAA;AAAuB,6FAAA,EAAE,OAAA;AAAE,8FAAA,GAAG,OAAA;AAAE,mGAAA,QAAQ,OAAA;AAAE,6FAAA,EAAE,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,OAAO,EACP,IAAI,EACJ,EAAE,EACF,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,aAAa,EACb,eAAe;AACf,WAAW;AACX,gBAAgB,EAChB,GAAG,EACH,KAAK,EACL,YAAY,EACZ,GAAG,EACH,SAAS,EACT,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,KAAK,EAEL,SAAS,EACT,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,KAAK,EACL,GAAG,EACH,KAAK,EACL,GAAG,EACH,GAAG,EACH,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,UAAU,EACV,MAAM;AACN,UAAU;AACV,OAAO,EACP,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,GAAG,EACH,OAAO,EACP,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAkB,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAChG,MAAM,cAAc,CAAC"}