@plumile/ui 0.1.112 → 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.
- package/lib/esm/_virtual/_rolldown/runtime.js +5 -5
- package/lib/esm/atomic/molecules/markdown/components/MarkdownArticleContainer.css.js +0 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownLink.css.js +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-7EHR7CIX.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4EGX6M5U.js +37 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-4EGX6M5U.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-5DO6E6H7.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-5DO6E6H7.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-LIHQZDEY.js → chunk-BR22UD5L.js} +18 -21
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-BR22UD5L.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FHYWG6QK.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FHYWG6QK.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MPE355IW.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MPE355IW.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MZUSXYTE.js +32 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MZUSXYTE.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-N66VUXT2.js +56 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-N66VUXT2.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-NNHCCRGN.js +20648 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-NNHCCRGN.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-PUPMXCY4.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-PUPMXCY4.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-UIBZB4QT.js +25 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-UIBZB4QT.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WCWK7LTN.js +33 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WCWK7LTN.js.map +1 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/eventmodeling-FCH6USID.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-WXDBUCRP.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-J43DQDTF.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-YPE3B663.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-LRSECV5Y.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-GUYGQ44K.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-BLDUP644.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-LRROVOQU.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-L42UT6IY.js +3 -0
- package/lib/esm/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +24 -19
- package/lib/esm/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js.map +1 -1
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/greedy-fas.js +8 -8
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/layout.js +105 -105
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/nesting-graph.js +12 -12
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/cross-count.js +8 -8
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/index.js +12 -12
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/init-order.js +6 -6
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js +7 -7
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js +9 -9
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/order/sort.js +7 -7
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/position/bk.js +53 -53
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/position/index.js +5 -5
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js +26 -26
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/rank/util.js +9 -9
- package/lib/esm/node_modules/dagre-d3-es/src/dagre/util.js +54 -54
- package/lib/esm/node_modules/dagre-d3-es/src/graphlib/graph.js +45 -45
- package/lib/esm/node_modules/dagre-d3-es/src/graphlib/json.js +18 -18
- package/lib/esm/node_modules/lodash-es/_arrayLikeKeys.js +8 -8
- package/lib/esm/node_modules/lodash-es/_baseAssign.js +3 -3
- package/lib/esm/node_modules/lodash-es/_baseClone.js +24 -24
- package/lib/esm/node_modules/lodash-es/_baseForOwn.js +3 -3
- package/lib/esm/node_modules/lodash-es/_baseGetAllKeys.js +3 -3
- package/lib/esm/node_modules/lodash-es/_baseIsEqualDeep.js +12 -12
- package/lib/esm/node_modules/lodash-es/_baseIteratee.js +4 -4
- package/lib/esm/node_modules/lodash-es/_baseMatchesProperty.js +9 -9
- package/lib/esm/node_modules/lodash-es/_baseMerge.js +6 -6
- package/lib/esm/node_modules/lodash-es/_baseMergeDeep.js +15 -15
- package/lib/esm/node_modules/lodash-es/_baseOrderBy.js +14 -14
- package/lib/esm/node_modules/lodash-es/_baseSet.js +8 -8
- package/lib/esm/node_modules/lodash-es/_baseSetToString.js +5 -5
- package/lib/esm/node_modules/lodash-es/_baseToString.js +11 -11
- package/lib/esm/node_modules/lodash-es/_baseUniq.js +7 -7
- package/lib/esm/node_modules/lodash-es/_copySymbols.js +3 -3
- package/lib/esm/node_modules/lodash-es/_createSet.js +6 -6
- package/lib/esm/node_modules/lodash-es/_equalByTag.js +18 -18
- package/lib/esm/node_modules/lodash-es/_flatRest.js +4 -4
- package/lib/esm/node_modules/lodash-es/_getAllKeys.js +3 -3
- package/lib/esm/node_modules/lodash-es/_getAllKeysIn.js +4 -4
- package/lib/esm/node_modules/lodash-es/_getSymbolsIn.js +3 -3
- package/lib/esm/node_modules/lodash-es/_hasPath.js +5 -5
- package/lib/esm/node_modules/lodash-es/_initCloneObject.js +4 -4
- package/lib/esm/node_modules/lodash-es/_isFlattenable.js +3 -3
- package/lib/esm/node_modules/lodash-es/_isIterateeCall.js +6 -6
- package/lib/esm/node_modules/lodash-es/_mapCacheClear.js +6 -6
- package/lib/esm/node_modules/lodash-es/findIndex.js +4 -4
- package/lib/esm/node_modules/lodash-es/forEach.js +3 -3
- package/lib/esm/node_modules/lodash-es/forIn.js +3 -3
- package/lib/esm/node_modules/lodash-es/isEmpty.js +8 -8
- package/lib/esm/node_modules/lodash-es/isPlainObject.js +4 -4
- package/lib/esm/node_modules/lodash-es/isString.js +3 -3
- package/lib/esm/node_modules/lodash-es/keys.js +4 -4
- package/lib/esm/node_modules/lodash-es/keysIn.js +3 -3
- package/lib/esm/node_modules/lodash-es/map.js +3 -3
- package/lib/esm/node_modules/lodash-es/mapValues.js +5 -5
- package/lib/esm/node_modules/lodash-es/max.js +3 -3
- package/lib/esm/node_modules/lodash-es/min.js +3 -3
- package/lib/esm/node_modules/lodash-es/minBy.js +3 -3
- package/lib/esm/node_modules/lodash-es/reduce.js +5 -5
- package/lib/esm/node_modules/lodash-es/size.js +4 -4
- package/lib/esm/node_modules/lodash-es/sortBy.js +6 -6
- package/lib/esm/node_modules/lodash-es/union.js +6 -6
- package/lib/esm/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5PVQY5BW.js +146 -146
- package/lib/esm/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5PVQY5BW.js.map +1 -1
- package/lib/esm/node_modules/mermaid/dist/mermaid.core.js +374 -374
- package/lib/esm/node_modules/mermaid/dist/mermaid.core.js.map +1 -1
- package/package.json +6 -6
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/helpers.js +0 -27
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/helpers.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/model.js +0 -155
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/model.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/visitor.js +0 -45
- package/lib/esm/node_modules/@chevrotain/gast/lib/src/visitor.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/api.js +0 -2
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js +0 -89
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js +0 -39
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js +0 -600
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js +0 -29
- package/lib/esm/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/print.js +0 -13
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/print.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/timer.js +0 -12
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/timer.js.map +0 -1
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js +0 -14
- package/lib/esm/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-YZFGNWBL.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2KRD3SAO.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2KRD3SAO.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-67CJDMHE.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-67CJDMHE.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7N4EOEYR.js +0 -40
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7N4EOEYR.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js +0 -35
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FOC6F5B3.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FOC6F5B3.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js +0 -1210
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KGLVRYIC.js +0 -28
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KGLVRYIC.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LIHQZDEY.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js +0 -36
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js.map +0 -1
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-7Q5UKJZL.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-OMHHGYJF.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-4T2RLAQJ.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-ZZUOXDRM.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-PYXPWWZC.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-SZITEDCU.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-W4RFUUIX.js +0 -3
- package/lib/esm/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-RL74JXVD.js +0 -3
- package/lib/esm/node_modules/chevrotain/lib/src/api.js +0 -10
- package/lib/esm/node_modules/chevrotain/lib/src/lang/lang_extensions.js +0 -14
- package/lib/esm/node_modules/chevrotain/lib/src/lang/lang_extensions.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/constants.js +0 -6
- package/lib/esm/node_modules/chevrotain/lib/src/parse/constants.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst.js +0 -17
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js +0 -53
- package/lib/esm/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/errors_public.js +0 -81
- package/lib/esm/node_modules/chevrotain/lib/src/parse/errors_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/exceptions_public.js +0 -37
- package/lib/esm/node_modules/chevrotain/lib/src/parse/exceptions_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/checks.js +0 -279
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/checks.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/first.js +0 -27
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/first.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/follow.js +0 -32
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/follow.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js +0 -18
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js +0 -269
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/keys.js +0 -8
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/keys.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js +0 -45
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js +0 -245
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/resolver.js +0 -34
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/resolver.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/rest.js +0 -60
- package/lib/esm/node_modules/chevrotain/lib/src/parse/grammar/rest.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/parser.js +0 -118
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/parser.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js +0 -50
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js +0 -170
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js +0 -47
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js +0 -111
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js +0 -25
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js +0 -316
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js +0 -291
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js +0 -147
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js +0 -96
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js +0 -15
- package/lib/esm/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer.js +0 -439
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js +0 -13
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_public.js +0 -257
- package/lib/esm/node_modules/chevrotain/lib/src/scan/lexer_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp.js +0 -157
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js +0 -19
- package/lib/esm/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens.js +0 -68
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens.js.map +0 -1
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens_public.js +0 -43
- package/lib/esm/node_modules/chevrotain/lib/src/scan/tokens_public.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/all-star-lookahead.js +0 -365
- package/lib/esm/node_modules/chevrotain-allstar/lib/all-star-lookahead.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/atn.js +0 -197
- package/lib/esm/node_modules/chevrotain-allstar/lib/atn.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/dfa.js +0 -35
- package/lib/esm/node_modules/chevrotain-allstar/lib/dfa.js.map +0 -1
- package/lib/esm/node_modules/chevrotain-allstar/lib/index.js +0 -1
- package/lib/esm/node_modules/langium/lib/default-module.js +0 -89
- package/lib/esm/node_modules/langium/lib/default-module.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/dependency-injection.js +0 -62
- package/lib/esm/node_modules/langium/lib/dependency-injection.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/documentation/comment-provider.js +0 -15
- package/lib/esm/node_modules/langium/lib/documentation/comment-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/documentation/documentation-provider.js +0 -40
- package/lib/esm/node_modules/langium/lib/documentation/documentation-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/documentation/jsdoc.js +0 -307
- package/lib/esm/node_modules/langium/lib/documentation/jsdoc.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/languages/generated/ast.js +0 -900
- package/lib/esm/node_modules/langium/lib/languages/generated/ast.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/languages/grammar-config.js +0 -17
- package/lib/esm/node_modules/langium/lib/languages/grammar-config.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/async-parser.js +0 -13
- package/lib/esm/node_modules/langium/lib/parser/async-parser.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/completion-parser-builder.js +0 -11
- package/lib/esm/node_modules/langium/lib/parser/completion-parser-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/cst-node-builder.js +0 -164
- package/lib/esm/node_modules/langium/lib/parser/cst-node-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/langium-parser-builder.js +0 -15
- package/lib/esm/node_modules/langium/lib/parser/langium-parser-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/langium-parser.js +0 -397
- package/lib/esm/node_modules/langium/lib/parser/langium-parser.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/lexer.js +0 -54
- package/lib/esm/node_modules/langium/lib/parser/lexer.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/parser-builder-base.js +0 -278
- package/lib/esm/node_modules/langium/lib/parser/parser-builder-base.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/token-builder.js +0 -65
- package/lib/esm/node_modules/langium/lib/parser/token-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/parser/value-converter.js +0 -82
- package/lib/esm/node_modules/langium/lib/parser/value-converter.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/linker.js +0 -195
- package/lib/esm/node_modules/langium/lib/references/linker.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/name-provider.js +0 -17
- package/lib/esm/node_modules/langium/lib/references/name-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/references.js +0 -80
- package/lib/esm/node_modules/langium/lib/references/references.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/scope-computation.js +0 -39
- package/lib/esm/node_modules/langium/lib/references/scope-computation.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/scope-provider.js +0 -38
- package/lib/esm/node_modules/langium/lib/references/scope-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/references/scope.js +0 -46
- package/lib/esm/node_modules/langium/lib/references/scope.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/serializer/hydrator.js +0 -129
- package/lib/esm/node_modules/langium/lib/serializer/hydrator.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/serializer/json-serializer.js +0 -149
- package/lib/esm/node_modules/langium/lib/serializer/json-serializer.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/service-registry.js +0 -41
- package/lib/esm/node_modules/langium/lib/service-registry.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/syntax-tree.js +0 -74
- package/lib/esm/node_modules/langium/lib/syntax-tree.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/ast-utils.js +0 -124
- package/lib/esm/node_modules/langium/lib/utils/ast-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/caching.js +0 -84
- package/lib/esm/node_modules/langium/lib/utils/caching.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/cancellation.js +0 -9
- package/lib/esm/node_modules/langium/lib/utils/cancellation.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/collections.js +0 -89
- package/lib/esm/node_modules/langium/lib/utils/collections.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/cst-utils.js +0 -77
- package/lib/esm/node_modules/langium/lib/utils/cst-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/disposable.js +0 -12
- package/lib/esm/node_modules/langium/lib/utils/disposable.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/errors.js +0 -13
- package/lib/esm/node_modules/langium/lib/utils/errors.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/event.js +0 -9
- package/lib/esm/node_modules/langium/lib/utils/event.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/grammar-loader.js +0 -26
- package/lib/esm/node_modules/langium/lib/utils/grammar-loader.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/grammar-utils.js +0 -221
- package/lib/esm/node_modules/langium/lib/utils/grammar-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/promise-utils.js +0 -31
- package/lib/esm/node_modules/langium/lib/utils/promise-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/regexp-utils.js +0 -146
- package/lib/esm/node_modules/langium/lib/utils/regexp-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/stream.js +0 -331
- package/lib/esm/node_modules/langium/lib/utils/stream.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/utils/uri-utils.js +0 -111
- package/lib/esm/node_modules/langium/lib/utils/uri-utils.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/validation/document-validator.js +0 -213
- package/lib/esm/node_modules/langium/lib/validation/document-validator.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/validation/validation-registry.js +0 -90
- package/lib/esm/node_modules/langium/lib/validation/validation-registry.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/ast-descriptions.js +0 -61
- package/lib/esm/node_modules/langium/lib/workspace/ast-descriptions.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/ast-node-locator.js +0 -32
- package/lib/esm/node_modules/langium/lib/workspace/ast-node-locator.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/configuration.js +0 -55
- package/lib/esm/node_modules/langium/lib/workspace/configuration.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/document-builder.js +0 -200
- package/lib/esm/node_modules/langium/lib/workspace/document-builder.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/documents.js +0 -146
- package/lib/esm/node_modules/langium/lib/workspace/documents.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/file-system-provider.js +0 -37
- package/lib/esm/node_modules/langium/lib/workspace/file-system-provider.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/index-manager.js +0 -53
- package/lib/esm/node_modules/langium/lib/workspace/index-manager.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/workspace-lock.js +0 -46
- package/lib/esm/node_modules/langium/lib/workspace/workspace-lock.js.map +0 -1
- package/lib/esm/node_modules/langium/lib/workspace/workspace-manager.js +0 -70
- package/lib/esm/node_modules/langium/lib/workspace/workspace-manager.js.map +0 -1
- package/lib/esm/node_modules/lodash-es/flatMap.js +0 -10
- package/lib/esm/node_modules/lodash-es/flatMap.js.map +0 -1
- package/lib/esm/node_modules/lodash-es/uniqBy.js +0 -10
- package/lib/esm/node_modules/lodash-es/uniqBy.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/browser.js +0 -11
- package/lib/esm/node_modules/vscode-jsonrpc/browser.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/browser/main.js +0 -56
- package/lib/esm/node_modules/vscode-jsonrpc/lib/browser/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/browser/ril.js +0 -124
- package/lib/esm/node_modules/vscode-jsonrpc/lib/browser/ril.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/api.js +0 -341
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/api.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/cancellation.js +0 -61
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/cancellation.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/connection.js +0 -651
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/connection.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/disposable.js +0 -17
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/disposable.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/events.js +0 -68
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/events.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/is.js +0 -38
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/is.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +0 -239
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/linkedMap.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +0 -97
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messageReader.js +0 -133
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messageReader.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +0 -89
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messageWriter.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messages.js +0 -165
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/messages.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/ral.js +0 -22
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/ral.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/semaphore.js +0 -48
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/semaphore.js.map +0 -1
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +0 -62
- package/lib/esm/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/browser/main.js +0 -32
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/browser/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/api.js +0 -40
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/api.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/connection.js +0 -16
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/connection.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/messages.js +0 -35
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/messages.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +0 -37
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +0 -39
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +0 -678
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +0 -130
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +0 -28
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +0 -35
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +0 -15
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +0 -23
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +0 -19
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +0 -46
- package/lib/esm/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-textdocument/lib/esm/main.js +0 -142
- package/lib/esm/node_modules/vscode-languageserver-textdocument/lib/esm/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-languageserver-types/lib/esm/main.js +0 -1088
- package/lib/esm/node_modules/vscode-languageserver-types/lib/esm/main.js.map +0 -1
- package/lib/esm/node_modules/vscode-uri/lib/esm/index.js +0 -377
- package/lib/esm/node_modules/vscode-uri/lib/esm/index.js.map +0 -1
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
import { isAstNode as e, isAstNodeDescription as t, isLinkingError as n } from "../syntax-tree.js";
|
|
2
|
-
import { findRootNode as r, streamAst as i, streamReferences as a } from "../utils/ast-utils.js";
|
|
3
|
-
import { cancellation_exports as o } from "../utils/cancellation.js";
|
|
4
|
-
import { interruptAndCheck as s } from "../utils/promise-utils.js";
|
|
5
|
-
import { DocumentState as c } from "../workspace/documents.js";
|
|
6
|
-
//#region ../../node_modules/langium/lib/references/linker.js
|
|
7
|
-
var l = Symbol("RefResolving"), u = class {
|
|
8
|
-
constructor(e) {
|
|
9
|
-
this.reflection = e.shared.AstReflection, this.langiumDocuments = () => e.shared.workspace.LangiumDocuments, this.scopeProvider = e.references.ScopeProvider, this.astNodeLocator = e.workspace.AstNodeLocator, this.profiler = e.shared.profilers.LangiumProfiler, this.languageId = e.LanguageMetaData.languageId;
|
|
10
|
-
}
|
|
11
|
-
async link(e, t = o.CancellationToken.None) {
|
|
12
|
-
if (this.profiler?.isActive("linking")) {
|
|
13
|
-
let n = this.profiler.createTask("linking", this.languageId);
|
|
14
|
-
n.start();
|
|
15
|
-
try {
|
|
16
|
-
for (let r of i(e.parseResult.value)) await s(t), a(r).forEach((t) => {
|
|
17
|
-
let i = `${r.$type}:${t.property}`;
|
|
18
|
-
n.startSubTask(i);
|
|
19
|
-
try {
|
|
20
|
-
this.doLink(t, e);
|
|
21
|
-
} finally {
|
|
22
|
-
n.stopSubTask(i);
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
} finally {
|
|
26
|
-
n.stop();
|
|
27
|
-
}
|
|
28
|
-
} else for (let n of i(e.parseResult.value)) await s(t), a(n).forEach((t) => this.doLink(t, e));
|
|
29
|
-
}
|
|
30
|
-
doLink(e, t) {
|
|
31
|
-
let r = e.reference;
|
|
32
|
-
if ("_ref" in r && r._ref === void 0) {
|
|
33
|
-
r._ref = l;
|
|
34
|
-
try {
|
|
35
|
-
let t = this.getCandidate(e);
|
|
36
|
-
n(t) ? r._ref = t : (r._nodeDescription = t, r._ref = this.loadAstNode(t) ?? this.createLinkingError(e, t));
|
|
37
|
-
} catch (t) {
|
|
38
|
-
console.error(`An error occurred while resolving reference to '${r.$refText}':`, t);
|
|
39
|
-
let n = t.message ?? String(t);
|
|
40
|
-
r._ref = {
|
|
41
|
-
info: e,
|
|
42
|
-
message: `An error occurred while resolving reference to '${r.$refText}': ${n}`
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
t.references.push(r);
|
|
46
|
-
} else if ("_items" in r && r._items === void 0) {
|
|
47
|
-
r._items = l;
|
|
48
|
-
try {
|
|
49
|
-
let t = this.getCandidates(e), i = [];
|
|
50
|
-
if (n(t)) r._linkingError = t;
|
|
51
|
-
else for (let e of t) {
|
|
52
|
-
let t = this.loadAstNode(e);
|
|
53
|
-
t && i.push({
|
|
54
|
-
ref: t,
|
|
55
|
-
$nodeDescription: e
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
r._items = i;
|
|
59
|
-
} catch (t) {
|
|
60
|
-
r._linkingError = {
|
|
61
|
-
info: e,
|
|
62
|
-
message: `An error occurred while resolving reference to '${r.$refText}': ${t}`
|
|
63
|
-
}, r._items = [];
|
|
64
|
-
}
|
|
65
|
-
t.references.push(r);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
unlink(e) {
|
|
69
|
-
for (let t of e.references) "_ref" in t ? (t._ref = void 0, delete t._nodeDescription) : "_items" in t && (t._items = void 0, delete t._linkingError);
|
|
70
|
-
e.references = [];
|
|
71
|
-
}
|
|
72
|
-
getCandidate(e) {
|
|
73
|
-
return this.scopeProvider.getScope(e).getElement(e.reference.$refText) ?? this.createLinkingError(e);
|
|
74
|
-
}
|
|
75
|
-
getCandidates(e) {
|
|
76
|
-
let t = this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct((e) => `${e.documentUri}#${e.path}`).toArray();
|
|
77
|
-
return t.length > 0 ? t : this.createLinkingError(e);
|
|
78
|
-
}
|
|
79
|
-
buildReference(i, a, o, s) {
|
|
80
|
-
let u = this, d = {
|
|
81
|
-
$refNode: o,
|
|
82
|
-
$refText: s,
|
|
83
|
-
_ref: void 0,
|
|
84
|
-
get ref() {
|
|
85
|
-
if (e(this._ref)) return this._ref;
|
|
86
|
-
if (t(this._nodeDescription)) {
|
|
87
|
-
let e = u.loadAstNode(this._nodeDescription);
|
|
88
|
-
this._ref = e ?? u.createLinkingError({
|
|
89
|
-
reference: d,
|
|
90
|
-
container: i,
|
|
91
|
-
property: a
|
|
92
|
-
}, this._nodeDescription);
|
|
93
|
-
} else if (this._ref === void 0) {
|
|
94
|
-
this._ref = l;
|
|
95
|
-
let e = r(i).$document, t = u.getLinkedNode({
|
|
96
|
-
reference: d,
|
|
97
|
-
container: i,
|
|
98
|
-
property: a
|
|
99
|
-
});
|
|
100
|
-
if (t.error && e && e.state < c.ComputedScopes) {
|
|
101
|
-
this._ref = void 0;
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
this._ref = t.node ?? t.error, this._nodeDescription = t.descr, e?.references.push(this);
|
|
105
|
-
} else this._ref === l && u.throwCyclicReferenceError(i, a, s);
|
|
106
|
-
return e(this._ref) ? this._ref : void 0;
|
|
107
|
-
},
|
|
108
|
-
get $nodeDescription() {
|
|
109
|
-
return this._nodeDescription;
|
|
110
|
-
},
|
|
111
|
-
get error() {
|
|
112
|
-
return n(this._ref) ? this._ref : void 0;
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
return d;
|
|
116
|
-
}
|
|
117
|
-
buildMultiReference(e, t, i, a) {
|
|
118
|
-
let o = this, s = {
|
|
119
|
-
$refNode: i,
|
|
120
|
-
$refText: a,
|
|
121
|
-
_items: void 0,
|
|
122
|
-
get items() {
|
|
123
|
-
if (Array.isArray(this._items)) return this._items;
|
|
124
|
-
if (this._items === void 0) {
|
|
125
|
-
this._items = l;
|
|
126
|
-
let i = r(e).$document, a = o.getCandidates({
|
|
127
|
-
reference: s,
|
|
128
|
-
container: e,
|
|
129
|
-
property: t
|
|
130
|
-
}), c = [];
|
|
131
|
-
if (n(a)) this._linkingError = a;
|
|
132
|
-
else for (let e of a) {
|
|
133
|
-
let t = o.loadAstNode(e);
|
|
134
|
-
t && c.push({
|
|
135
|
-
ref: t,
|
|
136
|
-
$nodeDescription: e
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
this._items = c, i?.references.push(this);
|
|
140
|
-
} else this._items === l && o.throwCyclicReferenceError(e, t, a);
|
|
141
|
-
return Array.isArray(this._items) ? this._items : [];
|
|
142
|
-
},
|
|
143
|
-
get error() {
|
|
144
|
-
if (this._linkingError) return this._linkingError;
|
|
145
|
-
if (!(this.items.length > 0)) return this._linkingError = o.createLinkingError({
|
|
146
|
-
reference: s,
|
|
147
|
-
container: e,
|
|
148
|
-
property: t
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
};
|
|
152
|
-
return s;
|
|
153
|
-
}
|
|
154
|
-
throwCyclicReferenceError(e, t, n) {
|
|
155
|
-
throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${n}')`);
|
|
156
|
-
}
|
|
157
|
-
getLinkedNode(e) {
|
|
158
|
-
try {
|
|
159
|
-
let t = this.getCandidate(e);
|
|
160
|
-
if (n(t)) return { error: t };
|
|
161
|
-
let r = this.loadAstNode(t);
|
|
162
|
-
return r ? {
|
|
163
|
-
node: r,
|
|
164
|
-
descr: t
|
|
165
|
-
} : {
|
|
166
|
-
descr: t,
|
|
167
|
-
error: this.createLinkingError(e, t)
|
|
168
|
-
};
|
|
169
|
-
} catch (t) {
|
|
170
|
-
console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`, t);
|
|
171
|
-
let n = t.message ?? String(t);
|
|
172
|
-
return { error: {
|
|
173
|
-
info: e,
|
|
174
|
-
message: `An error occurred while resolving reference to '${e.reference.$refText}': ${n}`
|
|
175
|
-
} };
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
loadAstNode(e) {
|
|
179
|
-
if (e.node) return e.node;
|
|
180
|
-
let t = this.langiumDocuments().getDocument(e.documentUri);
|
|
181
|
-
if (t) return this.astNodeLocator.getAstNode(t.parseResult.value, e.path);
|
|
182
|
-
}
|
|
183
|
-
createLinkingError(e, t) {
|
|
184
|
-
let n = r(e.container).$document;
|
|
185
|
-
return n && n.state < c.ComputedScopes && console.warn(`Attempted reference resolution before document reached ComputedScopes state (${n.uri}).`), {
|
|
186
|
-
info: e,
|
|
187
|
-
message: `Could not resolve reference to ${this.reflection.getReferenceType(e)} named '${e.reference.$refText}'.`,
|
|
188
|
-
targetDescription: t
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
};
|
|
192
|
-
//#endregion
|
|
193
|
-
export { u as DefaultLinker };
|
|
194
|
-
|
|
195
|
-
//# sourceMappingURL=linker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"linker.js","names":["CancellationToken"],"sources":["../../../../../../../../node_modules/langium/lib/references/linker.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 { isAstNode, isAstNodeDescription, isLinkingError } from '../syntax-tree.js';\nimport { findRootNode, streamAst, streamReferences } from '../utils/ast-utils.js';\nimport { interruptAndCheck } from '../utils/promise-utils.js';\nimport { DocumentState } from '../workspace/documents.js';\nexport const RefResolving = Symbol('RefResolving');\nexport class DefaultLinker {\n constructor(services) {\n this.reflection = services.shared.AstReflection;\n this.langiumDocuments = () => services.shared.workspace.LangiumDocuments;\n this.scopeProvider = services.references.ScopeProvider;\n this.astNodeLocator = services.workspace.AstNodeLocator;\n this.profiler = services.shared.profilers.LangiumProfiler;\n this.languageId = services.LanguageMetaData.languageId;\n }\n async link(document, cancelToken = CancellationToken.None) {\n if (this.profiler?.isActive('linking')) {\n const task = this.profiler.createTask('linking', this.languageId);\n task.start();\n try {\n for (const node of streamAst(document.parseResult.value)) {\n await interruptAndCheck(cancelToken);\n streamReferences(node).forEach(ref => {\n const name = `${node.$type}:${ref.property}`;\n task.startSubTask(name);\n try {\n this.doLink(ref, document);\n }\n finally {\n task.stopSubTask(name);\n }\n });\n }\n }\n finally {\n task.stop();\n }\n }\n else {\n for (const node of streamAst(document.parseResult.value)) {\n await interruptAndCheck(cancelToken);\n streamReferences(node).forEach(ref => this.doLink(ref, document));\n }\n }\n }\n doLink(refInfo, document) {\n const ref = refInfo.reference;\n // The reference may already have been resolved lazily by accessing its `ref` property.\n if ('_ref' in ref && ref._ref === undefined) {\n ref._ref = RefResolving;\n try {\n const description = this.getCandidate(refInfo);\n if (isLinkingError(description)) {\n ref._ref = description;\n }\n else {\n ref._nodeDescription = description;\n const linkedNode = this.loadAstNode(description);\n ref._ref = linkedNode ?? this.createLinkingError(refInfo, description);\n }\n }\n catch (err) {\n console.error(`An error occurred while resolving reference to '${ref.$refText}':`, err);\n const errorMessage = err.message ?? String(err);\n ref._ref = {\n info: refInfo,\n message: `An error occurred while resolving reference to '${ref.$refText}': ${errorMessage}`\n };\n }\n document.references.push(ref);\n }\n else if ('_items' in ref && ref._items === undefined) {\n ref._items = RefResolving;\n try {\n const descriptions = this.getCandidates(refInfo);\n const items = [];\n if (isLinkingError(descriptions)) {\n ref._linkingError = descriptions;\n }\n else {\n for (const description of descriptions) {\n const linkedNode = this.loadAstNode(description);\n if (linkedNode) {\n items.push({ ref: linkedNode, $nodeDescription: description });\n }\n }\n }\n ref._items = items;\n }\n catch (err) {\n ref._linkingError = {\n info: refInfo,\n message: `An error occurred while resolving reference to '${ref.$refText}': ${err}`\n };\n ref._items = [];\n }\n document.references.push(ref);\n }\n }\n unlink(document) {\n for (const ref of document.references) {\n if ('_ref' in ref) {\n ref._ref = undefined;\n delete ref._nodeDescription;\n }\n else if ('_items' in ref) {\n ref._items = undefined;\n delete ref._linkingError;\n }\n }\n document.references = [];\n }\n getCandidate(refInfo) {\n const scope = this.scopeProvider.getScope(refInfo);\n const description = scope.getElement(refInfo.reference.$refText);\n return description ?? this.createLinkingError(refInfo);\n }\n getCandidates(refInfo) {\n const scope = this.scopeProvider.getScope(refInfo);\n const descriptions = scope.getElements(refInfo.reference.$refText).distinct(desc => `${desc.documentUri}#${desc.path}`).toArray();\n return descriptions.length > 0 ? descriptions : this.createLinkingError(refInfo);\n }\n buildReference(node, property, refNode, refText) {\n // See behavior description in doc of Linker, update that on changes in here.\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const linker = this;\n const reference = {\n $refNode: refNode,\n $refText: refText,\n _ref: undefined,\n get ref() {\n if (isAstNode(this._ref)) {\n // Most frequent case: the target is already resolved.\n return this._ref;\n }\n else if (isAstNodeDescription(this._nodeDescription)) {\n // A candidate has been found before, but it is not loaded yet.\n const linkedNode = linker.loadAstNode(this._nodeDescription);\n this._ref = linkedNode ??\n linker.createLinkingError({ reference, container: node, property }, this._nodeDescription);\n }\n else if (this._ref === undefined) {\n // The reference has not been linked yet, so do that now.\n this._ref = RefResolving;\n const document = findRootNode(node).$document;\n const refData = linker.getLinkedNode({ reference, container: node, property });\n if (refData.error && document && document.state < DocumentState.ComputedScopes) {\n // Document scope is not ready, don't set `this._ref` so linker can retry later.\n return this._ref = undefined;\n }\n this._ref = refData.node ?? refData.error;\n this._nodeDescription = refData.descr;\n document?.references.push(this);\n }\n else if (this._ref === RefResolving) {\n linker.throwCyclicReferenceError(node, property, refText);\n }\n return isAstNode(this._ref) ? this._ref : undefined;\n },\n get $nodeDescription() {\n return this._nodeDescription;\n },\n get error() {\n return isLinkingError(this._ref) ? this._ref : undefined;\n }\n };\n return reference;\n }\n buildMultiReference(node, property, refNode, refText) {\n // See behavior description in doc of Linker, update that on changes in here.\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const linker = this;\n const reference = {\n $refNode: refNode,\n $refText: refText,\n _items: undefined,\n get items() {\n if (Array.isArray(this._items)) {\n return this._items;\n }\n else if (this._items === undefined) {\n this._items = RefResolving;\n const document = findRootNode(node).$document;\n const descriptions = linker.getCandidates({\n reference,\n container: node,\n property\n });\n const items = [];\n if (isLinkingError(descriptions)) {\n this._linkingError = descriptions;\n }\n else {\n for (const description of descriptions) {\n const linkedNode = linker.loadAstNode(description);\n if (linkedNode) {\n items.push({ ref: linkedNode, $nodeDescription: description });\n }\n }\n }\n this._items = items;\n document?.references.push(this);\n }\n else if (this._items === RefResolving) {\n linker.throwCyclicReferenceError(node, property, refText);\n }\n return Array.isArray(this._items) ? this._items : [];\n },\n get error() {\n if (this._linkingError) {\n return this._linkingError;\n }\n const refs = this.items;\n if (refs.length > 0) {\n return undefined;\n }\n else {\n return (this._linkingError = linker.createLinkingError({ reference, container: node, property }));\n }\n }\n };\n return reference;\n }\n throwCyclicReferenceError(node, property, refText) {\n throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(node)}/${property} (symbol '${refText}')`);\n }\n getLinkedNode(refInfo) {\n try {\n const description = this.getCandidate(refInfo);\n if (isLinkingError(description)) {\n return { error: description };\n }\n const linkedNode = this.loadAstNode(description);\n if (linkedNode) {\n return { node: linkedNode, descr: description };\n }\n else {\n return {\n descr: description,\n error: this.createLinkingError(refInfo, description)\n };\n }\n }\n catch (err) {\n console.error(`An error occurred while resolving reference to '${refInfo.reference.$refText}':`, err);\n const errorMessage = err.message ?? String(err);\n return {\n error: {\n info: refInfo,\n message: `An error occurred while resolving reference to '${refInfo.reference.$refText}': ${errorMessage}`\n }\n };\n }\n }\n loadAstNode(nodeDescription) {\n if (nodeDescription.node) {\n return nodeDescription.node;\n }\n const doc = this.langiumDocuments().getDocument(nodeDescription.documentUri);\n if (!doc) {\n return undefined;\n }\n return this.astNodeLocator.getAstNode(doc.parseResult.value, nodeDescription.path);\n }\n createLinkingError(refInfo, targetDescription) {\n // Check whether the document is sufficiently processed by the DocumentBuilder. If not, this is a hint for a bug\n // in the language implementation.\n const document = findRootNode(refInfo.container).$document;\n if (document && document.state < DocumentState.ComputedScopes) {\n console.warn(`Attempted reference resolution before document reached ComputedScopes state (${document.uri}).`);\n }\n const referenceType = this.reflection.getReferenceType(refInfo);\n return {\n info: refInfo,\n message: `Could not resolve reference to ${referenceType} named '${refInfo.reference.$refText}'.`,\n targetDescription\n };\n }\n}\n//# sourceMappingURL=linker.js.map"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { findNodeForProperty as e } from "../utils/grammar-utils.js";
|
|
2
|
-
//#region ../../node_modules/langium/lib/references/name-provider.js
|
|
3
|
-
function t(e) {
|
|
4
|
-
return typeof e.name == "string";
|
|
5
|
-
}
|
|
6
|
-
var n = class {
|
|
7
|
-
getName(e) {
|
|
8
|
-
if (t(e)) return e.name;
|
|
9
|
-
}
|
|
10
|
-
getNameNode(t) {
|
|
11
|
-
return e(t.$cstNode, "name");
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
//#endregion
|
|
15
|
-
export { n as DefaultNameProvider };
|
|
16
|
-
|
|
17
|
-
//# sourceMappingURL=name-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"name-provider.js","names":[],"sources":["../../../../../../../../node_modules/langium/lib/references/name-provider.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 { findNodeForProperty } from '../utils/grammar-utils.js';\nexport function isNamed(node) {\n return typeof node.name === 'string';\n}\nexport class DefaultNameProvider {\n getName(node) {\n if (isNamed(node)) {\n return node.name;\n }\n return undefined;\n }\n getNameNode(node) {\n return findNodeForProperty(node.$cstNode, 'name');\n }\n}\n//# sourceMappingURL=name-provider.js.map"],"x_google_ignoreList":[0],"mappings":";;AAMA,SAAgB,EAAQ,GAAM;CAC1B,OAAO,OAAO,EAAK,QAAS;;AAEhC,IAAa,IAAb,MAAiC;CAC7B,QAAQ,GAAM;EACV,IAAI,EAAQ,EAAK,EACb,OAAO,EAAK;;CAIpB,YAAY,GAAM;EACd,OAAO,EAAoB,EAAK,UAAU,OAAO"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { isMultiReference as e, isReference as t } from "../syntax-tree.js";
|
|
2
|
-
import { stream as n } from "../utils/stream.js";
|
|
3
|
-
import { getDocument as r, getReferenceNodes as i, streamAst as a, streamReferences as o } from "../utils/ast-utils.js";
|
|
4
|
-
import { isCrossReference as s } from "../languages/generated/ast.js";
|
|
5
|
-
import { isChildNode as c, toDocumentSegment as l } from "../utils/cst-utils.js";
|
|
6
|
-
import { findAssignment as u } from "../utils/grammar-utils.js";
|
|
7
|
-
import { UriUtils as d } from "../utils/uri-utils.js";
|
|
8
|
-
//#region ../../node_modules/langium/lib/references/references.js
|
|
9
|
-
var f = class {
|
|
10
|
-
constructor(e) {
|
|
11
|
-
this.nameProvider = e.references.NameProvider, this.index = e.shared.workspace.IndexManager, this.nodeLocator = e.workspace.AstNodeLocator, this.documents = e.shared.workspace.LangiumDocuments, this.hasMultiReference = a(e.Grammar).some((e) => s(e) && e.isMulti);
|
|
12
|
-
}
|
|
13
|
-
findDeclarations(n) {
|
|
14
|
-
if (n) {
|
|
15
|
-
let r = u(n), a = n.astNode;
|
|
16
|
-
if (r && a) {
|
|
17
|
-
let o = a[r.feature];
|
|
18
|
-
if (t(o) || e(o)) return i(o);
|
|
19
|
-
if (Array.isArray(o)) {
|
|
20
|
-
for (let r of o) if ((t(r) || e(r)) && r.$refNode && r.$refNode.offset <= n.offset && r.$refNode.end >= n.end) return i(r);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
if (a) {
|
|
24
|
-
let e = this.nameProvider.getNameNode(a);
|
|
25
|
-
if (e && (e === n || c(n, e))) return this.getSelfNodes(a);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return [];
|
|
29
|
-
}
|
|
30
|
-
getSelfNodes(t) {
|
|
31
|
-
if (this.hasMultiReference) {
|
|
32
|
-
let n = this.index.findAllReferences(t, this.nodeLocator.getAstNodePath(t)), r = this.getNodeFromReferenceDescription(n.head());
|
|
33
|
-
if (r) {
|
|
34
|
-
for (let n of o(r)) if (e(n.reference) && n.reference.items.some((e) => e.ref === t)) return n.reference.items.map((e) => e.ref);
|
|
35
|
-
}
|
|
36
|
-
return [t];
|
|
37
|
-
} else return [t];
|
|
38
|
-
}
|
|
39
|
-
getNodeFromReferenceDescription(e) {
|
|
40
|
-
if (!e) return;
|
|
41
|
-
let t = this.documents.getDocument(e.sourceUri);
|
|
42
|
-
if (t) return this.nodeLocator.getAstNode(t.parseResult.value, e.sourcePath);
|
|
43
|
-
}
|
|
44
|
-
findDeclarationNodes(e) {
|
|
45
|
-
let t = this.findDeclarations(e), n = [];
|
|
46
|
-
for (let e of t) {
|
|
47
|
-
let t = this.nameProvider.getNameNode(e) ?? e.$cstNode;
|
|
48
|
-
t && n.push(t);
|
|
49
|
-
}
|
|
50
|
-
return n;
|
|
51
|
-
}
|
|
52
|
-
findReferences(e, t) {
|
|
53
|
-
let r = [];
|
|
54
|
-
t.includeDeclaration && r.push(...this.getSelfReferences(e));
|
|
55
|
-
let i = this.index.findAllReferences(e, this.nodeLocator.getAstNodePath(e));
|
|
56
|
-
return t.documentUri && (i = i.filter((e) => d.equals(e.sourceUri, t.documentUri))), r.push(...i), n(r);
|
|
57
|
-
}
|
|
58
|
-
getSelfReferences(e) {
|
|
59
|
-
let t = this.getSelfNodes(e), n = [];
|
|
60
|
-
for (let e of t) {
|
|
61
|
-
let t = this.nameProvider.getNameNode(e);
|
|
62
|
-
if (t) {
|
|
63
|
-
let i = r(e), a = this.nodeLocator.getAstNodePath(e);
|
|
64
|
-
n.push({
|
|
65
|
-
sourceUri: i.uri,
|
|
66
|
-
sourcePath: a,
|
|
67
|
-
targetUri: i.uri,
|
|
68
|
-
targetPath: a,
|
|
69
|
-
segment: l(t),
|
|
70
|
-
local: !0
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return n;
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
//#endregion
|
|
78
|
-
export { f as DefaultReferences };
|
|
79
|
-
|
|
80
|
-
//# sourceMappingURL=references.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"references.js","names":[],"sources":["../../../../../../../../node_modules/langium/lib/references/references.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 { findAssignment } from '../utils/grammar-utils.js';\nimport { isMultiReference, isReference } from '../syntax-tree.js';\nimport { getDocument, getReferenceNodes, streamAst, streamReferences } from '../utils/ast-utils.js';\nimport { isChildNode, toDocumentSegment } from '../utils/cst-utils.js';\nimport { stream } from '../utils/stream.js';\nimport { UriUtils } from '../utils/uri-utils.js';\nimport { isCrossReference } from '../languages/generated/ast.js';\nexport class DefaultReferences {\n constructor(services) {\n this.nameProvider = services.references.NameProvider;\n this.index = services.shared.workspace.IndexManager;\n this.nodeLocator = services.workspace.AstNodeLocator;\n this.documents = services.shared.workspace.LangiumDocuments;\n this.hasMultiReference = streamAst(services.Grammar).some(node => isCrossReference(node) && node.isMulti);\n }\n findDeclarations(sourceCstNode) {\n if (sourceCstNode) {\n const assignment = findAssignment(sourceCstNode);\n const nodeElem = sourceCstNode.astNode;\n if (assignment && nodeElem) {\n const reference = nodeElem[assignment.feature];\n if (isReference(reference) || isMultiReference(reference)) {\n return getReferenceNodes(reference);\n }\n else if (Array.isArray(reference)) {\n for (const ref of reference) {\n if ((isReference(ref) || isMultiReference(ref)) && ref.$refNode\n && ref.$refNode.offset <= sourceCstNode.offset\n && ref.$refNode.end >= sourceCstNode.end) {\n return getReferenceNodes(ref);\n }\n }\n }\n }\n if (nodeElem) {\n const nameNode = this.nameProvider.getNameNode(nodeElem);\n // Only return the targeted node in case the targeted cst node is the name node or part of it\n if (nameNode && (nameNode === sourceCstNode || isChildNode(sourceCstNode, nameNode))) {\n return this.getSelfNodes(nodeElem);\n }\n }\n }\n return [];\n }\n /**\n * Returns all self-references for the specified node.\n * Since the node can be part of a multi-reference, this method returns all nodes that are part of the same multi-reference.\n */\n getSelfNodes(node) {\n if (!this.hasMultiReference) {\n return [node];\n }\n else {\n // In order to find all nodes that are part of the same multi-reference,\n // we need to find a reference that points to the node.\n // It will also point to the logical siblings of the node.\n const references = this.index.findAllReferences(node, this.nodeLocator.getAstNodePath(node));\n // We can simply use the first reference to find all logical siblings.\n // Looking through all references is not necessary and very inefficient.\n const headNode = this.getNodeFromReferenceDescription(references.head());\n if (headNode) {\n // We need to iterate over all references to find the one that points to the node.\n for (const ref of streamReferences(headNode)) {\n if (isMultiReference(ref.reference) && ref.reference.items.some(item => item.ref === node)) {\n // Once we found the reference, simply return all items of the multi-reference.\n return ref.reference.items.map(item => item.ref);\n }\n }\n }\n return [node];\n }\n }\n getNodeFromReferenceDescription(ref) {\n if (!ref) {\n return undefined;\n }\n const doc = this.documents.getDocument(ref.sourceUri);\n if (doc) {\n return this.nodeLocator.getAstNode(doc.parseResult.value, ref.sourcePath);\n }\n return undefined;\n }\n findDeclarationNodes(sourceCstNode) {\n const astNodes = this.findDeclarations(sourceCstNode);\n const cstNodes = [];\n for (const astNode of astNodes) {\n const cstNode = this.nameProvider.getNameNode(astNode) ?? astNode.$cstNode;\n if (cstNode) {\n cstNodes.push(cstNode);\n }\n }\n return cstNodes;\n }\n findReferences(targetNode, options) {\n const refs = [];\n if (options.includeDeclaration) {\n refs.push(...this.getSelfReferences(targetNode));\n }\n let indexReferences = this.index.findAllReferences(targetNode, this.nodeLocator.getAstNodePath(targetNode));\n if (options.documentUri) {\n indexReferences = indexReferences.filter(ref => UriUtils.equals(ref.sourceUri, options.documentUri));\n }\n refs.push(...indexReferences);\n return stream(refs);\n }\n getSelfReferences(targetNode) {\n const selfNodes = this.getSelfNodes(targetNode);\n const references = [];\n for (const selfNode of selfNodes) {\n const nameNode = this.nameProvider.getNameNode(selfNode);\n if (nameNode) {\n const doc = getDocument(selfNode);\n const path = this.nodeLocator.getAstNodePath(selfNode);\n references.push({\n sourceUri: doc.uri,\n sourcePath: path,\n targetUri: doc.uri,\n targetPath: path,\n segment: toDocumentSegment(nameNode),\n local: true\n });\n }\n }\n return references;\n }\n}\n//# sourceMappingURL=references.js.map"],"x_google_ignoreList":[0],"mappings":";;;;;;;;AAYA,IAAa,IAAb,MAA+B;CAC3B,YAAY,GAAU;EAKlB,AAJA,KAAK,eAAe,EAAS,WAAW,cACxC,KAAK,QAAQ,EAAS,OAAO,UAAU,cACvC,KAAK,cAAc,EAAS,UAAU,gBACtC,KAAK,YAAY,EAAS,OAAO,UAAU,kBAC3C,KAAK,oBAAoB,EAAU,EAAS,QAAQ,CAAC,MAAK,MAAQ,EAAiB,EAAK,IAAI,EAAK,QAAQ;;CAE7G,iBAAiB,GAAe;EAC5B,IAAI,GAAe;GACf,IAAM,IAAa,EAAe,EAAc,EAC1C,IAAW,EAAc;GAC/B,IAAI,KAAc,GAAU;IACxB,IAAM,IAAY,EAAS,EAAW;IACtC,IAAI,EAAY,EAAU,IAAI,EAAiB,EAAU,EACrD,OAAO,EAAkB,EAAU;IAElC,IAAI,MAAM,QAAQ,EAAU;UACxB,IAAM,KAAO,GACd,KAAK,EAAY,EAAI,IAAI,EAAiB,EAAI,KAAK,EAAI,YAChD,EAAI,SAAS,UAAU,EAAc,UACrC,EAAI,SAAS,OAAO,EAAc,KACrC,OAAO,EAAkB,EAAI;;;GAK7C,IAAI,GAAU;IACV,IAAM,IAAW,KAAK,aAAa,YAAY,EAAS;IAExD,IAAI,MAAa,MAAa,KAAiB,EAAY,GAAe,EAAS,GAC/E,OAAO,KAAK,aAAa,EAAS;;;EAI9C,OAAO,EAAE;;CAMb,aAAa,GAAM;EACf,IAAK,KAAK,mBAGL;GAID,IAAM,IAAa,KAAK,MAAM,kBAAkB,GAAM,KAAK,YAAY,eAAe,EAAK,CAAC,EAGtF,IAAW,KAAK,gCAAgC,EAAW,MAAM,CAAC;GACxE,IAAI;SAEK,IAAM,KAAO,EAAiB,EAAS,EACxC,IAAI,EAAiB,EAAI,UAAU,IAAI,EAAI,UAAU,MAAM,MAAK,MAAQ,EAAK,QAAQ,EAAK,EAEtF,OAAO,EAAI,UAAU,MAAM,KAAI,MAAQ,EAAK,IAAI;;GAI5D,OAAO,CAAC,EAAK;SAnBb,OAAO,CAAC,EAAK;;CAsBrB,gCAAgC,GAAK;EACjC,IAAI,CAAC,GACD;EAEJ,IAAM,IAAM,KAAK,UAAU,YAAY,EAAI,UAAU;EACrD,IAAI,GACA,OAAO,KAAK,YAAY,WAAW,EAAI,YAAY,OAAO,EAAI,WAAW;;CAIjF,qBAAqB,GAAe;EAChC,IAAM,IAAW,KAAK,iBAAiB,EAAc,EAC/C,IAAW,EAAE;EACnB,KAAK,IAAM,KAAW,GAAU;GAC5B,IAAM,IAAU,KAAK,aAAa,YAAY,EAAQ,IAAI,EAAQ;GAClE,AAAI,KACA,EAAS,KAAK,EAAQ;;EAG9B,OAAO;;CAEX,eAAe,GAAY,GAAS;EAChC,IAAM,IAAO,EAAE;EACf,AAAI,EAAQ,sBACR,EAAK,KAAK,GAAG,KAAK,kBAAkB,EAAW,CAAC;EAEpD,IAAI,IAAkB,KAAK,MAAM,kBAAkB,GAAY,KAAK,YAAY,eAAe,EAAW,CAAC;EAK3G,OAJI,EAAQ,gBACR,IAAkB,EAAgB,QAAO,MAAO,EAAS,OAAO,EAAI,WAAW,EAAQ,YAAY,CAAC,GAExG,EAAK,KAAK,GAAG,EAAgB,EACtB,EAAO,EAAK;;CAEvB,kBAAkB,GAAY;EAC1B,IAAM,IAAY,KAAK,aAAa,EAAW,EACzC,IAAa,EAAE;EACrB,KAAK,IAAM,KAAY,GAAW;GAC9B,IAAM,IAAW,KAAK,aAAa,YAAY,EAAS;GACxD,IAAI,GAAU;IACV,IAAM,IAAM,EAAY,EAAS,EAC3B,IAAO,KAAK,YAAY,eAAe,EAAS;IACtD,EAAW,KAAK;KACZ,WAAW,EAAI;KACf,YAAY;KACZ,WAAW,EAAI;KACf,YAAY;KACZ,SAAS,EAAkB,EAAS;KACpC,OAAO;KACV,CAAC;;;EAGV,OAAO"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { streamAllContents as e, streamContents as t } from "../utils/ast-utils.js";
|
|
2
|
-
import { cancellation_exports as n } from "../utils/cancellation.js";
|
|
3
|
-
import { interruptAndCheck as r } from "../utils/promise-utils.js";
|
|
4
|
-
import { MultiMap as i } from "../utils/collections.js";
|
|
5
|
-
//#region ../../node_modules/langium/lib/references/scope-computation.js
|
|
6
|
-
var a = class {
|
|
7
|
-
constructor(e) {
|
|
8
|
-
this.nameProvider = e.references.NameProvider, this.descriptions = e.workspace.AstNodeDescriptionProvider;
|
|
9
|
-
}
|
|
10
|
-
async collectExportedSymbols(e, t = n.CancellationToken.None) {
|
|
11
|
-
return this.collectExportedSymbolsForNode(e.parseResult.value, e, void 0, t);
|
|
12
|
-
}
|
|
13
|
-
async collectExportedSymbolsForNode(e, i, a = t, o = n.CancellationToken.None) {
|
|
14
|
-
let s = [];
|
|
15
|
-
this.addExportedSymbol(e, s, i);
|
|
16
|
-
for (let t of a(e)) await r(o), this.addExportedSymbol(t, s, i);
|
|
17
|
-
return s;
|
|
18
|
-
}
|
|
19
|
-
addExportedSymbol(e, t, n) {
|
|
20
|
-
let r = this.nameProvider.getName(e);
|
|
21
|
-
r && t.push(this.descriptions.createDescription(e, r, n));
|
|
22
|
-
}
|
|
23
|
-
async collectLocalSymbols(t, a = n.CancellationToken.None) {
|
|
24
|
-
let o = t.parseResult.value, s = new i();
|
|
25
|
-
for (let n of e(o)) await r(a), this.addLocalSymbol(n, t, s);
|
|
26
|
-
return s;
|
|
27
|
-
}
|
|
28
|
-
addLocalSymbol(e, t, n) {
|
|
29
|
-
let r = e.$container;
|
|
30
|
-
if (r) {
|
|
31
|
-
let i = this.nameProvider.getName(e);
|
|
32
|
-
i && n.add(r, this.descriptions.createDescription(e, i, t));
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
//#endregion
|
|
37
|
-
export { a as DefaultScopeComputation };
|
|
38
|
-
|
|
39
|
-
//# sourceMappingURL=scope-computation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scope-computation.js","names":["CancellationToken"],"sources":["../../../../../../../../node_modules/langium/lib/references/scope-computation.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2021-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 { streamAllContents, streamContents } from '../utils/ast-utils.js';\nimport { CancellationToken } from '../utils/cancellation.js';\nimport { MultiMap } from '../utils/collections.js';\nimport { interruptAndCheck } from '../utils/promise-utils.js';\n/**\n * The default scope computation creates and collects descriptions of the AST nodes to be exported into the\n * _global_ scope from the given document. By default those are the document's root AST node and its directly\n * contained child nodes.\n *\n * Besides, it gathers all AST nodes that have a name (according to the `NameProvider` service) and that are to be\n * included in the local scope of their particular container nodes. They are collected in a `DocumentSymbols` table.\n * As a result, for every cross-reference in the AST, target elements from the same level (siblings) and further up\n * towards the root (parents and siblings of parents) are visible.\n * Elements being nested inside lower levels (children, children of siblings and parents' siblings)\n * are _invisible_ by default, but that can be changed by customizing this service.\n */\nexport class DefaultScopeComputation {\n constructor(services) {\n this.nameProvider = services.references.NameProvider;\n this.descriptions = services.workspace.AstNodeDescriptionProvider;\n }\n async collectExportedSymbols(document, cancelToken = CancellationToken.None) {\n return this.collectExportedSymbolsForNode(document.parseResult.value, document, undefined, cancelToken);\n }\n /**\n * Creates {@link AstNodeDescription AstNodeDescriptions} for the given {@link AstNode parentNode} and its children.\n * The list of children to be considered is determined by the function parameter {@link children}.\n * By default only the direct children of {@link parentNode} are visited, nested nodes are not exported.\n *\n * @param parentNode AST node to be exported, i.e., of which an {@link AstNodeDescription} shall be added to the returned list.\n * @param document The document containing the AST node to be exported.\n * @param children A function called with {@link parentNode} as single argument and returning an {@link Iterable} supplying the children to be visited, which must be directly or transitively contained in {@link parentNode}.\n * @param cancelToken Indicates when to cancel the current operation.\n * @throws `OperationCancelled` if a user action occurs during execution.\n * @returns A list of {@link AstNodeDescription AstNodeDescriptions} to be published to index.\n */\n async collectExportedSymbolsForNode(parentNode, document, children = streamContents, cancelToken = CancellationToken.None) {\n const exports = [];\n this.addExportedSymbol(parentNode, exports, document);\n for (const node of children(parentNode)) {\n await interruptAndCheck(cancelToken);\n this.addExportedSymbol(node, exports, document);\n }\n return exports;\n }\n /**\n * Adds a single node to the list of exports if it has a name. Override this method to change how\n * symbols are exported, e.g. by modifying their exported name.\n */\n addExportedSymbol(node, exports, document) {\n const name = this.nameProvider.getName(node);\n if (name) {\n exports.push(this.descriptions.createDescription(node, name, document));\n }\n }\n // --- local symbols gathering ---\n async collectLocalSymbols(document, cancelToken = CancellationToken.None) {\n const rootNode = document.parseResult.value;\n const symbols = new MultiMap();\n // Here we navigate the full AST - local scopes shall be available in the whole document\n for (const node of streamAllContents(rootNode)) {\n await interruptAndCheck(cancelToken);\n this.addLocalSymbol(node, document, symbols);\n }\n return symbols;\n }\n /**\n * Adds a single node to the local symbols of its containing document if it has a name.\n * The default implementation makes the node visible in the subtree of its container if it does have a container.\n * Override this method to change this, e.g. by increasing the visibility to a higher level in the AST.\n */\n addLocalSymbol(node, document, symbols) {\n const container = node.$container;\n if (container) {\n const name = this.nameProvider.getName(node);\n if (name) {\n symbols.add(container, this.descriptions.createDescription(node, name, document));\n }\n }\n }\n}\n//# sourceMappingURL=scope-computation.js.map"],"x_google_ignoreList":[0],"mappings":";;;;;AAqBA,IAAa,IAAb,MAAqC;CACjC,YAAY,GAAU;EAElB,AADA,KAAK,eAAe,EAAS,WAAW,cACxC,KAAK,eAAe,EAAS,UAAU;;CAE3C,MAAM,uBAAuB,GAAU,IAAcA,EAAAA,kBAAkB,MAAM;EACzE,OAAO,KAAK,8BAA8B,EAAS,YAAY,OAAO,GAAU,KAAA,GAAW,EAAY;;CAc3G,MAAM,8BAA8B,GAAY,GAAU,IAAW,GAAgB,IAAcA,EAAAA,kBAAkB,MAAM;EACvH,IAAM,IAAU,EAAE;EAClB,KAAK,kBAAkB,GAAY,GAAS,EAAS;EACrD,KAAK,IAAM,KAAQ,EAAS,EAAW,EAEnC,AADA,MAAM,EAAkB,EAAY,EACpC,KAAK,kBAAkB,GAAM,GAAS,EAAS;EAEnD,OAAO;;CAMX,kBAAkB,GAAM,GAAS,GAAU;EACvC,IAAM,IAAO,KAAK,aAAa,QAAQ,EAAK;EAC5C,AAAI,KACA,EAAQ,KAAK,KAAK,aAAa,kBAAkB,GAAM,GAAM,EAAS,CAAC;;CAI/E,MAAM,oBAAoB,GAAU,IAAcA,EAAAA,kBAAkB,MAAM;EACtE,IAAM,IAAW,EAAS,YAAY,OAChC,IAAU,IAAI,GAAU;EAE9B,KAAK,IAAM,KAAQ,EAAkB,EAAS,EAE1C,AADA,MAAM,EAAkB,EAAY,EACpC,KAAK,eAAe,GAAM,GAAU,EAAQ;EAEhD,OAAO;;CAOX,eAAe,GAAM,GAAU,GAAS;EACpC,IAAM,IAAY,EAAK;EACvB,IAAI,GAAW;GACX,IAAM,IAAO,KAAK,aAAa,QAAQ,EAAK;GAC5C,AAAI,KACA,EAAQ,IAAI,GAAW,KAAK,aAAa,kBAAkB,GAAM,GAAM,EAAS,CAAC"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { stream as e } from "../utils/stream.js";
|
|
2
|
-
import { getDocument as t } from "../utils/ast-utils.js";
|
|
3
|
-
import { MultiMapScope as n, StreamScope as r } from "./scope.js";
|
|
4
|
-
import { WorkspaceCache as i } from "../utils/caching.js";
|
|
5
|
-
//#region ../../node_modules/langium/lib/references/scope-provider.js
|
|
6
|
-
var a = class {
|
|
7
|
-
constructor(e) {
|
|
8
|
-
this.reflection = e.shared.AstReflection, this.nameProvider = e.references.NameProvider, this.descriptions = e.workspace.AstNodeDescriptionProvider, this.indexManager = e.shared.workspace.IndexManager, this.globalScopeCache = new i(e.shared);
|
|
9
|
-
}
|
|
10
|
-
getScope(e) {
|
|
11
|
-
let n = [], r = this.reflection.getReferenceType(e), i = t(e.container).localSymbols;
|
|
12
|
-
if (i) {
|
|
13
|
-
let t = e.container;
|
|
14
|
-
do
|
|
15
|
-
i.has(t) && n.push(i.getStream(t).filter((e) => this.reflection.isSubtype(e.type, r))), t = t.$container;
|
|
16
|
-
while (t);
|
|
17
|
-
}
|
|
18
|
-
let a = this.getGlobalScope(r, e);
|
|
19
|
-
for (let e = n.length - 1; e >= 0; e--) a = this.createScope(n[e], a);
|
|
20
|
-
return a;
|
|
21
|
-
}
|
|
22
|
-
createScope(t, n, i) {
|
|
23
|
-
return new r(e(t), n, i);
|
|
24
|
-
}
|
|
25
|
-
createScopeForNodes(t, n, i) {
|
|
26
|
-
return new r(e(t).map((e) => {
|
|
27
|
-
let t = this.nameProvider.getName(e);
|
|
28
|
-
if (t) return this.descriptions.createDescription(e, t);
|
|
29
|
-
}).nonNullable(), n, i);
|
|
30
|
-
}
|
|
31
|
-
getGlobalScope(e, t) {
|
|
32
|
-
return this.globalScopeCache.get(e, () => new n(this.indexManager.allElements(e)));
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
//#endregion
|
|
36
|
-
export { a as DefaultScopeProvider };
|
|
37
|
-
|
|
38
|
-
//# sourceMappingURL=scope-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scope-provider.js","names":[],"sources":["../../../../../../../../node_modules/langium/lib/references/scope-provider.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2021-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 { MultiMapScope, StreamScope } from './scope.js';\nimport { getDocument } from '../utils/ast-utils.js';\nimport { stream } from '../utils/stream.js';\nimport { WorkspaceCache } from '../utils/caching.js';\nexport class DefaultScopeProvider {\n constructor(services) {\n this.reflection = services.shared.AstReflection;\n this.nameProvider = services.references.NameProvider;\n this.descriptions = services.workspace.AstNodeDescriptionProvider;\n this.indexManager = services.shared.workspace.IndexManager;\n this.globalScopeCache = new WorkspaceCache(services.shared);\n }\n getScope(context) {\n const scopes = [];\n const referenceType = this.reflection.getReferenceType(context);\n const localSymbols = getDocument(context.container).localSymbols;\n if (localSymbols) {\n let currentNode = context.container;\n do {\n if (localSymbols.has(currentNode)) {\n scopes.push(localSymbols.getStream(currentNode).filter(desc => this.reflection.isSubtype(desc.type, referenceType)));\n }\n currentNode = currentNode.$container;\n } while (currentNode);\n }\n let result = this.getGlobalScope(referenceType, context);\n for (let i = scopes.length - 1; i >= 0; i--) {\n result = this.createScope(scopes[i], result);\n }\n return result;\n }\n /**\n * Create a scope for the given collection of AST node descriptions.\n */\n createScope(elements, outerScope, options) {\n return new StreamScope(stream(elements), outerScope, options);\n }\n /**\n * Create a scope for the given collection of AST nodes, which need to be transformed into respective\n * descriptions first. This is done using the `NameProvider` and `AstNodeDescriptionProvider` services.\n */\n createScopeForNodes(elements, outerScope, options) {\n const s = stream(elements).map(e => {\n const name = this.nameProvider.getName(e);\n if (name) {\n return this.descriptions.createDescription(e, name);\n }\n return undefined;\n }).nonNullable();\n return new StreamScope(s, outerScope, options);\n }\n /**\n * Create a global scope filtered for the given reference type.\n */\n getGlobalScope(referenceType, _context) {\n return this.globalScopeCache.get(referenceType, () => new MultiMapScope(this.indexManager.allElements(referenceType)));\n }\n}\n//# sourceMappingURL=scope-provider.js.map"],"x_google_ignoreList":[0],"mappings":";;;;;AASA,IAAa,IAAb,MAAkC;CAC9B,YAAY,GAAU;EAKlB,AAJA,KAAK,aAAa,EAAS,OAAO,eAClC,KAAK,eAAe,EAAS,WAAW,cACxC,KAAK,eAAe,EAAS,UAAU,4BACvC,KAAK,eAAe,EAAS,OAAO,UAAU,cAC9C,KAAK,mBAAmB,IAAI,EAAe,EAAS,OAAO;;CAE/D,SAAS,GAAS;EACd,IAAM,IAAS,EAAE,EACX,IAAgB,KAAK,WAAW,iBAAiB,EAAQ,EACzD,IAAe,EAAY,EAAQ,UAAU,CAAC;EACpD,IAAI,GAAc;GACd,IAAI,IAAc,EAAQ;GAC1B;IAII,AAHI,EAAa,IAAI,EAAY,IAC7B,EAAO,KAAK,EAAa,UAAU,EAAY,CAAC,QAAO,MAAQ,KAAK,WAAW,UAAU,EAAK,MAAM,EAAc,CAAC,CAAC,EAExH,IAAc,EAAY;UACrB;;EAEb,IAAI,IAAS,KAAK,eAAe,GAAe,EAAQ;EACxD,KAAK,IAAI,IAAI,EAAO,SAAS,GAAG,KAAK,GAAG,KACpC,IAAS,KAAK,YAAY,EAAO,IAAI,EAAO;EAEhD,OAAO;;CAKX,YAAY,GAAU,GAAY,GAAS;EACvC,OAAO,IAAI,EAAY,EAAO,EAAS,EAAE,GAAY,EAAQ;;CAMjE,oBAAoB,GAAU,GAAY,GAAS;EAQ/C,OAAO,IAAI,EAPD,EAAO,EAAS,CAAC,KAAI,MAAK;GAChC,IAAM,IAAO,KAAK,aAAa,QAAQ,EAAE;GACzC,IAAI,GACA,OAAO,KAAK,aAAa,kBAAkB,GAAG,EAAK;IAGzD,CAAC,aACqB,EAAE,GAAY,EAAQ;;CAKlD,eAAe,GAAe,GAAU;EACpC,OAAO,KAAK,iBAAiB,IAAI,SAAqB,IAAI,EAAc,KAAK,aAAa,YAAY,EAAc,CAAC,CAAC"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { stream as e } from "../utils/stream.js";
|
|
2
|
-
import { MultiMap as t } from "../utils/collections.js";
|
|
3
|
-
//#region ../../node_modules/langium/lib/references/scope.js
|
|
4
|
-
var n = class {
|
|
5
|
-
constructor(e, t, n) {
|
|
6
|
-
this.elements = e, this.outerScope = t, this.caseInsensitive = n?.caseInsensitive ?? !1, this.concatOuterScope = n?.concatOuterScope ?? !0;
|
|
7
|
-
}
|
|
8
|
-
getAllElements() {
|
|
9
|
-
return this.outerScope ? this.elements.concat(this.outerScope.getAllElements()) : this.elements;
|
|
10
|
-
}
|
|
11
|
-
getElement(e) {
|
|
12
|
-
let t = this.caseInsensitive ? e.toLowerCase() : e, n = this.caseInsensitive ? this.elements.find((e) => e.name.toLowerCase() === t) : this.elements.find((t) => t.name === e);
|
|
13
|
-
if (n) return n;
|
|
14
|
-
if (this.outerScope) return this.outerScope.getElement(e);
|
|
15
|
-
}
|
|
16
|
-
getElements(e) {
|
|
17
|
-
let t = this.caseInsensitive ? e.toLowerCase() : e, n = this.caseInsensitive ? this.elements.filter((e) => e.name.toLowerCase() === t) : this.elements.filter((t) => t.name === e);
|
|
18
|
-
return (this.concatOuterScope || n.isEmpty()) && this.outerScope ? n.concat(this.outerScope.getElements(e)) : n;
|
|
19
|
-
}
|
|
20
|
-
}, r = class {
|
|
21
|
-
constructor(e, n, r) {
|
|
22
|
-
this.elements = new t(), this.caseInsensitive = r?.caseInsensitive ?? !1, this.concatOuterScope = r?.concatOuterScope ?? !0;
|
|
23
|
-
for (let t of e) {
|
|
24
|
-
let e = this.caseInsensitive ? t.name.toLowerCase() : t.name;
|
|
25
|
-
this.elements.add(e, t);
|
|
26
|
-
}
|
|
27
|
-
this.outerScope = n;
|
|
28
|
-
}
|
|
29
|
-
getElement(e) {
|
|
30
|
-
let t = this.caseInsensitive ? e.toLowerCase() : e, n = this.elements.get(t)[0];
|
|
31
|
-
if (n) return n;
|
|
32
|
-
if (this.outerScope) return this.outerScope.getElement(e);
|
|
33
|
-
}
|
|
34
|
-
getElements(t) {
|
|
35
|
-
let n = this.caseInsensitive ? t.toLowerCase() : t, r = this.elements.get(n);
|
|
36
|
-
return (this.concatOuterScope || r.length === 0) && this.outerScope ? e(r).concat(this.outerScope.getElements(t)) : e(r);
|
|
37
|
-
}
|
|
38
|
-
getAllElements() {
|
|
39
|
-
let t = e(this.elements.values());
|
|
40
|
-
return this.outerScope && (t = t.concat(this.outerScope.getAllElements())), t;
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
//#endregion
|
|
44
|
-
export { r as MultiMapScope, n as StreamScope };
|
|
45
|
-
|
|
46
|
-
//# sourceMappingURL=scope.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scope.js","names":[],"sources":["../../../../../../../../node_modules/langium/lib/references/scope.js"],"sourcesContent":["/******************************************************************************\n * Copyright 2023 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 { MultiMap } from '../utils/collections.js';\nimport { EMPTY_STREAM, stream } from '../utils/stream.js';\n/**\n * The default scope implementation is based on a `Stream`. It has an optional _outer scope_ describing\n * the next level of elements, which are queried when a target element is not found in the stream provided\n * to this scope.\n */\nexport class StreamScope {\n constructor(elements, outerScope, options) {\n this.elements = elements;\n this.outerScope = outerScope;\n this.caseInsensitive = options?.caseInsensitive ?? false;\n this.concatOuterScope = options?.concatOuterScope ?? true;\n }\n getAllElements() {\n if (this.outerScope) {\n return this.elements.concat(this.outerScope.getAllElements());\n }\n else {\n return this.elements;\n }\n }\n getElement(name) {\n const lowerCaseName = this.caseInsensitive ? name.toLowerCase() : name;\n const local = this.caseInsensitive\n ? this.elements.find(e => e.name.toLowerCase() === lowerCaseName)\n : this.elements.find(e => e.name === name);\n if (local) {\n return local;\n }\n if (this.outerScope) {\n return this.outerScope.getElement(name);\n }\n return undefined;\n }\n getElements(name) {\n const lowerCaseName = this.caseInsensitive ? name.toLowerCase() : name;\n const local = this.caseInsensitive\n ? this.elements.filter(e => e.name.toLowerCase() === lowerCaseName)\n : this.elements.filter(e => e.name === name);\n if ((this.concatOuterScope || local.isEmpty()) && this.outerScope) {\n return local.concat(this.outerScope.getElements(name));\n }\n else {\n return local;\n }\n }\n}\nexport class MapScope {\n constructor(elements, outerScope, options) {\n this.elements = new Map();\n this.caseInsensitive = options?.caseInsensitive ?? false;\n this.concatOuterScope = options?.concatOuterScope ?? true;\n for (const element of elements) {\n const name = this.caseInsensitive\n ? element.name.toLowerCase()\n : element.name;\n this.elements.set(name, element);\n }\n this.outerScope = outerScope;\n }\n getElement(name) {\n const localName = this.caseInsensitive ? name.toLowerCase() : name;\n const local = this.elements.get(localName);\n if (local) {\n return local;\n }\n if (this.outerScope) {\n return this.outerScope.getElement(name);\n }\n return undefined;\n }\n getElements(name) {\n const localName = this.caseInsensitive ? name.toLowerCase() : name;\n const local = this.elements.get(localName);\n const arr = local ? [local] : [];\n if ((this.concatOuterScope || arr.length > 0) && this.outerScope) {\n return stream(arr).concat(this.outerScope.getElements(name));\n }\n else {\n return stream(arr);\n }\n }\n getAllElements() {\n let elementStream = stream(this.elements.values());\n if (this.outerScope) {\n elementStream = elementStream.concat(this.outerScope.getAllElements());\n }\n return elementStream;\n }\n}\nexport class MultiMapScope {\n constructor(elements, outerScope, options) {\n this.elements = new MultiMap();\n this.caseInsensitive = options?.caseInsensitive ?? false;\n this.concatOuterScope = options?.concatOuterScope ?? true;\n for (const element of elements) {\n const name = this.caseInsensitive\n ? element.name.toLowerCase()\n : element.name;\n this.elements.add(name, element);\n }\n this.outerScope = outerScope;\n }\n getElement(name) {\n const localName = this.caseInsensitive ? name.toLowerCase() : name;\n const local = this.elements.get(localName)[0];\n if (local) {\n return local;\n }\n if (this.outerScope) {\n return this.outerScope.getElement(name);\n }\n return undefined;\n }\n getElements(name) {\n const localName = this.caseInsensitive ? name.toLowerCase() : name;\n const local = this.elements.get(localName);\n if ((this.concatOuterScope || local.length === 0) && this.outerScope) {\n return stream(local).concat(this.outerScope.getElements(name));\n }\n else {\n return stream(local);\n }\n }\n getAllElements() {\n let elementStream = stream(this.elements.values());\n if (this.outerScope) {\n elementStream = elementStream.concat(this.outerScope.getAllElements());\n }\n return elementStream;\n }\n}\nexport const EMPTY_SCOPE = {\n getElement() {\n return undefined;\n },\n getElements() {\n return EMPTY_STREAM;\n },\n getAllElements() {\n return EMPTY_STREAM;\n }\n};\n//# sourceMappingURL=scope.js.map"],"x_google_ignoreList":[0],"mappings":";;;AAYA,IAAa,IAAb,MAAyB;CACrB,YAAY,GAAU,GAAY,GAAS;EAIvC,AAHA,KAAK,WAAW,GAChB,KAAK,aAAa,GAClB,KAAK,kBAAkB,GAAS,mBAAmB,IACnD,KAAK,mBAAmB,GAAS,oBAAoB;;CAEzD,iBAAiB;EAKT,OAJA,KAAK,aACE,KAAK,SAAS,OAAO,KAAK,WAAW,gBAAgB,CAAC,GAGtD,KAAK;;CAGpB,WAAW,GAAM;EACb,IAAM,IAAgB,KAAK,kBAAkB,EAAK,aAAa,GAAG,GAC5D,IAAQ,KAAK,kBACb,KAAK,SAAS,MAAK,MAAK,EAAE,KAAK,aAAa,KAAK,EAAc,GAC/D,KAAK,SAAS,MAAK,MAAK,EAAE,SAAS,EAAK;EAC9C,IAAI,GACA,OAAO;EAEX,IAAI,KAAK,YACL,OAAO,KAAK,WAAW,WAAW,EAAK;;CAI/C,YAAY,GAAM;EACd,IAAM,IAAgB,KAAK,kBAAkB,EAAK,aAAa,GAAG,GAC5D,IAAQ,KAAK,kBACb,KAAK,SAAS,QAAO,MAAK,EAAE,KAAK,aAAa,KAAK,EAAc,GACjE,KAAK,SAAS,QAAO,MAAK,EAAE,SAAS,EAAK;EAK5C,QAJC,KAAK,oBAAoB,EAAM,SAAS,KAAK,KAAK,aAC5C,EAAM,OAAO,KAAK,WAAW,YAAY,EAAK,CAAC,GAG/C;;GA+CN,IAAb,MAA2B;CACvB,YAAY,GAAU,GAAY,GAAS;EAGvC,AAFA,KAAK,WAAW,IAAI,GAAU,EAC9B,KAAK,kBAAkB,GAAS,mBAAmB,IACnD,KAAK,mBAAmB,GAAS,oBAAoB;EACrD,KAAK,IAAM,KAAW,GAAU;GAC5B,IAAM,IAAO,KAAK,kBACZ,EAAQ,KAAK,aAAa,GAC1B,EAAQ;GACd,KAAK,SAAS,IAAI,GAAM,EAAQ;;EAEpC,KAAK,aAAa;;CAEtB,WAAW,GAAM;EACb,IAAM,IAAY,KAAK,kBAAkB,EAAK,aAAa,GAAG,GACxD,IAAQ,KAAK,SAAS,IAAI,EAAU,CAAC;EAC3C,IAAI,GACA,OAAO;EAEX,IAAI,KAAK,YACL,OAAO,KAAK,WAAW,WAAW,EAAK;;CAI/C,YAAY,GAAM;EACd,IAAM,IAAY,KAAK,kBAAkB,EAAK,aAAa,GAAG,GACxD,IAAQ,KAAK,SAAS,IAAI,EAAU;EAKtC,QAJC,KAAK,oBAAoB,EAAM,WAAW,MAAM,KAAK,aAC/C,EAAO,EAAM,CAAC,OAAO,KAAK,WAAW,YAAY,EAAK,CAAC,GAGvD,EAAO,EAAM;;CAG5B,iBAAiB;EACb,IAAI,IAAgB,EAAO,KAAK,SAAS,QAAQ,CAAC;EAIlD,OAHI,KAAK,eACL,IAAgB,EAAc,OAAO,KAAK,WAAW,gBAAgB,CAAC,GAEnE"}
|