local-operator-ui 0.4.7 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,406 @@
1
+ import { L as LRParser, E as ExternalTokenizer, s as styleTags, C as ContextTracker, t as tags, b as LRLanguage, d as LanguageSupport, p as parseMixed, f as indentNodeProp, g as foldNodeProp, j as delimitedIndent, l as foldInside } from "./index-CzJMsYKD.js";
2
+ import "./fonts-ChEL5asK.js";
3
+ const blockEnd = 63, eof = 64, DirectiveEnd = 1, DocEnd = 2, sequenceStartMark = 3, sequenceContinueMark = 4, explicitMapStartMark = 5, explicitMapContinueMark = 6, flowMapMark = 7, mapStartMark = 65, mapContinueMark = 66, Literal = 8, QuotedLiteral = 9, Anchor = 10, Alias = 11, Tag = 12, BlockLiteralContent = 13, BracketL = 19, FlowSequence = 20, Colon = 29, BraceL = 33, FlowMapping = 34, BlockLiteralHeader = 47;
4
+ const type_Top = 0, type_Seq = 1, type_Map = 2, type_Flow = 3, type_Lit = 4;
5
+ class Context {
6
+ constructor(parent, depth, type) {
7
+ this.parent = parent;
8
+ this.depth = depth;
9
+ this.type = type;
10
+ this.hash = (parent ? parent.hash + parent.hash << 8 : 0) + depth + (depth << 4) + type;
11
+ }
12
+ }
13
+ Context.top = new Context(null, -1, type_Top);
14
+ function findColumn(input, pos) {
15
+ for (let col = 0, p = pos - input.pos - 1; ; p--, col++) {
16
+ let ch = input.peek(p);
17
+ if (isBreakSpace(ch) || ch == -1) return col;
18
+ }
19
+ }
20
+ function isNonBreakSpace(ch) {
21
+ return ch == 32 || ch == 9;
22
+ }
23
+ function isBreakSpace(ch) {
24
+ return ch == 10 || ch == 13;
25
+ }
26
+ function isSpace(ch) {
27
+ return isNonBreakSpace(ch) || isBreakSpace(ch);
28
+ }
29
+ function isSep(ch) {
30
+ return ch < 0 || isSpace(ch);
31
+ }
32
+ const indentation = new ContextTracker({
33
+ start: Context.top,
34
+ reduce(context, term) {
35
+ return context.type == type_Flow && (term == FlowSequence || term == FlowMapping) ? context.parent : context;
36
+ },
37
+ shift(context, term, stack, input) {
38
+ if (term == sequenceStartMark)
39
+ return new Context(context, findColumn(input, input.pos), type_Seq);
40
+ if (term == mapStartMark || term == explicitMapStartMark)
41
+ return new Context(context, findColumn(input, input.pos), type_Map);
42
+ if (term == blockEnd)
43
+ return context.parent;
44
+ if (term == BracketL || term == BraceL)
45
+ return new Context(context, 0, type_Flow);
46
+ if (term == BlockLiteralContent && context.type == type_Lit)
47
+ return context.parent;
48
+ if (term == BlockLiteralHeader) {
49
+ let indent = /[1-9]/.exec(input.read(input.pos, stack.pos));
50
+ if (indent) return new Context(context, context.depth + +indent[0], type_Lit);
51
+ }
52
+ return context;
53
+ },
54
+ hash(context) {
55
+ return context.hash;
56
+ }
57
+ });
58
+ function three(input, ch, off = 0) {
59
+ return input.peek(off) == ch && input.peek(off + 1) == ch && input.peek(off + 2) == ch && isSep(input.peek(off + 3));
60
+ }
61
+ const newlines = new ExternalTokenizer((input, stack) => {
62
+ if (input.next == -1 && stack.canShift(eof))
63
+ return input.acceptToken(eof);
64
+ let prev = input.peek(-1);
65
+ if ((isBreakSpace(prev) || prev < 0) && stack.context.type != type_Flow) {
66
+ if (three(
67
+ input,
68
+ 45
69
+ /* '-' */
70
+ )) {
71
+ if (stack.canShift(blockEnd)) input.acceptToken(blockEnd);
72
+ else return input.acceptToken(DirectiveEnd, 3);
73
+ }
74
+ if (three(
75
+ input,
76
+ 46
77
+ /* '.' */
78
+ )) {
79
+ if (stack.canShift(blockEnd)) input.acceptToken(blockEnd);
80
+ else return input.acceptToken(DocEnd, 3);
81
+ }
82
+ let depth = 0;
83
+ while (input.next == 32) {
84
+ depth++;
85
+ input.advance();
86
+ }
87
+ if ((depth < stack.context.depth || depth == stack.context.depth && stack.context.type == type_Seq && (input.next != 45 || !isSep(input.peek(1)))) && // Not blank
88
+ input.next != -1 && !isBreakSpace(input.next) && input.next != 35)
89
+ input.acceptToken(blockEnd, -depth);
90
+ }
91
+ }, { contextual: true });
92
+ const blockMark = new ExternalTokenizer((input, stack) => {
93
+ if (stack.context.type == type_Flow) {
94
+ if (input.next == 63) {
95
+ input.advance();
96
+ if (isSep(input.next)) input.acceptToken(flowMapMark);
97
+ }
98
+ return;
99
+ }
100
+ if (input.next == 45) {
101
+ input.advance();
102
+ if (isSep(input.next))
103
+ input.acceptToken(stack.context.type == type_Seq && stack.context.depth == findColumn(input, input.pos - 1) ? sequenceContinueMark : sequenceStartMark);
104
+ } else if (input.next == 63) {
105
+ input.advance();
106
+ if (isSep(input.next))
107
+ input.acceptToken(stack.context.type == type_Map && stack.context.depth == findColumn(input, input.pos - 1) ? explicitMapContinueMark : explicitMapStartMark);
108
+ } else {
109
+ let start = input.pos;
110
+ for (; ; ) {
111
+ if (isNonBreakSpace(input.next)) {
112
+ if (input.pos == start) return;
113
+ input.advance();
114
+ } else if (input.next == 33) {
115
+ readTag(input);
116
+ } else if (input.next == 38) {
117
+ readAnchor(input);
118
+ } else if (input.next == 42) {
119
+ readAnchor(input);
120
+ break;
121
+ } else if (input.next == 39 || input.next == 34) {
122
+ if (readQuoted(input, true)) break;
123
+ return;
124
+ } else if (input.next == 91 || input.next == 123) {
125
+ if (!scanBrackets(input)) return;
126
+ break;
127
+ } else {
128
+ readPlain(input, true, false, 0);
129
+ break;
130
+ }
131
+ }
132
+ while (isNonBreakSpace(input.next)) input.advance();
133
+ if (input.next == 58) {
134
+ if (input.pos == start && stack.canShift(Colon)) return;
135
+ let after = input.peek(1);
136
+ if (isSep(after))
137
+ input.acceptTokenTo(stack.context.type == type_Map && stack.context.depth == findColumn(input, start) ? mapContinueMark : mapStartMark, start);
138
+ }
139
+ }
140
+ }, { contextual: true });
141
+ function uriChar(ch) {
142
+ return ch > 32 && ch < 127 && ch != 34 && ch != 37 && ch != 44 && ch != 60 && ch != 62 && ch != 92 && ch != 94 && ch != 96 && ch != 123 && ch != 124 && ch != 125;
143
+ }
144
+ function hexChar(ch) {
145
+ return ch >= 48 && ch <= 57 || ch >= 97 && ch <= 102 || ch >= 65 && ch <= 70;
146
+ }
147
+ function readUriChar(input, quoted) {
148
+ if (input.next == 37) {
149
+ input.advance();
150
+ if (hexChar(input.next)) input.advance();
151
+ if (hexChar(input.next)) input.advance();
152
+ return true;
153
+ } else if (uriChar(input.next) || quoted && input.next == 44) {
154
+ input.advance();
155
+ return true;
156
+ }
157
+ return false;
158
+ }
159
+ function readTag(input) {
160
+ input.advance();
161
+ if (input.next == 60) {
162
+ input.advance();
163
+ for (; ; ) {
164
+ if (!readUriChar(input, true)) {
165
+ if (input.next == 62) input.advance();
166
+ break;
167
+ }
168
+ }
169
+ } else {
170
+ while (readUriChar(input, false)) {
171
+ }
172
+ }
173
+ }
174
+ function readAnchor(input) {
175
+ input.advance();
176
+ while (!isSep(input.next) && charTag(input.tag) != "f") input.advance();
177
+ }
178
+ function readQuoted(input, scan) {
179
+ let quote = input.next, lineBreak = false, start = input.pos;
180
+ input.advance();
181
+ for (; ; ) {
182
+ let ch = input.next;
183
+ if (ch < 0) break;
184
+ input.advance();
185
+ if (ch == quote) {
186
+ if (ch == 39) {
187
+ if (input.next == 39) input.advance();
188
+ else break;
189
+ } else {
190
+ break;
191
+ }
192
+ } else if (ch == 92 && quote == 34) {
193
+ if (input.next >= 0) input.advance();
194
+ } else if (isBreakSpace(ch)) {
195
+ if (scan) return false;
196
+ lineBreak = true;
197
+ } else if (scan && input.pos >= start + 1024) {
198
+ return false;
199
+ }
200
+ }
201
+ return !lineBreak;
202
+ }
203
+ function scanBrackets(input) {
204
+ for (let stack = [], end = input.pos + 1024; ; ) {
205
+ if (input.next == 91 || input.next == 123) {
206
+ stack.push(input.next);
207
+ input.advance();
208
+ } else if (input.next == 39 || input.next == 34) {
209
+ if (!readQuoted(input, true)) return false;
210
+ } else if (input.next == 93 || input.next == 125) {
211
+ if (stack[stack.length - 1] != input.next - 2) return false;
212
+ stack.pop();
213
+ input.advance();
214
+ if (!stack.length) return true;
215
+ } else if (input.next < 0 || input.pos > end || isBreakSpace(input.next)) {
216
+ return false;
217
+ } else {
218
+ input.advance();
219
+ }
220
+ }
221
+ }
222
+ const charTable = "iiisiiissisfissssssssssssisssiiissssssssssssssssssssssssssfsfssissssssssssssssssssssssssssfif";
223
+ function charTag(ch) {
224
+ if (ch < 33) return "u";
225
+ if (ch > 125) return "s";
226
+ return charTable[ch - 33];
227
+ }
228
+ function isSafe(ch, inFlow) {
229
+ let tag = charTag(ch);
230
+ return tag != "u" && !(inFlow && tag == "f");
231
+ }
232
+ function readPlain(input, scan, inFlow, indent) {
233
+ if (charTag(input.next) == "s" || (input.next == 63 || input.next == 58 || input.next == 45) && isSafe(input.peek(1), inFlow)) {
234
+ input.advance();
235
+ } else {
236
+ return false;
237
+ }
238
+ let start = input.pos;
239
+ for (; ; ) {
240
+ let next = input.next, off = 0, lineIndent = indent + 1;
241
+ while (isSpace(next)) {
242
+ if (isBreakSpace(next)) {
243
+ if (scan) return false;
244
+ lineIndent = 0;
245
+ } else {
246
+ lineIndent++;
247
+ }
248
+ next = input.peek(++off);
249
+ }
250
+ let safe = next >= 0 && (next == 58 ? isSafe(input.peek(off + 1), inFlow) : next == 35 ? input.peek(off - 1) != 32 : isSafe(next, inFlow));
251
+ if (!safe || !inFlow && lineIndent <= indent || lineIndent == 0 && !inFlow && (three(input, 45, off) || three(input, 46, off)))
252
+ break;
253
+ if (scan && charTag(next) == "f") return false;
254
+ for (let i = off; i >= 0; i--) input.advance();
255
+ if (scan && input.pos > start + 1024) return false;
256
+ }
257
+ return true;
258
+ }
259
+ const literals = new ExternalTokenizer((input, stack) => {
260
+ if (input.next == 33) {
261
+ readTag(input);
262
+ input.acceptToken(Tag);
263
+ } else if (input.next == 38 || input.next == 42) {
264
+ let token = input.next == 38 ? Anchor : Alias;
265
+ readAnchor(input);
266
+ input.acceptToken(token);
267
+ } else if (input.next == 39 || input.next == 34) {
268
+ readQuoted(input, false);
269
+ input.acceptToken(QuotedLiteral);
270
+ } else if (readPlain(input, false, stack.context.type == type_Flow, stack.context.depth)) {
271
+ input.acceptToken(Literal);
272
+ }
273
+ });
274
+ const blockLiteral = new ExternalTokenizer((input, stack) => {
275
+ let indent = stack.context.type == type_Lit ? stack.context.depth : -1, upto = input.pos;
276
+ scan: for (; ; ) {
277
+ let depth = 0, next = input.next;
278
+ while (next == 32) next = input.peek(++depth);
279
+ if (!depth && (three(input, 45, depth) || three(input, 46, depth))) break;
280
+ if (!isBreakSpace(next)) {
281
+ if (indent < 0) indent = Math.max(stack.context.depth + 1, depth);
282
+ if (depth < indent) break;
283
+ }
284
+ for (; ; ) {
285
+ if (input.next < 0) break scan;
286
+ let isBreak = isBreakSpace(input.next);
287
+ input.advance();
288
+ if (isBreak) continue scan;
289
+ upto = input.pos;
290
+ }
291
+ }
292
+ input.acceptTokenTo(BlockLiteralContent, upto);
293
+ });
294
+ const yamlHighlighting = styleTags({
295
+ DirectiveName: tags.keyword,
296
+ DirectiveContent: tags.attributeValue,
297
+ "DirectiveEnd DocEnd": tags.meta,
298
+ QuotedLiteral: tags.string,
299
+ BlockLiteralHeader: tags.special(tags.string),
300
+ BlockLiteralContent: tags.content,
301
+ Literal: tags.content,
302
+ "Key/Literal Key/QuotedLiteral": tags.definition(tags.propertyName),
303
+ "Anchor Alias": tags.labelName,
304
+ Tag: tags.typeName,
305
+ Comment: tags.lineComment,
306
+ ": , -": tags.separator,
307
+ "?": tags.punctuation,
308
+ "[ ]": tags.squareBracket,
309
+ "{ }": tags.brace
310
+ });
311
+ const parser$1 = LRParser.deserialize({
312
+ version: 14,
313
+ states: "5lQ!ZQgOOO#PQfO'#CpO#uQfO'#DOOOQR'#Dv'#DvO$qQgO'#DRO%gQdO'#DUO%nQgO'#DUO&ROaO'#D[OOQR'#Du'#DuO&{QgO'#D^O'rQgO'#D`OOQR'#Dt'#DtO(iOqO'#DbOOQP'#Dj'#DjO(zQaO'#CmO)YQgO'#CmOOQP'#Cm'#CmQ)jQaOOQ)uQgOOQ]QgOOO*PQdO'#CrO*nQdO'#CtOOQO'#Dw'#DwO+]Q`O'#CxO+hQdO'#CwO+rQ`O'#CwOOQO'#Cv'#CvO+wQdO'#CvOOQO'#Cq'#CqO,UQ`O,59[O,^QfO,59[OOQR,59[,59[OOQO'#Cx'#CxO,eQ`O'#DPO,pQdO'#DPOOQO'#Dx'#DxO,zQdO'#DxO-XQ`O,59jO-aQfO,59jOOQR,59j,59jOOQR'#DS'#DSO-hQcO,59mO-sQgO'#DVO.TQ`O'#DVO.YQcO,59pOOQR'#DX'#DXO#|QfO'#DWO.hQcO'#DWOOQR,59v,59vO.yOWO,59vO/OOaO,59vO/WOaO,59vO/cQgO'#D_OOQR,59x,59xO0VQgO'#DaOOQR,59z,59zOOQP,59|,59|O0yOaO,59|O1ROaO,59|O1aOqO,59|OOQP-E7h-E7hO1oQgO,59XOOQP,59X,59XO2PQaO'#DeO2_QgO'#DeO2oQgO'#DkOOQP'#Dk'#DkQ)jQaOOO3PQdO'#CsOOQO,59^,59^O3kQdO'#CuOOQO,59`,59`OOQO,59c,59cO4VQdO,59cO4aQdO'#CzO4kQ`O'#CzOOQO,59b,59bOOQU,5:Q,5:QOOQR1G.v1G.vO4pQ`O1G.vOOQU-E7d-E7dO4xQdO,59kOOQO,59k,59kO5SQdO'#DQO5^Q`O'#DQOOQO,5:d,5:dOOQU,5:R,5:ROOQR1G/U1G/UO5cQ`O1G/UOOQU-E7e-E7eO5kQgO'#DhO5xQcO1G/XOOQR1G/X1G/XOOQR,59q,59qO6TQgO,59qO6eQdO'#DiO6lQgO'#DiO7PQcO1G/[OOQR1G/[1G/[OOQR,59r,59rO#|QfO,59rOOQR1G/b1G/bO7_OWO1G/bO7dOaO1G/bOOQR,59y,59yOOQR,59{,59{OOQP1G/h1G/hO7lOaO1G/hO7tOaO1G/hO8POaO1G/hOOQP1G.s1G.sO8_QgO,5:POOQP,5:P,5:POOQP,5:V,5:VOOQP-E7i-E7iOOQO,59_,59_OOQO,59a,59aOOQO1G.}1G.}OOQO,59f,59fO8oQdO,59fOOQR7+$b7+$bP,XQ`O'#DfOOQO1G/V1G/VOOQO,59l,59lO8yQdO,59lOOQR7+$p7+$pP9TQ`O'#DgOOQR'#DT'#DTOOQR,5:S,5:SOOQR-E7f-E7fOOQR7+$s7+$sOOQR1G/]1G/]O9YQgO'#DYO9jQ`O'#DYOOQR,5:T,5:TO#|QfO'#DZO9oQcO'#DZOOQR-E7g-E7gOOQR7+$v7+$vOOQR1G/^1G/^OOQR7+$|7+$|O:QOWO7+$|OOQP7+%S7+%SO:VOaO7+%SO:_OaO7+%SOOQP1G/k1G/kOOQO1G/Q1G/QOOQO1G/W1G/WOOQR,59t,59tO:jQgO,59tOOQR,59u,59uO#|QfO,59uOOQR<<Hh<<HhOOQP<<Hn<<HnO:zOaO<<HnOOQR1G/`1G/`OOQR1G/a1G/aOOQPAN>YAN>Y",
314
+ stateData: ";S~O!fOS!gOS^OS~OP_OQbORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!V[O!cTO~O`cO~P]OVkOWROXROYeOZfO[dOcPOmhOqQO~OboO~P!bOVtOWROXROYeOZfO[dOcPOmrOqQO~OpwO~P#WORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!cTO~OSvP!avP!bvP~P#|OWROXROYeOZfO[dOcPOqQO~OmzO~P%OOm!OOUzP!azP!bzP!dzP~P#|O^!SO!b!QO!f!TO!g!RO~ORSOTUOWROXROcPOqQO!PVO!cTO~OY!UOP!QXQ!QX!V!QX!`!QXS!QX!a!QX!b!QXU!QXm!QX!d!QX~P&aO[!WOP!SXQ!SX!V!SX!`!SXS!SX!a!SX!b!SXU!SXm!SX!d!SX~P&aO^!ZO!W![O!b!YO!f!]O!g!YO~OP!_O!V[OQaX!`aX~OPaXQaX!VaX!`aX~P#|OP!bOQ!cO!V[O~OP_O!V[O~P#|OWROXROY!fOcPOqQObfXmfXofXpfX~OWROXRO[!hOcPOqQObhXmhXohXphX~ObeXmlXoeX~ObkXokX~P%OOm!kO~Om!lObnPonP~P%OOb!pOo!oO~Ob!pO~P!bOm!sOosXpsX~OosXpsX~P%OOm!uOotPptP~P%OOo!xOp!yO~Op!yO~P#WOS!|O!a#OO!b#OO~OUyX!ayX!byX!dyX~P#|Om#QO~OU#SO!a#UO!b#UO!d#RO~Om#WOUzX!azX!bzX!dzX~O]#XO~O!b#XO!g#YO~O^#ZO!b#XO!g#YO~OP!RXQ!RX!V!RX!`!RXS!RX!a!RX!b!RXU!RXm!RX!d!RX~P&aOP!TXQ!TX!V!TX!`!TXS!TX!a!TX!b!TXU!TXm!TX!d!TX~P&aO!b#^O!g#^O~O^#_O!b#^O!f#`O!g#^O~O^#_O!W#aO!b#^O!g#^O~OPaaQaa!Vaa!`aa~P#|OP#cO!V[OQ!XX!`!XX~OP!XXQ!XX!V!XX!`!XX~P#|OP_O!V[OQ!_X!`!_X~P#|OWROXROcPOqQObgXmgXogXpgX~OWROXROcPOqQObiXmiXoiXpiX~Obkaoka~P%OObnXonX~P%OOm#kO~Ob#lOo!oO~Oosapsa~P%OOotXptX~P%OOm#pO~Oo!xOp#qO~OSwP!awP!bwP~P#|OS!|O!a#vO!b#vO~OUya!aya!bya!dya~P#|Om#xO~P%OOm#{OU}P!a}P!b}P!d}P~P#|OU#SO!a$OO!b$OO!d#RO~O]$QO~O!b$QO!g$RO~O!b$SO!g$SO~O^$TO!b$SO!g$SO~O^$TO!b$SO!f$UO!g$SO~OP!XaQ!Xa!V!Xa!`!Xa~P#|Obnaona~P%OOotapta~P%OOo!xO~OU|X!a|X!b|X!d|X~P#|Om$ZO~Om$]OU}X!a}X!b}X!d}X~O]$^O~O!b$_O!g$_O~O^$`O!b$_O!g$_O~OU|a!a|a!b|a!d|a~P#|O!b$cO!g$cO~O",
315
+ goto: ",]!mPPPPPPPPPPPPPPPPP!nPP!v#v#|$`#|$c$f$j$nP%VPPP!v%Y%^%a%{&O%a&R&U&X&_&b%aP&e&{&e'O'RPP']'a'g'm's'y(XPPPPPPPP(_)e*X+c,VUaObcR#e!c!{ROPQSTUXY_bcdehknrtvz!O!U!W!_!b!c!f!h!k!l!s!u!|#Q#R#S#W#c#k#p#x#{$Z$]QmPR!qnqfPQThknrtv!k!l!s!u#R#k#pR!gdR!ieTlPnTjPnSiPnSqQvQ{TQ!mkQ!trQ!vtR#y#RR!nkTsQvR!wt!RWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]RySR#t!|R|TR|UQ!PUR#|#SR#z#RR#z#SyZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]R!VXR!XYa]O^abc!a!c!eT!da!eQnPR!rnQvQR!{vQ!}yR#u!}Q#T|R#}#TW^Obc!cS!^^!aT!aa!eQ!eaR#f!eW`Obc!cQxSS}U#SQ!`_Q#PzQ#V!OQ#b!_Q#d!bQ#s!|Q#w#QQ$P#WQ$V#cQ$Y#xQ$[#{Q$a$ZR$b$]xZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]Q!VXQ!XYQ#[!UR#]!W!QWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]pfPQThknrtv!k!l!s!u#R#k#pQ!gdQ!ieQ#g!fR#h!hSgPn^pQTkrtv#RQ!jhQ#i!kQ#j!lQ#n!sQ#o!uQ$W#kR$X#pQuQR!zv",
316
+ nodeNames: "⚠ DirectiveEnd DocEnd - - ? ? ? Literal QuotedLiteral Anchor Alias Tag BlockLiteralContent Comment Stream BOM Document ] [ FlowSequence Item Tagged Anchored Anchored Tagged FlowMapping Pair Key : Pair , } { FlowMapping Pair Pair BlockSequence Item Item BlockMapping Pair Pair Key Pair Pair BlockLiteral BlockLiteralHeader Tagged Anchored Anchored Tagged Directive DirectiveName DirectiveContent Document",
317
+ maxTerm: 74,
318
+ context: indentation,
319
+ nodeProps: [
320
+ ["isolate", -3, 8, 9, 14, ""],
321
+ ["openedBy", 18, "[", 32, "{"],
322
+ ["closedBy", 19, "]", 33, "}"]
323
+ ],
324
+ propSources: [yamlHighlighting],
325
+ skippedNodes: [0],
326
+ repeatNodeCount: 6,
327
+ tokenData: "-Y~RnOX#PXY$QYZ$]Z]#P]^$]^p#Ppq$Qqs#Pst$btu#Puv$yv|#P|}&e}![#P![!]'O!]!`#P!`!a'i!a!}#P!}#O*g#O#P#P#P#Q+Q#Q#o#P#o#p+k#p#q'i#q#r,U#r;'S#P;'S;=`#z<%l?HT#P?HT?HU,o?HUO#PQ#UU!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PQ#kTOY#PZs#Pt;'S#P;'S;=`#z<%lO#PQ#}P;=`<%l#P~$VQ!f~XY$Qpq$Q~$bO!g~~$gS^~OY$bZ;'S$b;'S;=`$s<%lO$b~$vP;=`<%l$bR%OX!WQOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR%rX!WQ!VPOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR&bP;=`<%l%kR&lUoP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'VUmP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'p[!PP!WQOY#PZp#Ppq#hq{#P{|(f|}#P}!O(f!O!R#P!R![)p![;'S#P;'S;=`#z<%lO#PR(mW!PP!WQOY#PZp#Ppq#hq!R#P!R![)V![;'S#P;'S;=`#z<%lO#PR)^U!PP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR)wY!PP!WQOY#PZp#Ppq#hq{#P{|)V|}#P}!O)V!O;'S#P;'S;=`#z<%lO#PR*nUcP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+XUbP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+rUqP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,]UpP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,vU`P!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#P",
328
+ tokenizers: [newlines, blockMark, literals, blockLiteral, 0, 1],
329
+ topRules: { "Stream": [0, 15] },
330
+ tokenPrec: 0
331
+ });
332
+ const parser = /* @__PURE__ */ LRParser.deserialize({
333
+ version: 14,
334
+ states: "!vOQOPOOO]OPO'#C_OhOPO'#C^OOOO'#Cc'#CcOpOPO'#CaQOOOOOO{OPOOOOOO'#Cb'#CbO!WOPO'#C`O!`OPO,58xOOOO-E6a-E6aOOOO-E6`-E6`OOOO'#C_'#C_OOOO1G.d1G.d",
335
+ stateData: "!h~OXPOYROWTP~OWVXXRXYRX~OYVOXSP~OXROYROWTX~OXROYROWTP~OYVOXSX~OX[O~OXY~",
336
+ goto: "vWPPX[beioRUOQQOR]XRXQTTOUQWQRZWSSOURYS",
337
+ nodeNames: "⚠ Document Frontmatter DashLine FrontmatterContent Body",
338
+ maxTerm: 10,
339
+ skippedNodes: [0],
340
+ repeatNodeCount: 2,
341
+ tokenData: "$z~RXOYnYZ!^Z]n]^!^^}n}!O!i!O;'Sn;'S;=`!c<%lOn~qXOYnYZ!^Z]n]^!^^;'Sn;'S;=`!c<%l~n~On~~!^~!cOY~~!fP;=`<%ln~!lZOYnYZ!^Z]n]^!^^}n}!O#_!O;'Sn;'S;=`!c<%l~n~On~~!^~#bZOYnYZ!^Z]n]^!^^}n}!O$T!O;'Sn;'S;=`!c<%l~n~On~~!^~$WXOYnYZ$sZ]n]^$s^;'Sn;'S;=`!c<%l~n~On~~$s~$zOX~Y~",
342
+ tokenizers: [0],
343
+ topRules: { "Document": [0, 1] },
344
+ tokenPrec: 67
345
+ });
346
+ const yamlLanguage = /* @__PURE__ */ LRLanguage.define({
347
+ name: "yaml",
348
+ parser: /* @__PURE__ */ parser$1.configure({
349
+ props: [
350
+ /* @__PURE__ */ indentNodeProp.add({
351
+ Stream: (cx) => {
352
+ for (let before = cx.node.resolve(cx.pos, -1); before && before.to >= cx.pos; before = before.parent) {
353
+ if (before.name == "BlockLiteralContent" && before.from < before.to)
354
+ return cx.baseIndentFor(before);
355
+ if (before.name == "BlockLiteral")
356
+ return cx.baseIndentFor(before) + cx.unit;
357
+ if (before.name == "BlockSequence" || before.name == "BlockMapping")
358
+ return cx.column(before.from, 1);
359
+ if (before.name == "QuotedLiteral")
360
+ return null;
361
+ if (before.name == "Literal") {
362
+ let col = cx.column(before.from, 1);
363
+ if (col == cx.lineIndent(before.from, 1))
364
+ return col;
365
+ if (before.to > cx.pos)
366
+ return null;
367
+ }
368
+ }
369
+ return null;
370
+ },
371
+ FlowMapping: /* @__PURE__ */ delimitedIndent({ closing: "}" }),
372
+ FlowSequence: /* @__PURE__ */ delimitedIndent({ closing: "]" })
373
+ }),
374
+ /* @__PURE__ */ foldNodeProp.add({
375
+ "FlowMapping FlowSequence": foldInside,
376
+ "Item Pair BlockLiteral": (node, state) => ({ from: state.doc.lineAt(node.from).to, to: node.to })
377
+ })
378
+ ]
379
+ }),
380
+ languageData: {
381
+ commentTokens: { line: "#" },
382
+ indentOnInput: /^\s*[\]\}]$/
383
+ }
384
+ });
385
+ function yaml() {
386
+ return new LanguageSupport(yamlLanguage);
387
+ }
388
+ const frontmatterLanguage = /* @__PURE__ */ LRLanguage.define({
389
+ name: "yaml-frontmatter",
390
+ parser: /* @__PURE__ */ parser.configure({
391
+ props: [/* @__PURE__ */ styleTags({ DashLine: tags.meta })]
392
+ })
393
+ });
394
+ function yamlFrontmatter(config) {
395
+ let { language, support } = config.content instanceof LanguageSupport ? config.content : { language: config.content, support: [] };
396
+ return new LanguageSupport(frontmatterLanguage.configure({
397
+ wrap: parseMixed((node) => {
398
+ return node.name == "FrontmatterContent" ? { parser: yamlLanguage.parser } : node.name == "Body" ? { parser: language.parser } : null;
399
+ })
400
+ }), support);
401
+ }
402
+ export {
403
+ yaml,
404
+ yamlFrontmatter,
405
+ yamlLanguage
406
+ };