@loopstack/loopstack-studio 0.25.0 → 0.25.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 (196) hide show
  1. package/dist/components/ai-elements/message.js +2 -2
  2. package/dist/components/ai-elements/reasoning.js +9 -9
  3. package/dist/loopstack-studio.css +1 -1
  4. package/dist/node_modules/@chevrotain/gast/lib/src/helpers.js +2 -5
  5. package/dist/node_modules/@chevrotain/gast/lib/src/model.js +69 -72
  6. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{architecture-7HQA4BMR.js → architecture-YZFGNWBL.js} +2 -2
  7. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-TQ3KTPDO.js → chunk-2KRD3SAO.js} +1 -1
  8. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-4F5CHEZ2.js → chunk-67CJDMHE.js} +1 -1
  9. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-UMXZTB3W.js → chunk-7N4EOEYR.js} +5 -2
  10. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-PL6DKKU2.js → chunk-AA7GKIK3.js} +1 -1
  11. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js +23 -0
  12. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-SJTYNZTY.js → chunk-FOC6F5B3.js} +1 -1
  13. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js +1197 -0
  14. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-FRFDVMJY.js → chunk-KGLVRYIC.js} +1 -1
  15. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-B2363JML.js → chunk-LIHQZDEY.js} +1 -1
  16. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js +29 -0
  17. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{gitGraph-G5XIXVHT.js → gitGraph-7Q5UKJZL.js} +2 -2
  18. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-OMHHGYJF.js +3 -0
  19. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-4T2RLAQJ.js +3 -0
  20. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-ZZUOXDRM.js +3 -0
  21. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-PYXPWWZC.js +3 -0
  22. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-SZITEDCU.js +3 -0
  23. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-W4RFUUIX.js +3 -0
  24. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-RL74JXVD.js +3 -0
  25. package/dist/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +27 -17
  26. package/dist/node_modules/@upsetjs/venn.js/build/venn.esm.js +903 -0
  27. package/dist/node_modules/@xyflow/react/dist/esm/index.js +76 -75
  28. package/dist/node_modules/@xyflow/system/dist/esm/index.js +30 -28
  29. package/dist/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js +31 -40
  30. package/dist/node_modules/chevrotain/lib/src/parse/errors_public.js +23 -26
  31. package/dist/node_modules/chevrotain/lib/src/parse/exceptions_public.js +12 -13
  32. package/dist/node_modules/chevrotain/lib/src/parse/grammar/checks.js +181 -205
  33. package/dist/node_modules/chevrotain/lib/src/parse/grammar/first.js +11 -13
  34. package/dist/node_modules/chevrotain/lib/src/parse/grammar/follow.js +12 -13
  35. package/dist/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js +8 -9
  36. package/dist/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js +176 -183
  37. package/dist/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js +17 -19
  38. package/dist/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js +153 -160
  39. package/dist/node_modules/chevrotain/lib/src/parse/grammar/resolver.js +10 -12
  40. package/dist/node_modules/chevrotain/lib/src/parse/grammar/rest.js +36 -38
  41. package/dist/node_modules/chevrotain/lib/src/parse/parser/parser.js +37 -45
  42. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js +12 -14
  43. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js +80 -86
  44. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js +6 -2
  45. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js +39 -41
  46. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js +7 -8
  47. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js +69 -70
  48. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js +215 -205
  49. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js +76 -76
  50. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js +29 -39
  51. package/dist/node_modules/chevrotain/lib/src/scan/lexer.js +252 -274
  52. package/dist/node_modules/chevrotain/lib/src/scan/lexer_public.js +93 -106
  53. package/dist/node_modules/chevrotain/lib/src/scan/reg_exp.js +61 -61
  54. package/dist/node_modules/chevrotain/lib/src/scan/tokens.js +31 -41
  55. package/dist/node_modules/chevrotain/lib/src/scan/tokens_public.js +15 -18
  56. package/dist/node_modules/chevrotain-allstar/lib/all-star-lookahead.js +226 -226
  57. package/dist/node_modules/chevrotain-allstar/lib/atn.js +17 -17
  58. package/dist/node_modules/cytoscape/dist/cytoscape.esm.js +17 -14
  59. package/dist/node_modules/dagre-d3-es/src/dagre/greedy-fas.js +19 -19
  60. package/dist/node_modules/dagre-d3-es/src/dagre/layout.js +48 -48
  61. package/dist/node_modules/dagre-d3-es/src/dagre/nesting-graph.js +9 -9
  62. package/dist/node_modules/dagre-d3-es/src/dagre/order/cross-count.js +3 -3
  63. package/dist/node_modules/dagre-d3-es/src/dagre/order/index.js +11 -11
  64. package/dist/node_modules/dagre-d3-es/src/dagre/order/init-order.js +4 -4
  65. package/dist/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js +4 -4
  66. package/dist/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js +8 -8
  67. package/dist/node_modules/dagre-d3-es/src/dagre/order/sort.js +5 -5
  68. package/dist/node_modules/dagre-d3-es/src/dagre/position/bk.js +61 -61
  69. package/dist/node_modules/dagre-d3-es/src/dagre/position/index.js +1 -1
  70. package/dist/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js +25 -25
  71. package/dist/node_modules/dagre-d3-es/src/dagre/rank/util.js +8 -8
  72. package/dist/node_modules/dagre-d3-es/src/dagre/util.js +48 -48
  73. package/dist/node_modules/dagre-d3-es/src/graphlib/graph.js +109 -109
  74. package/dist/node_modules/dagre-d3-es/src/graphlib/json.js +17 -17
  75. package/dist/node_modules/dompurify/dist/purify.es.js +67 -67
  76. package/dist/node_modules/katex/dist/katex.js +1256 -1209
  77. package/dist/node_modules/khroma/dist/methods/transparentize.js +3 -0
  78. package/dist/node_modules/lodash-es/_baseClone.js +2 -2
  79. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +6 -6
  80. package/dist/node_modules/lodash-es/_baseToString.js +1 -1
  81. package/dist/node_modules/lodash-es/_baseUniq.js +1 -1
  82. package/dist/node_modules/lodash-es/_createSet.js +1 -1
  83. package/dist/node_modules/lodash-es/_getAllKeys.js +2 -2
  84. package/dist/node_modules/lodash-es/_getAllKeysIn.js +1 -1
  85. package/dist/node_modules/lodash-es/findIndex.js +2 -2
  86. package/dist/node_modules/lodash-es/flatMap.js +1 -1
  87. package/dist/node_modules/lodash-es/forEach.js +1 -1
  88. package/dist/node_modules/lodash-es/max.js +1 -1
  89. package/dist/node_modules/lodash-es/min.js +1 -1
  90. package/dist/node_modules/lodash-es/minBy.js +1 -1
  91. package/dist/node_modules/lodash-es/reduce.js +1 -1
  92. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-Q4EWVU46.js +691 -0
  93. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{blockDiagram-VD42YOAC.js → blockDiagram-DXYQGD6D.js} +183 -157
  94. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{c4Diagram-YG6GDRKO.js → c4Diagram-AHTNJAMY.js} +65 -63
  95. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-336JU56O.js +47 -0
  96. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-EXTU4WIE.js → chunk-426QAEUC.js} +1 -1
  97. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-B4BG7PRW.js → chunk-4TB4RGXK.js} +533 -393
  98. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5FUZZQ4R.js +3638 -0
  99. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-S3R3BYOJ.js → chunk-5PVQY5BW.js} +1 -1
  100. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-HN2XXSSU.js → chunk-BSJP7CBP.js} +20 -14
  101. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-QN33PNHL.js → chunk-EDXVE4YY.js} +1 -1
  102. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ENJZ2VHE.js +568 -0
  103. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ICPOFSXX.js +2320 -0
  104. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-DI55MBZ5.js → chunk-OYMX7WX6.js} +35 -21
  105. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-U2HBQHQK.js +272 -0
  106. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-ATLVNIR6.js → chunk-X2U36JSP.js} +1 -1
  107. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-MI3HLSF2.js → chunk-XPW4576I.js} +11 -7
  108. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-YZCP3GAM.js +60 -0
  109. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ZZ45TVLE.js +30 -0
  110. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{classDiagram-2ON5EDUG.js → classDiagram-6PBFFD2Q.js} +12 -11
  111. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{classDiagram-v2-WZHVMYZB.js → classDiagram-v2-HSJHXN6E.js} +12 -11
  112. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{dagre-6UL2VRFP.js → dagre-KV5264BT.js} +8 -8
  113. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-5BDNPKRD.js +99 -0
  114. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{diagram-PSM6KHXK.js → diagram-G4DWMVQ6.js} +20 -23
  115. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-MMDJMWI5.js +211 -0
  116. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{diagram-S2PKOQOG.js → diagram-TYMM5635.js} +4 -4
  117. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{erDiagram-Q2GNP2WA.js → erDiagram-SMLLAGMA.js} +486 -386
  118. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{flowDiagram-NV44I4VS.js → flowDiagram-DWJPFMVM.js} +915 -898
  119. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{ganttDiagram-JELNMOA3.js → ganttDiagram-T4ZO3ILL.js} +59 -29
  120. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-UUTBAWPF.js +728 -0
  121. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-42DDH7IO.js +17 -0
  122. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/ishikawaDiagram-UXIWVN3A.js +714 -0
  123. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{journeyDiagram-XKPGCS4Q.js → journeyDiagram-VCZTEJTY.js} +32 -32
  124. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{kanban-definition-3W4ZIXB7.js → kanban-definition-6JOO6SKY.js} +13 -9
  125. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{mindmap-definition-VGOIOE7T.js → mindmap-definition-QFDTVHPH.js} +105 -59
  126. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-DEJITSTG.js +117 -0
  127. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{quadrantDiagram-AYHSOK5B.js → quadrantDiagram-34T5L4WZ.js} +1 -1
  128. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{requirementDiagram-UZGBJVZJ.js → requirementDiagram-MS252O5E.js} +49 -19
  129. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{sankeyDiagram-TZEHDZUN.js → sankeyDiagram-XADWPNL6.js} +1 -1
  130. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-FGHM5R23.js +4155 -0
  131. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{stateDiagram-FKZM4ZOC.js → stateDiagram-FHFEXIEX.js} +12 -12
  132. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{stateDiagram-v2-4FDKWEC3.js → stateDiagram-v2-QKLJ7IA2.js} +11 -11
  133. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-GMOUNBTQ.js +1071 -0
  134. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/vennDiagram-DHZGUBPP.js +959 -0
  135. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/wardleyDiagram-NUSXRM2D.js +574 -0
  136. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{xychartDiagram-PRI3JC2R.js → xychartDiagram-5P7HB3ND.js} +38 -35
  137. package/dist/node_modules/mermaid/dist/mermaid.core.js +235 -192
  138. package/dist/node_modules/nanoid/url-alphabet/index.js +1 -1
  139. package/dist/node_modules/remend/dist/index.js +333 -264
  140. package/dist/node_modules/streamdown/dist/chunk-BO2N2NFS.js +2498 -0
  141. package/dist/node_modules/streamdown/dist/highlighted-body-OFNGDK62.js +35 -0
  142. package/dist/node_modules/streamdown/dist/index.js +1 -1
  143. package/dist/node_modules/streamdown/dist/mermaid-GHXKKRXX.js +3 -0
  144. package/dist/node_modules/streamdown/node_modules/marked/lib/marked.esm.js +672 -667
  145. package/dist/pages/DashboardPage.js +3 -3
  146. package/package.json +2 -2
  147. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-TCCFYFTB.js +0 -787
  148. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-VBDWY6EO.js +0 -3
  149. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-DYOGHKS2.js +0 -3
  150. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-VRWISCQL.js +0 -3
  151. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-ZZBFDIW7.js +0 -3
  152. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-GDKQZRPO.js +0 -3
  153. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/context_assist.js +0 -16
  154. package/dist/node_modules/lodash-es/_arrayAggregator.js +0 -9
  155. package/dist/node_modules/lodash-es/_arrayEvery.js +0 -6
  156. package/dist/node_modules/lodash-es/_baseAggregator.js +0 -8
  157. package/dist/node_modules/lodash-es/_baseDifference.js +0 -22
  158. package/dist/node_modules/lodash-es/_baseEvery.js +0 -9
  159. package/dist/node_modules/lodash-es/_baseIsRegExp.js +0 -8
  160. package/dist/node_modules/lodash-es/_baseSlice.js +0 -8
  161. package/dist/node_modules/lodash-es/_baseSome.js +0 -9
  162. package/dist/node_modules/lodash-es/_createAggregator.js +0 -12
  163. package/dist/node_modules/lodash-es/assign.js +0 -14
  164. package/dist/node_modules/lodash-es/compact.js +0 -9
  165. package/dist/node_modules/lodash-es/difference.js +0 -8
  166. package/dist/node_modules/lodash-es/drop.js +0 -8
  167. package/dist/node_modules/lodash-es/dropRight.js +0 -8
  168. package/dist/node_modules/lodash-es/every.js +0 -11
  169. package/dist/node_modules/lodash-es/groupBy.js +0 -6
  170. package/dist/node_modules/lodash-es/head.js +0 -5
  171. package/dist/node_modules/lodash-es/includes.js +0 -13
  172. package/dist/node_modules/lodash-es/indexOf.js +0 -11
  173. package/dist/node_modules/lodash-es/isRegExp.js +0 -5
  174. package/dist/node_modules/lodash-es/negate.js +0 -16
  175. package/dist/node_modules/lodash-es/pickBy.js +0 -15
  176. package/dist/node_modules/lodash-es/reject.js +0 -10
  177. package/dist/node_modules/lodash-es/some.js +0 -11
  178. package/dist/node_modules/lodash-es/uniq.js +0 -6
  179. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-VXUJARFQ.js +0 -673
  180. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ABZYJK2D.js +0 -1547
  181. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-CVBHYZKI.js +0 -10
  182. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-DR5Q36YT.js +0 -135
  183. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JA3XYJ7Z.js +0 -247
  184. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-JZLCHNYA.js +0 -3516
  185. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-N4CR4FBY.js +0 -39
  186. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QXUST7PY.js +0 -497
  187. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-TZMSLE5B.js +0 -55
  188. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-QEK2KX5R.js +0 -211
  189. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-V2S2FVAM.js +0 -621
  190. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-HS3SLOUP.js +0 -18
  191. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-ADFJNKIX.js +0 -117
  192. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-WL72ISMW.js +0 -3560
  193. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-IT6M3QCI.js +0 -833
  194. package/dist/node_modules/streamdown/dist/chunk-RLXIAIE6.js +0 -2189
  195. package/dist/node_modules/streamdown/dist/highlighted-body-B3W2YXNL.js +0 -33
  196. package/dist/node_modules/streamdown/dist/mermaid-3ZIDBTTL.js +0 -3
