@plumile/ui 0.1.113 → 0.1.114

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 (435) hide show
  1. package/lib/esm/_virtual/_rolldown/runtime.js +5 -5
  2. package/lib/esm/atomic/molecules/markdown/components/MarkdownLink.css.js +1 -0
  3. package/lib/esm/atomic/molecules/markdown/components/MarkdownTableCell.css.js +0 -1
  4. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-7EHR7CIX.js +3 -0
  5. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4EGX6M5U.js +37 -0
  6. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4EGX6M5U.js.map +1 -0
  7. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-5DO6E6H7.js +25 -0
  8. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-5DO6E6H7.js.map +1 -0
  9. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-LIHQZDEY.js → chunk-BR22UD5L.js} +18 -21
  10. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-BR22UD5L.js.map +1 -0
  11. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FHYWG6QK.js +25 -0
  12. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FHYWG6QK.js.map +1 -0
  13. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MPE355IW.js +25 -0
  14. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MPE355IW.js.map +1 -0
  15. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MZUSXYTE.js +32 -0
  16. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MZUSXYTE.js.map +1 -0
  17. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-N66VUXT2.js +56 -0
  18. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-N66VUXT2.js.map +1 -0
  19. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-NNHCCRGN.js +20648 -0
  20. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-NNHCCRGN.js.map +1 -0
  21. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-PUPMXCY4.js +25 -0
  22. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-PUPMXCY4.js.map +1 -0
  23. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-UIBZB4QT.js +25 -0
  24. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-UIBZB4QT.js.map +1 -0
  25. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WCWK7LTN.js +33 -0
  26. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WCWK7LTN.js.map +1 -0
  27. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/eventmodeling-FCH6USID.js +3 -0
  28. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-WXDBUCRP.js +3 -0
  29. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-J43DQDTF.js +3 -0
  30. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-YPE3B663.js +3 -0
  31. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-LRSECV5Y.js +3 -0
  32. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-GUYGQ44K.js +3 -0
  33. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-BLDUP644.js +3 -0
  34. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-LRROVOQU.js +3 -0
  35. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-L42UT6IY.js +3 -0
  36. package/lib/esm/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +24 -19
  37. package/lib/esm/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js.map +1 -1
  38. package/lib/esm/node_modules/dagre-d3-es/src/dagre/greedy-fas.js +8 -8
  39. package/lib/esm/node_modules/dagre-d3-es/src/dagre/layout.js +105 -105
  40. package/lib/esm/node_modules/dagre-d3-es/src/dagre/nesting-graph.js +12 -12
  41. package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/cross-count.js +8 -8
  42. package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/index.js +12 -12
  43. package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/init-order.js +6 -6
  44. package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js +7 -7
  45. package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js +9 -9
  46. package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/sort.js +7 -7
  47. package/lib/esm/node_modules/dagre-d3-es/src/dagre/position/bk.js +53 -53
  48. package/lib/esm/node_modules/dagre-d3-es/src/dagre/position/index.js +5 -5
  49. package/lib/esm/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js +26 -26
  50. package/lib/esm/node_modules/dagre-d3-es/src/dagre/rank/util.js +9 -9
  51. package/lib/esm/node_modules/dagre-d3-es/src/dagre/util.js +54 -54
  52. package/lib/esm/node_modules/dagre-d3-es/src/graphlib/graph.js +45 -45
  53. package/lib/esm/node_modules/dagre-d3-es/src/graphlib/json.js +18 -18
  54. package/lib/esm/node_modules/lodash-es/_arrayLikeKeys.js +8 -8
  55. package/lib/esm/node_modules/lodash-es/_baseAssign.js +3 -3
  56. package/lib/esm/node_modules/lodash-es/_baseClone.js +24 -24
  57. package/lib/esm/node_modules/lodash-es/_baseForOwn.js +3 -3
  58. package/lib/esm/node_modules/lodash-es/_baseGetAllKeys.js +3 -3
  59. package/lib/esm/node_modules/lodash-es/_baseIsEqualDeep.js +12 -12
  60. package/lib/esm/node_modules/lodash-es/_baseIteratee.js +4 -4
  61. package/lib/esm/node_modules/lodash-es/_baseMatchesProperty.js +9 -9
  62. package/lib/esm/node_modules/lodash-es/_baseMerge.js +6 -6
  63. package/lib/esm/node_modules/lodash-es/_baseMergeDeep.js +15 -15
  64. package/lib/esm/node_modules/lodash-es/_baseOrderBy.js +14 -14
  65. package/lib/esm/node_modules/lodash-es/_baseSet.js +8 -8
  66. package/lib/esm/node_modules/lodash-es/_baseSetToString.js +5 -5
  67. package/lib/esm/node_modules/lodash-es/_baseToString.js +11 -11
  68. package/lib/esm/node_modules/lodash-es/_baseUniq.js +7 -7
  69. package/lib/esm/node_modules/lodash-es/_copySymbols.js +3 -3
  70. package/lib/esm/node_modules/lodash-es/_createSet.js +6 -6
  71. package/lib/esm/node_modules/lodash-es/_equalByTag.js +18 -18
  72. package/lib/esm/node_modules/lodash-es/_flatRest.js +4 -4
  73. package/lib/esm/node_modules/lodash-es/_getAllKeys.js +3 -3
  74. package/lib/esm/node_modules/lodash-es/_getAllKeysIn.js +4 -4
  75. package/lib/esm/node_modules/lodash-es/_getSymbolsIn.js +3 -3
  76. package/lib/esm/node_modules/lodash-es/_hasPath.js +5 -5
  77. package/lib/esm/node_modules/lodash-es/_initCloneObject.js +4 -4
  78. package/lib/esm/node_modules/lodash-es/_isFlattenable.js +3 -3
  79. package/lib/esm/node_modules/lodash-es/_isIterateeCall.js +6 -6
  80. package/lib/esm/node_modules/lodash-es/_mapCacheClear.js +6 -6
  81. package/lib/esm/node_modules/lodash-es/findIndex.js +4 -4
  82. package/lib/esm/node_modules/lodash-es/forEach.js +3 -3
  83. package/lib/esm/node_modules/lodash-es/forIn.js +3 -3
  84. package/lib/esm/node_modules/lodash-es/isEmpty.js +8 -8
  85. package/lib/esm/node_modules/lodash-es/isPlainObject.js +4 -4
  86. package/lib/esm/node_modules/lodash-es/isString.js +3 -3
  87. package/lib/esm/node_modules/lodash-es/keys.js +4 -4
  88. package/lib/esm/node_modules/lodash-es/keysIn.js +3 -3
  89. package/lib/esm/node_modules/lodash-es/map.js +3 -3
  90. package/lib/esm/node_modules/lodash-es/mapValues.js +5 -5
  91. package/lib/esm/node_modules/lodash-es/max.js +3 -3
  92. package/lib/esm/node_modules/lodash-es/min.js +3 -3
  93. package/lib/esm/node_modules/lodash-es/minBy.js +3 -3
  94. package/lib/esm/node_modules/lodash-es/reduce.js +5 -5
  95. package/lib/esm/node_modules/lodash-es/size.js +4 -4
  96. package/lib/esm/node_modules/lodash-es/sortBy.js +6 -6
  97. package/lib/esm/node_modules/lodash-es/union.js +6 -6
  98. package/lib/esm/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5PVQY5BW.js +146 -146
  99. package/lib/esm/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5PVQY5BW.js.map +1 -1
  100. package/lib/esm/node_modules/mermaid/dist/mermaid.core.js +374 -374
  101. package/lib/esm/node_modules/mermaid/dist/mermaid.core.js.map +1 -1
  102. package/package.json +2 -2
  103. package/lib/esm/node_modules/@chevrotain/gast/lib/src/helpers.js +0 -27
  104. package/lib/esm/node_modules/@chevrotain/gast/lib/src/helpers.js.map +0 -1
  105. package/lib/esm/node_modules/@chevrotain/gast/lib/src/model.js +0 -155
  106. package/lib/esm/node_modules/@chevrotain/gast/lib/src/model.js.map +0 -1
  107. package/lib/esm/node_modules/@chevrotain/gast/lib/src/visitor.js +0 -45
  108. package/lib/esm/node_modules/@chevrotain/gast/lib/src/visitor.js.map +0 -1
  109. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/api.js +0 -2
  110. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js +0 -89
  111. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js.map +0 -1
  112. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js +0 -39
  113. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js.map +0 -1
  114. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js +0 -600
  115. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js.map +0 -1
  116. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js +0 -29
  117. package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js.map +0 -1
  118. package/lib/esm/node_modules/@chevrotain/utils/lib/src/print.js +0 -13
  119. package/lib/esm/node_modules/@chevrotain/utils/lib/src/print.js.map +0 -1
  120. package/lib/esm/node_modules/@chevrotain/utils/lib/src/timer.js +0 -12
  121. package/lib/esm/node_modules/@chevrotain/utils/lib/src/timer.js.map +0 -1
  122. package/lib/esm/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js +0 -14
  123. package/lib/esm/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js.map +0 -1
  124. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-YZFGNWBL.js +0 -3
  125. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2KRD3SAO.js +0 -28
  126. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2KRD3SAO.js.map +0 -1
  127. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-67CJDMHE.js +0 -28
  128. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-67CJDMHE.js.map +0 -1
  129. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7N4EOEYR.js +0 -40
  130. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7N4EOEYR.js.map +0 -1
  131. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js +0 -35
  132. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js.map +0 -1
  133. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js +0 -28
  134. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js.map +0 -1
  135. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FOC6F5B3.js +0 -28
  136. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FOC6F5B3.js.map +0 -1
  137. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js +0 -1210
  138. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js.map +0 -1
  139. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KGLVRYIC.js +0 -28
  140. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KGLVRYIC.js.map +0 -1
  141. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LIHQZDEY.js.map +0 -1
  142. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js +0 -36
  143. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js.map +0 -1
  144. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-7Q5UKJZL.js +0 -3
  145. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-OMHHGYJF.js +0 -3
  146. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-4T2RLAQJ.js +0 -3
  147. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-ZZUOXDRM.js +0 -3
  148. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-PYXPWWZC.js +0 -3
  149. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-SZITEDCU.js +0 -3
  150. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-W4RFUUIX.js +0 -3
  151. package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-RL74JXVD.js +0 -3
  152. package/lib/esm/node_modules/chevrotain/lib/src/api.js +0 -10
  153. package/lib/esm/node_modules/chevrotain/lib/src/lang/lang_extensions.js +0 -14
  154. package/lib/esm/node_modules/chevrotain/lib/src/lang/lang_extensions.js.map +0 -1
  155. package/lib/esm/node_modules/chevrotain/lib/src/parse/constants.js +0 -6
  156. package/lib/esm/node_modules/chevrotain/lib/src/parse/constants.js.map +0 -1
  157. package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst.js +0 -17
  158. package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst.js.map +0 -1
  159. package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js +0 -53
  160. package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js.map +0 -1
  161. package/lib/esm/node_modules/chevrotain/lib/src/parse/errors_public.js +0 -81
  162. package/lib/esm/node_modules/chevrotain/lib/src/parse/errors_public.js.map +0 -1
  163. package/lib/esm/node_modules/chevrotain/lib/src/parse/exceptions_public.js +0 -37
  164. package/lib/esm/node_modules/chevrotain/lib/src/parse/exceptions_public.js.map +0 -1
  165. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/checks.js +0 -279
  166. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/checks.js.map +0 -1
  167. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/first.js +0 -27
  168. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/first.js.map +0 -1
  169. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/follow.js +0 -32
  170. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/follow.js.map +0 -1
  171. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js +0 -18
  172. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js.map +0 -1
  173. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js +0 -269
  174. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js.map +0 -1
  175. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/keys.js +0 -8
  176. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/keys.js.map +0 -1
  177. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js +0 -45
  178. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js.map +0 -1
  179. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js +0 -245
  180. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js.map +0 -1
  181. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/resolver.js +0 -34
  182. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/resolver.js.map +0 -1
  183. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/rest.js +0 -60
  184. package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/rest.js.map +0 -1
  185. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/parser.js +0 -118
  186. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/parser.js.map +0 -1
  187. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js +0 -50
  188. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js.map +0 -1
  189. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js +0 -170
  190. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js.map +0 -1
  191. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js +0 -47
  192. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js.map +0 -1
  193. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js +0 -111
  194. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js.map +0 -1
  195. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js +0 -25
  196. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js.map +0 -1
  197. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js +0 -316
  198. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js.map +0 -1
  199. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js +0 -291
  200. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js.map +0 -1
  201. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js +0 -147
  202. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js.map +0 -1
  203. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js +0 -96
  204. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js.map +0 -1
  205. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js +0 -15
  206. package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js.map +0 -1
  207. package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer.js +0 -439
  208. package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer.js.map +0 -1
  209. package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js +0 -13
  210. package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js.map +0 -1
  211. package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_public.js +0 -257
  212. package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_public.js.map +0 -1
  213. package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp.js +0 -157
  214. package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp.js.map +0 -1
  215. package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js +0 -19
  216. package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js.map +0 -1
  217. package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens.js +0 -68
  218. package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens.js.map +0 -1
  219. package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens_public.js +0 -43
  220. package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens_public.js.map +0 -1
  221. package/lib/esm/node_modules/chevrotain-allstar/lib/all-star-lookahead.js +0 -365
  222. package/lib/esm/node_modules/chevrotain-allstar/lib/all-star-lookahead.js.map +0 -1
  223. package/lib/esm/node_modules/chevrotain-allstar/lib/atn.js +0 -197
  224. package/lib/esm/node_modules/chevrotain-allstar/lib/atn.js.map +0 -1
  225. package/lib/esm/node_modules/chevrotain-allstar/lib/dfa.js +0 -35
  226. package/lib/esm/node_modules/chevrotain-allstar/lib/dfa.js.map +0 -1
  227. package/lib/esm/node_modules/chevrotain-allstar/lib/index.js +0 -1
  228. package/lib/esm/node_modules/langium/lib/default-module.js +0 -89
  229. package/lib/esm/node_modules/langium/lib/default-module.js.map +0 -1
  230. package/lib/esm/node_modules/langium/lib/dependency-injection.js +0 -62
  231. package/lib/esm/node_modules/langium/lib/dependency-injection.js.map +0 -1
  232. package/lib/esm/node_modules/langium/lib/documentation/comment-provider.js +0 -15
  233. package/lib/esm/node_modules/langium/lib/documentation/comment-provider.js.map +0 -1
  234. package/lib/esm/node_modules/langium/lib/documentation/documentation-provider.js +0 -40
  235. package/lib/esm/node_modules/langium/lib/documentation/documentation-provider.js.map +0 -1
  236. package/lib/esm/node_modules/langium/lib/documentation/jsdoc.js +0 -307
  237. package/lib/esm/node_modules/langium/lib/documentation/jsdoc.js.map +0 -1
  238. package/lib/esm/node_modules/langium/lib/languages/generated/ast.js +0 -900
  239. package/lib/esm/node_modules/langium/lib/languages/generated/ast.js.map +0 -1
  240. package/lib/esm/node_modules/langium/lib/languages/grammar-config.js +0 -17
  241. package/lib/esm/node_modules/langium/lib/languages/grammar-config.js.map +0 -1
  242. package/lib/esm/node_modules/langium/lib/parser/async-parser.js +0 -13
  243. package/lib/esm/node_modules/langium/lib/parser/async-parser.js.map +0 -1
  244. package/lib/esm/node_modules/langium/lib/parser/completion-parser-builder.js +0 -11
  245. package/lib/esm/node_modules/langium/lib/parser/completion-parser-builder.js.map +0 -1
  246. package/lib/esm/node_modules/langium/lib/parser/cst-node-builder.js +0 -164
  247. package/lib/esm/node_modules/langium/lib/parser/cst-node-builder.js.map +0 -1
  248. package/lib/esm/node_modules/langium/lib/parser/langium-parser-builder.js +0 -15
  249. package/lib/esm/node_modules/langium/lib/parser/langium-parser-builder.js.map +0 -1
  250. package/lib/esm/node_modules/langium/lib/parser/langium-parser.js +0 -397
  251. package/lib/esm/node_modules/langium/lib/parser/langium-parser.js.map +0 -1
  252. package/lib/esm/node_modules/langium/lib/parser/lexer.js +0 -54
  253. package/lib/esm/node_modules/langium/lib/parser/lexer.js.map +0 -1
  254. package/lib/esm/node_modules/langium/lib/parser/parser-builder-base.js +0 -278
  255. package/lib/esm/node_modules/langium/lib/parser/parser-builder-base.js.map +0 -1
  256. package/lib/esm/node_modules/langium/lib/parser/token-builder.js +0 -65
  257. package/lib/esm/node_modules/langium/lib/parser/token-builder.js.map +0 -1
  258. package/lib/esm/node_modules/langium/lib/parser/value-converter.js +0 -82
  259. package/lib/esm/node_modules/langium/lib/parser/value-converter.js.map +0 -1
  260. package/lib/esm/node_modules/langium/lib/references/linker.js +0 -195
  261. package/lib/esm/node_modules/langium/lib/references/linker.js.map +0 -1
  262. package/lib/esm/node_modules/langium/lib/references/name-provider.js +0 -17
  263. package/lib/esm/node_modules/langium/lib/references/name-provider.js.map +0 -1
  264. package/lib/esm/node_modules/langium/lib/references/references.js +0 -80
  265. package/lib/esm/node_modules/langium/lib/references/references.js.map +0 -1
  266. package/lib/esm/node_modules/langium/lib/references/scope-computation.js +0 -39
  267. package/lib/esm/node_modules/langium/lib/references/scope-computation.js.map +0 -1
  268. package/lib/esm/node_modules/langium/lib/references/scope-provider.js +0 -38
  269. package/lib/esm/node_modules/langium/lib/references/scope-provider.js.map +0 -1
  270. package/lib/esm/node_modules/langium/lib/references/scope.js +0 -46
  271. package/lib/esm/node_modules/langium/lib/references/scope.js.map +0 -1
  272. package/lib/esm/node_modules/langium/lib/serializer/hydrator.js +0 -129
  273. package/lib/esm/node_modules/langium/lib/serializer/hydrator.js.map +0 -1
  274. package/lib/esm/node_modules/langium/lib/serializer/json-serializer.js +0 -149
  275. package/lib/esm/node_modules/langium/lib/serializer/json-serializer.js.map +0 -1
  276. package/lib/esm/node_modules/langium/lib/service-registry.js +0 -41
  277. package/lib/esm/node_modules/langium/lib/service-registry.js.map +0 -1
  278. package/lib/esm/node_modules/langium/lib/syntax-tree.js +0 -74
  279. package/lib/esm/node_modules/langium/lib/syntax-tree.js.map +0 -1
  280. package/lib/esm/node_modules/langium/lib/utils/ast-utils.js +0 -124
  281. package/lib/esm/node_modules/langium/lib/utils/ast-utils.js.map +0 -1
  282. package/lib/esm/node_modules/langium/lib/utils/caching.js +0 -84
  283. package/lib/esm/node_modules/langium/lib/utils/caching.js.map +0 -1
  284. package/lib/esm/node_modules/langium/lib/utils/cancellation.js +0 -9
  285. package/lib/esm/node_modules/langium/lib/utils/cancellation.js.map +0 -1
  286. package/lib/esm/node_modules/langium/lib/utils/collections.js +0 -89
  287. package/lib/esm/node_modules/langium/lib/utils/collections.js.map +0 -1
  288. package/lib/esm/node_modules/langium/lib/utils/cst-utils.js +0 -77
  289. package/lib/esm/node_modules/langium/lib/utils/cst-utils.js.map +0 -1
  290. package/lib/esm/node_modules/langium/lib/utils/disposable.js +0 -12
  291. package/lib/esm/node_modules/langium/lib/utils/disposable.js.map +0 -1
  292. package/lib/esm/node_modules/langium/lib/utils/errors.js +0 -13
  293. package/lib/esm/node_modules/langium/lib/utils/errors.js.map +0 -1
  294. package/lib/esm/node_modules/langium/lib/utils/event.js +0 -9
  295. package/lib/esm/node_modules/langium/lib/utils/event.js.map +0 -1
  296. package/lib/esm/node_modules/langium/lib/utils/grammar-loader.js +0 -26
  297. package/lib/esm/node_modules/langium/lib/utils/grammar-loader.js.map +0 -1
  298. package/lib/esm/node_modules/langium/lib/utils/grammar-utils.js +0 -221
  299. package/lib/esm/node_modules/langium/lib/utils/grammar-utils.js.map +0 -1
  300. package/lib/esm/node_modules/langium/lib/utils/promise-utils.js +0 -31
  301. package/lib/esm/node_modules/langium/lib/utils/promise-utils.js.map +0 -1
  302. package/lib/esm/node_modules/langium/lib/utils/regexp-utils.js +0 -146
  303. package/lib/esm/node_modules/langium/lib/utils/regexp-utils.js.map +0 -1
  304. package/lib/esm/node_modules/langium/lib/utils/stream.js +0 -331
  305. package/lib/esm/node_modules/langium/lib/utils/stream.js.map +0 -1
  306. package/lib/esm/node_modules/langium/lib/utils/uri-utils.js +0 -111
  307. package/lib/esm/node_modules/langium/lib/utils/uri-utils.js.map +0 -1
  308. package/lib/esm/node_modules/langium/lib/validation/document-validator.js +0 -213
  309. package/lib/esm/node_modules/langium/lib/validation/document-validator.js.map +0 -1
  310. package/lib/esm/node_modules/langium/lib/validation/validation-registry.js +0 -90
  311. package/lib/esm/node_modules/langium/lib/validation/validation-registry.js.map +0 -1
  312. package/lib/esm/node_modules/langium/lib/workspace/ast-descriptions.js +0 -61
  313. package/lib/esm/node_modules/langium/lib/workspace/ast-descriptions.js.map +0 -1
  314. package/lib/esm/node_modules/langium/lib/workspace/ast-node-locator.js +0 -32
  315. package/lib/esm/node_modules/langium/lib/workspace/ast-node-locator.js.map +0 -1
  316. package/lib/esm/node_modules/langium/lib/workspace/configuration.js +0 -55
  317. package/lib/esm/node_modules/langium/lib/workspace/configuration.js.map +0 -1
  318. package/lib/esm/node_modules/langium/lib/workspace/document-builder.js +0 -200
  319. package/lib/esm/node_modules/langium/lib/workspace/document-builder.js.map +0 -1
  320. package/lib/esm/node_modules/langium/lib/workspace/documents.js +0 -146
  321. package/lib/esm/node_modules/langium/lib/workspace/documents.js.map +0 -1
  322. package/lib/esm/node_modules/langium/lib/workspace/file-system-provider.js +0 -37
  323. package/lib/esm/node_modules/langium/lib/workspace/file-system-provider.js.map +0 -1
  324. package/lib/esm/node_modules/langium/lib/workspace/index-manager.js +0 -53
  325. package/lib/esm/node_modules/langium/lib/workspace/index-manager.js.map +0 -1
  326. package/lib/esm/node_modules/langium/lib/workspace/workspace-lock.js +0 -46
  327. package/lib/esm/node_modules/langium/lib/workspace/workspace-lock.js.map +0 -1
  328. package/lib/esm/node_modules/langium/lib/workspace/workspace-manager.js +0 -70
  329. package/lib/esm/node_modules/langium/lib/workspace/workspace-manager.js.map +0 -1
  330. package/lib/esm/node_modules/lodash-es/flatMap.js +0 -10
  331. package/lib/esm/node_modules/lodash-es/flatMap.js.map +0 -1
  332. package/lib/esm/node_modules/lodash-es/uniqBy.js +0 -10
  333. package/lib/esm/node_modules/lodash-es/uniqBy.js.map +0 -1
  334. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/cancellation.js +0 -61
  335. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/cancellation.js.map +0 -1
  336. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/events.js +0 -68
  337. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/events.js.map +0 -1
  338. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/is.js +0 -38
  339. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/is.js.map +0 -1
  340. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/ral.js +0 -22
  341. package/lib/esm/node_modules/vscode-jsonrpc/lib/common/ral.js.map +0 -1
  342. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/browser/main.js +0 -32
  343. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/browser/main.js.map +0 -1
  344. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/api.js +0 -40
  345. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/api.js.map +0 -1
  346. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/connection.js +0 -16
  347. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/connection.js.map +0 -1
  348. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/messages.js +0 -35
  349. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/messages.js.map +0 -1
  350. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +0 -23
  351. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js.map +0 -1
  352. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +0 -19
  353. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js.map +0 -1
  354. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +0 -15
  355. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js.map +0 -1
  356. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +0 -15
  357. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js.map +0 -1
  358. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +0 -37
  359. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js.map +0 -1
  360. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +0 -39
  361. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js.map +0 -1
  362. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +0 -19
  363. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js.map +0 -1
  364. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +0 -15
  365. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js.map +0 -1
  366. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +0 -23
  367. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js.map +0 -1
  368. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +0 -15
  369. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js.map +0 -1
  370. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +0 -19
  371. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js.map +0 -1
  372. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +0 -678
  373. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.js.map +0 -1
  374. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +0 -15
  375. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js.map +0 -1
  376. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +0 -23
  377. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js.map +0 -1
  378. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +0 -130
  379. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js.map +0 -1
  380. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +0 -28
  381. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js.map +0 -1
  382. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +0 -15
  383. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js.map +0 -1
  384. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +0 -35
  385. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js.map +0 -1
  386. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +0 -15
  387. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js.map +0 -1
  388. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +0 -15
  389. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js.map +0 -1
  390. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +0 -23
  391. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js.map +0 -1
  392. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +0 -19
  393. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js.map +0 -1
  394. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +0 -46
  395. package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js.map +0 -1
  396. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js +0 -11
  397. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js.map +0 -1
  398. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js +0 -56
  399. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js.map +0 -1
  400. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js +0 -124
  401. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js.map +0 -1
  402. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js +0 -341
  403. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js.map +0 -1
  404. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js +0 -61
  405. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js.map +0 -1
  406. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js +0 -651
  407. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js.map +0 -1
  408. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js +0 -17
  409. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js.map +0 -1
  410. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js +0 -68
  411. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js.map +0 -1
  412. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js +0 -38
  413. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js.map +0 -1
  414. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +0 -239
  415. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js.map +0 -1
  416. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +0 -97
  417. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js.map +0 -1
  418. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js +0 -133
  419. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js.map +0 -1
  420. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +0 -89
  421. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js.map +0 -1
  422. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js +0 -165
  423. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js.map +0 -1
  424. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js +0 -22
  425. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js.map +0 -1
  426. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js +0 -48
  427. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js.map +0 -1
  428. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +0 -62
  429. package/lib/esm/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js.map +0 -1
  430. package/lib/esm/node_modules/vscode-languageserver-textdocument/lib/esm/main.js +0 -142
  431. package/lib/esm/node_modules/vscode-languageserver-textdocument/lib/esm/main.js.map +0 -1
  432. package/lib/esm/node_modules/vscode-languageserver-types/lib/esm/main.js +0 -1088
  433. package/lib/esm/node_modules/vscode-languageserver-types/lib/esm/main.js.map +0 -1
  434. package/lib/esm/node_modules/vscode-uri/lib/esm/index.js +0 -377
  435. package/lib/esm/node_modules/vscode-uri/lib/esm/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.js","names":[],"sources":["../../../../../../../../node_modules/langium/lib/utils/stream.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2021 TypeFox GmbH\n * This program and the accompanying materials are made available under the\n * terms of the MIT License, which is available in the project root.\n ******************************************************************************/\n/**\n * The default implementation of `Stream` works with two input functions:\n * - The first function creates the initial state of an iteration.\n * - The second function gets the current state as argument and returns an `IteratorResult`.\n */\nexport class StreamImpl {\n constructor(startFn, nextFn) {\n this.startFn = startFn;\n this.nextFn = nextFn;\n }\n iterator() {\n const iterator = {\n state: this.startFn(),\n next: () => this.nextFn(iterator.state),\n [Symbol.iterator]: () => iterator\n };\n return iterator;\n }\n [Symbol.iterator]() {\n return this.iterator();\n }\n isEmpty() {\n const iterator = this.iterator();\n return Boolean(iterator.next().done);\n }\n count() {\n const iterator = this.iterator();\n let count = 0;\n let next = iterator.next();\n while (!next.done) {\n count++;\n next = iterator.next();\n }\n return count;\n }\n toArray() {\n const result = [];\n const iterator = this.iterator();\n let next;\n do {\n next = iterator.next();\n if (next.value !== undefined) {\n result.push(next.value);\n }\n } while (!next.done);\n return result;\n }\n toSet() {\n return new Set(this);\n }\n toMap(keyFn, valueFn) {\n const entryStream = this.map(element => [\n keyFn ? keyFn(element) : element,\n valueFn ? valueFn(element) : element\n ]);\n return new Map(entryStream);\n }\n toString() {\n return this.join();\n }\n concat(other) {\n return new StreamImpl(() => ({ first: this.startFn(), firstDone: false, iterator: other[Symbol.iterator]() }), state => {\n let result;\n if (!state.firstDone) {\n do {\n result = this.nextFn(state.first);\n if (!result.done) {\n return result;\n }\n } while (!result.done);\n state.firstDone = true;\n }\n do {\n result = state.iterator.next();\n if (!result.done) {\n return result;\n }\n } while (!result.done);\n return DONE_RESULT;\n });\n }\n join(separator = ',') {\n const iterator = this.iterator();\n let value = '';\n let result;\n let addSeparator = false;\n do {\n result = iterator.next();\n if (!result.done) {\n if (addSeparator) {\n value += separator;\n }\n value += toString(result.value);\n }\n addSeparator = true;\n } while (!result.done);\n return value;\n }\n indexOf(searchElement, fromIndex = 0) {\n const iterator = this.iterator();\n let index = 0;\n let next = iterator.next();\n while (!next.done) {\n if (index >= fromIndex && next.value === searchElement) {\n return index;\n }\n next = iterator.next();\n index++;\n }\n return -1;\n }\n every(predicate) {\n const iterator = this.iterator();\n let next = iterator.next();\n while (!next.done) {\n if (!predicate(next.value)) {\n return false;\n }\n next = iterator.next();\n }\n return true;\n }\n some(predicate) {\n const iterator = this.iterator();\n let next = iterator.next();\n while (!next.done) {\n if (predicate(next.value)) {\n return true;\n }\n next = iterator.next();\n }\n return false;\n }\n forEach(callbackfn) {\n const iterator = this.iterator();\n let index = 0;\n let next = iterator.next();\n while (!next.done) {\n callbackfn(next.value, index);\n next = iterator.next();\n index++;\n }\n }\n map(callbackfn) {\n return new StreamImpl(this.startFn, (state) => {\n const { done, value } = this.nextFn(state);\n if (done) {\n return DONE_RESULT;\n }\n else {\n return { done: false, value: callbackfn(value) };\n }\n });\n }\n filter(predicate) {\n return new StreamImpl(this.startFn, state => {\n let result;\n do {\n result = this.nextFn(state);\n if (!result.done && predicate(result.value)) {\n return result;\n }\n } while (!result.done);\n return DONE_RESULT;\n });\n }\n nonNullable() {\n return this.filter(e => e !== undefined && e !== null);\n }\n reduce(callbackfn, initialValue) {\n const iterator = this.iterator();\n let previousValue = initialValue;\n let next = iterator.next();\n while (!next.done) {\n if (previousValue === undefined) {\n previousValue = next.value;\n }\n else {\n previousValue = callbackfn(previousValue, next.value);\n }\n next = iterator.next();\n }\n return previousValue;\n }\n reduceRight(callbackfn, initialValue) {\n return this.recursiveReduce(this.iterator(), callbackfn, initialValue);\n }\n recursiveReduce(iterator, callbackfn, initialValue) {\n const next = iterator.next();\n if (next.done) {\n return initialValue;\n }\n const previousValue = this.recursiveReduce(iterator, callbackfn, initialValue);\n if (previousValue === undefined) {\n return next.value;\n }\n return callbackfn(previousValue, next.value);\n }\n find(predicate) {\n const iterator = this.iterator();\n let next = iterator.next();\n while (!next.done) {\n if (predicate(next.value)) {\n return next.value;\n }\n next = iterator.next();\n }\n return undefined;\n }\n findIndex(predicate) {\n const iterator = this.iterator();\n let index = 0;\n let next = iterator.next();\n while (!next.done) {\n if (predicate(next.value)) {\n return index;\n }\n next = iterator.next();\n index++;\n }\n return -1;\n }\n includes(searchElement) {\n const iterator = this.iterator();\n let next = iterator.next();\n while (!next.done) {\n if (next.value === searchElement) {\n return true;\n }\n next = iterator.next();\n }\n return false;\n }\n flatMap(callbackfn) {\n return new StreamImpl(() => ({ this: this.startFn() }), (state) => {\n do {\n if (state.iterator) {\n const next = state.iterator.next();\n if (next.done) {\n state.iterator = undefined;\n }\n else {\n return next;\n }\n }\n const { done, value } = this.nextFn(state.this);\n if (!done) {\n const mapped = callbackfn(value);\n if (isIterable(mapped)) {\n state.iterator = mapped[Symbol.iterator]();\n }\n else {\n return { done: false, value: mapped };\n }\n }\n } while (state.iterator);\n return DONE_RESULT;\n });\n }\n flat(depth) {\n if (depth === undefined) {\n depth = 1;\n }\n if (depth <= 0) {\n return this;\n }\n const stream = depth > 1 ? this.flat(depth - 1) : this;\n return new StreamImpl(() => ({ this: stream.startFn() }), (state) => {\n do {\n if (state.iterator) {\n const next = state.iterator.next();\n if (next.done) {\n state.iterator = undefined;\n }\n else {\n return next;\n }\n }\n const { done, value } = stream.nextFn(state.this);\n if (!done) {\n if (isIterable(value)) {\n state.iterator = value[Symbol.iterator]();\n }\n else {\n return { done: false, value: value };\n }\n }\n } while (state.iterator);\n return DONE_RESULT;\n });\n }\n head() {\n const iterator = this.iterator();\n const result = iterator.next();\n if (result.done) {\n return undefined;\n }\n return result.value;\n }\n tail(skipCount = 1) {\n return new StreamImpl(() => {\n const state = this.startFn();\n for (let i = 0; i < skipCount; i++) {\n const next = this.nextFn(state);\n if (next.done) {\n return state;\n }\n }\n return state;\n }, this.nextFn);\n }\n limit(maxSize) {\n return new StreamImpl(() => ({ size: 0, state: this.startFn() }), state => {\n state.size++;\n if (state.size > maxSize) {\n return DONE_RESULT;\n }\n return this.nextFn(state.state);\n });\n }\n distinct(by) {\n return new StreamImpl(() => ({ set: new Set(), internalState: this.startFn() }), state => {\n let result;\n do {\n result = this.nextFn(state.internalState);\n if (!result.done) {\n const value = by ? by(result.value) : result.value;\n if (!state.set.has(value)) {\n state.set.add(value);\n return result;\n }\n }\n } while (!result.done);\n return DONE_RESULT;\n });\n }\n exclude(other, key) {\n const otherKeySet = new Set();\n for (const item of other) {\n const value = key ? key(item) : item;\n otherKeySet.add(value);\n }\n return this.filter(e => {\n const ownKey = key ? key(e) : e;\n return !otherKeySet.has(ownKey);\n });\n }\n}\nfunction toString(item) {\n if (typeof item === 'string') {\n return item;\n }\n if (typeof item === 'undefined') {\n return 'undefined';\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (typeof item.toString === 'function') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return item.toString();\n }\n return Object.prototype.toString.call(item);\n}\nfunction isIterable(obj) {\n return !!obj && typeof obj[Symbol.iterator] === 'function';\n}\n/**\n * An empty stream of any type.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const EMPTY_STREAM = new StreamImpl(() => undefined, () => DONE_RESULT);\n/**\n * Use this `IteratorResult` when implementing a `StreamImpl` to indicate that there are no more elements in the stream.\n */\nexport const DONE_RESULT = Object.freeze({ done: true, value: undefined });\n/**\n * Create a stream from one or more iterables or array-likes.\n */\nexport function stream(...collections) {\n if (collections.length === 1) {\n const collection = collections[0];\n if (collection instanceof StreamImpl) {\n return collection;\n }\n if (isIterable(collection)) {\n return new StreamImpl(() => collection[Symbol.iterator](), (iterator) => iterator.next());\n }\n if (typeof collection.length === 'number') {\n return new StreamImpl(() => ({ index: 0 }), (state) => {\n if (state.index < collection.length) {\n return { done: false, value: collection[state.index++] };\n }\n else {\n return DONE_RESULT;\n }\n });\n }\n }\n if (collections.length > 1) {\n return new StreamImpl(() => ({ collIndex: 0, arrIndex: 0 }), (state) => {\n do {\n if (state.iterator) {\n const next = state.iterator.next();\n if (!next.done) {\n return next;\n }\n state.iterator = undefined;\n }\n if (state.array) {\n if (state.arrIndex < state.array.length) {\n return { done: false, value: state.array[state.arrIndex++] };\n }\n state.array = undefined;\n state.arrIndex = 0;\n }\n if (state.collIndex < collections.length) {\n const collection = collections[state.collIndex++];\n if (isIterable(collection)) {\n state.iterator = collection[Symbol.iterator]();\n }\n else if (collection && typeof collection.length === 'number') {\n state.array = collection;\n }\n }\n } while (state.iterator || state.array || state.collIndex < collections.length);\n return DONE_RESULT;\n });\n }\n return EMPTY_STREAM;\n}\n/**\n * The default implementation of `TreeStream` takes a root element and a function that computes the\n * children of its argument. Whether the root node included in the stream is controlled with the\n * `includeRoot` option, which defaults to `false`.\n */\nexport class TreeStreamImpl extends StreamImpl {\n constructor(root, children, options) {\n super(() => ({\n iterators: options?.includeRoot ? [[root][Symbol.iterator]()] : [children(root)[Symbol.iterator]()],\n pruned: false\n }), state => {\n if (state.pruned) {\n state.iterators.pop();\n state.pruned = false;\n }\n while (state.iterators.length > 0) {\n const iterator = state.iterators[state.iterators.length - 1];\n const next = iterator.next();\n if (next.done) {\n state.iterators.pop();\n }\n else {\n state.iterators.push(children(next.value)[Symbol.iterator]());\n return next;\n }\n }\n return DONE_RESULT;\n });\n }\n iterator() {\n const iterator = {\n state: this.startFn(),\n next: () => this.nextFn(iterator.state),\n prune: () => {\n iterator.state.pruned = true;\n },\n [Symbol.iterator]: () => iterator\n };\n return iterator;\n }\n}\n/**\n * A set of utility functions that reduce a stream to a single value.\n */\nexport var Reduction;\n(function (Reduction) {\n /**\n * Compute the sum of a number stream.\n */\n function sum(stream) {\n return stream.reduce((a, b) => a + b, 0);\n }\n Reduction.sum = sum;\n /**\n * Compute the product of a number stream.\n */\n function product(stream) {\n return stream.reduce((a, b) => a * b, 0);\n }\n Reduction.product = product;\n /**\n * Compute the minimum of a number stream. Returns `undefined` if the stream is empty.\n */\n function min(stream) {\n return stream.reduce((a, b) => Math.min(a, b));\n }\n Reduction.min = min;\n /**\n * Compute the maximum of a number stream. Returns `undefined` if the stream is empty.\n */\n function max(stream) {\n return stream.reduce((a, b) => Math.max(a, b));\n }\n Reduction.max = max;\n})(Reduction || (Reduction = {}));\n//# sourceMappingURL=stream.js.map"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -1,111 +0,0 @@
