@gsc-basic/components 1.0.1
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/dist/es/_virtual/_plugin-vue_export-helper.js +9 -0
- package/dist/es/index.js +35 -0
- package/dist/es/node_modules/@codemirror/autocomplete/dist/index.js +1371 -0
- package/dist/es/node_modules/@codemirror/commands/dist/index.js +838 -0
- package/dist/es/node_modules/@codemirror/lang-java/dist/index.js +38 -0
- package/dist/es/node_modules/@codemirror/lang-javascript/dist/index.js +300 -0
- package/dist/es/node_modules/@codemirror/lang-json/dist/index.js +48 -0
- package/dist/es/node_modules/@codemirror/lang-python/dist/index.js +399 -0
- package/dist/es/node_modules/@codemirror/lang-sql/dist/index.js +497 -0
- package/dist/es/node_modules/@codemirror/lang-xml/dist/index.js +216 -0
- package/dist/es/node_modules/@codemirror/lang-yaml/dist/index.js +51 -0
- package/dist/es/node_modules/@codemirror/language/dist/index.js +1299 -0
- package/dist/es/node_modules/@codemirror/lint/dist/index.js +649 -0
- package/dist/es/node_modules/@codemirror/search/dist/index.js +872 -0
- package/dist/es/node_modules/@codemirror/state/dist/index.js +2639 -0
- package/dist/es/node_modules/@codemirror/theme-one-dark/dist/index.js +132 -0
- package/dist/es/node_modules/@codemirror/view/dist/index.js +7280 -0
- package/dist/es/node_modules/@lezer/common/dist/index.js +1430 -0
- package/dist/es/node_modules/@lezer/highlight/dist/index.js +637 -0
- package/dist/es/node_modules/@lezer/java/dist/index.js +62 -0
- package/dist/es/node_modules/@lezer/javascript/dist/index.js +161 -0
- package/dist/es/node_modules/@lezer/json/dist/index.js +34 -0
- package/dist/es/node_modules/@lezer/lr/dist/index.js +1307 -0
- package/dist/es/node_modules/@lezer/python/dist/index.js +221 -0
- package/dist/es/node_modules/@lezer/xml/dist/index.js +100 -0
- package/dist/es/node_modules/@lezer/yaml/dist/index.js +274 -0
- package/dist/es/node_modules/@marijn/find-cluster-break/src/index.js +69 -0
- package/dist/es/node_modules/@vueuse/core/dist/index.js +125 -0
- package/dist/es/node_modules/@vueuse/shared/dist/index.js +55 -0
- package/dist/es/node_modules/codemirror/dist/index.js +40 -0
- package/dist/es/node_modules/crelt/index.js +27 -0
- package/dist/es/node_modules/lodash-es/_Hash.js +20 -0
- package/dist/es/node_modules/lodash-es/_ListCache.js +20 -0
- package/dist/es/node_modules/lodash-es/_Map.js +6 -0
- package/dist/es/node_modules/lodash-es/_MapCache.js +20 -0
- package/dist/es/node_modules/lodash-es/_Symbol.js +5 -0
- package/dist/es/node_modules/lodash-es/_arrayMap.js +8 -0
- package/dist/es/node_modules/lodash-es/_assocIndexOf.js +10 -0
- package/dist/es/node_modules/lodash-es/_baseGet.js +11 -0
- package/dist/es/node_modules/lodash-es/_baseGetTag.js +10 -0
- package/dist/es/node_modules/lodash-es/_baseIsNative.js +16 -0
- package/dist/es/node_modules/lodash-es/_baseToString.js +18 -0
- package/dist/es/node_modules/lodash-es/_castPath.js +10 -0
- package/dist/es/node_modules/lodash-es/_coreJsData.js +5 -0
- package/dist/es/node_modules/lodash-es/_freeGlobal.js +4 -0
- package/dist/es/node_modules/lodash-es/_getMapData.js +8 -0
- package/dist/es/node_modules/lodash-es/_getNative.js +9 -0
- package/dist/es/node_modules/lodash-es/_getRawTag.js +15 -0
- package/dist/es/node_modules/lodash-es/_getValue.js +6 -0
- package/dist/es/node_modules/lodash-es/_hashClear.js +7 -0
- package/dist/es/node_modules/lodash-es/_hashDelete.js +7 -0
- package/dist/es/node_modules/lodash-es/_hashGet.js +13 -0
- package/dist/es/node_modules/lodash-es/_hashHas.js +9 -0
- package/dist/es/node_modules/lodash-es/_hashSet.js +9 -0
- package/dist/es/node_modules/lodash-es/_isKey.js +12 -0
- package/dist/es/node_modules/lodash-es/_isKeyable.js +7 -0
- package/dist/es/node_modules/lodash-es/_isMasked.js +11 -0
- package/dist/es/node_modules/lodash-es/_listCacheClear.js +6 -0
- package/dist/es/node_modules/lodash-es/_listCacheDelete.js +12 -0
- package/dist/es/node_modules/lodash-es/_listCacheGet.js +8 -0
- package/dist/es/node_modules/lodash-es/_listCacheHas.js +7 -0
- package/dist/es/node_modules/lodash-es/_listCacheSet.js +8 -0
- package/dist/es/node_modules/lodash-es/_mapCacheClear.js +13 -0
- package/dist/es/node_modules/lodash-es/_mapCacheDelete.js +8 -0
- package/dist/es/node_modules/lodash-es/_mapCacheGet.js +7 -0
- package/dist/es/node_modules/lodash-es/_mapCacheHas.js +7 -0
- package/dist/es/node_modules/lodash-es/_mapCacheSet.js +8 -0
- package/dist/es/node_modules/lodash-es/_memoizeCapped.js +11 -0
- package/dist/es/node_modules/lodash-es/_nativeCreate.js +5 -0
- package/dist/es/node_modules/lodash-es/_objectToString.js +7 -0
- package/dist/es/node_modules/lodash-es/_root.js +5 -0
- package/dist/es/node_modules/lodash-es/_stringToPath.js +10 -0
- package/dist/es/node_modules/lodash-es/_toKey.js +10 -0
- package/dist/es/node_modules/lodash-es/_toSource.js +17 -0
- package/dist/es/node_modules/lodash-es/eq.js +6 -0
- package/dist/es/node_modules/lodash-es/get.js +8 -0
- package/dist/es/node_modules/lodash-es/isArray.js +4 -0
- package/dist/es/node_modules/lodash-es/isFunction.js +12 -0
- package/dist/es/node_modules/lodash-es/isNil.js +6 -0
- package/dist/es/node_modules/lodash-es/isObject.js +7 -0
- package/dist/es/node_modules/lodash-es/isObjectLike.js +6 -0
- package/dist/es/node_modules/lodash-es/isString.js +10 -0
- package/dist/es/node_modules/lodash-es/isSymbol.js +9 -0
- package/dist/es/node_modules/lodash-es/memoize.js +18 -0
- package/dist/es/node_modules/lodash-es/toString.js +7 -0
- package/dist/es/node_modules/style-mod/src/style-mod.js +109 -0
- package/dist/es/node_modules/vue-codemirror/dist/vue-codemirror.esm.js +132 -0
- package/dist/es/node_modules/w3c-keyname/index.js +93 -0
- package/dist/es/src/CodeEditor/index.js +6 -0
- package/dist/es/src/CodeEditor/src/index.css +1 -0
- package/dist/es/src/CodeEditor/src/index.vue.js +128 -0
- package/dist/es/src/CodeEditor/src/index2.css +1 -0
- package/dist/es/src/ConfigProvider/index.js +7 -0
- package/dist/es/src/ConfigProvider/src/configProvider.js +14 -0
- package/dist/es/src/ConfigProvider/src/configProviderProps.js +22 -0
- package/dist/es/src/ConfigProvider/src/constants.js +9 -0
- package/dist/es/src/ConfigProvider/src/useGlobalConfig.js +45 -0
- package/dist/es/src/ScaleScreen/index.js +6 -0
- package/dist/es/src/ScaleScreen/src/index.css +1 -0
- package/dist/es/src/ScaleScreen/src/index.vue.js +115 -0
- package/dist/es/src/ScaleScreen/src/index2.css +1 -0
- package/dist/es/src/VideoBackground/index.js +6 -0
- package/dist/es/src/VideoBackground/src/helper.js +29 -0
- package/dist/es/src/VideoBackground/src/index.css +1 -0
- package/dist/es/src/VideoBackground/src/index.vue.js +108 -0
- package/dist/es/src/VideoBackground/src/index2.css +1 -0
- package/dist/es/src/VideoBackground/src/index3.css +1 -0
- package/dist/es/src/VideoBackground/src/videoBackground.js +31 -0
- package/dist/es/src/hooks/useLocale.js +24 -0
- package/dist/es/src/hooks/useNamespace.js +8 -0
- package/dist/es/src/index.js +28 -0
- package/dist/es/src/locale/lang/en-US.js +32 -0
- package/dist/es/src/locale/lang/ja-JP.js +32 -0
- package/dist/es/src/locale/lang/zh-CN.js +32 -0
- package/dist/es/src/styles/tokens.css +1 -0
- package/dist/lib/_virtual/_plugin-vue_export-helper.js +1 -0
- package/dist/lib/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/autocomplete/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/commands/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/lang-java/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/lang-javascript/dist/index.js +13 -0
- package/dist/lib/node_modules/@codemirror/lang-json/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/lang-python/dist/index.js +3 -0
- package/dist/lib/node_modules/@codemirror/lang-sql/dist/index.js +2 -0
- package/dist/lib/node_modules/@codemirror/lang-xml/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/lang-yaml/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/language/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/lint/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/search/dist/index.js +2 -0
- package/dist/lib/node_modules/@codemirror/state/dist/index.js +5 -0
- package/dist/lib/node_modules/@codemirror/theme-one-dark/dist/index.js +1 -0
- package/dist/lib/node_modules/@codemirror/view/dist/index.js +5 -0
- package/dist/lib/node_modules/@lezer/common/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/highlight/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/java/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/javascript/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/json/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/lr/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/python/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/xml/dist/index.js +1 -0
- package/dist/lib/node_modules/@lezer/yaml/dist/index.js +1 -0
- package/dist/lib/node_modules/@marijn/find-cluster-break/src/index.js +1 -0
- package/dist/lib/node_modules/@vueuse/core/dist/index.js +1 -0
- package/dist/lib/node_modules/@vueuse/shared/dist/index.js +1 -0
- package/dist/lib/node_modules/codemirror/dist/index.js +1 -0
- package/dist/lib/node_modules/crelt/index.js +1 -0
- package/dist/lib/node_modules/lodash-es/_Hash.js +1 -0
- package/dist/lib/node_modules/lodash-es/_ListCache.js +1 -0
- package/dist/lib/node_modules/lodash-es/_Map.js +1 -0
- package/dist/lib/node_modules/lodash-es/_MapCache.js +1 -0
- package/dist/lib/node_modules/lodash-es/_Symbol.js +1 -0
- package/dist/lib/node_modules/lodash-es/_arrayMap.js +1 -0
- package/dist/lib/node_modules/lodash-es/_assocIndexOf.js +1 -0
- package/dist/lib/node_modules/lodash-es/_baseGet.js +1 -0
- package/dist/lib/node_modules/lodash-es/_baseGetTag.js +1 -0
- package/dist/lib/node_modules/lodash-es/_baseIsNative.js +1 -0
- package/dist/lib/node_modules/lodash-es/_baseToString.js +1 -0
- package/dist/lib/node_modules/lodash-es/_castPath.js +1 -0
- package/dist/lib/node_modules/lodash-es/_coreJsData.js +1 -0
- package/dist/lib/node_modules/lodash-es/_freeGlobal.js +1 -0
- package/dist/lib/node_modules/lodash-es/_getMapData.js +1 -0
- package/dist/lib/node_modules/lodash-es/_getNative.js +1 -0
- package/dist/lib/node_modules/lodash-es/_getRawTag.js +1 -0
- package/dist/lib/node_modules/lodash-es/_getValue.js +1 -0
- package/dist/lib/node_modules/lodash-es/_hashClear.js +1 -0
- package/dist/lib/node_modules/lodash-es/_hashDelete.js +1 -0
- package/dist/lib/node_modules/lodash-es/_hashGet.js +1 -0
- package/dist/lib/node_modules/lodash-es/_hashHas.js +1 -0
- package/dist/lib/node_modules/lodash-es/_hashSet.js +1 -0
- package/dist/lib/node_modules/lodash-es/_isKey.js +1 -0
- package/dist/lib/node_modules/lodash-es/_isKeyable.js +1 -0
- package/dist/lib/node_modules/lodash-es/_isMasked.js +1 -0
- package/dist/lib/node_modules/lodash-es/_listCacheClear.js +1 -0
- package/dist/lib/node_modules/lodash-es/_listCacheDelete.js +1 -0
- package/dist/lib/node_modules/lodash-es/_listCacheGet.js +1 -0
- package/dist/lib/node_modules/lodash-es/_listCacheHas.js +1 -0
- package/dist/lib/node_modules/lodash-es/_listCacheSet.js +1 -0
- package/dist/lib/node_modules/lodash-es/_mapCacheClear.js +1 -0
- package/dist/lib/node_modules/lodash-es/_mapCacheDelete.js +1 -0
- package/dist/lib/node_modules/lodash-es/_mapCacheGet.js +1 -0
- package/dist/lib/node_modules/lodash-es/_mapCacheHas.js +1 -0
- package/dist/lib/node_modules/lodash-es/_mapCacheSet.js +1 -0
- package/dist/lib/node_modules/lodash-es/_memoizeCapped.js +1 -0
- package/dist/lib/node_modules/lodash-es/_nativeCreate.js +1 -0
- package/dist/lib/node_modules/lodash-es/_objectToString.js +1 -0
- package/dist/lib/node_modules/lodash-es/_root.js +1 -0
- package/dist/lib/node_modules/lodash-es/_stringToPath.js +1 -0
- package/dist/lib/node_modules/lodash-es/_toKey.js +1 -0
- package/dist/lib/node_modules/lodash-es/_toSource.js +1 -0
- package/dist/lib/node_modules/lodash-es/eq.js +1 -0
- package/dist/lib/node_modules/lodash-es/get.js +1 -0
- package/dist/lib/node_modules/lodash-es/isArray.js +1 -0
- package/dist/lib/node_modules/lodash-es/isFunction.js +1 -0
- package/dist/lib/node_modules/lodash-es/isNil.js +1 -0
- package/dist/lib/node_modules/lodash-es/isObject.js +1 -0
- package/dist/lib/node_modules/lodash-es/isObjectLike.js +1 -0
- package/dist/lib/node_modules/lodash-es/isString.js +1 -0
- package/dist/lib/node_modules/lodash-es/isSymbol.js +1 -0
- package/dist/lib/node_modules/lodash-es/memoize.js +1 -0
- package/dist/lib/node_modules/lodash-es/toString.js +1 -0
- package/dist/lib/node_modules/style-mod/src/style-mod.js +3 -0
- package/dist/lib/node_modules/vue-codemirror/dist/vue-codemirror.esm.js +1 -0
- package/dist/lib/node_modules/w3c-keyname/index.js +1 -0
- package/dist/lib/src/CodeEditor/index.js +1 -0
- package/dist/lib/src/CodeEditor/src/index.css +1 -0
- package/dist/lib/src/CodeEditor/src/index.vue.js +1 -0
- package/dist/lib/src/CodeEditor/src/index2.css +1 -0
- package/dist/lib/src/ConfigProvider/index.js +1 -0
- package/dist/lib/src/ConfigProvider/src/configProvider.js +1 -0
- package/dist/lib/src/ConfigProvider/src/configProviderProps.js +1 -0
- package/dist/lib/src/ConfigProvider/src/constants.js +1 -0
- package/dist/lib/src/ConfigProvider/src/useGlobalConfig.js +1 -0
- package/dist/lib/src/ScaleScreen/index.js +1 -0
- package/dist/lib/src/ScaleScreen/src/index.css +1 -0
- package/dist/lib/src/ScaleScreen/src/index.vue.js +1 -0
- package/dist/lib/src/ScaleScreen/src/index2.css +1 -0
- package/dist/lib/src/VideoBackground/index.js +1 -0
- package/dist/lib/src/VideoBackground/src/helper.js +1 -0
- package/dist/lib/src/VideoBackground/src/index.css +1 -0
- package/dist/lib/src/VideoBackground/src/index.vue.js +1 -0
- package/dist/lib/src/VideoBackground/src/index2.css +1 -0
- package/dist/lib/src/VideoBackground/src/index3.css +1 -0
- package/dist/lib/src/VideoBackground/src/videoBackground.js +1 -0
- package/dist/lib/src/hooks/useLocale.js +1 -0
- package/dist/lib/src/hooks/useNamespace.js +1 -0
- package/dist/lib/src/index.js +1 -0
- package/dist/lib/src/locale/lang/en-US.js +1 -0
- package/dist/lib/src/locale/lang/ja-JP.js +1 -0
- package/dist/lib/src/locale/lang/zh-CN.js +1 -0
- package/dist/lib/src/styles/tokens.css +1 -0
- package/package.json +71 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { defineComponent as v, createElementBlock as t, openBlock as n, normalizeStyle as c, normalizeClass as m, createCommentVNode as s, createElementVNode as y, renderSlot as g, Fragment as f, renderList as k, ref as $, onMounted as b, nextTick as h, unref as a, watch as I, computed as S } from "vue";
|
|
2
|
+
import { isIterableArray as p } from "@gsc-basic/utils";
|
|
3
|
+
import B from "./videoBackground.js";
|
|
4
|
+
import { useNamespace as C } from "../../hooks/useNamespace.js";
|
|
5
|
+
import './index3.css';import './index2.css';import './index.css';/* empty css */
|
|
6
|
+
/* empty css */
|
|
7
|
+
/* empty css */
|
|
8
|
+
import V from "../../../_virtual/_plugin-vue_export-helper.js";
|
|
9
|
+
import A from "../../../node_modules/lodash-es/isNil.js";
|
|
10
|
+
import N from "../../../node_modules/lodash-es/isString.js";
|
|
11
|
+
const R = v({
|
|
12
|
+
name: "GscVideoBackground",
|
|
13
|
+
props: {
|
|
14
|
+
source: {
|
|
15
|
+
type: [String, Array],
|
|
16
|
+
required: !0
|
|
17
|
+
},
|
|
18
|
+
cover: {
|
|
19
|
+
type: String,
|
|
20
|
+
default: ""
|
|
21
|
+
},
|
|
22
|
+
videoRemoval: {
|
|
23
|
+
type: Boolean,
|
|
24
|
+
default: !1
|
|
25
|
+
},
|
|
26
|
+
videoZIndex: {
|
|
27
|
+
type: Number,
|
|
28
|
+
default: -1
|
|
29
|
+
},
|
|
30
|
+
fullscreen: {
|
|
31
|
+
type: Boolean,
|
|
32
|
+
default: !0
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
setup(e) {
|
|
36
|
+
const { prefixCls: l } = C("video-bg"), u = `${l}-ready`, o = $(null);
|
|
37
|
+
function d(r) {
|
|
38
|
+
A(a(o)) || (N(r) && r !== "" && a(o).setAttribute("src", e.source), p(r) && a(o).removeAttribute("src"));
|
|
39
|
+
}
|
|
40
|
+
return b(() => {
|
|
41
|
+
d(e.source), h(() => {
|
|
42
|
+
new B(a(o), {
|
|
43
|
+
helperClass: u,
|
|
44
|
+
videoRemoval: e.videoRemoval
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}), I(
|
|
48
|
+
() => e.source,
|
|
49
|
+
(r) => {
|
|
50
|
+
d(r);
|
|
51
|
+
}
|
|
52
|
+
), {
|
|
53
|
+
prefixCls: l,
|
|
54
|
+
isIterableArray: p,
|
|
55
|
+
videoRef: o,
|
|
56
|
+
containerStyle: S(() => {
|
|
57
|
+
const r = {
|
|
58
|
+
zIndex: e.videoZIndex
|
|
59
|
+
};
|
|
60
|
+
return e.fullscreen ? {
|
|
61
|
+
...r,
|
|
62
|
+
position: "fixed",
|
|
63
|
+
minWidth: "100vw",
|
|
64
|
+
minHeight: "100vh"
|
|
65
|
+
} : {
|
|
66
|
+
...r,
|
|
67
|
+
position: "absolute",
|
|
68
|
+
minWidth: "100%",
|
|
69
|
+
minHeight: "100%"
|
|
70
|
+
};
|
|
71
|
+
})
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
}), z = ["src", "type"];
|
|
75
|
+
function w(e, l, u, o, d, r) {
|
|
76
|
+
return n(), t("div", {
|
|
77
|
+
class: m([e.prefixCls]),
|
|
78
|
+
style: c(e.containerStyle)
|
|
79
|
+
}, [
|
|
80
|
+
e.cover ? (n(), t("div", {
|
|
81
|
+
key: 0,
|
|
82
|
+
class: "bg-cover",
|
|
83
|
+
style: c({ backgroundImage: `url(${e.cover})`, zIndex: e.videoZIndex + 1 })
|
|
84
|
+
}, null, 4)) : s("", !0),
|
|
85
|
+
y("video", {
|
|
86
|
+
ref: "videoRef",
|
|
87
|
+
class: m(`${e.prefixCls}-video`),
|
|
88
|
+
preload: "metadata",
|
|
89
|
+
loop: "",
|
|
90
|
+
autoplay: "",
|
|
91
|
+
muted: ""
|
|
92
|
+
}, [
|
|
93
|
+
g(e.$slots, "default", {}, () => [
|
|
94
|
+
e.isIterableArray(e.source) ? (n(!0), t(f, { key: 0 }, k(e.source, (i) => (n(), t(f, null, [
|
|
95
|
+
i.type !== "" ? (n(), t("source", {
|
|
96
|
+
key: i.type,
|
|
97
|
+
src: i.src,
|
|
98
|
+
type: `video/${i.type}`
|
|
99
|
+
}, null, 8, z)) : s("", !0)
|
|
100
|
+
], 64))), 256)) : s("", !0)
|
|
101
|
+
], !0)
|
|
102
|
+
], 2)
|
|
103
|
+
], 6);
|
|
104
|
+
}
|
|
105
|
+
const M = /* @__PURE__ */ V(R, [["render", w], ["__scopeId", "data-v-e8a07a6a"]]);
|
|
106
|
+
export {
|
|
107
|
+
M as default
|
|
108
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.gsc-basic-video-bg[data-v-e8a07a6a]{inset:0}.gsc-basic-video-bg .bg-cover[data-v-e8a07a6a]{position:absolute;inset:0;background-color:transparent;background-repeat:no-repeat;background-size:cover;background-position:center}.gsc-basic-video-bg-video[data-v-e8a07a6a]{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:none;pointer-events:none}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[data-v-e8a07a6a],[data-v-e8a07a6a]:before,[data-v-e8a07a6a]:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }[data-v-e8a07a6a]::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.absolute[data-v-e8a07a6a]{position:absolute}.fixed[data-v-e8a07a6a]{position:fixed}.block[data-v-e8a07a6a]{display:block}.bg-cover[data-v-e8a07a6a]{background-size:cover}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { useWindowSizeFn as s } from "@gsc-basic/hooks";
|
|
2
|
+
import { validateSelector as i, detectTouchOrSmallScreen as o, removeVideo as l, restoreVideo as a } from "./helper.js";
|
|
3
|
+
class d {
|
|
4
|
+
constructor(e, t = {}) {
|
|
5
|
+
this.options = Object.assign(
|
|
6
|
+
{
|
|
7
|
+
helperClass: "",
|
|
8
|
+
videoRemoval: !1
|
|
9
|
+
},
|
|
10
|
+
t
|
|
11
|
+
), this._name = this.constructor.name, this.element = i(e, this._name), this.init();
|
|
12
|
+
}
|
|
13
|
+
init() {
|
|
14
|
+
this.element.readyState >= this.element.HAVE_FUTURE_DATA ? this.handler() : this.element.addEventListener("canplay", () => {
|
|
15
|
+
this.handler();
|
|
16
|
+
}), s(
|
|
17
|
+
() => {
|
|
18
|
+
this.handler();
|
|
19
|
+
},
|
|
20
|
+
100,
|
|
21
|
+
{ immediate: !1 }
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
handler() {
|
|
25
|
+
const e = document.body;
|
|
26
|
+
o() ? (this.element.pause(), this.options.videoRemoval && l(this.element), e.classList.remove(this.options.helperClass)) : (this.options.videoRemoval && a(this.element), this.element.play(), e.classList.add(this.options.helperClass));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export {
|
|
30
|
+
d as default
|
|
31
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { inject as l, ref as n, computed as c, unref as s, isRef as m } from "vue";
|
|
2
|
+
import u from "../locale/lang/en-US.js";
|
|
3
|
+
import { localeContextKey as a } from "../ConfigProvider/src/constants.js";
|
|
4
|
+
import i from "../../node_modules/lodash-es/get.js";
|
|
5
|
+
const f = (t) => (r, e) => p(r, e, s(t)), p = (t, r, e) => i(e, t, t).replace(
|
|
6
|
+
/\{(\w+)\}/g,
|
|
7
|
+
(d, o) => `${r?.[o] ?? `{${o}}`}`
|
|
8
|
+
), g = (t) => {
|
|
9
|
+
const r = c(() => s(t).name), e = m(t) ? t : n(t);
|
|
10
|
+
return {
|
|
11
|
+
lang: r,
|
|
12
|
+
locale: e,
|
|
13
|
+
t: f(t)
|
|
14
|
+
};
|
|
15
|
+
}, R = (t) => {
|
|
16
|
+
const r = t || l(a, n());
|
|
17
|
+
return g(c(() => r.value || u));
|
|
18
|
+
};
|
|
19
|
+
export {
|
|
20
|
+
g as buildLocaleContext,
|
|
21
|
+
f as buildTranslator,
|
|
22
|
+
p as translate,
|
|
23
|
+
R as useLocale
|
|
24
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import './styles/tokens.css';/* empty css */
|
|
2
|
+
import { GscConfigProvider as t } from "./ConfigProvider/index.js";
|
|
3
|
+
import { GscCodeEditor as f } from "./CodeEditor/index.js";
|
|
4
|
+
import { GscScaleScreen as i } from "./ScaleScreen/index.js";
|
|
5
|
+
import { GscVideoBackground as d } from "./VideoBackground/index.js";
|
|
6
|
+
import { configProviderContextKey as p, defaultInitialZIndex as m, defaultNamespace as s, localeContextKey as c, sizeInjectionKey as C, zIndexContextKey as u } from "./ConfigProvider/src/constants.js";
|
|
7
|
+
import { provideGlobalConfig as g, useGlobalComponentSettings as y, useGlobalConfig as I } from "./ConfigProvider/src/useGlobalConfig.js";
|
|
8
|
+
import { default as S } from "./locale/lang/zh-CN.js";
|
|
9
|
+
import { default as v } from "./locale/lang/en-US.js";
|
|
10
|
+
import { default as P } from "./locale/lang/ja-JP.js";
|
|
11
|
+
export {
|
|
12
|
+
f as GscCodeEditor,
|
|
13
|
+
t as GscConfigProvider,
|
|
14
|
+
i as GscScaleScreen,
|
|
15
|
+
d as GscVideoBackground,
|
|
16
|
+
p as configProviderContextKey,
|
|
17
|
+
m as defaultInitialZIndex,
|
|
18
|
+
s as defaultNamespace,
|
|
19
|
+
v as enUS,
|
|
20
|
+
P as jaJP,
|
|
21
|
+
c as localeContextKey,
|
|
22
|
+
g as provideGlobalConfig,
|
|
23
|
+
C as sizeInjectionKey,
|
|
24
|
+
y as useGlobalComponentSettings,
|
|
25
|
+
I as useGlobalConfig,
|
|
26
|
+
u as zIndexContextKey,
|
|
27
|
+
S as zhCN
|
|
28
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const e = {
|
|
2
|
+
gsc: {
|
|
3
|
+
locale: "en-US",
|
|
4
|
+
global: {
|
|
5
|
+
inputText: "Please enter "
|
|
6
|
+
},
|
|
7
|
+
codeEditor: {
|
|
8
|
+
placeholder: {
|
|
9
|
+
default: "Please input code content",
|
|
10
|
+
json: "Please input data in JSON format",
|
|
11
|
+
java: "Please input Java code",
|
|
12
|
+
sql: "Please input SQL statements",
|
|
13
|
+
yaml: "Please input YAML content",
|
|
14
|
+
xml: "Please input XML content",
|
|
15
|
+
python: "Please input Python code",
|
|
16
|
+
javascript: "Please input JavaScript/TypeScript code"
|
|
17
|
+
},
|
|
18
|
+
info: {
|
|
19
|
+
length: "Length",
|
|
20
|
+
lines: "Lines",
|
|
21
|
+
cursor: "Cursor"
|
|
22
|
+
},
|
|
23
|
+
action: {
|
|
24
|
+
copy: "Copy",
|
|
25
|
+
copied: "Copied"
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
export {
|
|
31
|
+
e as default
|
|
32
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const a = {
|
|
2
|
+
gsc: {
|
|
3
|
+
locale: "ja-JP",
|
|
4
|
+
global: {
|
|
5
|
+
inputText: "入力してください"
|
|
6
|
+
},
|
|
7
|
+
codeEditor: {
|
|
8
|
+
placeholder: {
|
|
9
|
+
default: "コード内容を入力してください",
|
|
10
|
+
json: "JSON 形式のデータを入力してください",
|
|
11
|
+
java: "Java コードを入力してください",
|
|
12
|
+
sql: "SQL 文を入力してください",
|
|
13
|
+
yaml: "YAML コンテンツを入力してください",
|
|
14
|
+
xml: "XML コンテンツを入力してください",
|
|
15
|
+
python: "Python コードを入力してください",
|
|
16
|
+
javascript: "JavaScript/TypeScript コードを入力してください"
|
|
17
|
+
},
|
|
18
|
+
info: {
|
|
19
|
+
length: "長さ",
|
|
20
|
+
lines: "行数",
|
|
21
|
+
cursor: "カーソル"
|
|
22
|
+
},
|
|
23
|
+
action: {
|
|
24
|
+
copy: "コピー",
|
|
25
|
+
copied: "コピー済み"
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
export {
|
|
31
|
+
a as default
|
|
32
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const a = {
|
|
2
|
+
gsc: {
|
|
3
|
+
locale: "zh-CN",
|
|
4
|
+
global: {
|
|
5
|
+
inputText: "请输入"
|
|
6
|
+
},
|
|
7
|
+
codeEditor: {
|
|
8
|
+
placeholder: {
|
|
9
|
+
default: "请输入代码内容",
|
|
10
|
+
json: "请输入 JSON 格式的数据",
|
|
11
|
+
java: "请输入 Java 代码",
|
|
12
|
+
sql: "请输入 SQL 语句",
|
|
13
|
+
yaml: "请输入 YAML 内容",
|
|
14
|
+
xml: "请输入 XML 内容",
|
|
15
|
+
python: "请输入 Python 代码",
|
|
16
|
+
javascript: "请输入 JavaScript/TypeScript 代码"
|
|
17
|
+
},
|
|
18
|
+
info: {
|
|
19
|
+
length: "长度",
|
|
20
|
+
lines: "行数",
|
|
21
|
+
cursor: "光标"
|
|
22
|
+
},
|
|
23
|
+
action: {
|
|
24
|
+
copy: "复制",
|
|
25
|
+
copied: "已复制"
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
export {
|
|
31
|
+
a as default
|
|
32
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--gsc-basic-primary-color: #2c9cfa;--gsc-basic-border-color: #eee;--gsc-basic-border-radius-base: 4px}.dark{--gsc-basic-border-color: #303030}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=(e,o)=>{const t=e.__vccOpts||e;for(const[r,s]of o)t[r]=s;return t};exports.default=u;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("./src/index.js"),e=require("./src/ConfigProvider/src/constants.js"),o=require("./src/ConfigProvider/src/useGlobalConfig.js"),r=require("./src/ConfigProvider/index.js"),s=require("./src/CodeEditor/index.js"),c=require("./src/ScaleScreen/index.js"),l=require("./src/VideoBackground/index.js"),d=require("./src/locale/lang/zh-CN.js"),a=require("./src/locale/lang/en-US.js"),u=require("./src/locale/lang/ja-JP.js"),f={install:t=>{for(const i in n)t.use(n[i])}};exports.configProviderContextKey=e.configProviderContextKey;exports.defaultInitialZIndex=e.defaultInitialZIndex;exports.defaultNamespace=e.defaultNamespace;exports.localeContextKey=e.localeContextKey;exports.sizeInjectionKey=e.sizeInjectionKey;exports.zIndexContextKey=e.zIndexContextKey;exports.provideGlobalConfig=o.provideGlobalConfig;exports.useGlobalComponentSettings=o.useGlobalComponentSettings;exports.useGlobalConfig=o.useGlobalConfig;exports.GscConfigProvider=r.GscConfigProvider;exports.GscCodeEditor=s.GscCodeEditor;exports.GscScaleScreen=c.GscScaleScreen;exports.GscVideoBackground=l.GscVideoBackground;exports.zhCN=d.default;exports.enUS=a.default;exports.jaJP=u.default;exports.default=f;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("../../state/dist/index.js"),g=require("../../view/dist/index.js"),F=require("../../language/dist/index.js");class X{constructor(e,t,n,o){this.state=e,this.pos=t,this.explicit=n,this.view=o,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let t=F.syntaxTree(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),n=Math.max(t.from,this.pos-250),o=t.text.slice(n-t.from,this.pos-t.from),s=o.search(fe(e,!1));return s<0?null:{from:n+s,to:this.pos,text:o.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t,n){e=="abort"&&this.abortListeners&&(this.abortListeners.push(t),n&&n.onDocChange&&(this.abortOnDocChange=!0))}}function te(i){let e=Object.keys(i).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function Oe(i){let e=Object.create(null),t=Object.create(null);for(let{label:o}of i){e[o[0]]=!0;for(let s=1;s<o.length;s++)t[o[s]]=!0}let n=te(e)+te(t)+"*$";return[new RegExp("^"+n),new RegExp(n)]}function ae(i){let e=i.map(o=>typeof o=="string"?{label:o}:o),[t,n]=e.every(o=>/^\w+$/.test(o.label))?[/\w*$/,/\w+$/]:Oe(e);return o=>{let s=o.matchBefore(n);return s||o.explicit?{from:s?s.from:o.pos,options:e,validFor:t}:null}}function De(i,e){return t=>{for(let n=F.syntaxTree(t.state).resolveInner(t.pos,-1);n;n=n.parent){if(i.indexOf(n.name)>-1)return null;if(n.type.isTop)break}return e(t)}}class ie{constructor(e,t,n,o){this.completion=e,this.source=t,this.match=n,this.score=o}}function P(i){return i.selection.main.from}function fe(i,e){var t;let{source:n}=i,o=e&&n[0]!="^",s=n[n.length-1]!="$";return!o&&!s?i:new RegExp(`${o?"^":""}(?:${n})${s?"$":""}`,(t=i.flags)!==null&&t!==void 0?t:i.ignoreCase?"i":"")}const W=p.Annotation.define();function he(i,e,t,n){let{main:o}=i.selection,s=t-o.from,l=n-o.from;return{...i.changeByRange(c=>{if(c!=o&&t!=n&&i.sliceDoc(c.from+s,c.from+l)!=i.sliceDoc(t,n))return{range:c};let r=i.toText(e);return{changes:{from:c.from+s,to:n==o.from?c.to:c.from+l,insert:r},range:p.EditorSelection.cursor(c.from+s+r.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const ne=new WeakMap;function Me(i){if(!Array.isArray(i))return i;let e=ne.get(i);return e||ne.set(i,e=ae(i)),e}const V=p.StateEffect.define(),k=p.StateEffect.define();class Re{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let t=0;t<e.length;){let n=p.codePointAt(e,t),o=p.codePointSize(n);this.chars.push(n);let s=e.slice(t,t+o),l=s.toUpperCase();this.folded.push(p.codePointAt(l==s?s.toLowerCase():l,0)),t+=o}this.astral=e.length!=this.chars.length}ret(e,t){return this.score=e,this.matched=t,this}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return null;let{chars:t,folded:n,any:o,precise:s,byWord:l}=this;if(t.length==1){let m=p.codePointAt(e,0),T=p.codePointSize(m),v=T==e.length?0:-100;if(m!=t[0])if(m==n[0])v+=-200;else return null;return this.ret(v,[0,T])}let c=e.indexOf(this.pattern);if(c==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let r=t.length,h=0;if(c<0){for(let m=0,T=Math.min(e.length,200);m<T&&h<r;){let v=p.codePointAt(e,m);(v==t[h]||v==n[h])&&(o[h++]=m),m+=p.codePointSize(v)}if(h<r)return null}let a=0,f=0,d=!1,u=0,y=-1,x=-1,M=/[a-z]/.test(e),E=!0;for(let m=0,T=Math.min(e.length,200),v=0;m<T&&f<r;){let C=p.codePointAt(e,m);c<0&&(a<r&&C==t[a]&&(s[a++]=m),u<r&&(C==t[u]||C==n[u]?(u==0&&(y=m),x=m+1,u++):u=0));let z,q=C<255?C>=48&&C<=57||C>=97&&C<=122?2:C>=65&&C<=90?1:0:(z=p.fromCodePoint(C))!=z.toLowerCase()?1:z!=z.toUpperCase()?2:0;(!m||q==1&&M||v==0&&q!=0)&&(t[f]==C||n[f]==C&&(d=!0)?l[f++]=m:l.length&&(E=!1)),v=q,m+=p.codePointSize(C)}return f==r&&l[0]==0&&E?this.result(-100+(d?-200:0),l,e):u==r&&y==0?this.ret(-200-e.length+(x==e.length?0:-100),[0,x]):c>-1?this.ret(-700-e.length,[c,c+this.pattern.length]):u==r?this.ret(-900-e.length,[y,x]):f==r?this.result(-100+(d?-200:0)+-700+(E?0:-1100),l,e):t.length==2?null:this.result((o[0]?-700:0)+-200+-1100,o,e)}result(e,t,n){let o=[],s=0;for(let l of t){let c=l+(this.astral?p.codePointSize(p.codePointAt(n,l)):1);s&&o[s-1]==l?o[s-1]=c:(o[s++]=l,o[s++]=c)}return this.ret(e-n.length,o)}}class ke{constructor(e){this.pattern=e,this.matched=[],this.score=0,this.folded=e.toLowerCase()}match(e){if(e.length<this.pattern.length)return null;let t=e.slice(0,this.pattern.length),n=t==this.pattern?0:t.toLowerCase()==this.folded?-200:null;return n==null?null:(this.matched=[0,t.length],this.score=n+(e.length==this.pattern.length?0:-100),this)}}const b=p.Facet.define({combine(i){return p.combineConfig(i,{activateOnTyping:!0,activateOnCompletion:()=>!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:Le,filterStrict:!1,compareCompletions:(e,t)=>(e.sortText||e.label).localeCompare(t.sortText||t.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>n=>oe(e(n),t(n)),optionClass:(e,t)=>n=>oe(e(n),t(n)),addToOptions:(e,t)=>e.concat(t),filterStrict:(e,t)=>e||t})}});function oe(i,e){return i?e?i+" "+e:i:e}function Le(i,e,t,n,o,s){let l=i.textDirection==g.Direction.RTL,c=l,r=!1,h="top",a,f,d=e.left-o.left,u=o.right-e.right,y=n.right-n.left,x=n.bottom-n.top;if(c&&d<Math.min(y,u)?c=!1:!c&&u<Math.min(y,d)&&(c=!0),y<=(c?d:u))a=Math.max(o.top,Math.min(t.top,o.bottom-x))-e.top,f=Math.min(400,c?d:u);else{r=!0,f=Math.min(400,(l?e.right:o.right-e.left)-30);let m=o.bottom-e.bottom;m>=x||m>e.top?a=t.bottom-e.top:(h="bottom",a=e.bottom-t.top)}let M=(e.bottom-e.top)/s.offsetHeight,E=(e.right-e.left)/s.offsetWidth;return{style:`${h}: ${a/M}px; max-width: ${f/E}px`,class:"cm-completionInfo-"+(r?l?"left-narrow":"right-narrow":c?"left":"right")}}function Be(i){let e=i.addToOptions.slice();return i.icons&&e.push({render(t){let n=document.createElement("div");return n.classList.add("cm-completionIcon"),t.type&&n.classList.add(...t.type.split(/\s+/g).map(o=>"cm-completionIcon-"+o)),n.setAttribute("aria-hidden","true"),n},position:20}),e.push({render(t,n,o,s){let l=document.createElement("span");l.className="cm-completionLabel";let c=t.displayLabel||t.label,r=0;for(let h=0;h<s.length;){let a=s[h++],f=s[h++];a>r&&l.appendChild(document.createTextNode(c.slice(r,a)));let d=l.appendChild(document.createElement("span"));d.appendChild(document.createTextNode(c.slice(a,f))),d.className="cm-completionMatchedText",r=f}return r<c.length&&l.appendChild(document.createTextNode(c.slice(r))),l},position:50},{render(t){if(!t.detail)return null;let n=document.createElement("span");return n.className="cm-completionDetail",n.textContent=t.detail,n},position:80}),e.sort((t,n)=>t.position-n.position).map(t=>t.render)}function K(i,e,t){if(i<=t)return{from:0,to:i};if(e<0&&(e=0),e<=i>>1){let o=Math.floor(e/t);return{from:o*t,to:(o+1)*t}}let n=Math.floor((i-e)/t);return{from:i-(n+1)*t,to:i-n*t}}class Fe{constructor(e,t,n){this.view=e,this.stateField=t,this.applyCompletion=n,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:r=>this.placeInfo(r),key:this},this.space=null,this.currentClass="";let o=e.state.field(t),{options:s,selected:l}=o.open,c=e.state.facet(b);this.optionContent=Be(c),this.optionClass=c.optionClass,this.tooltipClass=c.tooltipClass,this.range=K(s.length,l,c.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",r=>{let{options:h}=e.state.field(t).open;for(let a=r.target,f;a&&a!=this.dom;a=a.parentNode)if(a.nodeName=="LI"&&(f=/-(\d+)$/.exec(a.id))&&+f[1]<h.length){this.applyCompletion(e,h[+f[1]]),r.preventDefault();return}}),this.dom.addEventListener("focusout",r=>{let h=e.state.field(this.stateField,!1);h&&h.tooltip&&e.state.facet(b).closeOnBlur&&r.relatedTarget!=e.contentDOM&&e.dispatch({effects:k.of(null)})}),this.showOptions(s,o.id)}mount(){this.updateSel()}showOptions(e,t){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(e,t,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(e){var t;let n=e.state.field(this.stateField),o=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),n!=o){let{options:s,selected:l,disabled:c}=n.open;(!o.open||o.open.options!=s)&&(this.range=K(s.length,l,e.state.facet(b).maxRenderedOptions),this.showOptions(s,n.id)),this.updateSel(),c!=((t=o.open)===null||t===void 0?void 0:t.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!c)}}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let n of this.currentClass.split(" "))n&&this.dom.classList.remove(n);for(let n of t.split(" "))n&&this.dom.classList.add(n);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;(t.selected>-1&&t.selected<this.range.from||t.selected>=this.range.to)&&(this.range=K(t.options.length,t.selected,this.view.state.facet(b).maxRenderedOptions),this.showOptions(t.options,e.id));let n=this.updateSelectedOption(t.selected);if(n){this.destroyInfo();let{completion:o}=t.options[t.selected],{info:s}=o;if(!s)return;let l=typeof s=="string"?document.createTextNode(s):s(o);if(!l)return;"then"in l?l.then(c=>{c&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(c,o)}).catch(c=>g.logException(this.view.state,c,"completion info")):(this.addInfoPane(l,o),n.setAttribute("aria-describedby",this.info.id))}}addInfoPane(e,t){this.destroyInfo();let n=this.info=document.createElement("div");if(n.className="cm-tooltip cm-completionInfo",n.id="cm-completionInfo-"+Math.floor(Math.random()*65535).toString(16),e.nodeType!=null)n.appendChild(e),this.infoDestroy=null;else{let{dom:o,destroy:s}=e;n.appendChild(o),this.infoDestroy=s||null}this.dom.appendChild(n),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let n=this.list.firstChild,o=this.range.from;n;n=n.nextSibling,o++)n.nodeName!="LI"||!n.id?o--:o==e?n.hasAttribute("aria-selected")||(n.setAttribute("aria-selected","true"),t=n):n.hasAttribute("aria-selected")&&(n.removeAttribute("aria-selected"),n.removeAttribute("aria-describedby"));return t&&ze(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),n=this.info.getBoundingClientRect(),o=e.getBoundingClientRect(),s=this.space;if(!s){let l=this.dom.ownerDocument.documentElement;s={left:0,top:0,right:l.clientWidth,bottom:l.clientHeight}}return o.top>Math.min(s.bottom,t.bottom)-10||o.bottom<Math.max(s.top,t.top)+10?null:this.view.state.facet(b).positionInfo(this.view,t,o,n,s,this.dom)}placeInfo(e){this.info&&(e?(e.style&&(this.info.style.cssText=e.style),this.info.className="cm-tooltip cm-completionInfo "+(e.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(e,t,n){const o=document.createElement("ul");o.id=t,o.setAttribute("role","listbox"),o.setAttribute("aria-expanded","true"),o.setAttribute("aria-label",this.view.state.phrase("Completions")),o.addEventListener("mousedown",l=>{l.target==o&&l.preventDefault()});let s=null;for(let l=n.from;l<n.to;l++){let{completion:c,match:r}=e[l],{section:h}=c;if(h){let d=typeof h=="string"?h:h.name;if(d!=s&&(l>n.from||n.from==0))if(s=d,typeof h!="string"&&h.header)o.appendChild(h.header(h));else{let u=o.appendChild(document.createElement("completion-section"));u.textContent=d}}const a=o.appendChild(document.createElement("li"));a.id=t+"-"+l,a.setAttribute("role","option");let f=this.optionClass(c);f&&(a.className=f);for(let d of this.optionContent){let u=d(c,this.view.state,this.view,r);u&&a.appendChild(u)}}return n.from&&o.classList.add("cm-completionListIncompleteTop"),n.to<e.length&&o.classList.add("cm-completionListIncompleteBottom"),o}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function $e(i,e){return t=>new Fe(t,i,e)}function ze(i,e){let t=i.getBoundingClientRect(),n=e.getBoundingClientRect(),o=t.height/i.offsetHeight;n.top<t.top?i.scrollTop-=(t.top-n.top)/o:n.bottom>t.bottom&&(i.scrollTop+=(n.bottom-t.bottom)/o)}function se(i){return(i.boost||0)*100+(i.apply?10:0)+(i.info?5:0)+(i.type?1:0)}function Ne(i,e){let t=[],n=null,o=null,s=a=>{t.push(a);let{section:f}=a.completion;if(f){n||(n=[]);let d=typeof f=="string"?f:f.name;n.some(u=>u.name==d)||n.push(typeof f=="string"?{name:d}:f)}},l=e.facet(b);for(let a of i)if(a.hasResult()){let f=a.result.getMatch;if(a.result.filter===!1)for(let d of a.result.options)s(new ie(d,a.source,f?f(d):[],1e9-t.length));else{let d=e.sliceDoc(a.from,a.to),u,y=l.filterStrict?new ke(d):new Re(d);for(let x of a.result.options)if(u=y.match(x.label)){let M=x.displayLabel?f?f(x,u.matched):[]:u.matched,E=u.score+(x.boost||0);if(s(new ie(x,a.source,M,E)),typeof x.section=="object"&&x.section.rank==="dynamic"){let{name:m}=x.section;o||(o=Object.create(null)),o[m]=Math.max(E,o[m]||-1e9)}}}}if(n){let a=Object.create(null),f=0,d=(u,y)=>(u.rank==="dynamic"&&y.rank==="dynamic"?o[y.name]-o[u.name]:0)||(typeof u.rank=="number"?u.rank:1e9)-(typeof y.rank=="number"?y.rank:1e9)||(u.name<y.name?-1:1);for(let u of n.sort(d))f-=1e5,a[u.name]=f;for(let u of t){let{section:y}=u.completion;y&&(u.score+=a[typeof y=="string"?y:y.name])}}let c=[],r=null,h=l.compareCompletions;for(let a of t.sort((f,d)=>d.score-f.score||h(f.completion,d.completion))){let f=a.completion;!r||r.label!=f.label||r.detail!=f.detail||r.type!=null&&f.type!=null&&r.type!=f.type||r.apply!=f.apply||r.boost!=f.boost?c.push(a):se(a.completion)>se(r)&&(c[c.length-1]=a),r=a.completion}return c}class A{constructor(e,t,n,o,s,l){this.options=e,this.attrs=t,this.tooltip=n,this.timestamp=o,this.selected=s,this.disabled=l}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new A(this.options,le(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,n,o,s,l){if(o&&!l&&e.some(h=>h.isPending))return o.setDisabled();let c=Ne(e,t);if(!c.length)return o&&e.some(h=>h.isPending)?o.setDisabled():null;let r=t.facet(b).selectOnOpen?0:-1;if(o&&o.selected!=r&&o.selected!=-1){let h=o.options[o.selected].completion;for(let a=0;a<c.length;a++)if(c[a].completion==h){r=a;break}}return new A(c,le(n,r),{pos:e.reduce((h,a)=>a.hasResult()?Math.min(h,a.from):h,1e8),create:Ke,above:s.aboveCursor},o?o.timestamp:Date.now(),r,!1)}map(e){return new A(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new A(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class U{constructor(e,t,n){this.active=e,this.id=t,this.open=n}static start(){return new U(je,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,n=t.facet(b),s=(n.override||t.languageDataAt("autocomplete",P(t)).map(Me)).map(r=>(this.active.find(a=>a.source==r)||new w(r,this.active.some(a=>a.state!=0)?1:0)).update(e,n));s.length==this.active.length&&s.every((r,h)=>r==this.active[h])&&(s=this.active);let l=this.open,c=e.effects.some(r=>r.is(Y));l&&e.docChanged&&(l=l.map(e.changes)),e.selection||s.some(r=>r.hasResult()&&e.changes.touchesRange(r.from,r.to))||!Ve(s,this.active)||c?l=A.build(s,t,this.id,l,n,c):l&&l.disabled&&!s.some(r=>r.isPending)&&(l=null),!l&&s.every(r=>!r.isPending)&&s.some(r=>r.hasResult())&&(s=s.map(r=>r.hasResult()?new w(r.source,0):r));for(let r of e.effects)r.is(de)&&(l=l&&l.setSelected(r.value,this.id));return s==this.active&&l==this.open?this:new U(s,this.id,l)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?Ue:We}}function Ve(i,e){if(i==e)return!0;for(let t=0,n=0;;){for(;t<i.length&&!i[t].hasResult();)t++;for(;n<e.length&&!e[n].hasResult();)n++;let o=t==i.length,s=n==e.length;if(o||s)return o==s;if(i[t++].result!=e[n++].result)return!1}}const Ue={"aria-autocomplete":"list"},We={};function le(i,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":i};return e>-1&&(t["aria-activedescendant"]=i+"-"+e),t}const je=[];function pe(i,e){if(i.isUserEvent("input.complete")){let n=i.annotation(W);if(n&&e.activateOnCompletion(n))return 12}let t=i.isUserEvent("input.type");return t&&e.activateOnTyping?5:t?1:i.isUserEvent("delete.backward")?2:i.selection?8:i.docChanged?16:0}class w{constructor(e,t,n=!1){this.source=e,this.state=t,this.explicit=n}hasResult(){return!1}get isPending(){return this.state==1}update(e,t){let n=pe(e,t),o=this;(n&8||n&16&&this.touches(e))&&(o=new w(o.source,0)),n&4&&o.state==0&&(o=new w(this.source,1)),o=o.updateFor(e,n);for(let s of e.effects)if(s.is(V))o=new w(o.source,1,s.value);else if(s.is(k))o=new w(o.source,0);else if(s.is(Y))for(let l of s.value)l.source==o.source&&(o=l);return o}updateFor(e,t){return this.map(e.changes)}map(e){return this}touches(e){return e.changes.touchesRange(P(e.state))}}class O extends w{constructor(e,t,n,o,s,l){super(e,3,t),this.limit=n,this.result=o,this.from=s,this.to=l}hasResult(){return!0}updateFor(e,t){var n;if(!(t&3))return this.map(e.changes);let o=this.result;o.map&&!e.changes.empty&&(o=o.map(o,e.changes));let s=e.changes.mapPos(this.from),l=e.changes.mapPos(this.to,1),c=P(e.state);if(c>l||!o||t&2&&(P(e.startState)==this.from||c<this.limit))return new w(this.source,t&4?1:0);let r=e.changes.mapPos(this.limit);return qe(o.validFor,e.state,s,l)?new O(this.source,this.explicit,r,o,s,l):o.update&&(o=o.update(o,s,l,new X(e.state,c,!1)))?new O(this.source,this.explicit,r,o,o.from,(n=o.to)!==null&&n!==void 0?n:P(e.state)):new w(this.source,1,this.explicit)}map(e){return e.empty?this:(this.result.map?this.result.map(this.result,e):this.result)?new O(this.source,this.explicit,e.mapPos(this.limit),this.result,e.mapPos(this.from),e.mapPos(this.to,1)):new w(this.source,0)}touches(e){return e.changes.touchesRange(this.from,this.to)}}function qe(i,e,t,n){if(!i)return!1;let o=e.sliceDoc(t,n);return typeof i=="function"?i(o,t,n,e):fe(i,!0).test(o)}const Y=p.StateEffect.define({map(i,e){return i.map(t=>t.map(e))}}),de=p.StateEffect.define(),S=p.StateField.define({create(){return U.start()},update(i,e){return i.update(e)},provide:i=>[g.showTooltip.from(i,e=>e.tooltip),g.EditorView.contentAttributes.from(i,e=>e.attrs)]});function G(i,e){const t=e.completion.apply||e.completion.label;let n=i.state.field(S).active.find(o=>o.source==e.source);return n instanceof O?(typeof t=="string"?i.dispatch({...he(i.state,t,n.from,n.to),annotations:W.of(e.completion)}):t(i,e.completion,n.from,n.to),!0):!1}const Ke=$e(S,G);function R(i,e="option"){return t=>{let n=t.state.field(S,!1);if(!n||!n.open||n.open.disabled||Date.now()-n.open.timestamp<t.state.facet(b).interactionDelay)return!1;let o=1,s;e=="page"&&(s=g.getTooltip(t,n.open.tooltip))&&(o=Math.max(2,Math.floor(s.dom.offsetHeight/s.dom.querySelector("li").offsetHeight)-1));let{length:l}=n.open.options,c=n.open.selected>-1?n.open.selected+o*(i?1:-1):i?0:l-1;return c<0?c=e=="page"?0:l-1:c>=l&&(c=e=="page"?l-1:0),t.dispatch({effects:de.of(c)}),!0}}const ue=i=>{let e=i.state.field(S,!1);return i.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<i.state.facet(b).interactionDelay?!1:G(i,e.open.options[e.open.selected])},N=i=>i.state.field(S,!1)?(i.dispatch({effects:V.of(!0)}),!0):!1,me=i=>{let e=i.state.field(S,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(i.dispatch({effects:k.of(null)}),!0)};class He{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const Qe=50,Xe=1e3,Ye=g.ViewPlugin.fromClass(class{constructor(i){this.view=i,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let e of i.state.field(S).active)e.isPending&&this.startQuery(e)}update(i){let e=i.state.field(S),t=i.state.facet(b);if(!i.selectionSet&&!i.docChanged&&i.startState.field(S)==e)return;let n=i.transactions.some(s=>{let l=pe(s,t);return l&8||(s.selection||s.docChanged)&&!(l&3)});for(let s=0;s<this.running.length;s++){let l=this.running[s];if(n||l.context.abortOnDocChange&&i.docChanged||l.updates.length+i.transactions.length>Qe&&Date.now()-l.time>Xe){for(let c of l.context.abortListeners)try{c()}catch(r){g.logException(this.view.state,r)}l.context.abortListeners=null,this.running.splice(s--,1)}else l.updates.push(...i.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),i.transactions.some(s=>s.effects.some(l=>l.is(V)))&&(this.pendingStart=!0);let o=this.pendingStart?50:t.activateOnTypingDelay;if(this.debounceUpdate=e.active.some(s=>s.isPending&&!this.running.some(l=>l.active.source==s.source))?setTimeout(()=>this.startUpdate(),o):-1,this.composing!=0)for(let s of i.transactions)s.isUserEvent("input.type")?this.composing=2:this.composing==2&&s.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:i}=this.view,e=i.field(S);for(let t of e.active)t.isPending&&!this.running.some(n=>n.active.source==t.source)&&this.startQuery(t);this.running.length&&e.open&&e.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(b).updateSyncTime))}startQuery(i){let{state:e}=this.view,t=P(e),n=new X(e,t,i.explicit,this.view),o=new He(i,n);this.running.push(o),Promise.resolve(i.source(n)).then(s=>{o.context.aborted||(o.done=s||null,this.scheduleAccept())},s=>{this.view.dispatch({effects:k.of(null)}),g.logException(this.view.state,s)})}scheduleAccept(){this.running.every(i=>i.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(b).updateSyncTime))}accept(){var i;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(b),n=this.view.state.field(S);for(let o=0;o<this.running.length;o++){let s=this.running[o];if(s.done===void 0)continue;if(this.running.splice(o--,1),s.done){let c=P(s.updates.length?s.updates[0].startState:this.view.state),r=Math.min(c,s.done.from+(s.active.explicit?0:1)),h=new O(s.active.source,s.active.explicit,r,s.done,s.done.from,(i=s.done.to)!==null&&i!==void 0?i:c);for(let a of s.updates)h=h.update(a,t);if(h.hasResult()){e.push(h);continue}}let l=n.active.find(c=>c.source==s.active.source);if(l&&l.isPending)if(s.done==null){let c=new w(s.active.source,0);for(let r of s.updates)c=c.update(r,t);c.isPending||e.push(c)}else this.startQuery(l)}(e.length||n.open&&n.open.disabled)&&this.view.dispatch({effects:Y.of(e)})}},{eventHandlers:{blur(i){let e=this.view.state.field(S,!1);if(e&&e.tooltip&&this.view.state.facet(b).closeOnBlur){let t=e.open&&g.getTooltip(this.view,e.open.tooltip);(!t||!t.dom.contains(i.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:k.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:V.of(!1)}),20),this.composing=0}}}),Ge=typeof navigator=="object"&&/Win/.test(navigator.platform),Je=p.Prec.highest(g.EditorView.domEventHandlers({keydown(i,e){let t=e.state.field(S,!1);if(!t||!t.open||t.open.disabled||t.open.selected<0||i.key.length>1||i.ctrlKey&&!(Ge&&i.altKey)||i.metaKey)return!1;let n=t.open.options[t.open.selected],o=t.active.find(l=>l.source==n.source),s=n.completion.commitCharacters||o.result.commitCharacters;return s&&s.indexOf(i.key)>-1&&G(e,n),!1}})),ge=g.EditorView.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class Ze{constructor(e,t,n,o){this.field=e,this.line=t,this.from=n,this.to=o}}class J{constructor(e,t,n){this.field=e,this.from=t,this.to=n}map(e){let t=e.mapPos(this.from,-1,p.MapMode.TrackDel),n=e.mapPos(this.to,1,p.MapMode.TrackDel);return t==null||n==null?null:new J(this.field,t,n)}}class Z{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let n=[],o=[t],s=e.doc.lineAt(t),l=/^\s*/.exec(s.text)[0];for(let r of this.lines){if(n.length){let h=l,a=/^\t*/.exec(r)[0].length;for(let f=0;f<a;f++)h+=e.facet(F.indentUnit);o.push(t+h.length-a),r=h+r.slice(a)}n.push(r),t+=r.length+1}let c=this.fieldPositions.map(r=>new J(r.field,o[r.line]+r.from,o[r.line]+r.to));return{text:n,ranges:c}}static parse(e){let t=[],n=[],o=[],s;for(let l of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^{}]*))?|((?:\\[{}]|[^{}])*))\}/.exec(l);){let c=s[1]?+s[1]:null,r=s[2]||s[3]||"",h=-1,a=r.replace(/\\[{}]/g,f=>f[1]);for(let f=0;f<t.length;f++)(c!=null?t[f].seq==c:a&&t[f].name==a)&&(h=f);if(h<0){let f=0;for(;f<t.length&&(c==null||t[f].seq!=null&&t[f].seq<c);)f++;t.splice(f,0,{seq:c,name:a}),h=f;for(let d of o)d.field>=h&&d.field++}for(let f of o)if(f.line==n.length&&f.from>s.index){let d=s[2]?3+(s[1]||"").length:2;f.from-=d,f.to-=d}o.push(new Ze(h,n.length,s.index,s.index+a.length)),l=l.slice(0,s.index)+r+l.slice(s.index+s[0].length)}l=l.replace(/\\([{}])/g,(c,r,h)=>{for(let a of o)a.line==n.length&&a.from>h&&(a.from--,a.to--);return r}),n.push(l)}return new Z(n,o)}}let _e=g.Decoration.widget({widget:new class extends g.WidgetType{toDOM(){let i=document.createElement("span");return i.className="cm-snippetFieldPosition",i}ignoreEvent(){return!1}}}),et=g.Decoration.mark({class:"cm-snippetField"});class D{constructor(e,t){this.ranges=e,this.active=t,this.deco=g.Decoration.set(e.map(n=>(n.from==n.to?_e:et).range(n.from,n.to)),!0)}map(e){let t=[];for(let n of this.ranges){let o=n.map(e);if(!o)return null;t.push(o)}return new D(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(n=>n.field==this.active&&n.from<=t.from&&n.to>=t.to))}}const $=p.StateEffect.define({map(i,e){return i&&i.map(e)}}),tt=p.StateEffect.define(),L=p.StateField.define({create(){return null},update(i,e){for(let t of e.effects){if(t.is($))return t.value;if(t.is(tt)&&i)return new D(i.ranges,t.value)}return i&&e.docChanged&&(i=i.map(e.changes)),i&&e.selection&&!i.selectionInsideField(e.selection)&&(i=null),i},provide:i=>g.EditorView.decorations.from(i,e=>e?e.deco:g.Decoration.none)});function _(i,e){return p.EditorSelection.create(i.filter(t=>t.field==e).map(t=>p.EditorSelection.range(t.from,t.to)))}function ye(i){let e=Z.parse(i);return(t,n,o,s)=>{let{text:l,ranges:c}=e.instantiate(t.state,o),{main:r}=t.state.selection,h={changes:{from:o,to:s==r.from?r.to:s,insert:p.Text.of(l)},scrollIntoView:!0,annotations:n?[W.of(n),p.Transaction.userEvent.of("input.complete")]:void 0};if(c.length&&(h.selection=_(c,0)),c.some(a=>a.field>0)){let a=new D(c,0),f=h.effects=[$.of(a)];t.state.field(L,!1)===void 0&&f.push(p.StateEffect.appendConfig.of([L,nt,st,ge]))}t.dispatch(t.state.update(h))}}function be(i){return({state:e,dispatch:t})=>{let n=e.field(L,!1);if(!n||i<0&&n.active==0)return!1;let o=n.active+i,s=i>0&&!n.ranges.some(l=>l.field==o+i);return t(e.update({selection:_(n.ranges,o),effects:$.of(s?null:new D(n.ranges,o)),scrollIntoView:!0})),!0}}const xe=({state:i,dispatch:e})=>i.field(L,!1)?(e(i.update({effects:$.of(null)})),!0):!1,Ce=be(1),Se=be(-1),it=[{key:"Tab",run:Ce,shift:Se},{key:"Escape",run:xe}],Q=p.Facet.define({combine(i){return i.length?i[0]:it}}),nt=p.Prec.highest(g.keymap.compute([Q],i=>i.facet(Q)));function ot(i,e){return{...e,apply:ye(i)}}const st=g.EditorView.domEventHandlers({mousedown(i,e){let t=e.state.field(L,!1),n;if(!t||(n=e.posAtCoords({x:i.clientX,y:i.clientY}))==null)return!1;let o=t.ranges.find(s=>s.from<=n&&s.to>=n);return!o||o.field==t.active?!1:(e.dispatch({selection:_(t.ranges,o.field),effects:$.of(t.ranges.some(s=>s.field>o.field)?new D(t.ranges,o.field):null),scrollIntoView:!0}),!0)}}),B={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},I=p.StateEffect.define({map(i,e){let t=e.mapPos(i,-1,p.MapMode.TrackAfter);return t??void 0}}),ee=new class extends p.RangeValue{};ee.startSide=1;ee.endSide=-1;const we=p.StateField.define({create(){return p.RangeSet.empty},update(i,e){if(i=i.map(e.changes),e.selection){let t=e.state.doc.lineAt(e.selection.main.head);i=i.update({filter:n=>n>=t.from&&n<=t.to})}for(let t of e.effects)t.is(I)&&(i=i.update({add:[ee.range(t.value,t.value+1)]}));return i}});function lt(){return[ct,we]}const H="()[]{}<>«»»«[]{}";function ve(i){for(let e=0;e<H.length;e+=2)if(H.charCodeAt(e)==i)return H.charAt(e+1);return p.fromCodePoint(i<128?i:i+1)}function Ee(i,e){return i.languageDataAt("closeBrackets",e)[0]||B}const rt=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),ct=g.EditorView.inputHandler.of((i,e,t,n)=>{if((rt?i.composing:i.compositionStarted)||i.state.readOnly)return!1;let o=i.state.selection.main;if(n.length>2||n.length==2&&p.codePointSize(p.codePointAt(n,0))==1||e!=o.from||t!=o.to)return!1;let s=Pe(i.state,n);return s?(i.dispatch(s),!0):!1}),Ie=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let n=Ee(i,i.selection.main.head).brackets||B.brackets,o=null,s=i.changeByRange(l=>{if(l.empty){let c=ft(i.doc,l.head);for(let r of n)if(r==c&&j(i.doc,l.head)==ve(p.codePointAt(r,0)))return{changes:{from:l.head-r.length,to:l.head+r.length},range:p.EditorSelection.cursor(l.head-r.length)}}return{range:o=l}});return o||e(i.update(s,{scrollIntoView:!0,userEvent:"delete.backward"})),!o},at=[{key:"Backspace",run:Ie}];function Pe(i,e){let t=Ee(i,i.selection.main.head),n=t.brackets||B.brackets;for(let o of n){let s=ve(p.codePointAt(o,0));if(e==o)return s==o?dt(i,o,n.indexOf(o+o+o)>-1,t):ht(i,o,s,t.before||B.before);if(e==s&&Te(i,i.selection.main.from))return pt(i,o,s)}return null}function Te(i,e){let t=!1;return i.field(we).between(0,i.doc.length,n=>{n==e&&(t=!0)}),t}function j(i,e){let t=i.sliceString(e,e+2);return t.slice(0,p.codePointSize(p.codePointAt(t,0)))}function ft(i,e){let t=i.sliceString(e-2,e);return p.codePointSize(p.codePointAt(t,0))==t.length?t:t.slice(1)}function ht(i,e,t,n){let o=null,s=i.changeByRange(l=>{if(!l.empty)return{changes:[{insert:e,from:l.from},{insert:t,from:l.to}],effects:I.of(l.to+e.length),range:p.EditorSelection.range(l.anchor+e.length,l.head+e.length)};let c=j(i.doc,l.head);return!c||/\s/.test(c)||n.indexOf(c)>-1?{changes:{insert:e+t,from:l.head},effects:I.of(l.head+e.length),range:p.EditorSelection.cursor(l.head+e.length)}:{range:o=l}});return o?null:i.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function pt(i,e,t){let n=null,o=i.changeByRange(s=>s.empty&&j(i.doc,s.head)==t?{changes:{from:s.head,to:s.head+t.length,insert:t},range:p.EditorSelection.cursor(s.head+t.length)}:n={range:s});return n?null:i.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function dt(i,e,t,n){let o=n.stringPrefixes||B.stringPrefixes,s=null,l=i.changeByRange(c=>{if(!c.empty)return{changes:[{insert:e,from:c.from},{insert:e,from:c.to}],effects:I.of(c.to+e.length),range:p.EditorSelection.range(c.anchor+e.length,c.head+e.length)};let r=c.head,h=j(i.doc,r),a;if(h==e){if(re(i,r))return{changes:{insert:e+e,from:r},effects:I.of(r+e.length),range:p.EditorSelection.cursor(r+e.length)};if(Te(i,r)){let d=t&&i.sliceDoc(r,r+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:r,to:r+d.length,insert:d},range:p.EditorSelection.cursor(r+d.length)}}}else{if(t&&i.sliceDoc(r-2*e.length,r)==e+e&&(a=ce(i,r-2*e.length,o))>-1&&re(i,a))return{changes:{insert:e+e+e+e,from:r},effects:I.of(r+e.length),range:p.EditorSelection.cursor(r+e.length)};if(i.charCategorizer(r)(h)!=p.CharCategory.Word&&ce(i,r,o)>-1&&!ut(i,r,e,o))return{changes:{insert:e+e,from:r},effects:I.of(r+e.length),range:p.EditorSelection.cursor(r+e.length)}}return{range:s=c}});return s?null:i.update(l,{scrollIntoView:!0,userEvent:"input.type"})}function re(i,e){let t=F.syntaxTree(i).resolveInner(e+1);return t.parent&&t.from==e}function ut(i,e,t,n){let o=F.syntaxTree(i).resolveInner(e,-1),s=n.reduce((l,c)=>Math.max(l,c.length),0);for(let l=0;l<5;l++){let c=i.sliceDoc(o.from,Math.min(o.to,o.from+t.length+s)),r=c.indexOf(t);if(!r||r>-1&&n.indexOf(c.slice(0,r))>-1){let a=o.firstChild;for(;a&&a.from==o.from&&a.to-a.from>t.length+r;){if(i.sliceDoc(a.to-t.length,a.to)==t)return!1;a=a.firstChild}return!0}let h=o.to==e&&o.parent;if(!h)break;o=h}return!1}function ce(i,e,t){let n=i.charCategorizer(e);if(n(i.sliceDoc(e-1,e))!=p.CharCategory.Word)return e;for(let o of t){let s=e-o.length;if(i.sliceDoc(s,e)==o&&n(i.sliceDoc(s-1,s))!=p.CharCategory.Word)return s}return-1}function mt(i={}){return[Je,S,b.of(i),Ye,gt,ge]}const Ae=[{key:"Ctrl-Space",run:N},{mac:"Alt-`",run:N},{mac:"Alt-i",run:N},{key:"Escape",run:me},{key:"ArrowDown",run:R(!0)},{key:"ArrowUp",run:R(!1)},{key:"PageDown",run:R(!0,"page")},{key:"PageUp",run:R(!1,"page")},{key:"Enter",run:ue}],gt=p.Prec.highest(g.keymap.computeN([b],i=>i.facet(b).defaultKeymap?[Ae]:[]));exports.CompletionContext=X;exports.acceptCompletion=ue;exports.autocompletion=mt;exports.clearSnippet=xe;exports.closeBrackets=lt;exports.closeBracketsKeymap=at;exports.closeCompletion=me;exports.completeFromList=ae;exports.completionKeymap=Ae;exports.deleteBracketPair=Ie;exports.ifNotIn=De;exports.insertBracket=Pe;exports.insertCompletionText=he;exports.moveCompletionSelection=R;exports.nextSnippetField=Ce;exports.pickedCompletion=W;exports.prevSnippetField=Se;exports.snippet=ye;exports.snippetCompletion=ot;exports.snippetKeymap=Q;exports.startCompletion=N;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("../../state/dist/index.js"),C=require("../../view/dist/index.js"),h=require("../../language/dist/index.js"),G=require("../../../@lezer/common/dist/index.js"),ae=e=>{let{state:t}=e,r=t.doc.lineAt(t.selection.main.from),n=X(e.state,r.from);return n.line?de(e):n.block?me(e):!1};function Q(e,t){return({state:r,dispatch:n})=>{if(r.readOnly)return!1;let l=e(t,r);return l?(n(r.update(l)),!0):!1}}const de=Q(Ot,0),he=Q(pe,0),me=Q((e,t)=>pe(e,t,bt(t)),0);function X(e,t){let r=e.languageDataAt("commentTokens",t,1);return r.length?r[0]:{}}const E=50;function Tt(e,{open:t,close:r},n,l){let o=e.sliceDoc(n-E,n),i=e.sliceDoc(l,l+E),c=/\s*$/.exec(o)[0].length,s=/^\s*/.exec(i)[0].length,a=o.length-c;if(o.slice(a-t.length,a)==t&&i.slice(s,s+r.length)==r)return{open:{pos:n-c,margin:c&&1},close:{pos:l+s,margin:s&&1}};let f,d;l-n<=2*E?f=d=e.sliceDoc(n,l):(f=e.sliceDoc(n,n+E),d=e.sliceDoc(l-E,l));let g=/^\s*/.exec(f)[0].length,T=/\s*$/.exec(d)[0].length,D=d.length-T-r.length;return f.slice(g,g+t.length)==t&&d.slice(D,D+r.length)==r?{open:{pos:n+g+t.length,margin:/\s/.test(f.charAt(g+t.length))?1:0},close:{pos:l-T-r.length,margin:/\s/.test(d.charAt(D-1))?1:0}}:null}function bt(e){let t=[];for(let r of e.selection.ranges){let n=e.doc.lineAt(r.from),l=r.to<=n.to?n:e.doc.lineAt(r.to);l.from>n.from&&l.from==r.to&&(l=r.to==n.to+1?n:e.doc.lineAt(r.to-1));let o=t.length-1;o>=0&&t[o].to>n.from?t[o].to=l.to:t.push({from:n.from+/^\s*/.exec(n.text)[0].length,to:l.to})}return t}function pe(e,t,r=t.selection.ranges){let n=r.map(o=>X(t,o.from).block);if(!n.every(o=>o))return null;let l=r.map((o,i)=>Tt(t,n[i],o.from,o.to));if(e!=2&&!l.every(o=>o))return{changes:t.changes(r.map((o,i)=>l[i]?[]:[{from:o.from,insert:n[i].open+" "},{from:o.to,insert:" "+n[i].close}]))};if(e!=1&&l.some(o=>o)){let o=[];for(let i=0,c;i<l.length;i++)if(c=l[i]){let s=n[i],{open:a,close:f}=c;o.push({from:a.pos-s.open.length,to:a.pos+a.margin},{from:f.pos-f.margin,to:f.pos+s.close.length})}return{changes:o}}return null}function Ot(e,t,r=t.selection.ranges){let n=[],l=-1;for(let{from:o,to:i}of r){let c=n.length,s=1e9,a=X(t,o).line;if(a){for(let f=o;f<=i;){let d=t.doc.lineAt(f);if(d.from>l&&(o==i||i>d.from)){l=d.from;let g=/^\s*/.exec(d.text)[0].length,T=g==d.length,D=d.text.slice(g,g+a.length)==a?g:-1;g<d.text.length&&g<s&&(s=g),n.push({line:d,comment:D,token:a,indent:g,empty:T,single:!1})}f=d.to+1}if(s<1e9)for(let f=c;f<n.length;f++)n[f].indent<n[f].line.text.length&&(n[f].indent=s);n.length==c+1&&(n[c].single=!0)}}if(e!=2&&n.some(o=>o.comment<0&&(!o.empty||o.single))){let o=[];for(let{line:c,token:s,indent:a,empty:f,single:d}of n)(d||!f)&&o.push({from:c.from+a,insert:s+" "});let i=t.changes(o);return{changes:i,selection:t.selection.map(i,1)}}else if(e!=1&&n.some(o=>o.comment>=0)){let o=[];for(let{line:i,comment:c,token:s}of n)if(c>=0){let a=i.from+c,f=a+s.length;i.text[f-i.from]==" "&&f++,o.push({from:a,to:f})}return{changes:o}}return null}const F=u.Annotation.define(),ge=u.Annotation.define(),ye=u.Facet.define(),ke=u.Facet.define({combine(e){return u.combineConfig(e,{minDepth:100,newGroupDelay:500,joinToEvent:(t,r)=>r},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(t,r)=>(n,l)=>t(n,l)||r(n,l)})}}),Se=u.StateField.define({create(){return A.empty},update(e,t){let r=t.state.facet(ke),n=t.annotation(F);if(n){let s=p.fromTransaction(t,n.selection),a=n.side,f=a==0?e.undone:e.done;return s?f=R(f,f.length,r.minDepth,s):f=Ce(f,t.startState.selection),new A(a==0?n.rest:f,a==0?f:n.rest)}let l=t.annotation(ge);if((l=="full"||l=="before")&&(e=e.isolate()),t.annotation(u.Transaction.addToHistory)===!1)return t.changes.empty?e:e.addMapping(t.changes.desc);let o=p.fromTransaction(t),i=t.annotation(u.Transaction.time),c=t.annotation(u.Transaction.userEvent);return o?e=e.addChanges(o,i,c,r,t):t.selection&&(e=e.addSelection(t.startState.selection,i,c,r.newGroupDelay)),(l=="full"||l=="after")&&(e=e.isolate()),e},toJSON(e){return{done:e.done.map(t=>t.toJSON()),undone:e.undone.map(t=>t.toJSON())}},fromJSON(e){return new A(e.done.map(p.fromJSON),e.undone.map(p.fromJSON))}});function Rt(e={}){return[Se,ke.of(e),C.EditorView.domEventHandlers({beforeinput(t,r){let n=t.inputType=="historyUndo"?Y:t.inputType=="historyRedo"?O:null;return n?(t.preventDefault(),n(r)):!1}})]}function U(e,t){return function({state:r,dispatch:n}){if(!t&&r.readOnly)return!1;let l=r.field(Se,!1);if(!l)return!1;let o=l.pop(e,r,t);return o?(n(o),!0):!1}}const Y=U(0,!1),O=U(1,!1),Be=U(0,!0),Ae=U(1,!0);class p{constructor(t,r,n,l,o){this.changes=t,this.effects=r,this.mapped=n,this.startSelection=l,this.selectionsAfter=o}setSelAfter(t){return new p(this.changes,this.effects,this.mapped,this.startSelection,t)}toJSON(){var t,r,n;return{changes:(t=this.changes)===null||t===void 0?void 0:t.toJSON(),mapped:(r=this.mapped)===null||r===void 0?void 0:r.toJSON(),startSelection:(n=this.startSelection)===null||n===void 0?void 0:n.toJSON(),selectionsAfter:this.selectionsAfter.map(l=>l.toJSON())}}static fromJSON(t){return new p(t.changes&&u.ChangeSet.fromJSON(t.changes),[],t.mapped&&u.ChangeDesc.fromJSON(t.mapped),t.startSelection&&u.EditorSelection.fromJSON(t.startSelection),t.selectionsAfter.map(u.EditorSelection.fromJSON))}static fromTransaction(t,r){let n=y;for(let l of t.startState.facet(ye)){let o=l(t);o.length&&(n=n.concat(o))}return!n.length&&t.changes.empty?null:new p(t.changes.invert(t.startState.doc),n,void 0,r||t.startState.selection,y)}static selection(t){return new p(void 0,y,void 0,void 0,t)}}function R(e,t,r,n){let l=t+1>r+20?t-r-1:0,o=e.slice(l,t);return o.push(n),o}function vt(e,t){let r=[],n=!1;return e.iterChangedRanges((l,o)=>r.push(l,o)),t.iterChangedRanges((l,o,i,c)=>{for(let s=0;s<r.length;){let a=r[s++],f=r[s++];c>=a&&i<=f&&(n=!0)}}),n}function It(e,t){return e.ranges.length==t.ranges.length&&e.ranges.filter((r,n)=>r.empty!=t.ranges[n].empty).length===0}function Le(e,t){return e.length?t.length?e.concat(t):e:t}const y=[],Ut=200;function Ce(e,t){if(e.length){let r=e[e.length-1],n=r.selectionsAfter.slice(Math.max(0,r.selectionsAfter.length-Ut));return n.length&&n[n.length-1].eq(t)?e:(n.push(t),R(e,e.length-1,1e9,r.setSelAfter(n)))}else return[p.selection([t])]}function Pt(e){let t=e[e.length-1],r=e.slice();return r[e.length-1]=t.setSelAfter(t.selectionsAfter.slice(0,t.selectionsAfter.length-1)),r}function N(e,t){if(!e.length)return e;let r=e.length,n=y;for(;r;){let l=Vt(e[r-1],t,n);if(l.changes&&!l.changes.empty||l.effects.length){let o=e.slice(0,r);return o[r-1]=l,o}else t=l.mapped,r--,n=l.selectionsAfter}return n.length?[p.selection(n)]:y}function Vt(e,t,r){let n=Le(e.selectionsAfter.length?e.selectionsAfter.map(c=>c.map(t)):y,r);if(!e.changes)return p.selection(n);let l=e.changes.map(t),o=t.mapDesc(e.changes,!0),i=e.mapped?e.mapped.composeDesc(o):o;return new p(l,u.StateEffect.mapEffects(e.effects,t),i,e.startSelection.map(o),n)}const wt=/^(input\.type|delete)($|\.)/;class A{constructor(t,r,n=0,l=void 0){this.done=t,this.undone=r,this.prevTime=n,this.prevUserEvent=l}isolate(){return this.prevTime?new A(this.done,this.undone):this}addChanges(t,r,n,l,o){let i=this.done,c=i[i.length-1];return c&&c.changes&&!c.changes.empty&&t.changes&&(!n||wt.test(n))&&(!c.selectionsAfter.length&&r-this.prevTime<l.newGroupDelay&&l.joinToEvent(o,vt(c.changes,t.changes))||n=="input.type.compose")?i=R(i,i.length-1,l.minDepth,new p(t.changes.compose(c.changes),Le(u.StateEffect.mapEffects(t.effects,c.changes),c.effects),c.mapped,c.startSelection,y)):i=R(i,i.length,l.minDepth,t),new A(i,y,r,n)}addSelection(t,r,n,l){let o=this.done.length?this.done[this.done.length-1].selectionsAfter:y;return o.length>0&&r-this.prevTime<l&&n==this.prevUserEvent&&n&&/^select($|\.)/.test(n)&&It(o[o.length-1],t)?this:new A(Ce(this.done,t),this.undone,r,n)}addMapping(t){return new A(N(this.done,t),N(this.undone,t),this.prevTime,this.prevUserEvent)}pop(t,r,n){let l=t==0?this.done:this.undone;if(l.length==0)return null;let o=l[l.length-1],i=o.selectionsAfter[0]||r.selection;if(n&&o.selectionsAfter.length)return r.update({selection:o.selectionsAfter[o.selectionsAfter.length-1],annotations:F.of({side:t,rest:Pt(l),selection:i}),userEvent:t==0?"select.undo":"select.redo",scrollIntoView:!0});if(o.changes){let c=l.length==1?y:l.slice(0,l.length-1);return o.mapped&&(c=N(c,o.mapped)),r.update({changes:o.changes,selection:o.startSelection,effects:o.effects,annotations:F.of({side:t,rest:c,selection:i}),filter:!1,userEvent:t==0?"undo":"redo",scrollIntoView:!0})}else return null}}A.empty=new A(y,y);const Nt=[{key:"Mod-z",run:Y,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:O,preventDefault:!0},{linux:"Ctrl-Shift-z",run:O,preventDefault:!0},{key:"Mod-u",run:Be,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:Ae,preventDefault:!0}];function x(e,t){return u.EditorSelection.create(e.ranges.map(t),e.mainIndex)}function S(e,t){return e.update({selection:t,scrollIntoView:!0,userEvent:"select"})}function B({state:e,dispatch:t},r){let n=x(e.selection,r);return n.eq(e.selection,!0)?!1:(t(S(e,n)),!0)}function P(e,t){return u.EditorSelection.cursor(t?e.to:e.from)}function xe(e,t){return B(e,r=>r.empty?e.moveByChar(r,t):P(r,t))}function m(e){return e.textDirectionAt(e.state.selection.main.head)==C.Direction.LTR}const Z=e=>xe(e,!m(e)),_=e=>xe(e,m(e));function De(e,t){return B(e,r=>r.empty?e.moveByGroup(r,t):P(r,t))}const Ee=e=>De(e,!m(e)),Me=e=>De(e,m(e));function Gt(e,t,r){if(t.type.prop(r))return!0;let n=t.to-t.from;return n&&(n>2||/[^\s,.;:]/.test(e.sliceDoc(t.from,t.to)))||t.firstChild}function V(e,t,r){let n=h.syntaxTree(e).resolveInner(t.head),l=r?G.NodeProp.closedBy:G.NodeProp.openedBy;for(let s=t.head;;){let a=r?n.childAfter(s):n.childBefore(s);if(!a)break;Gt(e,a,l)?n=a:s=r?a.to:a.from}let o=n.type.prop(l),i,c;return o&&(i=r?h.matchBrackets(e,n.from,1):h.matchBrackets(e,n.to,-1))&&i.matched?c=r?i.end.to:i.end.from:c=r?n.to:n.from,u.EditorSelection.cursor(c,r?-1:1)}const Te=e=>B(e,t=>V(e.state,t,!m(e))),be=e=>B(e,t=>V(e.state,t,m(e)));function Oe(e,t){return B(e,r=>{if(!r.empty)return P(r,t);let n=e.moveVertically(r,t);return n.head!=r.head?n:e.moveToLineBoundary(r,t)})}const ee=e=>Oe(e,!1),te=e=>Oe(e,!0);function Re(e){let t=e.scrollDOM.clientHeight<e.scrollDOM.scrollHeight-2,r=0,n=0,l;if(t){for(let o of e.state.facet(C.EditorView.scrollMargins)){let i=o(e);i?.top&&(r=Math.max(i?.top,r)),i?.bottom&&(n=Math.max(i?.bottom,n))}l=e.scrollDOM.clientHeight-r-n}else l=(e.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:r,marginBottom:n,selfScroll:t,height:Math.max(e.defaultLineHeight,l-5)}}function ve(e,t){let r=Re(e),{state:n}=e,l=x(n.selection,i=>i.empty?e.moveVertically(i,t,r.height):P(i,t));if(l.eq(n.selection))return!1;let o;if(r.selfScroll){let i=e.coordsAtPos(n.selection.main.head),c=e.scrollDOM.getBoundingClientRect(),s=c.top+r.marginTop,a=c.bottom-r.marginBottom;i&&i.top>s&&i.bottom<a&&(o=C.EditorView.scrollIntoView(l.main.head,{y:"start",yMargin:i.top-s}))}return e.dispatch(S(n,l),{effects:o}),!0}const J=e=>ve(e,!1),v=e=>ve(e,!0);function L(e,t,r){let n=e.lineBlockAt(t.head),l=e.moveToLineBoundary(t,r);if(l.head==t.head&&l.head!=(r?n.to:n.from)&&(l=e.moveToLineBoundary(t,r,!1)),!r&&l.head==n.from&&n.length){let o=/^\s*/.exec(e.state.sliceDoc(n.from,Math.min(n.from+100,n.to)))[0].length;o&&t.head!=n.from+o&&(l=u.EditorSelection.cursor(n.from+o))}return l}const Ie=e=>B(e,t=>L(e,t,!0)),Ue=e=>B(e,t=>L(e,t,!1)),Pe=e=>B(e,t=>L(e,t,!m(e))),Ve=e=>B(e,t=>L(e,t,m(e))),we=e=>B(e,t=>u.EditorSelection.cursor(e.lineBlockAt(t.head).from,1)),Ne=e=>B(e,t=>u.EditorSelection.cursor(e.lineBlockAt(t.head).to,-1));function Ft(e,t,r){let n=!1,l=x(e.selection,o=>{let i=h.matchBrackets(e,o.head,-1)||h.matchBrackets(e,o.head,1)||o.head>0&&h.matchBrackets(e,o.head-1,1)||o.head<e.doc.length&&h.matchBrackets(e,o.head+1,-1);if(!i||!i.end)return o;n=!0;let c=i.start.from==o.head?i.end.to:i.end.from;return u.EditorSelection.cursor(c)});return n?(t(S(e,l)),!0):!1}const Ge=({state:e,dispatch:t})=>Ft(e,t);function k(e,t){let r=x(e.state.selection,n=>{let l=t(n);return u.EditorSelection.range(n.anchor,l.head,l.goalColumn,l.bidiLevel||void 0)});return r.eq(e.state.selection)?!1:(e.dispatch(S(e.state,r)),!0)}function Fe(e,t){return k(e,r=>e.moveByChar(r,t))}const ne=e=>Fe(e,!m(e)),re=e=>Fe(e,m(e));function Je(e,t){return k(e,r=>e.moveByGroup(r,t))}const qe=e=>Je(e,!m(e)),ze=e=>Je(e,m(e)),He=e=>k(e,t=>V(e.state,t,!m(e))),Ke=e=>k(e,t=>V(e.state,t,m(e)));function $e(e,t){return k(e,r=>e.moveVertically(r,t))}const oe=e=>$e(e,!1),le=e=>$e(e,!0);function We(e,t){return k(e,r=>e.moveVertically(r,t,Re(e).height))}const q=e=>We(e,!1),z=e=>We(e,!0),je=e=>k(e,t=>L(e,t,!0)),Qe=e=>k(e,t=>L(e,t,!1)),Xe=e=>k(e,t=>L(e,t,!m(e))),Ye=e=>k(e,t=>L(e,t,m(e))),Ze=e=>k(e,t=>u.EditorSelection.cursor(e.lineBlockAt(t.head).from)),_e=e=>k(e,t=>u.EditorSelection.cursor(e.lineBlockAt(t.head).to)),H=({state:e,dispatch:t})=>(t(S(e,{anchor:0})),!0),K=({state:e,dispatch:t})=>(t(S(e,{anchor:e.doc.length})),!0),$=({state:e,dispatch:t})=>(t(S(e,{anchor:e.selection.main.anchor,head:0})),!0),W=({state:e,dispatch:t})=>(t(S(e,{anchor:e.selection.main.anchor,head:e.doc.length})),!0),et=({state:e,dispatch:t})=>(t(e.update({selection:{anchor:0,head:e.doc.length},userEvent:"select"})),!0),tt=({state:e,dispatch:t})=>{let r=w(e).map(({from:n,to:l})=>u.EditorSelection.range(n,Math.min(l+1,e.doc.length)));return t(e.update({selection:u.EditorSelection.create(r),userEvent:"select"})),!0},nt=({state:e,dispatch:t})=>{let r=x(e.selection,n=>{let l=h.syntaxTree(e),o=l.resolveStack(n.from,1);if(n.empty){let i=l.resolveStack(n.from,-1);i.node.from>=o.node.from&&i.node.to<=o.node.to&&(o=i)}for(let i=o;i;i=i.next){let{node:c}=i;if((c.from<n.from&&c.to>=n.to||c.to>n.to&&c.from<=n.from)&&i.next)return u.EditorSelection.range(c.to,c.from)}return n});return r.eq(e.selection)?!1:(t(S(e,r)),!0)};function rt(e,t){let{state:r}=e,n=r.selection,l=r.selection.ranges.slice();for(let o of r.selection.ranges){let i=r.doc.lineAt(o.head);if(t?i.to<e.state.doc.length:i.from>0)for(let c=o;;){let s=e.moveVertically(c,t);if(s.head<i.from||s.head>i.to){l.some(a=>a.head==s.head)||l.push(s);break}else{if(s.head==c.head)break;c=s}}}return l.length==n.ranges.length?!1:(e.dispatch(S(r,u.EditorSelection.create(l,l.length-1))),!0)}const ot=e=>rt(e,!1),lt=e=>rt(e,!0),it=({state:e,dispatch:t})=>{let r=e.selection,n=null;return r.ranges.length>1?n=u.EditorSelection.create([r.main]):r.main.empty||(n=u.EditorSelection.create([u.EditorSelection.cursor(r.main.head)])),n?(t(S(e,n)),!0):!1};function M(e,t){if(e.state.readOnly)return!1;let r="delete.selection",{state:n}=e,l=n.changeByRange(o=>{let{from:i,to:c}=o;if(i==c){let s=t(o);s<i?(r="delete.backward",s=b(e,s,!1)):s>i&&(r="delete.forward",s=b(e,s,!0)),i=Math.min(i,s),c=Math.max(c,s)}else i=b(e,i,!1),c=b(e,c,!0);return i==c?{range:o}:{changes:{from:i,to:c},range:u.EditorSelection.cursor(i,i<o.head?-1:1)}});return l.changes.empty?!1:(e.dispatch(n.update(l,{scrollIntoView:!0,userEvent:r,effects:r=="delete.selection"?C.EditorView.announce.of(n.phrase("Selection deleted")):void 0})),!0)}function b(e,t,r){if(e instanceof C.EditorView)for(let n of e.state.facet(C.EditorView.atomicRanges).map(l=>l(e)))n.between(t,t,(l,o)=>{l<t&&o>t&&(t=r?o:l)});return t}const ct=(e,t,r)=>M(e,n=>{let l=n.from,{state:o}=e,i=o.doc.lineAt(l),c,s;if(r&&!t&&l>i.from&&l<i.from+200&&!/[^ \t]/.test(c=i.text.slice(0,l-i.from))){if(c[c.length-1]==" ")return l-1;let a=u.countColumn(c,o.tabSize),f=a%h.getIndentUnit(o)||h.getIndentUnit(o);for(let d=0;d<f&&c[c.length-1-d]==" ";d++)l--;s=l}else s=u.findClusterBreak(i.text,l-i.from,t,t)+i.from,s==l&&i.number!=(t?o.doc.lines:1)?s+=t?1:-1:!t&&/[\ufe00-\ufe0f]/.test(i.text.slice(s-i.from,l-i.from))&&(s=u.findClusterBreak(i.text,s-i.from,!1,!1)+i.from);return s}),I=e=>ct(e,!1,!0),ie=e=>ct(e,!0,!1),st=(e,t)=>M(e,r=>{let n=r.head,{state:l}=e,o=l.doc.lineAt(n),i=l.charCategorizer(n);for(let c=null;;){if(n==(t?o.to:o.from)){n==r.head&&o.number!=(t?l.doc.lines:1)&&(n+=t?1:-1);break}let s=u.findClusterBreak(o.text,n-o.from,t)+o.from,a=o.text.slice(Math.min(n,s)-o.from,Math.max(n,s)-o.from),f=i(a);if(c!=null&&f!=c)break;(a!=" "||n!=r.head)&&(c=f),n=s}return n}),ce=e=>st(e,!1),ut=e=>st(e,!0),ft=e=>M(e,t=>{let r=e.lineBlockAt(t.head).to;return t.head<r?r:Math.min(e.state.doc.length,t.head+1)}),at=e=>M(e,t=>{let r=e.moveToLineBoundary(t,!1).head;return t.head>r?r:Math.max(0,t.head-1)}),dt=e=>M(e,t=>{let r=e.moveToLineBoundary(t,!0).head;return t.head<r?r:Math.min(e.state.doc.length,t.head+1)}),ht=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let r=e.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:u.Text.of(["",""])},range:u.EditorSelection.cursor(n.from)}));return t(e.update(r,{scrollIntoView:!0,userEvent:"input"})),!0},mt=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let r=e.changeByRange(n=>{if(!n.empty||n.from==0||n.from==e.doc.length)return{range:n};let l=n.from,o=e.doc.lineAt(l),i=l==o.from?l-1:u.findClusterBreak(o.text,l-o.from,!1)+o.from,c=l==o.to?l+1:u.findClusterBreak(o.text,l-o.from,!0)+o.from;return{changes:{from:i,to:c,insert:e.doc.slice(l,c).append(e.doc.slice(i,l))},range:u.EditorSelection.cursor(c)}});return r.changes.empty?!1:(t(e.update(r,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function w(e){let t=[],r=-1;for(let n of e.selection.ranges){let l=e.doc.lineAt(n.from),o=e.doc.lineAt(n.to);if(!n.empty&&n.to==o.from&&(o=e.doc.lineAt(n.to-1)),r>=l.number){let i=t[t.length-1];i.to=o.to,i.ranges.push(n)}else t.push({from:l.from,to:o.to,ranges:[n]});r=o.number+1}return t}function pt(e,t,r){if(e.readOnly)return!1;let n=[],l=[];for(let o of w(e)){if(r?o.to==e.doc.length:o.from==0)continue;let i=e.doc.lineAt(r?o.to+1:o.from-1),c=i.length+1;if(r){n.push({from:o.to,to:i.to},{from:o.from,insert:i.text+e.lineBreak});for(let s of o.ranges)l.push(u.EditorSelection.range(Math.min(e.doc.length,s.anchor+c),Math.min(e.doc.length,s.head+c)))}else{n.push({from:i.from,to:o.from},{from:o.to,insert:e.lineBreak+i.text});for(let s of o.ranges)l.push(u.EditorSelection.range(s.anchor-c,s.head-c))}}return n.length?(t(e.update({changes:n,scrollIntoView:!0,selection:u.EditorSelection.create(l,e.selection.mainIndex),userEvent:"move.line"})),!0):!1}const gt=({state:e,dispatch:t})=>pt(e,t,!1),yt=({state:e,dispatch:t})=>pt(e,t,!0);function kt(e,t,r){if(e.readOnly)return!1;let n=[];for(let l of w(e))r?n.push({from:l.from,insert:e.doc.slice(l.from,l.to)+e.lineBreak}):n.push({from:l.to,insert:e.lineBreak+e.doc.slice(l.from,l.to)});return t(e.update({changes:n,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const St=({state:e,dispatch:t})=>kt(e,t,!1),Bt=({state:e,dispatch:t})=>kt(e,t,!0),At=e=>{if(e.state.readOnly)return!1;let{state:t}=e,r=t.changes(w(t).map(({from:l,to:o})=>(l>0?l--:o<t.doc.length&&o++,{from:l,to:o}))),n=x(t.selection,l=>{let o;if(e.lineWrapping){let i=e.lineBlockAt(l.head),c=e.coordsAtPos(l.head,l.assoc||1);c&&(o=i.bottom+e.documentTop-c.bottom+e.defaultLineHeight/2)}return e.moveVertically(l,!0,o)}).map(r);return e.dispatch({changes:r,selection:n,scrollIntoView:!0,userEvent:"delete.line"}),!0};function Jt(e,t){if(/\(\)|\[\]|\{\}/.test(e.sliceDoc(t-1,t+1)))return{from:t,to:t};let r=h.syntaxTree(e).resolveInner(t),n=r.childBefore(t),l=r.childAfter(t),o;return n&&l&&n.to<=t&&l.from>=t&&(o=n.type.prop(G.NodeProp.closedBy))&&o.indexOf(l.name)>-1&&e.doc.lineAt(n.to).from==e.doc.lineAt(l.from).from&&!/\S/.test(e.sliceDoc(n.to,l.from))?{from:n.to,to:l.from}:null}const j=Ct(!1),Lt=Ct(!0);function Ct(e){return({state:t,dispatch:r})=>{if(t.readOnly)return!1;let n=t.changeByRange(l=>{let{from:o,to:i}=l,c=t.doc.lineAt(o),s=!e&&o==i&&Jt(t,o);e&&(o=i=(i<=c.to?c:t.doc.lineAt(i)).to);let a=new h.IndentContext(t,{simulateBreak:o,simulateDoubleBreak:!!s}),f=h.getIndentation(a,o);for(f==null&&(f=u.countColumn(/^\s*/.exec(t.doc.lineAt(o).text)[0],t.tabSize));i<c.to&&/\s/.test(c.text[i-c.from]);)i++;s?{from:o,to:i}=s:o>c.from&&o<c.from+100&&!/\S/.test(c.text.slice(0,o))&&(o=c.from);let d=["",h.indentString(t,f)];return s&&d.push(h.indentString(t,a.lineIndent(c.from,-1))),{changes:{from:o,to:i,insert:u.Text.of(d)},range:u.EditorSelection.cursor(o+1+d[1].length)}});return r(t.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}}function se(e,t){let r=-1;return e.changeByRange(n=>{let l=[];for(let i=n.from;i<=n.to;){let c=e.doc.lineAt(i);c.number>r&&(n.empty||n.to>c.from)&&(t(c,l,n),r=c.number),i=c.to+1}let o=e.changes(l);return{changes:l,range:u.EditorSelection.range(o.mapPos(n.anchor,1),o.mapPos(n.head,1))}})}const xt=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let r=Object.create(null),n=new h.IndentContext(e,{overrideIndentation:o=>{let i=r[o];return i??-1}}),l=se(e,(o,i,c)=>{let s=h.getIndentation(n,o.from);if(s==null)return;/\S/.test(o.text)||(s=0);let a=/^\s*/.exec(o.text)[0],f=h.indentString(e,s);(a!=f||c.from<o.from+a.length)&&(r[o.from]=s,i.push({from:o.from,to:o.from+a.length,insert:f}))});return l.changes.empty||t(e.update(l,{userEvent:"indent"})),!0},ue=({state:e,dispatch:t})=>e.readOnly?!1:(t(e.update(se(e,(r,n)=>{n.push({from:r.from,insert:e.facet(h.indentUnit)})}),{userEvent:"input.indent"})),!0),fe=({state:e,dispatch:t})=>e.readOnly?!1:(t(e.update(se(e,(r,n)=>{let l=/^\s*/.exec(r.text)[0];if(!l)return;let o=u.countColumn(l,e.tabSize),i=0,c=h.indentString(e,Math.max(0,o-h.getIndentUnit(e)));for(;i<l.length&&i<c.length&&l.charCodeAt(i)==c.charCodeAt(i);)i++;n.push({from:r.from+i,to:r.from+l.length,insert:c.slice(i)})}),{userEvent:"delete.dedent"})),!0),Dt=e=>(e.setTabFocusMode(),!0),Et=[{key:"Ctrl-b",run:Z,shift:ne,preventDefault:!0},{key:"Ctrl-f",run:_,shift:re},{key:"Ctrl-p",run:ee,shift:oe},{key:"Ctrl-n",run:te,shift:le},{key:"Ctrl-a",run:we,shift:Ze},{key:"Ctrl-e",run:Ne,shift:_e},{key:"Ctrl-d",run:ie},{key:"Ctrl-h",run:I},{key:"Ctrl-k",run:ft},{key:"Ctrl-Alt-h",run:ce},{key:"Ctrl-o",run:ht},{key:"Ctrl-t",run:mt},{key:"Ctrl-v",run:v}],Mt=[{key:"ArrowLeft",run:Z,shift:ne,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:Ee,shift:qe,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:Pe,shift:Xe,preventDefault:!0},{key:"ArrowRight",run:_,shift:re,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:Me,shift:ze,preventDefault:!0},{mac:"Cmd-ArrowRight",run:Ve,shift:Ye,preventDefault:!0},{key:"ArrowUp",run:ee,shift:oe,preventDefault:!0},{mac:"Cmd-ArrowUp",run:H,shift:$},{mac:"Ctrl-ArrowUp",run:J,shift:q},{key:"ArrowDown",run:te,shift:le,preventDefault:!0},{mac:"Cmd-ArrowDown",run:K,shift:W},{mac:"Ctrl-ArrowDown",run:v,shift:z},{key:"PageUp",run:J,shift:q},{key:"PageDown",run:v,shift:z},{key:"Home",run:Ue,shift:Qe,preventDefault:!0},{key:"Mod-Home",run:H,shift:$},{key:"End",run:Ie,shift:je,preventDefault:!0},{key:"Mod-End",run:K,shift:W},{key:"Enter",run:j,shift:j},{key:"Mod-a",run:et},{key:"Backspace",run:I,shift:I,preventDefault:!0},{key:"Delete",run:ie,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:ce,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:ut,preventDefault:!0},{mac:"Mod-Backspace",run:at,preventDefault:!0},{mac:"Mod-Delete",run:dt,preventDefault:!0}].concat(Et.map(e=>({mac:e.key,run:e.run,shift:e.shift}))),qt=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:Te,shift:He},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:be,shift:Ke},{key:"Alt-ArrowUp",run:gt},{key:"Shift-Alt-ArrowUp",run:St},{key:"Alt-ArrowDown",run:yt},{key:"Shift-Alt-ArrowDown",run:Bt},{key:"Mod-Alt-ArrowUp",run:ot},{key:"Mod-Alt-ArrowDown",run:lt},{key:"Escape",run:it},{key:"Mod-Enter",run:Lt},{key:"Alt-l",mac:"Ctrl-l",run:tt},{key:"Mod-i",run:nt,preventDefault:!0},{key:"Mod-[",run:fe},{key:"Mod-]",run:ue},{key:"Mod-Alt-\\",run:xt},{key:"Shift-Mod-k",run:At},{key:"Shift-Mod-\\",run:Ge},{key:"Mod-/",run:ae},{key:"Alt-A",run:he},{key:"Ctrl-m",mac:"Shift-Alt-m",run:Dt}].concat(Mt),zt={key:"Tab",run:ue,shift:fe};exports.addCursorAbove=ot;exports.addCursorBelow=lt;exports.copyLineDown=Bt;exports.copyLineUp=St;exports.cursorCharLeft=Z;exports.cursorCharRight=_;exports.cursorDocEnd=K;exports.cursorDocStart=H;exports.cursorGroupLeft=Ee;exports.cursorGroupRight=Me;exports.cursorLineBoundaryBackward=Ue;exports.cursorLineBoundaryForward=Ie;exports.cursorLineBoundaryLeft=Pe;exports.cursorLineBoundaryRight=Ve;exports.cursorLineDown=te;exports.cursorLineEnd=Ne;exports.cursorLineStart=we;exports.cursorLineUp=ee;exports.cursorMatchingBracket=Ge;exports.cursorPageDown=v;exports.cursorPageUp=J;exports.cursorSyntaxLeft=Te;exports.cursorSyntaxRight=be;exports.defaultKeymap=qt;exports.deleteCharBackward=I;exports.deleteCharForward=ie;exports.deleteGroupBackward=ce;exports.deleteGroupForward=ut;exports.deleteLine=At;exports.deleteLineBoundaryBackward=at;exports.deleteLineBoundaryForward=dt;exports.deleteToLineEnd=ft;exports.emacsStyleKeymap=Et;exports.history=Rt;exports.historyKeymap=Nt;exports.indentLess=fe;exports.indentMore=ue;exports.indentSelection=xt;exports.indentWithTab=zt;exports.insertBlankLine=Lt;exports.insertNewlineAndIndent=j;exports.invertedEffects=ye;exports.isolateHistory=ge;exports.moveLineDown=yt;exports.moveLineUp=gt;exports.redo=O;exports.redoSelection=Ae;exports.selectAll=et;exports.selectCharLeft=ne;exports.selectCharRight=re;exports.selectDocEnd=W;exports.selectDocStart=$;exports.selectGroupLeft=qe;exports.selectGroupRight=ze;exports.selectLine=tt;exports.selectLineBoundaryBackward=Qe;exports.selectLineBoundaryForward=je;exports.selectLineBoundaryLeft=Xe;exports.selectLineBoundaryRight=Ye;exports.selectLineDown=le;exports.selectLineEnd=_e;exports.selectLineStart=Ze;exports.selectLineUp=oe;exports.selectPageDown=z;exports.selectPageUp=q;exports.selectParentSyntax=nt;exports.selectSyntaxLeft=He;exports.selectSyntaxRight=Ke;exports.simplifySelection=it;exports.splitLine=ht;exports.standardKeymap=Mt;exports.toggleBlockComment=he;exports.toggleBlockCommentByLine=me;exports.toggleComment=ae;exports.toggleLineComment=de;exports.toggleTabFocusMode=Dt;exports.transposeChars=mt;exports.undo=Y;exports.undoSelection=Be;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../../@lezer/java/dist/index.js"),e=require("../../language/dist/index.js"),a=e.LRLanguage.define({name:"java",parser:r.parser.configure({props:[e.indentNodeProp.add({IfStatement:e.continuedIndent({except:/^\s*({|else\b)/}),TryStatement:e.continuedIndent({except:/^\s*({|catch|finally)\b/}),LabeledStatement:e.flatIndent,SwitchBlock:t=>{let n=t.textAfter,o=/^\s*\}/.test(n),d=/^\s*(case|default)\b/.test(n);return t.baseIndent+(o?0:d?1:2)*t.unit},Block:e.delimitedIndent({closing:"}"}),BlockComment:()=>null,Statement:e.continuedIndent({except:/^{/})}),e.foldNodeProp.add({"Block SwitchBlock ClassBody ElementValueArrayInitializer ModuleBody EnumBody ConstructorBody InterfaceBody ArrayInitializer":e.foldInside,BlockComment(t){return{from:t.from+2,to:t.to-2}}})]}),languageData:{commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\})$/}});function l(){return new e.LanguageSupport(a)}exports.java=l;exports.javaLanguage=a;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("../../../@lezer/javascript/dist/index.js"),r=require("../../language/dist/index.js"),P=require("../../state/dist/index.js"),O=require("../../view/dist/index.js"),o=require("../../autocomplete/dist/index.js"),w=require("../../../@lezer/common/dist/index.js"),$=[o.snippetCompletion("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),o.snippetCompletion("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),o.snippetCompletion("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),o.snippetCompletion("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),o.snippetCompletion("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),o.snippetCompletion(`try {
|
|
2
|
+
\${}
|
|
3
|
+
} catch (\${error}) {
|
|
4
|
+
\${}
|
|
5
|
+
}`,{label:"try",detail:"/ catch block",type:"keyword"}),o.snippetCompletion("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),o.snippetCompletion(`if (\${}) {
|
|
6
|
+
\${}
|
|
7
|
+
} else {
|
|
8
|
+
\${}
|
|
9
|
+
}`,{label:"if",detail:"/ else block",type:"keyword"}),o.snippetCompletion(`class \${name} {
|
|
10
|
+
constructor(\${params}) {
|
|
11
|
+
\${}
|
|
12
|
+
}
|
|
13
|
+
}`,{label:"class",detail:"definition",type:"keyword"}),o.snippetCompletion('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),o.snippetCompletion('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],J=$.concat([o.snippetCompletion("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),o.snippetCompletion("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),o.snippetCompletion("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),h=new w.NodeWeakMap,X=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function f(e){return(t,i)=>{let n=t.node.getChild("VariableDefinition");return n&&i(n,e),!0}}const V=["FunctionDeclaration"],q={FunctionDeclaration:f("function"),ClassDeclaration:f("class"),ClassExpression:()=>!0,EnumDeclaration:f("constant"),TypeAliasDeclaration:f("type"),NamespaceDeclaration:f("namespace"),VariableDefinition(e,t){e.matchContext(V)||t(e,"variable")},TypeDefinition(e,t){t(e,"type")},__proto__:null};function x(e,t){let i=h.get(t);if(i)return i;let n=[],s=!0;function g(a,p){let u=e.sliceString(a.from,a.to);n.push({label:u,type:p})}return t.cursor(w.IterMode.IncludeAnonymous).iterate(a=>{if(s)s=!1;else if(a.name){let p=q[a.name];if(p&&p(a,g)||X.has(a.name))return!1}else if(a.to-a.from>8192){for(let p of x(e,a.node))n.push(p);return!1}}),h.set(t,n),n}const k=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,I=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function v(e){let t=r.syntaxTree(e.state).resolveInner(e.pos,-1);if(I.indexOf(t.name)>-1)return null;let i=t.name=="VariableName"||t.to-t.from<20&&k.test(e.state.sliceDoc(t.from,t.to));if(!i&&!e.explicit)return null;let n=[];for(let s=t;s;s=s.parent)X.has(s.name)&&(n=n.concat(x(e.state.doc,s)));return{options:n,from:i?t.from:e.pos,validFor:k}}const d=r.LRLanguage.define({name:"javascript",parser:N.parser.configure({props:[r.indentNodeProp.add({IfStatement:r.continuedIndent({except:/^\s*({|else\b)/}),TryStatement:r.continuedIndent({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:r.flatIndent,SwitchBody:e=>{let t=e.textAfter,i=/^\s*\}/.test(t),n=/^\s*(case|default)\b/.test(t);return e.baseIndent+(i?0:n?1:2)*e.unit},Block:r.delimitedIndent({closing:"}"}),ArrowFunction:e=>e.baseIndent+e.unit,"TemplateString BlockComment":()=>null,"Statement Property":r.continuedIndent({except:/^\s*{/}),JSXElement(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},JSXEscape(e){let t=/\s*\}/.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"JSXOpenTag JSXSelfClosingTag"(e){return e.column(e.node.from)+e.unit}}),r.foldNodeProp.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":r.foldInside,BlockComment(e){return{from:e.from+2,to:e.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),D={test:e=>/^JSX/.test(e.name),facet:r.defineLanguageFacet({commentTokens:{block:{open:"{/*",close:"*/}"}}})},j=d.configure({dialect:"ts"},"typescript"),L=d.configure({dialect:"jsx",props:[r.sublanguageProp.add(e=>e.isTop?[D]:void 0)]}),A=d.configure({dialect:"jsx ts",props:[r.sublanguageProp.add(e=>e.isTop?[D]:void 0)]},"typescript");let E=e=>({label:e,type:"keyword"});const B="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(E),M=B.concat(["declare","implements","private","protected","public"].map(E));function _(e={}){let t=e.jsx?e.typescript?A:L:e.typescript?j:d,i=e.typescript?J.concat(M):$.concat(B);return new r.LanguageSupport(t,[d.data.of({autocomplete:o.ifNotIn(I,o.completeFromList(i))}),d.data.of({autocomplete:v}),e.jsx?F:[]])}function R(e){for(;;){if(e.name=="JSXOpenTag"||e.name=="JSXSelfClosingTag"||e.name=="JSXFragmentTag")return e;if(e.name=="JSXEscape"||!e.parent)return null;e=e.parent}}function T(e,t,i=e.length){for(let n=t?.firstChild;n;n=n.nextSibling)if(n.name=="JSXIdentifier"||n.name=="JSXBuiltin"||n.name=="JSXNamespacedName"||n.name=="JSXMemberExpression")return e.sliceString(n.from,Math.min(n.to,i));return""}const W=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),F=O.EditorView.inputHandler.of((e,t,i,n,s)=>{if((W?e.composing:e.compositionStarted)||e.state.readOnly||t!=i||n!=">"&&n!="/"||!d.isActiveAt(e.state,t,-1))return!1;let g=s(),{state:a}=g,p=a.changeByRange(u=>{var S;let{head:l}=u,c=r.syntaxTree(a).resolveInner(l-1,-1),y;if(c.name=="JSXStartTag"&&(c=c.parent),!(a.doc.sliceString(l-1,l)!=n||c.name=="JSXAttributeValue"&&c.to>l)){if(n==">"&&c.name=="JSXFragmentTag")return{range:u,changes:{from:l,insert:"</>"}};if(n=="/"&&c.name=="JSXStartCloseTag"){let m=c.parent,b=m.parent;if(b&&m.from==l-2&&((y=T(a.doc,b.firstChild,l))||((S=b.firstChild)===null||S===void 0?void 0:S.name)=="JSXFragmentTag")){let C=`${y}>`;return{range:P.EditorSelection.cursor(l+C.length,-1),changes:{from:l,insert:C}}}}else if(n==">"){let m=R(c);if(m&&m.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(a.doc.sliceString(l,l+2))&&(y=T(a.doc,m,l)))return{range:u,changes:{from:l,insert:`</${y}>`}}}}return{range:u}});return p.changes.empty?!1:(e.dispatch([g,a.update(p,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});exports.autoCloseTags=F;exports.javascript=_;exports.javascriptLanguage=d;exports.jsxLanguage=L;exports.localCompletionSource=v;exports.snippets=$;exports.tsxLanguage=A;exports.typescriptLanguage=j;exports.typescriptSnippets=J;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../../@lezer/json/dist/index.js"),t=require("../../language/dist/index.js"),a=()=>r=>{try{JSON.parse(r.state.doc.toString())}catch(e){if(!(e instanceof SyntaxError))throw e;const n=i(e,r.state.doc);return[{from:n,message:e.message,severity:"error",to:n}]}return[]};function i(r,e){let n;return(n=r.message.match(/at position (\d+)/))?Math.min(+n[1],e.length):(n=r.message.match(/at line (\d+) column (\d+)/))?Math.min(e.line(+n[1]).from+ +n[2]-1,e.length):0}const o=t.LRLanguage.define({name:"json",parser:s.parser.configure({props:[t.indentNodeProp.add({Object:t.continuedIndent({except:/^\s*\}/}),Array:t.continuedIndent({except:/^\s*\]/})}),t.foldNodeProp.add({"Object Array":t.foldInside})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function c(){return new t.LanguageSupport(o)}exports.json=c;exports.jsonLanguage=o;exports.jsonParseLinter=a;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("../../../@lezer/python/dist/index.js"),s=require("../../language/dist/index.js"),y=require("../../../@lezer/common/dist/index.js"),l=require("../../autocomplete/dist/index.js"),c=new y.NodeWeakMap,E=new Set(["Script","Body","FunctionDefinition","ClassDefinition","LambdaExpression","ForStatement","MatchClause"]);function m(e){return(r,t,n)=>{if(n)return!1;let o=r.node.getChild("VariableName");return o&&t(o,e),!0}}const v={FunctionDefinition:m("function"),ClassDefinition:m("class"),ForStatement(e,r,t){if(t){for(let n=e.node.firstChild;n;n=n.nextSibling)if(n.name=="VariableName")r(n,"variable");else if(n.name=="in")break}},ImportStatement(e,r){var t,n;let{node:o}=e,a=((t=o.firstChild)===null||t===void 0?void 0:t.name)=="from";for(let i=o.getChild("import");i;i=i.nextSibling)i.name=="VariableName"&&((n=i.nextSibling)===null||n===void 0?void 0:n.name)!="as"&&r(i,a?"variable":"namespace")},AssignStatement(e,r){for(let t=e.node.firstChild;t;t=t.nextSibling)if(t.name=="VariableName")r(t,"variable");else if(t.name==":"||t.name=="AssignOp")break},ParamList(e,r){for(let t=null,n=e.node.firstChild;n;n=n.nextSibling)n.name=="VariableName"&&(!t||!/\*|AssignOp/.test(t.name))&&r(n,"variable"),t=n},CapturePattern:m("variable"),AsPattern:m("variable"),__proto__:null};function g(e,r){let t=c.get(r);if(t)return t;let n=[],o=!0;function a(i,p){let C=e.sliceString(i.from,i.to);n.push({label:C,type:p})}return r.cursor(y.IterMode.IncludeAnonymous).iterate(i=>{if(i.name){let p=v[i.name];if(p&&p(i,a,o)||!o&&E.has(i.name))return!1;o=!1}else if(i.to-i.from>8192){for(let p of g(e,i.node))n.push(p);return!1}}),c.set(r,n),n}const b=/^[\w\xa1-\uffff][\w\d\xa1-\uffff]*$/,h=["String","FormatString","Comment","PropertyName"];function _(e){let r=s.syntaxTree(e.state).resolveInner(e.pos,-1);if(h.indexOf(r.name)>-1)return null;let t=r.name=="VariableName"||r.to-r.from<20&&b.test(e.state.sliceDoc(r.from,r.to));if(!t&&!e.explicit)return null;let n=[];for(let o=r;o;o=o.parent)E.has(o.name)&&(n=n.concat(g(e.state.doc,o)));return{options:n,from:t?r.from:e.pos,validFor:b}}const $=["__annotations__","__builtins__","__debug__","__doc__","__import__","__name__","__loader__","__package__","__spec__","False","None","True"].map(e=>({label:e,type:"constant"})).concat(["ArithmeticError","AssertionError","AttributeError","BaseException","BlockingIOError","BrokenPipeError","BufferError","BytesWarning","ChildProcessError","ConnectionAbortedError","ConnectionError","ConnectionRefusedError","ConnectionResetError","DeprecationWarning","EOFError","Ellipsis","EncodingWarning","EnvironmentError","Exception","FileExistsError","FileNotFoundError","FloatingPointError","FutureWarning","GeneratorExit","IOError","ImportError","ImportWarning","IndentationError","IndexError","InterruptedError","IsADirectoryError","KeyError","KeyboardInterrupt","LookupError","MemoryError","ModuleNotFoundError","NameError","NotADirectoryError","NotImplemented","NotImplementedError","OSError","OverflowError","PendingDeprecationWarning","PermissionError","ProcessLookupError","RecursionError","ReferenceError","ResourceWarning","RuntimeError","RuntimeWarning","StopAsyncIteration","StopIteration","SyntaxError","SyntaxWarning","SystemError","SystemExit","TabError","TimeoutError","TypeError","UnboundLocalError","UnicodeDecodeError","UnicodeEncodeError","UnicodeError","UnicodeTranslateError","UnicodeWarning","UserWarning","ValueError","Warning","ZeroDivisionError"].map(e=>({label:e,type:"type"}))).concat(["bool","bytearray","bytes","classmethod","complex","float","frozenset","int","list","map","memoryview","object","range","set","staticmethod","str","super","tuple","type"].map(e=>({label:e,type:"class"}))).concat(["abs","aiter","all","anext","any","ascii","bin","breakpoint","callable","chr","compile","delattr","dict","dir","divmod","enumerate","eval","exec","exit","filter","format","getattr","globals","hasattr","hash","help","hex","id","input","isinstance","issubclass","iter","len","license","locals","max","min","next","oct","open","ord","pow","print","property","quit","repr","reversed","round","setattr","slice","sorted","sum","vars","zip"].map(e=>({label:e,type:"function"}))),k=[l.snippetCompletion("def ${name}(${params}):\n ${}",{label:"def",detail:"function",type:"keyword"}),l.snippetCompletion("for ${name} in ${collection}:\n ${}",{label:"for",detail:"loop",type:"keyword"}),l.snippetCompletion("while ${}:\n ${}",{label:"while",detail:"loop",type:"keyword"}),l.snippetCompletion("try:\n ${}\nexcept ${error}:\n ${}",{label:"try",detail:"/ except block",type:"keyword"}),l.snippetCompletion(`if \${}:
|
|
2
|
+
|
|
3
|
+
`,{label:"if",detail:"block",type:"keyword"}),l.snippetCompletion("if ${}:\n ${}\nelse:\n ${}",{label:"if",detail:"/ else block",type:"keyword"}),l.snippetCompletion("class ${name}:\n def __init__(self, ${params}):\n ${}",{label:"class",detail:"definition",type:"keyword"}),l.snippetCompletion("import ${module}",{label:"import",detail:"statement",type:"keyword"}),l.snippetCompletion("from ${module} import ${names}",{label:"from",detail:"import",type:"keyword"})],S=l.ifNotIn(h,l.completeFromList($.concat(k)));function f(e){let{node:r,pos:t}=e,n=e.lineIndent(t,-1),o=null;for(;;){let a=r.childBefore(t);if(a)if(a.name=="Comment")t=a.from;else if(a.name=="Body"||a.name=="MatchBody")e.baseIndentFor(a)+e.unit<=n&&(o=a),r=a;else if(a.name=="MatchClause")r=a;else if(a.type.is("Statement"))r=a;else break;else break}return o}function u(e,r){let t=e.baseIndentFor(r),n=e.lineAt(e.pos,-1),o=n.from+n.text.length;return/^\s*($|#)/.test(n.text)&&e.node.to<o+100&&!/\S/.test(e.state.sliceDoc(o,e.node.to))&&e.lineIndent(e.pos,-1)<=t||/^\s*(else:|elif |except |finally:|case\s+[^=:]+:)/.test(e.textAfter)&&e.lineIndent(e.pos,-1)>t?null:t+e.unit}const d=s.LRLanguage.define({name:"python",parser:I.parser.configure({props:[s.indentNodeProp.add({Body:e=>{var r;let t=/^\s*(#|$)/.test(e.textAfter)&&f(e)||e.node;return(r=u(e,t))!==null&&r!==void 0?r:e.continue()},MatchBody:e=>{var r;let t=f(e);return(r=u(e,t||e.node))!==null&&r!==void 0?r:e.continue()},IfStatement:e=>/^\s*(else:|elif )/.test(e.textAfter)?e.baseIndent:e.continue(),"ForStatement WhileStatement":e=>/^\s*else:/.test(e.textAfter)?e.baseIndent:e.continue(),TryStatement:e=>/^\s*(except[ :]|finally:|else:)/.test(e.textAfter)?e.baseIndent:e.continue(),MatchStatement:e=>/^\s*case /.test(e.textAfter)?e.baseIndent+e.unit:e.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":s.delimitedIndent({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":s.delimitedIndent({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":s.delimitedIndent({closing:"]"}),MemberExpression:e=>e.baseIndent+e.unit,"String FormatString":()=>null,Script:e=>{var r;let t=f(e);return(r=t&&u(e,t))!==null&&r!==void 0?r:e.continue()}}),s.foldNodeProp.add({"ArrayExpression DictionaryExpression SetExpression TupleExpression":s.foldInside,Body:(e,r)=>({from:e.from+1,to:e.to-(e.to==r.doc.length?0:1)}),"String FormatString":(e,r)=>({from:r.doc.lineAt(e.from).to,to:e.to})})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""'],stringPrefixes:["f","fr","rf","r","u","b","br","rb","F","FR","RF","R","U","B","BR","RB"]},commentTokens:{line:"#"},indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:|case\s+[^:]*:?)$/}});function A(){return new s.LanguageSupport(d,[d.data.of({autocomplete:_}),d.data.of({autocomplete:S})])}exports.globalCompletion=S;exports.localCompletionSource=_;exports.python=A;exports.pythonLanguage=d;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("../../language/dist/index.js"),o=require("../../../@lezer/highlight/dist/index.js"),V=require("../../../@lezer/lr/dist/index.js"),R=require("../../autocomplete/dist/index.js"),ae=36,L=1,re=2,k=3,y=4,ne=5,oe=6,se=7,le=8,ie=9,ce=10,de=11,fe=12,Oe=13,me=14,ue=15,he=16,ke=17,Z=18,ge=19,W=20,F=21,D=22,Qe=23,ve=24;function T(t){return t>=65&&t<=90||t>=97&&t<=122||t>=48&&t<=57}function xe(t){return t>=48&&t<=57||t>=97&&t<=102||t>=65&&t<=70}function h(t,e,r){for(let a=!1;;){if(t.next<0)return;if(t.next==e&&!a){t.advance();return}a=r&&!a&&t.next==92,t.advance()}}function be(t,e){e:for(;;){if(t.next<0)return;if(t.next==36){t.advance();for(let r=0;r<e.length;r++){if(t.next!=e.charCodeAt(r))continue e;t.advance()}if(t.next==36){t.advance();return}}else t.advance()}}function pe(t,e){let r="[{<(".indexOf(String.fromCharCode(e)),a=r<0?e:"]}>)".charCodeAt(r);for(;;){if(t.next<0)return;if(t.next==a&&t.peek(1)==39){t.advance(2);return}t.advance()}}function U(t,e){for(;!(t.next!=95&&!T(t.next));)e!=null&&(e+=String.fromCharCode(t.next)),t.advance();return e}function Ce(t){if(t.next==39||t.next==34||t.next==96){let e=t.next;t.advance(),h(t,e,!1)}else U(t)}function j(t,e){for(;t.next==48||t.next==49;)t.advance();e&&t.next==e&&t.advance()}function $(t,e){for(;;){if(t.next==46){if(e)break;e=!0}else if(t.next<48||t.next>57)break;t.advance()}if(t.next==69||t.next==101)for(t.advance(),(t.next==43||t.next==45)&&t.advance();t.next>=48&&t.next<=57;)t.advance()}function N(t){for(;!(t.next<0||t.next==10);)t.advance()}function u(t,e){for(let r=0;r<e.length;r++)if(e.charCodeAt(r)==t)return!0;return!1}const w=` \r
|
|
2
|
+
`;function K(t,e,r){let a=Object.create(null);a.true=a.false=ne,a.null=a.unknown=oe;for(let n of t.split(" "))n&&(a[n]=W);for(let n of e.split(" "))n&&(a[n]=F);for(let n of(r||"").split(" "))n&&(a[n]=ve);return a}const Se="array binary bit boolean char character clob date decimal double float int integer interval large national nchar nclob numeric object precision real smallint time timestamp varchar varying ",Pe="absolute action add after all allocate alter and any are as asc assertion at authorization before begin between both breadth by call cascade cascaded case cast catalog check close collate collation column commit condition connect connection constraint constraints constructor continue corresponding count create cross cube current current_date current_default_transform_group current_transform_group_for_type current_path current_role current_time current_timestamp current_user cursor cycle data day deallocate declare default deferrable deferred delete depth deref desc describe descriptor deterministic diagnostics disconnect distinct do domain drop dynamic each else elseif end end-exec equals escape except exception exec execute exists exit external fetch first for foreign found from free full function general get global go goto grant group grouping handle having hold hour identity if immediate in indicator initially inner inout input insert intersect into is isolation join key language last lateral leading leave left level like limit local localtime localtimestamp locator loop map match method minute modifies module month names natural nesting new next no none not of old on only open option or order ordinality out outer output overlaps pad parameter partial path prepare preserve primary prior privileges procedure public read reads recursive redo ref references referencing relative release repeat resignal restrict result return returns revoke right role rollback rollup routine row rows savepoint schema scroll search second section select session session_user set sets signal similar size some space specific specifictype sql sqlexception sqlstate sqlwarning start state static system_user table temporary then timezone_hour timezone_minute to trailing transaction translation treat trigger under undo union unique unnest until update usage user using value values view when whenever where while with without work write year zone ",B={backslashEscapes:!1,hashComments:!1,spaceAfterDashes:!1,slashComments:!1,doubleQuotedStrings:!1,doubleDollarQuotedStrings:!1,unquotedBitLiterals:!1,treatBitsAsBytes:!1,charSetCasts:!1,plsqlQuotingMechanism:!1,operatorChars:"*+-%<>!=&|~^/",specialVar:"?",identifierQuotes:'"',caseInsensitiveIdentifiers:!1,words:K(Pe,Se)};function ye(t,e,r,a){let n={};for(let s in B)n[s]=(t.hasOwnProperty(s)?t:B)[s];return e&&(n.words=K(e,r||"",a)),n}function G(t){return new V.ExternalTokenizer(e=>{var r;let{next:a}=e;if(e.advance(),u(a,w)){for(;u(e.next,w);)e.advance();e.acceptToken(ae)}else if(a==36&&t.doubleDollarQuotedStrings){let n=U(e,"");e.next==36&&(e.advance(),be(e,n),e.acceptToken(k))}else if(a==39||a==34&&t.doubleQuotedStrings)h(e,a,t.backslashEscapes),e.acceptToken(k);else if(a==35&&t.hashComments||a==47&&e.next==47&&t.slashComments)N(e),e.acceptToken(L);else if(a==45&&e.next==45&&(!t.spaceAfterDashes||e.peek(1)==32))N(e),e.acceptToken(L);else if(a==47&&e.next==42){e.advance();for(let n=1;;){let s=e.next;if(e.next<0)break;if(e.advance(),s==42&&e.next==47){if(n--,e.advance(),!n)break}else s==47&&e.next==42&&(n++,e.advance())}e.acceptToken(re)}else if((a==101||a==69)&&e.next==39)e.advance(),h(e,39,!0),e.acceptToken(k);else if((a==110||a==78)&&e.next==39&&t.charSetCasts)e.advance(),h(e,39,t.backslashEscapes),e.acceptToken(k);else if(a==95&&t.charSetCasts)for(let n=0;;n++){if(e.next==39&&n>1){e.advance(),h(e,39,t.backslashEscapes),e.acceptToken(k);break}if(!T(e.next))break;e.advance()}else if(t.plsqlQuotingMechanism&&(a==113||a==81)&&e.next==39&&e.peek(1)>0&&!u(e.peek(1),w)){let n=e.peek(1);e.advance(2),pe(e,n),e.acceptToken(k)}else if(u(a,t.identifierQuotes)){const n=a==91?93:a;h(e,n,!1),e.acceptToken(ge)}else if(a==40)e.acceptToken(se);else if(a==41)e.acceptToken(le);else if(a==123)e.acceptToken(ie);else if(a==125)e.acceptToken(ce);else if(a==91)e.acceptToken(de);else if(a==93)e.acceptToken(fe);else if(a==59)e.acceptToken(Oe);else if(t.unquotedBitLiterals&&a==48&&e.next==98)e.advance(),j(e),e.acceptToken(D);else if((a==98||a==66)&&(e.next==39||e.next==34)){const n=e.next;e.advance(),t.treatBitsAsBytes?(h(e,n,t.backslashEscapes),e.acceptToken(Qe)):(j(e,n),e.acceptToken(D))}else if(a==48&&(e.next==120||e.next==88)||(a==120||a==88)&&e.next==39){let n=e.next==39;for(e.advance();xe(e.next);)e.advance();n&&e.next==39&&e.advance(),e.acceptToken(y)}else if(a==46&&e.next>=48&&e.next<=57)$(e,!0),e.acceptToken(y);else if(a==46)e.acceptToken(me);else if(a>=48&&a<=57)$(e,!1),e.acceptToken(y);else if(u(a,t.operatorChars)){for(;u(e.next,t.operatorChars);)e.advance();e.acceptToken(ue)}else if(u(a,t.specialVar))e.next==a&&e.advance(),Ce(e),e.acceptToken(ke);else if(a==58||a==44)e.acceptToken(he);else if(T(a)){let n=U(e,String.fromCharCode(a));e.acceptToken(e.next==46||e.peek(-n.length-1)==46?Z:(r=t.words[n.toLowerCase()])!==null&&r!==void 0?r:Z)}})}const Y=G(B),we=V.LRParser.deserialize({version:14,states:"%vQ]QQOOO#wQRO'#DSO$OQQO'#CwO%eQQO'#CxO%lQQO'#CyO%sQQO'#CzOOQQ'#DS'#DSOOQQ'#C}'#C}O'UQRO'#C{OOQQ'#Cv'#CvOOQQ'#C|'#C|Q]QQOOQOQQOOO'`QQO'#DOO(xQRO,59cO)PQQO,59cO)UQQO'#DSOOQQ,59d,59dO)cQQO,59dOOQQ,59e,59eO)jQQO,59eOOQQ,59f,59fO)qQQO,59fOOQQ-E6{-E6{OOQQ,59b,59bOOQQ-E6z-E6zOOQQ,59j,59jOOQQ-E6|-E6|O+VQRO1G.}O+^QQO,59cOOQQ1G/O1G/OOOQQ1G/P1G/POOQQ1G/Q1G/QP+kQQO'#C}O+rQQO1G.}O)PQQO,59cO,PQQO'#Cw",stateData:",[~OtOSPOSQOS~ORUOSUOTUOUUOVROXSOZTO]XO^QO_UO`UOaPObPOcPOdUOeUOfUOgUOhUO~O^]ORvXSvXTvXUvXVvXXvXZvX]vX_vX`vXavXbvXcvXdvXevXfvXgvXhvX~OsvX~P!jOa_Ob_Oc_O~ORUOSUOTUOUUOVROXSOZTO^tO_UO`UOa`Ob`Oc`OdUOeUOfUOgUOhUO~OWaO~P$ZOYcO~P$ZO[eO~P$ZORUOSUOTUOUUOVROXSOZTO^QO_UO`UOaPObPOcPOdUOeUOfUOgUOhUO~O]hOsoX~P%zOajObjOcjO~O^]ORkaSkaTkaUkaVkaXkaZka]ka_ka`kaakabkackadkaekafkagkahka~Oska~P'kO^]O~OWvXYvX[vX~P!jOWnO~P$ZOYoO~P$ZO[pO~P$ZO^]ORkiSkiTkiUkiVkiXkiZki]ki_ki`kiakibkickidkiekifkigkihki~Oski~P)xOWkaYka[ka~P'kO]hO~P$ZOWkiYki[ki~P)xOasObsOcsO~O",goto:"#hwPPPPPPPPPPPPPPPPPPPPPPPPPPx||||!Y!^!d!xPPP#[TYOZeUORSTWZbdfqT[OZQZORiZSWOZQbRQdSQfTZgWbdfqQ^PWk^lmrQl_Qm`RrseVORSTWZbdfq",nodeNames:"⚠ LineComment BlockComment String Number Bool Null ( ) { } [ ] ; . Operator Punctuation SpecialVar Identifier QuotedIdentifier Keyword Type Bits Bytes Builtin Script Statement CompositeIdentifier Parens Braces Brackets Statement",maxTerm:38,nodeProps:[["isolate",-4,1,2,3,19,""]],skippedNodes:[0,1,2],repeatNodeCount:3,tokenData:"RORO",tokenizers:[0,Y],topRules:{Script:[0,25]},tokenPrec:0});function q(t){let e=t.cursor().moveTo(t.from,-1);for(;/Comment/.test(e.name);)e.moveTo(e.from,-1);return e.node}function x(t,e){let r=t.sliceString(e.from,e.to),a=/^([`'"\[])(.*)([`'"\]])$/.exec(r);return a?a[2]:r}function S(t){return t&&(t.name=="Identifier"||t.name=="QuotedIdentifier")}function Te(t,e){if(e.name=="CompositeIdentifier"){let r=[];for(let a=e.firstChild;a;a=a.nextSibling)S(a)&&r.push(x(t,a));return r}return[x(t,e)]}function z(t,e){for(let r=[];;){if(!e||e.name!=".")return r;let a=q(e);if(!S(a))return r;r.unshift(x(t,a)),e=q(a)}}function Ue(t,e){let r=g.syntaxTree(t).resolveInner(e,-1),a=qe(t.doc,r);return r.name=="Identifier"||r.name=="QuotedIdentifier"||r.name=="Keyword"?{from:r.from,quoted:r.name=="QuotedIdentifier"?t.doc.sliceString(r.from,r.from+1):null,parents:z(t.doc,q(r)),aliases:a}:r.name=="."?{from:e,quoted:null,parents:z(t.doc,r),aliases:a}:{from:e,quoted:null,parents:[],empty:!0,aliases:a}}const Be=new Set("where group having order union intersect except all distinct limit offset fetch for".split(" "));function qe(t,e){let r;for(let n=e;!r;n=n.parent){if(!n)return null;n.name=="Statement"&&(r=n)}let a=null;for(let n=r.firstChild,s=!1,c=null;n;n=n.nextSibling){let i=n.name=="Keyword"?t.sliceString(n.from,n.to).toLowerCase():null,l=null;if(!s)s=i=="from";else if(i=="as"&&c&&S(n.nextSibling))l=x(t,n.nextSibling);else{if(i&&Be.has(i))break;c&&S(n)&&(l=x(t,n))}l&&(a||(a=Object.create(null)),a[l]=Te(t,c)),c=/Identifier$/.test(n.name)?n:null}return a}function Xe(t,e,r){return r.map(a=>({...a,label:a.label[0]==t?a.label:t+a.label+e,apply:void 0}))}const Ie=/^\w*$/,_e=/^[`'"\[]?\w*[`'"\]]?$/;function E(t){return t.self&&typeof t.self.label=="string"}class X{constructor(e,r){this.idQuote=e,this.idCaseInsensitive=r,this.list=[],this.children=void 0}child(e){let r=this.children||(this.children=Object.create(null)),a=r[e];return a||(e&&!this.list.some(n=>n.label==e)&&this.list.push(A(e,"type",this.idQuote,this.idCaseInsensitive)),r[e]=new X(this.idQuote,this.idCaseInsensitive))}maybeChild(e){return this.children?this.children[e]:null}addCompletion(e){let r=this.list.findIndex(a=>a.label==e.label);r>-1?this.list[r]=e:this.list.push(e)}addCompletions(e){for(let r of e)this.addCompletion(typeof r=="string"?A(r,"property",this.idQuote,this.idCaseInsensitive):r)}addNamespace(e){Array.isArray(e)?this.addCompletions(e):E(e)?this.addNamespace(e.children):this.addNamespaceObject(e)}addNamespaceObject(e){for(let r of Object.keys(e)){let a=e[r],n=null,s=r.replace(/\\?\./g,i=>i=="."?"\0":i).split("\0"),c=this;E(a)&&(n=a.self,a=a.children);for(let i=0;i<s.length;i++)n&&i==s.length-1&&c.addCompletion(n),c=c.child(s[i].replace(/\\\./g,"."));c.addNamespace(a)}}}function A(t,e,r,a){return new RegExp("^[a-z_][a-z_\\d]*$",a?"i":"").test(t)?{label:t,type:e}:{label:t,type:e,apply:r+t+M(r)}}function M(t){return t==="["?"]":t}function Re(t,e,r,a,n,s){var c;let i=((c=s?.spec.identifierQuotes)===null||c===void 0?void 0:c[0])||'"',l=new X(i,!!s?.spec.caseInsensitiveIdentifiers),f=n?l.child(n):null;return l.addNamespace(t),e&&(f||l).addCompletions(e),r&&l.addCompletions(r),f&&l.addCompletions(f.list),a&&l.addCompletions((f||l).child(a).list),O=>{let{parents:Q,from:I,quoted:_,empty:ee,aliases:p}=Ue(O.state,O.pos);if(ee&&!O.explicit)return null;p&&Q.length==1&&(Q=p[Q[0]]||Q);let d=l;for(let m of Q){for(;!d.children||!d.children[m];)if(d==l&&f)d=f;else if(d==f&&a)d=d.child(a);else return null;let v=d.maybeChild(m);if(!v)return null;d=v}let C=d.list;if(d==l&&p&&(C=C.concat(Object.keys(p).map(m=>({label:m,type:"constant"})))),_){let m=_[0],v=M(m),te=O.state.sliceDoc(O.pos,O.pos+1)==v;return{from:I,to:te?O.pos+1:void 0,options:Xe(m,v,C),validFor:_e}}else return{from:I,options:C,validFor:Ie}}}function Le(t){return t==F?"type":t==W?"keyword":"variable"}function Ze(t,e,r){let a=Object.keys(t).map(n=>r(e?n.toUpperCase():n,Le(t[n])));return R.ifNotIn(["QuotedIdentifier","String","LineComment","BlockComment","."],R.completeFromList(a))}let De=we.configure({props:[g.indentNodeProp.add({Statement:g.continuedIndent()}),g.foldNodeProp.add({Statement(t,e){return{from:Math.min(t.from+100,e.doc.lineAt(t.from).to),to:t.to}},BlockComment(t){return{from:t.from+2,to:t.to-2}}}),o.styleTags({Keyword:o.tags.keyword,Type:o.tags.typeName,Builtin:o.tags.standard(o.tags.name),Bits:o.tags.number,Bytes:o.tags.string,Bool:o.tags.bool,Null:o.tags.null,Number:o.tags.number,String:o.tags.string,Identifier:o.tags.name,QuotedIdentifier:o.tags.special(o.tags.string),SpecialVar:o.tags.special(o.tags.name),LineComment:o.tags.lineComment,BlockComment:o.tags.blockComment,Operator:o.tags.operator,"Semi Punctuation":o.tags.punctuation,"( )":o.tags.paren,"{ }":o.tags.brace,"[ ]":o.tags.squareBracket})]});class b{constructor(e,r,a){this.dialect=e,this.language=r,this.spec=a}get extension(){return this.language.extension}configureLanguage(e,r){return new b(this.dialect,this.language.configure(e,r),this.spec)}static define(e){let r=ye(e,e.keywords,e.types,e.builtin),a=g.LRLanguage.define({name:"sql",parser:De.configure({tokenizers:[{from:Y,to:G(r)}]}),languageData:{commentTokens:{line:"--",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]}}});return new b(r,a,e)}}function je(t,e){return{label:t,type:e,boost:-1}}function H(t,e=!1,r){return Ze(t.dialect.words,e,r||je)}function J(t){return t.schema?Re(t.schema,t.tables,t.schemas,t.defaultTable,t.defaultSchema,t.dialect||P):()=>null}function $e(t){return t.schema?(t.dialect||P).language.data.of({autocomplete:J(t)}):[]}function Ne(t={}){let e=t.dialect||P;return new g.LanguageSupport(e.language,[$e(t),e.language.data.of({autocomplete:H(e,t.upperCaseKeywords,t.keywordCompletion)})])}const P=b.define({});exports.SQLDialect=b;exports.StandardSQL=P;exports.keywordCompletionSource=H;exports.schemaCompletionSource=J;exports.sql=Ne;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("../../../@lezer/xml/dist/index.js"),C=require("../../language/dist/index.js"),L=require("../../state/dist/index.js"),M=require("../../view/dist/index.js");function y(e,t){let i=t&&t.getChild("TagName");return i?e.sliceString(i.from,i.to):""}function S(e,t){let i=t&&t.firstChild;return!i||i.name!="OpenTag"?"":y(e,i)}function _(e,t,i){let n=t&&t.getChildren("Attribute").find(o=>o.from<=i&&o.to>=i),a=n&&n.getChild("AttributeName");return a?e.sliceString(a.from,a.to):""}function j(e){for(let t=e&&e.parent;t;t=t.parent)if(t.name=="Element")return t;return null}function q(e,t){var i;let n=C.syntaxTree(e).resolveInner(t,-1),a=null;for(let o=n;!a&&o.parent;o=o.parent)(o.name=="OpenTag"||o.name=="CloseTag"||o.name=="SelfClosingTag"||o.name=="MismatchedCloseTag")&&(a=o);if(a&&(a.to>t||a.lastChild.type.isError)){let o=a.parent;if(n.name=="TagName")return a.name=="CloseTag"||a.name=="MismatchedCloseTag"?{type:"closeTag",from:n.from,context:o}:{type:"openTag",from:n.from,context:j(o)};if(n.name=="AttributeName")return{type:"attrName",from:n.from,context:a};if(n.name=="AttributeValue")return{type:"attrValue",from:n.from,context:a};let s=n==a||n.name=="Attribute"?n.childBefore(t):n;return s?.name=="StartTag"?{type:"openTag",from:t,context:j(o)}:s?.name=="StartCloseTag"&&s.to<=t?{type:"closeTag",from:t,context:o}:s?.name=="Is"?{type:"attrValue",from:t,context:a}:s?{type:"attrName",from:t,context:a}:null}else if(n.name=="StartCloseTag")return{type:"closeTag",from:t,context:n.parent};for(;n.parent&&n.to==t&&!(!((i=n.lastChild)===null||i===void 0)&&i.type.isError);)n=n.parent;return n.name=="Element"||n.name=="Text"||n.name=="Document"?{type:"tag",from:t,context:n.name=="Element"?n:j(n)}:null}class w{constructor(t,i,n){this.attrs=i,this.attrValues=n,this.children=[],this.name=t.name,this.completion=Object.assign(Object.assign({type:"type"},t.completion||{}),{label:this.name}),this.openCompletion=Object.assign(Object.assign({},this.completion),{label:"<"+this.name}),this.closeCompletion=Object.assign(Object.assign({},this.completion),{label:"</"+this.name+">",boost:2}),this.closeNameCompletion=Object.assign(Object.assign({},this.completion),{label:this.name+">"}),this.text=t.textContent?t.textContent.map(a=>({label:a,type:"text"})):[]}}const E=/^[:\-\.\w\u00b7-\uffff]*$/;function $(e){return Object.assign(Object.assign({type:"property"},e.completion||{}),{label:e.name})}function x(e){return typeof e=="string"?{label:`"${e}"`,type:"constant"}:/^"/.test(e.label)?e:Object.assign(Object.assign({},e),{label:`"${e.label}"`})}function V(e,t){let i=[],n=[],a=Object.create(null);for(let l of t){let p=$(l);i.push(p),l.global&&n.push(p),l.values&&(a[l.name]=l.values.map(x))}let o=[],s=[],h=Object.create(null);for(let l of e){let p=n,u=a;l.attributes&&(p=p.concat(l.attributes.map(r=>typeof r=="string"?i.find(b=>b.label==r)||{label:r,type:"property"}:(r.values&&(u==a&&(u=Object.create(u)),u[r.name]=r.values.map(x)),$(r)))));let g=new w(l,p,u);h[g.name]=g,o.push(g),l.top&&s.push(g)}s.length||(s=o);for(let l=0;l<o.length;l++){let p=e[l],u=o[l];if(p.children)for(let g of p.children)h[g]&&u.children.push(h[g]);else u.children=o}return l=>{var p;let{doc:u}=l.state,g=q(l.state,l.pos);if(!g||g.type=="tag"&&!l.explicit)return null;let{type:r,from:b,context:c}=g;if(r=="openTag"){let m=s,f=S(u,c);if(f){let d=h[f];m=d?.children||o}return{from:b,options:m.map(d=>d.completion),validFor:E}}else if(r=="closeTag"){let m=S(u,c);return m?{from:b,to:l.pos+(u.sliceString(l.pos,l.pos+1)==">"?1:0),options:[((p=h[m])===null||p===void 0?void 0:p.closeNameCompletion)||{label:m+">",type:"type"}],validFor:E}:null}else if(r=="attrName"){let m=h[y(u,c)];return{from:b,options:m?.attrs||n,validFor:E}}else if(r=="attrValue"){let m=_(u,c,b);if(!m)return null;let f=h[y(u,c)],d=(f?.attrValues||a)[m];return!d||!d.length?null:{from:b,to:l.pos+(u.sliceString(l.pos,l.pos+1)=='"'?1:0),options:d,validFor:/^"[^"]*"?$/}}else if(r=="tag"){let m=S(u,c),f=h[m],d=[],T=c&&c.lastChild;m&&(!T||T.name!="CloseTag"||y(u,T)!=m)&&d.push(f?f.closeCompletion:{label:"</"+m+">",type:"type",boost:2});let N=d.concat((f?.children||(c?o:s)).map(v=>v.openCompletion));if(c&&f?.text.length){let v=c.firstChild;v.to>l.pos-20&&!/\S/.test(l.state.sliceDoc(v.to,l.pos))&&(N=N.concat(f.text))}return{from:b,options:N,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}else return null}}const O=C.LRLanguage.define({name:"xml",parser:I.parser.configure({props:[C.indentNodeProp.add({Element(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"OpenTag CloseTag SelfClosingTag"(e){return e.column(e.node.from)+e.unit}}),C.foldNodeProp.add({Element(e){let t=e.firstChild,i=e.lastChild;return!t||t.name!="OpenTag"?null:{from:t.to,to:i.name=="CloseTag"?i.from:e.to}}}),C.bracketMatchingHandle.add({"OpenTag CloseTag":e=>e.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"<!--",close:"-->"}},indentOnInput:/^\s*<\/$/}});function P(e={}){let t=[O.data.of({autocomplete:V(e.elements||[],e.attributes||[])})];return e.autoCloseTags!==!1&&t.push(F),new C.LanguageSupport(O,t)}function A(e,t,i=e.length){if(!t)return"";let n=t.firstChild,a=n&&n.getChild("TagName");return a?e.sliceString(a.from,Math.min(a.to,i)):""}const F=M.EditorView.inputHandler.of((e,t,i,n,a)=>{if(e.composing||e.state.readOnly||t!=i||n!=">"&&n!="/"||!O.isActiveAt(e.state,t,-1))return!1;let o=a(),{state:s}=o,h=s.changeByRange(l=>{var p,u,g;let{head:r}=l,b=s.doc.sliceString(r-1,r)==n,c=C.syntaxTree(s).resolveInner(r,-1),m;if(b&&n==">"&&c.name=="EndTag"){let f=c.parent;if(((u=(p=f.parent)===null||p===void 0?void 0:p.lastChild)===null||u===void 0?void 0:u.name)!="CloseTag"&&(m=A(s.doc,f.parent,r))){let d=r+(s.doc.sliceString(r,r+1)===">"?1:0),T=`</${m}>`;return{range:l,changes:{from:r,to:d,insert:T}}}}else if(b&&n=="/"&&c.name=="StartCloseTag"){let f=c.parent;if(c.from==r-2&&((g=f.lastChild)===null||g===void 0?void 0:g.name)!="CloseTag"&&(m=A(s.doc,f,r))){let d=r+(s.doc.sliceString(r,r+1)===">"?1:0),T=`${m}>`;return{range:L.EditorSelection.cursor(r+T.length,-1),changes:{from:r,to:d,insert:T}}}}return{range:l}});return h.changes.empty?!1:(e.dispatch([o,s.update(h,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});exports.autoCloseTags=F;exports.completeFromSchema=V;exports.xml=P;exports.xmlLanguage=O;
|