@@ -1,21 +1,3 @@
1
- import isEmpty_default from "../../../../../lodash-es/isEmpty.js";
2
- import flatten_default from "../../../../../lodash-es/flatten.js";
3
- import clone_default from "../../../../../lodash-es/clone.js";
4
- import compact_default from "../../../../../lodash-es/compact.js";
5
- import difference_default from "../../../../../lodash-es/difference.js";
6
- import drop_default from "../../../../../lodash-es/drop.js";
7
- import dropRight_default from "../../../../../lodash-es/dropRight.js";
8
- import forEach_default from "../../../../../lodash-es/forEach.js";
9
- import filter_default from "../../../../../lodash-es/filter.js";
10
- import head_default from "../../../../../lodash-es/head.js";
11
- import map_default from "../../../../../lodash-es/map.js";
12
- import flatMap_default from "../../../../../lodash-es/flatMap.js";
13
- import groupBy_default from "../../../../../lodash-es/groupBy.js";
14
- import values_default from "../../../../../lodash-es/values.js";
15
- import includes_default from "../../../../../lodash-es/includes.js";
16
- import pickBy_default from "../../../../../lodash-es/pickBy.js";
17
- import reduce_default from "../../../../../lodash-es/reduce.js";
18
- import reject_default from "../../../../../lodash-es/reject.js";
19
1
  import { Alternation, Alternative, NonTerminal, Option, Repetition, RepetitionMandatory, RepetitionMandatoryWithSeparator, RepetitionWithSeparator, Terminal } from "../../../../../@chevrotain/gast/lib/src/model.js";