1
- import { URI as e, Utils as t } from "../../../vscode-uri/lib/esm/index.js";
2
- //#region ../../node_modules/langium/lib/utils/uri-utils.js
3
- var n;
4
- (function(n) {
5
- n.basename = t.basename, n.dirname = t.dirname, n.extname = t.extname, n.joinPath = t.joinPath, n.resolvePath = t.resolvePath;
6
- let r = typeof process == "object" && process?.platform === "win32";
7
- function i(e, t) {
8
- return e?.toString() === t?.toString();
9
- }
10
- n.equals = i;
11
- function a(t, n) {
12
- let i = typeof t == "string" ? e.parse(t).path : t.path, a = typeof n == "string" ? e.parse(n).path : n.path, o = i.split("/").filter((e) => e.length > 0), s = a.split("/").filter((e) => e.length > 0);
13
- if (r) {
14
- let e = /^[A-Z]:$/;
15
- if (o[0] && e.test(o[0]) && (o[0] = o[0].toLowerCase()), s[0] && e.test(s[0]) && (s[0] = s[0].toLowerCase()), o[0] !== s[0]) return a.substring(1);
16
- }
17
- let c = 0;
18
- for (; c < o.length && o[c] === s[c]; c++);
19
- return "../".repeat(o.length - c) + s.slice(c).join("/");
20
- }
21
- n.relative = a;
22
- function o(t) {
23
- return e.parse(t.toString()).toString();
24
- }
25
- n.normalize = o;
26
- function s(e, t) {
27
- let n = typeof e == "string" ? e : e.path, r = typeof t == "string" ? t : t.path;
28
- return r.charAt(r.length - 1) === "/" && (r = r.slice(0, -1)), n.charAt(n.length - 1) === "/" && (n = n.slice(0, -1)), r === n ? !0 : r.length < n.length || r.charAt(n.length) !== "/" ? !1 : r.startsWith(n);
29
- }
30
- n.contains = s;
31
- })(n ||= {});
32
- var r = class {
33
- constructor() {
34
- this.root = {
35
- name: "",
36
- children: /* @__PURE__ */ new Map()
37
- };
38
- }
39
- normalizeUri(e) {
40
- return n.normalize(e);
41
- }
42
- clear() {
43
- this.root.children.clear();
44
- }
45
- insert(e, t) {
46
- let n = this.getNode(this.normalizeUri(e), !0);
47
- n.element = t;
48
- }
49
- delete(e) {
50
- let t = this.getNode(this.normalizeUri(e), !1);
51
- t?.parent && t.parent.children.delete(t.name);
52
- }
53
- has(e) {
54
- return this.getNode(this.normalizeUri(e), !1)?.element !== void 0;
55
- }
56
- hasNode(e) {
57
- return this.getNode(this.normalizeUri(e), !1) !== void 0;
58
- }
59
- find(e) {
60
- return this.getNode(this.normalizeUri(e), !1)?.element;
61
- }
62
- findNode(t) {
63
- let r = this.normalizeUri(t), i = this.getNode(r, !1);
64
- if (i) return {
65
- name: i.name,
66
- uri: n.joinPath(e.parse(r), i.name).toString(),
67
- element: i.element
68
- };
69
- }
70
- findChildren(t) {
71
- let r = this.normalizeUri(t), i = this.getNode(r, !1);
72
- return i ? Array.from(i.children.values()).map((t) => ({
73
- name: t.name,
74
- uri: n.joinPath(e.parse(r), t.name).toString(),
75
- element: t.element
76
- })) : [];
77
- }
78
- all() {
79
- return this.collectValues(this.root);
80
- }
81
- findAll(e) {
82
- let t = this.getNode(n.normalize(e), !1);
83
- return t ? this.collectValues(t) : [];
84
- }
85
- getNode(e, t) {
86
- let n = e.split("/");
87
- e.charAt(e.length - 1) === "/" && n.pop();
88
- let r = this.root;
89
- for (let e of n) {
90
- let n = r.children.get(e);
91
- if (!n) if (t) n = {
92
- name: e,
93
- children: /* @__PURE__ */ new Map(),
94
- parent: r
95
- }, r.children.set(e, n);
96
- else return;
97
- r = n;
98
- }
99
- return r;
100
- }
101
- collectValues(e) {
102
- let t = [];
103
- e.element && t.push(e.element);
104
- for (let n of e.children.values()) t.push(...this.collectValues(n));
105
- return t;
106
- }
107
- };
108
- //#endregion
109
- export { r as UriTrie, n as UriUtils };
110
-
111
- //# sourceMappingURL=uri-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uri-utils.js","names":[],"sources":["../../../../../../../../node_modules/langium/lib/utils/uri-utils.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2022 TypeFox GmbH\n * This program and the accompanying materials are made available under the\n * terms of the MIT License, which is available in the project root.\n ******************************************************************************/\nimport { URI, Utils } from 'vscode-uri';\nexport { URI };\nexport var UriUtils;\n(function (UriUtils) {\n UriUtils.basename = Utils.basename;\n UriUtils.dirname = Utils.dirname;\n UriUtils.extname = Utils.extname;\n UriUtils.joinPath = Utils.joinPath;\n UriUtils.resolvePath = Utils.resolvePath;\n const isWindows = typeof process === 'object' && process?.platform === 'win32';\n function equals(a, b) {\n return a?.toString() === b?.toString();\n }\n UriUtils.equals = equals;\n function relative(from, to) {\n const fromPath = typeof from === 'string' ? URI.parse(from).path : from.path;\n const toPath = typeof to === 'string' ? URI.parse(to).path : to.path;\n const fromParts = fromPath.split('/').filter(e => e.length > 0);\n const toParts = toPath.split('/').filter(e => e.length > 0);\n if (isWindows) {\n const upperCaseDriveLetter = /^[A-Z]:$/;\n if (fromParts[0] && upperCaseDriveLetter.test(fromParts[0])) {\n fromParts[0] = fromParts[0].toLowerCase();\n }\n if (toParts[0] && upperCaseDriveLetter.test(toParts[0])) {\n toParts[0] = toParts[0].toLowerCase();\n }\n if (fromParts[0] !== toParts[0]) {\n // in case of different drive letters, we cannot compute a relative path, so...\n return toPath.substring(1); // fall back to full 'to' path, drop the leading '/', keep everything else as is for good comparability\n }\n }\n let i = 0;\n for (; i < fromParts.length; i++) {\n if (fromParts[i] !== toParts[i]) {\n break;\n }\n }\n const backPart = '../'.repeat(fromParts.length - i);\n const toPart = toParts.slice(i).join('/');\n return backPart + toPart;\n }\n UriUtils.relative = relative;\n function normalize(uri) {\n return URI.parse(uri.toString()).toString();\n }\n UriUtils.normalize = normalize;\n function contains(parent, child) {\n let parentPath = typeof parent === 'string' ? parent : parent.path;\n let childPath = typeof child === 'string' ? child : child.path;\n // Trim trailing slashes\n if (childPath.charAt(childPath.length - 1) === '/') {\n childPath = childPath.slice(0, -1);\n }\n if (parentPath.charAt(parentPath.length - 1) === '/') {\n parentPath = parentPath.slice(0, -1);\n }\n // If the paths are equal, simply return true\n if (childPath === parentPath) {\n return true;\n }\n // If the child path is shorter than the parent path, it can't be a child\n if (childPath.length < parentPath.length) {\n return false;\n }\n // If the path does not feature a slash after the parent path, it can't be a child\n if (childPath.charAt(parentPath.length) !== '/') {\n return false;\n }\n // Check if the child path starts with the parent path\n return childPath.startsWith(parentPath);\n }\n UriUtils.contains = contains;\n})(UriUtils || (UriUtils = {}));\n/**\n * A trie structure for URIs. It allows to insert, delete and find elements by their URI.\n * More specifically, it allows to efficiently find all elements that are children of a given URI.\n *\n * Unlike a regular trie, this implementation uses the name of the URI segments as keys.\n *\n * @see {@link https://en.wikipedia.org/wiki/Trie}\n */\nexport class UriTrie {\n constructor() {\n this.root = { name: '', children: new Map() };\n }\n normalizeUri(uri) {\n return UriUtils.normalize(uri);\n }\n clear() {\n this.root.children.clear();\n }\n insert(uri, element) {\n const node = this.getNode(this.normalizeUri(uri), true);\n node.element = element;\n }\n delete(uri) {\n const nodeToDelete = this.getNode(this.normalizeUri(uri), false);\n if (nodeToDelete?.parent) {\n nodeToDelete.parent.children.delete(nodeToDelete.name);\n }\n }\n has(uri) {\n return this.getNode(this.normalizeUri(uri), false)?.element !== undefined;\n }\n hasNode(uri) {\n return this.getNode(this.normalizeUri(uri), false) !== undefined;\n }\n find(uri) {\n return this.getNode(this.normalizeUri(uri), false)?.element;\n }\n findNode(uri) {\n const uriString = this.normalizeUri(uri);\n const node = this.getNode(uriString, false);\n if (!node) {\n return undefined;\n }\n return {\n name: node.name,\n uri: UriUtils.joinPath(URI.parse(uriString), node.name).toString(),\n element: node.element\n };\n }\n findChildren(uri) {\n const uriString = this.normalizeUri(uri);\n const node = this.getNode(uriString, false);\n if (!node) {\n return [];\n }\n return Array.from(node.children.values()).map(child => ({\n name: child.name,\n uri: UriUtils.joinPath(URI.parse(uriString), child.name).toString(),\n element: child.element\n }));\n }\n all() {\n return this.collectValues(this.root);\n }\n findAll(prefix) {\n const node = this.getNode(UriUtils.normalize(prefix), false);\n if (!node) {\n return [];\n }\n return this.collectValues(node);\n }\n getNode(uri, create) {\n const parts = uri.split('/');\n if (uri.charAt(uri.length - 1) === '/') {\n // Remove the last part if the URI ends with a slash\n parts.pop();\n }\n let current = this.root;\n for (const part of parts) {\n let child = current.children.get(part);\n if (!child) {\n if (create) {\n child = {\n name: part,\n children: new Map(),\n parent: current\n };\n current.children.set(part, child);\n }\n else {\n return undefined;\n }\n }\n current = child;\n }\n return current;\n }\n collectValues(node) {\n const result = [];\n if (node.element) {\n result.push(node.element);\n }\n for (const child of node.children.values()) {\n result.push(...this.collectValues(child));\n }\n return result;\n }\n}\n//# sourceMappingURL=uri-utils.js.map"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -1,213 +0,0 @@
1
- import { streamAst as e } from "../utils/ast-utils.js";
2
- import { tokenToRange as t } from "../utils/cst-utils.js";
3
- import { findNodeForKeyword as n, findNodeForProperty as r } from "../utils/grammar-utils.js";
4
- import { cancellation_exports as i } from "../utils/cancellation.js";
5
- import { interruptAndCheck as a, isOperationCancelled as o } from "../utils/promise-utils.js";
6
- import { diagnosticData as s } from "./validation-registry.js";
7
- //#region ../../node_modules/langium/lib/validation/document-validator.js
8
- var c = Object.freeze({
9
- validateNode: !0,
10
- validateChildren: !0
11
- }), l = class {
12
- constructor(e) {
13
- this.validationRegistry = e.validation.ValidationRegistry, this.metadata = e.LanguageMetaData, this.profiler = e.shared.profilers.LangiumProfiler, this.languageId = e.LanguageMetaData.languageId;
14
- }
15
- async validateDocument(e, t = {}, n = i.CancellationToken.None) {
16
- let r = e.parseResult, s = [];
17
- if (await a(n), (!t.categories || t.categories.includes("built-in")) && (this.processLexingErrors(r, s, t), t.stopAfterLexingErrors && s.some((e) => e.data?.code === p.LexingError) || (this.processParsingErrors(r, s, t), t.stopAfterParsingErrors && s.some((e) => e.data?.code === p.ParsingError)) || (this.processLinkingErrors(e, s, t), t.stopAfterLinkingErrors && s.some((e) => e.data?.code === p.LinkingError)))) return s;
18
- try {
19
- s.push(...await this.validateAst(r.value, t, n));
20
- } catch (e) {
21
- if (o(e)) throw e;
22
- console.error("An error occurred during validation:", e);
23
- }
24
- return await a(n), s;
25
- }
26
- processLexingErrors(e, t, n) {
27
- let r = [...e.lexerErrors, ...e.lexerReport?.diagnostics ?? []];
28
- for (let e of r) {
29
- let n = e.severity ?? "error", r = {
30
- severity: d(n),
31
- range: {
32
- start: {
33
- line: e.line - 1,
34
- character: e.column - 1
35
- },
36
- end: {
37
- line: e.line - 1,
38
- character: e.column + e.length - 1
39
- }
40
- },
41
- message: e.message,
42
- data: f(n),
43
- source: this.getSource()
44
- };
45
- t.push(r);
46
- }
47
- }
48
- processParsingErrors(e, n, r) {
49
- for (let r of e.parserErrors) {
50
- let e;
51
- if (isNaN(r.token.startOffset)) {
52
- if ("previousToken" in r) {
53
- let t = r.previousToken;
54
- if (isNaN(t.startOffset)) {
55
- let t = {
56
- line: 0,
57
- character: 0
58
- };
59
- e = {
60
- start: t,
61
- end: t
62
- };
63
- } else {
64
- let n = {
65
- line: t.endLine - 1,
66
- character: t.endColumn
67
- };
68
- e = {
69
- start: n,
70
- end: n
71
- };
72
- }
73
- }
74
- } else e = t(r.token);
75
- if (e) {
76
- let t = {
77
- severity: d("error"),
78
- range: e,
79
- message: r.message,
80
- data: s(p.ParsingError),
81
- source: this.getSource()
82
- };
83
- n.push(t);
84
- }
85
- }
86
- }
87
- processLinkingErrors(e, t, n) {
88
- for (let n of e.references) {
89
- let e = n.error;
90
- if (e) {
91
- let r = {
92
- node: e.info.container,
93
- range: n.$refNode?.range,
94
- property: e.info.property,
95
- index: e.info.index,
96
- data: {
97
- code: p.LinkingError,
98
- containerType: e.info.container.$type,
99
- property: e.info.property,
100
- refText: e.info.reference.$refText
101
- }
102
- };
103
- t.push(this.toDiagnostic("error", e.message, r));
104
- }
105
- }
106
- }
107
- async validateAst(e, t, n = i.CancellationToken.None) {
108
- let r = [], a = (e, t, n) => {
109
- r.push(this.toDiagnostic(e, t, n));
110
- };
111
- return await this.validateAstBefore(e, t, a, n), await this.validateAstNodes(e, t, a, n), await this.validateAstAfter(e, t, a, n), r;
112
- }
113
- async validateAstBefore(e, t, n, r = i.CancellationToken.None) {
114
- let o = this.validationRegistry.checksBefore;
115
- for (let i of o) await a(r), await i(e, n, t.categories ?? [], r);
116
- }
117
- async validateAstNodes(t, n, r, o = i.CancellationToken.None) {
118
- if (this.profiler?.isActive("validating")) {
119
- let i = this.profiler.createTask("validating", this.languageId);
120
- i.start();
121
- try {
122
- let a = e(t).iterator();
123
- for (let e of a) {
124
- i.startSubTask(e.$type);
125
- let t = this.validateSingleNodeOptions(e, n);
126
- if (t.validateNode) try {
127
- let t = this.validationRegistry.getChecks(e.$type, n.categories);
128
- for (let n of t) await n(e, r, o);
129
- } finally {
130
- i.stopSubTask(e.$type);
131
- }
132
- t.validateChildren || a.prune();
133
- }
134
- } finally {
135
- i.stop();
136
- }
137
- } else {
138
- let i = e(t).iterator();
139
- for (let e of i) {
140
- await a(o);
141
- let t = this.validateSingleNodeOptions(e, n);
142
- if (t.validateNode) {
143
- let t = this.validationRegistry.getChecks(e.$type, n.categories);
144
- for (let n of t) await n(e, r, o);
145
- }
146
- t.validateChildren || i.prune();
147
- }
148
- }
149
- }
150
- validateSingleNodeOptions(e, t) {
151
- return c;
152
- }
153
- async validateAstAfter(e, t, n, r = i.CancellationToken.None) {
154
- let o = this.validationRegistry.checksAfter;
155
- for (let i of o) await a(r), await i(e, n, t.categories ?? [], r);
156
- }
157
- toDiagnostic(e, t, n) {
158
- return {
159
- message: t,
160
- range: u(n),
161
- severity: d(e),
162
- code: n.code,
163
- codeDescription: n.codeDescription,
164
- tags: n.tags,
165
- relatedInformation: n.relatedInformation,
166
- data: n.data,
167
- source: this.getSource()
168
- };
169
- }
170
- getSource() {
171
- return this.metadata.languageId;
172
- }
173
- };
174
- function u(e) {
175
- if (e.range) return e.range;
176
- let t;
177
- return typeof e.property == "string" ? t = r(e.node.$cstNode, e.property, e.index) : typeof e.keyword == "string" && (t = n(e.node.$cstNode, e.keyword, e.index)), t ??= e.node.$cstNode, t ? t.range : {
178
- start: {
179
- line: 0,
180
- character: 0
181
- },
182
- end: {
183
- line: 0,
184
- character: 0
185
- }
186
- };
187
- }
188
- function d(e) {
189
- switch (e) {
190
- case "error": return 1;
191
- case "warning": return 2;
192
- case "info": return 3;
193
- case "hint": return 4;
194
- default: throw Error("Invalid diagnostic severity: " + e);
195
- }
196
- }
197
- function f(e) {
198
- switch (e) {
199
- case "error": return s(p.LexingError);
200
- case "warning": return s(p.LexingWarning);
201
- case "info": return s(p.LexingInfo);
202
- case "hint": return s(p.LexingHint);
203
- default: throw Error("Invalid diagnostic severity: " + e);
204
- }
205
- }
206
- var p;
207
- (function(e) {
208
- e.LexingError = "lexing-error", e.LexingWarning = "lexing-warning", e.LexingInfo = "lexing-info", e.LexingHint = "lexing-hint", e.ParsingError = "parsing-error", e.LinkingError = "linking-error";
209
- })(p ||= {});
210
- //#endregion
211
- export { l as DefaultDocumentValidator };
212
-
213
- //# sourceMappingURL=document-validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-validator.js","names":["CancellationToken"],"sources":["../../../../../../../../node_modules/langium/lib/validation/document-validator.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2021 TypeFox GmbH\n * This program and the accompanying materials are made available under the\n * terms of the MIT License, which is available in the project root.\n ******************************************************************************/\nimport { CancellationToken } from '../utils/cancellation.js';\nimport { findNodeForKeyword, findNodeForProperty } from '../utils/grammar-utils.js';\nimport { streamAst } from '../utils/ast-utils.js';\nimport { tokenToRange } from '../utils/cst-utils.js';\nimport { interruptAndCheck, isOperationCancelled } from '../utils/promise-utils.js';\nimport { diagnosticData } from './validation-registry.js';\nexport const VALIDATE_EACH_NODE = Object.freeze({\n validateNode: true,\n validateChildren: true,\n});\nexport class DefaultDocumentValidator {\n constructor(services) {\n this.validationRegistry = services.validation.ValidationRegistry;\n this.metadata = services.LanguageMetaData;\n this.profiler = services.shared.profilers.LangiumProfiler;\n this.languageId = services.LanguageMetaData.languageId;\n }\n async validateDocument(document, options = {}, cancelToken = CancellationToken.None) {\n const parseResult = document.parseResult;\n const diagnostics = [];\n await interruptAndCheck(cancelToken);\n if (!options.categories || options.categories.includes('built-in')) {\n this.processLexingErrors(parseResult, diagnostics, options);\n if (options.stopAfterLexingErrors && diagnostics.some(d => d.data?.code === DocumentValidator.LexingError)) {\n return diagnostics;\n }\n this.processParsingErrors(parseResult, diagnostics, options);\n if (options.stopAfterParsingErrors && diagnostics.some(d => d.data?.code === DocumentValidator.ParsingError)) {\n return diagnostics;\n }\n this.processLinkingErrors(document, diagnostics, options);\n if (options.stopAfterLinkingErrors && diagnostics.some(d => d.data?.code === DocumentValidator.LinkingError)) {\n return diagnostics;\n }\n }\n // Process custom validations\n try {\n diagnostics.push(...await this.validateAst(parseResult.value, options, cancelToken));\n }\n catch (err) {\n if (isOperationCancelled(err)) {\n throw err;\n }\n console.error('An error occurred during validation:', err);\n }\n await interruptAndCheck(cancelToken);\n return diagnostics;\n }\n processLexingErrors(parseResult, diagnostics, _options) {\n const lexerDiagnostics = [...parseResult.lexerErrors, ...parseResult.lexerReport?.diagnostics ?? []];\n for (const lexerDiagnostic of lexerDiagnostics) {\n const severity = lexerDiagnostic.severity ?? 'error';\n const diagnostic = {\n severity: toDiagnosticSeverity(severity),\n range: {\n start: {\n line: lexerDiagnostic.line - 1,\n character: lexerDiagnostic.column - 1\n },\n end: {\n line: lexerDiagnostic.line - 1,\n character: lexerDiagnostic.column + lexerDiagnostic.length - 1\n }\n },\n message: lexerDiagnostic.message,\n data: toDiagnosticData(severity),\n source: this.getSource()\n };\n diagnostics.push(diagnostic);\n }\n }\n processParsingErrors(parseResult, diagnostics, _options) {\n for (const parserError of parseResult.parserErrors) {\n let range = undefined;\n // We can run into the chevrotain error recovery here\n // The token contained in the parser error might be automatically inserted\n // In this case every position value will be `NaN`\n if (isNaN(parserError.token.startOffset)) {\n // Some special parser error types contain a `previousToken`\n // We can simply append our diagnostic to that token\n if ('previousToken' in parserError) {\n const token = parserError.previousToken;\n if (!isNaN(token.startOffset)) {\n const position = { line: token.endLine - 1, character: token.endColumn };\n range = { start: position, end: position };\n }\n else {\n // No valid prev token. Might be empty document or containing only hidden tokens.\n // Point to document start\n const position = { line: 0, character: 0 };\n range = { start: position, end: position };\n }\n }\n }\n else {\n range = tokenToRange(parserError.token);\n }\n if (range) {\n const diagnostic = {\n severity: toDiagnosticSeverity('error'),\n range,\n message: parserError.message,\n data: diagnosticData(DocumentValidator.ParsingError),\n source: this.getSource()\n };\n diagnostics.push(diagnostic);\n }\n }\n }\n processLinkingErrors(document, diagnostics, _options) {\n for (const reference of document.references) {\n const linkingError = reference.error;\n if (linkingError) {\n const info = {\n node: linkingError.info.container,\n range: reference.$refNode?.range,\n property: linkingError.info.property,\n index: linkingError.info.index,\n data: {\n code: DocumentValidator.LinkingError,\n containerType: linkingError.info.container.$type,\n property: linkingError.info.property,\n refText: linkingError.info.reference.$refText\n }\n };\n diagnostics.push(this.toDiagnostic('error', linkingError.message, info));\n }\n }\n }\n async validateAst(rootNode, options, cancelToken = CancellationToken.None) {\n const validationItems = [];\n const acceptor = (severity, message, info) => {\n validationItems.push(this.toDiagnostic(severity, message, info));\n };\n await this.validateAstBefore(rootNode, options, acceptor, cancelToken);\n await this.validateAstNodes(rootNode, options, acceptor, cancelToken);\n await this.validateAstAfter(rootNode, options, acceptor, cancelToken);\n return validationItems;\n }\n async validateAstBefore(rootNode, options, acceptor, cancelToken = CancellationToken.None) {\n const checksBefore = this.validationRegistry.checksBefore;\n for (const checkBefore of checksBefore) {\n await interruptAndCheck(cancelToken);\n await checkBefore(rootNode, acceptor, options.categories ?? [], cancelToken);\n }\n }\n async validateAstNodes(rootNode, options, acceptor, cancelToken = CancellationToken.None) {\n if (this.profiler?.isActive('validating')) {\n const task = this.profiler.createTask('validating', this.languageId);\n task.start();\n try {\n const nodes = streamAst(rootNode).iterator();\n for (const node of nodes) {\n task.startSubTask(node.$type);\n const nodeOptions = this.validateSingleNodeOptions(node, options);\n if (nodeOptions.validateNode) {\n try {\n const checks = this.validationRegistry.getChecks(node.$type, options.categories);\n for (const check of checks) {\n await check(node, acceptor, cancelToken);\n }\n }\n finally {\n task.stopSubTask(node.$type);\n }\n }\n if (!nodeOptions.validateChildren) {\n nodes.prune();\n }\n }\n }\n finally {\n task.stop();\n }\n }\n else {\n const nodes = streamAst(rootNode).iterator();\n for (const node of nodes) {\n await interruptAndCheck(cancelToken);\n const nodeOptions = this.validateSingleNodeOptions(node, options);\n if (nodeOptions.validateNode) {\n const checks = this.validationRegistry.getChecks(node.$type, options.categories);\n for (const check of checks) {\n await check(node, acceptor, cancelToken);\n }\n }\n if (!nodeOptions.validateChildren) {\n nodes.prune();\n }\n }\n }\n }\n validateSingleNodeOptions(_node, _options) {\n return VALIDATE_EACH_NODE;\n }\n async validateAstAfter(rootNode, options, acceptor, cancelToken = CancellationToken.None) {\n const checksAfter = this.validationRegistry.checksAfter;\n for (const checkAfter of checksAfter) {\n await interruptAndCheck(cancelToken);\n await checkAfter(rootNode, acceptor, options.categories ?? [], cancelToken);\n }\n }\n toDiagnostic(severity, message, info) {\n return {\n message,\n range: getDiagnosticRange(info),\n severity: toDiagnosticSeverity(severity),\n code: info.code,\n codeDescription: info.codeDescription,\n tags: info.tags,\n relatedInformation: info.relatedInformation,\n data: info.data,\n source: this.getSource()\n };\n }\n getSource() {\n return this.metadata.languageId;\n }\n}\nexport function getDiagnosticRange(info) {\n if (info.range) {\n return info.range;\n }\n let cstNode;\n if (typeof info.property === 'string') {\n cstNode = findNodeForProperty(info.node.$cstNode, info.property, info.index);\n }\n else if (typeof info.keyword === 'string') {\n cstNode = findNodeForKeyword(info.node.$cstNode, info.keyword, info.index);\n }\n cstNode ?? (cstNode = info.node.$cstNode);\n if (!cstNode) {\n return {\n start: { line: 0, character: 0 },\n end: { line: 0, character: 0 }\n };\n }\n return cstNode.range;\n}\n/**\n * Transforms the diagnostic severity from the {@link LexingDiagnosticSeverity} format to LSP's `DiagnosticSeverity` format.\n *\n * @param severity The lexing diagnostic severity\n * @returns Diagnostic severity according to `vscode-languageserver-types/lib/esm/main.js#DiagnosticSeverity`\n */\nexport function toDiagnosticSeverity(severity) {\n switch (severity) {\n case 'error':\n return 1;\n case 'warning':\n return 2;\n case 'info':\n return 3;\n case 'hint':\n return 4;\n default:\n throw new Error('Invalid diagnostic severity: ' + severity);\n }\n}\nexport function toDiagnosticData(severity) {\n switch (severity) {\n case 'error':\n return diagnosticData(DocumentValidator.LexingError);\n case 'warning':\n return diagnosticData(DocumentValidator.LexingWarning);\n case 'info':\n return diagnosticData(DocumentValidator.LexingInfo);\n case 'hint':\n return diagnosticData(DocumentValidator.LexingHint);\n default:\n throw new Error('Invalid diagnostic severity: ' + severity);\n }\n}\nexport var DocumentValidator;\n(function (DocumentValidator) {\n DocumentValidator.LexingError = 'lexing-error';\n DocumentValidator.LexingWarning = 'lexing-warning';\n DocumentValidator.LexingInfo = 'lexing-info';\n DocumentValidator.LexingHint = 'lexing-hint';\n DocumentValidator.ParsingError = 'parsing-error';\n DocumentValidator.LinkingError = 'linking-error';\n})(DocumentValidator || (DocumentValidator = {}));\n//# sourceMappingURL=document-validator.js.map"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -1,90 +0,0 @@
1
- import { stream as e } from "../utils/stream.js";
2
- import { assertUnreachable as t } from "../utils/errors.js";
3
- import { isOperationCancelled as n } from "../utils/promise-utils.js";
4
- import { MultiMap as r } from "../utils/collections.js";
5
- //#region ../../node_modules/langium/lib/validation/validation-registry.js
6
- function i(e) {
7
- return { code: e };
8
- }
9
- var a;
10
- (function(e) {
11
- e.defaults = [
12
- "fast",
13
- "slow",
14
- "built-in"
15
- ], e.all = e.defaults;
16
- })(a ||= {});
17
- var o = class {
18
- constructor(e) {
19
- this.entries = new r(), this.knownCategories = new Set(a.defaults), this.entriesBefore = [], this.entriesAfter = [], this.reflection = e.shared.AstReflection;
20
- }
21
- register(e, n = this, r = "fast") {
22
- if (r === "built-in") throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");
23
- this.knownCategories.add(r);
24
- for (let [i, a] of Object.entries(e)) {
25
- let e = a;
26
- if (Array.isArray(e)) for (let t of e) {
27
- let e = {
28
- check: this.wrapValidationException(t, n),
29
- category: r
30
- };
31
- this.addEntry(i, e);
32
- }
33
- else if (typeof e == "function") {
34
- let t = {
35
- check: this.wrapValidationException(e, n),
36
- category: r
37
- };
38
- this.addEntry(i, t);
39
- } else t(e);
40
- }
41
- }
42
- wrapValidationException(e, t) {
43
- return async (n, r, i) => {
44
- await this.handleException(() => e.call(t, n, r, i), "An error occurred during validation", r, n);
45
- };
46
- }
47
- async handleException(e, t, r, i) {
48
- try {
49
- await e();
50
- } catch (e) {
51
- if (n(e)) throw e;
52
- console.error(`${t}:`, e), e instanceof Error && e.stack && console.error(e.stack), r("error", `${t}: ${e instanceof Error ? e.message : String(e)}`, { node: i });
53
- }
54
- }
55
- addEntry(e, t) {
56
- if (e === "AstNode") {
57
- this.entries.add("AstNode", t);
58
- return;
59
- }
60
- for (let n of this.reflection.getAllSubTypes(e)) this.entries.add(n, t);
61
- }
62
- getChecks(t, n) {
63
- let r = e(this.entries.get(t)).concat(this.entries.get("AstNode"));
64
- return n && (r = r.filter((e) => n.includes(e.category))), r.map((e) => e.check);
65
- }
66
- registerBeforeDocument(e, t = this) {
67
- this.entriesBefore.push(this.wrapPreparationException(e, "An error occurred during set-up of the validation", t));
68
- }
69
- registerAfterDocument(e, t = this) {
70
- this.entriesAfter.push(this.wrapPreparationException(e, "An error occurred during tear-down of the validation", t));
71
- }
72
- wrapPreparationException(e, t, n) {
73
- return async (r, i, a, o) => {
74
- await this.handleException(() => e.call(n, r, i, a, o), t, i, r);
75
- };
76
- }
77
- get checksBefore() {
78
- return this.entriesBefore;
79
- }
80
- get checksAfter() {
81
- return this.entriesAfter;
82
- }
83
- getAllValidationCategories(e) {
84
- return this.knownCategories;
85
- }
86
- };
87
- //#endregion
88
- export { o as ValidationRegistry, i as diagnosticData };
89
-
90
- //# sourceMappingURL=validation-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation-registry.js","names":[],"sources":["../../../../../../../../node_modules/langium/lib/validation/validation-registry.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2021 TypeFox GmbH\n * This program and the accompanying materials are made available under the\n * terms of the MIT License, which is available in the project root.\n ******************************************************************************/\nimport { assertUnreachable } from '../index.js';\nimport { MultiMap } from '../utils/collections.js';\nimport { isOperationCancelled } from '../utils/promise-utils.js';\nimport { stream } from '../utils/stream.js';\n/**\n * Create DiagnosticData for a given diagnostic code. The result can be put into the `data` field of a DiagnosticInfo.\n */\nexport function diagnosticData(code) {\n return { code };\n}\nexport var ValidationCategory;\n(function (ValidationCategory) {\n ValidationCategory.defaults = ['fast', 'slow', 'built-in'];\n /**\n * @deprecated since 4.2 Use `ValidationCategory.defaults` instead,\n * since \"all\" does not include user-defined, custom validation categories.\n */\n ValidationCategory.all = ValidationCategory.defaults;\n})(ValidationCategory || (ValidationCategory = {}));\n/**\n * Manages a set of `ValidationCheck`s to be applied when documents are validated.\n */\nexport class ValidationRegistry {\n constructor(services) {\n this.entries = new MultiMap();\n this.knownCategories = new Set(ValidationCategory.defaults);\n this.entriesBefore = [];\n this.entriesAfter = [];\n this.reflection = services.shared.AstReflection;\n }\n /**\n * Register a set of validation checks. Each value in the record can be either a single validation check (i.e. a function)\n * or an array of validation checks.\n *\n * @param checksRecord Set of validation checks to register.\n * @param thisObj Optional object to be used as `this` when calling the validation check functions.\n * @param category Optional category for the validation checks (defaults to `'fast'`).\n */\n register(checksRecord, thisObj = this, category = 'fast') {\n if (category === 'built-in') {\n throw new Error(\"The 'built-in' category is reserved for lexer, parser, and linker errors.\");\n }\n this.knownCategories.add(category); // remember custom/user-defined categories\n for (const [type, ch] of Object.entries(checksRecord)) {\n const callbacks = ch;\n if (Array.isArray(callbacks)) {\n for (const check of callbacks) {\n const entry = {\n check: this.wrapValidationException(check, thisObj),\n category\n };\n this.addEntry(type, entry);\n }\n }\n else if (typeof callbacks === 'function') {\n const entry = {\n check: this.wrapValidationException(callbacks, thisObj),\n category\n };\n this.addEntry(type, entry);\n }\n else {\n assertUnreachable(callbacks);\n }\n }\n }\n wrapValidationException(check, thisObj) {\n return async (node, accept, cancelToken) => {\n await this.handleException(() => check.call(thisObj, node, accept, cancelToken), 'An error occurred during validation', accept, node);\n };\n }\n async handleException(functionality, messageContext, accept, node) {\n try {\n await functionality();\n }\n catch (err) {\n if (isOperationCancelled(err)) {\n throw err;\n }\n console.error(`${messageContext}:`, err);\n if (err instanceof Error && err.stack) {\n console.error(err.stack);\n }\n const messageDetails = err instanceof Error ? err.message : String(err);\n accept('error', `${messageContext}: ${messageDetails}`, { node });\n }\n }\n addEntry(type, entry) {\n if (type === 'AstNode') {\n this.entries.add('AstNode', entry);\n return;\n }\n for (const subtype of this.reflection.getAllSubTypes(type)) {\n this.entries.add(subtype, entry);\n }\n }\n getChecks(type, categories) {\n let checks = stream(this.entries.get(type))\n .concat(this.entries.get('AstNode'));\n if (categories) {\n checks = checks.filter(entry => categories.includes(entry.category));\n }\n return checks.map(entry => entry.check);\n }\n /**\n * Register logic which will be executed once before validating all the nodes of an AST/Langium document.\n * This helps to prepare or initialize some information which are required or reusable for the following checks on the AstNodes.\n *\n * As an example, for validating unique fully-qualified names of nodes in the AST,\n * here the map for mapping names to nodes could be established.\n * During the usual checks on the nodes, they are put into this map with their name.\n *\n * Note that this approach makes validations stateful, which is relevant e.g. when cancelling the validation.\n * Therefore it is recommended to clear stored information\n * _before_ validating an AST to validate each AST unaffected from other ASTs\n * AND _after_ validating the AST to free memory by information which are no longer used.\n *\n * @param checkBefore a set-up function which will be called once before actually validating an AST\n * @param thisObj Optional object to be used as `this` when calling the validation check functions.\n */\n registerBeforeDocument(checkBefore, thisObj = this) {\n this.entriesBefore.push(this.wrapPreparationException(checkBefore, 'An error occurred during set-up of the validation', thisObj));\n }\n /**\n * Register logic which will be executed once after validating all the nodes of an AST/Langium document.\n * This helps to finally evaluate information which are collected during the checks on the AstNodes.\n *\n * As an example, for validating unique fully-qualified names of nodes in the AST,\n * here the map with all the collected nodes and their names is checked\n * and validation hints are created for all nodes with the same name.\n *\n * Note that this approach makes validations stateful, which is relevant e.g. when cancelling the validation.\n * Therefore it is recommended to clear stored information\n * _before_ validating an AST to validate each AST unaffected from other ASTs\n * AND _after_ validating the AST to free memory by information which are no longer used.\n *\n * @param checkBefore a set-up function which will be called once before actually validating an AST\n * @param thisObj Optional object to be used as `this` when calling the validation check functions.\n */\n registerAfterDocument(checkAfter, thisObj = this) {\n this.entriesAfter.push(this.wrapPreparationException(checkAfter, 'An error occurred during tear-down of the validation', thisObj));\n }\n wrapPreparationException(check, messageContext, thisObj) {\n return async (rootNode, accept, categories, cancelToken) => {\n await this.handleException(() => check.call(thisObj, rootNode, accept, categories, cancelToken), messageContext, accept, rootNode);\n };\n }\n get checksBefore() {\n return this.entriesBefore;\n }\n get checksAfter() {\n return this.entriesAfter;\n }\n getAllValidationCategories(_document) {\n return this.knownCategories;\n }\n}\n//# sourceMappingURL=validation-registry.js.map"],"x_google_ignoreList":[0],"mappings":";;;;;AAYA,SAAgB,EAAe,GAAM;CACjC,OAAO,EAAE,SAAM;;AAEnB,IAAW;CACV,SAAU,GAAoB;CAM3B,AALA,EAAmB,WAAW;EAAC;EAAQ;EAAQ;EAAW,EAK1D,EAAmB,MAAM,EAAmB;GAC7C,AAAuB,MAAqB,EAAE,CAAE;AAInD,IAAa,IAAb,MAAgC;CAC5B,YAAY,GAAU;EAKlB,AAJA,KAAK,UAAU,IAAI,GAAU,EAC7B,KAAK,kBAAkB,IAAI,IAAI,EAAmB,SAAS,EAC3D,KAAK,gBAAgB,EAAE,EACvB,KAAK,eAAe,EAAE,EACtB,KAAK,aAAa,EAAS,OAAO;;CAUtC,SAAS,GAAc,IAAU,MAAM,IAAW,QAAQ;EACtD,IAAI,MAAa,YACb,MAAU,MAAM,4EAA4E;EAEhG,KAAK,gBAAgB,IAAI,EAAS;EAClC,KAAK,IAAM,CAAC,GAAM,MAAO,OAAO,QAAQ,EAAa,EAAE;GACnD,IAAM,IAAY;GAClB,IAAI,MAAM,QAAQ,EAAU,EACxB,KAAK,IAAM,KAAS,GAAW;IAC3B,IAAM,IAAQ;KACV,OAAO,KAAK,wBAAwB,GAAO,EAAQ;KACnD;KACH;IACD,KAAK,SAAS,GAAM,EAAM;;QAG7B,IAAI,OAAO,KAAc,YAAY;IACtC,IAAM,IAAQ;KACV,OAAO,KAAK,wBAAwB,GAAW,EAAQ;KACvD;KACH;IACD,KAAK,SAAS,GAAM,EAAM;UAG1B,EAAkB,EAAU;;;CAIxC,wBAAwB,GAAO,GAAS;EACpC,OAAO,OAAO,GAAM,GAAQ,MAAgB;GACxC,MAAM,KAAK,sBAAsB,EAAM,KAAK,GAAS,GAAM,GAAQ,EAAY,EAAE,uCAAuC,GAAQ,EAAK;;;CAG7I,MAAM,gBAAgB,GAAe,GAAgB,GAAQ,GAAM;EAC/D,IAAI;GACA,MAAM,GAAe;WAElB,GAAK;GACR,IAAI,EAAqB,EAAI,EACzB,MAAM;GAOV,AALA,QAAQ,MAAM,GAAG,EAAe,IAAI,EAAI,EACpC,aAAe,SAAS,EAAI,SAC5B,QAAQ,MAAM,EAAI,MAAM,EAG5B,EAAO,SAAS,GAAG,EAAe,IADX,aAAe,QAAQ,EAAI,UAAU,OAAO,EAAI,IACf,EAAE,SAAM,CAAC;;;CAGzE,SAAS,GAAM,GAAO;EAClB,IAAI,MAAS,WAAW;GACpB,KAAK,QAAQ,IAAI,WAAW,EAAM;GAClC;;EAEJ,KAAK,IAAM,KAAW,KAAK,WAAW,eAAe,EAAK,EACtD,KAAK,QAAQ,IAAI,GAAS,EAAM;;CAGxC,UAAU,GAAM,GAAY;EACxB,IAAI,IAAS,EAAO,KAAK,QAAQ,IAAI,EAAK,CAAC,CACtC,OAAO,KAAK,QAAQ,IAAI,UAAU,CAAC;EAIxC,OAHI,MACA,IAAS,EAAO,QAAO,MAAS,EAAW,SAAS,EAAM,SAAS,CAAC,GAEjE,EAAO,KAAI,MAAS,EAAM,MAAM;;CAkB3C,uBAAuB,GAAa,IAAU,MAAM;EAChD,KAAK,cAAc,KAAK,KAAK,yBAAyB,GAAa,qDAAqD,EAAQ,CAAC;;CAkBrI,sBAAsB,GAAY,IAAU,MAAM;EAC9C,KAAK,aAAa,KAAK,KAAK,yBAAyB,GAAY,wDAAwD,EAAQ,CAAC;;CAEtI,yBAAyB,GAAO,GAAgB,GAAS;EACrD,OAAO,OAAO,GAAU,GAAQ,GAAY,MAAgB;GACxD,MAAM,KAAK,sBAAsB,EAAM,KAAK,GAAS,GAAU,GAAQ,GAAY,EAAY,EAAE,GAAgB,GAAQ,EAAS;;;CAG1I,IAAI,eAAe;EACf,OAAO,KAAK;;CAEhB,IAAI,cAAc;EACd,OAAO,KAAK;;CAEhB,2BAA2B,GAAW;EAClC,OAAO,KAAK"}
@@ -1,61 +0,0 @@
1
- import { isMultiReference as e, isReference as t } from "../syntax-tree.js";
2
- import { getDocument as n, streamAst as r, streamReferences as i } from "../utils/ast-utils.js";
3
- import { toDocumentSegment as a } from "../utils/cst-utils.js";
4
- import { cancellation_exports as o } from "../utils/cancellation.js";
5
- import { interruptAndCheck as s } from "../utils/promise-utils.js";
6
- import { UriUtils as c } from "../utils/uri-utils.js";
7
- //#region ../../node_modules/langium/lib/workspace/ast-descriptions.js
8
- var l = class {
9
- constructor(e) {
10
- this.astNodeLocator = e.workspace.AstNodeLocator, this.nameProvider = e.references.NameProvider;
11
- }
12
- createDescription(e, t, r) {
13
- let i = r ?? n(e);
14
- t ??= this.nameProvider.getName(e);
15
- let o = this.astNodeLocator.getAstNodePath(e);
16
- if (!t) throw Error(`Node at path ${o} has no name.`);
17
- let s, c = () => s ??= a(this.nameProvider.getNameNode(e) ?? e.$cstNode);
18
- return {
19
- node: e,
20
- name: t,
21
- get nameSegment() {
22
- return c();
23
- },
24
- selectionSegment: a(e.$cstNode),
25
- type: e.$type,
26
- documentUri: i.uri,
27
- path: o
28
- };
29
- }
30
- }, u = class {
31
- constructor(e) {
32
- this.nodeLocator = e.workspace.AstNodeLocator;
33
- }
34
- async createDescriptions(e, t = o.CancellationToken.None) {
35
- let n = [], a = e.parseResult.value;
36
- for (let e of r(a)) await s(t), i(e).forEach((e) => {
37
- e.reference.error || n.push(...this.createInfoDescriptions(e));
38
- });
39
- return n;
40
- }
41
- createInfoDescriptions(r) {
42
- let i = r.reference;
43
- if (i.error || !i.$refNode) return [];
44
- let o = [];
45
- t(i) && i.$nodeDescription ? o = [i.$nodeDescription] : e(i) && (o = i.items.map((e) => e.$nodeDescription).filter((e) => e !== void 0));
46
- let s = n(r.container).uri, l = this.nodeLocator.getAstNodePath(r.container), u = [], d = a(i.$refNode);
47
- for (let e of o) u.push({
48
- sourceUri: s,
49
- sourcePath: l,
50
- targetUri: e.documentUri,
51
- targetPath: e.path,
52
- segment: d,
53
- local: c.equals(e.documentUri, s)
54
- });
55
- return u;
56
- }
57
- };
58
- //#endregion
59
- export { l as DefaultAstNodeDescriptionProvider, u as DefaultReferenceDescriptionProvider };
60
-
61
- //# sourceMappingURL=ast-descriptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ast-descriptions.js","names":["CancellationToken"],"sources":["../../../../../../../../node_modules/langium/lib/workspace/ast-descriptions.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2021 TypeFox GmbH\n * This program and the accompanying materials are made available under the\n * terms of the MIT License, which is available in the project root.\n ******************************************************************************/\nimport { CancellationToken } from '../utils/cancellation.js';\nimport { isMultiReference, isReference } from '../syntax-tree.js';\nimport { getDocument, streamAst, streamReferences } from '../utils/ast-utils.js';\nimport { toDocumentSegment } from '../utils/cst-utils.js';\nimport { interruptAndCheck } from '../utils/promise-utils.js';\nimport { UriUtils } from '../utils/uri-utils.js';\nexport class DefaultAstNodeDescriptionProvider {\n constructor(services) {\n this.astNodeLocator = services.workspace.AstNodeLocator;\n this.nameProvider = services.references.NameProvider;\n }\n createDescription(node, name, document) {\n const doc = document ?? getDocument(node);\n name ?? (name = this.nameProvider.getName(node));\n const path = this.astNodeLocator.getAstNodePath(node);\n if (!name) {\n throw new Error(`Node at path ${path} has no name.`);\n }\n let nameNodeSegment;\n const nameSegmentGetter = () => nameNodeSegment ?? (nameNodeSegment = toDocumentSegment(this.nameProvider.getNameNode(node) ?? node.$cstNode));\n return {\n node,\n name,\n get nameSegment() {\n return nameSegmentGetter();\n },\n selectionSegment: toDocumentSegment(node.$cstNode),\n type: node.$type,\n documentUri: doc.uri,\n path\n };\n }\n}\nexport class DefaultReferenceDescriptionProvider {\n constructor(services) {\n this.nodeLocator = services.workspace.AstNodeLocator;\n }\n async createDescriptions(document, cancelToken = CancellationToken.None) {\n const descr = [];\n const rootNode = document.parseResult.value;\n for (const astNode of streamAst(rootNode)) {\n await interruptAndCheck(cancelToken);\n streamReferences(astNode).forEach(refInfo => {\n if (!refInfo.reference.error) {\n descr.push(...this.createInfoDescriptions(refInfo));\n }\n });\n }\n return descr;\n }\n createInfoDescriptions(refInfo) {\n const reference = refInfo.reference;\n if (reference.error || !reference.$refNode) {\n return [];\n }\n let items = [];\n if (isReference(reference) && reference.$nodeDescription) {\n items = [reference.$nodeDescription];\n }\n else if (isMultiReference(reference)) {\n items = reference.items.map(e => e.$nodeDescription).filter(e => e !== undefined);\n }\n const sourceUri = getDocument(refInfo.container).uri;\n const sourcePath = this.nodeLocator.getAstNodePath(refInfo.container);\n const descriptions = [];\n const segment = toDocumentSegment(reference.$refNode);\n for (const item of items) {\n descriptions.push({\n sourceUri,\n sourcePath,\n targetUri: item.documentUri,\n targetPath: item.path,\n segment,\n local: UriUtils.equals(item.documentUri, sourceUri)\n });\n }\n return descriptions;\n }\n}\n//# sourceMappingURL=ast-descriptions.js.map"],"x_google_ignoreList":[0],"mappings":";;;;;;;AAWA,IAAa,IAAb,MAA+C;CAC3C,YAAY,GAAU;EAElB,AADA,KAAK,iBAAiB,EAAS,UAAU,gBACzC,KAAK,eAAe,EAAS,WAAW;;CAE5C,kBAAkB,GAAM,GAAM,GAAU;EACpC,IAAM,IAAM,KAAY,EAAY,EAAK;EACzC,AAAS,MAAO,KAAK,aAAa,QAAQ,EAAK;EAC/C,IAAM,IAAO,KAAK,eAAe,eAAe,EAAK;EACrD,IAAI,CAAC,GACD,MAAU,MAAM,gBAAgB,EAAK,eAAe;EAExD,IAAI,GACE,UAA0B,AAAoB,MAAkB,EAAkB,KAAK,aAAa,YAAY,EAAK,IAAI,EAAK,SAAS;EAC7I,OAAO;GACH;GACA;GACA,IAAI,cAAc;IACd,OAAO,GAAmB;;GAE9B,kBAAkB,EAAkB,EAAK,SAAS;GAClD,MAAM,EAAK;GACX,aAAa,EAAI;GACjB;GACH;;GAGI,IAAb,MAAiD;CAC7C,YAAY,GAAU;EAClB,KAAK,cAAc,EAAS,UAAU;;CAE1C,MAAM,mBAAmB,GAAU,IAAcA,EAAAA,kBAAkB,MAAM;EACrE,IAAM,IAAQ,EAAE,EACV,IAAW,EAAS,YAAY;EACtC,KAAK,IAAM,KAAW,EAAU,EAAS,EAErC,AADA,MAAM,EAAkB,EAAY,EACpC,EAAiB,EAAQ,CAAC,SAAQ,MAAW;GACzC,AAAK,EAAQ,UAAU,SACnB,EAAM,KAAK,GAAG,KAAK,uBAAuB,EAAQ,CAAC;IAEzD;EAEN,OAAO;;CAEX,uBAAuB,GAAS;EAC5B,IAAM,IAAY,EAAQ;EAC1B,IAAI,EAAU,SAAS,CAAC,EAAU,UAC9B,OAAO,EAAE;EAEb,IAAI,IAAQ,EAAE;EACd,AAAI,EAAY,EAAU,IAAI,EAAU,mBACpC,IAAQ,CAAC,EAAU,iBAAiB,GAE/B,EAAiB,EAAU,KAChC,IAAQ,EAAU,MAAM,KAAI,MAAK,EAAE,iBAAiB,CAAC,QAAO,MAAK,MAAM,KAAA,EAAU;EAErF,IAAM,IAAY,EAAY,EAAQ,UAAU,CAAC,KAC3C,IAAa,KAAK,YAAY,eAAe,EAAQ,UAAU,EAC/D,IAAe,EAAE,EACjB,IAAU,EAAkB,EAAU,SAAS;EACrD,KAAK,IAAM,KAAQ,GACf,EAAa,KAAK;GACd;GACA;GACA,WAAW,EAAK;GAChB,YAAY,EAAK;GACjB;GACA,OAAO,EAAS,OAAO,EAAK,aAAa,EAAU;GACtD,CAAC;EAEN,OAAO"}