20
2
  import { GAstVisitor } from "../../../../../@chevrotain/gast/lib/src/visitor.js";
21
3
  import { getProductionDslName, isOptionalProd } from "../../../../../@chevrotain/gast/lib/src/helpers.js";
@@ -23,277 +5,271 @@ import { tokenStructuredMatcher } from "../../scan/tokens.js";
23
5
  import { nextPossibleTokensAfter } from "./interpreter.js";
24
6
  import { containsPath, getLookaheadPathsForOptionalProd, getLookaheadPathsForOr, getProdType, isStrictPrefixOfPath } from "./lookahead.js";
25
7
  import { ParserDefinitionErrorType } from "../parser/parser.js";
26
- function validateLookahead(h) {
27
- return map_default(h.lookaheadStrategy.validate({
28
- rules: h.rules,
29
- tokenTypes: h.tokenTypes,
30
- grammarName: h.grammarName
31
- }), (h) => Object.assign({ type: ParserDefinitionErrorType.CUSTOM_LOOKAHEAD_VALIDATION }, h));
8
+ function validateLookahead(a) {
9
+ return a.lookaheadStrategy.validate({
10
+ rules: a.rules,
11
+ tokenTypes: a.tokenTypes,
12
+ grammarName: a.grammarName
13
+ }).map((a) => Object.assign({ type: ParserDefinitionErrorType.CUSTOM_LOOKAHEAD_VALIDATION }, a));
32
14
  }
33
- function validateGrammar(h, W, G, K) {
34
- let q = flatMap_default(h, (h) => validateDuplicateProductions(h, G)), J = checkTerminalAndNoneTerminalsNameSpace(h, W, G), Y = flatMap_default(h, (h) => validateTooManyAlts(h, G)), X = flatMap_default(h, (W) => validateRuleDoesNotAlreadyExist(W, h, K, G));
35
- return q.concat(J, Y, X);
15
+ function validateGrammar(a, D, O, k) {
16
+ let A = a.flatMap((a) => validateDuplicateProductions(a, O)), j = checkTerminalAndNoneTerminalsNameSpace(a, D, O), M = a.flatMap((a) => validateTooManyAlts(a, O)), N = a.flatMap((D) => validateRuleDoesNotAlreadyExist(D, a, k, O));
17
+ return A.concat(j, M, N);
36
18
  }
37
- function validateDuplicateProductions(h, W) {
38
- let G = new OccurrenceValidationCollector();
39
- h.accept(G);
40
- let K = G.allProductions;
41
- return map_default(values_default(pickBy_default(groupBy_default(K, identifyProductionForDuplicates), (h) => h.length > 1)), (G) => {
42
- let K = head_default(G), q = W.buildDuplicateFoundError(h, G), J = getProductionDslName(K), Y = {
43
- message: q,
19
+ function validateDuplicateProductions(a, D) {
20
+ let O = new OccurrenceValidationCollector();
21
+ a.accept(O);
22
+ let k = O.allProductions, A = Object.groupBy(k, identifyProductionForDuplicates), j = Object.fromEntries(Object.entries(A).filter(([a, D]) => D.length > 1));
23
+ return Object.values(j).map((O) => {
24
+ let k = O[0], A = D.buildDuplicateFoundError(a, O), j = getProductionDslName(k), M = {
25
+ message: A,
44
26
  type: ParserDefinitionErrorType.DUPLICATE_PRODUCTIONS,
45
- ruleName: h.name,
46
- dslName: J,
47
- occurrence: K.idx
48
- }, X = getExtraProductionArgument(K);
49
- return X && (Y.parameter = X), Y;
27
+ ruleName: a.name,
28
+ dslName: j,
29
+ occurrence: k.idx
30
+ }, N = getExtraProductionArgument(k);
31
+ return N && (M.parameter = N), M;
50
32
  });
51
33
  }
52
- function identifyProductionForDuplicates(h) {
53
- return `${getProductionDslName(h)}_#_${h.idx}_#_${getExtraProductionArgument(h)}`;
34
+ function identifyProductionForDuplicates(a) {
35
+ return `${getProductionDslName(a)}_#_${a.idx}_#_${getExtraProductionArgument(a)}`;
54
36
  }
55
- function getExtraProductionArgument(h) {
56
- return h instanceof Terminal ? h.terminalType.name : h instanceof NonTerminal ? h.nonTerminalName : "";
37
+ function getExtraProductionArgument(a) {
38
+ return a instanceof Terminal ? a.terminalType.name : a instanceof NonTerminal ? a.nonTerminalName : "";
57
39
  }
58
40
  var OccurrenceValidationCollector = class extends GAstVisitor {
59
41
  constructor() {
60
42
  super(...arguments), this.allProductions = [];
61
43
  }
62
- visitNonTerminal(h) {
63
- this.allProductions.push(h);
44
+ visitNonTerminal(a) {
45
+ this.allProductions.push(a);
64
46
  }
65
- visitOption(h) {
66
- this.allProductions.push(h);
47
+ visitOption(a) {
48
+ this.allProductions.push(a);
67
49
  }
68
- visitRepetitionWithSeparator(h) {
69
- this.allProductions.push(h);
50
+ visitRepetitionWithSeparator(a) {
51
+ this.allProductions.push(a);
70
52
  }
71
- visitRepetitionMandatory(h) {
72
- this.allProductions.push(h);
53
+ visitRepetitionMandatory(a) {
54
+ this.allProductions.push(a);
73
55
  }
74
- visitRepetitionMandatoryWithSeparator(h) {
75
- this.allProductions.push(h);
56
+ visitRepetitionMandatoryWithSeparator(a) {
57
+ this.allProductions.push(a);
76
58
  }
77
- visitRepetition(h) {
78
- this.allProductions.push(h);
59
+ visitRepetition(a) {
60
+ this.allProductions.push(a);
79
61
  }
80
- visitAlternation(h) {
81
- this.allProductions.push(h);
62
+ visitAlternation(a) {
63
+ this.allProductions.push(a);
82
64
  }
83
- visitTerminal(h) {
84
- this.allProductions.push(h);
65
+ visitTerminal(a) {
66
+ this.allProductions.push(a);
85
67
  }
86
68
  };
87
- function validateRuleDoesNotAlreadyExist(h, W, G, K) {
88
- let q = [];
89
- if (reduce_default(W, (W, G) => G.name === h.name ? W + 1 : W, 0) > 1) {
90
- let W = K.buildDuplicateRuleNameError({
91
- topLevelRule: h,
92
- grammarName: G
69
+ function validateRuleDoesNotAlreadyExist(a, D, O, k) {
70
+ let A = [];
71
+ if (D.reduce((D, O) => O.name === a.name ? D + 1 : D, 0) > 1) {
72
+ let D = k.buildDuplicateRuleNameError({
73
+ topLevelRule: a,
74
+ grammarName: O
93
75
  });
94
- q.push({
95
- message: W,
76
+ A.push({
77
+ message: D,
96
78
  type: ParserDefinitionErrorType.DUPLICATE_RULE_NAME,
97
- ruleName: h.name
79
+ ruleName: a.name
98
80
  });
99
81
  }
100
- return q;
82
+ return A;
101
83
  }
102
- function validateRuleIsOverridden(h, W, G) {
103
- let K = [], q;
104
- return includes_default(W, h) || (q = `Invalid rule override, rule: ->${h}<- cannot be overridden in the grammar: ->${G}<-as it is not defined in any of the super grammars `, K.push({
105
- message: q,
84
+ function validateRuleIsOverridden(a, D, O) {
85
+ let k = [], A;
86
+ return D.includes(a) || (A = `Invalid rule override, rule: ->${a}<- cannot be overridden in the grammar: ->${O}<-as it is not defined in any of the super grammars `, k.push({
87
+ message: A,
106
88
  type: ParserDefinitionErrorType.INVALID_RULE_OVERRIDE,
107
- ruleName: h
108
- })), K;
89
+ ruleName: a
90
+ })), k;
109
91
  }
110
- function validateNoLeftRecursion(W, K, J, Y = []) {
111
- let X = [], Z = getFirstNoneTerminal(K.definition);
112
- if (isEmpty_default(Z)) return [];
92
+ function validateNoLeftRecursion(a, D, O, k = []) {
93
+ let A = [], j = getFirstNoneTerminal(D.definition);
94
+ if (j.length === 0) return [];
113
95
  {
114
- let h = W.name;
115
- includes_default(Z, W) && X.push({
116
- message: J.buildLeftRecursionError({
117
- topLevelRule: W,
118
- leftRecursionPath: Y
96
+ let D = a.name;
97
+ j.includes(a) && A.push({
98
+ message: O.buildLeftRecursionError({
99
+ topLevelRule: a,
100
+ leftRecursionPath: k
119
101
  }),
120
102
  type: ParserDefinitionErrorType.LEFT_RECURSION,
121
- ruleName: h
103
+ ruleName: D
122
104
  });
123
- let K = flatMap_default(difference_default(Z, Y.concat([W])), (h) => {
124
- let K = clone_default(Y);
125
- return K.push(h), validateNoLeftRecursion(W, h, J, K);
105
+ let M = k.concat([a]), N = j.filter((a) => !M.includes(a)).flatMap((D) => {
106
+ let A = [...k];
107
+ return A.push(D), validateNoLeftRecursion(a, D, O, A);
126
108
  });
127
- return X.concat(K);
109
+ return A.concat(N);
128
110
  }
129
111
  }
130
- function getFirstNoneTerminal(G) {
131
- let K = [];
132
- if (isEmpty_default(G)) return K;
133
- let q = head_default(G);
112
+ function getFirstNoneTerminal(P) {
113
+ let F = [];
114
+ if (P.length === 0) return F;
115
+ let I = P[0];
134
116
  /* istanbul ignore else */
135
- if (q instanceof NonTerminal) K.push(q.referencedRule);
136
- else if (q instanceof Alternative || q instanceof Option || q instanceof RepetitionMandatory || q instanceof RepetitionMandatoryWithSeparator || q instanceof RepetitionWithSeparator || q instanceof Repetition) K = K.concat(getFirstNoneTerminal(q.definition));
137
- else if (q instanceof Alternation) K = flatten_default(map_default(q.definition, (h) => getFirstNoneTerminal(h.definition)));
138
- else if (!(q instanceof Terminal)) throw Error("non exhaustive match");
139
- let Y = isOptionalProd(q), X = G.length > 1;
140
- if (Y && X) {
141
- let h = drop_default(G);
142
- return K.concat(getFirstNoneTerminal(h));
143
- } else return K;
117
+ if (I instanceof NonTerminal) F.push(I.referencedRule);
118
+ else if (I instanceof Alternative || I instanceof Option || I instanceof RepetitionMandatory || I instanceof RepetitionMandatoryWithSeparator || I instanceof RepetitionWithSeparator || I instanceof Repetition) F = F.concat(getFirstNoneTerminal(I.definition));
119
+ else if (I instanceof Alternation) F = I.definition.map((a) => getFirstNoneTerminal(a.definition)).flat();
120
+ else if (!(I instanceof Terminal)) throw Error("non exhaustive match");
121
+ let L = isOptionalProd(I), R = P.length > 1;
122
+ if (L && R) {
123
+ let a = P.slice(1);
124
+ return F.concat(getFirstNoneTerminal(a));
125
+ } else return F;
144
126
  }
145
127
  var OrCollector = class extends GAstVisitor {
146
128
  constructor() {
147
129
  super(...arguments), this.alternations = [];
148
130
  }
149
- visitAlternation(h) {
150
- this.alternations.push(h);
131
+ visitAlternation(a) {
132
+ this.alternations.push(a);
151
133
  }
152
134
  };
153
- function validateEmptyOrAlternative(W, G) {
154
- let K = new OrCollector();
155
- W.accept(K);
156
- let q = K.alternations;
157
- return flatMap_default(q, (K) => flatMap_default(dropRight_default(K.definition), (q, J) => isEmpty_default(nextPossibleTokensAfter([q], [], tokenStructuredMatcher, 1)) ? [{
158
- message: G.buildEmptyAlternationError({
159
- topLevelRule: W,
160
- alternation: K,
161
- emptyChoiceIdx: J
135
+ function validateEmptyOrAlternative(a, D) {
136
+ let O = new OrCollector();
137
+ return a.accept(O), O.alternations.flatMap((O) => O.definition.slice(0, -1).flatMap((k, A) => nextPossibleTokensAfter([k], [], tokenStructuredMatcher, 1).length === 0 ? [{
138
+ message: D.buildEmptyAlternationError({
139
+ topLevelRule: a,
140
+ alternation: O,
141
+ emptyChoiceIdx: A
162
142
  }),
163
143
  type: ParserDefinitionErrorType.NONE_LAST_EMPTY_ALT,
164
- ruleName: W.name,
165
- occurrence: K.idx,
166
- alternative: J + 1
144
+ ruleName: a.name,
145
+ occurrence: O.idx,
146
+ alternative: A + 1
167
147
  }] : []));
168
148
  }
169
- function validateAmbiguousAlternationAlternatives(h, W, G) {
170
- let K = new OrCollector();
171
- h.accept(K);
172
- let q = K.alternations;
173
- return q = reject_default(q, (h) => h.ignoreAmbiguities === !0), flatMap_default(q, (K) => {
174
- let q = K.idx, J = getLookaheadPathsForOr(q, h, K.maxLookahead || W, K), Y = checkAlternativesAmbiguities(J, K, h, G), X = checkPrefixAlternativesAmbiguities(J, K, h, G);
175
- return Y.concat(X);
149
+ function validateAmbiguousAlternationAlternatives(a, D, O) {
150
+ let k = new OrCollector();
151
+ a.accept(k);
152
+ let A = k.alternations;
153
+ return A = A.filter((a) => a.ignoreAmbiguities !== !0), A.flatMap((k) => {
154
+ let A = k.idx, j = getLookaheadPathsForOr(A, a, k.maxLookahead || D, k), M = checkAlternativesAmbiguities(j, k, a, O), N = checkPrefixAlternativesAmbiguities(j, k, a, O);
155
+ return M.concat(N);
176
156
  });
177
157
  }
178
158
  var RepetitionCollector = class extends GAstVisitor {
179
159
  constructor() {
180
160
  super(...arguments), this.allProductions = [];
181
161
  }
182
- visitRepetitionWithSeparator(h) {
183
- this.allProductions.push(h);
162
+ visitRepetitionWithSeparator(a) {
163
+ this.allProductions.push(a);
184
164
  }
185
- visitRepetitionMandatory(h) {
186
- this.allProductions.push(h);
165
+ visitRepetitionMandatory(a) {
166
+ this.allProductions.push(a);
187
167
  }
188
- visitRepetitionMandatoryWithSeparator(h) {
189
- this.allProductions.push(h);
168
+ visitRepetitionMandatoryWithSeparator(a) {
169
+ this.allProductions.push(a);
190
170
  }
191
- visitRepetition(h) {
192
- this.allProductions.push(h);
171
+ visitRepetition(a) {
172
+ this.allProductions.push(a);
193
173
  }
194
174
  };
195
- function validateTooManyAlts(h, W) {
196
- let G = new OrCollector();
197
- h.accept(G);
198
- let K = G.alternations;
199
- return flatMap_default(K, (G) => G.definition.length > 255 ? [{
200
- message: W.buildTooManyAlternativesError({
201
- topLevelRule: h,
202
- alternation: G
175
+ function validateTooManyAlts(a, D) {
176
+ let O = new OrCollector();
177
+ return a.accept(O), O.alternations.flatMap((O) => O.definition.length > 255 ? [{
178
+ message: D.buildTooManyAlternativesError({
179
+ topLevelRule: a,
180
+ alternation: O
203
181
  }),
204
182
  type: ParserDefinitionErrorType.TOO_MANY_ALTS,
205
- ruleName: h.name,
206
- occurrence: G.idx
183
+ ruleName: a.name,
184
+ occurrence: O.idx
207
185
  }] : []);
208
186
  }
209
- function validateSomeNonEmptyLookaheadPath(G, K, q) {
210
- let J = [];
211
- return forEach_default(G, (G) => {
212
- let Y = new RepetitionCollector();
213
- G.accept(Y);
214
- let Z = Y.allProductions;
215
- forEach_default(Z, (Y) => {
216
- let X = getProdType(Y), Z = Y.maxLookahead || K, Q = Y.idx, $ = getLookaheadPathsForOptionalProd(Q, G, X, Z)[0];
217
- if (isEmpty_default(flatten_default($))) {
218
- let h = q.buildEmptyRepetitionError({
219
- topLevelRule: G,
220
- repetition: Y
187
+ function validateSomeNonEmptyLookaheadPath(a, D, O) {
188
+ let k = [];
189
+ return a.forEach((a) => {
190
+ let A = new RepetitionCollector();
191
+ a.accept(A), A.allProductions.forEach((A) => {
192
+ let j = getProdType(A), M = A.maxLookahead || D, N = A.idx;
193
+ if (getLookaheadPathsForOptionalProd(N, a, j, M)[0].flat().length === 0) {
194
+ let D = O.buildEmptyRepetitionError({
195
+ topLevelRule: a,
196
+ repetition: A
221
197
  });
222
- J.push({
223
- message: h,
198
+ k.push({
199
+ message: D,
224
200
  type: ParserDefinitionErrorType.NO_NON_EMPTY_LOOKAHEAD,
225
- ruleName: G.name
201
+ ruleName: a.name
226
202
  });
227
203
  }
228
204
  });
229
- }), J;
205
+ }), k;
230
206
  }
231
- function checkAlternativesAmbiguities(h, W, G, K) {
232
- let q = [];
233
- return map_default(reduce_default(h, (G, K, J) => (W.definition[J].ignoreAmbiguities === !0 || forEach_default(K, (K) => {
234
- let Y = [J];
235
- forEach_default(h, (h, G) => {
236
- J !== G && containsPath(h, K) && W.definition[G].ignoreAmbiguities !== !0 && Y.push(G);
237
- }), Y.length > 1 && !containsPath(q, K) && (q.push(K), G.push({
238
- alts: Y,
239
- path: K
207
+ function checkAlternativesAmbiguities(a, D, O, k) {
208
+ let A = [];
209
+ return a.reduce((O, k, j) => (D.definition[j].ignoreAmbiguities === !0 || k.forEach((k) => {
210
+ let M = [j];
211
+ a.forEach((a, O) => {
212
+ j !== O && containsPath(a, k) && D.definition[O].ignoreAmbiguities !== !0 && M.push(O);
213
+ }), M.length > 1 && !containsPath(A, k) && (A.push(k), O.push({
214
+ alts: M,
215
+ path: k
240
216
  }));
241
- }), G), []), (h) => {
242
- let q = map_default(h.alts, (h) => h + 1);
217
+ }), O), []).map((a) => {
218
+ let A = a.alts.map((a) => a + 1);
243
219
  return {
244
- message: K.buildAlternationAmbiguityError({
245
- topLevelRule: G,
246
- alternation: W,
247
- ambiguityIndices: q,
248
- prefixPath: h.path
220
+ message: k.buildAlternationAmbiguityError({
221
+ topLevelRule: O,
222
+ alternation: D,
223
+ ambiguityIndices: A,
224
+ prefixPath: a.path
249
225
  }),
250
226
  type: ParserDefinitionErrorType.AMBIGUOUS_ALTS,
251
- ruleName: G.name,
252
- occurrence: W.idx,
253
- alternatives: h.alts
227
+ ruleName: O.name,
228
+ occurrence: D.idx,
229
+ alternatives: a.alts
254
230
  };
255
231
  });
256
232
  }
257
- function checkPrefixAlternativesAmbiguities(h, W, G, q) {
258
- let J = reduce_default(h, (h, W, G) => {
259
- let K = map_default(W, (h) => ({
260
- idx: G,
261
- path: h
233
+ function checkPrefixAlternativesAmbiguities(a, D, O, k) {
234
+ let A = a.reduce((a, D, O) => {
235
+ let k = D.map((a) => ({
236
+ idx: O,
237
+ path: a
262
238
  }));
263
- return h.concat(K);
239
+ return a.concat(k);
264
240
  }, []);
265
- return compact_default(flatMap_default(J, (h) => {
266
- if (W.definition[h.idx].ignoreAmbiguities === !0) return [];
267
- let K = h.idx, Y = h.path;
268
- return map_default(filter_default(J, (h) => W.definition[h.idx].ignoreAmbiguities !== !0 && h.idx < K && isStrictPrefixOfPath(h.path, Y)), (h) => {
269
- let J = [h.idx + 1, K + 1], Y = W.idx === 0 ? "" : W.idx;
241
+ return A.flatMap((a) => {
242
+ if (D.definition[a.idx].ignoreAmbiguities === !0) return [];
243
+ let j = a.idx, M = a.path;
244
+ return A.filter((a) => D.definition[a.idx].ignoreAmbiguities !== !0 && a.idx < j && isStrictPrefixOfPath(a.path, M)).map((a) => {
245
+ let A = [a.idx + 1, j + 1], M = D.idx === 0 ? "" : D.idx;
270
246
  return {
271
- message: q.buildAlternationPrefixAmbiguityError({
272
- topLevelRule: G,
273
- alternation: W,
274
- ambiguityIndices: J,
275
- prefixPath: h.path
247
+ message: k.buildAlternationPrefixAmbiguityError({
248
+ topLevelRule: O,
249
+ alternation: D,
250
+ ambiguityIndices: A,
251
+ prefixPath: a.path
276
252
  }),
277
253
  type: ParserDefinitionErrorType.AMBIGUOUS_PREFIX_ALTS,
278
- ruleName: G.name,
279
- occurrence: Y,
280
- alternatives: J
254
+ ruleName: O.name,
255
+ occurrence: M,
256
+ alternatives: A
281
257
  };
282
258
  });
283
- }));
259
+ });
284
260
  }
285
- function checkTerminalAndNoneTerminalsNameSpace(h, W, G) {
286
- let K = [], q = map_default(W, (h) => h.name);
287
- return forEach_default(h, (h) => {
288
- let W = h.name;
289
- if (includes_default(q, W)) {
290
- let q = G.buildNamespaceConflictError(h);
291
- K.push({
292
- message: q,
261
+ function checkTerminalAndNoneTerminalsNameSpace(a, D, O) {
262
+ let k = [], A = D.map((a) => a.name);
263
+ return a.forEach((a) => {
264
+ let D = a.name;
265
+ if (A.includes(D)) {
266
+ let A = O.buildNamespaceConflictError(a);
267
+ k.push({
268
+ message: A,
293
269
  type: ParserDefinitionErrorType.CONFLICT_TOKENS_RULES_NAMESPACE,
294
- ruleName: W
270
+ ruleName: D
295
271
  });
296
272
  }
297
- }), K;
273
+ }), k;
298
274
  }
299
275
  export { validateAmbiguousAlternationAlternatives, validateEmptyOrAlternative, validateGrammar, validateLookahead, validateNoLeftRecursion, validateRuleIsOverridden, validateSomeNonEmptyLookaheadPath };
@@ -1,23 +1,21 @@
1
- import flatten_default from "../../../../../lodash-es/flatten.js";
2
- import map_default from "../../../../../lodash-es/map.js";
3
- import uniq_default from "../../../../../lodash-es/uniq.js";
4
1
  import { NonTerminal, Terminal } from "../../../../../@chevrotain/gast/lib/src/model.js";
5
2
  import { isBranchingProd, isOptionalProd, isSequenceProd } from "../../../../../@chevrotain/gast/lib/src/helpers.js";
6
- function first(e) {
3
+ function first(i) {
7
4
  /* istanbul ignore else */
8
- if (e instanceof NonTerminal) return first(e.referencedRule);
9
- if (e instanceof Terminal) return firstForTerminal(e);
10
- if (isSequenceProd(e)) return firstForSequence(e);
11
- if (isBranchingProd(e)) return firstForBranching(e);
5
+ if (i instanceof NonTerminal) return first(i.referencedRule);
6
+ if (i instanceof Terminal) return firstForTerminal(i);
7
+ if (isSequenceProd(i)) return firstForSequence(i);
8
+ if (isBranchingProd(i)) return firstForBranching(i);
12
9
  throw Error("non exhaustive match");
13
10
  }
14
11
  function firstForSequence(e) {
15
- let o = [], s = e.definition, c = 0, l = s.length > c, u, d = !0;
16
- for (; l && d;) u = s[c], d = isOptionalProd(u), o = o.concat(first(u)), c += 1, l = s.length > c;
17
- return uniq_default(o);
12
+ let n = [], r = e.definition, a = 0, o = r.length > a, s, c = !0;
13
+ for (; o && c;) s = r[a], c = isOptionalProd(s), n = n.concat(first(s)), a += 1, o = r.length > a;
14
+ return [...new Set(n)];
18
15
  }
19
- function firstForBranching(s) {
20
- return uniq_default(flatten_default(map_default(s.definition, (e) => first(e))));
16
+ function firstForBranching(e) {
17
+ let n = e.definition.map((e) => first(e));
18
+ return [...new Set(n.flat())];
21
19
  }
22
20
  function firstForTerminal(e) {
23
21
  return [e.terminalType];
@@ -1,5 +1,3 @@
1
- import assign_default from "../../../../../lodash-es/assign.js";
2
- import forEach_default from "../../../../../lodash-es/forEach.js";
3
1
  import { Alternative } from "../../../../../@chevrotain/gast/lib/src/model.js";
4
2
  import { RestWalker } from "./rest.js";
5
3
  import { first } from "./first.js";
@@ -11,19 +9,20 @@ var ResyncFollowsWalker = class extends RestWalker {
11
9
  startWalking() {
12
10
  return this.walk(this.topProd), this.follows;
13
11
  }
14
- walkTerminal(e, i, a) {}
15
- walkProdRef(e, i, o) {
16
- let s = buildBetweenProdsFollowPrefix(e.referencedRule, e.idx) + this.topProd.name, c = first(new Alternative({ definition: i.concat(o) }));
17
- this.follows[s] = c;
12
+ walkTerminal(e, n, r) {}
13
+ walkProdRef(n, i, a) {
14
+ let o = buildBetweenProdsFollowPrefix(n.referencedRule, n.idx) + this.topProd.name, s = first(new Alternative({ definition: i.concat(a) }));
15
+ this.follows[o] = s;
18
16
  }
19
17
  };
20
- function computeAllProdsFollows(a) {
21
- let o = {};
22
- return forEach_default(a, (i) => {
23
- assign_default(o, new ResyncFollowsWalker(i).startWalking());
24
- }), o;
18
+ function computeAllProdsFollows(e) {
19
+ let n = {};
20
+ return e.forEach((e) => {
21
+ let r = new ResyncFollowsWalker(e).startWalking();
22
+ Object.assign(n, r);
23
+ }), n;
25
24
  }
26
- function buildBetweenProdsFollowPrefix(e, i) {
27
- return e.name + i + IN;
25
+ function buildBetweenProdsFollowPrefix(e, n) {
26
+ return e.name + n + IN;
28
27
  }
29
28
  export { computeAllProdsFollows };
@@ -1,15 +1,14 @@
1
- import defaults_default from "../../../../../../lodash-es/defaults.js";
2
- import forEach_default from "../../../../../../lodash-es/forEach.js";
3
1
  import { defaultGrammarResolverErrorProvider, defaultGrammarValidatorErrorProvider } from "../../errors_public.js";
4
2
  import { resolveGrammar } from "../resolver.js";
5
3
  import { validateGrammar } from "../checks.js";
6
- function resolveGrammar$1(a) {
7
- let o = defaults_default(a, { errMsgProvider: defaultGrammarResolverErrorProvider }), s = {};
8
- return forEach_default(a.rules, (e) => {
9
- s[e.name] = e;
10
- }), resolveGrammar(s, o.errMsgProvider);
4
+ function resolveGrammar$1(n) {
5
+ let i = Object.assign({ errMsgProvider: defaultGrammarResolverErrorProvider }, n), a = {};
6
+ return n.rules.forEach((e) => {
7
+ a[e.name] = e;
8
+ }), resolveGrammar(a, i.errMsgProvider);
11
9
  }
12
- function validateGrammar$1(i) {
13
- return i = defaults_default(i, { errMsgProvider: defaultGrammarValidatorErrorProvider }), validateGrammar(i.rules, i.tokenTypes, i.errMsgProvider, i.grammarName);
10
+ function validateGrammar$1(e) {
11
+ let r = e.errMsgProvider ?? defaultGrammarValidatorErrorProvider;
12
+ return validateGrammar(e.rules, e.tokenTypes, r, e.grammarName);
14
13
  }
15
14
  export { resolveGrammar$1 as resolveGrammar, validateGrammar$1 as validateGrammar };